feat: use events from PW for network data

fix #287
fix #253
All requests inside all frames, windows gets captured with this change and also we get header and body size for each individual request.
Timing calculation becomes a lot simpler to deal with and don't require much understanding of the chrome devtools code which we relied on before.

Missing data

We don't have a queuing time exposed from the PW API as Queueing time is pretty specific to chromium and not exposed for other browsers like FF and Webkit and its in the order of 1-2ms max when tested -
Bare uncompressed resource size is not exposed for each request instead we have header and body sizes for both request and responses.
http.version data is not exposed, but we can add that as a follow up once PW adds support for it and we are not using it on the waterfall UI.

:broken_heart: Tests Failed

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2021-09-08T20:54:55.245+0000

Duration: 8 min 14 sec

Commit: 768a67d220e0a7375953189d6c74eca46c9d7439

Test stats :test_tube:

Test
Results

Failed
3

Passed
116

Skipped
1

Total
120

Trends :test_tube:

Test errors
Expand to view the tests failures
Test / CLI mimick new heartbeat with --rich-eventsflag – CLI mimick new heartbeat with--rich-events flag

no error details
Expand to view the stacktrace
 : Timeout - Async callback was not invoked within the 30000 ms timeout specified by jest.setTimeout.Timeout - Async callback was not invoked within the 30000 ms timeout specified by jest.setTimeout.Error:
    at new Spec (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/Spec.js:116:22)
    at new Spec (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/setup_jest_globals.js:78:9)
    at specFactory (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/Env.js:523:24)
    at Env.it (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/Env.js:592:24)
    at Env.it (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmineAsyncInstall.js:134:23)
    at it (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/jasmineLight.js:100:21)
    at Suite.<anonymous> (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/__tests__/cli.test.ts:96:3)
    at addSpecsToSuite (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/Env.js:444:51)
    at Env.describe (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/Env.js:414:11)
    at describe (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/jasmineLight.js:88:18)

Test / CLI override screenshots with --rich-eventsflag – CLI override screenshots with--rich-events flag

no error details
Expand to view the stacktrace
 SyntaxError: Unexpected token h in JSON at position 1
    at JSON.parse (<anonymous>)
    at /var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/__tests__/cli.test.ts:141:25
    at Array.map (<anonymous>)
    at Object.<anonymous> (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/__tests__/cli.test.ts:141:8)
    at processTicksAndRejections (internal/process/task_queues.js:95:5)

Test / CLI screenshots with device emulation – CLI screenshots with device emulation

no error details
Expand to view the stacktrace
 Error: Failed: "Error SyntaxError: Unexpected token h in JSON at position 1 could not parse data 'this.results []'"
    at Env.it (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmineAsyncInstall.js:95:24)
    at it (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/jasmineLight.js:100:21)
    at Suite.<anonymous> (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/__tests__/cli.test.ts:147:3)
    at addSpecsToSuite (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/Env.js:444:51)
    at Env.describe (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/Env.js:414:11)
    at describe (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-jasmine2/build/jasmine/jasmineLight.js:88:18)
    at Object.<anonymous> (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/__tests__/cli.test.ts:30:1)
    at Runtime._execModule (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-runtime/build/index.js:1299:24)
    at Runtime._loadModule (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-runtime/build/index.js:898:12)
    at Runtime.requireModule (/var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372/src/github.com/elastic/synthetics/node_modules/jest-runtime/build/index.js:746:10)

Steps errors
Expand to view the steps failures

Runs the tests

Took 1 min 16 sec . View more details on here
Description: ./node_modules/.bin/jest --ci --reporters=default --reporters=jest-junit

Log output
Expand to view the last 100 lines of log output

[2021-09-08T21:02:18.219Z]
[2021-09-08T21:02:18.219Z]     console.log
[2021-09-08T21:02:18.219Z]       this.results []
[2021-09-08T21:02:18.219Z]
[2021-09-08T21:02:18.219Z]       at NetworkManager.stop (src/plugins/network.ts:224:13)
[2021-09-08T21:02:18.220Z]
[2021-09-08T21:02:18.794Z] PASS __tests__/core/index.test.ts
[2021-09-08T21:02:20.191Z] PASS __tests__/index.test.ts
[2021-09-08T21:02:20.191Z]   ● Console
[2021-09-08T21:02:20.191Z]
[2021-09-08T21:02:20.191Z]     console.log
[2021-09-08T21:02:20.191Z]       this.results []
[2021-09-08T21:02:20.191Z]
[2021-09-08T21:02:20.191Z]       at NetworkManager.stop (src/plugins/network.ts:224:13)
[2021-09-08T21:02:20.191Z]           at async Promise.all (index 0)
[2021-09-08T21:02:20.191Z]
[2021-09-08T21:02:20.191Z]     console.log
[2021-09-08T21:02:20.191Z]       this.results []
[2021-09-08T21:02:20.191Z]
[2021-09-08T21:02:20.191Z]       at NetworkManager.stop (src/plugins/network.ts:224:13)
[2021-09-08T21:02:20.191Z]           at async Promise.all (index 0)
[2021-09-08T21:02:20.191Z]
[2021-09-08T21:02:20.454Z] PASS __tests__/plugins/browser-console.test.ts
[2021-09-08T21:02:20.715Z] PASS __tests__/plugins/plugin-manager.test.ts
[2021-09-08T21:02:22.112Z] PASS __tests__/config.test.ts
[2021-09-08T21:02:22.112Z] PASS __tests__/plugins/performance.test.ts
[2021-09-08T21:02:24.046Z] PASS __tests__/plugins/tracing.test.ts
[2021-09-08T21:02:25.006Z] PASS __tests__/core/gatherer.test.ts
[2021-09-08T21:02:25.006Z] PASS __tests__/sdk/trace-processor.test.ts
[2021-09-08T21:02:25.581Z] PASS __tests__/dsl/journey.test.ts
[2021-09-08T21:02:26.541Z] PASS __tests__/core/logger.test.ts
[2021-09-08T21:02:26.803Z] PASS __tests__/core/browser-service.test.ts
[2021-09-08T21:03:05.612Z] FAIL __tests__/cli.test.ts (66.606 s)
[2021-09-08T21:03:05.612Z]   ● CLI › mimick new heartbeat with `--rich-events` flag
[2021-09-08T21:03:05.612Z]
[2021-09-08T21:03:05.612Z]     : Timeout - Async callback was not invoked within the 30000 ms timeout specified by jest.setTimeout.Timeout - Async callback was not invoked within the 30000 ms timeout specified by jest.setTimeout.Error:
[2021-09-08T21:03:05.612Z]
[2021-09-08T21:03:05.612Z]       94 |   });
[2021-09-08T21:03:05.613Z]       95 |
[2021-09-08T21:03:05.613Z]     > 96 |   it('mimick new heartbeat with `--rich-events` flag', async () => {
[2021-09-08T21:03:05.613Z]          |   ^
[2021-09-08T21:03:05.613Z]       97 |     const cli = new CLIMock()
[2021-09-08T21:03:05.613Z]       98 |       .args([
[2021-09-08T21:03:05.613Z]       99 |         join(FIXTURES_DIR, 'example.journey.ts'),
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z]       at new Spec (node_modules/jest-jasmine2/build/jasmine/Spec.js:116:22)
[2021-09-08T21:03:05.613Z]       at Suite.<anonymous> (__tests__/cli.test.ts:96:3)
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z]   ● CLI › override screenshots with `--rich-events` flag
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z]     SyntaxError: Unexpected token h in JSON at position 1
[2021-09-08T21:03:05.613Z]         at JSON.parse (<anonymous>)
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z]       139 |     const screenshots = cli
[2021-09-08T21:03:05.613Z]       140 |       .buffer()
[2021-09-08T21:03:05.613Z]     > 141 |       .map(data => JSON.parse(data))
[2021-09-08T21:03:05.613Z]           |                         ^
[2021-09-08T21:03:05.613Z]       142 |       .find(({ type }) => type === 'step/screenshot_ref');
[2021-09-08T21:03:05.613Z]       143 |     expect(screenshots).not.toBeDefined();
[2021-09-08T21:03:05.613Z]       144 |     expect(await cli.exitCode).toBe(0);
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z]       at __tests__/cli.test.ts:141:25
[2021-09-08T21:03:05.613Z]           at Array.map (<anonymous>)
[2021-09-08T21:03:05.613Z]       at Object.<anonymous> (__tests__/cli.test.ts:141:8)
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z]   ● CLI › screenshots with device emulation
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z]     Failed: "Error SyntaxError: Unexpected token h in JSON at position 1 could not parse data 'this.results []'"
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z]       145 |   });
[2021-09-08T21:03:05.613Z]       146 |
[2021-09-08T21:03:05.613Z]     > 147 |   it('screenshots with device emulation', async () => {
[2021-09-08T21:03:05.613Z]           |   ^
[2021-09-08T21:03:05.613Z]       148 |     const cli = new CLIMock()
[2021-09-08T21:03:05.613Z]       149 |       .args([
[2021-09-08T21:03:05.613Z]       150 |         join(FIXTURES_DIR, 'fake.journey.ts'),
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z]       at Env.it (node_modules/jest-jasmine2/build/jasmineAsyncInstall.js:95:24)
[2021-09-08T21:03:05.613Z]       at Suite.<anonymous> (__tests__/cli.test.ts:147:3)
[2021-09-08T21:03:05.613Z]       at Object.<anonymous> (__tests__/cli.test.ts:30:1)
[2021-09-08T21:03:05.613Z]
[2021-09-08T21:03:05.613Z] A worker process has failed to exit gracefully and has been force exited. This is likely caused by tests leaking due to improper teardown. Try running with --detectOpenHandles to find leaks.
[2021-09-08T21:03:05.613Z] Test Suites: 1 failed, 19 passed, 20 total
[2021-09-08T21:03:05.613Z] Tests:       3 failed, 1 skipped, 102 passed, 106 total
[2021-09-08T21:03:05.613Z] Snapshots:   11 passed, 11 total
[2021-09-08T21:03:05.613Z] Time:        67.561 s
[2021-09-08T21:03:05.613Z] Ran all test suites.
[2021-09-08T21:03:07.000Z] Post stage
[2021-09-08T21:03:07.030Z] Recording test results
[2021-09-08T21:03:07.131Z] [Checks API] No suitable checks publisher found.
[2021-09-08T21:03:07.287Z] Stage "E2e Test" skipped due to earlier failure(s)
[2021-09-08T21:03:07.378Z] Stage "Release" skipped due to earlier failure(s)
[2021-09-08T21:03:07.422Z] Stage "Release" skipped due to earlier failure(s)
[2021-09-08T21:03:07.517Z] Stage "Release" skipped due to earlier failure(s)
[2021-09-08T21:03:08.184Z] Running on Jenkins in /var/lib/jenkins/workspace/nt-rum_elastic-synthetics_PR-372
[2021-09-08T21:03:08.285Z] [INFO] getVaultSecret: Getting secrets
[2021-09-08T21:03:08.342Z] Masking supported pattern matches of $VAULT_ADDR or $VAULT_ROLE_ID or $VAULT_SECRET_ID
[2021-09-08T21:03:09.330Z] + chmod 755 generate-build-data.sh
[2021-09-08T21:03:09.330Z] + ./generate-build-data.sh https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-rum/elastic-synthetics/PR-372/ https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-rum/elastic-synthetics/PR-372/runs/1 FAILURE 493802
[2021-09-08T21:03:09.330Z] INFO: curl https://apm-ci.elastic.co/blue/rest/organizations/jenkins/pipelines/apm-agent-rum/elastic-synthetics/PR-372/runs/1/steps/?limit=10000 -o steps-info.json

Aren't we displaying queuing time in waterfal chart, if so, this seems like a breaking change.

Looks great. Do you have any suggestions for testing the feature? Can I run it with heartbeat to check for compatibility with waterfall?

Yeah we need to run it via HB to test this for compatibility

Switch to this branch and install it globally npm i -g .
Run only inline monitors via HB which will use this version.

Aren't we displaying queuing time in waterfal chart, if so, this seems like a breaking change.

I wouldnt call it as breaking change, if its not sent to UI, it shouldn't show those timings.

We are expecting requestStartTime and loadEndTime to be chrome's special baseline in seconds value

I remember we were using this on the UI only for calculating the offset, Why does this have to be in a special format? I can surely workaround to not break the UI, but would like to know the reason so we can solve this in a better way to never break on the future iteration.

We are expecting requestStartTime and loadEndTime to be chrome's special baseline in seconds value

I remember we were using this on the UI only for calculating the offset, Why does this have to be in a special format? I can surely workaround to not break the UI, but would like to know the reason so we can solve this in a better way to never break on the future iteration.

We are using it for the offset, but before we use it we actually covert it to milliseconds. This allows accurately place the start of each request on the chart in milliseconds. So the code is expecting seconds to convert to milliseconds.

@dominiqueclarke So if I can change the epochTime in Seconds then it should be good from the UI side? We dont need it to be in the chrome devtools monotonic time format?

monotonic time format?

Yes, I believe that should work just fine.

/test


Game is keep crashing (Genshin impact)

Describe the bug
when I click the start game button, game runs, and crashes after the hoyoverse logo comes out.
I can't figure out what is the problem is...
Screenshots
https://github.com/user-attachments/assets/1260800a-67cb-4b20-82c8-d6e67dddde0d

System Information (please complete the following information):

macOS: [14.6.1]
Device: [MacbookPro 13 2022 ]
CPU: [Apple M2]
RAM: [8G ]

Additional context
using korean version of Genshin.
and tried rentia mode, and turn it off again. Didn’t touched other options
Logs (if any)
I don’t know the logs are...

If it's related to the launcher, upload neutralinojs.log in Yaagl Data Directory

If it's related to the game, upload `logs/game_{timestamp}.log in Yaagl Data Directory

oh, and I download at my home file.

What wine version are you using? I will recommend gptk here.

What wine version are you using? I will recommend gptk here.

oh! I just solve the problem using gptk
thank you for your help☺


Unable to build Pleroma on latest develop commit

Pleroma build fails seemingly stating a missing dependency "crypt".
Generated http_signatures app
make: Entering directory '/pleroma/deps/crypt/c_src'
cc -DHAVE_CRYPT_R -O3 -std=c99 -finline-functions -Wall -Wmissing-prototypes -pedantic -fwrapv -D_FORTIFY_SOURCE=2 -fstack-protector-strong -Wformat -Werror=format-security -fno-strict-aliasing -Wconversion -Wshadow -Wpointer-arith -Wcast-qual -fPIC -I /usr/local/lib/erlang/erts-<IP_ADDRESS>/include/ -c -o /pleroma/deps/crypt/c_src/explicit_bzero.o /pleroma/deps/crypt/c_src/explicit_bzero.c
/pleroma/deps/crypt/c_src/explicit_bzero.c:35:54: error: 'bzero' undeclared here (not in a function)
   35 | static void (* volatile ssh_bzero)(void *, size_t) = bzero;
      |                                                      ^~~~~
make: *** [Makefile:61: /pleroma/deps/crypt/c_src/explicit_bzero.o] Error 1
make: Leaving directory '/pleroma/deps/crypt/c_src'
===> Hook for compile failed!

==> pleroma
** (Mix) Could not compile dependency :crypt, "/pleroma/.mix/rebar3 bare compile --paths="/pleroma/_build/prod/lib/*/ebin"" command failed. You can recompile this dependency with "mix deps.compile crypt", update it with "mix deps.update crypt" or clean it with "mix deps.clean crypt"
The command '/bin/sh -c mix local.rebar --force     && mix local.hex --force     && mix deps.get     && mix compile' returned a non-zero code: 1

I have the same issue

Same here. I believe it is this upstream issue.

Has someone solved the issue yet?

hey folks. i was able to successfully build by changing the image tag to elixir:1.9-alpine. thats what the upstream is building from currently.
FROM elixir:1.9-alpine

Should we update the Dockerfile to 1.9?

Should we update the Dockerfile to 1.9?

potentially? while i was able to build, running was a different story.
The upstream entrypoint was throwing errors when trying to bring up the web service:
pleroma_ctl and pleroma are absent from PATH
echo "-- Running migrations..."
$HOME/bin/pleroma_ctl migrate

echo "-- Starting!"
exec $HOME/bin/pleroma start


IFU-450/a11y accessibility fixes and general development

https://helsinkisolutionoffice.atlassian.net/browse/IFU-450
Accessibility fixes:

aria-expanded, aria-haspopup and aria-required added to buttons and inputs
better action area for theme cards
better landscape markup: footer and main are now siblings.
separate UI for mobile (dialog) and desktop (dropdown) search bars
search prediction query debounced. rooks (react-hooks) added
footer link separator height adjusted. now different for mobile and desktop


refactor: deliver all firmware revisions to OE

Now that we have the capability to build all the electrical revisions, we need to deliver them to the built system images. This PR does that and a couple other little refactors:

Alter subsystem_versions.py to look for hex files in the dist/applications directory that cmake --install will populate, which means we don't have to worry about image.hex files getting in there; also dynamically pick up subsystems
Make some changes to make OE's job a little easier, such as: bump the minimum required version, to bump the preset version, to allow configure presets without binary dirs, to let OE specify a build directory in OE's build directory, and do some other nice little changes

Testing

[ ] Look at the outcome of https://github.com/Opentrons/oe-core/pull/53 and make sure that hex files are properly included

Very nice!
This looks good to me


Error on this page

In the examples provided for returning data from a stored procedure using output parameters, I think the following paragraph is in error:
The following example calls the procedure created in the first example and saves the output value returned from the called procedure in the @SalesYTD variable, which is local to the calling program.
The calling program saves the output parameter to @SalesYTDBySalesPerson, not to @SalesYTD.  Note that @SalesYTD is actually a parameter to the sp, not the local variable.

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

ID: 56f56caa-8938-8891-571e-170235af43ad
Version Independent ID: 85e82726-114f-93e9-b5bc-c49b47229ea2
Content: Return data from a stored procedure - SQL Server
Content Source: docs/relational-databases/stored-procedures/return-data-from-a-stored-procedure.md
Service: sql
Sub-service: stored-procedures
GitHub Login: @WilliamDAssafMSFT
Microsoft Alias: wiassaf

Nice catch, @jjpinsky. A correction for this doc is in flight. Thanks for the time and attention to report that sentence.


Rya streams base

Description

What Changed?

Rya Streams Feature Branch
Tests

Coverage?

Each major feature has test coverate
Links
Jira
Checklist

[ ] Code Review
[x] Squash Commits

People To Reivew
@kchilton2
@ejwhite922
@pujav65

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/incubator-rya-master-with-optionals-pull-requests/700/


Release Tracking

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
<EMAIL_ADDRESS>Minor Changes

#2123 f9119d95 Thanks @langermank! - - Use Primitive v8 color tokens

Add tests for compiled CSS to ensure CSS color variables have a fallback

Please let me know when this hits dotcom so I can review the review-lab deploy 🙌

Dotcom PR (internal only): https://github.com/github/github/pull/281398
cc @langermank


bpf: Add 'host not ready' drop reason if host policy cannot be enforced

Repurpose unused drop reasons since https://github.com/cilium/cilium/commit/61fb508f2c7320e6cf29f0024f678e5ea22e5d15
("bpf: Rename unused drop defines to DROP_UNUSED*") for signaling the host
endpoint's policy program was attempted to be executed before it was loaded.
bpf_lxc.c contains multiple tail calls into POLICY_CALL_MAP at the HOST_EP_ID
slot. The program in this slot is provided by bpf_host.c. During first agent
startup, there are often multiple Pods pending creation due to no CNI being
available. As soon as the agent's local API becomes available, these outstanding
CNI requests have a chance to be accepted by the API handler.
If one such request is serviced before the host datapath controller has a chance
to grab the compilation lock, the endpoint program will compile and attach first.
If the host firewall is enabled, and this new workload endpoint sends a packet
to the host, the host's ingress policy needs to be enforced. However, because
bpf_host hasn't been loaded yet, this policy program is not yet present in
POLICY_CALL_MAP, resulting in a missed tail call.
One potential solution to this problem would be making sure the host datapath
always attaches before workload endpoints do. There's one problem with this
solution: clustermesh requires data from other clusters in order to correctly
populate the local ipcache, and the ipcache currently needs to be populated for
the host endpoint to finish attaching. It obtains this information through
clustermesh-apiserver, typically deployed onto the local node as a regular Pod.
This means workload endpoints must be able to deploy before the host endpoint.
As a stop gap, tolerate these kinds of drops and assign them a specific meaning,
without letting them spill over into the generic 'missed tail call' bucket. To
stabilize end-to-end tests, we're aiming to enforce zero dropped tail calls in
all CI scenarios, since it leads to packets that mysteriously go missing,
introducing chaos that's impossible to troubleshoot.
Add specific drop reason for missing tail calls if the host datapath is not ready yet

/test

/test

/test

/test

/test

/test-e2e-upgrade

/test

/ci-e2e-upgrade

/test

Don't we also need to wait for the hostdatapath to be initialized during restoration of endpoints?

Technically, yes. If the agent is restarted, the assumption is for the old host datapath to still be present, but if the agent crashed or was restarted during the initial bringup, this may still result in missed tail calls under relatively normal operations. I'll try to include this.
Looks like there's quite a few tests failing, so this needs more work.

/test

/test

/test

/test

/test

/test

FYI, I believe you will need to rebase to catch https://github.com/cilium/cilium/pull/29942, because that CLI release introduced a new test that fails on unexpected packet drop reasons. Then either you allowlist the new drop reason by default in the CLI repository (which we probably want to do either way) or via the --expected-drop-reason="+Host not ready" flag here.

FYI, I believe you will need to rebase to catch #29942, because that CLI release introduced a new test that fails on unexpected packet drop reasons. Then either you allowlist the new drop reason by default in the CLI repository (which we probably want to do either way) or via the --expected-drop-reason="+Host datapath not ready" flag here.

Thanks for the heads up. What are the workflows I need to add that expected drop reason to? Assuming the new default is added to the CLI this week, it won't be released (and bumped in c/c, and backported) for a while.

What are the workflows I need to add that expected drop reason to?

Only those using the connectivity tests, of which I think only conformance-e2e.yaml has the host firewall enabled. If we miss any, I guess we'll know once the rebased tests run.

/test


Is it possible to get the Blueprint ID without the Management Group name

When assigning a blueprint, we need the blueprint ID. If the blueprint was created at a management group, the ID includes the management group name. I see that the PowerShell module can list all blueprints, can we also do this .via REST?
https://docs.microsoft.com/en-us/powershell/module/az.blueprint/get-azblueprint?view=azps-1.6.0

No I don't believe this is possible via rest today. I think in the powershell modules we are just iterating through all the scopes through the API.


Support quotas for clients

Support quotas, as references from:
https://docs.confluent.io/current/kafka/post-deployment.html#enforcing-client-quotas

Note, this as of now is wrong in the confluent docs, as of 2.5, setting quotas still require to go to zookeeper.
bin/kafka-configs  --bootstrap-server localhost:9092 --alter --add-config 'producer_byte_rate=1024,consumer_byte_rate=2048' --entity-name clientA --entity-type clients
Updated config for clientId: "clientA".

will not work.
docker-compose exec zookeeper kafka-configs  --zookeeper zookeeper:2181 --alter --add-config 'producer_byte_rate=1024,consumer_byte_rate=2048' --entity-name clientA --entity-type clients
Warning: --zookeeper is deprecated and will be removed in a future version of Kafka.
Use --bootstrap-server instead to specify a broker to connect to.
Completed updating config for entity: client-id 'clientA'.

yes

to implement this, you we need to add here a custom ZK client for now.

Version 2.6 of the KafkaAdminClient has support for quotas. We could first implement it from 2.6 onwards.
Feel free to assign it to me.


Error code 5

Gets this far:
Giving new instance some time to fully boot up...
xx.xx.xx.xx is still booting...
Setting up VPN on xx.xx.xx.xx
Warning: Permanently added 'xx.xx.xx.xx' (ECDSA) to the list of known hosts.
Permission denied (publickey).
lost connection
Error code 5
Not sure what the debug procedure would be here. Likely PEBCAK, but I'm stuck.

Looks like you need to add new key to your ssh-agent
On Sun, Mar 5, 2017, 16:30 Michael C Gilbert<EMAIL_ADDRESS>wrote:

Gets this far:
Giving new instance some time to fully boot up...
xx.xx.xx.xx is still booting...
Setting up VPN on xx.xx.xx.xx
Warning: Permanently added 'xx.xx.xx.xx' (ECDSA) to the list of known
hosts.
Permission denied (publickey).
lost connection
Error code 5
Not sure what the debug procedure would be here. Likely PEBCAK, but I'm
stuck.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ttlequals0/autovpn/issues/32, or mute the thread
https://github.com/notifications/unsubscribe-auth/AIRxhEAyiUzt5twwIfAf4ImzEKxxQLF7ks5ri1OsgaJpZM4MTnVJ
.

Pardon in advance my appalling ignorance, but the key that I used (using the -k command) is one that I have used before. Should I start from scratch with new keys?

Is that key registered in your ssh-agent? Dose that key exist in the aws
region you are trying to use.
On Mon, Mar 6, 2017, 11:52 Michael C Gilbert<EMAIL_ADDRESS>wrote:

Pardon in advance my appalling ignorance, but the key that I used (using
the -k command) is one that I have used before. Should I start from scratch
with new keys?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ttlequals0/autovpn/issues/32#issuecomment-284511861,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIRxhCVG9d0-PbZtPSNBLp1_X1VyvkvHks5rjGQDgaJpZM4MTnVJ
.

Thank you for your patience. I was hasty when I checked earlier and there was a similarly named key in the agent registry, but not that one. autovpn has already prodded past that point and is working properly. Thank you SO MUCH for your patience.
P.S. Are the autovpn error codes definitions available?

Glad to hear that you got it working.
As of now there really is no error code definitions. I should probably
create one, right now they act as markers in the code where something went
wrong.
On Mon, Mar 6, 2017, 13:11 Michael C Gilbert<EMAIL_ADDRESS>wrote:

Thank you for your patience. I was hasty when I checked earlier and there
was a similarly named key in the agent registry, but not that one. autovpn
has already prodded past that point and is working properly. Thank you SO
MUCH for your patience.
P.S. Are the autovpn error codes definitions available?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ttlequals0/autovpn/issues/32#issuecomment-284533563,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIRxhDQdV-AAeqq3glG-c87hrR8VG4W2ks5rjHZpgaJpZM4MTnVJ
.


Merge on_release workflow into on_push

This PR unifies on release workflow and on push. It solves the problem where creating a release triggers the workflow to build binaries which takes around 10 min to complete making the plugins fail because there's no asset to be downloaded. By unifying both workflows we might expect a new release to be created only when all binaries are built and uploaded.

It also includes the changes at https://github.com/wakatime/wakatime-cli/pull/405
Closes https://github.com/wakatime/wakatime-cli/issues/391

Related to #406 too?

Related to #406 too?

Concurrency might be fixed with this PR but we might validate that by running few more pipelines.


Add MethodSpec kind

This change adds a new kind representing a method specification on an
interface.
The motivation: in some cases, it can be helpful to distinguish method specs
from method implementations. For example, when searching for symbols, method
specs should usually be ranked higher than method implementations.
Test plan
Green CI!

Thanks @varungandhi-src for fixing and merging! I have a better understanding of the process now.


Comma three locked up then rebooted during a drive

Running on Comma Three CCE, During a drive, Openpilot stopped steering and throttle. Screen still had green border. Pressing gas and brake did not  remove green border.  About 10 seconds later, the screen went dark then I got the cross country logo. The C3 had rebooted.

Can you fill in the bug report template?

Okay.  Where is the template?  I looked here and on discord.

**Describe the bug**

<!-- A clear and concise description of what the bug is. -->

**How to reproduce or log data**

<!-- Steps to reproduce the behavior. -->

**Device/Version information (please complete the following information):**
 - Device: [e.g. EON/EON Gold/comma two]
 - Dongle ID: [e.g. 77611a1fac303767, can be found in Settings -> Device -> Dongle ID or my.comma.ai/useradmin]
 - Route: [e.g. 77611a1fac303767|2020-05-11--16-37-07, can be found in my.comma.ai/useradmin]
 - Timestamp: [When in the route the bug occurs (e.g. 4min 30s into the drive)]
 - Version: [commit hash when on a non-release branch, or version number when on devel or release2 (e.g. 0.7.6)]
 - Car make/model: [e.g. Toyota Prius 2016]

<!-- Ensure the full logs are uploaded for the posted route. To do so, ensure the Upload Raw Logs toggle is on and connect the device to wifi until all four colums in my.comma.ai/useradmin are filled. -->

**Additional context**

<!-- Add any other context about the problem here. -->

Fill in everything you can, but dongle ID is the most critical thing. Based on your description, it's very likely your device gathered and uploaded some useful diagnostic info as soon as it rebooted, but comma will need to know which C3 is yours to look it up.

ID: aeaff1b402063ccb

Upload raw logs was off.  I just turned it on.

Same issue as #21928.


Complete nagios extension tests

Tests for the nagios extension are currently using a mock tcp server based on camel-netty here. But it would be great to go beyond that.

Esp. we should decide whether it is necessary to make the test configurable to run against a real NSCA server. WDYT @llowinge ?

Any QE commitment needs to go through PM and planning, @ppalaga feel free to create ENTESB jira with your request.

Closing as per https://github.com/apache/camel-quarkus/issues/3698.


Unexpected Packet Problem After Implementing NPCLib.

Describe the bug
Players are unable to connect to the Spigot-Side server after implementing NPCLib in my Survival Core.
NPCLib usage option
NPCLib can be used in multiple ways, please provide the number corresponding to your usage option.
Didn't follow any of the examples.
NPCLib JAR name
npclib-plugin-2.12-SNAPSHOT.jar
Server version
E.g. CraftBukkit version git-Spigot-a1f2566-97b0057 (MC: 1.13.2) (Implementing API version 1.13.2-R0.1-SNAPSHOT) (use command /version)
CraftBukkit version git-Spigot-37d799b-3eb7236 (MC: 1.16.4) (Implementing API version 1.16.4-R0.1-SNAPSHOT)
To Reproduce
Steps to reproduce the behavior:
Snippet of the code: https://paste.md-5.net/abizufanoy.cs
Error on BungeeCord side:
[TheJavaHacker] <-> ServerConnector [Survival] has connected
02:05:49 [SEVERE] [TheJavaHacker] <-> ServerConnector [Survival] - encountered exception: net.md_5.bungee.util.QuietException: Unexpected packet received during server login process!
19667b227472616e736c617465223a22
02:05:49 [INFO] [TheJavaHacker] <-> ServerConnector [Survival] has disconnected

No known error on Spigot console.
Expected behavior
A clear and concise description of what you expected to happen.
NPCs should be created in their dedicated location & should be shown to players upon joining the server.
Screenshots
If applicable, add screenshots to help explain your problem.
Unable to provide. Didn't get very far.
Additional context
Add any other context about the problem here.

I ran into the same issue last night and after playing around with the library a bit and putting the server into debug mode, I noticed that there is a NPE on this line.
This happens because the GameProfile that is present in the PacketLoginInStart does not actually contain an id and merely contains the name of the player that is trying to join (source). This was a recent change which was made with this commit. Using the latest release, which does not contain that commit, or changing the UUIDs to names again in the TinyProtocol class will fix your issue.
If I have the time I will create a PR to undo that change.

So, the user joins and there is a name but no UUID. After all this time, they still managed to do that.
Ugh...
I will make sure to put the TinyProtocol on the right event, because I'm not planning on changing it back to names.

I don't see why Minecraft made it that the username is the first info they send to the server. I will change it to where it uses the username for initial channel handling and then change it to the UUID when the user is 'fully' joined.

Actually, I will keep it the way it was (with the names), it's only for when the player is online and not for permanent storage. Assuming there won't be developers changing the GameProfiles to have similar names, I don't expend any problems.
I'll be posting an update shortly. Closing issue.

You may download the new pre-release here: https://github.com/MinecraftLibraries/NPCLib/releases/tag/2.12.1-SNAPSHOT
I am currently deploying it to the Maven repo. Good day!


Server gave HTTP response to HTTPS client

I have tried to run the same code as this example and I am running zitadel locally. And I get this error when I run the code provided here : https://github.com/zitadel/zitadel-go/blob/main/example/http/http.go
go run main.go -key=./key.json -domain=localhost:8080

2024/03/13 16:01:35 ERROR zitadel sdk could not initialize error="Get \"https://localhost:8080/.well-known/openid-configuration\": http: server gave HTTP response to HTTPS client"
exit status 1

Is there a way to run zitadel with https connection locally?

We provide some self hosting examples which allow to use zitadel using https. For example here: https://zitadel.com/docs/self-hosting/manage/reverseproxy/nginx#tls-mode-external
I need to check if you can overwrite the domain so that you can use http as well which might be the easiest.

Hey @adlerhurst any update on making this work using http itself ?


jobs

I read all the functions about jobs , but if i wont to run the job function daily What can i made ??
for example : i need to insert documents in specific collection every day ??

I'm not sure I understand your question.
If you're wondering how to schedule daily tasks that's outside the scope of this driver.
For a built-in solution you could look at Foxx queues: https://docs.arangodb.com/3/Manual/Foxx/Scripts.html
Alternatively you can either define your task as a Foxx script (see the same documentation page) or as a standalone script outside ArangoDB. You could then use a tool like cron to schedule the script to be invoked repeatedly.

For daily or even less frequent time intervals (weekly, monthly, ...), you should really use a task scheduler outside of this driver and also outside of ArangoDB (e.g. a cron job like pluma suggested). Think of daylight saving time, leap years and leap seconds: if you wanted to run a task daily at 3am, it is easily to setup with a task scheduler, but

Ok thanks  @Simran-B  and @pluma  i will use foxx to solve this problem


⬆ Unpin supabase

Replace with a lower and upper bound.

If you do this we'll have to test all versions; don't we? Why not pin a version that's on conda-forge? That'd be less risky.


Upload Clackamas, OR data to s3

Until #1745 is supported, the following data can be imported but most be hosted on OA's s3 bucket:
http://cmap.clackamas.us/dataportal/index.jsp
I'll create the source once the file is in place on s3.

I'd include the actual file but it's well over the 10MB github limit.  The desired file is listed under "Tax Lots".

Sorry for taking so long with these, just noticed these now, feel free to cc me with @ingalls and I'll try to get them up the same day!
http://data.openaddresses.io/cache/us-or-clackamas.zip

Fixed in #1768


Simulator Issue (either bug or uninterpretable error message): inConns.size() == 1

I get the below issue when running the test https://github.com/David-Durst/aetherling/blob/debuggingCoreIR/tests/test_partition.py with width / parallelism (lines 16 and 17) not equal to 2. The test passes if it is equal to 2. I believe all the connections are right because the graph is passing the verifyconnectivity-noclkrst pass and because I've hard errors with this message before. The flattened output is at https://github.com/David-Durst/aetherling/blob/debuggingCoreIR/tests/partition4_16.json.test.
If this is my bug, how do I debug it? The simulator should give me a little more detail as to where the issue is.
Assertion failed: (inConns.size() == 1), function updateSliceNode, file interpret.cpp, line 538.

This should be fixed by #523

Yes it does, thanks!


Firecracker: virtio mmio support

Add support for virtio-mmio block devices. Firecracker only support virtio-mmio.
Note: Add a firecracker specific workaround to handle the fact that rootfs of the VM itself is also sent in as block device.

/cc @egernst @sboeuf

/test

/retest

@sboeuf identified issue here.  PTAL @mcastelino : https://github.com/mcastelino/runtime-1/pull/2/commits/30d2279c67289f498c0f586058fbf353a4d1b53b

/test

@egernst @sboeuf @jodh-intel all the review comments should have been addressed.
Can you you review/merge.

/test

/test

Thanks @mcastelino !
lgtm

/retest

Just so we don't try to test and retest, here are some consistent failures due to this patch:
Summarizing 3 Failures:

[Fail] run hot plug block devices [It] should be attached
/tmp/jenkins/workspace/kata-containers-runtime-ubuntu-16-04-PR/go/src/github.com/kata-containers/tests/integration/docker/run_test.go:135

[Fail] docker volume passing a block device [It] should be mounted
/tmp/jenkins/workspace/kata-containers-runtime-ubuntu-16-04-PR/go/src/github.com/kata-containers/tests/integration/docker/volume_test.go:135

[Fail] docker volume remove bind-mount source before container exits [It] should exit cleanly without leaking process
/tmp/jenkins/workspace/kata-containers-runtime-ubuntu-16-04-PR/go/src/github.com/kata-containers/tests/integration/docker/volume_test.go:160

Ran 222 of 234 Specs in 1309.588 seconds
FAIL! -- 219 Passed | 3 Failed | 0 Pending | 12 Skipped --- FAIL: TestIntegration (1336.17s)

I'm trying to figure out what's wrong here.

@mcastelino after more investigations, I found that the failing tests were related to some of our Docker integration tests testing --device option. And the generated error was the same I was seeing when I could not pass an extra block device into my VM!
So please include into this PR the small fix I have submitted here: https://github.com/mcastelino/runtime-1/pull/5, this should fix those issues.

@mcastelino after more investigations, I found that the failing tests were related to some of our Docker integration tests testing --device option. And the generated error was the same I was seeing when I could not pass an extra block device into my VM!
So please include into this PR the small fix I have submitted here: mcastelino#5, this should fix those issues.

@sboeuf I have pulled in the commit into this PR

/test

/test

/test

/test

Except @bergwolf 's comment, other parts
LGTM


Benchmarking tip added

Clarify "maximizing accuracy" tips are also relevant when benchmarking,

Job PR-746-1 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-746/1/index.html

Job PR-746-2 is done.
Docs are uploaded to http://autogluon-staging.s3-website-us-west-2.amazonaws.com/PR-746/2/index.html


Grammatical error in DatePicker States Descriptions

"The HasError attached property is true has the control has focus." should be something like "When the HasError attached property is true it means the control has focus." or "The HasError attached property being true indicates that the control has focus."
The description for InvalidUnfocused is similarly wrong.

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

ID: dd717a09-79f4-a8f9-b74d-35ee0315566c
Version Independent ID: d4681169-14d4-309f-8998-4cbfdb360282
Content: DatePicker Styles and Templates
Content Source: docs/framework/wpf/controls/datepicker-styles-and-templates.md
Product: dotnet-framework
Technology: dotnet-wpf
GitHub Login: @dotnet-bot
Microsoft Alias: dotnetcontent

Thanks for your feedback @tf-egoldman. I've opened PR #12875 to fix this.


Update communication.yml

Slack is working on 2FA

@drissamri You asked them about Windows client, not 2FA... :confused:

How I did not see that, I just cannot grasp. Good thing it wasn't pulled, thanks @mxxcon :wink:

Dear lord, how did I miss that. I tweeted two different questions.
They only favorited my 2FA tweet and didn't reply to that one... My bad.
----- Oorspronkelijk bericht -----
Van: "Carlgo11"<EMAIL_ADDRESS>Aan: "jdavis/twofactorauth"<EMAIL_ADDRESS>Cc: "Driss Amri"<EMAIL_ADDRESS>Verzonden: Woensdag 28 januari 2015 14:46:42
Onderwerp: Re: [twofactorauth] Update communication.yml (#941)
How I did not see that, I just cannot grasp. Good thing it wasn't pulled, thanks @mxxcon
—
Reply to this email directly or view it on GitHub .


PERF: Bring back  for fast rendering apps

TL;DR Bring back a feature like <body is="polymer-body">. Related to this is https://github.com/Polymer/polymer/issues/2653.
We used to have a feature <body is="polymer-body">, that gave you polymer features (bindings, on-* listeners, methods, etc.) and rendered things in light dom. <x-app> and <template is="dom-bind">'s limitation is that everything is hidden until imports are loaded/dom-change fires. All the perf improvements above are negated. If we bring back <body is="dom-bind">`, it would give a fast-path option towards super fast rendering apps but still benefit from Polymer features.

Rendering bottlenecks
After much research and experimenting in this area, I've found that the largest sources of first paint/load delay in most polymer apps are:

Not using async scripts: <script src="webcomponents-lite.js" async>
Not using async imports: <link rel="elements.html" async>
Using <body unresolved> (hide the page until polymer has declared ready)
Using a single <x-app> or <template is="dom-bind"> for all/most of the content. It's convenient to have the bindings and polymer features so we shouldn't get rid of it. For people that want fast apps, it would be nice to provide a fast alternative

Other things that help:

For larger apps, it's best to not vulcanize the main page. Vulcanizing index.html increases the weight of it. If you're using a lot of elements, that's a lot of inlined css/svg/html. On slow connections, this can be very noticeable b/c it slows the load of the main page.
use crisper --script-in-head - this defer loads the js bundle at the top of the import bundle. For large vulcanized bundles, the parser has to go through a ton of svg/html/css before it starts loading the js. Therefore, elements upgrade later than they could, which delays the whole app. Ideally we could even move the script load into the main page, but there are timing issues when I've tried this. Example: this.$.myid may not resolve. This change alone can [speed up the vulcanized script download by 80%]

What fast can look like
Traditional polymer app: https://ebidel.github.io/polymer-experiments/polymersummit/fouc/unresolved.html is not fast on a slow connection. It async's nothing and uses <body unresolved>.
Hotness: https://ebidel.github.io/polymer-experiments/polymersummit/fouc/appshell.html is super fast. It paints instantly, even on a 2g connection! It uses all the patterns above but does not use Polymer features like bindings (just consumes elements).
Note: WPT tends to lie! I no longer trust their vms/setup. It reports 8.6s render on chrome desktop 2g (results. Chrome devtools w/ 2g emulation reports 2s fp.

For the best of both worlds (fast rendering + leveraging polymer features), <body is="polymer-body"> would be killer.
This can be faster than other frameworks
The browser is REALLY fast at rendering markup. We shouldn't hide it. This is a huge advantage to any other framework. We work directly in markup and elements upgrades can be used to our advantage. Other frameworks generate markup. Let's take advantage of the rendering pipeline we're given.

The tradeoff here is visual FOUC of {{}} showing before the element is upgraded. This is something users will have to deal with if they chose the fast path, but is easily dealt with with CSS. I'd love to have a POC element that I can use to use show how. Tried looking at dom-bind myself, but there's a lot going on.

@ebidel could we make a special attribute binding for textContent? That way the server can send down static text inside the tags instead of {{}} and then  perhaps gets fulfilled later?

That's an interesting idea Rob. It changes the semantics of the element though. In some cases, users won't be able to change the internals of an element (e.g. consuming elements).

Re https://github.com/Polymer/polymer/issues/2654#issuecomment-152631777, you can do <my-section text-content="{{article}}">

@tjsavage @kevinpschaaf can we include this in Polymer.next planning?

This issue is meant to provide (bring back) a solution for that pattern. Do we have a polymer 2 vended element for light dom and bindings? The summit site is using one off elements :/

Oh I see. The request is to have bindings in the light dom and then have a Polymer mixin that parses the bindings in the lightdom next to parsing in its templates. I am not sure how that would work, as eagerly setting bindings in a non-template (e.g. not inert) will eagerly set the bindings. That means that attributes and textcontent will probably be corrupt until Polymer fixes them.
I am not familiar with the old solution, so maybe @kevinpschaaf or @sorvell have any thoughts on this issue. Thanks for clarifying @ebidel !

Right you are :) https://github.com/Polymer/polymer/issues/2654#issuecomment-152625607
I think users that opt in to a fast path like this would know how to control it. But we should give them the tools to make their site fast!


Update user guide

Improve grammar and styling
Ensure correctness
Updated tables

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

Coverage data is based on head (4358764) compared to base (ba16145).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff            @@
##             master     #222   +/-   ##
=========================================
  Coverage     75.59%   75.59%
  Complexity      532      532
=========================================
  Files            77       77
  Lines          1549     1549
  Branches        180      180
=========================================
  Hits           1171     1171
  Misses          333      333
  Partials         45       45

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

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


@Transactional on an endpoint and an event handler colliding

I wrote a custom transactional adapter for pg pool client, and it works really well. Until a decorated event handler is called as a side effect of an endpoint that is also decorated as Transactional.
My use case is fairly simple, I think, and I wonder if I've done something wrong along implementing the custom adapter, or this is simply a case that CLS can't support because it only provides one context instance across request and any side effect processing.
User controller adds a user withing transaction context, then emits "userAdded" event that gets picked up by an event processor, and that should ideally do further updates in the database within another transaction context.
What I find instead is that the call to the onUserAdded is actually not within a transaction context with the tx.isTransactionActive() returning false. If I remove the decorator on the controller endpoint, the onUserAdded does execute within active transaction as expected.
This makes me think that both methods share the same ALS instance, the "is transaction active" flag is set to false upon existing the endpoint and therefore the host doesn't provide the client in subsequence calls.
Can you discuss if this use case should be supported, and if so, where I'm making a mistake?
// database.module.ts, somewhere in imports
ClsModule.forRoot({
  plugins: [
    new ClsPluginTransactional({
      imports: [PostgresModule.forRoot(options)],
      adapter: new PostgresTransactionalAdapter({ dbInstanceToken: Pool }),
    }),
  ],
  global: true,
  middleware: { mount: true },
})

// user.controller.ts
class UserController {

  constructor(
    private eventEmitter: EventEmitter2,
    private userRepository: UserRepository,
  ) {}

  @Post()
  @Transactional()
  public async addUser() {
    await this.userRepository.add(...);
    this.eventEmitter.emit('userAdded');
    return 'OK';
  }
}

// event.processor.ts
class EventProcessor {

  constructor(
    private eventEmitter: EventEmitter2,
    private userRepository: UserRepository,
  ) {}

  @OnEvent('userAdded')
  @Transactional()
  public onUserAdded() {
    // some processing logic
    await this.userRepository.update(...);
  }
}

This makes me think that both methods share the same ALS instance, the "is transaction active" flag is set to false upon existing the endpoint and therefore the host doesn't provide the client in subsequence calls.

Yes, you are correct that the entire promise chain shares the same ALS context - and that includes triggered event handlers.
The default transaction propagation mode is Required, which means the nested @Transactional decorators try to re-use the existing transaction (and by extension the same ALS context).
A transaction is started as soon as a method with the @Transactional decorator is called, and is committed as soon as it finishes, that means the order of operations in your example is as follows:

Endpoint called
ALS context is initialized
A transaction that wraps the controller begins and the method starts executing
Event is emitted
Event handler is synchronously called and nested @Transactional decorator is executed
We are still in the context of an active transaction, so it is reused and no nested context is created
A promise for the event handler is scheduled and the execution returns to the controller
The controller returns and the transaction is committed
Then the event handler continues executing, but the transaction had already finished.

You could potentially "fix" that by using a different propagation mode, like RequiresNew (Create a new transaction even if one already exists. The new transaction is committed independently of the existing one), which always creates a new ALS context.
But the most important thing to keep in mind is, again, that a transaction is started as soon as a method with the @Transactional decorator is called, and is committed as soon as it finishes, so you would be always starting a committing an empty transaction.

A little bit of theory now:
A transaction is a synchronous and atomic operation over a database that has well defined entry and exit points, it does not mix well with asynchronous events, which can start and finish whenever after an event is produced.
I see you're trying to implement "hooks" of some kind - you add the user and return to the client, so it expects that the user to have been added. But then you want to continue using the same transaction to update something. What if that update fails? The client will falsely believe that it had added the user, but a failing transaction could have rolled that change back. I'm pretty sure you don't want that behavior.
Or, you do just want the client to start the operation and don't care about the result?
You have to chose - do you need transactional or eventual consistency? (ACID vs BASE)
If you need everything to run within a transaction, then either:

do not use events, just regular method calls and await everything
if you do use events, await them synchronously via await this.eventEmitter.emitAsync to wait for their completion.

If you don't need to run everything within a transaction, but still need eventual consistency, use an Outbox Pattern to transactionally persist messages (so they're not lost on app crash) and then consume them later in a different transaction. (this is out of scope of the question)

Thanks for the write up, makes a lot of sense. I have to choose a different approach altogether to implement my use case.
I've been thinking about this a bit more and though I agree with what you wrote, there's still an element of surprise in the current implementation. But I'd attribute it to the error message rather than the design choice.
Since I decorate my even handler with a @Transactional decorator, I (naively) expect the code within that method run in an active transaction. The fact that another overlapping transaction context commited the transaction before it reaches the end is understanable, but it might take some time to figure out that you're doing something you shouldn't. A clear error message along the lines of "another transaction already commited" or something would make for a better DX.
Alternative design choice could be to use some sort of a transaction counter that clearly tracks fully nested transactions and only commits once the counter draws back to zero.
Neither of these solve my specific use case but I thought I'd share them anyway.

I agree that it might be unexpected, but at the same time, I think that creating an elaborate solution with nested transaction counting would do mor harm than good.
Especially since you could easily accidentally create a floating promise which holds the transaction open and then spend countless hours figuring out why your parent transaction did not commit.
An error mesage about the transaction commiting might be helpful though. I'll investigate it further. I think it should be possible to delegate this to the underlying database library.
The issue right now that, by default, the same CLS context is used for nested transactions, so it can be cleared from the parent without the child knowing. If, instead, we create a copy of the context, then the child will still hold a reference to the original transaction and it should throw an appropriate error when trying to use it after commit.


KHARMA 2022.12

This is KHARMA as used for the final round of upscale runs on Summit.
This version has working resizing and magnetic field cleanup, fixes many small issues, and introduces more stringent CI tests.  It also merges much of the work for performing per-zone implicit nonlinear solve operations, including introducing drift-frame floors.
This will also be the last version of KHARMA to support C++14, and the last to be limited to GRMHD.

This is locked in for Summit runs, it's the basis for most current development, and the known bugs have been opened as issues.
So, merging without reviews (hopefully for the last time!).
Also, lots to land in dev this week.


The main scope should be name source.css.less instead of source.less?

The main scope should be name source.css.less instead of source.less?
On the lines:

https://github.com/sekogan/MarkdownLight/blob/master/MarkdownLight.tmLanguage#L395-L397,

They are defined as source.css.less but on the LESS syntax package they are defined as source.less:

https://github.com/danro/LESS-sublime/issues/85
https://github.com/sekogan/MarkdownLight/issues/9#issuecomment-257127053

The scope should be source.less because less is a different language than css, not a pure superset or extension of css.


Needs ability to track multiple topics

Tracking multiple keywords puts all related tweets into a single sqlite3 table. When the realtime sentiment is calculated, it calculates for all records in this table. We want to be able to segment sentiment values based on topics where each topic may be composed of multiple keywords.

In order to do this, we need to understand how twitter returns results based on the track parameter. This documentation is located here: https://dev.twitter.com/streaming/overview/request-parameters#track
Once we can replicate that logic, we can use it to tag each tweet in our database with the related tracking terms as the records are inserted. Then when we query to calculate real-time sentiment, we can query by the tagged data.


Offsets are parsed as Integers instead of Longs

https://github.com/linkedin/Burrow/blob/aff0e3321fefcacd2bde9685e6bed813c96bcc7c/zookeeper.go#L165
This method parses the offsets as Integers when they are actually Long values written by Kafka.


add MIT license to our modules

Since these modules are separate from the android project itself, they should be licensed by us with the MIT license.

@James-Sangalli this will provide more freedom for everyone (not just white-labels) including for closed-source products. Is that the intention?

@James-Sangalli this will provide more freedom for everyone (not just white-labels) including for closed-source products. Is that the intention?

Yes


⚠ Samsung has degraded performance

In c686b5f, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2608 ms

Resolved: Samsung performance has improved in e5bfe4b.


Add license to package.json

Can "license": "MIT" please be added to the package.json file?

+1 Not having a license triggers a IQ Scan vulnerability false-positive!


feat(content-band-list-block): Content band list block.

Issue
Fixes #MERATIVE-781
Description

This ticket is part of the phase 3 effort, which is to migrate all of the remaining components/patterns in AEM over to Franklin.  Sections > Section Content band list
Note: part of this work is to clean up the naming in Franklin to ensure it aligns with our Design Systems.

New

Design Specs

If applicable, add the direct link to the design specs of the component/feature that's part of this PR.

Figma Link - https://www.figma.com/file/vw24IPXXt4vCh9BNumka9A/Web--Merative-Digital-Design-System-2.0?type=design&node-id=1459-14993&mode=design&t=WtS8KBTRL2E1rFnO-0

Test URLs
https://content-band-list-block--merative2--nimithshetty17.hlx.page/block-library/sections/section-content-band-list
Testing Instruction

To test the content band list and its responsiveness with respect to the design across all devices.

@sachinmesh @proeung - Have made all the requested changes. Please have a look and let me know if there are any concerns.

HI @nimithshetty17
Checked this testing URL https://content-band-list-block--merative2--nimithshetty17.hlx.page/block-library/sections/section-content-band-list
These still needs to be done

Branch not getting updated with the latest commits.


Add get_member_name and active_buffer_ranges to C APIs

This PR adds additional APIs to the C interface

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


[DEBUG CI] [DON'T MERGE] Add a test that should fail to compile on the auto-tester

See https://github.com/dlang/phobos/pull/7011.

Hmm, it passes.

Darwin_64_32 always passes as we have retired 32-bit support for macOS.


regexp: improve performance

go 1.8, linux, amd64
Recently, I use regular expression a lot in golang. From the benchmarksgame, I see the regexp of go is very slow, about 5x-10x than many other languages.
After I made some modifications by removing unnecessary channels and allocations in the source code, the performance is improved about 1/4, but is still slower than even many dynamic languages.
from pprof:
(pprof) top 10
68.33s of 68.49s total (99.77%)
Dropped 31 nodes (cum <= 0.34s)
Showing top 10 nodes out of 17 (cum >= 63.59s)
flat  flat%   sum%        cum   cum%
32.46s 47.39% 47.39%     37.17s 54.27%  regexp.(*machine).add
18.58s 27.13% 74.52%     27.05s 39.49%  regexp.(*machine).step
7.06s 10.31% 84.83%     68.28s 99.69%  regexp.(*machine).match
4.77s  6.96% 91.79%      4.77s  6.96%  runtime.memmove
1.86s  2.72% 94.51%      1.86s  2.72%  regexp/syntax.(*Inst).MatchRunePos
1.72s  2.51% 97.02%      1.72s  2.51%  regexp.(*inputBytes).step
1.48s  2.16% 99.18%      1.48s  2.16%  regexp/syntax.EmptyOpContext
0.39s  0.57% 99.75%      2.25s  3.29%  regexp/syntax.(*Inst).MatchRune
0.01s 0.015% 99.77%      4.84s  7.07%  regexp.(*Regexp).replaceAll
0     0% 99.77%     63.59s 92.85%  main.countMatches
It seems that there are many type assertion in regexp, am I right? And is there any solution for this?

The benchmark game is, as the name suggest, a game. A game that is won by tuning a specific program until it performs good on the specific input used in the benchmark.
The page you linked, for example, shows that C++ is slower than PHP, Hack, Node.js, and Typescript.
Is it, though?
This issue is, IMHO, a little to broad to be actionable. "Make the regexp engine faster" well, yes, everyone likes fast regexp engines. We have a few (a little more specific) issues about that.

@ALTree > The benchmark game is, as the name suggest, a game.
The name "benchmarks game" signifies nothing more than the fact that programmers contribute programs that compete (but try to remain comparable) for fun not money.

shows that C++ is slower than PHP, Hack, Node.js, and Typescript.

No. Shows a C++ program slower than PHP, Hack, Node.js and Typescript programs.

Is it, though?

Yes.
@dongweigogo
regex-redux is a new task, based on regexdna.
Try re-writing some of the old Go regex-dna programs to perform the new substitutions.

@igouy ,
yes, the original code seems written a long time ago, and I've made some improvement.
After I tried various regular expressions and self-made input data to avoid biases, the conclusion is still the same that in all cases, the go regexp is beaten by many other languages (I tried rust and python).
This bothers me! -_-!

As you  say, in a language like Python, the regexp engine is implemented in C.    You also need to consider the characteristics of the engine.  Go has chosen to follow the re2 path (not surprising, since Russ Cox is a major author of both Go and re2).  re2 has much better performance characteristics than some other regexp engines, in that it never has an exponential slowdown, but that comes at a cost for other regexps (https://swtch.com/~rsc/regexp/).  Even then, the C++ re2 implementation has many optimizations that are not in the Go implementation.  See, for example, #11646.
So: can regexp be sped up?  Yes.  But it will take work.  I'm not sure whether to bother leaving this issue open or not.

I'm going to close this in favor of concrete optimization bugs like #11646.


fetch_example_data will fail with error when using RESSPECT installed from PyPI

To reproduce:

Create new environment
pip install resspect
Run fetch_example_data
See error

Data unpacked into directory: /Users/drew/Library/Caches/resspect/SIMGEN_PUBLIC_DES
Traceback (most recent call last):
File "/Users/drew/opt/miniconda3/envs/scratch/bin/fetch_example_data", line 8, in
sys.exit(fetch_example_data())
File "/Users/drew/opt/miniconda3/envs/scratch/lib/python3.10/site-packages/resspect/scripts/fetch_example_data.py", line 36, in fetch_example_data
os.symlink(original_directory, target_dir, target_is_directory=True)
FileNotFoundError: [Errno 2] No such file or directory: '/Users/drew/Library/Caches/resspect/SIMGEN_PUBLIC_DES' -> '/Users/drew/opt/miniconda3/envs/scratch/lib/python3.10/data/SIMGEN_PUBLIC_DES'

I believe that I would advocate for the fix where we update the various locations that are hard coded to look for .../data/SIMGEN_PUBLIC_DES and replace those with the dynamically generated <user_cache>/resspect/SIMGEN_PUBLIC_DES.
And if that programmatically defined directory is not found, then prompt the user to run fetch_example_data.

It seems like most of the places where we're looking for the hardcoded directory is in the documentation actually. There is one place in build_cannondical_snpcc.py that defines data_dir = '~/data/...', so we would need to update that as well.


Add feature for user to set card margins

@patuoynageek thanks but  I cannot merge this PR since you only added margin in the radio button, add it to the group button as well then I'll merge it

sorry, can you please clarify where/what you are referring to?

can you add the same rhing for grouped button as well

Changes has been added to both classes


Reworded statement on database connection encryption

@simonsabin : Thanks for your contribution! The author, @aliceku, has been notified to review your proposed change.

Discussed in issue #16455

#sign-off

There really needs to be a link or item for this in the encryption landing page for sql not sure how that should be best dealt with. Currently searching for encryption doesn't bring up this content about connection encryption
https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/sql-server-encryption?view=sql-server-2017
Simon Sabin
Director Engineering Sabin.io
Founder SQLBits
Microsoft Regional Director & MVP

From: Carl Rabeler<EMAIL_ADDRESS>Sent: Friday, October 19, 2018 7:23:44 PM
To: MicrosoftDocs/azure-docs
Cc: Simon Sabin; Mention
Subject: Re: [MicrosoftDocs/azure-docs] Reworded statement on database connection encryption (#17184)
Thanks all
@simonsabinhttps://github.com/simonsabin @alicekuhttps://github.com/aliceku @VanMSFThttps://github.com/VanMSFT
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/pull/17184#issuecomment-431454264, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABJ2a2KIfFFv0es_Nmd9UX3K2xZwWBsJks5umhiwgaJpZM4XvGI_.

Adding Van to put this on his radar to address. Thanks for the input Simon.
Cheers,
Carl
From: Simon Sabin<EMAIL_ADDRESS>Sent: Friday, October 19, 2018 11:29 AM
To: MicrosoftDocs/azure-docs<EMAIL_ADDRESS>Cc: Carl Rabeler<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/azure-docs] Reworded statement on database connection encryption (#17184)
There really needs to be a link or item for this in the encryption landing page for sql not sure how that should be best dealt with. Currently searching for encryption doesn't bring up this content about connection encryption
https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/sql-server-encryption?view=sql-server-2017
Simon Sabin
Director Engineering Sabin.io
Founder SQLBits
Microsoft Regional Director & MVP

From: Carl Rabeler <notifications<EMAIL_ADDRESS>Sent: Friday, October 19, 2018 7:23:44 PM
To: MicrosoftDocs/azure-docs
Cc: Simon Sabin; Mention
Subject: Re: [MicrosoftDocs/azure-docs] Reworded statement on database connection encryption (#17184)
Thanks all
@simonsabinhttps://github.com/simonsabin @alicekuhttps://github.com/aliceku @VanMSFThttps://github.com/VanMSFT
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/pull/17184#issuecomment-431454264, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABJ2a2KIfFFv0es_Nmd9UX3K2xZwWBsJks5umhiwgaJpZM4XvGI_.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fazure-docs%2Fpull%2F17184%23issuecomment-431455924&data=02|01|Carl.Rabeler%40microsoft.com|76ec71abc95a4446d87208d635f0c8ec|72f988bf86f141af91ab2d7cd011db47|1|0|636755705617742344&sdata=%2FawirYonaI54KiIZR94JbT%2FRYKlEIdyPxmxoWQ%2BphwY%3D&reserved=0, or mute the threadhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMCBn3h5hY2sdUYNMjC0VcArTbOO0xUYks5umhn-gaJpZM4XvGI_&data=02|01|Carl.Rabeler%40microsoft.com|76ec71abc95a4446d87208d635f0c8ec|72f988bf86f141af91ab2d7cd011db47|1|0|636755705617742344&sdata=IM6Wv4XGcbeL8QjgaTUh%2F5rj4a7JuFfq5wi7iyaUQi8%3D&reserved=0.

Thank you @simonsabin! I had a PR ready for this, but I also agree with your changes as it does clear up any confusion. Thanks again for contributing!

Do you have changes for connecting to this from the main encryption docs
Simon Sabin
Director Engineering Sabin.io
Founder SQLBits
Microsoft Regional Director & MVP

From: Van To<EMAIL_ADDRESS>Sent: Friday, October 19, 2018 8:32:05 PM
To: MicrosoftDocs/azure-docs
Cc: Simon Sabin; Mention
Subject: Re: [MicrosoftDocs/azure-docs] Reworded statement on database connection encryption (#17184)
Thank you @simonsabinhttps://github.com/simonsabin! I had a PR ready for this, but I also agree with your changes as it does clear up any confusion. Thanks again for contributing!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/pull/17184#issuecomment-431474190, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABJ2a_37RV7J1VFiIrqJryLj8W7ja5Rhks5umii1gaJpZM4XvGI_.

Hello @simonsabin, changes have been pushed and you will see a link to the SQL Database Security overview from the Encryption landing page later today. Thanks again!


SNOW-616199: updated _resolve_packages to only query for added packages

Please answer these questions before submitting your pull requests. Thanks!

What GitHub issue is this PR addressing? Make sure that there is an accompanying issue to your PR.
No existing github issue. Only addressing JIRA SNOW-616199

Fill out the following pre-review checklist:

[x] I am adding a new automated test(s) to verify correctness of my new code
[x] I am adding new logging messages
[ ] I am adding new credentials
[ ] I am adding a new dependency

Please describe how your code solves the related issue.

Updated code to only query for packages and versions that are requested in add_packages method.
Updated code to check if requested versions are available in Snowflake. Raise error if they are not.
Updated code to warn when local version of python package does not match with any supported packages on Snowflake server

I have read the CLA Document and I hereby sign the CLA

Just dump the release notes here
When adding a package using session.add_packages() with a specific version to UDFs or stored procedures, if the version is not supported by Snowflake, an exception will be raised immediately instead of when registering the UDF or stored procedure.


Fix/add xcode9 support

GOAL
Adjust Clappr project to Xcode9 and iOS11
How to test

Run Clappr project on xcode9 inside a simulator or device running iOS11
Run unit tests and certificate if all passes.

Hey @geisonfgf , I guess it is necessary to also update .travis.yml to use the correct versions of Xcode and iOS Simulator.


Polyline widget

If I'm right, this widget is hard-coded to a cyan horizontal line. In one way I like that you are specifically aiming for the OPI to look the same (i.e. no premature optimisation or generalisation) but I think this is not an especially useful widget as it is.
The CS-Studio polyline widget allows multiple segments. What does the XML fragment that you are converting from look like?

I would agree it is not very useful, the reasoning behind that is just that there is only one instance of the polyline object in the synoptic; so there wasn't much to go off in terms of functionality. That being said I can go searching for more instances of it in other beamlines to get a better idea, do you think that is worth doing?
In terms of the XML fragment, it is quite large so I will just say that it starts line 1787 in the synoptic.opi file. There are many other properties, including a large 'scripts' property, but I remember in the first meeting Tom said to ignore those scripts for now. Other than a variable background color there isn't much of interest.

You can always play around with the widget in the OPI editor to get a feel for what options are available. In the end we are looking to maintain compatibility with CS-Studio and opibuilder so we want our widgets to be similar unless we've got a reason otherwise. You're right not to chase down every little feature of every widget though, that isn't good value for our time when we are prototyping.
There is a difficulty with lines because they are unambiguous with absolute positioning but much less clear with relative positioning.
You should use useCommonCss() - this will automatically get a bunch of properties including foreground and background colours.

That is a good idea I didn't think about doing that. What is opibuilder? Sure will update that.

Right click on the OPI and select "Edit OPI" (and accept the suggestion).  This will take you into the editor view. Here you can drag and drop widgets and change their properties at the right of the screen. It's quite easy to see how the properties map on to the XML representation.
opibuilder is the part of CSS that manages the OPI screens. There are a lot more functions in CSS, databrowser is the one that we use most often at Diamond.

That should be all done now, I've added rotations, background color, transparency, and visibility.

I'd call the prop lineLength rather than width and the widget Line rather than Polyline, but otherwise we can merge this one.

That's an easy one so can change that now.

Good question. Potentially widget width and line length are two different things. What happens if you change it?

So if you change it, it ruins the Symbol widget which also has the width property. An alternative is to map the width property in CS-Studio to both width and lineLength so that you can choose what is more appropriate for the component, but it seems a little wasteful.

Have a look at https://github.com/dls-controls/cs-web-proto/pull/206/files - here I've removed the width and height props from the symbol widget and I think it's working OK.

Again, no big deal, let's merge this one.

My only thinking is that if we change the name of a property a large amount from CS-Studio to this that it will be harder to figure out later when things go wrong. e.g. if later there is another component that requires the CS-Studio width prop, and we have mapped it to lineLength, we just have the same problem as now but for that component instead. Basically I am a little against changing the mappings until I have the list of all properties used in CS-Studio and what components use them.

I don't think that's what's happening. If you look at opiParsePosition, that's where width and height are being parsed. We don't generally use the width or height explicitly in a widget, we use the size of container to size the widget.
Now, in the case of the polyline widget your conversion is only in luck because the polylines you are trying to convert happen each to be a horizontal line from the left to the right of the widget. That's why line length corresponds to widget width. If you happened to be trying to convert a vertical line I thnk you would still produce a horizontal line from the code as it is (unless the line was a horizontal line that had been rotated, which it most likely wouldn't be). The actual information about what line is drawn is in the points prop and that is being ignored.
Anyway, these are tricky details for another time.

Ok that is my lack of understanding of the parser letting me down there, your point makes sense.


Let's Swift 4.0

Codecov Report

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

@@           Coverage Diff           @@
##           master       #2   +/-   ##
=======================================
  Coverage   78.37%   78.37%
=======================================
  Files           1        1
  Lines          37       37
  Branches        4        4
=======================================
  Hits           29       29
  Misses          7        7
  Partials        1        1

Impacted Files
Coverage Δ

Sources/Stubber/Stubber.swift
78.37% <ø> (ø)

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 3e698bc...687115a. Read the comment docs.


fzf hint color is covered

fzf hint color is covered

Could you provide a screenshot and the commands to reproduce?

It should like this.

I'm so sorry.Not 'fzf',it's 'zsh-autosuggestions'.I solve this by change 'AUTOSUGGESTION_HIGHLIGHT_COLOR'.
Thank you for your help and your color scheme.

If this is something you think should be part of the colorscheme then feel free to make a Pull Request 👍


Add class name to sticky elements when active.

Adds the class 'sticky-active' when the position is fixed and remove it when the position is absolute.

This won't work in the browsers with native sticky implementation, Stickyfill won't even initialize in those browsers. This and the fact that it's a polyfill for a particular CSS feature are the reasons I don't accept any additional functionality.
Also, classList is supported since IE 10, Stickyfill supports IE 9 as well.


Xorg server out of date.

Checklist

[x] Checked the nixpkgs master branch

[x] Checked the nixpkgs pull requests

Project name
nix search name: nix command complains about no flakes?

current version: 1.20.12
desired version: 21.1.1
Notify maintainers

maintainers: @TredwellGit
Note for maintainers
Please tag this issue in your PR.
And maybe add the maintainers field?
as nixpkgs search says: This package has no maintainers.
There's also a new feature that could be added to the xserver service/module: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/742

Overview of changes for 1.20 -> 21.1.0: https://lists.x.org/archives/xorg-announce/2021-October/003115.html

We need to package libxcvt first.

https://github.com/NixOS/nixpkgs/pull/153994

#153994 has been merged


[BUG] Demo Recording Bug

Hello Shobhit,
One of our players has reported to me that demo recording is not functioning correctly. The demo either cannot be recorded at all or is very buggy.
Upon analyzing the issues, I have also observed the mentioned errors. The following error messages seem to be relevant:
demo file version 'valve_demo_2' engine version 'valve_demo_2' on file

In the buggy demo, it starts before the beginning of the first round and continues for as long as the demo has been recorded. We did not encounter these issues with default demo recording. Could you please try to reproduce the error on your end?
I have uploaded the demo for testing purposes: https://file.io/MOrS9fxNX2V3
Kind regards,
Marcel K.
Technical Support at OCB

Hey!
Apologies for replying very late.
We use the default commands to record the demo, and I've tried multiple demos on my side which seems to be working fine.
Can you confirm if you're still facing this issue with the latest updates?
Thanks!


Added MARCH C- test

This adds the MARCH C- test to the lower RAM test. If I have time to understand how it works, I could add it to the upper RAM test. I'm not an Amstrad CPC guy though, I don't know a lot about it or how the memory expansion works.
MARCH C- has the advantage of detecting addressing faults, as well as SRAM bit and data bus faults. Since it runs pretty quickly I just kept the current test in there too.

Oh, just to add, do you think it might be worth adding a single bit mode to this? Another possible failure mode is "shorted" bits. By testing a byte at a time those can be missed. The solution is to test one bit at a time, but of course it takes 8x as long. Another option is to test with #55 and #AA, which would only double the test time.


Fix data/date typo

Fixes #579

@QuinnRadich : PR passed acceptance checklist. Please review further and approve/merge if appropriate. Thanks!


Improve error messages by removing checkDependencyList in stdenv.mkDerivation

I recently encountered this error attempting to build a derivation:
error:
       … while calling the 'derivationStrict' builtin

         at /builtin/derivation.nix:9:12: (source not available)

       … while evaluating derivation 'infra-shell'
         whose name attribute is located at /nix/store/ppm74s0slima7385piksmdcnvcawgs1x-source/pkgs/stdenv/generic/make-derivation.nix:353:7

       … while evaluating attribute 'nativeBuildInputs' of derivation 'infra-shell'

         at /nix/store/ppm74s0slima7385piksmdcnvcawgs1x-source/pkgs/stdenv/generic/make-derivation.nix:397:7:

          396|       depsBuildBuild              = elemAt (elemAt dependencies 0) 0;
          397|       nativeBuildInputs           = elemAt (elemAt dependencies 0) 1;
             |       ^
          398|       depsBuildTarget             = elemAt (elemAt dependencies 0) 2;

       error: Dependency is not of a valid type: element 23 of nativeBuildInputs for infra-shell

This isn't very helpful; it doesn't tell me what the type of the dependency is. I'm also not directly constructing stdenv.mkDerivation { nativeBuildInputs = [...]; }, so it's not obvious what "element 23" would be (the derivation is constructed through several layers of helpers, like many derivations in nixpkgs are).
Ultimately, element 23 was a function, which surfaces another issue:
nix-repl> throw "Dependency is not of a valid type: ${a: a}"
error:
       … while evaluating a path segment

         at «string»:1:43:

            1| throw "Dependency is not of a valid type: ${a: a}"
             |                                           ^

       error: cannot coerce a function to a string

(builtins.toString produces similar results.) The Nix language doesn't provide a safe value printing function, so we can't really construct a good error message here.
The good news is that we can remove this error checking code from nixpkgs entirely without losing usability. Here's the error message on Nix 2.19.3:
error:
       … while calling the 'derivationStrict' builtin

         at /derivation-internal.nix:9:12:

            8|
            9|   strict = derivationStrict drvAttrs;
             |            ^
           10|

       … while evaluating derivation 'my-derivation'
         whose name attribute is located at /Users/wiggles/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:347:7

       … while evaluating attribute 'nativeBuildInputs' of derivation 'my-derivation'

         at /Users/wiggles/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:391:7:

          390|       depsBuildBuild              = elemAt (elemAt dependencies 0) 0;
          391|       nativeBuildInputs           = elemAt (elemAt dependencies 0) 1;
             |       ^
          392|       depsBuildTarget             = elemAt (elemAt dependencies 0) 2;

       error: cannot coerce a function to a string

Thanks to PRs like https://github.com/NixOS/nix/pull/9754, these error messages will improve in coming Nix releases:
       … while evaluating attribute 'nativeBuildInputs' of derivation 'my-derivation'
         at /Users/wiggles/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:391:7:
          390|       depsBuildBuild              = elemAt (elemAt dependencies 0) 0;
          391|       nativeBuildInputs           = elemAt (elemAt dependencies 0) 1;
             |       ^
          392|       depsBuildTarget             = elemAt (elemAt dependencies 0) 2;

       … while evaluating one element of the list

       error: cannot coerce a function to a string: «lambda @ /Users/wiggles/nixpkgs/xxx-derivation.nix:7:28»

(This shows the exact location of the failing value!)
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[x] 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/)
24.05 Release Notes (or backporting 23.05 and 23.11 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.

Add a :+1: reaction to pull requests you find important.

Hey thanks for this PR !
The fix to pict-rs can be merged immediately, but the patching of stdenv needs to go through a lot more review and discussion.
Would you mind splitting this PR in two ?
Im happy to merge the pictrs part now and will try to reach out to more people for the stdenv fix.

Sure, split the pict-rs changes off here: #293608

@infinisil ignoring the pict-rs changr, there is a proposition of a fix to stdenv, what do you think ?

How is the error for Nix 2.3 users? That's the minimum version that Nixpkgs supports.

While we should worry about older Nix versions too, I don't think this is worth it even for newer Nix versions. See also https://github.com/NixOS/nixpkgs/issues/24462 and the original motivation from https://unix.stackexchange.com/questions/350997/in-a-new-nixos-derivation-based-on-a-binary-distribution-why-am-i-getting-an-e?stw=2
Even if newer Nix versions show the location better, the underlying error message seems worse:
cannot coerce a X to a string

Compared to the old
Dependency is not of a valid type: element 23 of nativeBuildInputs for infra-shell

Especially for newcomers it's not easy to figure out why something even gets coerced to a string in the first place (and what "coerce" even means!).
While the custom error message isn't perfect either, we could easily improve it, e.g. by saying what the actual type is and what it should be, additionally printing a bit of the value (e.g. like the module system, though I also wrote this nice streaming toPretty at some point which would work better]).

@infinisil I'm not sure I understand -- even with Nix 2.3, the error message clearly states the derivation name (my-derivation) and the attribute that fails to coerce (buildInputs). The only thing that's really removed here is element 23, which I'm not convinced is very useful -- derivations are frequently composed through helpers and overrides such that it's not obvious which index corresponds to which element in the source.

Especially for newcomers it's not easy to figure out why something even gets coerced to a string in the first place (and what "coerce" even means!).

I think newcomers will be well-served by the improved coercion error messages in recent Nix versions (see https://github.com/NixOS/nix/pull/9754) as well as the improved source location information available in recent Nix versions. (And newcomers will tend to run recent Nix versions in general.)
Moreover, having the custom-constructed error message in nixpkgs actually prevents Nix from providing a better error message, which is how I discovered this issue in the first place — I saw the bad error message, attempted to run it with a newer Nix to debug it, and wasn't able to get any additional information from the improvements I've made to error messages. This logic has a cost, and it's not just a maintenance cost!

I must say that when you have lists of a hundred packages with some optionals inbetween I usually reside to binary search because not having any information about the wrong packages makes it almost impossible to know what to fix even as an advanced nix user. Even just having the name of the package in the error message would eliminate that and save a bunch of time for many people.
Now that I know why this is broken, I don't want to keep it like this any longer and do something about it.

I think it's important to distinguish between developer-facing errors and user-facing errors:

User-facing errors are caused by the user using some function in the wrong way. These should be understandable and fixable by just reading a custom error message given with throw and adjusting the function call. Think of these like compiler errors. These messages can be tested as well to ensure that we can guarantee good error messages for certain cases. Users shouldn't have to enable and read stack traces to understand what went wrong, that gets tricky really quickly, especially because error traces can change considerably over time. It's a bit unfortunate how newer Nix versions print part of the stack trace by default, adding a lot of noise but rarely being useful.

Developer-facing errors are for mistakes not caused by the user, internal to the function. These can be very hard to fix, so you need a lot of context where --show-trace can help a lot. They need to be fixed by changing the function and it doesn't make sense to test for these.

Check out how lib.fileset does it for example: All user errors are throws with pretty good context to fix the problem.
While it's nice that stack traces now show the location of unexpected values, it would be even better if this would be exposed with e.g. builtins.unsafeGetPos, such that it can be used for all user-facing error messages, instead of functions having to give up on user-facing errors just for that feature.


Problems with default value

The component does not set a default value if the data came after rendering. For quick reference just replace getInitialState method in basic example with this one:
  getInitialState: function() {
	  var self = this;

	  setTimeout(function() {
		  self.setState({states: states});
	  }, 400);
    return {
      // the data the user can select from
      states: [],
      // the current selection
      selectedStateId: 'AL'
    };
  }

No longer applicable as Autocomplete no longer holds value in state.


mqtt service test is producing a ProtocolException

When running the tests on the master branch, they started failing for me with the MQTT
  1) Error:
MqttPubTest#test_push:
MQTT::ProtocolException: MQTT::ProtocolException
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/mqtt-0.0.8/lib/mqtt/packet.rb:238:in `read_byte'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/mqtt-0.0.8/lib/mqtt/packet.rb:21:in `read'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/mqtt-0.0.8/lib/mqtt/client.rb:301:in `block in receive_connack'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/2.1.0/timeout.rb:90:in `block in timeout'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/2.1.0/timeout.rb:33:in `block in catch'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/2.1.0/timeout.rb:33:in `catch'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/2.1.0/timeout.rb:33:in `catch'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/2.1.0/timeout.rb:105:in `timeout'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/mqtt-0.0.8/lib/mqtt/client.rb:300:in `receive_connack'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/mqtt-0.0.8/lib/mqtt/client.rb:146:in `connect'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/mqtt-0.0.8/lib/mqtt/client.rb:50:in `connect'
    /Users/jwhitcraft/Projects/github-services/lib/services/mqtt.rb:58:in `receive_push'
    /Users/jwhitcraft/Projects/github-services/lib/service.rb:693:in `block in receive'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/2.1.0/timeout.rb:90:in `block in timeout'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/2.1.0/timeout.rb:100:in `call'
    /Users/jwhitcraft/.rbenv/versions/2.1.7/lib/ruby/2.1.0/timeout.rb:100:in `timeout'
    /Users/jwhitcraft/Projects/github-services/lib/service.rb:692:in `receive'
    /Users/jwhitcraft/Projects/github-services/test/mqtt_test.rb:10:in `test_push'

This seems to be happeing becuase q.m2m.io is throwing 503 errors.

Thank you for pointing this out, @jwhitcraft! We've begun looking into the failing test.


issue 1230

This is the initial commit but it is still a WIP. However, it will be nice if people can take a look to make sure they agree with these changes. At this point you can upload, link and process (unsuccessfully) already demultiplexed samples without primers. Next steps are: (1) successfully process these kind of samples, and (2) allow to remove primers.

@antgonza few comments. I think the approach taken here is correct, besides the couple of comments that I made here.

Just a few comments on the code. Aside from that, It would be good if you can add a mention in the ChangeLog about this new and exciting and new feature.
When selecting what type of files are being linked to the raw data, we probably want to add a button or something to select all the available files as forward seqs, otherwise in a study with a couple hundred samples this becomes a very tedious task.
BTW, If you use the example files from the mailing list, the pipeline will fail with the following message:

Solution, rename sample3.fastq.gz and sample4.fastq.gz to filename3.fastq.gz and filename4.fastq.gz

Ping on this comment:

When selecting what type of files are being linked to the raw data, we probably want to add a button or something to select all the available files as forward seqs, otherwise in a study with a couple hundred samples this becomes a very tedious task.

:+1:

Looks really good thanks for working on this @antgonza, :+1: once tests pass!

Code looks great! Thanks @antgonza
Just one comment about documentation, after that :+1: (I keep forgetting that we have documentation in the repo now and we have to modify it as new functionality is added!)


TOOL-134 Added stack to bitrise-init.

The following PRs should be checked:
https://github.com/bitrise-io/bitrise-init/pull/164 (This)
https://github.com/bitrise-io/bitrise-add-new-project/pull/30
https://github.com/bitrise-io/bitrise/pull/673

@trapacska sorry, please wait until code is updated based on my comment. Will notify you again.

@trapacska you may merge this now if no objections

Hi @richard-bogdan-bitrise,
I'm closing the PR as part of cleaning up old PRs. Please reopen if it is still valid. Thanks!


Reduce entries on topics pages

Fixes #43

Reminder to self to adjust alignment*

Sorry, totally forgot to make those changes. Just did them though and should be good to merge now! @BrianMMcClain @bryanfriedman


Create a contribution guide

The contribution guide is missing. It should contain something like:

How to setup a development environment (consider using minikube or lokomotive cluster)
How to compile (includes the local client and also how to build and push the container image)
How to run the tests
How to add a new gadget?

:+1: would be good to lean on a consistent base for contribution guidelines. /cc @joaquimrocha

Solved by https://github.com/kinvolk/inspektor-gadget/pull/111