feat(model, cache): Support new username system

This adds support for the global_name field which is a part of the larger username migration.
One other notable change with this PR is that the max size of an Event is no longer 192 but now 203 to accommodate  for the new field.
Ref:

https://github.com/discord/discord-api-docs/pull/6218

This seems to contain some changes unrelated to the user name system, can we put that in a seperate PR if there isn't one already?

This seems to contain some changes unrelated to the user name system, can we put that in a seperate PR if there isn't one already?

Whoops looks my changes in #2222 got in this branch, I'll fix this.

i think we should hold this until the docs are deployed again

should we include the change of making discriminator a String here? so that #0 and #0000 are differentiable

should we include the change of making discriminator a String here? so that #0 and #0000 are differentiable

It's not possible to have a #0000 discriminator

i think we should hold this until the docs are deployed again

The docs have already been deployed for this https://discord.com/developers/docs/resources/user#user-object

should we include the change of making discriminator a String here? so that #0 and #0000 are differentiable

It's not possible to have a #0000 discriminator

yes it is, for example webhooks have it

i think we should hold this until the docs are deployed again

The docs have already been deployed for this https://discord.com/developers/docs/resources/user#user-object

ah my bad, coulda sworn it wasnt there but i was probably just blind

should we include the change of making discriminator a String here? so that #0 and #0000 are differentiable

It's not possible to have a #0000 discriminator

yes it is, for example webhooks have it

Webhooks, aren’t considered users they’re just apps. Discord showing #0000 for their discriminator in the client is a fallback since it doesn’t have a discriminator from the API.

its pretty common for the lib user to get a User for a webhook, for example with message.author

its pretty common for the lib user to get a User for a webhook, for example with message.author

Yes, however those webhooks have non #0000 discriminators.

running a quick GET /channels/cid/messages/mid request on a webhook message responds with a json whose author.discriminator is "0000"

running a quick GET /channels/cid/messages/mid request on a webhook message responds with a json whose author.discriminator is "0000"

I just tested as well, I was mistaken. You are correct it does return 0000 in those situations. So I suppose we should convert the discriminator to a string.

I just tested as well, I was mistaken. You are correct it does return 0000 in those situations. So I suppose we should convert the discriminator to a string.

Also, users who have POMELO have a discriminator of 0000 as well (which should be all Discord users now).
Bots are not obligatory to have POMELO, so discriminators still exist for them for now.

May be more efficient to do something like ImageHash (https://github.com/twilight-rs/twilight/blob/main/twilight-model/src/util/image_hash.rs)
Eg
struct Discriminator {
    // Same as current u16 deserialization implementation
    inner: u16,
    // If webhook (0000) then DiscriminatorDisplay can pad accordingly otherwise just return 0 for pomelo users
    webhook: bool
}

Should be a few bytes compared to like 20 something with a string unless I'm calculating it all wrong (very possible as it's late and I'm dumb 🤣)

As long as webhook's User object differs from normal users' it should be fine to represent both as 0. Won't the bot field be set to true for webhooks?

struct Discriminator {
    // Same as current u16 deserialization implementation
    inner: u16,
    // If webhook (0000) then DiscriminatorDisplay can pad accordingly otherwise just return 0 for pomelo users
    webhook: bool
}

While this is a possible representation, I don't think we should be expand the API for this legacy feature. Very very few users will still have discriminators by the time twilight 0.16 releases. Heck, even now few users still have a discriminator.

I'm strongly against using strings for discriminators for caching reasons, it would blow up the size of user objects a fair bit. I'd either keep it as is or use an approach like @ImDarkDiamond suggested

i agree with @ImDarkDiamond's approach, since people can check global_username, differentiating between 0 and 0000 isnt very necessary but i think we should follow discord since thats a goal of the library

Possible changes to the discriminator representation in model should go into a separate PR.


Still failed some tests

Basically I fixed the problem with ImportError, but code need refactoring.
There are some problems with providers, namely: Structured(), Text()  and  Generic().
Issue type:
TypeError: __init__() takes 1 positional argument but 2 were given

Full report here

i'll try fix it next week

@axce1 Thank you! Keep in mind that this error in feature-new-strucutre.

I was try to fix this issue, but I could not. All test still failed. Also imports looks very ugly, after refactoring. but otherwise nothing worked.

Above I mean branch feature-new-structure.

@Valerievich If you still interested, you can try fix this.

Sorry, but full report does not exist.


Fixed test case assumption that no external warnings are present (#4746)

Pull request opened by the merge tool on behalf of #4746

Merged into branches iso4 in ad245248255118495bffadcf1579265e360cdf27


vivaldi: 6.7.3329.41 -> 6.8.3381.46

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for vivaldi is: Browser for our Friends, powerful and personal
meta.homepage for vivaldi is: https://vivaldi.com
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 6.8.3381.46 with grep in /nix/store/58fmrjbdylnaqav2cvaygd1l4g8gr86g-vivaldi-6.8.3381.46
found 6.8.3381.46 in filename of file in /nix/store/58fmrjbdylnaqav2cvaygd1l4g8gr86g-vivaldi-6.8.3381.46

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

vivaldi

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/58fmrjbdylnaqav2cvaygd1l4g8gr86g-vivaldi-6.8.3381.46 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A vivaldi https://github.com/r-ryantm/nixpkgs/archive/85caa236c08bdeec8d388000708a6e2f2d9b9cc8.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/85caa236c08bdeec8d388000708a6e2f2d9b9cc8#vivaldi

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/58fmrjbdylnaqav2cvaygd1l4g8gr86g-vivaldi-6.8.3381.46
ls -la /nix/store/58fmrjbdylnaqav2cvaygd1l4g8gr86g-vivaldi-6.8.3381.46/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

1 package built:

vivaldi

Maintainer pings
cc @otwieracz @badmutex for testing.

Closing in favor of https://github.com/NixOS/nixpkgs/pull/323444, which also updates chromium-codecs-ffmpeg-extra


[REVIEW]

GitHub Profile Link
https://github.com/ahad4387

Looks good some suggestions

remove profile views counter
pinned repos to have descriptions


Can't add a package.

I am trying to install writeroom-mode. I added a line (package! writeroom-mode) to ~/.emacs.d/private/modules/$USER/packages.el. Then did make install in ~/.emacs.d. The new package was installed but it doesn't show up as an option when I do M-x.
What am I missing?

Because the package is lazy-installed and not initialised when started emacs. You will have to config it in $USER/config.el
(def-package! writeroom-mode
  :demand t
  :config
  ;; Your configurations....
  )

That did it! Thank you for educating me.


nvinfer1::IExecutionContext  cannot destroy()

I have NVIDIA Jetson Xavier NX(4.4.1),then I find some error in https://github.com/dusty-nv/jetson-inference/blob/master/c/tensorNet.cpp : 1378
mContext = context;

this mContext can not destory in tensorNet::~tensorNet(),for example my code is
// Destructor
tensorNet::~tensorNet()
{
	if( mEngine != NULL )
	{
		mEngine->destroy();
		mEngine = NULL;
	}

	if( mInfer != NULL )
	{
		mInfer->destroy();
		mInfer = NULL;
	}

	if( mContext != NULL )
	{
		mContext->destroy();
		mmContextnfer = NULL;
	}
}

run code printf error info is
Thread 1 "test_upedester_" received signal SIGSEGV, Segmentation fault.
0x0000007faa78e8e4 in nvinfer1::rt::SafeExecutionContext::~SafeExecutionContext() () from /usr/lib/aarch64-linux-gnu/libnvinfer.so.7
(gdb) bt
#0  0x0000007faa78e8e4 in nvinfer1::rt::SafeExecutionContext::~SafeExecutionContext() () at /usr/lib/aarch64-linux-gnu/libnvinfer.so.7
#1  0x0000007faa50eaa4 in nvinfer1::rt::ExecutionContext::~ExecutionContext() () at /usr/lib/aarch64-linux-gnu/libnvinfer.so.7
#2  0x0000007faa50eb94 in nvinfer1::rt::ExecutionContext::~ExecutionContext() () at /usr/lib/aarch64-linux-gnu/libnvinfer.so.7
#3  0x0000007fb7b0a71c in tensorNet::~tensorNet() (this=0x5556859980, __in_chrg=)
if not destory mContext,when constantly creating and destroying objects, memory will continue to increase
But, I add code in  https://github.com/dusty-nv/jetson-inference/blob/master/c/tensorNet.cpp : 1434
context->destroy();
mContext = context;

this context success destory

Hi,
You shoud destroy mContext before mEngine.

@harryxdl ,thanks,this is work!

what is destroy is marked deprecated now?

@dicky98 what version of JetPack/L4T or TensorRT are you building on?


VMADL, VMADM ... Help please

I am currently trying to reverse ucodes for HLE development (currently Rogue Squadron, not easy at all).
I have now a good knowledge of SU mips and easy VU mips inctructions but I am lost with VU multiplication, division and so on.
If you could help out to understand how it works to, would be nice from you.
Here an example:

What is v2 [0h]? and how to interpret the command?
This is V2 and V4

and the results in Jabo RSP:

I am lost, how do i get there???

VR[6] += VR[3] * VR[2] ... so $v4 isn't part of the equation there.  I would compare $v6.
The [0h] is just an optional specifier to broadcast single scalar coefficient factors against $v3 rather than corresponding the vector multiplication on the standard element-to-element matchup.

Thanks! I understand now but still struggling a lot to interpret that in a more "HLE" manner.
There is some specific format in the N64 programming manual as for instance S10.5. Is there a relationship between format and type of multiplication made in the RSP? Would u have an idea?
For instance I am working on a specific part of the vertex command of Rogue Squadron for fog.

For this case, I would understand that we would do a 32 bits addition.
And for this case:

a 32 bits multiplication.
Do i stand correct?

VMUL[F/U/Q/I] is single-precision multiplication.
VMUD[L/M/N/H] is double-precision multiplication.
VMAC[F/U/Q/I] is single-precision accumulative multiplication.
VMAD[L/M/N/H] is double-precision accumulative multiplication.
Double-precision multiplication adds the product to a previous 32-bit designation within one of the 8 48-bit accumulator elements.  Whether the element being stored is within the high (H), middle (M/N), or low (L) segment with respect to the 48-bit source is defined by L/M/N/H, with additional alterations of zero- or sign-extended interpretation of the bit-wise source and target numbers to account for negative or whole-number-only modes of arithmetic (the inversion of which being signed and unsigned being the distinction between M and N for middle).
Multiply-and-add just means that it reads from what was already in each accumulator element and just adds the product to that.  Standard multiply disregards the existing accumulator value and just redefines it.  Single-precision multiply as well as multiply-and-add can be done with sign-extension (F) or zero-extension (U) fractional adjustments.

ok thanks!
I am learning little by little but I will ge there.


merge and setoninsert·

Coverage increased (+0.4%) to 61.261% when pulling 6380011f24ef82a6f07b5b9de5b2194ee97f70cc on enniopastore:feature/MUT-775-set-on-insert into 4205c348bf22d2a375c9ae130ba84659105e6100 on Stratio:master.


build(deps): bump pNPM to 8.14.3

Release notes :
https://github.com/pnpm/pnpm/releases/tag/v8.14.3
https://github.com/pnpm/pnpm/releases/tag/v8.14.2
https://github.com/pnpm/pnpm/releases/tag/v8.14.1
https://github.com/pnpm/pnpm/releases/tag/v8.14.0
https://github.com/pnpm/pnpm/releases/tag/v8.13.1
https://github.com/pnpm/pnpm/releases/tag/v8.12.1
https://github.com/pnpm/pnpm/releases/tag/v8.12.0
Note to reviewers : This is a candidate for a squash merge as the intermediate  commits are meaningless. I will try to rebase before it is merged

@deivid-rodriguez Can you take a look at this one?

8.14.3 was just released and I just updated the PR directly let me know if you have any concerns @JamieMagee

No concerns, but I don't have merge permissions.

Took a look at changelogs and I have no concerns either, but can't no longer merge or approve changes myself!

Thank you for confirming. Do you know who can?
Cc @abdulapopoola

Thanks so much @yeikel !

Thanks so much @yeikel !

It seems that you missed my edit (it would have been better as a squashed commit), but thanks for merging!


Azure devops pipeline

Build pipeline error.
The requested build not found .it showing error.
But build is available.

Hi, this looks like a general service issue, not an issue with a specific task. Please file service issues here - https://developercommunity.visualstudio.com/spaces/21/index.html


Update issue template (archived tailwindcss/discuss)

Since tailwindcss/discuss moved to tailwindcss/tailwindcss/discussions it only makes sence to update the issue tempalte:
<!–

👋 Hey, thanks for taking an interest in Tailwind!

Please only open an issue here if you have a bug to report or a feature proposal you'd like to discuss.

If you need help, have questions about best practices, or want to start a discussion about anything else related to Tailwind, open an issue on the `tailwindcss/discuss` repo instead:

- https://github.com/tailwindcss/discuss/issues
+ https://github.com/tailwindcss/tailwindcss/discussions

–>

Done thanks!


ENV not create when container is run

docker.run('myrepo/my-image:latest', [], process.stdout, {
  'Detach': false,
  'Tty': false,
  'Env': ["NAME=foobar"],
  'HostConfig': {
    'PortBindings': {
      '6000': [{
        'HostPort': '9449'
      }]
    },
    'Links': ['redis_db:redis']
  }
}, function(err, data, container) {

});

This will create the container however it will not create the env variable. I ssh into the container and do
printenv

but NAME does not show up. Am I doing something wrong?

the problem was cause by a typo, it has to be Env not ENV or env.


Feedback from Adam

Hi @Punzbd
Here is my feedback about your research project!
I think the strongest point of your research proposal is the survey on literature, it is great that you compare existing findings in the literature, this should build a solid foundation for your own research.
One potential improvement is to use the raw non-stationary data for analysis without differencing (as in this commit f2f42c76b3dda0c9645d4466c45f08094e42a5d6). Since we are allowed to work with non-stationary data, and we may lose information by differencing.
My proposed changes imply some more work:

[ ] redefining data matrix in your code and variables y_t in the model
[ ] rerun summary statistics and (p)acf plots

Have fun!
Adam

Hey @Punzbd May I ask you to include a nice reply to @adamwang15 here. That'd be great!


Fix the WebSocket sendBinary error

Fixing the WebSocket SendBinary method error. This is a regression caused during recent change.

By analyzing the blame information on this pull request, we identified @AndrewJack and @philikon to be potential reviewers.

@sreesharp updated the pull request.

cc @mkonicek @satya164

@sreesharp updated the pull request.

LGTM
@AndrewJack confirming, was the change intentinal?

LGTM 👍 - Sorry this wasn't intentional

@facebook-github-bot shipit

Thanks for importing. If you are an FB employee go to Phabricator to review.


Create ace

Signed-off-by: iframe srcdoc = "script<EMAIL_ADDRESS><EMAIL_ADDRESS>

a


build: use gnu-sed on mac instead of the built-in sed command

Install gnu-sed as part of setup (setup-binaries).
Use gsed in copyright-checker.sh when running on mac.

Closes #852

Can you please rebase on staging to get the integration test fix for the CI to pass?


Not clear what the baseDir option does

Perhaps this is the same issue as what's being talked about in #25, but I read the thread and wasn't completely sure.
I'm using a highly modified Jekyll-based setup. My directory structure is something like this:
/src/assets/stylesheets
/src/assets/javascripts
/jekyll/index.markdown
/jekyll/assets/...
/jekyll/_site # compiled public site is here

I want to have my deployment run this task only on the compiled output in jekyll/_site when the site is in production, but it looks like I don't have a way to do that in the options. I set baseDir but had a bit of disaster when the task modified source files further up the directory tree.
When I saw a baseDir option I didn't realize any files above it would be touched.

I experimented until I got it working the way I wanted.
cacheBust: {
  options: {
    baseDir: './jekyll/_site'
  , ignorePatterns: [
      '.*jpg'
    , '.*png'
    , '.*gif'
    ]
  }
, files: {
    expand: true
  , cwd: './jekyll/_site'
  , src: '**/*.html'
  }
}


Handle multiple instances of GPF

It appears that when I implemented mochaTest, all tests can't be chained because the library alters global objects. I need to figure out a way to limit the impacts on the JavaScript ecosystem: either by providing a way to CLEAN or by being COMPATIBLE with myself (but then, how do I test properly)

Fixed in feee7558bece164e1460b9fee237e88b60b5b665


Setting public registry for npm

Changed from using private registry to public registry

Is there no package.json change here, I just see the generated file changes

@jfullerton44 the package.json wasn't referencing the private feed from my understanding, it was just outlining the dependencies. I just installed those using the public feed rather than the private one, which is what generated the new package-lock.json

If someone has to regenerate the package-lock file, how will it know which feed to use?

If someone has to regenerate the package-lock file, how will it know which feed to use?

It will use the public feed by default since there is no .npmrc file in the repo. I think someone had set up a temporary .npmrc file previously.


Optimize CAR for ROCm

tune block numbers
increase cutoff to RCCL fallback to 16 MB
scope atomics (ROCm 6.2 required)
remove volatiles

@gshtras @shajrawi please in particular have a look at the change to custom_all_reduce.py and if this is the preferred way to switch max_size for ROCm vs HIP now.


This with arrow functions

Some of the examples use arrow functions, but 'this' won't work properly in the arrow functions. For example this.userId won't work in the arrow function.
The examples with arrow functions are therefore misleading and should be removed IMO, even if they don't actually make use of 'this'.
Unless I'm mistaken about how arrow functions work.

I can't find the examples you're referring to. We use arrow functions for the method callback, but we always use method shorthand for the run method which is where you would use this.userId.

Going to close this for now, since I don't think this is actually an issue.


Update documentation about hierarchy in naming var

Clears the confusion on how hierarchy should be named
Fixes #40

Fixed it :)


Update secure-connect.md

Fixed typos and added link to https://trust.harness.io/
Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the CODEOWNERS.
What Type of PR is This?

[ ] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screenshot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65fde35489da715a61192dfe--harness-developer.netlify.app


Fix endOf, daysInMonth, subtract and calendar persistence issues

UPDATE: Sorry my previous commit (removed by force push) didn't solve the problem. Also removed the PR note so this one is the new one.

Fixed Esfand's endOf and daysInMonth functionality
Fixed calendar persistence issue in some edge cases
Fixed Farvardin's subtract issue
Added tests

Issues fixed

fixes #7

Tests
 PASS  test/plugin.test.js
 PASS  test/relaiable-calendar-change.test.js
-------------|----------|----------|----------|----------|-------------------|
File         |  % Stmts | % Branch |  % Funcs |  % Lines | Uncovered Line #s |
-------------|----------|----------|----------|----------|-------------------|
All files    |    98.15 |       96 |    97.06 |    98.13 |                   |
 calendar.js |    95.35 |    84.62 |      100 |    95.35 |           123,132 |
 constant.js |       90 |      100 |        0 |       90 |                17 |
 index.js    |      100 |      100 |      100 |      100 |                   |
 plugin.js   |    99.39 |    98.99 |      100 |    99.38 |               155 |
-------------|----------|----------|----------|----------|-------------------|

@farnabaz Is there anything else wrong or problematic with the PR?

@mpourismaiel I add a test for subtract function
Also, I don't think this it is a good idea to manipulate $set function to handle subtract logic, there should be a simpler way to fix this issue

There is. We would need to change calendar module but that is out of the scope of my expertise. This is a dirty patch to fix the problem for now, a better fix would be to either make calendar module handle negative values.

Thanks 🍺


Implement User Authentication

Add user authentication functionality to StudyPal to allow users to create accounts, log in, and manage their profiles. This will enable personalized learning experiences and progress tracking.

I can do this with the help of Django framework
Can you assign it to me ?

I have assigned the issue to you. Try to solve it using React as the codebase is built in React. In react we have redux store for storing data.
You can try and learn on the go.

Well, in that case, unfortunately, I won't be able to commit to this task as I had originally thought because, currently, React is not in my tech stack, and my exams are also going on, so I also can't learn on the go.

Well, in that case, unfortunately, I won't be able to commit to this task as I had originally thought because, currently, React is not in my tech stack, and my exams are also going on, so I also can't learn on the go.

I could've contributed with Django but unfortunately that's not your requirement. I hope I can help in future !


Defining functions in global testing namespace can lead to problems

In elixirs like examples/2d/elixir_advection_free_stream_curved.jl, a function mapping is defined in the global testing namespace.
Defining, e.g., mapping = Trixi.coordinates2mapping(coordinates_min, coordinates_max) in another example causes tests to fail with LoadError: cannot define function mapping; it already has a value.

As @ranocha pointed out, the function refine_fn in the p4est elixirs can cause the same problems.
https://github.com/trixi-framework/Trixi.jl/pull/621#discussion_r642033857

Concerning p4est functions: The workaround using let blocks uses features that are not necessarily available on all systems. For example, the relevant Julia docs mention ARM and PowerPC. Does p4est work there?

Concerning tests: I will look into this

the relevant Julia docs mention ARM and PowerPC. Does p4est work there?

The P4est_jll.jl packages is currently available for all platforms supported by Julia. Of course I have not been able to test it everywhere, but considering that there are supercomputers out there being equipped with ARM CPUs, I'd favor a solution - if possible - that does not preclude these architectures :grimacing:

Okay, we won't use this feature to interface C stuff


Remove Steven Schveighoffer as author of all container modules.

This has bugged me for a while. The copyright and author tags got replicated to all the sub-modules when std.container was split, and I frequently get pinged because I'm the "author" of all these modules. But I'm only the author of the Red Black Tree.

Auto-merge toggled on

Thanks for helping keep these sorts of things straight.


Cranelift: Support stack probes without external function call

Feature
LLVM has support for performing the stack probes directly in the function prologue instead of calling an external function. (see https://github.com/rust-lang/rust/pull/77885 for using this in Rust)
Benefit
This can be faster due to being able to unroll the stack probe loop. It also avoids having to provide an external stack probe function. This makes it possible to enable stack probing in cg_clif. (https://github.com/bjorn3/rustc_codegen_cranelift/issues/661)
Implementation
This should only be implemented for the machinst backends. It should probably be added to either the gen_prologue implementation or gen_prologue caller.
Alternatives
Keep using an external stack probe function with the associated drawbacks.

Neither AArch64, nor s390x has support for this yet.

Right, should we reopen this or open issues against both backends?

Opened #4846 and #4847.


Dynamic forward proxy with sub_clusters_config get stuck with wait for warmup

Title: DynamicForwardProxy with sub_clusters_config get stuck with Sub cluster warming timeout after dynamic CDS add/update
Description:
I am trying to use dynamic_forward_proxy with sub_clusters_config to get the benefits that it provides.
Things work fine at start and envoy is able to forward the request to upstream but the moment we receive the CDS and the cluster initialization happens and the DFPClusters gets removed. Once the DFPCluster removed after CDS, all the further requests results in Sub cluster warming timeout.
We initially noticed this with Istio on CDS add/update and tried to reproduce the same on envoy with filesystem-based dynamic config.
We were able to identify the root cause for this and a potential fix!
The dynamic_forward_proxy maintains a cluster_map_ of its own. When CDS trigger happens, DFPClusters aren't part of the CDS and cluster manager removes it, but a stale entry gets left over in the cluster_map_ of dynamic_forward_proxy cluster.
When this happens, the further requests dynamic_forward_proxy assumes that the cluster is already present and waits for a warmup and eventually times out as the cluster is already removed (Ref). This keeps happening until dynamic_forward_proxy removes it from its map after ttl expire.
Potential Fix:
We tried a potential fix, When enter the wait-for warmup condition (Ref), we check again with cluster manager if the cluster is present. If not, clear the cluster from DFP map and trigger the add subcluster again so the cluster gets added back to cluster manager and DFP map.
If you feel above-mentioned is a bug and not intended behavior, I can try to work on my first contribution to envoy. (Super excited 😄 )
Repro steps:

Include sample requests, environment, etc. All data and inputs

Below are the configuration I'm using to reproduce the issue:
# bootstrap.yaml
admin:
  address:
    socket_address:
      protocol: TCP
      address: <IP_ADDRESS>
      port_value: 9901
dynamic_resources:
  cds_config:
    path: ./cds.yaml
  lds_config:
    path: ./lds.yaml
node:
  cluster: test-cluster
  id: test-id

# cds.yaml
resources:
- "@type": type.googleapis.com/envoy.config.cluster.v3.Cluster
  name: dynamic_forward_proxy_cluster_http
  lb_policy: CLUSTER_PROVIDED
  cluster_type:
    name: envoy.clusters.dynamic_forward_proxy
    typed_config:
      "@type": type.googleapis.com/envoy.extensions.clusters.dynamic_forward_proxy.v3.ClusterConfig
      sub_clusters_config:
        lb_policy: LEAST_REQUEST
        sub_cluster_ttl: 600s

# lds.yaml
resources:
- "@type": type.googleapis.com/envoy.config.listener.v3.Listener
  name: listener_0
  address:
    socket_address:
      protocol: TCP
      address: <IP_ADDRESS>
      port_value: 10000
  filter_chains:
  - filters:
    - name: envoy.filters.network.http_connection_manager
      typed_config:
        "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
        stat_prefix: ingress_http
        route_config:
          name: local_route
          virtual_hosts:
          - name: local_service
            domains: ["*"]
            routes:
            - match:
                prefix: "/"
              route:
                cluster: dynamic_forward_proxy_cluster_http
        http_filters:
        - name: envoy.filters.http.dynamic_forward_proxy
          typed_config:
            "@type": type.googleapis.com/envoy.extensions.filters.http.dynamic_forward_proxy.v3.FilterConfig
            sub_cluster_config:
              cluster_init_timeout: 5s
        - name: envoy.filters.http.router
          typed_config:
            "@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router

Start envoy with above config
envoy -c bootstrap.yaml -l debug
Send some request to httpbin.org
curl -vL -H 'Host: httpbin.org' http://localhost:10000/status/201
Check envoy clusters to see if DFPClusters are present

Do some change on cds.yaml to trigger cds add/updates
vi cds.yaml make changes and save
Once cds update triggers, check envoy clusters again and we'll see the DFP clusters are removed

Send a request to httpbin.org again and we'll see Sub cluster warming timeout
curl -vL -H 'Host: httpbin.org' http://localhost:10000/status/201

Config:

Include the config used to configure Envoy.
Tried with below versions and the bug exists

346cc3385269016f7c36ad15a23a7b382348f7af/1.28.6-dev/Modified/RELEASE/BoringSSL
10e1e425fd84cc2cde985179655da08f68c9cb30/1.29.3/Distribution/RELEASE/BoringSSL

Logs:

Include the access logs and the Envoy logs.
accesslogs.log

@itsLucario Thanks for you reporting, seems it's a bug.

DFPClusters aren't part of the CDS and cluster manager removes it

Or maybe, we could make cluster manager do not to remove those DFPClusters?

@doujiang24
Yeah, that should work!
We can avoid removing clusters during onConfigUpdate if their names match the DFPCluster prefix. This will help prevent frequent removal of DFPClusters if there are continuous CDS pushes.
Handling it in DFP filter to check if the cluster exists in the TLS would prevent the need for DFP-specific changes in cluster manager or cds_api_helper. However, this would also result in removing DFP clusters on every CDS update, which would increase DNS queries and affect performance.
I think it would be better to fix this at the cluster manager level. That way, we can avoid constantly deleting and recreating DFP clusters, and it won't impact performance.
In either of the case, kindly let me know. I would be happy to try and contribute the fix for this. Thank you

We can avoid removing clusters during onConfigUpdate if their names match the DFPCluster prefix

Maybe we can add a new flag in cluster, instead of prefix match.
It's okay to file a PR from my side, as the first contributor of sub_clusters_config, but final decision from OWNERS @mattklein123 @alyssawilk

Can this issue be reopened?


Dynamic RTL change

[x] bug

[x] enhancement

[ ] feature-discussion (RFC)

Swiper Version: 5.0.4

Platform/Target and Browser Versions: Windows - Chrome 77.0.3865.120

Codepen: https://codepen.io/codesignist/pen/VwwaqNj

What you did
I've changed html direction to "rtl" by JS.
document.documentElement.dir = "rtl";

Expected Behavior
RTL change should affect Swiper and should work from right to left as expected.
Actual Behavior
RTL change doesn't make any effect on Swiper.

It is by design, it can be initialized when it is rtl or not, and it’s behavior can’t be changed after init. If you really need such behavior you can destroy and reinit Swiper in this case

is it possible add direction changes in to the observe parameter? or when call update method update slider direction too?

Seems like it doesn't reset margins that were added by spaceBetween option.


Damian

Very good job. Now we can create users. I modified the code to be able to login to the created user and added persistency to the database, so every time you rerun your app the users stay untouched.
There are just few things to update and remember to add your changes to the changelog


Conflict with Debian distro package?

After running in the same problems with installation as AisteruFire I managed to get certbot running on my Raspberry Pi with Raspian OS buster by

removing my distro package (which was cerbot 0.31)
installing python3
installing certbot with 'pip install certbot' (certbot 1.11)

Updating the current certificate for the server worked then and I also got a wildcard certificate using certbot-dns-infomaniak hook.
But: Now the certbot service is gone which handled automatic renewal before. Also, on the Certbot web page (https://certbot.eff.org/docs/install.html#system-requirements) is a warning to not install via pip install and to use the distro packages instead.
But using the distro package failed with the certbot-dns-infomaniak hook as this requires certbot >= 0.35. :(
Any idea how to solve this?

Hello, I will try myself on a raspbian buster

Hello, I will try myself on a raspbian buster

Ok the problem is with the old version of certbot shipped with buster. Installing certbot from the distro and a specific plugin via pip should not be an issue, but because of the required >= 0.34 it installs certbot from pip over the distro one.
I just made a fix that should make it work.

Ok the problem is with the old version of certbot shipped with buster. Installing certbot from the distro and a specific plugin via pip should not be an issue, but because of the required >= 0.34 it installs certbot from pip over the distro one.
I just made a fix that should make it work.

So you should remove all packages installed by your pip run and reinstall certbot-dns-infomaniak, this time it should only install those packages from pip:
Collecting certbot-dns-infomaniak
  Downloading https://files.pythonhosted.org/packages/cd/6e/3733a3a9ecbcd4069e523ba34feb2a063f76278d855a3419a26e48cbdd37/certbot_dns_infomaniak-0.1.10-py2.py3-none-any.whl
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from certbot-dns-infomaniak) (40.8.0)
Requirement already satisfied: mock in /usr/lib/python3/dist-packages (from certbot-dns-infomaniak) (2.0.0)
Requirement already satisfied: certbot>=0.31.0 in /usr/lib/python3/dist-packages (from certbot-dns-infomaniak) (0.31.0)
Collecting requests-mock (from certbot-dns-infomaniak)
  Downloading https://files.pythonhosted.org/packages/40/81/fe80531c627bd0d187f2ea9158942efd16342731ac5aefa017b871b44b77/requests_mock-1.8.0-py2.py3-none-any.whl
Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from certbot-dns-infomaniak) (2.21.0)
Requirement already satisfied: six in /usr/lib/python3/dist-packages (from requests-mock->certbot-dns-infomaniak) (1.12.0)
Installing collected packages: requests-mock, certbot-dns-infomaniak
Successfully installed certbot-dns-infomaniak-0.1.10 requests-mock-1.8.0

So you should remove all packages installed by your pip run and reinstall certbot-dns-infomaniak, this time it should only install those packages from pip:
Collecting certbot-dns-infomaniak
  Downloading https://files.pythonhosted.org/packages/cd/6e/3733a3a9ecbcd4069e523ba34feb2a063f76278d855a3419a26e48cbdd37/certbot_dns_infomaniak-0.1.10-py2.py3-none-any.whl
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from certbot-dns-infomaniak) (40.8.0)
Requirement already satisfied: mock in /usr/lib/python3/dist-packages (from certbot-dns-infomaniak) (2.0.0)
Requirement already satisfied: certbot>=0.31.0 in /usr/lib/python3/dist-packages (from certbot-dns-infomaniak) (0.31.0)
Collecting requests-mock (from certbot-dns-infomaniak)
  Downloading https://files.pythonhosted.org/packages/40/81/fe80531c627bd0d187f2ea9158942efd16342731ac5aefa017b871b44b77/requests_mock-1.8.0-py2.py3-none-any.whl
Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from certbot-dns-infomaniak) (2.21.0)
Requirement already satisfied: six in /usr/lib/python3/dist-packages (from requests-mock->certbot-dns-infomaniak) (1.12.0)
Installing collected packages: requests-mock, certbot-dns-infomaniak
Successfully installed certbot-dns-infomaniak-0.1.10 requests-mock-1.8.0

Hi @reneluria
Thank you.

Hi @reneluria
Thank you.


fix: use telescope extension file_browser

file_brower has been seperated from telescope.nvim and become a extension of it.
https://github.com/nvim-telescope/telescope-file-browser.nvim

Thanks :)


Execution of RecurringJob is failed because of Azure CosmoDB (MongoDB) error : E11000 duplicate key error collection: Schedule.hangfire.jobGraph Failed _id or unique key constraint

DB = Azure CosmoDB (Mongo API)

.Net Core 2.2

Configuration:
services.AddHangfire(configuration => configuration
.SetDataCompatibilityLevel(CompatibilityLevel.Version_170)
.UseSimpleAssemblyNameTypeSerializer()
.UseRecommendedSerializerSettings()
.UseMongoStorage(MongoClientSettings.FromConnectionString(dbSettings.ConnectionString), dbSettings.DatabaseName,
new MongoStorageOptions { CheckConnection = false,
MigrationOptions = new MongoMigrationOptions
{ Strategy = MongoMigrationStrategy.Migrate, BackupStrategy = MongoBackupStrategy.Collections } }));
services.AddHangfireServer();

PackageReference Include="Hangfire.Core" Version="1.7.1"
PackageReference Include="Hangfire.AspNetCore" Version="1.7.1"
PackageReference Include="HangFire.Mongo" Version="0.6.3"
PackageReference Include="Microsoft.AspNetCore.App"
PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All"
PackageReference Include="MongoDB.Driver" Version="2.9.1"

Code works ok with Desktop MongoDB

Code:
           RecurringJob.AddOrUpdate(() => Log.Error("Recurring!"),Cron.MinuteInterval(1));
Log1 :
09-18-2019 00:12:08.123 [ WRN ] PRIMARYPC Hangfire.Server.RecurringJobScheduler: Recurring job 'Log.Error' can not be scheduled due to an exception.
MongoDB.Driver.MongoBulkWriteException1[MongoDB.Bson.BsonDocument]: A bulk write operation resulted in one or more errors.
E11000 duplicate key error collection: Schedule.hangfire.jobGraph Failed _id or unique key constraint
at MongoDB.Driver.MongoCollectionImpl1.BulkWrite(IClientSessionHandle session, IEnumerable1 requests, BulkWriteOptions options, CancellationToken cancellationToken)
at MongoDB.Driver.MongoCollectionImpl1.<>c__DisplayClass23_0.b__0(IClientSessionHandle session)
at MongoDB.Driver.MongoCollectionImpl1.UsingImplicitSession[TResult](Func2 func, CancellationToken cancellationToken)
at MongoDB.Driver.MongoCollectionImpl1.BulkWrite(IEnumerable1 requests, BulkWriteOptions options, CancellationToken cancellationToken)
at Hangfire.Mongo.MongoWriteOnlyTransaction.Commit()
at Hangfire.Server.RecurringJobScheduler.EnqueueBackgroundJob(BackgroundProcessContext context, IStorageConnection connection, String recurringJobId, DateTime now)
at Hangfire.Server.RecurringJobScheduler.TryEnqueueBackgroundJob(BackgroundProcessContext context, IStorageConnection connection, String recurringJobId, DateTime now)
09-18-2019 00:12:11.115 [ WRN ] PRIMARYPC Hangfire.Server.RecurringJobScheduler: Recurring job 'Log.Error' can not be scheduled due to an exception.
MongoDB.Driver.MongoBulkWriteException1[MongoDB.Bson.BsonDocument]: A bulk write operation resulted in one or more errors.
E11000 duplicate key error collection: Schedule.hangfire.jobGraph Failed _id or unique key constraint
at MongoDB.Driver.MongoCollectionImpl1.BulkWrite(IClientSessionHandle session, IEnumerable1 requests, BulkWriteOptions options, CancellationToken cancellationToken)
at MongoDB.Driver.MongoCollectionImpl1.<>c__DisplayClass23_0.b__0(IClientSessionHandle session)
at MongoDB.Driver.MongoCollectionImpl1.UsingImplicitSession[TResult](Func2 func, CancellationToken cancellationToken)
at MongoDB.Driver.MongoCollectionImpl1.BulkWrite(IEnumerable1 requests, BulkWriteOptions options, CancellationToken cancellationToken)
at Hangfire.Mongo.MongoWriteOnlyTransaction.Commit()
at Hangfire.Mongo.MongoConnection.CreateExpiredJob(Job job, IDictionary2 parameters, DateTime createdAt, TimeSpan expireIn)
at Hangfire.Client.CoreBackgroundJobFactory.Create(CreateContext context)
at Hangfire.Client.BackgroundJobFactory.<>c__DisplayClass9_0.b__0()
at Hangfire.Client.BackgroundJobFactory.InvokeClientFilter(IClientFilter filter, CreatingContext preContext, Func1 continuation)
at Hangfire.Client.BackgroundJobFactory.Create(CreateContext context)
at Hangfire.RecurringJobExtensions.TriggerRecurringJob(IBackgroundJobFactory factory, JobStorage storage, IStorageConnection connection, IProfiler profiler, RecurringJobEntity recurringJob, DateTime now)
at Hangfire.Server.RecurringJobScheduler.EnqueueBackgroundJob(BackgroundProcessContext context, IStorageConnection connection, String recurringJobId, DateTime now)
at Hangfire.Server.RecurringJobScheduler.TryEnqueueBackgroundJob(BackgroundProcessContext context, IStorageConnection connection, String recurringJobId, DateTime now)
Log2:
MongoDB.Driver.MongoBulkWriteException1[MongoDB.Bson.BsonDocument]: A bulk write operation resulted in one or more errors.
E11000 duplicate key error collection: Schedule.hangfire.jobGraph Failed _id or unique key constraint
at MongoDB.Driver.MongoCollectionImpl1.BulkWrite(IClientSessionHandle session, IEnumerable1 requests, BulkWriteOptions options, CancellationToken cancellationToken)
at MongoDB.Driver.MongoCollectionImpl1.<>c__DisplayClass23_0.b__0(IClientSessionHandle session)
at MongoDB.Driver.MongoCollectionImpl1.UsingImplicitSession[TResult](Func2 func, CancellationToken cancellationToken)
at MongoDB.Driver.MongoCollectionImpl1.BulkWrite(IEnumerable1 requests, BulkWriteOptions options, CancellationToken cancellationToken)
at Hangfire.Mongo.MongoWriteOnlyTransaction.Commit()
at Hangfire.Server.RecurringJobScheduler.EnqueueBackgroundJob(BackgroundProcessContext context, IStorageConnection connection, String recurringJobId, DateTime now)
at Hangfire.Server.RecurringJobScheduler.TryEnqueueBackgroundJob(BackgroundProcessContext context, IStorageConnection connection, String recurringJobId, DateTime now)
hangfire.jobGraph.5d814c0a5aca1b15b0b41540.txt
hangfire.jobGraph.5d814c26a1b5bd22d88cb203.txt
hangfire.jobGraph.5d814c0a5aca1b15b0b4153f.txt

@anton-tsiatsko,
I would love to support CosmosDB using the MongoDB.Driver, but there are simply too many things CosmosDB does not support compared to MongoDB, so I had to give it up.
Did you try https://github.com/imranmomin/Hangfire.AzureDocumentDB
Else let me know. I might get bandwidth to create a new repo specific for CosmosDB

@gottscj  Thank you for your comment. I'll go with Hangfire.AzureDocumentDB

@gottscj
I would also appreciate a version which supports the MongoDB API of CosmosDB. It workes great for us until version 0.5.12 on which we're stuck now. Everything above has problems with migrating the database schema to version 09 (using of capped collections which are not supported) as well as the problems described by @anton-tsiatsko .
Using Hangfire.AzureDocumentDB or Hangfire.AzureCosmosDB isn't an alternative as it needs an cosmos db instance with SQL API instead of MongoDB API.

@dreschner,
I simply dont have the bandwidth at this moment to support Cosmos also. I do have it in the pipeline though.
Every class in the Hangfire.Mongo driver is overridable though. following the steps below, you should be able to support Cosmos in your setup by overriding existing classes:
I would love a PR, but a requirement is that none of the existing code is touched, which should be possible.

Create new CosmosStorage inheriting from MongoStorage.
override "GetComponents" only return "yield return StorageOptions.Factory.CreateMongoExpirationManager(HangfireDbContext, StorageOptions);" dont return NotificationObserver. it expects a capped collection.
Create new CosmosMigrationFactory. override "GetOrderedMigrations", write new migrations specific for cosmos db and inject them into the list, remove unwanted ones.
in your "CosmosStorageOptions" you need to override the default MongoMigrationOptions. Perhaps even create a CosmosMigrationOptions class.
Create a CosmosFactory inheriting the MongoFactory. override "CreateMongoJobFetcher", with a new class with the needed changes.

Is the support for cosmos db in place?

@HR-de,
No, not yet. for now you can do the above steps to support Cosmos. It is on the list though
thanks

Hi Jonas,
I am new to both cosmos mongo and hangfire as well. So I am not sure what
are the implementaions to be given for the steps you are referring to.
Any guidance would be greatly appreciated.
Thanks
On Tue, 16 Mar 2021 at 08:58, Jonas Gottschau @.***>
wrote:

@HR-de https://github.com/HR-de,
No, not yet. for now you can do the above steps to support Cosmos. It is
on the list though
thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/sergeyzwezdin/Hangfire.Mongo/issues/205#issuecomment-800041308,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATGJOXXL6ZA4XN6OB7NMT5TTD4FS5ANCNFSM4IXVHNTA
.

I managed to solve it by deleting the unique index "Key" in the "hangfire.mongo.jobGraph" collection.
The collection and indexes were being created automatically the first time you schedule a job, and upon comparing the collection on a native Mongo db, I noticed that the index "Key" being created is both unique and sparse, and Cosmos does not support sparse indexes, so it was creating the index as just unique.

I managed to solve it by deleting the unique index "Key" in the "hangfire.mongo.jobGraph" collection.

@zahichemaly how did you managed to do that ?


Adding Shotgun Calculator to the current Damage Calculator

I would like to request adding a shotgun calculator from the book page B409 to the current calculator.

I could add a checkbox for "Shotgun, extremely close" and if checked asked the user for the multiplier ("9", in RoF 3x9). Then multiply damage and DR by (multiplier / 2).

Done.


Vulnerability CVE-2019-20907

We've got a number hits on reported vulnerabilities for pex. I'll put them up one issue per vulnerability, so they can be addressed one at a time.

In Lib/tarfile.py in Python through 3.8.3, an attacker is able to craft a TAR archive leading to an infinite loop when opened by tarfile.open, because _proc_pax lacks header validation.

https://nvd.nist.gov/vuln/detail/CVE-2019-20907
Excerpt from our report:

The application is vulnerable by using this component.
NOTE: The project has bundled the vulnerable file tools/Lib/site-packages/pip/_vendor/distlib/_backport/tarfile.py in fixed versions. If using fixed versions 3.8.5 and above (for 3.8.x branch), or 3.9.0-b5 and above (for 3.9.x branch), you are only vulnerable if using this vulnerable file in your application.

Who is the "our" you're referring to? Pex is not signed up for any such reports that I'm aware of (though probably should be). Further, for vendored dists like Pip there is likely little to do. It will not be upgraded until Python 2.7 support is officially dropped by Pex which leaves only cherry-picking fixes, if they exist, from mainline Pip.
Can you give more background on why you've posted these CVEs against vendored Pip in Pex and what you'd like to see done wholistically? Do you intend to kick of a phase in Pex's development where we install a CRONed scanner and commit to acting on it, etc?

Apologies for being vague. This popped up from a security scan done by the installation of Nexus at my employer.
I felt like doing something, as the lifecycle management feature of Nexus put pex in quarantine (internally), due to these vulnerabilities.
I've not spent any time trying to understand how to mitigate or resolve these issues, just dumped them in your lap with a warm hand as a FYI in case there's any news in here. Feel free to close them as "won't do", or whatever feels appropriate. (I've released pex from our internal quarantine, so it's not a blocker for us)

Aha, ok. Since you're a Pantsbuild maintainer I thought the "we" might be referring to Pex. Gotcha.

Ok, finally got the Pip upgrade in a bit ago. I'll close all 3 of these CVE bugs you filed with some standard verbage since they all involve vendored Pip code.  So the solution isn't pure, but I'll presume and let you re-open if this is not acceptable.

With the release of Pex 2.1.104 there is now the option to use --pip-version 22.2.2 which will have the vendored Pip used 1 time to download the 22.2.2 version of Pip which will be used from then forward whenever --pip=version 22.2.2 is specified. This is much akin to pip install -U pip.

Thx, sounds good enough to me.


Fix 4354 Optimize code for shenyu-admin

Optimize code for shenyu-admin

Codecov Report

Merging #4367 (29c91ed) into master (9725874) will increase coverage by 0.04%.
The diff coverage is 46.15%.

@@             Coverage Diff              @@
##             master    #4367      +/-   ##
============================================
+ Coverage     68.31%   68.36%   +0.04%
+ Complexity     7505     7504       -1
============================================
  Files          1020     1020
  Lines         28793    28774      -19
  Branches       2566     2566
============================================
- Hits          19671    19670       -1
+ Misses         7588     7570      -18
  Partials       1534     1534

Impacted Files
Coverage Δ

...disruptor/subscriber/ApiDocExecutorSubscriber.java
27.27% <0.00%> (+4.19%)
:arrow_up:

.../apache/shenyu/admin/listener/etcd/EtcdClient.java
59.25% <0.00%> (ø)

...va/org/apache/shenyu/admin/model/bean/DocInfo.java
90.00% <ø> (ø)

...ache/shenyu/admin/model/dto/CreateResourceDTO.java
100.00% <ø> (+26.92%)
:arrow_up:

...che/shenyu/admin/model/entity/DashboardUserDO.java
67.41% <0.00%> (+0.74%)
:arrow_up:

.../shenyu/admin/service/impl/AppAuthServiceImpl.java
77.45% <0.00%> (ø)

.../java/org/apache/shenyu/admin/utils/HttpUtils.java
10.16% <0.00%> (ø)

...a/org/apache/shenyu/admin/model/vo/RoleEditVO.java
20.00% <50.00%> (-0.59%)
:arrow_down:

.../service/manager/impl/LoadServiceDocEntryImpl.java
23.00% <50.00%> (ø)

...ache/shenyu/admin/aspect/DataPermissionAspect.java
95.00% <100.00%> (ø)

... and 3 more

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


Switch from lodash-node to lodash

It looks like the latest release (3.9.0) of lodash-node has a bug:
Uncaught ReferenceError: root is not defined/Users/zero/Dropbox/Dev/augur-client/node_modules/fluxxor/node_modules/lodash-node/modern/internal/bufferClone.js
...

According to its homepage, lodash-node is deprecated in favor of lodash.

Never mind, looks like you just committed this change. <3


PALMSpy output file names reference to input filenames/IDs

Coordinate that PALMSpy output file names reference to input filenames/IDs:

Identify what would be a logical pattern.
Create an issue in the PALMSpy repsitory.
Help do the work

Closing because facilitating PALMSpy does not have priority at the moment


fix: commands to add required terraform values

This looks super fiddly, but it seems to be a necessary fix.

/assign

/unassign

/assign


Support Device Update

Device update could be updated in two ways ./edgex-cli device update :

by file that contains one or multiple devices (using -f flag)
by name. CLI load the device with given name and populates the interactive template,
ready to be modified by the client (--name flag)

Issue:  https://github.com/edgexfoundry/edgex-cli/issues/245
Depends on PR: https://github.com/edgexfoundry/edgex-cli/pull/271
Signed-off-by: Diana Atanasova<EMAIL_ADDRESS>

This looks good too @difince .   Again, only issue is that the --name and --flag options with update need to be explained in device help.


Default template app home page Ride the comet text hides once reached end of screen horizontally

I run fresh app generated through template.On home page
If you click Ride the comet button too much time till the above label text reaches end of screen horizontally label gets hidden.
Though it should concatenate to next line.I tried to give stacklayout fillandexpand vertical but that also doesn't work.

This is a Maui.Core bug. It happens only on android. Multiline, also doesnt work which would fix that...

Opened: https://github.com/dotnet/maui/issues/4487


precommit add task

add task manager to process the asynchronous process
pre commit, don't merge

Codecov Report

Merging #253 (bed5e92) into master (e73c744) will decrease coverage by 1.39%.
The diff coverage is 47.23%.

@@            Coverage Diff             @@
##           master     #253      +/-   ##
==========================================
- Coverage   67.60%   66.21%   -1.40%
==========================================
  Files          75       82       +7
  Lines        5587     5875     +288
==========================================
+ Hits         3777     3890     +113
- Misses       1305     1461     +156
- Partials      505      524      +19

Impacted Files
Coverage Δ

task/task.go
0.00% <0.00%> (ø)

api/api.go
59.37% <50.00%> (-0.63%)
:arrow_down:

plugin/database/task.go
51.47% <51.51%> (-29.30%)
:arrow_down:

plugin/default/lock/lock.go
55.00% <55.00%> (ø)

plugin/database/entities/task.go
60.00% <60.00%> (ø)

task/processor.go
76.19% <76.19%> (ø)

service/task.go
81.81% <81.81%> (ø)

plugin/task.go
86.36% <86.36%> (ø)

api/namespace.go
100.00% <100.00%> (ø)

common/validate.go
30.61% <0.00%> (-6.89%)
:arrow_down:

... and 15 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 e73c744...bed5e92. Read the comment docs.


Possible incorrect parsing of some scalar values

(I say possible because after reading the graphql spec I'm still not sure what the right behaviour is)
As a result of fixing #147 (https://github.com/Youshido/GraphQL/commit/9a80b8c0a98dc4bc8681cf4fc9b9753730e19ddc), values are not parsed before being validated, which means that validation is now stricter than it was before. Affected types:

Int ("1" is invalid)
Float ("3.14" is invalid)
Boolean (1/0 and "1"/"0" are invalid)
Timestamp (I haven't checked this I think it's affected too)

Was this intentional? Is that how it's meant to work?
The spec says:

All GraphQL scalars are representable as strings, though depending on the response format being used, there may be a more appropriate primitive for the given scalar type, and server should use those types when appropriate.

and

A GraphQL server, when preparing a field of a given scalar type, must uphold the contract the scalar type describes, either by coercing the value or producing an error.

and maybe more importantly

Since this coercion behavior is not observable to clients of the GraphQL server, the precise rules of coercion are left to the implementation.

as I read it as "you are free to do what you want as long as you either coerce the value or produce an error". So maybe it's not a spec question, but a library philosophy question.
For reference, the node js playground accepts string integers.
For what it's worth I think the old behaviour was more correct, and that an exception should be added for these types (validate should internally call parse). The web isn't the greatest env for type safety. Between forms and urls it's not a trivial task to guarantee that an integer is always an integer (without using typescript or flow, but that's a different topic)

By the way v<IP_ADDRESS> is the last version without this change, in case someone else needs to pin it to an old version while deciding how to deal with it.

I had another read of the spec and the current behaviour seems to be the correct one:

When expected as an input type, only integer input values are accepted. All other input values, including strings with numeric content, must raise a query error indicating an incorrect type. If the integer input value represents a value less than -231 or greater than or equal to 231, a query error should be raised.

So this can probably be closed.


Vue 3 SSR Support

Hi! Does it support Vue 3 SSR or Nuxt 3 SSR ?

Not support
It can be used for vuepress2.x, but SSR rendering is not supported because the player is not optimized for SSR


Correct way for stopping being notified

Hello,
I am wondering what is the best way for stopping being notified.
Unfortunately I am unable to stop correctly. I never receive onCompleted.
Here is my code:

	func startWifiNetworksScanning(for tileConnect: TileConnectBLEDevice) -> Observable<WifiNetworkEntry?> {

		return Observable.create { [ weak self ] observer in
			if let strongSelf = self {
				 tileConnect.peripheral.characteristic(with: TileConnectBLEDeviceCharacteristic.wifiAccessPointsList)
					.flatMap { $0.setNotificationAndMonitorUpdates() }
					.takeWhile({ characteristic in
						return characteristic.isNotifying == true
					})
					.subscribe(onNext: {
						if let data = $0.value {
							if let wifiAccessPointsDelimitedString = String(data: data, encoding: .utf8) {
								let wifiNetworkEntry = WifiNetworkEntry(from: wifiAccessPointsDelimitedString)
								observer.onNext(wifiNetworkEntry)
							}
						}
					}, onError: { error in
						LOG_SENSOR_MANAGER("getWifiNetworks. onError: \(error.localizedDescription)")
						observer.onError(error)
					}, onCompleted: { // <---- Never goes here
						LOG_SENSOR_MANAGER("getWifiNetworks. onCompleted")
						observer.onCompleted()
					}, onDisposed: {
						LOG_SENSOR_MANAGER("getWifiNetworks. onDisposed")
					})
				.disposed(by: strongSelf.disposeBag)
			}
			return Disposables.create()
		}
	}

	func stopWifiNetworksScanning(for tileConnect: TileConnectBLEDevice) {
		tileConnect.peripheral.characteristic(with: TileConnectBLEDeviceCharacteristic.wifiAccessPointsList)
			.flatMap { $0.setNotifyValue(false)}
			.subscribe(onNext: { _ in
				print("setNotifyValue(false).")
			})
		.disposed(by: disposeBag)
	}

Do you have some hints?
Thanks a lot.
Thierry

Hello,
I got it working like this:
func startWifiNetworksScanning(for tileConnect: TileConnectBLEDevice) -> Observable<WifiNetworkEntry?> {

		return Observable.create { [ weak self ] observer in
			if let strongSelf = self {
				strongSelf.scanningWifiNetworksDisposable = tileConnect.peripheral.characteristic(with: TileConnectBLEDeviceCharacteristic.wifiAccessPointsList)
					.flatMap { $0.setNotificationAndMonitorUpdates() }
					.subscribe(onNext: {
						if let data = $0.value {
							if let wifiAccessPointsDelimitedString = String(data: data, encoding: .utf8) {
								let wifiNetworkEntry = WifiNetworkEntry(from: wifiAccessPointsDelimitedString)
								observer.onNext(wifiNetworkEntry)
							}
						}
					}, onError: { error in
						LOG_SENSOR_MANAGER("getWifiNetworks. onError: \(error.localizedDescription)")
						observer.onError(error)
					}, onCompleted: {
						LOG_SENSOR_MANAGER("getWifiNetworks. onCompleted")
						observer.onCompleted()
					}, onDisposed: {
						LOG_SENSOR_MANAGER("getWifiNetworks. onDisposed")
						observer.onCompleted()
					})
			}

			return Disposables.create()
		}
	}

	func stopWifiNetworksScanning(for tileConnect: TileConnectBLEDevice) {
		scanningWifiNetworksDisposable?.dispose()
	}

Is it correct?
Thanks a lot.
Thierry

Hello @thierrybucco
One thing to change is to not embed everything in Observable.create call. This does nothing useful in this case and you could simplify your code by a lot.
About ending subscription to Observable instance:
Object which is taking care of managing subscription is Disposable which is returned from the call to subscribe. By calling dispose on it you're telling that you are not longer interested in subscription and want it to stop. By calling it in this specific case we're under the hood doing disabling of notifications on characteristic.
So in summary:
Answer you've provided is the correct one 👍
Best Regards,
Kacper

Hi @Kacper20,
thanks for your comment.
I understand about not embedding everything in an Observable, but In this case, this method get data from BLE device and create an object (WifiNetworkEntry).
I don't want caller of startWifiNetworksScanning() to have to deal with raw device data coming from device.
Do you have a suggestion?
Thanks!

I would do it like that(preserving the behaviour you have currently):
func startWifiNetworksScanning(for tileConnect: TileConnectBLEDevice) -> Observable<WifiNetworkEntry?> {
    return tileConnect.peripheral.characteristic(with: TileConnectBLEDeviceCharacteristic.wifiAccessPointsList)
        .flatMap { $0.setNotificationAndMonitorUpdates() }
        .takeWhile({ characteristic in
        return characteristic.isNotifying == true
    })
    .flatMap { (characteristic) -> Observable<WifiNetworkEntry>? in
        if let data = $0.value, let wifiAccessPointsDelimitedString = String(data: data, encoding: .utf8) {
            return WifiNetworkEntry(from: wifiAccessPointsDelimitedString)
        } else {
            return .empty()
        }
    }
}

Then - you could subscribe to Observable instance returned from this method and when subscription is no longer valid - call dispose on returned Disposable instance.
Hope it helps,
Kacper

Of course!
Thanks a lot for your help and your work.
Thierry

I got:
.flatMap { (characteristic) -> Observable? in <<<< Cannot convert value of type '(_) -> Observable?' to expected argument type '(Characteristic) -> _'

Uhh, sorry.
Edited my answer to correct version - was writing this code on GitHub without compiling :)
Now this should work well

Also should it be:
return Observable.just(WifiNetworkEntry(from: wifiAccessPointsDelimitedString)) instead of return WifiNetworkEntry(from: wifiAccessPointsDelimitedString) ?

Yep, of course @thierrybucco :)


Return a promise so errors can be catched

This should also make the queue unnecessary.

Looks good.  Thanks, @dylancompanjen.


Rewrite the table name to use the name in the source, not the name in datafusion

Will be fixed by https://github.com/phillipleblanc/datafusion-federation/pull/4


Calabrating has a tendancy to drift

when I was testing the Gyro controls an tried to impliment calabrating i noticed a slight drift would acour nomater how still you where...
before calibrating:
no drifting at all. i could place the dualshock down and it wouldn't drift
calbrate 1: held dualshock straigth
drifts slowly
calbrate 2: rotate dualshock
constant spin in the rotating direction
calbrate 3: placed the dualshock on the floor
ever so slightly drifts
calbrate 4: violent shook the dualshock
rapid spinning
https://github.com/user-attachments/assets/67184a24-fc54-41a7-91c4-072dcb1e1b71
i origaly thought this was because of my dualshock until i noticed there was no drift when i didn't calibrate.

Keep in mind the controller must be not moving and on an even surface before you start the calibration process
do not move the device during this process, and only handle de device again after you stop de process
the longer the time you give it to calibrate the more accurate the readings

I left it calibrating for 2 minuets and there still was some slight drift.
i know this sound nit-picky but over time drift can distort the player's sence of the gyro controls.
https://github.com/user-attachments/assets/f1264309-26cc-4ec7-8449-0a7bba5c3984

https://github.com/user-attachments/assets/4a958f5f-0a74-416b-9e76-b8ce2602825c
unfortunately  i cannot reproduce, as you can see some drift is present at the beginning when opening the project, but after 3 sec calibration the drift goes away, i can see you have significant drift after the calibration, does it behave the same in my example project?

I tested your project and the drifting still ocourred but harder to tell because of the model.
im gonna see if the same happens with a dualshock 3
https://github.com/user-attachments/assets/d2f5c08f-ab27-4e85-addc-8ad92cbf0c2b

I've noticed that the controls in general have tendncy to drift...
In the vid I left the controler to the side and haven't touched in the whole project run time (until the end) and there still is a slight viable drift.
I have DS4windows mouse gyro controls enabled and yet I can leave the controler to the side witout the mouse drifting at all. so i don't think the drifting is an issue because of the dualshock
https://github.com/user-attachments/assets/a8d4cea4-7c05-455b-acd2-ccfc709b9029
also in the vid you shown there still is a slight drift like i'm currently suffering through (is visible because of the pixels changing)

any updates?

i sat down today to figure this out

@TheGlobalGuest
addons.zip
ok this is a newer build of the addon in which i binded the autocalibration function of gamepadMotionHelpers
you can call   Gyro.set_auto_calibration() on your ready() function to enable auto calibration, if the controll is steady it will start calibrating automatically this has the added benefit of making the values remain steady under minimum movement
even with the auto calibration enabled you can trigger a manual calibration as always
test and let me know if it works for you

Tried it and it nolonger drifts now!
https://github.com/user-attachments/assets/452fdbff-bb4b-4c93-a5dc-f2b2b1df7e68
Gyro.Calibrate() still tends to drift until auto_calibrate kicks in, this ends up leaving the orentation slightly slanted.
https://github.com/user-attachments/assets/a328a58e-a02c-412c-976a-bd69b306ffdf

I've actualy made my own calibration system and it works with no drift!
it isn't what I would call "elegent" script wise but it definitely works.
in a nutshell:
It applies an offest to the final rotation(A). this rotation(A) counteracts the gyrocontrols and only stops counteracting when calibrating stops.
this makes also makes it so i can orient my controler in any way and still have it work fine!
https://github.com/user-attachments/assets/14f3fff7-a406-419e-8bde-1e1efcdb4ca0

Most elegant solution are the ones that works for you and your project, i thinks is a similar approach to 3d-controller-overlay
By the way, i wanted to ask, are you using a Dualshock 4 right ? are you experiencing any troubles using/reading buttons in engine while the gyro is working?  i have some a reports at #11 and any info is appreciated

dualshock 4 inputs work fine for me.
https://github.com/user-attachments/assets/a4dbc663-ca88-460e-acd9-38cb7f9ed0c7
compleatly different but rotating too fast tends to offset the rotation more than normal. but i feel like thats to be expected when working with gyrocontrols
https://github.com/user-attachments/assets/675cd67d-77e4-444e-b039-2630ff11b903

compleatly different but rotating too fast tends to offset the rotation more than normal. but i feel like thats to be expected when working with gyrocontrols

Yeah it is normal when using motion for this kind of absolute orientation tracking, according to GamepadMotionHelpers: Sensor Fusion , magnetometers, like ones found on modern phones could be used to compensate and correct values but no modern controllers have them


SPIFFS_ERR_INDEX_SPAN_MISMATCH error

i have interfaced tft display(https://www.buydisplay.com/default/lcd-5-ssd1963-tft-module-touch-screen-display-800x480-mcu-arduino), W25Q128FV chip with spiffs, CY8CKIT-050 cypress kit.
i am writing BMP image to flash chip from sd card and read that BMP image from flash, but all the above things works only witj 50*50 image, if i change the size of image i get an error SPIFFS_ERR_INDEX_SPAN_MISMATCH  while closing the file
what is the reason and how can i solve this?
attaching code for reference
TFT_SSD1963.cywrk.Archive06.zip

any comments?


maxConcurrency > 0 required but it was 0 in CosmosContainer.readMany(<<List >>,<>.class)

We are getting Exception with below message frequently
java.lang.IllegalArgumentException: maxConcurrency > 0 required but it was 0    at reactor.core.publisher.FluxMergeSequential.<init>(FluxMergeSequential.java:78)    at reactor.core.publisher.FluxMergeSequential.<init>(FluxMergeSequential.java:64)    at reactor.core.publisher.Flux.mergeSequential(Flux.java:10065)    at reactor.core.publisher.Flux.mergeSequential(Flux.java:1734)    at com.azure.cosmos.implementation.query.ParallelDocumentQueryExecutionContext.drainAsync(ParallelDocumentQueryExecutionContext.java:446)    at com.azure.cosmos.implementation.query.PipelinedQueryExecutionContext.executeAsync(PipelinedQueryExecutionContext.java:120)    at reactor.core.publisher.FluxFlatMap$FlatMapMain.onNext(FluxFlatMap.java:386)    at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:127)    at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2397)    at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:169)    at reactor.core.publisher.FluxFlatMap$FlatMapMain.onSubscribe(FluxFlatMap.java:371)    at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:96)    at reactor.core.publisher.FluxJust.subscribe(FluxJust.java:68)    at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64)    at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:157)    at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79)    at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:120)    at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79)    at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2397)    at reactor.core.publisher.Operators$MultiSubscriptionSubscriber.set(Operators.java:2193)    at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onSubscribe(FluxOnErrorResume.java:74)    at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:192)    at reactor.core.publisher.MonoFlatMap.subscribeOrReturn(MonoFlatMap.java:53)    at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:57)    at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:157)    at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1815)    at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:151)    at reactor.core.publisher.Operators$MonoInnerProducerBase.complete(Operators.java:2659)    at reactor.core.publisher.MonoSingle$SingleSubscriber.onComplete(MonoSingle.java:180)    at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:846)    at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:608)    at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:588)    at reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:465)    at reactor.core.publisher.DrainUtils.postCompleteDrain(DrainUtils.java:131)    at reactor.core.publisher.DrainUtils.postComplete(DrainUtils.java:186)    at reactor.core.publisher.FluxMapSignal$FluxMapSignalSubscriber.onComplete(FluxMapSignal.java:219)    at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1816)    at reactor.core.publisher.MonoCacheTime.subscribeOrReturn(MonoCacheTime.java:151)    at reactor.core.publisher.Mono.subscribe(Mono.java:4135)    at reactor.core.publisher.FluxFlatMap.trySubscribeScalarMap(FluxFlatMap.java:200)    at reactor.core.publisher.MonoFlatMap.subscribeOrReturn(MonoFlatMap.java:53)    at reactor.core.publisher.Mono.subscribe(Mono.java:4135)    at reactor.core.publisher.Mono.block(Mono.java:1702)    at com.azure.cosmos.CosmosContainer.blockFeedResponse(CosmosContainer.java:260)    at com.azure.cosmos.CosmosContainer.readMany(CosmosContainer.java:405)    at com.azure.cosmos.CosmosContainer.readMany(CosmosContainer.java:388)    at
On investigation we found we need
We need to use below properties to get/set the concurrency in java sdk for Azure Cosmos DB:
getMaxDegreeOfParallelism
setMaxDegreeOfParallelism
But for API CosmosContainer.readMany(<<List >>,<>.class)
We cannot do this setting.
Also we saw the source code as below where it is hardocded to -1

How do we avoid this frequent exception in production. Do we need to not use this readMany API?
CosmodDB version

com.azure
azure-cosmos
4.39.0

Hi @adu11188, this exception can be thrown if itemIdentityList is an empty list. Is that the case?
If it is so, a fix for this has been shipped in v4.40.0 of azure-cosmos. If not, would it be possible to share a code snippet which we can reproduce?

Hi @jeet1995  We do have the check added for empty list check. But we see the same exception occurring multiple times.

Hi @adu11188, thanks for reaching out! Could you share a code snippet so that I can reproduce the exception and investigate it further?

Closing because of inactivity.


Fix bug with encoded urls

On initial load in the browser, the window.location.pathname will sometimes be encoded and needs to be decoded to correctly match your routes (or else something like /%C3%BCber-uns will not match /über-uns);

I believe that decoding the initial path should be handled in the history module.
The only issue that I can imagine with that would be if having the pathname already decoded interferes with path-to-regexp. That should only happen if someone uses a custom regex in a param that matches against encoded characters. The default regex just matches everything until the next /.
<Match pattern='/:encoded(\w+%20%26%20\w+)' component={Messy} />

Even in that case, I think that it would be better to have an expectation of parsing against decoded params since they are being decoded anyways in parseParams.
<Match pattern='/:decoded(\w+ \& \w+)' component={Cleaner} />

Either way, some test cases should probably be added.

Or if not in history, possibly decode the pathname in createRouterLocation.

This should also use decodeURI not decodeURIComponent so that forward slashes are not decoded (which would break path-to-regexp if a variable includes one)
decodeURI('foo%2fbar') === 'foo%2fbar'
decodeURIComponent('foo%2fbar') === 'foo/bar'


tentative fix to address bash problem #490

Here, I try to address the problem in #490 with smaller change to the code.
The following command can be detected:
exec ls

if echo hello;
then echo world
fi

exec ls

exit

However, the following command have problem and it can be improved.
exec ls \
/usr/bin

command \
exec \
final

I will try to improve this in later time. For now, it is a draft.

I think the implementation is better than mine. Perhaps I can close my PR.🥲
The advantage of my implementation is the ability to handle bash commands that fail due to closing the terminal.
For example:
> sleep 30s # a time-consuming bash command
# Then, close the terminal before the command ends

I  hook the function exit_builtin and  exec_builtin in shell. I have confirmed that this two function at least have existed since 1996-08-26.
run the following command in bash source code.
git blame -L 57,67 builtins/exec.def
git blame -L 57,67 builtins/exit.def

726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 100) exec_builtin (list)
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 101)      WORD_LIST *list;
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 102) {
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 103)   int exit_value = EXECUTION_FAILURE;
8868edaf2 (Chet Ramey 2020-12-06 15:51:17 -0500 104)   int cleanenv, login, opt, orig_job_control;
d166f0488 (Jari Aalto 1997-06-05 14:59:13 +0000 105)   char *argv0, *command, **args, **env, *newname, *com2;
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 106)
74091dd4e (Chet Ramey 2022-09-26 11:49:46 -0400 107)   cleanenv = login = orig_job_control = 0;
495aee441 (Chet Ramey 2011-11-22 19:11:26 -0500 108)   exec_argv0 = argv0 = (char *)NULL;
ccc6cda31 (Jari Aalto 1996-12-23 17:02:34 +0000 109)
ccc6cda31 (Jari Aalto 1996-12-23 17:02:34 +0000 110)   reset_internal_getopt ();

^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 57) exit_builtin (list)
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 58)      WORD_LIST *list;
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 59) {
a0c0a00fc (Chet Ramey 2016-09-15 16:59:08 -0400 60)   CHECK_HELPOPT (list);
a0c0a00fc (Chet Ramey 2016-09-15 16:59:08 -0400 61)
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 62)   if (interactive)
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 63)     {
3185942a5 (Jari Aalto 2009-01-12 13:36:28 +0000 64)       fprintf (stderr, login_shell ? _("logout\n") : "exit\n");
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 65)       fflush (stderr);
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 66)     }
^726f6388 (Jari Aalto 1996-08-26 18:22:31 +0000 67)

finally,
git log --reverse
commit 726f63884db0132f01745f1fb4465e6621088ccf
Author: Jari Aalto<EMAIL_ADDRESS>Date:   Mon Aug 26 18:22:31 1996 +0000

    Imported from ../bash-1.14.7.tar.gz.

I also provide some test case as follows:
1:
for i in {1..10}
 do
 echo hello
 done

2:
if echo hello
 then echo world
 fi

3:
exec ls

4:
exit 42
exit 1 2 # too many argument

5:
ls \
exec \
/dev

6:
exec \
echo hello world

7:
hello(){
echo hello
}
hello

8:
hello(){
echo hello
}
exit

I think it is more appropriate to change bashEvent.eventType from EventTypeOutput to EventTypeEventProcessor.
Consider this situation:
During the execution of a long-consuming bash command, the session in which it was located was closed. This will cause the contents in the bpf map to not be released. The root cause of this bug is that readline and execute_command are not strongly related in this case.
Bad Case:
> sleep 30s # a time-consuming bash command
# Then, close the session before the command ends

After repeating 1024 times, the bpf map event_t will reach the maximum capacity, causing eCapture to not work.
In PR#508, the above situation will be output as a timeout and will not cause a memory leak.


Update s2i image from library.

What type of PR is this?
/kind bug
What does does this PR do / why we need it:
The upstream library updates the link for s2i imagestream. There are errors when running odo ci script on OCP/Z.
oc annotate istag/wildfly:latest --namespace=openshift tags=builder --overwrite
imagestreamtag.image.openshift.io/wildfly:latest annotated
++ oc apply -n openshift -f https://raw.githubusercontent.com/openshift/library/master/arch/s390x/official/nginx/imagestreams/nginx-rhel7.json
error: unable to read URL "https://raw.githubusercontent.com/openshift/library/master/arch/s390x/official/nginx/imagestreams/nginx-rhel7.json", server reported 404 Not Found, status code=404

Which issue(s) this PR fixes:
Fixes #?
PR acceptance criteria:

[ ] Unit test

[ ] Integration test

[ ] Documentation

[ ] I have read the test guidelines

How to test changes / Special notes to the reviewer:

/ok-to-test

/retest

/area system-pz


could you please solve the problem on my installing?

Hi, distinguished composer! I'm a freshman in machine learning. I want to use the hypergbm on dealing with a classification task. But after I pip intall hypergbm, I met some problem that made me fail to install the package. Could you please take a look and help me with the problem. I'll be greatly appreciated!
Downloading packaging-21.3-py3-none-any.whl (40 kB)
|████████████████████████████████| 40 kB 657 kB/s
Building wheels for collected packages: jieba, python-geohash
Building wheel for jieba (setup.py) ... done
Created wheel for jieba: filename=jieba-0.42.1-py3-none-any.whl size=19314477 sha256=659d5db71012e50daa40cc083515d9987ee8e99ea451a3ea44db3582773fc490
Stored in directory: c:\users\li-hy\appdata\local\pip\cache\wheels\24\aa\17\5bc7c72e9a37990a9620cc3aad0acad1564dcff6dbc2359de3
Building wheel for python-geohash (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: 'C:\aanaconda\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\Li-hy\AppData\Local\Temp\pip-install-zidv_k76\python-geohash_da12afeb154e40c388f7e2b935782a23\setup.py'"'"'; file='"'"'C:\Users\Li-hy\AppData\Local\Temp\pip-install-zidv_k76\python-geohash_da12afeb154e40c388f7e2b935782a23\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(file) if os.path.exists(file) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\Li-hy\AppData\Local\Temp\pip-wheel-hx133l9c'
cwd: C:\Users\Li-hy\AppData\Local\Temp\pip-install-zidv_k76\python-geohash_da12afeb154e40c388f7e2b935782a23
Complete output (12 lines):
running bdist_wheel
running build
running build_py
creating build
creating build\lib.win-amd64-3.7
copying geohash.py -> build\lib.win-amd64-3.7
copying quadtree.py -> build\lib.win-amd64-3.7
copying jpgrid.py -> build\lib.win-amd64-3.7
copying jpiarea.py -> build\lib.win-amd64-3.7
running build_ext
building '_geohash' extension
error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio": https://visualstudio.microsoft.com/downloads/
ERROR: Failed building wheel for python-geohash
Running setup.py clean for python-geohash
Successfully built jieba
Failed to build python-geohash
Installing collected packages: packaging, jedi, llvmlite, distributed, seaborn, python-geohash, pyarrow, plotly, numba, lightgbm, featuretools, dask-glm, slicer, hypernets, dask-ml, catboost, shap, jieba, hypernets-jupyter-widget, hypergbm
Attempting uninstall: packaging
Found existing installation: packaging 20.9
Uninstalling packaging-20.9:
Successfully uninstalled packaging-20.9
Attempting uninstall: jedi
Found existing installation: jedi 0.14.1
Uninstalling jedi-0.14.1:
Successfully uninstalled jedi-0.14.1
Attempting uninstall: llvmlite
Found existing installation: llvmlite 0.31.0
ERROR: Cannot uninstall 'llvmlite'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

I have solve the problem, thanks!

Hi,huayu95, thanks for using hyperGBM.
There are some simple examples in  hyperGBM.example , you can learn from it.
All comments are more than welcome while using hyperGBM.

I have solve the problem, thanks!

how did you do ?
waiting for your replay

I just downloaded the installed corresponding version of python-geohash and llvmlite  whl file.

I just downloaded the installed the corresponding version of python-geohash and llvmlite whl file.

What about the Microsoft Visual C++ 14.0 is required?
Have you do something else?

I just downloaded the installed the corresponding version of python-geohash and llvmlite whl file.

What about the Microsoft Visual C++ 14.0 is required? Have you do something else?

No, the Microsoft Visual C++ 14.0 is not dispensable. I just installed the corrsponding version package mentioned in the  warning.

okey, thank you a lot...

need
yum install gcc-c++


fix(pointcloud): Fix the feature of COPY_BACKWARD_RESULT

:tada: This PR is included in version 1.0.0 :tada:
The release is available on npm package (@latest dist-tag)
Your semantic-release bot :package::rocket:


Setup is missing tastypie dependency.

Seems other related projects use django-tastypie==0.12.2 in combination with Django==1.8.10.

Resolved on develop.


[0.0.3] Back engines stopping on curve get disconnected

Hey, thanks for this great mod.
I've had a lot of trouble with trains losing an engine off the back end if the engine is on a curve when the train comes to a stop.
I run 242 trains, and where I notice the biggest problem is the train stopping at a signal, and the back end of the train is on a curve. The end locomotive becomes disconnected.
I'm running v0.0.3

Interesting. This may actually be a bug in Factorio it self and something I might not be able to fix in the mod. I'll have a look at this when I get back from vacation.

So, I created a demo map for this. Set the train to run to 2n, and when it comes to a stop at that station, the back engine will disconnect as it spins around. The first half of the train is left on manual and the 2nd single engine will be on automatic, but "no path"ing.
In my game where I noticed this behavior, sometimes the first (bigger part of the) train will keep going. It isn't guaranteed to stop there, but the flipped (dropped off) engine so far as I've noticed always remains where it was dropped.
Attached files: save game and mods
traindisconnects2.zip
mods.zip

Yeah my guess is that it fails to reconnect the locomotive to the rest of the train even though it just disconnected from it so in theory it should still be in range to reconnect but somehow the curve messes with this.
Before I went on vacation I was investigating a different way to do the rotations which could fix all the bugs that are open right now. I'm hoping to be able to make it more reliable and smoother but as mentioned I'll have a look at it when I get back from vacation.

You know the expression, "I can't wait..." Well, I do hope your solution works.
In the game, I can use G to connect manually from the locomotive that is disconnected, so you'd think it would work in code. Though, since I don't really "know" that what I'm seeing is what is translated to in game, I thought I'd try in the rotate to connect both ways, but it doesn't work as I tried. So I commented it out. By someone (you) that knows what they're doing, it might make sense, or your solution when you get it working.
	if front then
		loco.connect_rolling_stock(defines.rail_direction.back)
		--defines.rail_direction.back.connect_rolling_stock(loco)
	end
        if back then
		loco.connect_rolling_stock(defines.rail_direction.front)
		--defines.rail_direction.front.connect_rolling_stock(loco)
	end

When you started this mod, did you "suggest a new feature" for the API on factorio forums for allowing rotating an engine even while connected? If not, it might be worth doing so. I'll give it a +1.

I may be a step beyond requesting API features since I can implement them myself in Factorio in the form of a pull request directly. I just haven't had the time these past weeks.

Any word on this? I love the mod, but I'm going to disable it. My train network keeps breaking because of this bug, as trains get stuck. I've 100ish trains, and it gets messy.

Could you test this in version 0.0.4 and reopen if it still is not working correctly?

I'll give this a go right away.
Tested on the test map I'd made, and it worked.
Loading it back into my big game. We'll see how it goes.

Sorry to say, not all is well. Within minutes, my personal maintenance train lost its caboose (its a 2 locomotive train) when it came to a stop.
Screenshot

Can you manually reconnect those without moving the locomotives from the moment they disconnected?

Hm if you can't reconnect them manually then that is the issue. I'll think about if and how to do it from the connected rolling stock and if that would even be a good idea to do.
I'm curious if you are able to make a reproducible world where this happens reliably (since I can't seem to make that specific thing happen on my worlds).

Okay, managed to create a demo map that loses the end locomotive reliably. It's the bottom right L shaped track. Every time the train goes from 1 > 2, it loses the engine as it accelerates away from 2.
1_test loosing caboose.zip
Just so you're not confused about which train track it is, it's this one.

Hm. Looks like pretty much all cases that I've seen with separating trains is when they are accelerating and being rotated while on an intersection.
I've not fixed the actual bug but I did add settings so you can increase how often the mod checks trains. By default I set it to 8 which means it now checks every 8th tick which is faster than what it was before (15). With this adjusted speed it "fixes" the map you made but I'm sure it does not fix all situations.
What you could try is see if faster rates fix your big maps. The lower the number the faster the updates are but it'll cost a little extra on performance (not sure how much since I don't really have a large map with loads of trains to test on yet).
This is released now in 0.0.6.

Okay, I'll give it a shot. I've also been playing around with this, and have succeed as well. Before the call to disconnect, I copy train.carriages to a global variable, then when try reconnecting I iterate over the carriages and attempt to connect in each direction.
loco.connect_rolling_stock(defines.rail_direction.back)
loco.connect_rolling_stock(defines.rail_direction.front)

for _,car in pairs(global.carriages) do
	if car.unit_number ~= loco.unit_number then -- if we're not the locomotive we're connecting
		car.connect_rolling_stock(defines.rail_direction.back)
		--if loco.train.id == car.train.id then return end -- we're connected
		car.connect_rolling_stock(defines.rail_direction.front)
		--if loco.train.id == car.train.id then return end -- we're connected
	end
end

Add in the if (ids match) returns and it no longer works, which doesn't make sense to me.

You're welcome to load my game. The files for the mods I use and map are located on this factorio forums bug post

Okay, trains still become disconnected at 8, so I've changed it to 2. This is without my change, just the 0.0.6 version. Even at 2, the mod is only consuming 0.4 game cycles, so it isn't horrible.
Before I changed the setting, here is the current map with the disconnected train at the "_W1 1 W" train stop intersection. That's straight west from where you spawn in. You can use the train parked at Dune2 to get there. Before you go, there is an armory of equipment at the ARMOR location pinned to the map if you want equipment. This map was originally a multiplayer game I'd hosted.

Train ids change completely each time you connect or disconnect a rolling stock. This is why your train ID's are increasing over time with my mod enabled. The reference to car and its id are likely still the old references before the reconnecting.
I also wanted to avoid doing something like you are doing since it adds a lot of extra references and additional fuss around something that I think is either a factorio bug or something else which I'd rather pin down correctly before creating all kinds of work arounds.
I'd like to know if your big map with lots of trains works properly if you increase (and to what value) how often the mod checks trains.
I have a suspicion that at some value no issues will occur at all. I can't test this myself as I don't have a train network like yours with as many trains (My trains will never stop on junctions for instance).

Is 2 the highest value you can use to run your train network reliably or can you go higher?
I'll look at your saves tomorrow perhaps and see if I can find some way to improve things.

Which is better a lower number or higher? I was thinking lower is better. I'm about to switch to 1 from 2, the minimum it can be, since I think I'm still getting disconnects with 2.

Well the term "better" is subjective here. The higher the number is the less UPS the script will eat but if it can't work properly at all without being 1 then the UPS hit is still "better" than it failing. I'm just curious if setting it to 1 actually fixes it or if it still can bug out at 1.
If it still can bug out at 1 than the current path of "fixing" is just a failure and I should be looking at a different method.

I was waiting to reply until I heard if 1 was better. No it didn't help and I disabled the mod with the new setting. Thanks for putting that in.


is it typescript supported?

Hi,
can we integrate jExcel with Angular and Type Script ?
Please share some examples
Regards
Jay

Hi Jay,
Please find a working example for using jexcel with angular,
link
Jexcel is wrriten in pure javascript. For using jexcel in angular (typescript), necessary type definations are added in the example.

https://www.npmjs.com/package/@types/jexcel


FIRECERT-1494-Move documentation from ghec to rdkcentral

Description
To port new documentation to RDKCentral FCA from GHEC FCA
JIRA Ticket
https://ccp.sys.comcast.net/browse/SYSTEST-9585
Additional Info (Test steps / Steps to reproduce etc.)
Details on how to test the feature

 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: Nandana-NNR:x: nneela690You have signed the CLA already but the status is still pending? Let us recheck it.


Add support for GCE managed addresses to Jenkins X playbook

Add support for managed addresses. This depends on changing the jx-requirements.yml to support clusterIP need to add field to schema: https://github.com/jenkins-x/jx/blob/master/pkg/config/install_requirements.go then add to external-dns/values.tmpl.yaml

Hi @craigdbarber
I'm interested in this support.
It's currently uncommented on https://github.com/GoogleCloudPlatform/jenkins-integration-samples/blob/master/jenkins-x/jxboot/jx-requirements.patch.yaml#L42 but it seems not yet supported according to this documentation: https://jenkins-x.io/docs/reference/config/config/#config.jenkins.io/v1.IngressConfig
Do you have any update on this please?


Reduce builds

There is one build too much

Does this includes tags?

Does this includes tags?

No.
It just reduce double build on pull requests


Permanent fixing

Permanent fixing maybe possible by checking version then rewriting the log4j jar with either forcing disable lookups or killing strlookup or something.
The issue may be some av who check if something is rewriting something it shouldn't be or things checked against checksums. (If these happen I don't particularly know enterprise security for programs and things).
Maybe provide permanent vaccine as an separate file? If file change fails only do temp vaccine?
Maybe make vaccine log more to show maintainers of the affected program that it has been used.

Permanent fixing maybe possible by checking version then rewriting the log4j jar with either forcing disable lookups or killing strlookup or something.

This might interest you
https://github.com/Cybereason/Logout4Shell/pull/8

Thanks to @TudbuT's patch and some changes - we implemented permanent patching.


Add installation tip for those using ChefDK to the README

Got the idea from https://github.com/matschaffer/knife-solo/blob/master/README.md.

Thanks for the PR. If you could squash the 2 commits into 1 I'd be glad to merge.

@joeyates thanks - squashed.

Merged, thanks.


⚠ Bofrost.de has degraded performance

In 1cf0750, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 847 ms

Resolved: Bofrost.de performance has improved in b412a69 after 10 minutes.


Reduce or remove black space

Is there a way in the app to have it place 2 images side by side so there is no black space on the sides?  This is how it works on the chrome cast. Thanks

There's no way to add two photos side-by-side, but you can add a background "blur" which removes the black spaces around the photos. Go into settings and Display type.

Thanks, I knew about that feature and is what we currently use. Was just seeing if the 2 images would be an option or if it was a limitation on the Google API or something. Thanks for the great app btw.


Unhandled command: PUSH_LIST_CHANGE

Describe the bug
Unhandled command from alexa_media_player integration.
To Reproduce
Steps to reproduce the behavior:

Configure this integration
Clear a whole list through Alexa (e.g. shopping list)
Check logs
See warning

Expected behavior
No warning at all. Is there an event risen if a command is recognized, so I could react on the clear list?
System details

Home-assistant (version): 2021.2.3
Hassio (Yes/No): Yes (Please note you may have to restart hassio 2-3 times to load the latest version of alexapy after an update. This looks like a HA bug).
alexa_media  (version from const.py or HA startup): 3.8.1
alexapy (version from pip show alexapy or HA startup): 1.22.3
Amazon 2FA is enabled (y/n). We will not debug login issues if unanswered: -

Logs
Unhandled command: PUSH_LIST_CHANGE with data {'destinationUserId': 'A**********IZA', 'listId': 'YW16bjEuYWNjb3VudC5BRUE3SUlDN1NIRUw3NEpTQlpKRUFSVUVHRVBRLVNIT1BQSU5HX0lURU0=', 'version': 1, 'eventName': 'listCleared'}. Please report at https://github.com/custom-components/alexa_media_player/issues

Thanks. We'll set this to ignore since we don't do anything with the shopping list.

Is it possible to raise an event with the unhandled commands and then do nothing more?
This could be a really nice interface that would make every IFTTT applet obsolete that I currently have.

Yes it's possible. It's also really spammy which can saturate the HA logs. In not inclined to expose these events without an actual use case.

Okay, thanks. Maybe I'm going to open a feature request in the future because I would have a use case.

Let's leave it open until I actually add it to the ignore list.


Fixed compilation error in ChattoApp in Xcode 8.3.2

Codecov Report

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

@@           Coverage Diff           @@
##           master     #318   +/-   ##
=======================================
  Coverage   64.19%   64.19%
=======================================
  Files          63       63
  Lines        3516     3516
=======================================
  Hits         2257     2257
  Misses       1259     1259

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 8cd304b...39f0160. Read the comment docs.