BAY-7 update baywatch elasticsearch data path

!!!important: merge this after new images are burned already. (baywatch version already updated in cloudbreak-images)

Jenkins build finished, all tests passed.
Refer to this link for build results: http://ci.sequenceiq.com/job/cloudbreak-pull-request/1399/

Jenkins build finished, all tests passed.
Refer to this link for build results: http://ci.sequenceiq.com/job/cloudbreak-pull-request/1403/

Jenkins build finished, all tests passed.
Refer to this link for build results: http://ci.sequenceiq.com/job/cloudbreak-pull-request/1471/

Jenkins build finished, all tests passed.
Refer to this link for build results: http://ci.sequenceiq.com/job/cloudbreak-pull-request/1489/


Revert "Update appsettings.json to new schema in examples"

Reverts microsoft/FeatureManagement-Dotnet#204
Three commits need to be reverted from main branch in this order:

ebe414233b24156caa5265ab49f6570fac16f1dc
bf76ce600fcc2e2a47323a25636859721f0a333f
4e5a8f57264c557e1a100a4c6e04b73d55c4ad61

This PR reverts the first commit.
All commits are preserved in avanigupta/RevertDynamicFeatures branch for merging to main later, when we are ready to release v3.

Closing this in favor of a single PR to revert all necessary commits.


Fatal Crash

App Crashing in line @eappel @alexzielenski

This bug is determined to be due to failed parsing of events. If an event is unable to be processed, it should be tossed out rather than resulting in this error.


Reporting a fake on-chain treasury proposal tied to a phishing scheme

Phishing url: https://keplr-wallet.at/
Fake on-chain Treasury proposal: https://polkadot.polkassembly.io/treasury/238

Added in #3045
Thanks for reporting @anaelleparity


Decorators error after upgrading to 1.16.0

Discussed in https://github.com/remix-run/remix/discussions/6326

Originally posted by erandow May  6, 2023
After upgrading remix to the latest version(1.16.0),
I get the following error after running project locally.]
The 'decorators' plugin requires a 'decoratorsBeforeExport' option, whose value must be a boolean. If you are migrating from Babylon/Babel 6 or want to use the old decorators proposal, you should use the 'decorators-legacy' plugin instead of 'decorators'. [plugin css-side-effects-plugin]
I also set the future.unstable_cssSideEffectImports: true but the errors still exist.

@erandow I haven't been able to reproduce the issue. Could you please share a repro?

@erandow It looks like the decoratorsBeforeExport option is deprecated: https://babel.dev/docs/babel-parser#plugins-options. This seems likely to do with an older version of @babel/parser. Are you able to confirm which version you're using?

I had a similar issue when I upgraded only Remix, but it went away when I upgraded all outdated packages in my app. I imagine npm was picking up an older version of babel for one of my other dependencies.

This shouldn't be an ongoing issue once #6390 goes out.

@erandow Are you able to check your issue against the night release?

@markdalgleish,
Thanks for creating an issue and trying to fix the issue.
Sorry, I was offline and couldn't answer your questions.
Thanks, It seems that there is no problem with the nightly release.


Update Mintmaker staging deployment

Add the pipelines-as-code-secret to staging env, this secret is required for Mintmaker to communicate with the Konflux PaC GitHub app.
Mount CA bundle with rh-certs component, it's required for Mintmaker to call Githup APIs.

I believe this PR should be changed to only deploy to staging first.
Once you have tested staging, you can create an additional PR to promote to production

I believe this PR should be changed to only deploy to staging first.
Once you have tested staging, you can create an additional PR to promote to production

@scoheb It makes sense, I've updated the PR to remove the production deployment.
To be honest, I'm not sure how the external secret works. Does someone need to prepare the PaC secret in the appsre-stonesoup-vault beforehand? And who can help us to verify the deployment?

/lgtm
/approve

/test appstudio-e2e-tests

/test appstudio-e2e-tests

/ok-to-test

PR passed e2e, merging it


Test out spot instances

we currently use on-demand instances and spot instances are cheaper with lower availability https://aws.amazon.com/ec2/spot/instance-advisor/ so with lower cold start time we could give it a try

not possible to get spot instances :)  closing


format gui_gtk_f.c

Can't we use a tool to unify the formatting of the C part?

It is what I'm trying to do with:

#15930
#16019
#16093
#16092
#15967

This one of many commits to apply the formatting to the source.
Note that #16019 has been merged so now we have a clang-format config.
@glepnir If you are pro to a formatter please leave a note on #16093 so we can work out issues with clang-format. Currently my opinion is that a formatter is better that having variable declaration alignment (something that clang format isn't really good at).

closing see https://github.com/vim/vim/pull/16093#issuecomment-2514211360 for explanation.


CI with Travis or CodeCov

This is a chore for @kentcdodds I think:
We should set up Travis or CodeCov to have automated testing for PRs.

Yeah, that would be very helpful. Especially this: https://github.com/zpnk/stage-ci

Sorry. I've been busy. I activated travis on the repo so we should be good to just add a .travis.yml and have it work. Codecov will work out of the box. Just need to start sending stuff.

Handled this with #15.


accessing TypeAliasType.value attempts to call the value

Nuitka version, full Python version, flavor, OS, etc. as output by this exact command.
% python3 -m nuitka --version
2.3.11
Commercial: None
Python: 3.12.4 (main, Jun 17 2024, 22:50:04) [GCC 13.2.0]
Flavor: pyenv
Executable: /home/ra/.venv/bin/python3
OS: Linux
Arch: x86_64
Distribution: Debian sid
Version C compiler: /usr/bin/gcc (gcc 13).

How did you install Nuitka and Python
% pyenv install 3.12.4
% pyenv local 3.12.4
% python3 -m venv .venv
% source .venv/bin/activate
% pip install nuitka

from typing import TypeAliasType

type FeetType = "Feet"

class Bar(type):
    def __new__(cls, name, bases, namespace):
        for k, v in namespace["__annotations__"].items():
            if v.__class__ is TypeAliasType and isinstance(v.__value__, str) is False:
                ...
        return super().__new__(cls, name, bases, namespace)

class Foo(metaclass=Bar):
    foo: FeetType

class Feet: ...

The above should run without error, however
% python3 -m nuitka --run test.py
Nuitka-Options: Used command line options: --run test.py
Nuitka-Options:WARNING: You did not specify to follow or include anything but main program. Check options and make sure that is intended.
Nuitka: Starting Python compilation with Nuitka '2.3.11' on Python '3.12' commercial grade 'not installed'.
Nuitka: Completed Python level compilation and optimization.
Nuitka: Generating source code for C backend compiler.
Nuitka: Running data composer tool for optimal constant value handling.
Nuitka: Running C compilation via Scons.
Nuitka-Scons: Backend C compiler: gcc (gcc 13).
Nuitka-Scons: Backend linking program with 7 files (no progress information available for this stage).
Nuitka-Scons: Compiled 6 C files using ccache.
Nuitka-Scons: Cached C files (using ccache) with result 'cache hit': 5
Nuitka-Scons: Cached C files (using ccache) with result 'cache miss': 1
Nuitka: Keeping build directory 'test.build'.
Nuitka: Successfully created 'test.bin'.
Nuitka: Launching 'test.bin'.
Traceback (most recent call last):
  File "/home/ra/test.py", line 14, in <module>
    class Foo(metaclass=Bar):

  File "/home/ra/test.py", line 9, in __new__
    if v.__class__ is TypeAliasType and isinstance(v.__value__, str) is False:

TypeError: 'str' object is not callable

However, when the value of the TypeAliasType is set to lambda: "Feet" it works just fine:
from typing import TypeAliasType

type FeetType = lambda: "Feet"

class Bar(type):
    def __new__(cls, name, bases, namespace):
        for k, v in namespace["__annotations__"].items():
            if v.__class__ is TypeAliasType and isinstance(v.__value__, str) is False:
                ...
        return super().__new__(cls, name, bases, namespace)

class Foo(metaclass=Bar):
    foo: FeetType

class Feet: ...

% python3 -m nuitka --run test.py
Nuitka-Options: Used command line options: --run test.py
Nuitka-Options:WARNING: You did not specify to follow or include anything but main program. Check options and make sure that is intended.
Nuitka: Starting Python compilation with Nuitka '2.3.11' on Python '3.12' commercial grade 'not installed'.
Nuitka: Completed Python level compilation and optimization.
Nuitka: Generating source code for C backend compiler.
Nuitka: Running data composer tool for optimal constant value handling.
Nuitka: Running C compilation via Scons.
Nuitka-Scons: Backend C compiler: gcc (gcc 13).
Nuitka-Scons: Backend linking program with 7 files (no progress information available for this stage).
Nuitka-Scons: Compiled 6 C files using ccache.
Nuitka-Scons: Cached C files (using ccache) with result 'cache hit': 5
Nuitka-Scons: Cached C files (using ccache) with result 'cache miss': 1
Nuitka: Keeping build directory 'test.build'.
Nuitka: Successfully created 'test.bin'.
Nuitka: Launching 'test.bin'.

note: even with --full-compat, it still errors

The --full-compat is never really doing meaningful things for compatibility, only bug compatibility like wrong line numbers, worse messages etc. so that's expected to not help. I am also critizing the use of pyenv, which I do not consider as well supported, but once Nuitka backend Python hits us, this will no longer be a worry.
With Ubuntu Python, it's not happening for me, but I just noticed I only work around their specific libstatic-python bug in standalone mode, but with that fixed, it just works for me, which is what I expected, sort of when seeing the test case, since it's nothing special.
The main reason, pyenv is pronounced unsupported in the User Manual is so far related to it being not really unusable for standalone mode, this however looks really scary.

I will be trying pyenv for myself now, just to see that it's not an issue that just cannot be reproduced. It seems they are doing an unoptimized build, do they, downloading the source and then finishing so fast, means they don't do PGO or anything good.

Well, I cannot reproduce it at all, also not with the pyenv that I just installed, neither with git main nor my internal branch of what's going to be 2.4 soon. Maybe you shouldn't use Debian sid, and this is a build error of some sorts for Python and/or Nuitka created binaries. I will have to close it as invalid.

from typing import TYPE_CHECKING

if TYPE_CHECKING:

    class Foo: ...  # Something we cannot actually import due to circular imports

type FooType2 = "Foo"

try:
    type FooType = Foo  # NameError: name 'Foo' is not defined
                        # gets evaluated before accessing FooType.__value__
except NameError:
    type FooType = object

print(FooType.__value__)  # returns an instance of object, whereas running this normally it returns the type
print(FooType2.__value__)  # TypeError: 'str' object is not callable

The problem occurs when a TypeAliasType is of a ForwardRef

Scratch that, running it normally it will evaluate type FooType = Foo, throw NameError, and exit, not allowing it to be caught


Surveys submitted via the Android SDK appear to have wrong user properties

In the two below screenshots they were submitted via the Android SDK. On the Android app the app sends down the platform key as android. But in the screenshots below the user property is saying iOS or touch which is the other platforms we have wootric setup on. So it appears the list of user properties being shown are from another survey submission.  As none of the user properties are matching what I sent from the android app.
We are using 2.11.0 of the SDK. We were previously using 2.4.1 or something but updated to see if this would fix the issue. Not sure if this issue is the SDK being wrong, your backend or your frontend.

Closing. Must have been a server issue as its working now for me the next day without me making any changes.

This is still happening to us actually. Seems to come and go.


⚠ Bofrost.at has degraded performance

In 4db1614, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1394 ms

Resolved: Bofrost.at performance has improved in 67eb62a after 9 minutes.


issues with authentication process

Authorize function is returning the error "Authentication failed - please check your credentials" because the login form needs a csrf value, apparently. Has anyone gone over this?

I am having this issue as well - since about 2 or 3 days ago.

same issue for me let me know if any progress

It seems like they not only added a CSRF-value, but also some other changes in the SSO-form.
Seems like Garmin dont see the value of this opensource-addOns. :(

same Problem

Thanks all. I'm current on anual leave, but should be able to look at this soon. I'll need to decompose the Garmin login screens and see if there's anything we can do here. However, the mention of CRF doesn't fill me with hope, especially if they've done it right.

@dawguk the referenced issued have a working fix in place.

Yep, I posted a request to take a look at their PR and see if we can do the same thing. I'll have a play later ...

This is now resolved in pull request #34

Forgot to mention, thanks to @JLTRY for the triggerig of this fix, I got my lazy-self back to the computer to resolve.


Add option to send withCredentials property in F2 XHR

We recently discovered that when sending cross-domain ajax requests, the XHR object does not automatically include the relevant cookies for the target domain. This caused an issue for some hosting the F2 container on one domain and using a session cookie to authenticate the F2 app request from another domain.
An addition to add the withCredentials property to the F2 XHR object has been proposed. This property defaults to false and is standard on XMLHTTPRequest as shown here.
It's difficult for Container Developers to enable this flag in F2 today because they're required to override the entire F2 AppManifest XHR request for a simple property addition.
It is likely we'll add this to the ContainerConfig provided to F2.init().

in practice most F2 implementations end up overriding XHR in order to hook in authentication and at that point in time can and do specify withCredentials.


[Feature] Test for feature gates when checking support for immutable configmaps

Is your feature request related to a problem? Please describe.
In a few places in the test suite, the kubernetes version is being checked as being 1.19 or greater to use immutable configmaps. But as @williscool pointed out in a comment on PR #861, we should also be checking for feature gates to see if Immutable configmaps are supported.
According to the Kubernetes docs on feature gates,

Immutable configmaps are available and enabled by default in 1.19 & 1.20, but are still behind a feature gate (translating to chances of being disabled).
Immutable ConfigMaps are only generally available since 1.21.

Describe the solution you'd like
To confirm availability of immutable configmaps, apart from checking for the Kubernetes version, ensure feature gate is also enabled.
Describe alternatives you've considered
None
How will this be tested? aka Acceptance Criteria (optional)
None

@HashNuke Is still issue still relevant?


[scan] run simulator destination with arch=x86_64 for Xcode 14.3 and up if on Intel

Motivation and Context
Fixes #21194
Description
Force simulator destination to arch=x86_86 if :run_rosetta_simulator option is set to true
scan(run_rosetta_simulator: true)

Testing Steps
Update Gemfile to 👇 and run bundle install, bundle update fastlane, or bundle update
gem "fastlane", :git => "https://github.com/fastlane/fastlane.git", :branch => "joshdholtz-sim-rosetta-xcode-14.3"

Please include Scam file support!


F-Droid listing

First congrats to your listing at F-Droid.org! At this time I'd remove the app from my repo. But as you still carry my badge on the Readme, that would cause some confusion due to the "404 page not found" then. What are your plans there? A "double listing"?

First congrats to your listing at F-Droid.org! At this time I'd remove the app from my repo. But as you still carry my badge on the Readme, that would cause some confusion due to the "404 page not found" then. What are your plans there? A "double listing"?

The badge has now been removed

Thanks! Will remove the app here then. Should for any reason you need it back, just "ring my bell". Metadata is just archived, so re-listing is easy. All the best for you!

Thanks! Will remove the app here then. Should for any reason you need it back, just "ring my bell". Metadata is just archived, so re-listing is easy. All the best for you!

Ok, thanks you very much)


Rebalance segment prioritization/round-robining

We're now reaching in excess of 3 billion iterations before running out of disk space (~400GiB) for the AV2 test case, with 2B+ states left and 6.6B history entries. However, the max progress level for this test case is 23, but we only made it to progress level 8 around 1B iters, and never to 9 or above. (Previously we were starting from the given routes' thresholds.) The given route will win around progress level 20-21. Future cases will have on the order of hundreds.
Additionally, we pretty quickly reach a point where the lowest progress level (0) still has tons of states but the lowest is much worse score-wise than the minimums in the other levels.
Here's some things we should do:

Refactor run_thread and process_one: because we're not using parallel iterators anymore for consuming from the queue, we can just have each thread handle its own queue consumption method, and make them more lock-efficient by grabbing several at once. (I note that the current behavior is to pop_round_robin and then after each of those, e.g. pop_max_segment.)
Change evictions around the bottom segment. We could, at some point, evict the whole segment. Also, we could just about always evict everything in that segment with a worse score than the max of the top segment.     |
 p 8-|                               ■■■■■■
 r   |                               ■■■
 o 6-|                              ■■■
 g   |                           ■■■■
 r 4-|                        ■■■
 e   |                      ■■■■
 s 2-|                      ■■■
 s   |                   ■■■■■■       ■ ■■■■■■
   0-|                              ■■■■■■■■■■■■■
    +------------------------------------------------------------------------------------------

Another idea based on this final heap visualization (which is based on elapsed time rather than score): not only is segment 0 mostly worse than the max segment here, but the second group in segment 1 is likely based on those states and also should be safely skippable. Finding a large gap in a segment will probably be too difficult, but we can find that segment 2's max is better than segment 5's min (might also be true of 4 and 5 here). This should mean that it's safe to evict everything lower than segment 2 with a score higher than segment 5's max.
Change balance of thread strategies: it can take awhile to reach a later level of progress; we know for example that we processed over 2.8 billion states at 0 progress, and it would be much less at progress level 8 here. Tracking the iters of each progress level might help illustrate the imbalance, but also the combinatorial explosion kind of makes it so that we would naturally process more at higher progress levels if we were prioritizing based only on elapsed time. So... triangular round-robin? Simply more focus on max progress? Some other scaling?

This change is somehow remarkably efficient, or is otherwise doing some very strange things. The heap size reported is varying wildly, which could be from threads holding onto more work than they did before, or from states not being iterated on. Further, unlike the previous runs, segment 0 disappears super quickly. It never has a chance to reach the times it was reaching before.
What it could be:

each thread no longer grabs a full round-robin list, so that probably reduces the number of duplicates that might get added.
Greedy mode got removed entirely.
Dependent mode is more balanced.

In terms of relative counts, if we assume round-robin gets 8 items, and each item takes the same amount of time, we'd originally have gotten in 2 round-robin cycles:

2 round robins per standard thread
usually 2 round robins per dependent thread
1 round robin per max/some/half progress thread plus 8 of their specials
some amount on the greedy thread (which did 1 round robin plus 1 greedy iteration which could take much longer).

coming out to around 24 round robins and 56 individual specials, not counting the greedy thread(s). (Total = 248 in 15 threads)
Now, though, in those two standard cycles, we'll instead get:

2 round robins per standard thread
about 1 round robin and 8 specials per dependent thread on average
16 of each special

Or around 14 round robins and 144 specials. (Total 256 in 16 threads)
The good news is that it's now getting up to progress 11 very quickly, when 8 was hard to reach before.

I think this is working pretty well. But sometimes I see early on in the program the queue runs out of low-progress states (according to the status updates) and then regains them somehow. This backtracking shouldn't happen unless a thread got really delayed for some reason while holding onto the earlier ones. But also it doesn't always seem to occur, sometimes we just have no 0-progress states from early on, and sometimes we run through tons of them.

That bug I just fixed probably explains so much! The weird backtracking, the surprise voids, and even the gradual growth of memory usage!

We probably still need to add more focus on the highest segment somehow.


to_skbio_treenode ignores root length

Here's a small example to reproduce this:
from skbio import TreeNode
from bp import parse_newick, to_skbio_treenode
bp = parse_newick('(((a:1,e:2):1,b:2)g:1,(:1,d:3)h:2):1;')

t = to_skbio_treenode(bp)

print(t.name, t.length)
 # None None

t = TreeNode.read(['(((a:1,e:2):1,b:2)g:1,(:1,d:3)h:2):1;'])

print(t.name, t.length)
# None 1.0

I think that’s correct though. The root doesn’t have a parent, therefore it doesn’t have an edge

On Aug 31, 2020, at 9:53 AM, Yoshiki Vázquez Baeza<EMAIL_ADDRESS>wrote:
Here's a small example to reproduce this:
from skbio import TreeNode
from bp import parse_newick, to_skbio_treenode
bp = parse_newick('(((a:1,e:2):1,b:2)g:1,(:1,d:3)h:2):1;')
t = to_skbio_treenode(bp)
print(t.name, t.length)
None None
t = TreeNode.read(['(((a:1,e:2):1,b:2)g:1,(:1,d:3)h:2):1;'])
print(t.name, t.length)
None 1.0
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://urldefense.com/v3/__https://github.com/wasade/improved-octo-waddle/issues/30__;!!Mih3wA!Wjzv4MsVEOihOICe7Fy5AeKgXXr_u_fCaYc9oOy3rwLKq-UfVKNz0plpDKkJA_nBg28H$, or unsubscribe https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AADTZMS3D7JVOQ5JMUMWSGDSDPISFANCNFSM4QQXDI5A__;!!Mih3wA!Wjzv4MsVEOihOICe7Fy5AeKgXXr_u_fCaYc9oOy3rwLKq-UfVKNz0plpDKkJA718YB_d$.

Fair enough, makes sense. Boils down to the representation itself, right? Closing this for now :+1:


Support for launch xib launch screen file?

I spent some time investigating this and it's not looking good. Normally -[UIViewController initWithNibName:bundle:]requires that your nib file has (1) an owning view controller specified, and (2) a view outlet set. However, attempting to do so for a LaunchScreen file gives this error:

Launch Screens may not have connections.

I would welcome a pull request here or comments from the community. This is not looking likely though. :(

Try
    UINib *nib = [UINib nibWithNibName:@"LaunchScreen" bundle:nil];
    NSArray *arr = [nib instantiateWithOwner:nil options:nil];
    UIView *view = [arr firstObject];

Thanks @sbhhbs, I think we are in business! Your thoughts on #3 ?


Attempting to find a place to submit an issue ticket was non-trivial...

I don't have the time (and for most others, the motivation) to try and figure these out as it would cause me to lose my current focus (evaluating a project migration LOE [Level Of Effort]) for which I came to this site in the first place.

Per item 4 in this closed ticket, please improve (or make more obvious) the link to use when "Giving feedback for missing content". From now until at least a year after the release of Scala 3, the link needs to be quite a bit more obvious to a time-pressed Scala software engineer who cannot find his/her current Scala2 to Scala3 conversion showstopper.
This is an essential bottleneck we want to expand as much as possible so it better facilitates and then accelerates the conversions to Scala3.

Thanks @jim-oflaherty-jr-qalocate-com !
The migration guide is being moved to the docs.scala-lang website in this PR.


Drag on mobile

Dragging doesn't do anything on mobile. Not sure how to implement this though, but it's fairly common for responsive sliders.

Hey @MatthewScholefield thanks for the issue. I'm no longer maintaining this, but the kind folks at Fomantic-UI have continued on this work. I recommend checking them out. They have an open PR to implement this slider: https://github.com/fomantic/Fomantic-UI/pull/290


Py2(3)Requirements ignores included files

Bug walkthrough
Assume, we've two files:
requirements/dev_bundle.txt
-r requirements/prod.txt
dev_first==1.0.0
dev_second==1.0.0

requirements/prod.txt
package_a==1.2.3

And the relevant step in vagga.yaml:
- !Py3Requirements requirements/dev_bundle.txt

Currently vagga ignores any changes in requirements/prod.txt, but it shouldn't.
Workaround
Explicit usage of !Depends, like this:
- !Depends requirements/prod.txt
- !Py3Requirements requirements/dev_bundle.txt

Megred in master https://github.com/tailhook/vagga/pull/278


sockets: Fixes for non-blocking mode

Fixes for non-blocking socket mode as reported by @jimmy-huang in #6309. Actually, only one commit fixes the issues directly, other fix related issues spotted during analyzing the issue.

I'd say these important enough to go into 1.11.

Codecov Report

Merging #6445 into master will increase coverage by <.01%.
The diff coverage is 77.77%.

@@            Coverage Diff             @@
##           master    #6445      +/-   ##
==========================================
+ Coverage   53.16%   53.16%   +<.01%
==========================================
  Files         431      431
  Lines       41081    41083       +2
  Branches     7898     7899       +1
==========================================
+ Hits        21841    21843       +2
  Misses      16033    16033
  Partials     3207     3207

Impacted Files
Coverage Δ

subsys/net/lib/sockets/sockets.c
42.12% <77.77%> (+0.49%)
: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 d397109...30a514c. Read the comment docs.


Pressing enter after tag was added adds the tag again

If you add a predefined tag from the list, and press enter again, that tag will also get added again. This doesn't happen when you add a new tag.
Video below was recorded on the Codepen demo in "Tags new" input, but the same happens in the "Tags" input. First I added "Banana" tag which os one of the predefined tags and then pressed enter few times. The tag was also added multiple times. Then I refreshed the page and added "Test" tag which is a new tag and again pressed enter multiple times, but tag was not added.
https://user-images.githubusercontent.com/16626308/123546441-cbbc2400-d75c-11eb-827e-a366ec843bfc.mp4
Is it possible to prevent adding the same tag multiple times this way?

Thanks for the detailed report. It should be fixed with https://github.com/lekoala/bootstrap5-tags/commit/18289b9fec05e8a92b992b1708de85cbd4139e02


Small documentation changes

nothing pops out as being an issue, so it looks good to me!

Documentation preview: https://sphericart--101.org.readthedocs.build/en/101/


Material Box image in href

I require a different image to popup when clicking the  so trying to figure out a way todo this.
It does seem that I am able to wrap the img tag in a  and specify the path in the href but when clicking it appears to popup the image but redirects away.

Closed due inactivity, feel free to reopen it if it is still necessary.

Similar issue here. I want Material Box to open the high resolution version of my thumbnail like that:

But that doesn't work. Is there a workaround or is it simply not possible or a bug?

@fega @andrew-za Can you please reopen?

Duplictate of #2452


Strict mode - Throw error if response isn't 2xx

This would definitely require a major version bump. I am a bit undecided about whether this is the way to go about it. Making this change would signal to users that Phin is a high-level HTTP client targeting convenience and common use cases, and doing so could help differentiate it from Centra, which is actually something I appreciate.
Would love to hear others' thoughts about that.

@ethanent @XuluWarrior I agree this would be a good solution. The only comment I'd have is that the user may want to be able to inspect the response, which would get lost with this solution. Adding a class that extends Error and attaches the response to it would make the response available if the user wants to inspect it.

I like the idea. And agree with @jdforsythe on separate ClientError for 4xx and ServerError for 5xx.

I kind of put this PR down after my initial attempt worked well enough for me but I think it is still worth finishing.
I agree that extending Error with a NetworkError/ConnectionError? type would be useful.  Although, I'm not so sure about the benefit of having separate ClientError and ServerError.
There are client errors where simply retrying later has a chance of success (e.g. 425 "To Early" and 429 "To Many Requests").  And there are server errors which require client action (e.g. 505 "HTTP Version Not Supported" and 511 "Network Authentication Required")
As a developer, I think I would be more interested in the exact code than the category of response.

I'd forgotten that I'd created this PR but I still believe that "strict mode" really helps streamline code that uses phin.  (I'm happily using my fork for this reason)
Any thoughts as whether this can be merged in some form.  I'm happy to put the additional effort to address review comments.


Revert "Merge pull request #623 from jonesmz/ci-analyzer"

This reverts commit 674443445dc33fc3729efafd0c4e89119bcab9f6, reversing
changes made to 8e9d3e7ecc92ab93500fc8236a0eb2dd1e9a31d5.

See #633

I've checked all CI log just in case. No errors and warnings detected.


Add support for XL9535 relay board

Is your feature request related to a problem? Please describe.
It would be nice if mqtt-io supports XL9535 relay board.
Describe the solution you'd like
Normal integration like other I2C PCF8574 or PCF8575 gpio expanders.
Describe alternatives you've considered
Write the code...
Additional context

I bought a great relay board, with 16 relays, which is enough for all my needs. I would like to have simple and convenient integration.
More info:

Python module and description https://github.com/mcauser/micropython-xl9535-kxv5-relay
Datasheet https://www.lcsc.com/datasheet/lcsc_datasheet_2211110930_XINLUDA-XL9535_C561273.pdf
ESPHome integration https://github.com/esphome/esphome/tree/857a3dcf72d74fa53fba2f6c63f2ceaaec3e5e59/esphome/components/xl9535
Discussion on micropython https://github.com/orgs/micropython/discussions/13505

It seems XL9535 is logically the same chip as PCA9535/TCA9535

Hi @flyte @mschlenstedt @BenjiU
I'd like to work on support of XL9535/PCA9535/TCA9535 chip and prepare PR. Could you please point me how to add a new device?
It seems there is no existing python "driver" published in pip. Could low level code be placed in this repo or should I make separate package?

Some kind of nodejs driver https://github.com/isky04/node-red-contrib-xl9535

I recently started to add some sensors to MQTTIO. As far as I know there's no developer documentation. I looked at the existing modules, take one which is similar to the one I would like to add and started and tested on a life system.
You'll finde the code here:
Sensors: https://github.com/flyte/mqtt-io/tree/develop/mqtt_io/modules/sensor
Input/Outputs: https://github.com/flyte/mqtt-io/tree/develop/mqtt_io/modules/gpio


demos in different languages

could we get an english only demo in additional to the current demo?

Updated. You may sync the latest code on the master branch.


Option to allow page to load when its a 404 error

Would it be possible to add the option to continue to load even if its a 404 error? I have custom error pages that I would also like to use with smoothSate.

That sounds like a routing issue rather than Smoothstate.

+1

+1

Actually, just found that removing the debug option seems to fix this.

@CHEWX Could you elaborate? How do you imagine a routing-based solution to this problem? You do realize that it is smoothState that is doing the actual ajax requests, and the 404 condition is only known to have occurred after smoothState receives the response? Where/when does a client-side router plug into this? Before you click on a bad link, it is too early. Next time smoothState grants you the opportunity to alter its behavior, it is already too late.

@rulatir Ok putting aside the logic, so you are saying if the OP turned off smoothState and clicked a dead link then it routes correctly to the custom 404, yet if they turn smoothState back on, it doesn't route correctly? I can't see that being the case. Unless I am missing something here...
If you purposely change a link in the DOM, smoothState routes correctly to a 404 on all my websites.

@CHEWX Do you use a "pseudo 404" page, i.e. one that says "We're sorry!", shows site map / search box / whatever but is actually served with HTTP response code 200 rather than 404? If that is the case then of course it works, because it's just 200 to smoothState and the underlying $.ajax(). But if the server serves that page with real HTTP/1.1 404 Not Found, then it definitely break, at least for me.

What I am saying is that when the $.ajax() request issued by smoothState receives a response with status code 404, then smoothState treats it like an error and throws an exception.

@rulatir Yes exactly, so like I said, it's a routing issue, not smoothState. If you were to have a custom 404, then it would have to have a 200 response code, because you cannot style a 404 response.

Adding this functionality to smoothState, isn't what smoothState is for. Plugins like this should handle a single job. Not routing issues. Because the way I see it, if you weren't using smoothState, then you'd have to handle the 404 response. So why when using smoothState should you let the plugin handle this route.
It's a pretty simple option to add in though. Although I don't personally think this plugin should handle such a use-case.

@CHEWX no, you are wrong, a custom 404 page should be served with 404 response, it's a "best practice" that smoothState should handle. The HTTP standard defines some error responses as displayable to user, and serving a 400+ response code with a HTML body is the right way to do it.
The simply stated requirement for smoothState is that it shouldn't break websites. If I don't use smoothState and I can see the HTML document served in the response body of a 404 response, then I should be able to see the same with smoothState.


Remove usage of mozFillRule

The non-standard mozFillRule has been removed in Firefox 51 [1, 2]. Instead, a parameter of the standard methods should be used. Note that this is supported in all major browsers for a long time now, so there should be no need keeping this Firefox-specific code around.
[1] https://developer.mozilla.org/en-US/Firefox/Releases/51
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=826619
This patch is slightly easier to review with https://github.com/mozilla/pdf.js/pull/8006/files?w=1

/botio test


Tag filter on field value

Hi Mehmet,
I tried your leaflet-tag-filter-button. It works fine but can I to link the tags with the field's value of json?
Like in popup mode:
var popupContent = 'ID' + (feature.properties['ID'] !== null ? Autolinker.link(String(feature.properties['ID'])) : '') + 'DATI' + (feature.properties['DATI'] !== null ? Autolinker.link(String(feature.properties['DATI'])) : '') + 'POINT_X' + (feature.properties['POINT_X'] !== null ? Autolinker.link(String(feature.properties['POINT_X'])) : '') + 'POINT_Y' + (feature.properties['POINT_Y'] !== null ? Autolinker.link(String(feature.properties['POINT_Y'])) : '') + 'POINT_Z' + (feature.properties['POINT_Z'] !== null ? Autolinker.link(String(feature.properties['POINT_Z'])) : '') + '';
I'd like use this
(feature.properties['DATI']
for tag. 'DATI' is the field name il table of content linked json. 'DATI' is not null and can be two or more values.
I tried this:
but doesn't work.
Thanks
Valerio

How do you create a marker?

by QGIS plugin called QGIS2leaf.
Usually I can use feature.properties.field_name form like:
FILTER
L.geoJson(someFeatures, {
filter: function(feature, layer) {
return feature.properties.show_on_map;
}
}).addTo(map);

i hope fallowing code helps you.
L.geoJson(jsonObject, {
pointToLayer: function(feature, latlng) {
L.marker(latlng, {
tags: feature.properties['DATI']
});
}
});

Hi Mehmet,
tks for you suggest code.
I have this zip leaflet simple map. The countries are for zone nord, centre
and sud. Filter button is ok but I can't link the fiter to the ['zone']. I
added the shapefile.
thanks so much
best
valerio
On Mon, Sep 19, 2016 at 7:05 PM, Mehmet Aydemir<EMAIL_ADDRESS>wrote:

i hope fallowing code helps you.
L.geoJson(jsonObject, {
pointToLayer: function(feature, latlng) {
L.marker(latlng, {
tags: feature.properties['DATI']
});
}
});
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/maydemirx/leaflet-tag-filter-button/issues/6#issuecomment-248054754,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADof_fufMG_st87qY7wYCa5Fdz1srzprks5qrsD1gaJpZM4KAW3_
.

I have edited your code and i added fallowing line to end of your pop_country function.
layer.options.tags = [feature.properties.zone];
And it's working.

tks so much man now it works very well it's true
http://vdlmap.com/leaflet-filter/
Now I just try if it works with more layer (I mean more json) with same
filter-field (the field "zone"). I'll write you
Bye
Valerio
On Thu, Sep 22, 2016 at 12:25 PM, Mehmet Aydemir<EMAIL_ADDRESS>wrote:

I have edited your code and i added fallowing line to end of your
pop_country function.
layer.options.tags = [feature.properties.zone];
And it's working.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/maydemirx/leaflet-tag-filter-button/issues/6#issuecomment-248864228,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADof_R_P7ejDuN-3F_50PM2g9jCY-40mks5qsleFgaJpZM4KAW3_
.


Updated Airtable README

Tell us what you do here

[ ] implementing verified source (please link a relevant issue labelled as verified source)
[ ] fixing a bug (please link a relevant bug report)
[X ] improving, documenting, customizing existing source (please link an issue or describe below)
[ ] anything else (please link an issue or describe below)

Relevant issue
issue #
More PR info

please review @AstrakhantsevaAA


DOC: Improving "Spectral Analysis" section in User Guide

This is a followup for the suggestion of @mdhaber: It discusses key caveats of spectral analysis on the example of a sine signal with fixed duration. The following aspects are briefly addressed:

Comparison of energy, power and Fourier transform of a continuous time signal and a sampled signal.
Signal energy and power in the time domain and the frequency domain
Typical spectra scalings, e.g., magnitude (V), spectral power density (V²/Hz), etc.
Zero-padding and windowing to suppress spectral leakage
Spectral phase and filter delay as well as numpy.unwrap
Scaling of periodogram versus welch

Given the broad range of topics, I intentionally glossed over a lot of key concepts and important details. I would appreciate feedback, if there are any parts which would need to be more detailed.
PS: Does anybody happen to know an authoritative reference on naming spectral representations (e.g., "spectrum", "energy spectral density", etc.)? I followed the Spectral density Wikipedia article, but the naming is not very consistent.
[skip actions] [skip cirrus]

A rendered version of the new "Spectral Analysis" section can be found here (The current version can is here). The CI failures seem unrelated to this PR:

If you merge main, the CI docs build should work.

I tried merging main, but there are still unrelated failures...

Added link to "Spectral Analysis" section in docstrings of csd(), periodogram() and welch() and changed  the term "power spectrum" to "squared magnitude spectrum" in periodogram() and welch(). This makes it the naming consistent with Wikipedia and the "Spectral Analysis" section.
Closes #18089

Thanks a lot for the good feedback, @larsoner! I think all your points are addressed now. The new version of the rendered docs can be found here.

Seem like pretty straightforward improvements so in it goes, thanks @DietBru !


Weird behavior for sparse multiply with dense.

Hi,
I have a large csr_matrix X of size 25000x392000 with about 0.08% non-zero entries, and I have a dense vector v of size 1x392000 and I want to multiply each row of X by.  I would expect this to be extremely fast since row indexing for csr is fast, but I keep getting Killed: 9 when calling X.multiply(v).  I verified that three other methods of doing this multiply (creating a diagonal lil_matrix from v and using a matrix multiplication, doing the row-wise multiply manually in python to construct the data matrix for the output csr_matrix, and converting v to a csr_matrix before calling X.multiply(v)) all work.
I assume that the issue is that it's trying to allocate a 25000x392000 dense matrix for the output, but that behavior doesn't make any sense.  An element-wise multiply between a sparse matrix and anything will still be sparse.  Can anyone verify that this is actually the issue and, if so, if it might be possible to change the behavior of multiply to have sparse output for all input types?  The second method I mentioned above is, by far, the fastest, but I suspect it could be even faster if it happened in the backend.
Thanks,
Shawn

Fixed by https://github.com/scipy/scipy/pull/6750?

I don't think so, unless it's not in the latest stable release.  I just upgraded and had the same issue.  I haven't used SciPy much - are there nightlies I could try that might have the fix?

It's not in the latest stable release yet.
Luckily, the 0.19 release is coming soon™, so you can either:

wait a bit (a few weeks, probably) and get the fix then
build scipy from the current master branch
copy the changes from gh-6750 directly into your installed scipy/sparse/compressed.py file

(The last option is a hack, of course, but it avoids having to set up the required tools for building scipy from source.)

I think for now using my python indexing hack will be sufficiently fast to achieve what I want for now.  I will have to remember to change it when 0.19 comes out.  Thanks for the info!


optional: add equal_to and not_equal_to operators

also minor change to string_view.h (I guess it doesn't need to be executable)

Codecov Report

Merging #640 into master will increase coverage by 0.03%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master    #640      +/-   ##
=========================================
+ Coverage   71.06%   71.1%   +0.03%
=========================================
  Files          50      50
  Lines        7019    7025       +6
=========================================
+ Hits         4988    4995       +7
+ Misses       2031    2030       -1

Impacted Files
Coverage Δ

include/pistache/string_view.h
100% <ø> (ø)
:arrow_up:

include/pistache/optional.h
92.77% <100%> (+0.56%)
:arrow_up:

src/common/reactor.cc
80.64% <0%> (+0.4%)
: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 97d0cb3...7bc34bd. Read the comment docs.

Pushed to unstable PPA. Thanks @muttleyxd.


This is not really an issue but could You give me a tutorial on how to run it on BRATS dataset?

This is not really an issue but could You give me a tutorial on how to run it on BRATS dataset?

@michalstepniewski , I have been getting requests for the same for quite a while now. I will upload the example notebook shortly,  using BRATS2018 dataset.
P.S.: Sorry for replying late, had a pile of unread emails since last few days. Just saw this.

@michalstepniewski , please have a look at Example_on_BRATS2018.ipynb


Access Current Month

How can i access the current month from first day to last day using a loop ??? i need to change the individual date title color. For Example if i change the color of 15th march title color black to yellow then what should i do ??? (15th march from Calender Image). It will be a great help for me. Thanks in advance.

Here is the documentation
Please download the example and refer to Delegate Appearance Example


[WIP] Some cartridge extensions

The major work here is to add support for using TautomerQuerys and MolBundles (like what you get from the MolEnumerator) as queries in the cartridge.
Overview of what's here:

adds an xqmol (extended query molecule) type to the cartridge which can be used in substruct queries with molecules. In C++ this is a variant type which can hold a standard RWMol (for future use cases), a MolBundle, or a TautomerQuery.
add mol_to_tautomerquery() and mol_enumeratequery() to the cartridge
add boost::serialization support to the MolBundle. This could be pulled out into a separate PR

To think about pre-merge:

Mabye the XQMol C++ class can move out somewhere into the general API. Having an object which provides a unified interface to substructure search may help simplify code.
How do the xqmols interact with the new query functions which use the generic groups?

Things that need to be taken care of pre-merge:

[ ] the new stuff needs to be added to the version update script
[ ] testing of the MolBundle serialization in the C++ layer
[ ] exposure of the MolBundle serialization to Python
[ ] more testing of the new functions from SQL. Particularly cases where the input molecules don't have  tautomers or aren't enumerable objects
[ ] Some way of combining the enumeration and the tautomer queries for
[ ] Ensure that this can interact with AdjustQueryProperties()
[ ] the XQMol JSON I/O code should also work when it holds a molecule (just use CXSMILES)

Other known shortcomings, I don't think all of these need to be resolved for a merge:

No integration with the indexing system. Making this work has eluded me so far.

@bjonnh-work : you may be interested in this work too.


Provide a fully-fledged release

I use bin which allows installing and easy updating binary files from Github. But I cannot install nvui with it because there is no releases/latest page:
https://api.github.com/repos/rohit-px2/nvui/releases/latest

Looks like if I remove the pre-release label it works properly. I added a new release but it might take a while for the actions to build it.

Thank you very much! Great app!


Parser can not find types when multiple files are used

Issue workflow progress

Progress of the issue based on the
Contributor Workflow

[ ] 1. The issue provides a reproduction available on GitHub, Stackblitz or CodeSandbox

For example, you can start off by editng the
'basic' example on Stackblitz.

Please make sure the graphql-eslint version under package.json matches yours.

[ ] 2. A failing test has been provided

[ ] 3. A local solution has been provided

[ ] 4. A pull request is pending review

Describe the bug
When using a single file per type (i.e. schema.graphql, query.graphql, mutation.graphql, myType.graphql, myOthertype.graphql, etc.) parser will not load, parse, or search files for types but instead throws an error.  The only workaround is to combine every type of a very large schema into one monster file (uggghhh).
To Reproduce Steps to reproduce the behavior:
Create a file called Schema.graphql:
schema {
query: Query
}
Create a file called Query.graphql
type Query {
myType(id: String) : MyType
}
Create a file called MyType.graphql
type MyType {
id: string
name: string
}
create .eslintrc.js (modify files property to point to folder with .graphql files created from above)
module.exports = {
"overrides": [
{
"files": [".js"],
"processor": "@graphql-eslint/graphql"
},
{
"files": [
"./schema/**/.graphql"
],
"parser": "@graphql-eslint/eslint-plugin",
"parserOptions": {
"schema" : "./schema/schema.graphql"
},
"plugins": ["@graphql-eslint"],
"extends": "plugin:@graphql-eslint/schema-recommended",
}
]
}
run linter
It's a crap shoot if the files get loaded properly or not.  It seems like if you get lucky and the files are loaded in a good order it works.  However, as you get more files and files get edited, deleted, new files added, etc. the likely hood of being lucky with loading all files in order diminishes.
Workaround is to create one ugly uberfile with the entire schema (uggghhh)
Expected behavior
All files should be read and scanned properly for linting the way the codegen tool works.
Environment:

OS:
@graphql-eslint/eslint-plugin: "^3.16.0"
Node.js:

Additional context

Please create a minimal reproduction repo

closed due silence


Crash on start, seems to be caused from the mod

I have quite a handful of other mods enabled. They're all up-to-date and on the same 1.12.2 version.
latest.log
or this, if easier.
https://hastebin.com/uzoqupocot.md

Why do u got nei and jei installed??? only one is needed while jei is the successor of nei
im not quiet familiar with reading java errors, but if get it right, nei and jei causes a conflict resulting in an crash / error
Caused by: java.lang.NullPointerException
    at net.minecraft.stats.RecipeBook.unlock(RecipeBook.java:27)

the issue is the latest update JEID.
Also, you need to use JEID alongside NEID. NEID worlds are not compatible with JEID.


Added a command parameter in configuration file according to the code requires

The command  enable-grpc-gatewaycan be configured on the configure file and the statement c.PreVote = true should be changed to the same style as the code c.EnableGRPCGateway = defaultEnableGRPCGateway

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: elitecodegroovy:x: HimbissYou have signed the CLA already but the status is still pending? Let us recheck it.

Codecov Report

Merging #1939 into master will increase coverage by 0.27%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #1939      +/-   ##
==========================================
+ Coverage   77.88%   78.15%   +0.27%
==========================================
  Files         170      170
  Lines       16815    16813       -2
==========================================
+ Hits        13097    13141      +44
+ Misses       2712     2669      -43
+ Partials     1006     1003       -3

Impacted Files
Coverage Δ

server/config/config.go
82.68% <100%> (+0.68%)
:arrow_up:

server/kv/etcd_kv.go
75.32% <0%> (-9.1%)
:arrow_down:

server/region_syncer/client.go
77.63% <0%> (-5.27%)
:arrow_down:

server/grpc_service.go
57.75% <0%> (+0.43%)
:arrow_up:

server/schedulers/hot_region.go
88.74% <0%> (+0.66%)
:arrow_up:

pkg/btree/btree.go
86.94% <0%> (+0.8%)
:arrow_up:

client/client.go
70.02% <0%> (+1.25%)
:arrow_up:

server/member/leader.go
78.57% <0%> (+2.04%)
:arrow_up:

pkg/etcdutil/etcdutil.go
88.4% <0%> (+5.79%)
:arrow_up:

... and 3 more

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 099369e...f02add6. Read the comment docs.

Thanks. Please sign CLA @Himbiss

@Himbiss may be wrong account I ever commit.  I don't know the user Himbiss.

Sorry @elitecodegroovy , as we have explained in https://github.com/pingcap/pd/pull/1933, you need to split the commits.


X Error of failed request:  BadWindow (invalid Window parameter)

run for a quick demo, error has happened:
020-09-23 21:54:17,325   INFO  ==> Loading parameters from checkpoint pointpillar_7728.pth to CPU
2020-09-23 21:54:17,407   INFO  ==> Done (loaded 127/127)
2020-09-23 21:54:17,477   INFO  Visualized sample index: 	1
X Error of failed request:  BadWindow (invalid Window parameter)
Major opcode of failed request:  40 (X_TranslateCoords)
Resource id in failed request:  0x0
Serial number of failed request:  9
Current serial number in output stream:  9

I have also met this error。 please tell me how to fix?


[Feature Request] Add drawing information to image

Hello, it's rare to find a tool that works so well, thank you.
Is it possible to combine the two functions, PNG export and JSON save? To make a single png file that contains both info in the same file, like draw.io / diagrams.net does.
This makes for a single, editable file.
What's more, if this function is integrated directly into a shortcut like "alt + shift + c". That's really great!
Thanks for reading my proposal.
I don't write well in English, so I use DeepL to help me translate. There may be errors in my text

The functionality you seek is already built-in!
There is no single shortcut for this action, but you can use "cmd + shift + e" to export an image and toggle "Embed scene" as visible in the screenshot, to achieve "combine the two functions, PNG export and JSON save".

Thank
Le mer. 1 mai 2024, 22:23, Marcel Mraz @.***> a écrit :

The functionality you seek is already built-in!
There is no single shortcut for this action, but you can use "cmd + shift

e" to export an image and toggle "Embed scene" as visible in the
screenshot, to achieve "combine the two functions, PNG export and JSON
save".
image.png (view on web)
https://github.com/excalidraw/excalidraw/assets/20387666/c08b7020-1c1e-4e47-9d95-cc326229c2c5

—
Reply to this email directly, view it on GitHub
https://github.com/excalidraw/excalidraw/issues/7969#issuecomment-2089074536,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXJG33GP22ENP2YUQT3PPV3ZAFFK3AVCNFSM6AAAAABHCDRYY6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAOBZGA3TINJTGY
.
You are receiving this because you authored the thread.Message ID:
@.***>


docs(i18n): New Crowdin updates

:tada: This PR is included in version 4.7.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Committing My Notes

TO help flush out the growth maturity and decline session.

Thanks Sean. I'll merge it later.


put the session in the packet handler map directly (for client sessions)

As of #2640, Version Negotiation packets are now handled in the session. This allows us to put the session in the packet handler map directly, without the need to route packets through the client first.

Increasing test coverage by deleting code. There's no better way to do it :)


[Spec Deviation] map keyword has been special cased in qualified-identifier parsing

Description:
$subject.
e.g. both xml:map() and xml:'map() are allowed currently.
But according to the spec xml:map() should not be allowed.

Related spec issue: https://github.com/ballerina-platform/ballerina-spec/issues/34

We seem to have special-cased it parseIdentifier() also.
https://github.com/ballerina-platform/ballerina-lang/blob/fdb8d28e9454125877cb5405043dd92c7faf754b/compiler/ballerina-parser/src/main/java/io/ballerina/compiler/internal/parser/BallerinaParser.java#L604-L611


Add Celery worker configuration to How To guide in docs

Hey @conceptualshark let me know if you'd like to touch base on exactly what the steps required to configure a worker are. I've added an extra configuration override today that would be worth including.


Add vulnerability detection Github Action to scan built docker images

@g7morris used Syft and Grype to scan the images for vulnerabilities in response to the log4j issue. Look into how to integrate these tools so checks are performed:

For every push if it is a cheap operation.
For every release.
Perhaps also weekly just incase new vulnerabilities are discovered as the repository doesn't change that often at this point.

Initial thought I can integrate it with the Gradle plugin so that it can be run both locally and with github actions.
Reference for Github actions. https://github.com/marketplace/actions/anchore-container-scan

@nigelgbanks Anything I can do here to help move this along?

https://github.com/Islandora-Devops/isle-buildkit/pull/183 should cover it. It generates reports that one can download on the build page, for example https://github.com/Islandora-Devops/isle-buildkit/actions/runs/2030133280; The link to grype reports. https://github.com/Islandora-Devops/isle-buildkit/suites/5774283956/artifacts/192302600
They are markdown files like the following:
NAME               INSTALLED     FIXED-IN   VULNERABILITY        SEVERITY
commons-io         2.6                      CVE-2021-29425       Medium
commons-io         2.6           2.7        GHSA-gwrp-pvrq-jmwv  Medium
flock              2.37.4-r0                CVE-2010-3262        Medium
guava              25.1-android             CVE-2020-8908        Low
guava              25.1-android             GHSA-5mg8-w23w-74h3  Low
jsoup              1.12.1        1.14.2     GHSA-m72m-mhq2-9p6c  High
jsoup              1.12.1                   CVE-2021-37714       High
libcrypto1.1       1.1.1l-r7     1.1.1n-r0  CVE-2022-0778        High
libldap            2.6.0-r0                 CVE-2015-3276        Medium
libretls           3.3.4-r2      3.3.4-r3   CVE-2022-0778        High
libssl1.1          1.1.1l-r7     1.1.1n-r0  CVE-2022-0778        High
postgresql-common  1.0-r0                   CVE-2019-3466        High
tomcat-jdbc        9.0.58                   CVE-2016-6325        High
tomcat-jdbc        9.0.58                   CVE-2016-5425        High

Though there isn't a weekly setup or notification system at this point. The pull request was just the first pass in generating the reports on every push so that a pull request reviewer could use that information to see if some new vulnerability has been added. Further automation can be handled post release.

Pull request is merged, any further improvements can be raised as new tickets.


2.1.0: Missing chain of trust for PGP public key A18FE9F6F570D5B4E1E1853FAA7B5406547AF062

Hi! I'm packaging python-geopy for Arch Linux.
To verify the sources I use the PGP signature that is shipped with each release of geopy.
Previously the signatures have been created using the keypair matching the public key BE3D633AB6792715ECF34D742D3B9C1712FF84F7, but for 2.1.0 a new key (A18FE9F6F570D5B4E1E1853FAA7B5406547AF062) has been used.
However, the new key is missing a chain of trust (it is not signed by the old key and it seems to be on none of the current keyserver infrastructure).
Additionally, there is an added Note line about the old key in the public key that can be retrieved from github itself:
Note: The keys with the following IDs couldn't be exported and need to be reuploaded 2D3B9C1712FF84F7

It would be awesome to sort this out, as I am otherwise not able to upgrade the package, due to not being able to verify whether a supply chain attack is in motion or not.

Hi, sorry for the inconvenience.
The previous key BE3D633AB6792715ECF34D742D3B9C1712FF84F7 has been expired on 2020-07-08, thus I started using a new key A18FE9F6F570D5B4E1E1853FAA7B5406547AF062.

and it seems to be on none of the current keyserver infrastructure

The key is uploaded to the keys.openpgp.org keyserver. Let me know if you need me to upload the key somewhere else as well.

However, the new key is missing a chain of trust (it is not signed by the old key

I'm not sure how this should have been properly addressed in PGP, but here is a message signed by that older expired key:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Hi, I'm Kostya Esmukov and I confirm that the A18FE9F6F570D5B4E1E1853FAA7B5406547AF062 PGP key belongs to me
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEvj1jOrZ5JxXs8010LTucFxL/hPcFAl/3DkMACgkQLTucFxL/
hPe1ug/9E2XZD3J6xm0H/HyY/Gjgu1PlMHWpIgIydtGpa6iHYLPMtqZA8lqrEOZQ
GBKLOFRrgB924iLz/fIb0seJEaXmj1HWjjn22by0S7hboMTyWRtUIWMh91PLMJRn
BYq0f7+8dcRL4DDU0vv8cLaeK1bsxNR/cX4MDTu7EUpdAB+SnvdhjBboQ4pPMZtu
+Fg+c91WX7k/VfER16wOvFjRf30CFGCH/ImGgGPGVLIpoecxh1sJvSI1m8smADd1
Ee+ArOaU9JKAm46swj1WmyOOxFP1knr31DPQl1DU6z0XD4mpSpCM8hc55/X6LvBK
16olY7d7TtuHy9tpWcMT782Lg3zqdH+GiZKU6502KL8ALbQjrMzKOqgg7yW1CW5G
QGPjdo/S9XIm1J8h4W5ZSXuQVI/OvIdCVumnN6uHSG/01uC/TUXTY2wxascXOLhg
9flibJVaXqLuy0YJfi9B6OTj6SbmCQXoYeNJ0BkT5VOAXTszIWX56M42qEksGhAt
2lAtDGIaRSf0cmUxLuVbBuQdmvTDjrIwBVMSiFXniBOUt3l+dC+iqz62CPB0SFg3
w5QF9oP4IIQX8l1rHOhj9E2+mhEmw9mSkMELAEAhP0yfyEhUsVPYyNXbxTJW5itV
/ZDOaq69bJ9f0x7n1Y+nTdvlJ4iv25yMtPBFhL+4M6ie27dA1zM=
=Hkjv
-----END PGP SIGNATURE-----

Additionally, there is an added Note line about the old key in the public key that can be retrieved from github itself:

That's strange. I see both keys added in GitHub. The public key returned by https://github.com/KostyaEsmukov.gpg is correct.
I have just re-uploaded the current key, but the Note doesn't seem to go away. Perhaps it needs some time to update.

Hi, sorry for the inconvenience.
The previous key BE3D633AB6792715ECF34D742D3B9C1712FF84F7 has been expired on 2020-07-08, thus I started using a new key A18FE9F6F570D5B4E1E1853FAA7B5406547AF062.

and it seems to be on none of the current keyserver infrastructure

The key is uploaded to the keys.openpgp.org keyserver. Let me know if you need me to upload the key somewhere else as well.

However, the new key is missing a chain of trust (it is not signed by the old key

I'm not sure how this should have been properly addressed in PGP, but here is a message signed by that older expired key:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Hi, I'm Kostya Esmukov and I confirm that the A18FE9F6F570D5B4E1E1853FAA7B5406547AF062 PGP key belongs to me
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEvj1jOrZ5JxXs8010LTucFxL/hPcFAl/3DkMACgkQLTucFxL/
hPe1ug/9E2XZD3J6xm0H/HyY/Gjgu1PlMHWpIgIydtGpa6iHYLPMtqZA8lqrEOZQ
GBKLOFRrgB924iLz/fIb0seJEaXmj1HWjjn22by0S7hboMTyWRtUIWMh91PLMJRn
BYq0f7+8dcRL4DDU0vv8cLaeK1bsxNR/cX4MDTu7EUpdAB+SnvdhjBboQ4pPMZtu
+Fg+c91WX7k/VfER16wOvFjRf30CFGCH/ImGgGPGVLIpoecxh1sJvSI1m8smADd1
Ee+ArOaU9JKAm46swj1WmyOOxFP1knr31DPQl1DU6z0XD4mpSpCM8hc55/X6LvBK
16olY7d7TtuHy9tpWcMT782Lg3zqdH+GiZKU6502KL8ALbQjrMzKOqgg7yW1CW5G
QGPjdo/S9XIm1J8h4W5ZSXuQVI/OvIdCVumnN6uHSG/01uC/TUXTY2wxascXOLhg
9flibJVaXqLuy0YJfi9B6OTj6SbmCQXoYeNJ0BkT5VOAXTszIWX56M42qEksGhAt
2lAtDGIaRSf0cmUxLuVbBuQdmvTDjrIwBVMSiFXniBOUt3l+dC+iqz62CPB0SFg3
w5QF9oP4IIQX8l1rHOhj9E2+mhEmw9mSkMELAEAhP0yfyEhUsVPYyNXbxTJW5itV
/ZDOaq69bJ9f0x7n1Y+nTdvlJ4iv25yMtPBFhL+4M6ie27dA1zM=
=Hkjv
-----END PGP SIGNATURE-----

Additionally, there is an added Note line about the old key in the public key that can be retrieved from github itself:

That's strange. I see both keys added in GitHub. The public key returned by https://github.com/KostyaEsmukov.gpg is correct.
I have just re-uploaded the current key, but the Note doesn't seem to go away. Perhaps it needs some time to update.

I have just re-uploaded the current key, but the Note doesn't seem to go away. Perhaps it needs some time to update.

Oh, I misread the Note. It mentioned the older key, not the new one. Re-uploaded the older key and the Note has gone. Now both keys seem to be present in the output of https://github.com/KostyaEsmukov.gpg.

I have just re-uploaded the current key, but the Note doesn't seem to go away. Perhaps it needs some time to update.

Oh, I misread the Note. It mentioned the older key, not the new one. Re-uploaded the older key and the Note has gone. Now both keys seem to be present in the output of https://github.com/KostyaEsmukov.gpg.

Hi @KostyaEsmukov!
Thanks for the prompt reply!

I'm not sure how this should have been properly addressed in PGP, but here is a message signed by that older expired key:

It is possible to sign another pubkey using your own keypair. In this case you would sign your new key using your old key before revoking the old key. Here is an okay writeup for how to sign a pubkey.
The signed message you provided also works for this specific use-case, but signing your own key is the more general approach to introducing a new key. :)
The SKS infrastructure unfortunately has been in bad shape for a long time, so retrieving keys (and their signatures) can sometimes be quite the hassle. The new way to go about this is to use WKD, which makes the public keys available per domain.
I will close this ticket as my use-case is solved with your provided signed message. However, I suggest still signing your new key with your old key and uploading the new public key again all over the place (which will include the signature) and potentially also looking into WKD to not have to rely on the SKS infastructure in the future anymore.

Hi @KostyaEsmukov!
Thanks for the prompt reply!

I'm not sure how this should have been properly addressed in PGP, but here is a message signed by that older expired key:

It is possible to sign another pubkey using your own keypair. In this case you would sign your new key using your old key before revoking the old key. Here is an okay writeup for how to sign a pubkey.
The signed message you provided also works for this specific use-case, but signing your own key is the more general approach to introducing a new key. :)
The SKS infrastructure unfortunately has been in bad shape for a long time, so retrieving keys (and their signatures) can sometimes be quite the hassle. The new way to go about this is to use WKD, which makes the public keys available per domain.
I will close this ticket as my use-case is solved with your provided signed message. However, I suggest still signing your new key with your old key and uploading the new public key again all over the place (which will include the signature) and potentially also looking into WKD to not have to rely on the SKS infastructure in the future anymore.


Example code showing how to remove the violation of the dependency inversion principle described on page 68

I kind of doubt if this belongs here, but I though I'd try.
On page 68, you mention a violation of the dependency inversion principle. A solution to fix it is also described, but I can't quite understand it. Would it be possible to add some code showing the solution described in the book? It would make it easier to wrap my head around it.
Of course, only if you have the time. I fully understand and respect that you might be very busy.
Thank you so much for a good read this far, just finished part 1!

Hi @petertflem,
The information you are looking for is indeed missing.
On page 68 we describe the following fix:

This means that to fix the violation, we need an additional two extra projects in our solution—one for the isolated UI layer without the Composition Root and another for the IProductService abstraction that the UI layer owns.

After revisiting this section again, I now realize that the text is confusing, because a more convenient solution is to extract the service implementations to a different project, instead of extracting the service abstractions.
To show this in action, I created this commit for you on this branch.
It adds two new projects:

Commerce.Domain.Services (with service implementations)
Commerce.Web.Presentation (with Controllers and View Models)

The projects now have the following dependencies:

Commerce.Web: depends on everything because this is the Composition Root
Commerce.Web.Presentation: only depends on Commerce.Domain (depends on IProductService).
Commerce.Domain.Services: only depends on Commerce.Domain (implements IProductService).
Commerce.SqlDataAccess: only depends on Commerce.Domain.
Commerce.Domain: depends on nothing (defines IProductService)

I hope this answers your question.
Steven

Hi, @dotnetjunkie!
Thank you so much for your time and reply!
The way I understood the problem was that the Dependency Inversion Principle states abstractions should be shipped with their owning modules, and thus IProductService should be shipped with the UI layer.
I've drawn out boxes and arrows of the solution you mention above, and I need some extra help understanding it.

The IProductService still lives in a project owned by the domain; Commerce.Domain. Does that mean it still violates the DI Principle?
If the IProductService was defined in Commerce.Web.Presentation, which is the consumer, then replacing the UI layer would break the implementation of the interface. ProductService would no longer find the interface it's implementing. Is this the desired outcome?
The UI layer is still depending on the domain layer for IProductService, like it originally did. I don't quite understand the benefits of moving the implementations into their own project versus having them where they were. How does this improve the loosley coupled design? How is this different from before?
If two different projects wants to consume the same interface, and if it should be placed with the consumer, with which consumer should it be placed? In this scenario, it seems neat to keep it in the domain layer, even though it violates the DI Principle. It would make it accessible to all. Or is the point that there won't be two equals interfaces, because use cases will likley be at least slightly different?
I would also be very grateful if you could touch on why we need a UI layer isolated from the Composition Root to achieve the DI Principle in this scenario. I like the idea of splitting out the composition root into it's own service so that I can easily reuse it if I remove the current UI layer. But, I'm not sure why it was needed in this scenario.

Again, thank you so much for your time. The book so far has touched on subjects that are relevant nearly every day at work.
Kind regards
Peter

Hi,
I think it's best to forget about my previous example. I cooked this example up to quickly, and you are right: it doesn’t solve the DIP violation at all. And here's a TLDR; IMO you shouldn't try to solve this violation, because in most applications there will be little to no benefits. It just adds complexity.

The way I understood the problem was that the Dependency Inversion Principle states abstractions should be shipped with their owning modules, and thus IProductService should be shipped with the UI layer.

That's indeed what the DIP prescribes.

The IProductService still lives in a project owned by the domain; Commerce.Domain. Does that mean it still violates the DI Principle?

You are correct; the DIP is still violated in the example.

If the IProductService was defined in Commerce.Web.Presentation, which is the consumer, then replacing the UI layer would break the implementation of the interface. ProductService would no longer find the interface it's implementing. Is this the desired outcome?

This is typically not a desired outcome, as you usually want the domain layer to be the center of your universe. Coupling it to (one specific) UI makes it quite hard to reuse that domain layer in a different context (for instance background processing or using a different UI).

The UI layer is still depending on the domain layer for IProductService, like it originally did. I don't quite understand the benefits of moving the implementations into their own project versus having them where they were. How does this improve the loosely coupled design? How is this different from before?

What I did in the repo is splitting the definition of domain objects and abstractions from the behavior that is part of the domain. This, for instance, prevents the presentation layer to accidentally depend on a service implementation. So it enforces that the Presentation layer depends on abstractions, not implementations. But apart from that, there is little to gain here.

If two different projects wants to consume the same interface, and if it should be placed with the consumer, with which consumer should it be placed? In this scenario, it seems neat to keep it in the domain layer, even though it violates the DI Principle. It would make it accessible to all. Or is the point that there won't be two equals interfaces, because use cases will likely be at least slightly different?

In case you have multiple consuming modules/assemblies, Robert C. Martin states in Agile Principles, Patterns, and Practices:

there are times when we don’t want the server to depend on the client […] In that case, the clients must agree on the service interface and publish it in a separate package.

Whether consumers can share the interface at all, depends on whether they tend to achieve the same thing (same use case) or not, as you already noticed.

I would also be very grateful if you could touch on why we need a UI layer isolated from the Composition Root to achieve the DI Principle in this scenario. I like the idea of splitting out the Composition Root into its own service so that I can easily reuse it if I remove the current UI layer. But, I'm not sure why it was needed in this scenario.

Having a separate project for the presentation objects prevents that project from requiring a dependency on the data
access layer. The project that contains the Composition Root needs a dependency on all projects in the system, because
it needs to compose its classes. Typically, however, I keep the presentation layer and Composition Root in the same project, because I don't mind having that project dependency. I just make sure that my presentation objects depend on abstractions, not implementations.
Another reason for splitting Composition Root from presentation is to prevent cyclic dependencies. This would happen, for instance, if you place the IProductService into the presentation layer. In that case the DL needs to depend on the presentation layer, but that project already depended on the DL. That won't compile.
But as I see it now, there are two ways of fixing this DIP violation:

Move the IProductService interface (and its DiscountedProduct data class) to an "interface" project managed by the presentation layer, e.g. Commerce.Presentation.Abstractions. Both Domain layer and Presentation Layer can depend on it.
Move the IProductService interface (and DiscountedProduct) to the Presentation Layer, but don't let ProductService implement that interface at all. Instead, inside the Composition Root, create an adapter for the IProductService interface and that depends on the ProductService implementation, which maps from the returned Domain Layer object to the IProductService's DiscountedProduct object. Problem with this approach is that it causes a lot of adapter code being written, all with their boilerplate mapping.

But here's an important point about DIP and SOLID principles: They are not a means to an end. You apply them in context and being 100% SOLID is not only undesirable, but also an unreachable goal. There will always be violations, but the trick is to manage them and fix the ones that impact maintainability. And as you already questioned, is this strict enforcement of the DIP worth the trouble in this case? I find it unlikely to be so. The Domain layer is the core of your application. Preventing the presentation layer from having a dependency on the domain is hardly ever very practical. What would be left of your UI without a domain. It's always built for a specific domain. There's nothing really to abstract. Mark and I might have mentioned this somewhere in the book, but I'm not sure where. But we did mention that out of pragmatism, we decided not to go through the extra mile of fixing this violation. But as you might see now, this wasn't only a practical solution to save some space and complexity in the book, I think it's a practical solution for most applications.
I hope this helps.

Hi, @dotnetjunkie,
Thank you so much for the elaborate reply! It helped clear things up, and I will keep this in mind. It is very informative.
Thanks again, truly appreciated.
Have a wonderful weekend!
Peter


Document how to access the ZenHub board

documentation about how to access the board (maybe in discussions)
the edit right should be limited

(to be reviewed internally)


Implement Sweep V0 for testing GC Sweep with shorter timers

Description
The next step in implementing/rolling out GC is to add a way for the team to Dogfood full GC Sweep, with much shorter timeouts than the typical 30 days.  This is called "Sweep V0".  When Sweep V0 is enabled, there will be ways to wrongly get content swept (e.g delete something then wait longer than the timeout), so beware of this.
But it lets us dogfood Sweep, both flushing out bugs in Container/Component code with how they reference objects, and also to see what the user/telemetry experience is when swept content is still referenced.
Reviewer Guidance
Still need to add tests, and think about if there are any other changes required (e.g. in Summarizer)

Note to self -- Here are some todo's as I'm reviewing this again myself:

[ ] Make sure we write all persisted props to metadata (e.g. buffer)
[ ] Think about what older client will do if it opens a SweepV0 doc (can we put something in that will crash it...?)
[ ] e2e test(s)
[ ] Double-check unit test coverage of diff
[ ] Move testMode up to all props, not just when sweepAllowed
[ ] //* comments
[ ] Maybe: replace prevSummaryGCVersion with (non-readonly) latestSummaryGCVersion in GcContainerConfig
[ ] Add proper options key for session expiry
[ ] Update GarbageCollectorLoaded log

I have to close this, it's not converging and I'll be out of the office the next 2 weeks. I'll pick it up when I return.
I am going to open at least one smaller PR from some of the progress I made here, e.g. for adding UTs, maybe some of the config stuff.


[Bug] NextChat cors SSRF 漏洞（CVE-2023-49785）

原文来自https://avd.aliyun.com/detail?id=AVD-2023-49785
漏洞描述
NextChat 是一个面向用户的GPT类应用程序，用户可以通过这个程序与GPT进行交互。2024年3月，互联网上披露CVE-2023-49785 NextChat cors SSRF 漏洞，攻击者可在无需登陆的情况下构造恶意请求造成SSRF，造成敏感信息泄漏等。

@fred-bf @fredliang44
This bug is pretty serious. If it's a private deployment, attackers could exploit it to access server resources without permission, causing security issues.

@fred-bf @fredliang44
This bug is pretty serious. If it's a private deployment, attackers could exploit it to access server resources without permission, causing security issues.

it easy to patch by adding validation url

Regarding this code snippet, it has a potential Server-Side Request Forgery (SSRF) vulnerability because it doesn't have proper validation or restrictions in place.

It's crucial to implement input validation and sanitization to prevent SSRF attacks, which can lead to unauthorized access to internal systems or other security risks.

Here are few options to to alleviate this issue:

As @H0llyW00dzZ said to add allow list to proxy service, we can add few default built in endpoint
Require user to set up authentication code for accessing CORS api, this will have a greater impact on existing deployment users

Here is a proposal to solve this issue:

add ENABLE_CORS to env vars, and set it to false by default;
add code validation just like /api/openai, if the CODE is set.

Here are few options to to alleviate this issue:

As @H0llyW00dzZ said to add allow list to proxy service, we can add few default built in endpoint
Require user to set up authentication code for accessing CORS api, this will have a greater impact on existing deployment users

Here are few options to to alleviate this issue:

As @H0llyW00dzZ said to add allow list to proxy service, we can add few default built in endpoint
Require user to set up authentication code for accessing CORS api, this will have a greater impact on existing deployment users

Here is a proposal to solve this issue:

add ENABLE_CORS to env vars, and set it to false by default;
add code validation just like /api/openai, if the CODE is set.

Additionally, it would be better to put the CORS host in an environment variable as well, so users can set their own host for CORS in different scenarios.
Example:
const ENABLE_CORS = process.env.ENABLE_CORS === 'true';
const CORS_HOST = process.env.CORS_HOST || 'https://yourdomain.com';

// Validate and sanitize the CODE input
const validatedCode = validateAndSanitizeCode(req.body.CODE);

// Apply CORS only if ENABLE_CORS is true
if (ENABLE_CORS) {
  res.setHeader('Access-Control-Allow-Origin', CORS_HOST);
  // Add other CORS headers if needed
}

// Use the validated code
// ...

Here's a strategy that is likely to have the least impact:
CORS is disabled by default, and for upstash and webdav functions that rely on the CORS interface. We could implement separate interfaces and put in the /api/ path, and only endpoint parameters are accepted to avoid the problem of proxy requests

Here's a strategy that is likely to have the least impact:
CORS is disabled by default, and for upstash and webdav functions that rely on the CORS interface. We could implement separate interfaces and put in the /api/ path, and only endpoint parameters are accepted to avoid the problem of proxy requests

[!NOTE]
Regarding this issue,

after reading through it, it appears to lower the attack vector, and it won't significantly affect other deployments such as Vercel or Kubernetes. It seems to primarily affect cloud deployments that lack proper configuration or have misconfigured settings.

What is the worst thing one can do with SSRF?
Certainly this can be easily used for spamming or probing.
My worst imagination is in certain environments, attacker could grab information about the server or even issue cred as the server

What is the worst thing one can do with SSRF?
Certainly this can be easily used for spamming or probing.
My worst imagination is in certain environments, attacker could grab information about the server or even issue cred as the server

That's why it's recommended to use containers instead of App Engine and run them in a more secure like Kubernetes (k8s). This approach can help mitigate potential risks associated with SSRF vulnerabilities.


Integration Test - Release - 2018/06/14 12:43:59

Auto create for integration test. AnotherAuthorUpdatedArticleFlow

@PRMergerTest3 : Thanks for your contribution! The author, @v-caxian, has been notified to review your proposed change.


Cinder or openFrameworks sample?

hello,
It would be great to have a sample for this frameworks.
Thank you

We would love to have some help on this.

Yep! I love Cinder and OF from my days in VC++ :-) MS OpenTech worked a bunch on Cinder and OF for ports to Windows Store (which will be beneficial for the UWP angle).
One of the main issues I can see is that we don't have yet a performant DirectX stack on the Rpi2. But it's there (already) on the MBM.
I'm checking with some of the folks that worked on Cinder and OF, and I'll report back.
@brucelane: what projects/samples do you have in mind?

@alecont : Andrew Bell from the Cinder team is working on the glNext branch which can use ANGLE but neeeds more time to add the ARM branch of it...
I'm a visual artist building my own VJ software, and I would like to use Cinder on the RPI2 on W10 to use it as a MIDI (or other devices) network router so send WebSocket messages.
It would imply maybe a node.js server (which is working fine right now)
Also a openGL fragment shader browser and/or editor for live-coding.
My goal is to create a remote UI for my software.

Hi，i'm using gpio of rpi2，but i can't find the interface of gpio in vs 2015rc, no matter I use c++ or c#.  What's the problem?
发自我的 Windows Phone

发件人: Bruce<EMAIL_ADDRESS>发送时间: 2015/5/2 23:46
收件人<EMAIL_ADDRESS>主题: [samples] Cinder or openFrameworks sample? (#2)
hello,
It would be great to have a sample for this frameworks.
Thank you

Reply to this email directly or view it on GitHub:
https://github.com/ms-iot/samples/issues/2

Hi @GQHD168
Chances are this is due to the fact that the original commit was referencing an older version of the SDK. I just merged a pull request that solves this issue.
Let me know if that works for you.


ngx-tree-select angular 10 issue

Hello,
I have migrated my angular 9 project to angular 10. After completing all necessary migration steps, I tried to do ng serve on my project and I started to get this error:
**ERROR in node_modules/ngx-tree-select/src/module.d.ts:11:56 - error TS2314: Generic type 'ModuleWithProviders' requires 1 type argument(s).
FYI: while migration from 9 to 10 I have used --force flag along with ng update

Facing Same issue after migrating project angular 9 to angular 10

@Crazyht I do hope this can be fixed as your module is exactly what I need, but we have already migrated our projects to Angular 10

Looks like this project is dead in the waters 😩

Guys, i fixed the error in #204 . Basically the ModulesWithProviders now requires a type, you can do it locally, as a temporary workaround, but i need the pull request to be merged and a new build to fix it for good :\

This issue is fixed by #204 and can now be closed

This issue is fixed by #204 and can now be closed

This great hear.. so we will just wait for the update via NPM.. thanks

I closed this issue only when build server want compile changes :P For the moment I get some error

I've seen the error in the build, it seems that in the actual angular version of this project, ModuleWithProviders must have a generic type, and in angular 10 must have an explicit type (generally the Module to which it refers to)... I thought it was overridable in previous versions, but i was wrong... We must overhaul the project dependencies to angular 10+ in order to build properly... I'm working on that currently

any updates on this? :)

`export class NgxTreeSelectModule {
public static forRoot(options: TreeSelectDefaultOptions): ModuleWithProviders {
return {
ngModule: NgxTreeSelectModule,
providers: [
{ provide: TreeSelectDefaultOptions, useValue: options }
]
};
}
}`
Just add any type to ModuleWithProviders in module.ts and it will works fine in angular 10 and 11

Kinda... I've been trying to bring the app to Angular 11, however, since the app hasn't been updated in a while, i'm in a peer deps hell, where quite a few don't have angular 11 compatible versions...

Hi all i have fixed this
see the updated code
export declare class NgxTreeSelectModule {
static forRoot(options: TreeSelectDefaultOptions): ModuleWithProviders;
static ɵmod: ɵngcc0.ɵɵNgModuleDefWithMeta<NgxTreeSelectModule, [typeof ɵngcc1.TreeSelectComponent, typeof ɵngcc2.TreeSelectItemComponent, typeof ɵngcc3.OffClickDirective, typeof ɵngcc4.ItemPipe], [typeof ɵngcc5.CommonModule, typeof ɵngcc6.FormsModule], [typeof ɵngcc1.TreeSelectComponent]>;
static ɵinj: ɵngcc0.ɵɵInjectorDef;
}

ModuleWithProviders

ModuleWithProviders<NgxTreeSelectModule>

When do you plan to update NPM?

We are in the middle of a migration project from Angular 5 to 11 and we wish to continue using ngx-tree-select but for that we need this fix to be packaged and available through NPM. Do you have an idea when we can expect that to happen?

Any update on this?

Any updates on this fix?

Is this still being updated?? Or a better question is... will this still be fixed for higher Angular versions?  There's already even Angular 12 hahahahaha

Hi, hope this will be updated on npm. @Crazyht

I succced integrating this as a module in an angular 12+ project. Here is project.
demo-select-tree.zip

@cagonvinon this demo-select-tree working fine in angular 12+ projects but search filter is not working.


Selfhost runner docs should enable driver verifier.

Earlier versions of the selfhost runner setup guide included this line:
verifier /standard /bootmode persistent /driver ebpfcore.sys netebpfext.sys sample_ebpf_ext.sys

This has been removed in recent versions of the doc.

Should be fixed by #643, please reopen if not.


domain restrication

There is a strange behavior;
the file which with that URL hadn't been catched
http://datasheets.avx.com/TCJ.pdf
even it exists in the URL
http://www.avx.com/awards/finalist-for-ubm-techs-ee-times-and-edn-ace-award/
Is that because I let the configuration in xml file to be restricted with the same domain?

Yes, if you restrict to the same domain, everything not on that domain will be rejected.  If you want that file, you'll need to not restrict on domain, and rely on either reference filters or import filter.
Be careful if choosing reference filters, as they reject URLs before they are downloaded... so URLs to be followed are not extracted on rejected URLs.   This is in many case OK and just more efficient, but there are cases you want documents downloaded to extract their URLs but otherwise reject them.  In such cases, use import filters (I recommend as a pre-parse handler).
Make sense?

you mean by import filter to filter wanted files extensions ?
and I want to ask if I can reject specific websites in crawling process like social media websites?

You can filter on any field/value you want with the import filters.  For instance, to filter on the URL (called document.reference at that point), you can use this:
<importer>
    <preParseHandlers>

      <filter class="com.norconex.importer.handler.filter.impl.RegexMetadataFilter"
          onMatch="include" field="document.reference" >
        Your regular expression matching URL pattern here
      </filter>

      ...

    </preParseHandlers>
</importer>

Make sure you have "stayOn..." to false in your start URLs. The above will not prevent any pages/documents from being downloaded but will reject them before they reach your committer.
But it all depends what you want to do with your crawl and a little more explanation would help.
For instance, if you want to crawl only "www.avx.com" pages, except for PDFs which can come from anywhere, you can also make "stayOn..." to false and use reference filters like this:
<referenceFilters>
  <filter class="com.norconex.collector.core.filter.impl.RegexReferenceFilter" onMatch="include" >
      (http://www\.avx\.com/.*|.*\.pdf)
  </filter>
</referenceFilters>

That scenario will prevent downloading any files that do not match the pattern, so you save on bandwidth and is overall faster. Just make sure you do not reject pages that contain links to other pages you are interested in as you will not get them (use the import filter approach if that is a concern). If you know the list of domains you what to allow the crawler to go to, you can also list domains in the regex instead.
You have several options to achieve what you want, it all depends what that is.
Any clearer?

Dear Essiembre, thank you for your reply, I want to catch any file with some types like pdf if there is a reference to it in my supported URL, even that file locate in subdomain of that URL or another different URL, but I afraid of making "stayondomain" to be false which will lead to go though any other unwanted websites and that will consume much time and bandwidth, so I want to limit it in the level of I have a reference to it in my URL only.
hope that be more clearer.

If I understand you right, you want to crawl your domain only, plus direct links from your domain, but not further?
If you are using a fairly recent version of 2.6.0 snapshot, the URL referrer information is always kept, which allows you to do something like this:
      <documentFilters>
        <filter class="com.norconex.collector.core.filter.impl.RegexReferenceFilter"
                onMatch="include" >
            http://www.avx.com.*
        </filter>
        <filter class="com.norconex.collector.core.filter.impl.RegexMetadataFilter"
                field="collector.referrer-reference" onMatch="include" >
            http://www.avx.com.*
        </filter>
      </documentFilters>

This configuration tells the crawler at least one of the "include" filters must be matched for a document to be processed.  So we have a filter that accepts only your domain, and another one that accepts URL that has your domain as the referrer.
I believe this will give you what you want.  Please confirm.

I just want to add, that if you are after specific file types, my original suggestion will also work and be much more efficient (saving you many downloads):
<referenceFilters>
  <filter class="com.norconex.collector.core.filter.impl.RegexReferenceFilter" onMatch="include" >
      (http://www\.avx\.com/.*|.*\.pdf)
  </filter>
</referenceFilters>

As long as you do not have HTML as an extension for the second part of the regular expression (since HTML will see its links extracted and followed), it should work just fine.
Have you tried it?  Didn't it produce what you were after?

I tried to add this

(http://www.avx.com/.|..pdf|xls|xlsx|doc|docx|ppt|pptx|zip)

and the crawler reject first link as it doesn't match with that form and stop crawling!

and I have a question, regarding that configuration..
<documentFilters>         <filter class="com.norconex.collector.core.filter.impl.RegexReferenceFilter"                 onMatch="include" >             http://www.avx.com.*         </filter>               <filter class="com.norconex.collector.core.filter.impl.RegexMetadataFilter"                 field="collector.referrer-reference" onMatch="include" >             http://www.avx.com.*         </filter>             </documentFilters>
is first part will not prevent the redirect ??

About your filter that stops the crawling, it is normal with the regular expression you have defined.
.*\.pdf means any URL ending with PDF, but just having entries like xls means the URL has to match exactly "xls".   In other words, you are missing .*.\. for every extension.  If you do not want to repeat it, you can use more elaborate regex, like this (untested):
(http://www\.avx\.com/.*|.*\.(pdf|xls|xlsx|doc|docx|ppt|pptx|zip))

About redirects, it all depends where it redirects to.  If the redirect target URL matches your filters it will be processed, else, it will be rejected.

I tried it as well and didn't work. When I changed the keeponDomain = false and put the restriction of
<documentFilters>         <filter class="com.norconex.collector.core.filter.impl.RegexReferenceFilter"                 onMatch="include" >             http://www.avx.com.*         </filter>               <filter class="com.norconex.collector.core.filter.impl.RegexMetadataFilter"                 field="collector.referrer-reference" onMatch="include" >             http://www.avx.com.*         </filter>             </documentFilters>
the crawler goes through the other websites so far and instead the crawler was finished in 3 days, it reach around 21 days and didn't stop updating incrementally! is there a solution to just stop at the level I mentioned above ?

It works for me with the RegexReferenceFilter trick of accepting domain or specific mime-types.  Why do you say this does not work?
<filter class="com.norconex.collector.core.filter.impl.RegexReferenceFilter" onMatch="include" >
      (http://www\.avx\.com/.*|.*\.(pdf|xls|xlsx|doc|docx|ppt|pptx|zip))
</filter>

What happens?
Since I can not reproduce the issue you are having, I am afraid you will have to attach your full config.

Closing due to lack of feedback and inability to reproduce.

Hi i am looking to crawl and commit pages from a domain based on URL pattern. Say top level is https://www.abc.com and then i have patternA and patternB there. https://www.abc.com/personal and https://www.abc.com/business should be committed to different stores.
Now i have this for startURLs in config

https://www.abc.com/
https://www.abc.com.sitemap.xml

I have to keep it like above as the URL, say https://www.abc.com/personal has a redirect to this.
The filter is as below :
   <filter class="com.norconex.collector.core.filter.impl.RegexReferenceFilter"
            onMatch="include" caseSensitive="false">
        .*/personal/.*
    </filter>

This is getting rejected by the filter.

This ticket is closed. Please open a new one for new questions.  See #636.


Tree max

Feature Tasks

[x] Find maximum value

[x] Arguments: none
[x] Returns: number
[x] Find the maximum value stored in the tree. You can assume that the values stored in the Binary Tree will be numeric.


TypeError: sigmoid_cross_entropy_with_logits() got an unexpected keyword argument 'labels'

i run the code, and i have this error,do you know why?
logits=self.D_logits, labels=tf.ones_like(self.D)))
TypeError: sigmoid_cross_entropy_with_logits() got an unexpected keyword argument 'labels'

You should update your TensorFlow version

my TensorFlow version is the latest, i have modify the code by replacing the  labels with targets.
it runs well

Actually, you're not. You may use 'pip install -U' but it's not installing the lastest. See #89.

Changing labels to targets , And I fixed this problem.


Update libphonenumber from 8.13.8 to 8.13.11

Codecov Report

Merging #799 (8b74312) into main (d2c3889) will decrease coverage by 0.18%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@             Coverage Diff              @@
##               main     #799      +/-   ##
============================================
- Coverage     92.54%   92.37%   -0.18%
+ Complexity     2654     2649       -5
============================================
  Files           286      286
  Lines          5275     5275
  Branches        553      553
============================================
- Hits           4882     4873       -9
- Misses          252      258       +6
- Partials        141      144       +3

see 5 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Connect commands and alt Windows Credential fix

It sometimes said "untrusted domain" failure.

Now it doesn't. And I used some extended events to confirm I logged in as that other user.

outdated branch caused failures, otherwise, got the thumbs up from 3 of us