Regex route match not working

Summary
Given the following kong.yml declarative configuration:
_format_version: "1.1"

services:
  - name: sample_api
    url: http://sample_api:80/items
    routes:
      - name: sample_api-getone
        paths: ['/items/\d+']
        strip_path: true
        methods: ['GET']
      - name: sample_api-post
        paths: ['/items']
        methods: ['POST']

When requesting https://localhost/items/1234, it returns 404 no Route matched with those values - but should route through the first route. The upstream API has an endpoint /items/<itemId>.
Defining a path without the regex would work, but I need two routes, one with regex and one without regex, to apply different plugin configurations. On that case, the route without regex is always used.
Additional Details & Logs

Kong version: 2.0.3 (Docker)

I am not sure about yaml, but should that be:
_format_version: "1.1"

services:
  - name: sample_api
    url: http://sample_api:80/items
    routes:
      - name: sample_api-getone
        paths:
          - /items/\d+
        strip_path: true
        methods:
          - GET
      - name: sample_api-post
        paths:
          - /items
        methods:
          - POST

Arrays can be specified both ways, as on my code and as on your code.

Updated removing strip_path: true from the failing route, which I think should not be there, although the problem remains.

I found what the issue was. The PCRE regex \d+ only matches numbers, while I was using alphanumeric strings. Changing it to .+ make it work, so the YML should be as this:
_format_version: "1.1"

services:
  - name: sample_api
    url: http://sample_api:80/items
    routes:
      - name: sample_api-getone
        paths: ['/items/.+']
        strip_path: true
        methods: ['GET']
      - name: sample_api-post
        paths: ['/items']
        methods: ['POST']

Now the problem is another one: the upstream request is not set to the requested path, although strip_path is true. But that is another different issue.


fix[getNixPackagesImpl]: Count with wc -l instead, also fixes leak.

From: #195.
Also, the leak reports before the patch:
==45975== Memcheck, a memory error detector
==45975== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al.
==45975== Using Valgrind-3.20.0 and LibVEX; rerun with -h for copyright info
==45975== Command: ./result/bin/fastfetch
==45975==
==45975==
==45975== HEAP SUMMARY:
==45975==     in use at exit: 45,525 bytes in 60 blocks
==45975==   total heap usage: 423 allocs, 363 frees, 356,371 bytes allocated
==45975==
==45975== 255 bytes in 1 blocks are definitely lost in loss record 26 of 37
==45975==    at 0x484679B: malloc (in /nix/store/rnymfl0h7w4wd9wvdq4y64xj43pk5cbg-valgrind-3.20.0/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==45975==    by 0x41AA40: ffStrbufInitA (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x425805: getNixPackages (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x4259D6: getPackageCounts (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x425483: ffDetectPackagesImpl (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x40E5A3: ffDetectPackages (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x417CE3: ffPrintPackages (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x403FB3: main (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==
==45975== 255 bytes in 1 blocks are definitely lost in loss record 27 of 37
==45975==    at 0x484679B: malloc (in /nix/store/rnymfl0h7w4wd9wvdq4y64xj43pk5cbg-valgrind-3.20.0/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==45975==    by 0x41AA40: ffStrbufInitA (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x425805: getNixPackages (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x4259E9: getPackageCounts (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x425483: ffDetectPackagesImpl (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x40E5A3: ffDetectPackages (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x417CE3: ffPrintPackages (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x403FB3: main (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==
==45975== 255 bytes in 1 blocks are definitely lost in loss record 28 of 37
==45975==    at 0x484679B: malloc (in /nix/store/rnymfl0h7w4wd9wvdq4y64xj43pk5cbg-valgrind-3.20.0/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==45975==    by 0x41AA40: ffStrbufInitA (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x425805: getNixPackages (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x4256F9: ffDetectPackagesImpl (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x40E5A3: ffDetectPackages (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x417CE3: ffPrintPackages (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==    by 0x403FB3: main (in /nix/store/phcyx0ifcmw1nccwaavawm1dxlhyxhfb-fastfetch-1.8.2/bin/fastfetch)
==45975==
==45975== LEAK SUMMARY:
==45975==    definitely lost: 765 bytes in 3 blocks
==45975==    indirectly lost: 0 bytes in 0 blocks
==45975==      possibly lost: 0 bytes in 0 blocks
==45975==    still reachable: 44,760 bytes in 57 blocks
==45975==         suppressed: 0 bytes in 0 blocks
==45975== Reachable blocks (those to which a pointer was found) are not shown.
==45975== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==45975==
==45975== For lists of detected and suppressed errors, rerun with: -s
==45975== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0)

Doesn't piping to wc -l creates one extra process?

Doesn't piping to wc -l create one extra process?

We already create a lot of processes when counting nix packages, i doubt that one extra process matters.

But i am still not sure what the difference between wc -l and manually counting the lines is. Theoretically that should give the same result.


Support for racial hearthstones

The Draenei and Lightforged Draenei get a racial hearthstone at the end of the Draenei heritage questline.

Merged your changes, which are now in release v19. Thanks!


Move Everything.agda to src.

Otherwise it does not seem to typecheck. I get the following error message:
The name of the top level module does not match the file name. The
module Everything should be defined in one of the following files:

but I think it means that Agda has detected that the file Everything.agda is almost but not quite part of a library.
It does typecheck if I move it into src but also if I move it to a completely different location.

Everything is not supposed to be in src. stdlib's README also won't load. but indeed there should be a better solution.

What is the reason for the statement "Everything is not supposed to be in src"?

because it is not useful as it just imports all files in the library. it's there just for typechecking the whole library by ci.

Indeed, stdlib does not check in Everything.agda, it is auto-generated by GenerateEverything.hs (which caught me out when I recently did the bulk renaming from Category.* to Effect.* (issue agda/agda-stdlib#1636). The status of README.agda is indeed also anomalous, but perhaps worth considering some sort of auto-generation for your Everything.agda... even though such an indirection then potentially disguises that dependency when global changes are made.

So it seems that we shouldn't check it in. I'll do that.

Closed by 8643687

Then again, type-checking Everything.agda is an easy way to check if the library works with your current Agda installation.


Upload windows image, add VMSS, availability sets & linux VM deployment

@knithinc,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Doc: change image size

Some dummy description

Please check if the PR fulfills these requirements :clipboard:

[ ] The commit message follows our guidelines : link
[ ] Tests for the changes have been added (for bug fixes/features)
[ ] Docs have been added / updated (for bug fixes / features)
[ ] A new branch is created for the change(s) and the changes are not committed on main or master branch
[ ] No credentials or secrets are committed

What kind of change does this PR introduce? (Bug fix, feature, docs update, refactor, chore, test, docs) :information_desk_person: :scroll:
This is a test PR

Fixes :wrench: # (issue)

Checklist :page_with_curl:

[ ] I have made corresponding changes to the documentation
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] pmd-checkstyle issues are resolved locally
[ ] I have added reviewers for the checking the proposed changes

Please delete the content that are not relevant.

Build finished.

Build finished.


697 unit tests some tests are stuck

@Yuval-Ariel - Please update HISTORY.md (do we need to add the our licencse text at the top here?)


Fan speed and Auto mode

When you change the speed while previous mode was auto, Auto button won't immediately turn off. It will be updated if you reopen/close app again, I think if would make sense to notify home kit to set AutoMode to false when (fan speed has changed && current AutoMode is true)

I’ve noticed this also, it’d be nice if auto value was kept current.


Added a step to set up fonts

Added a new step to redefine the default fonts path to prevent any compile warnings and also prevent serving fonts from a CDN.

I can add instructions on how to reference them directly from node_modules.
The fonts will end up copied over directly to the /dist folder though and
create a lot of clutter and that's why I am suggesting this method.
I could include both and explain pros and cons if you like.
Thanks,
Stan.
On Fri, Aug 31, 2018, 5:27 PM Eliad Moosavi<EMAIL_ADDRESS>wrote:

@theiliad commented on this pull request.
In README.md
https://github.com/IBM/carbon-components-angular/pull/27#discussion_r214479028
:

@import "~carbon-components/scss/globals/scss/styles.scss";

-And set up our translations in `src/app/app.module.ts`:
+And copy the fonts files from `node_modules/carbon-components/src/globals/fonts` into our app's `assets/fonts` folder.

There should be a better way thank copying directly from node_modules?

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<https://github.com/IBM/carbon-components-angular/pull/27#pullrequestreview-151553357>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABMgXQWJDPaj9o00XyauQO1DnPZhIs03ks5uWaosgaJpZM4WVcXr>
.

@stanislavgeorgiev fair point. It'd be good to find out whether carbon-components has an alias for fonts, or whether we can add that

Some background - The default $font-path is totally fine (regardless of the warning in discussion here) for evaluation/demo purposes. Carbon’s biggest consumers have their own CDN and adjust $font-path accordingly, and we recommend all consumer applications to do the same. Hope it helps!

Our product doesn't use CDN as it is hosted by the client and not on a
cloud thus we need to embed all required resources with the product and
assume that there is no access to the Internet.
I now see the other use cases and I will update the instructions to include
a hosted option with CDN (default) and an offline mode with copying files.
I think this maybe a candidate for a wiki page instead of dumping it all in
the readme. What do you think?
Thanks,
Stan.
On Sep 2, 2018 6:10 PM, "Akira Sudoh"<EMAIL_ADDRESS>wrote:
Some background - The default $font-path is totally fine (regardless of the
warning in discussion here) for evaluation/demo purposes. Carbon’s biggest
consumers have their own CDN and adjust $font-path accordingly, and we
recommend all consumer applications to do the same. Hope it helps!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/IBM/carbon-components-angular/pull/27#issuecomment-417963292,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABMgXSwQBBJ14xPBw_ou8ZCW21GjXpqAks5uXFdAgaJpZM4WVcXr
.

What about ~carbon-components/src/globals/fonts?

@stanislavgeorgiev While CDN usage is recommended for on-prem apps, too, hosting fonts (and other contents) on a non-CDN server is fine. BTW another consideration defining $font-path is cache busting (e.g. ensuring that the font path contains the associated Carbon version).

IIRC The concern here is for apps that are actually fire-walled from the internet completely ... for that case they fonts would definitely need to be available locally. I'm not going to say it's totally an edge case, but we definitely want to encourage people to use the CDN when they can.

@cal-smith I like your "offline usage" and I moved the instructions into a separate Note.


S3 403s during ingest?

Do these reproduce? Is the media missing?

WARN [2016-01-29 15:21:37]: 1 (0.0%) PBCoreIngester::ValidationError: Method validation errors: HEAD https://s3.amazonaws.com/openvault.wgbh.org/catalog/asset_proxies/V_5DAAFC32ACEA4309B587D8F44678C090.webm (from #proxy_srcs) not 200: 403 Forbidden

WARN [2016-01-29 15:21:37]: 1 (0.0%) PBCoreIngester::ValidationError: Method validation errors: HEAD https://s3.amazonaws.com/openvault.wgbh.org/catalog/asset_proxies/V_96E3AD934B874D208D703C4C164E1B96.webm (from #proxy_srcs) not 200: 403 Forbidden

@mccalluc
I had the file extensions incorrectly named .mp4.webm.
I've removed the incorrectly named versions and replaced them both with the correct ones.  Sorry about that, good catch.
From the log:
2016-02-01 07:22:40  182837104 catalog/asset_proxies/V_96E3AD934B874D208D703C4C164E1B96.webm
2016-02-01 07:22:04  100305666 catalog/asset_proxies/V_5DAAFC32ACEA4309B587D8F44678C090.webm


Support ignoring IPs

Description
Ignore list of IP's given in the cidr, the following way:
!{cidr} = ignore this cidr (!<IP_ADDRESS>/16)
{cidr} = scan this cidr (<IP_ADDRESS>/16)
Contribution Guidelines
Please Read through the Contribution Guidelines.
Fixed Issues
Closes #296
"BEFORE" and "AFTER" output
with the command
kube-hunter --log debug --cidr '<IP_ADDRESS>/24,!<IP_ADDRESS>/32'
BEFORE

DEBUG kube_hunter.modules.discovery.hosts HostDiscoveryHelpers.generate_subnet yielding <IP_ADDRESS>
DEBUG kube_hunter.modules.discovery.hosts HostDiscoveryHelpers.generate_subnet yielding <IP_ADDRESS>
DEBUG kube_hunter.modules.discovery.hosts HostDiscoveryHelpers.generate_subnet yielding <IP_ADDRESS>

AFTER

DEBUG kube_hunter.modules.discovery.hosts HostDiscoveryHelpers.generate_subnet yielding <IP_ADDRESS>
DEBUG kube_hunter.modules.discovery.hosts HostDiscoveryHelpers.generate_subnet DENIED <IP_ADDRESS>
DEBUG kube_hunter.modules.discovery.hosts HostDiscoveryHelpers.generate_subnet yielding <IP_ADDRESS>

Contribution checklist

[X] I have read the Contributing Guidelines.
[X] The commits refer to an active issue in the repository.
[X] I have added automated testing to cover this case.

Notes
Please also notice that for this to work, when you call out kube-hunter --cidr you have to put the input inside ' ', like seen in the output section otherwise the ! will break the kube-hunter command
since it's a saved symbol in ubuntu and other linux distributions.

Codecov Report

Merging #332 into master will increase coverage by 0.31%.
The diff coverage is 96.55%.

@@            Coverage Diff             @@
##           master     #332      +/-   ##
==========================================
+ Coverage   59.59%   59.91%   +0.31%
==========================================
  Files          41       41
  Lines        1943     1956      +13
==========================================
+ Hits         1158     1172      +14
+ Misses        785      784       -1

Impacted Files
Coverage Δ

kube_hunter/conf/parser.py
95.23% <91.66%> (-4.77%)
:arrow_down:

kube_hunter/modules/discovery/hosts.py
76.56% <100.00%> (+2.83%)
:arrow_up:

kube_hunter/core/events/handler.py
90.90% <0.00%> (+1.01%)
:arrow_up:

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 9ddf321...ef23383. Read the comment docs.

@mormamn Please resolve merge conflicts


Feature request: identify ZRC-20s by integer ID

Would it be possible to assign integer IDs to supported ZRC-20 to be able to identify them by ID and not by contract address?
The reason for this request is that Bitcoin memo size is limited and if you need to pass a list of ZRC-20 it becomes hard to do using ZRC-20 addresses. Having a canonical mapping (accessible form contracts) that lets you identify ZRC-20s by integers would be really useful.

like a short alias for the contract address?

like a short alias for the contract address?

Sort of, yes.

It is definitely interesting, it could even be the primary index for the Foreign Coin. The solution would imply adding a new indexing, we should avoid adding complexity to the fungible module codebase before getting an optimal code coverage but I think this makes total sense.


Highlighting (square brackets) the location identifiers

I was unable to highlight the location identifiers in my browser (Chrome).  The hyphen seems to have a space around it and this interferes with the highlighting process. E.g. "g-2323" appears as "g - 2323" and the highlight (the square brackets) appears only on the "g" or "-" or "2323".  I had to remove the hyphen from all the location utterances in order to make this work.

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

ID: 9c20727e-06cc-1942-2cb6-10644788e862
Version Independent ID: 6d558803-bece-7d1b-7ba1-af85fb92fa4d
Content: Tutorial 5: Parent/Child relationships - LUIS Hierarchical entity for contextually learned data - Azure Cognitive Services
Content Source: articles/cognitive-services/LUIS/luis-quickstart-intent-and-hier-entity.md
Service: cognitive-services
GitHub Login: @diberry
Microsoft Alias: diberry

@sphengle
Thanks for the feedback! We are currently investigating and will update you shortly.

@YutongTie-MSFT Please assign this to me.
@sphengle This is an issue of how the UX works. The UX does allow you to mark entities past the hyphen. First select the left-most letter in the word, then, _immediately select the right-most letter in the word (past the hyphen). That should be all you need.

#please-close


SILGen: Avoid useless bitcasts when IUO-to-Optional conversion happens.

In SIL, the distinction between IUO and Optional is now lowered away, so there's no reason to emit any SIL at all when an IUO is converted to Optional formally in the AST. (Eventually this distinction ought to go away at the type system level too…) Memory promotion didn't understand initializations through unchecked_*_casts and would incorrectly flag them as improper captures, causing rdar://problem/26899492.

@slavapestov Mind reviewing this for 3.1?

@swift-ci Please test and merge

LGTM!

@swift-ci Please test Linux

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - c1fa06ea540ae3b240829ae4555aa5276249946a
Test requested by - @jckarter

@swift-ci Please smoke test Linux

Test failures were in lldb and present in master. Shouldn't be affected by this.


Create a new repo for docs that are unique to the docs site

We will need a repo for docs that do not live in other repos - ie. Homepage, community page, spork info, etc.
This repo will consume the other repo as it does with others. This can be used for testing throughout and test the refresh github action.

This is done.


Android customerInfo key changed

When implementing this plugin for Android 10+ using version 2.8.0 and Capacitor 5 the addListener('purchasesUpdate', ...) function returns an object with an odd key for the customerInfo.  For me the current response returns:
{ purchasecustomerInforInfo: {...} purchases: {...} }
whereas the result is documented as:
{ customerInfo: {...} purchases: {...} }
The documented version is correct for iOS and works fine, I've only seen this issue on Android.  For now I've just worked around it by checking the platform and using the relevant key, but it would be good to see this made consistent again in future.

Hey @RyVeata thanks for the report, i'm sorry i didn't answer faster i forgot you, i will fix this.

5.0.5 should fix your issue

I'm tentatively closing this issue, let us know if you're running into issues still!


Is Amalgamation method supported by BMXNet?

Haven't try it yet, but putting original MXNet models into mobile devices(say Android)  using the amalgamation method is a error-prone thing. So is there anything needed to be paid extra attention when porting BMXNet models?

your question is very reasonable, we had our fair share of issues with the amalgamation process.
BMXNet has been running on both iOS and Android, we modified the amalgamation scripts to include our sources and added some fixes, e.g. enabling OpenMP on Android and scripts to support Apples GEMM implementation (Accelerate).
Generally speaking it should work, though we are currently in the process of upgrading to mxnet v1.0.0 and have not tested the amalgamation recently. I would encourage you to try for yourself and report back if you find any issues!


Put imports for package-local modules in right group

Me and @lencioni have both come across examples where we import a
package-local module (through an alias). These used to end up in the
wrong import group, because of how we were matching them against package
dependencies. Here's an example from the Brigade codebase:
const Nprogress = require('nprogress/nprogress');
By stripping out everything after and including the first slash before
matching against package dependencies, they are back in the right group
again.
[Fixes #208]

:+1:

Geepers, Travis sure is taking its time today.

Galushi indeed.


Improvement to the algorithm

#42 Yeah consider developer program guys and users who are a part of some organization!

@Ullaakut What about looking at followers (i.e. if there are some followers with really good reputations/repos, then the person should be considered more trustworthy). Through this, we could slowly build up a graph of reputable people/repos (creating something like a web of trust) and start to factor in their connections. I'd be willing to pitch in to see if this helps!

Another idea might be to look at issues opened/discussions made and the length/people who responded (it is hard for bots to have genuine comments). The ideas I suggested can all (maybe) be combined into a NetworkFactor, using some set of weights. I'm thinking that we can use all the users connected to verified organizations to train the weights (they should be real people). @Ullaakut


Restructure functional tests

Restructure functional tests
WRT:  https://docs.google.com/a/redhat.com/document/d/1uL8EXd22Mo4NMWV6WbMiMksGvPbEDTU_3HWHHx1T67s/edit?usp=sharing
We need to move the tests which are not being used (because the features are not yet implemented ).

Done


feat(perception_rviz_plugin): add 2d dummy bus with height

Description

add 2d dummy stopping bus

Related links
Tests performed
by psim
Notes for reviewers
run psim and add panel from + button

Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.
[ ] The PR has been properly tested.
[ ] The PR has been reviewed by the code owners.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.
[ ] The PR is ready for merge.

After all checkboxes are checked, anyone who has write access can merge the PR.

@HiroIshida
[Q] if I put bus in rviz it's a bit heavy processing point cloud.
is there anyways to make computational cost lighter?

@taikitanaka3
my thought
I think visualization rather than algorithm may cause the problem. Could you check again?
experiment
I tried you new rviz plugin with the setting below:

Considering the possibility that newly implemented algorithm in
https://github.com/autowarefoundation/autoware.universe/pull/527  make the simulation slower, I embeddedd the time measurement function to the dummy perception publisher's timer callback, and measure the difference between processing time of ego-centric (new) and object centric point cloud generation methods. The result below reveals that point cloud generation algorithm does affect much here.
Note that typical processing time of the algorithms should be
object-centric without raytracing < ego-centric << object-centric  with raytracing .
I omitted object-centric with raytracing in this experiment.
newer algorithm, Ego-centric (with raytracing in principle)
[dummy_perception_publisher_node-35] [INFO] [1652690826.930240479] [simulation.dummy_perception_publisher]: callback elapsed time: 32.6487
[dummy_perception_publisher_node-35] [INFO] [1652690827.027392244] [simulation.dummy_perception_publisher]: callback elapsed time: 29.8299
[dummy_perception_publisher_node-35] [INFO] [1652690827.124755941] [simulation.dummy_perception_publisher]: callback elapsed time: 27.1835
[dummy_perception_publisher_node-35] [INFO] [1652690827.223872107] [simulation.dummy_perception_publisher]: callback elapsed time: 26.2822

old algorithm, Object-centric (disabled raytracing)
[dummy_perception_publisher_node-35] [INFO] [1652691405.282255247] [simulation.dummy_perception_publisher]: callback elapsed time: 23.8785
[dummy_perception_publisher_node-35] [INFO] [1652691405.383950450] [simulation.dummy_perception_publisher]: callback elapsed time: 25.5756
[dummy_perception_publisher_node-35] [INFO] [1652691405.482130112] [simulation.dummy_perception_publisher]: callback elapsed time: 23.7911
[dummy_perception_publisher_node-35] [INFO] [1652691405.582512018] [simulation.dummy_perception_publisher]: callback elapsed time: 24.1669

I then though maybe visualization (or entailing communication) take much computational effort a lot, so I compare htop result turning  on and off the rviz. The result below shows significant computational load decline after turning off rviz. I'm not certainly sure, but from the observation so far, visualization rather than algorithm should be improved in some way.

.png)

@taikitanaka3
Let me give bit more time to probe this issue. Now I realized that just comparing processing time between the algorithm is not enough.

(DRAFT) now writing...
when running with object centric mode:
$ ps -aux |grep dummy_perception_publisher_node|head -1| awk '{print $2}' | xargs -i pidstat -p {} 5 100
Linux 5.14.0-1036-oem (stonet4) 	05/18/2022 	_x86_64_	(12 CPU)

05:41:54 AM   UID       PID    %usr %system  %guest   %wait    %CPU   CPU  Command
05:41:59 AM  1000    188562    3.80    0.00    0.00    0.40    3.80     6  dummy_perceptio
05:42:04 AM  1000    188562    4.00    0.00    0.00    0.00    4.00     5  dummy_perceptio
05:42:09 AM  1000    188562    4.00    0.00    0.00    0.20    4.00     3  dummy_perceptio
05:42:14 AM  1000    188562    4.00    0.00    0.00    0.20    4.00     6  dummy_perceptio
05:42:19 AM  1000    188562    3.80    0.00    0.00    0.40    3.80     7  dummy_perceptio
^C
Average:     1000    188562    3.92    0.00    0.00    0.24    3.92     -  dummy_perceptio

when running with ego-centric mode:
$ ps -aux |grep dummy_perception_publisher_node|head -1| awk '{print $2}' | xargs -i pidstat -p {} 5 100
Linux 5.14.0-1036-oem (stonet4) 	05/18/2022 	_x86_64_	(12 CPU)

05:46:31 AM   UID       PID    %usr %system  %guest   %wait    %CPU   CPU  Command
05:46:36 AM  1000    199150   13.60    0.40    0.00    0.80   14.00     5  dummy_perceptio
05:46:41 AM  1000    199150   13.60    1.00    0.00    0.60   14.60     7  dummy_perceptio
05:46:46 AM  1000    199150   13.20    0.80    0.00    0.60   14.00     3  dummy_perceptio
05:46:51 AM  1000    199150   13.20    1.00    0.00    0.80   14.20     4  dummy_perceptio
05:46:56 AM  1000    199150   13.40    1.20    0.00    0.60   14.60     9  dummy_perceptio
^C
Average:     1000    199150   13.40    0.88    0.00    0.68   14.28     -  dummy_perceptio

@taikitanaka3
I made a PR that reduce the aboud 50% computational load.
https://github.com/autowarefoundation/autoware.universe/pull/926

I added icon for bus rviz tool by 8f26b4b


New package: LoggingPolyglot v0.1.0

Registering package: LoggingPolyglot
Repository: https://github.com/psrenergy/LoggingPolyglot.jl
Created by: @guilhermebodin
Version: v0.1.0
Commit: be6cc08aa9c9154d3febe7ffe645652f3654cd02
Reviewed by: @guilhermebodin
Reference: https://github.com/psrenergy/LoggingPolyglot.jl/commit/be6cc08aa9c9154d3febe7ffe645652f3654cd02#commitcomment-127374933

[noblock] This replaces #91367


Add feature to specify output directory

Hi,
In some cases, e.g. collecting from multiple hosts in a centralized way, it can be handy to be able to specify output directory for stores and log files, so the analyst will get all reports in a single place, for example a network share.
Here's how it can be done with a flag parameter and a few changes.

 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.

Thanks for the PR 👍


Requirements list

Just a list of requirements the application will have.
What is the application going to do in clear points.

deze graag aanpassen naar requirements van deze applicatie


setting bigger value than 7000 to rulerWidth property

Hi,
I am trying to increase the rulerWidth, but it is limited to 7000. I've forked the repo and try to increase that limit, but it didn't work.
Is there any way to make it happen?

Did you get this working?


[AutoPR compute/resource-manager] vmss: support for passing a health probe to update

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/7355

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/7759

(message created by the CI based on PR content)


How to get the cursor position?

i want to insert something in the middle of the text and i need to get the cursor position, how to get it?

document.write("Coordinate(X) = " + event.clientX + "Coordinate(Y) = " + event.clientY)
This is the code to write cursor position in javaScript

@chenjiashrimp  can I be assigned this issue

@bsaptyadeep thank you very much

i want to insert something in the middle of the text and i need to get the cursor position, how to get it?

editorState.getSelection().getAnchorOffset()


Add a clean support for piecewise stationary multi-player MAB problems

Cf. #169.
I really need to implement the piece-wise stationary case of multi-player MAB.

The MAB class already contains all what is needed,
I need to include in EvaluatorMultiPlayers all the tweaks and additional visualizations implemented in Evaluators.

Example of simulation using this freshly baked feature:

Non stationary problem: piecewise stationary on 4 intervals:

Regret of M=2 players using different strategies:

Time of computation:

Another problem, for just M=1 (like single-player, just to check the code for M-P works well for S-P problems).

Problem:

Regret:

Another problem, easier and shorter, now for M=2 players and K=3 arms.

Problems:

Regret for different players (probably there is a bug somewhere...)


feat(coil-extension): use channelId in adapted query

Finishes up extension side of coilhq/coil#2939 and closes #149.

@njlie
Just waiting on https://github.com/coilhq/coil/pull/2952/files to merged and deployed


Update sbt-scalafmt to 2.4.5

Updates org.scalameta:sbt-scalafmt from 2.4.3 to 2.4.5.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "sbt-scalafmt" } ]

labels: sbt-plugin-update, early-semver-patch, semver-spec-patch

Codecov Report

Merging #194 (f74d4a3) into main (ba5005d) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #194   +/-   ##
=======================================
  Coverage   70.51%   70.51%
=======================================
  Files           4        4
  Lines          78       78
  Branches        4        4
=======================================
  Hits           55       55
  Misses         23       23

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 ba5005d...f74d4a3. Read the comment docs.


Revert "show only 1 artist per name"

Reverts DroptuneHQ/droptune#84

@bsharpe Had to revert. This makes all individual artist pages results in a 404.


Web Shell Clean up

It's using raylib's shell right now, but It hink it would be good to do a minimal one or something....
https://github.com/emscripten-core/emscripten/blob/main/src/shell_minimal.html

I would recommend outputting .mjs from emscripten and doing something like this:
<title>pntr_app</title>
<style>
  body {
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    user-select: none;
  }
  canvas {
    object-fit:contain;
  }
</style>
<canvas id="screen_canvas" />
<script type="module">
import loadDemo from './whatever.mjs'
await loadDemo({canvas: screen_canvas })
</script>

In my projects, I just ignore the emscripten template/shell setup, and output mjs directly.
This makes very nice self-contained module that you can load multiple instances of (give each it's own canvas.)
I am using some tricks to short-hand here, like every id gets inserted in window so I can do screen_canvas to ref document.getElementById('screen_canvas') and html/head/body tags are optional, and the browser will fill them all in if you leave them out. The style sets up the body as a big flex thing, and fits canvas to whatever size it is flexed to, without stretching. Using type="module" triggers top-level await (which isn't really needed here, because there is nothing after loadDemo) but more importantly, lets you use import to pull in the esm that emscripten generated.
The web target will update the canvas-size itself, and even set the window-title, so whatever you add to title doesn't matter (but I like to set a default title, for while it's loading) and canvas needs no sizing.
user-select: none; is optional, but in some demos I am using content in the page, but click-to-activate, so that keeps it from selecting text on the page, for example here. It can safely be left out for pntr_app.
I think we should put the webroot in docs/ and update the settings for Pages, so we can have a nice demo URL.

If we have multiple demos, we can also use hash-routing, like I setup here:

https://notnullgames.github.io/null0-sdl/#sound
https://raylib.surge.sh/#games/pong

I also did a thing on a 9null0 demo](https://null0-kiss.surge.sh/) where I add a little speaker icon to mean "sound cannot play yet" but if you click on it it will change. I set the opacity kinda high, to keep it subtle, and would check if audio can play before trying to play. I think it could actually just remove the icon completely, once it's clicked, and it would look great.


Use Homebridge and/or Apple HomeKit devices

You know what would be awesome ?
If we could use all our Homekit accesories (native or via Homebridge) with alexa!
That way we can use all the available homebridge plugins (which are many many many !) so we can comfortably add devices without knowing all the specific udp packets or API calls, relay them to ha-bridge and control them via Alexa!

Have a look at issue #159 and see if this has any information you may need.

Nope already read that.
What i mean is the other way around... because Ha-bridge requires you to manually find the udp and/or tcp commands in contrast to homebridge where we use plugins that detect that stuff automatically...

Would need to take a look at those. I have some other plugins that would be ahead of this for development.

well that would be great! Is there a way others can write plugins for Ha-bridge ? then maybe I could try to port those homebridge plugins to ha-bridge... (homebridge is written in nodejs but hmaybe it has a Plugin API of some sorts.. )

I have started refactoring the connectors and they are now in the package com.bwssystems.HABridge.plugins

How do we find and implement and the plugins that you guys are mentioning?

The classes that are in that package are the examples for implementing other connectors

Cool I'll look into that when i find the time! Thanks for this awesome project @bwssytems !
@Matt8119: do you mean "where can i find homebrigde plugins?"  like these?) Or do you mean "where can I find Plugins for ha-bridge? -> I guess they are none except the ones included already in the project.

That's exactly what I was talking about. I misunderstood and thought these were already inside the jar, located inside its own folder.. that answered my question. Thanks!

Is your question answered?

No .. the highjacked question was answered but not my original question:) anyway looking forward to 4.0

+1 for being able to leverage homebridge plugins

So, won't be able to implement plugins from homebridge since it is written in javascript and we are pure Java, also that is a specific interface set for homebridge. I'm looking into being able to call the homebridge (it may allow it ti call apple homekit, but may not either) and deal with it that way. It is very intensive reverse engineer the client side (Homebridge and it's libraries are the server side) as all of the info that was written had to be taken down due to an Apple lawsuit. The code is all that is left to decipher.

Apple have now opened HomeKit protocol specification to all developers for non-commercial use:
https://www.appleworld.today/blog/2017/6/7/apple-opens-homekit-protocol-specification-to-all-developers
"HomeKit protocol spec is now open to all devs! Can build a smart device using Arduino and control it via HomeKit without getting MFi license."
https://developer.apple.com/homekit/specification/
That is, this is the Apple official HomeKit protocol specifications, and Apple want third-parties to use it.

Great! Now I can figure out my issues with session security handshake!

HomeKit for iOS 11 will have a few new features too, as summerized here:
https://www.theverge.com/2017/6/8/15761800/apple-homekit-updates-ios-11-easier-build-requirements-wwdc-2017
"On top of these updates to make building HomeKit devices easier, Apple is also expanding what HomeKit can do in ways that consumers will notice. It's adding two new categories of supported products, sprinklers and faucets, and it's adding a bunch of new ways to trigger actions at home.
One of the simpler updates, but a favorite of mine, is an enhancement to the sunrise and sunset triggers. Those can now be offset by some amount of time, so you could, for instance, have the lamps in your home turn on shortly before the sun goes down at night.
Apple is adding temperature triggers, too, so that events can be kicked off when the temperature goes above or below a certain point. And it's getting better at tracking when people are in the house. It'll now track specific people, instead of individual devices, and use that to better tell you when someone leaves or arrives home. In iOS 11, that'll allow HomeKit users to set things to happen when the last person leaves the house or when someone's arriving home to an empty house.
There will also be a way to temporarily turn on certain devices. Apple gave the example of opening a door at night and having outside lights turn on for just a few minutes, instead of turning on and staying on as they’d have to currently."

Would be so wonderful if this would work with Apple Homekit.  This would allow me to have everything in one place.

This is also mentioned in #822

With the implementation of Mozilla IOT, Which has homebridge connectivity, I will suggest that is the path to implement this.
See https://iot.mozilla.org/


NPE error when using a protocollib packet listener for MAP_CHUNK

ViaVersion 1.2.0
Spigot 1.8.9
Logging in from a client that is 1.9 or higher will not work. Logs show the error
[11:43:19 WARN]: [ProtocolLib] [ChannelInjector] Unable to send packet net.minecraft.server.v1_8_R3.PacketPlayOutMapChunk@394dae47 to MedicOP
java.lang.NullPointerException: player cannot be null!
        at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:229) ~[craftbukkit.jar:git-Spigot-5073b0f-07c3001]
        at com.comphenix.protocol.utility.MinecraftFields.getPlayerConnection(MinecraftFields.java:50) ~[ProtocolLib.jar:4.3.0]
        at com.comphenix.protocol.injector.netty.ChannelInjector.getPlayerConnection(ChannelInjector.java:727) ~[ProtocolLib.jar:4.3.0]
        at com.comphenix.protocol.injector.netty.ChannelInjector.invokeSendPacket(ChannelInjector.java:679) [ProtocolLib.jar:4.3.0]
        at com.comphenix.protocol.injector.netty.ChannelInjector.access$600(ChannelInjector.java:77) [ProtocolLib.jar:4.3.0]
        at com.comphenix.protocol.injector.netty.ChannelInjector$6.run(ChannelInjector.java:504) [ProtocolLib.jar:4.3.0]
        at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71) [craftbukkit.jar:git-Spigot-5073b0f-07c3001]
        at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [craftbukkit.jar:git-Spigot-5073b0f-07c3001]
        at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:723) [craftbukkit.jar:git-Spigot-5073b0f-07c3001]
        at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [craftbukkit.jar:git-Spigot-5073b0f-07c3001]
        at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [craftbukkit.jar:git-Spigot-5073b0f-07c3001]
        at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [craftbukkit.jar:git-Spigot-5073b0f-07c3001]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_144]

To reproduce the problem, just make a plugin with a ProtocolLib packet listener for the MAP_CHUNK packet.
ProtocolManager protocolManager = ProtocolLibrary.getProtocolManager();
        protocolManager.addPacketListener(new PacketAdapter(this, ListenerPriority.NORMAL, PacketType.Play.Server.MAP_CHUNK)

Use async listeners for bulk chunk packets. See https://github.com/MylesIsCool/BKCommonLib for an example.

The single chunk packets don't need sync listener?

The only advice I can give is maybe to look at this:
https://www.spigotmc.org/threads/content-management-interface-mysql-sqlite-support-paid.48111/page-28#post-1400012
Could you be possibly doing something simialr?

I have @Override annotation so.. I don't see how that would fix anything anyway since the Java compiler would add it anyway

In any case making the listeners async fixed the issue

Faced the same problem, prompt the decision, tried everything, but nothing works (

@IBROI make the listener async and it works

http://prntscr.com/lyz9o6
I did it, but it does not solve my problems

protocolManager.addPacketListener(new PacketAdapter(this, ListenerPriority.NORMAL, PacketType.Play.Server.MAP_CHUNK) {

    private final ListeningWhitelist whitelist = ListeningWhitelist.newBuilder().types(PacketType.Play.Server.MAP_CHUNK).options(Arrays.asList(ListenerOptions.ASYNC)).build();

    @Override
    public void onPacketSending(PacketEvent event) {
        // TODO
    }

    @Override
    public ListeningWhitelist getSendingWhitelist() {
        return whitelist;
    }

});```

You're doing syncStart() which starts it on the main thread.. You have to use start()

thank you very much


fix(http-add-on): Fix resources variables for the http-add-on deploym…

Fixes the deployment templates to actually use the resources values defined in the values.yaml file. Currently they are ignored and no resources requests or limits are set for the http-add-on.
Checklist

[x] I have verified that my change is according to the deprecations & breaking changes policy
[x] Commits are signed with Developer Certificate of Origin (DCO - learn more)
[x] README is updated with new configuration values (if applicable)

@JorTurFer Thanks for the quick review and merge! Do you know when I can expect this change to be live in the helm repo?

I reckon that we could do a helm release now, as this value is useful for user adoption. WDYT @tomkerkhove?

@JorTurFer @tomkerkhove: Hey, sorry to bother you about this, but I'd really like to get a release for this fix as we're in the process of adding requests/limits to everything in our cluster and keda-http-add-on is one of the last missing piece and using upstream instead of vendoring in the chart is always easier to maintain :)


[RFC] Thread spawn hook (inheriting thread locals)

Rendered

cc @epage - You said you wanted this for your new test framework. :)

Implementation: https://github.com/rust-lang/rust/pull/125405

Could this be made more controllable through thread::Builder? We could make it Clone, modify a global default and new() would then clone from the default, giving users the option to modify it further (such as modifying the set of hooks) before spawning additional threads.

Could this be made more controllable through thread::Builder? We could make it Clone, modify a global default instance and new() would then clone from the default, giving users the option to modify it further (such as modifying the set of hooks) before spawning additional threads.

That might make sense for the stack size, but not for the thread name. And those are (at least today) the only two settings that a Builder has.

The default thread name would be empty, as it is today.
And people have asked for more features in builders such as affinity or thread priorities (or hooks that can take care of those for specific threads):  https://github.com/rust-lang/libs-team/issues/195

I don't think it makes sense to allow 'modifying' the set of hooks. If you want to change/remove any hook, you need a way to identify them.

The current proposal provides add. With the builder we could at least have clear to opt-out for some subset of threads.
Since the closures have to be 'static anywau we could just do it based on typeID? The types could be made nameable via existential types.

The current proposal provides add. With the builder we could at least have clear to opt-out for some subset of threads. Since the closures have to be 'static anyway we could just do it based on typeID? The types could be made nameable via existential types.

Why would you want to fully clear the hooks? Without knowing which hooks are registered, you can't know which things you're opting out of, so you basically can't know what clear even means. E.g. would you expect clearing these hooks to break a #[test] with threads?
I strongly believe this should just work like atexit() (global, only registering, no unregistering).
(Even if we were to allow some way to skip the hooks for a specific builder/thread, it doesn't make sense to me to have a global "clear" function to clear all the registered hooks (from the 'global builder' as you propose), because you can't really know which other hooks (of other crates) you might be removing.)

Since the closures have to be 'static anyway we could just do it based on typeID?

TypeId is not enough. Two hooks might have the same type but a different value (and different behaviour), e.g. with different captures. (Also if you register already boxed Box<dyn Fn> as hooks, they will all just have the (same) TypeId of that box type.)

Why would you want to fully clear the hooks? Without knowing which hooks are registered, you can't know which things you're opting out of, so you basically can't know what clear even means.

The RFC already states that threads can be in an unhooked state through pthread spawn. And I assume some weird linkage things (dlopening statically linked plugins?) you could end up with a lot more threads not executing hooks?
So unlike atexit it should already be treated as semi-optional behavior.
Additionally I'm somewhat concerned about a tool intended for automatic state inheritance being a global. In the Enterprise Java world such kind of implicit behavior/magic automatisms occasionally get abused to do terribly bloated things which means it's great when that bloat can be limited to a smaller scope or at least be opted out of.
For similar increasingly complex inheritable process properties problems linux systems are trying to occasionally shed this kind of state  (e.g. sudo vs. systemd's run0, or process spawn servers instead of fork)
In the context of a test framework I can imagine tests running in sets and then clearing global state (or at least enumerating it to print information what didn't get cleaned up) to decouple tests from each other.

E.g. would you expect clearing these hooks to break a #[test] with threads?

"break" in the sense of not doing output capture, as it already is today? Yeah, sure, if the tests need a clean environment for whatever reason that might be a side-effect.

as it already is today?

Today, inheriting the output capturing is done unconditionally when std spawns a thread. There is no way to disable it or bypass it for specific threads (other than just using pthread or something directly). What I'm proposing here is a drop-in replacement for that exact feature, but more flexible so it can be used for other things than just output capturing. It will work in the exact same situations.
I'm not aware of anyone doing anything specifically to avoid inheriting libtest's output capturing (such as using pthread_create directly for that purpose).

Additionally I'm somewhat concerned about a tool intended for automatic state inheritance being a global.

The destructors for e.g. thread_local!{} are also registered globally (depending on the platform). atexit() is global. All these things start with a global building block.
I agree it'd be nice to have some sort of with_thread_local_context(|| { ... }) to create a scope in which all threads spawned will have a certain context, but the building block you need to make that feature is what is proposed in this RFC.

I do think we're likely to want deregistration as well, but I think we'd want to do that via a scoped function rather than naming. I don't think it has to be in the initial version in any case.

Are there use cases other than testing frameworks in mind? Do they have needs that differ from the testing framework case?

I think hooks are going to be quite prone to potential deadlocks. That's not a blocker for doing this, just something that'll need to be documented.

Are there use cases other than testing frameworks in mind?

I can think of a few other use cases:

creating a new span in a tracing framework for the new thread that uses the thread local context of the parent thread as the parent span.
creating a new logger in TLS with configuration based on the local logger of the parent thread
inheriting a value for a thread local variable across spawning a new thread could have several use cases
possibly recording metrics on when threads are started, although that would probably be most useful if there was some way to hook into thread destruction as well.
Initialize a thread local random number generator seeded by the parent thread's random number generator. I'm not sure if that is advantageous over current approaches to thread local RNGs, but it would be possible with this.

possibly recording metrics on when threads are started, although that would probably be most useful if there was some way to hook into thread destruction as well.

TLS drop implementations could likely be used for that.

I updated the RFC:

The effect is now thread-local instead of global. Adding a hook only affects future child threads of the current thread.
Removed the use of io::Result.
Added an opt-out method to the thread builder.

I think hooks are going to be quite prone to potential deadlocks. That's not a blocker for doing this, just something that'll need to be documented.

It'd be quite unusual to do anything interesting with locks in a hook. They are mainly used with thread locals (e.g. a Cell) rather than globals (e.g. a Mutex).

Are there use cases other than testing frameworks in mind? Do they have needs that differ from the testing framework case?

Just to advocate for one other use case, I think a proposal like https://github.com/rust-lang/libs-team/issues/195 could be implemented in terms of a feature like this (which would be great!), but I am not sure it's possible in its current form?
Since the hook takes a &Thread, it doesn't seem like it would be possible to influence the creation of the thread using APIs like pthread_attr_setaffinity_np, pthread_attr_setschedparam, etc. — unless there were some way to influence the attributes themselves by extension APIs on std::thread::Thread.
For this reason, I'd argue in favor of something like the aforementioned ThreadSpawnHookHandle, even if it was just a thin wrapper around Thread for now, to be more extensible in the future for influencing OS-specific thread spawning behavior:
struct ThreadSpawnHookHandle {
	thread: Thread, // or &Thread ?
	// possible future extension, or a sys:: abstracted version of this:
	#[cfg(unix)]
	attrs: libc::pthread_attr_t,
}

Then it could be used with something like this:
std::thread::add_spawn_hook(|handle| {
	// Maybe something like JoinHandleExt:
	let attrs = handle.pthread_attr_t_mut();
	let my_custom_sched = todo!();
	unsafe {
		libc::pthread_attr_setschedparam(attrs, &my_custom_sched);
	}
	|| {}
});

I think having the flexibility to add APIs that affect thread spawning in the future, whether in a standard or OS-specific way, would be worth the trouble of having the (relatively small) inconvenience of this wrapper type, if there are no other reasons &Thread is needed specifically.

@ian-h-chamberlain Yeah, that possibility is mentioned in one of the unresolved questions in the RFC:

Should the hook be able to access/configure more information about the child thread? E.g. set its stack size.

We discussed this in the libs-api meeting; this seems ready for FCP.
@rfcbot merge

Since the hook takes a &Thread, it doesn't seem like it would be possible to influence the creation of the thread using APIs like pthread_attr_setaffinity_np, pthread_attr_setschedparam, etc.

You could use pthread_self, pthread_setschedparam, pthread_setaffinity_np instead. Once they're set they're inherited by the OS anyway so they don't need inheritable hooks. So a one-shot hook in the thread builder would be sufficient for that. At least on platforms that have those, but the same applies to pthread_attr_setaffinity_np, hence the _np.

You could use pthread_self, pthread_setschedparam, pthread_setaffinity_np instead. Once they're set they're inherited by the OS anyway so they don't need inheritable hooks. So a one-shot hook in the thread builder would be sufficient for that. At least on platforms that have those, but the same applies to pthread_attr_setaffinity_np, hence the _np.

Yeah, but one of the motivations for https://github.com/rust-lang/libs-team/issues/195 was to support platforms that don't allow setting these kinds of parameters for the main thread /current thread (i.e. must be set on the attributes used to spawn the thread). My main concern with the proposed API as written is that there won't be any way to extend it to support those use cases in the future, without some invasive changes to how Thread spawning works in std today.

Tracking issue: https://github.com/rust-lang/rust/issues/132951


roll engine to 316b026807c50d65ba1b6724ac954711683f1b01

Closing since the engine is being reverted.

AppVeyor is pretty backed up. Trusting Cirrus Windows.


TimeCreated Output format is changed from 12-hour to 24-hour  and add timezone

Thank you very much for open-sourcing this project. This tool has been incredibly helpful for our team. However, when using TimeCreated from Windows logs, the 12-hour format makes it difficult for us to pinpoint the exact time and corresponding time zone. Therefore, we would like to request an enhancement to address this issue. Thank you!

Sounds good! Thank you!


fix: apply correct reputation dmg on bad msg

We were applying ReputationChangeKind::FailedToConnect to peers on bad messages - this reputation change is by default 3 times worse than the correct change of ReputationChangeKind::BadMessage

Codecov Report

Merging #739 (75211c1) into main (6cf5427) will decrease coverage by 0.03%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #739      +/-   ##
==========================================
- Coverage   72.67%   72.63%   -0.04%
==========================================
  Files         268      268
  Lines       27604    27604
==========================================
- Hits        20061    20050      -11
- Misses       7543     7554      +11

Flag
Coverage Δ

unit-tests
72.63% <0.00%> (-0.04%)
:arrow_down:

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

Impacted Files
Coverage Δ

crates/net/network/src/manager.rs
49.34% <0.00%> (ø)

crates/stages/src/stages/bodies.rs
91.40% <0.00%> (-1.76%)
:arrow_down:

crates/net/network/src/peers/manager.rs
81.70% <0.00%> (-0.20%)
:arrow_down:

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


Kerberos support

Nice lib @s-t-e-a-l-t-h congrats!
Do you have any plan to support krb5? Thanks.

Thank you.
Currently, there is no intention to support Kerberos.
But, I quickly looked into, and there is something like requests-kerberos
package, so in case of simple integration
I will consider to extend it.
po 24. 12. 2018 o 11:51 Bruno Wego<EMAIL_ADDRESS>napísal(a):

Nice lib @s-t-e-a-l-t-h https://github.com/s-t-e-a-l-t-h congrats!
Do you have any plan to support krb5? Thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/s-t-e-a-l-t-h/pyopentsdb/issues/2, or mute the thread
https://github.com/notifications/unsubscribe-auth/AWVkSyKPah7WbVE9udQ_0u7J0YqC6G2mks5u8LGygaJpZM4ZgV8j
.

Thanks @s-t-e-a-l-t-h 👍


[Doc] "pulsar-admin schemas delete" description is confusing

Search before asking

[X] I searched in the issues and found nothing similar.

What issue do you find in Pulsar docs?
Documentation tells me that all schema versions will be deleted. That's indeed how it works now.

Pulsar admin tells me that only the latest schema will be deleted.

https://github.com/apache/pulsar/blob/81af293c842c1fc7f42e13ac4203f287e4b619bb/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdSchemas.java#L77
I'm confused. Is it a mistake, or does "latest schema" doesn't mean "latest schema version"?
It's easy to misunderstand it and accidentally delete all topic schemas.
What is your suggestion?
Make the pulsar-admin flag description more descriptive.
Any reference?
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR!

Hi @congbobo184 as we discussed just now, can you test this? Thank you!

Another issue found in the Schema doc, the items in red are not shown on the sidebar, is it an intended behaviour?

https://github.com/apache/pulsar/pull/19411 will fix the description

Another issue found in the Schema doc, the items in red are not shown on the sidebar, is it an intended behaviour?
it should be a intended behavior, manage schema move to the Admin API

@momo-jun right?

@congbobo184 @Anonymitaet  correct, it's by design. The admin API category is a central reference place so we put Schema-related admin API in there and only left a link in the feature content.


Fix: Change default background color to clear on develop

Fix #14

Fix #14

Not going to be merged. The desired style is the one already implemented.


tests: Use data node session when running a query

Follow up to https://github.com/crate/crate/commit/42fbef6de34df0df62462c9080a8502719be6c89
Session object was not used
Relates to https://github.com/crate/crate/pull/15272#discussion_r1438130014

Something is wrong here, I tried sending some ransom value in addGeneratedValues() and got this tests passed with this PR, with master state (not using session) and also with running select 30 times.
Figuring out why I can store different values and it's not caught by assertions.

Something is wrong here, I tried sending some random value in addGeneratedValues() and got this test passed with this PR, with master state (not using session) and also with running select 30 times.
Figuring out why I can store different values and it's not caught by assertions.

Looks like executing query against 2 data node doesn't guarantee  that we are fetching primary/replica.
I intentionally updated Index.addGeneratedValues to return some static wrong value which is never equal to random function in tests returning values <=100. Locally tests still passed and on CI with 100 Repeat =100 I had 92 failures, so at least 8 times it hit primary twice.
I added ensureGreen, removed where = PK, and did 10 selects in a row  (similar to what we do in test_generated_non_deterministic_value_is_consistent_on_primary_and_replica) on only with such setup I managed to get constant failures with "intentionally wrong Indexer"

/cc @mfussenegger maybe you have some other idea?


Add asciidoctor-latex functionality

It would be great to add the html backend features of asciidoctor-latex to asciidoctor-chrome-extension.  The repo is at https://github.com/asciidoctor/asciidoctor-latex.
For a description of what asciidoctor-latex, does, see http://www.noteshare.io/section/asciidoctor-latex-manual-intro
For an exemplar of the extension's use, see https://vschool.s3.amazonaws.com/manuscripts/337.html
Would be glad to discuss this.

It's a good idea but I think the first step is to cross-compile asciidoctor-latex to Javascript using Opal to create asciidoctor-latex.js ! (similar to what has be done with Asciidoctor.js)
Once this is done we can find a way to integrate it.

Great! I have never used Opal, but will try to learn how and cross-compile. Could you point to where I might learn to do this?
Thanks so much!
Sent from my iPhone

On Feb 23, 2015, at 12:20 PM, Guillaume Grossetie<EMAIL_ADDRESS>wrote:
It's a good idea but I think the first step is to cross-compile asciidoctor-latex to Javascript using Opal to create asciidoctor-latex.js ! (similar to what has be done with Asciidoctor.js)
Once this is done we can find a way to integrate it.
—
Reply to this email directly or view it on GitHub.

Oops! Your link has all the necessary info. I'll work on it.
Jim
Sent from my iPhone

On Feb 23, 2015, at 12:20 PM, Guillaume Grossetie<EMAIL_ADDRESS>wrote:
It's a good idea but I think the first step is to cross-compile asciidoctor-latex to Javascript using Opal to create asciidoctor-latex.js ! (similar to what has be done with Asciidoctor.js)
Once this is done we can find a way to integrate it.
—
Reply to this email directly or view it on GitHub.

Related issue: https://github.com/asciidoctor/asciidoctor-browser-extension/issues/51
The following syntax worked for me to display some equations:
:stem: latexmath
== Test of more complicated mathematics
The fundamental theorem of calculus statest that
[latexmath]
++++
\frac{d}{dx}\int_a^x f(t) dt = f(x)
++++


export amount in dataDisplay

export amount in dataDisplay

@haolei looks like we overlooked this PR, sorry about that!
This file doesn't exist anymore, so I'll close the PR.
Thank you and sorry!


DBZ-5181 Specify a taskId and maxTasks to run multiple EmbeddedEngines

https://issues.redhat.com/browse/DBZ-5181
A Debezium Server implementation may run multiple engines to parallelize
work between them. To enable multi-tasking an engine should be assigned
an ID and the provide total number of tasks. Using this information, it
can identify the slice of work from the source connector.

@jpechane I've updated the diff with DebeziumServer changes. Please take a look.

Any update on this? It's a cool feature to have

@vrajat  Thanks for contributing. Since this PR seems to be stale I rebased it, fixed few details and opened https://github.com/debezium/debezium/pull/3989.

Thanks Jakub. I’ll focus on getting it ready for a new round of reviews
On Mon, 24 Oct 2022 at 14:14, Jakub Cechacek @.***>
wrote:

@vrajat https://github.com/vrajat Thanks for contributing. Since this
PR seems to be stale I rebased it, fixed few details and opened #3989
https://github.com/debezium/debezium/pull/3989.
—
Reply to this email directly, view it on GitHub
https://github.com/debezium/debezium/pull/3654#issuecomment-1288663313,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMP7GVLXK4UCE6C45MISYLWEZEABANCNFSM5Z55HNTA
.
You are receiving this because you were mentioned.Message ID:
@.***>


[SPARK-18936][SQL] Infrastructure for session local timezone support.

What changes were proposed in this pull request?
As of Spark 2.1, Spark SQL assumes the machine timezone for datetime manipulation, which is bad if users are not in the same timezones as the machines, or if different users have different timezones.
We should introduce a session local timezone setting that is used for execution.
An explicit non-goal is locale handling.
Semantics
Setting the session local timezone means that the timezone-aware expressions listed below should use the timezone to evaluate values, and also it should be used to convert (cast) between string and timestamp or between timestamp and date.

CurrentDate
CurrentBatchTimestamp
Hour
Minute
Second
DateFormatClass
ToUnixTimestamp
UnixTimestamp
FromUnixTime

and below are implicitly timezone-aware through cast from timestamp to date:

DayOfYear
Year
Quarter
Month
DayOfMonth
WeekOfYear
LastDay
NextDay
TruncDate

For example, if you have timestamp "2016-01-01 00:00:00" in GMT, the values evaluated by some of timezone-aware expressions are:
scala> val df = Seq(new java.sql.Timestamp(1451606400000L)).toDF("ts")
df: org.apache.spark.sql.DataFrame = [ts: timestamp]

scala> df.selectExpr("cast(ts as string)", "year(ts)", "month(ts)", "dayofmonth(ts)", "hour(ts)", "minute(ts)", "second(ts)").show(truncate = false)
+-------------------+----------------------+-----------------------+----------------------------+--------+----------+----------+
|ts                 |year(CAST(ts AS DATE))|month(CAST(ts AS DATE))|dayofmonth(CAST(ts AS DATE))|hour(ts)|minute(ts)|second(ts)|
+-------------------+----------------------+-----------------------+----------------------------+--------+----------+----------+
|2016-01-01 00:00:00|2016                  |1                      |1                           |0       |0         |0         |
+-------------------+----------------------+-----------------------+----------------------------+--------+----------+----------+

whereas setting the session local timezone to "PST", they are:
scala> spark.conf.set("spark.sql.session.timeZone", "PST")

scala> df.selectExpr("cast(ts as string)", "year(ts)", "month(ts)", "dayofmonth(ts)", "hour(ts)", "minute(ts)", "second(ts)").show(truncate = false)
+-------------------+----------------------+-----------------------+----------------------------+--------+----------+----------+
|ts                 |year(CAST(ts AS DATE))|month(CAST(ts AS DATE))|dayofmonth(CAST(ts AS DATE))|hour(ts)|minute(ts)|second(ts)|
+-------------------+----------------------+-----------------------+----------------------------+--------+----------+----------+
|2015-12-31 16:00:00|2015                  |12                     |31                          |16      |0         |0         |
+-------------------+----------------------+-----------------------+----------------------------+--------+----------+----------+

Notice that even if you set the session local timezone, it affects only in DataFrame operations, neither in Dataset operations, RDD operations nor in ScalaUDFs. You need to properly handle timezone by yourself.
Design of the fix
I introduced an analyzer to pass session local timezone to timezone-aware expressions and modified DateTimeUtils to take the timezone argument.
How was this patch tested?
Existing tests and added tests for timezone aware expressions.

I'd like to discuss the boundary of session local timezone.
I assumed it affects only in DataFrame operations, neither in Dataset operations, before import from RDD, after export to RDD nor in ScalaUDFs because we can't control their timezones, which are basically based on system timezone, i.e. TimeZone.getDefault() value.
(And also for backward-compatibility)
What do you think?

Test build #70242 has started for PR 16308 at commit e5bb246.

Can you document the semantics of time zones and when they are used?

Test build #70244 has started for PR 16308 at commit 32cc391.

@rxin Did you mean I should add a document to sql-programming-guide.md file or somewhere else, or describe it here?

Test build #70242 has finished for PR 16308 at commit e5bb246.

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

Merged build finished. Test FAILed.

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

Test build #70244 has finished for PR 16308 at commit 32cc391.

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

Merged build finished. Test FAILed.

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

Test build #70254 has started for PR 16308 at commit f434378.

Test build #70254 has finished for PR 16308 at commit f434378.

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

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

Merged build finished. Test PASSed.

I'd rename all the zoneId to timeZoneId to reduce confusion ..

Test build #70338 has started for PR 16308 at commit b860379.

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

Merged build finished. Test FAILed.

Jenkins, retest this please.

Test build #70348 has started for PR 16308 at commit b860379.

Test build #70348 has finished for PR 16308 at commit b860379.

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

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

Merged build finished. Test PASSed.

Test build #70359 has started for PR 16308 at commit 6746265.

Test build #70359 has finished for PR 16308 at commit 6746265.

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

Merged build finished. Test PASSed.

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

This is getting pretty close. Can you update the description to define more formally semantics for timezone?
In addition, I think we also need to have a follow-up pr to focus on data sources (how should CSV/JSON interpret timezones when parsing timestamps).

@rxin I updated the description. Is it enough for you?

Test build #70396 has started for PR 16308 at commit 4b6900c.

Thanks this looks great.
Couple things:

Can you change the referenced JIRA to https://issues.apache.org/jira/browse/SPARK-18936

We should do a more detailed pass to make sure there isn't any issue with performance for the impacted expressions (e.g. don't create a new timezone object or do hash lookups per row).

@rxin I'd like to have a follow-up pr related to partition values.
I didn't include it to this pr, but I think we need it.

Can you create a subtask at https://issues.apache.org/jira/browse/SPARK-18350 ?

@rxin I see, created.

Test build #70396 has finished for PR 16308 at commit 4b6900c.

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

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

Merged build finished. Test PASSed.

Test build #70565 has started for PR 16308 at commit 7917d0f.

Test build #70565 has finished for PR 16308 at commit 7917d0f.

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

Merged build finished. Test PASSed.

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

Test build #70569 has started for PR 16308 at commit a00d52f.

Test build #70569 has finished for PR 16308 at commit a00d52f.

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

Merged build finished. Test PASSed.

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

Test build #70599 has started for PR 16308 at commit c232854.

Test build #70599 has finished for PR 16308 at commit c232854.

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

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

Merged build finished. Test PASSed.

@hvanhovell anything else to do here other than bringing it up to date?

Test build #70896 has started for PR 16308 at commit 5b6dd4f.

Test build #70896 has finished for PR 16308 at commit 5b6dd4f.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class IndexToString @Since(\"2.2.0\") (@Since(\"1.5.0\") override val uid: String)
abstract class Collect[T <: Growable[Any] with Iterable[Any]] extends TypedImperativeAggregate[T]
abstract class AggregateFunction extends Expression
case class Literal (value: Any, dataType: DataType) extends LeafExpression
case class LimitPushDown(conf: CatalystConf) extends Rule[LogicalPlan]
trait TypedAggregateExpression extends AggregateFunction
case class SimpleTypedAggregateExpression(
case class ComplexTypedAggregateExpression(

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

Merged build finished. Test PASSed.

Test build #71135 has started for PR 16308 at commit 33a3425.

Test build #71135 has finished for PR 16308 at commit 33a3425.

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

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

Merged build finished. Test FAILed.

Test build #71194 has started for PR 16308 at commit bd8275e.

Test build #71194 has finished for PR 16308 at commit bd8275e.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class DecimalAggregates(conf: CatalystConf) extends Rule[LogicalPlan]
case class NullPropagation(conf: CatalystConf) extends Rule[LogicalPlan]

Merged build finished. Test PASSed.

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

Test build #71365 has started for PR 16308 at commit 183945c.

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

Merged build finished. Test FAILed.

Jenkins, retest this please.

Test build #71372 has started for PR 16308 at commit 183945c.

Test build #71372 has finished for PR 16308 at commit 183945c.

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

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

Merged build finished. Test PASSed.

Test build #71435 has started for PR 16308 at commit 22a3b6e.

Test build #71435 has finished for PR 16308 at commit 22a3b6e.

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

Merged build finished. Test FAILed.

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

Test build #71455 has started for PR 16308 at commit 043ab52.

Test build #71455 has finished for PR 16308 at commit 043ab52.

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

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

Merged build finished. Test FAILed.

Jenkins, retest this please.

Test build #71463 has started for PR 16308 at commit 043ab52.

Test build #71463 has finished for PR 16308 at commit 043ab52.

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

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

Merged build finished. Test PASSed.

I went through all of the changes, LGTM overall, left some minor comments.
My main concern is, the newly added tests in DateFunctionsSuite are very hard to reason about the expected result, can you add some comments to explain them?

Test build #71807 has started for PR 16308 at commit cdbb266.

I'll add some more comments to explain DateFunctionsSuite later.

Test build #71807 has finished for PR 16308 at commit cdbb266.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class TimeAdd(start: Expression, interval: Expression, timeZoneId: Option[String] = None)
case class TimeSub(start: Expression, interval: Expression, timeZoneId: Option[String] = None)
case class MonthsBetween(date1: Expression, date2: Expression, timeZoneId: Option[String] = None)

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

Merged build finished. Test PASSed.

Test build #71837 has started for PR 16308 at commit 328399a.

Test build #71837 has finished for PR 16308 at commit 328399a.

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

Merged build finished. Test PASSed.

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

Test build #71854 has started for PR 16308 at commit 7352612.

Test build #71854 has finished for PR 16308 at commit 7352612.

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

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

Merged build finished. Test PASSed.

Test build #71983 has started for PR 16308 at commit b99cf79.

Test build #71983 has finished for PR 16308 at commit b99cf79.

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

Merged build finished. Test PASSed.

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

Test build #72012 has started for PR 16308 at commit 6fa1d6a.

Jenkins, retest this please.

Test build #72019 has started for PR 16308 at commit 6fa1d6a.

LGTM - pending jenkins.

Test build #72019 has finished for PR 16308 at commit 6fa1d6a.

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

Merged build finished. Test PASSed.

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

Merging to master. Thanks for the hard work, and the patience with the review process.
Can you open follow-up PRs for any remaining issues?

Sure! I'll send follow-up prs as soon as possible.
Thanks a lot for your review!

@ueshin Can you please explain to me if this functionality is the same as blessing Spark with "Timestamp with Time Zone"? If now, how is it different?


limits.h: add PTRDIFF_MAX and PTRDIFF_MIN

ptrdiff_t is defined as int in Nuttx and thus these are same as int limits. By defining these we cover platforms where this might not be the same.

Please rebase this PR to fix the CI


Which Windows versions are supported by WSL2 1.0.0?

Hi all,
which versions of Windows are supported by 1.0.0? I have read that this so called "Store version" of WSL2 only runs on Windows 11?!
Does it support Windows 10 Enterprise editions, too??
And which versions of Windows server are supported?
My company highly appreciate the systemd support of 1.0.0. Currently, we are using the "Windows-in" version of WSL2 which does not work with systemd as PID1 out of the box.
Best Valentin

which versions of Windows are supported by 1.0.0?

This blog pots may help https://devblogs.microsoft.com/commandline/the-windows-subsystem-for-linux-in-the-microsoft-store-is-now-generally-available-on-windows-10-and-11/

Hi @Biswa96 thanks for the quick reply.
The blog post is definitely helping but either Windows Server or Windows Enterprise Editions are explicitly mentioned there.
Are there any plans to support older versions of Windows 10?
Best Valentin


Adds Support for SQL Server Dialect

Not entirely sure how the type mapping was supposed to work but i've added a mapping that seems to work correctly. Can't add tests for kysely yet as the sql server dialect hasn't been merged.

Hey @dylel, thank you so much for the pull request! I'll keep my eyes peeled for when the PR gets merged on Kysely's side. Once that's done we can add a test script to validate that the types are correct.
I'm assuming this is the PR you're talking about: https://github.com/kysely-org/kysely/pull/595

Yeah that's the one I was referring to, anything else you would like me to do so this can be merged?

As I say I'd prefer not merging this before I can validate that the type map is totally correct. If you add a changeset using yarn changeset I can generate a snapshot release that you and others can use in the meantime.

No worries, i've just installed it straight from the pr for the time being
 pnpm install valtyr/prisma-kysely#refs/pull/68/head

Thank you for this PR, @dylel.
The kysely PR is merged but not yet released @valtyr. Can we still progress on this PR?

Kysely has released sql server support. Would be great to see this PR merged and released!

Yes please. For the record: I already use this PR as a patch in production.

Hey there, sorry for the delay. I'll merge this now.

Any updates?


Add support for -m and -c in interpreter mode.

This emulates the behavior of the python interpreter as we already do for
- and .
Fixes #547

Thanks Stu. I think we're good. Previously we supported 2 of exactly 4 execution modes of cpython:
$ pyyhon -h
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
...

I had a look. Perfect. Thanks for the fix.


When use_tags goes to False, delete Nodes for that tag.

When user changes use_tags from True to False we should really delete those tags since they will no longer be updated.
But, this means if you do it accidentally then they will be removed from any scenes, and any programs referencing them will no longer run.  If you then turn use_tags back to True and restart ISY then programs will again work, but they will still be gone from any scenes.
Users please comment on if you think this is a good idea or not.

But maybe I'll create another issue to add a function to delete tags on a tag manager.  Is suspect most won't need it, but I do when I'm testing on my dev environment.

Thanks, will close this and create a new issue.


Publish the Docker images to ghcr.io?

It is possible to pre-build and publish the Docker images to ghcr.io, so that everyone doesn't need to rebuild them. I mean something like this:
https://github.com/orgs/huggingface/packages?repo_name=text-generation-inference
I am happy to do this. I think I have permissions to publish packages. But, I want to confirm with @loubnabnl  or someone before I do.

That would be great Arjun!

I need a project admin to enable this setting :)


Add more IBA cocktails

Related-to: tmcw/flair#3.
Closes: tmcw/flair#5.

Well, IBA published some more officials today, praise to RSS feeds. Added!

Beautiful! As soon as you're happy with where this is at, I'll do whatever elm-flavored refactoring I can and get it merged

I’m done! Ready for some elm-seasoning! 🍸

And do check if you agree on the new ingredient groupings!

There were enough new cocktails that all my O(n^2) code started acting up :) Did a bunch of refactoring so it's still zippy and it should be rebuilding on zeit momentarily!

Awesome!


Add TargeView for EditText drawable icons

I'm curious if there's a way to include the focus on EditText drawable icons. E.g. "android:drawableRight" or "android:drawableLeft".

There is no direct way since the Drawable baked into the TextView. You will have to manually determine the bounds for the Drawable and use TapTarget.forBounds()


Analyzer to spot comparison with primitives in EFCore Linq selectors

In a Linq query across a collection I can do this without a problem
var x = list.Where(e => e.Id == 1).Single();

However, the same query in EFCore will fail with an InvalidCastException and a message of 'Invalid cast from 'System.Int32' to 'Domain.Id'
To fix this, an explicit cast is required
var x = context.Entities.Where(e => e.Id == (Id)id).Single();

or
var x = context.Entities.Where(e => e.Id == Id.From(id)).Single();

These are difficult to spot at compile time as the Id and int types are equatable.
One way to prevent the runtime errors is to generate the implicit cast, but this allows bypassing the From method and introduces the potential to create invalid instances.
Originally posted by @rbanks54 in https://github.com/SteveDunn/Vogen/issues/502#issuecomment-2421061334

Just some thoughts...
If the analyzer is applied to all linq queries regardless of their usage, it could break other people's code where they have non-EF queries. Probably not the best outcome 🙂
If the analyzer can detect an EF query by checking if the class being queried inherits from DBContext that would be wonderful. This is this is likely harder that the simple scenario I added as the comparison could be defined in a helper method or specification object that generates a where clause. I don't know how easy it is chasing that back up the call tree to see where it might be used.
The analyzer would also need to check the other form of EF querying as the syntax tree is different; i.e.
var x = (from e in context.Entities
  where e.Id == id
  select e).Single();

I've not done much with analyzers, so I don't know how tricky any of this might be.  It sounds like a fun problem to try and solve, though!

Just some thoughts...
If the analyzer is applied to all linq queries regardless of their usage, it could break other people's code where they have non-EF queries. Probably not the best outcome 🙂
If the analyzer can detect an EF query by checking if the class being queried inherits from DBContext that would be wonderful. This is this is likely harder that the simple scenario I added as the comparison could be defined in a helper method or specification object that generates a where clause. I don't know how easy it is chasing that back up the call tree to see where it might be used.
The analyzer would also need to check the other form of EF querying as the syntax tree is different; i.e.
var x = (from e in context.Entities
  where e.Id == id
  select e).Single();

I've not done much with analyzers, so I don't know how tricky any of this might be. It sounds like a fun problem to try and solve, though!

Hi @rbanks54 - I've had a first attempt at this. I'll release an alpha version later today if you wouldn't mind playing about with it?
It looks for invocation expressions named Where, Select TakeWhile, SkipWhile etc. It then checks to see if they're being called on anything that derives from DbSet. It then looks at each sub-expression to see if the left value is a value object and the right value is a primitive (int).
It seems to work quite well.  Good point re. the other syntax for querying. I just tried that and it doesn't work! I'll see if I can get it working.
Many thanks.

It's looking like a good start :)

Both line 127 and 130 in the screenshot are detected as problems.
The last approach (lines 132 to 135), where I split up a query, doesn't get detected as a problem though :(
Because I split the line up, the type for step1 is DbSet<EmployeeEntity>? rather than the non-nullable type. You might need to check for nullable DbSets in the analyzer if you haven't already done so.
When we get to the where clause, the type is just an IQueryable<EmployeeEntity>?. The DbSet typing has been lost due to the fluent chaining.

When we get to the where clause, the type is just an IQueryable?. The DbSet typing has been lost due to the fluent chaining.

I would be very cautious about extending the analyzer to IQueryable<> since that would necessarily include other db engines and even linq to objects .AsQueryable() into the detection, which could lead to false positives.

from e in context.Entities
  where e.Id == id
  select e

Thanks for the quick feedback! I'll take a look at those (very cunning) scenarios!

When we get to the where clause, the type is just an IQueryable?. The DbSet typing has been lost due to the fluent chaining.

I would be very cautious about extending the analyzer to IQueryable<> since that would necessarily include other db engines and even linq to objects .AsQueryable() into the detection, which could lead to false positives.

Thanks for the steer @viceroypenguin . It first checks for IQueryable and then checks to see if it's specifically a DBSet in the efcore namespace, so I think we should be good.

It's looking like a good start :)

Both line 127 and 130 in the screenshot are detected as problems.
The last approach (lines 132 to 135), where I split up a query, doesn't get detected as a problem though :(
Because I split the line up, the type for step1 is DbSet<EmployeeEntity>? rather than the non-nullable type. You might need to check for nullable DbSets in the analyzer if you haven't already done so.
When we get to the where clause, the type is just an IQueryable<EmployeeEntity>?. The DbSet typing has been lost due to the fluent chaining.

Thanks for the quick feedback! I'll take a look at those (very cunning) scenarios!

I can get it to work for:
var step1 = context.Entities;
var step2 = step1.Where(e => e.Id == id);

But, I can't get it to work for the extra level of indirection in:
var step1 = context.Entities;
var step2 = step1.Take(4);
var step3 = step2.Where(e => e.Id == id);

step2 changes from DbSet<> to IQueryable<>.

Would a recursive check up the call tree be viable?
i.e. if the analyzer finds the source is an IQueryable, then use SymbolFinder.FindDeclarationsAsync get the IQueryable's definition and and see if it, in turn is using a DbSet or IQueryable as it's source?

Apparently, SymbolFinder isn't available to analysers.  :)

I spent a fair amount of time trying to get the analyzer to spot the violation on the last line.
 using var ctx = new DbContext();

 DbSet<EmployeeEntity> step1 = ctx.Entities;
 var step2 = step1.Take(4);
 var entities = step2.Where(e => {|#0:e.Age == 50|});

It proved difficult (for me, anyway!): the SymbolFinder isn't available, so I went with the approach that similar method-level analyzers take, which follows these steps:

RegisterCompilationStartAction - and do 'expensive' stuff there, like getting types by metadata and creating a lookup table
RegisterOperationBlockStartAction - where the 'block' matches a method
RegisterOperationAction - where it gets notified of ExpressionsStatement, PropertyReference, and Invocation` operations.

For each operation, depending on what it is, it looks up the associated 'sides' of the expression (if it's a property access, is the property a DbSet?, if it's an expression,  is it a binary expression and is one of the sides a DbSet or IQueryable, and if it's IQueryable, does it originate from something else that relates back to a DbSet?)
There was a couple of issues with this approach:

it was slow, or at least looked slow, as it was doing a lot of work
I don't think it would've covered other issues, like a DbSet being passed to the method, but where the parameter is IQueryable<> - I don't know of any way that an analyzer could distinguish the difference, but I could be wrong.

I'll close this one for now as I think it's better to have basic functionality than none at all. I'll revisit this one if I learn something that might help implement it more efficiently in the future.


Auto-complete for "OptionWithValue" doesn't remove synopsis option from suggestions

I noticed for command auto-completes where a OptionWithValue item exists when the option's displayValue is typed as an argument, this option is removed from the auto-complete suggestions. However when the sysnopis is added as an argument this option isn't removed from the suggestions.
An example of this is the "git commit" command with the option displayValue "--message="  and synopsis "-m ". See explanation and screenshots below.
When "--message=" is typed this option is removed from the suggestions.

However, if "-m " is added this option still remains in the suggestions list.

Sorry accidently raised a duplicate of the previous issue #247.


Add ability to search for an email by subject

Have multiple emails reaching one user.
Need to find based on subject.
Investigating.

checking at the source code ([https://github.com/dockyard/capybara-email/blob/master/lib/capybara/email/dsl.rb#L42] (https://github.com/dockyard/capybara-email/blob/master/lib/capybara/email/dsl.rb#L42)), I found current_emails method, which is returning array of emails. So, I fixed this issue by:
current_emails.first.click_link 'Confirm my account'

AND
current_emails.last.click_link 'Change my password'

# OR no need to fetch last email, gem is already referencing to the last email, so above code will be equivalent to:

current_email.click_link "Change my password"

So, I guess, you can reference your emails by array index like:
current_emails[0]
current_emails[1]
and so on ....

Hope this is helpful. And yes, I agree, if gem will implement some way to directly fetch emails with their subject.
Thanks


Fix nightly tests and refactor add tests

What changed?

running nightly tests 6 days a week to leave Sunday free for the new upcoming weekly tests
refactor add tests to prevent nightly failures

How did you test it?

ran nightly on ci, it passed

@rokshana-b  I see you removed env var K8S_VERSION from some config files. Do we need to rewrite it? or is it present already?
func getK8sVersion() string {
	k8sVersion, found := os.LookupEnv("K8S_VERSION")
	if found {
		return k8sVersion
	}

	return DEFAULT_K8S_VERSION
}

@rokshana-b I see you removed env var K8S_VERSION from some config files. Do we need to rewrite it? or is it present already?
func getK8sVersion() string {
	k8sVersion, found := os.LookupEnv("K8S_VERSION")
	if found {
		return k8sVersion
	}

	return DEFAULT_K8S_VERSION
}

@josecordaz I thought I left this function in the utils file. i just moved this validation to a test where we have a skip tag for nightly. Can you pinpoint where it needs to be re-added?