Allow to pass a Proc for a default property value

This pull introduces/changes:

Allow to pass a Proc for a default property value. Similar to mongoid, which allows to have dynamic default values.

Pings:
@cheerfulstoic
@subvertallchris

Current coverage is 98.09% (diff: 100%)

Merging #1250 into master will increase coverage by 0.74%

@@             master      #1250   diff @@
==========================================
  Files           189        189
  Lines         11339      11140   -199
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits          11039      10928   -111
+ Misses          300        212    -88
  Partials          0          0

Powered by Codecov. Last update 14fe795...d8baf67

This is great, thank you!  I think it would be good to have one more spec that verifies that the proc is called each time.  So maybe it would increment some value rather than returning a static string.
Also, we can't use the stabby proc syntax (-> { }) because we need to support jRuby 1.7.  So could you change that to an older style proc / Proc.new / lambda?
Aside from that it seems great to me!

@cheerfulstoic Ok, good points. I just noticed that it doesn't work as supposed (same static value for each record). Going to fix them and add the spec you mentioned.

@cheerfulstoic Done. The build fails for jruby 1.7 on gem bundling - don't think it's the PR-related.

I think that you're right.  @ProGM you had an issue with tins on the new_cypher_api branch, right?  Could it be that there was a version update and both of our branches started failing?  I've got to go to sleep, but feel free to merge this if you have time and think you can fix it.  Otherwise I'll do it Monday morning

(Oh, and a CHANGELOG.md entry, of course ;)
Thanks @knapo !

@knapo As @cheerfulstoic said, I encountered the same issue today on new_cypher_api branch.
I fixed it by adding this to my Gemfile:
gem 'tins', '< 1.7' if RUBY_VERSION.to_f < 2.0

Since tins is just a dependency on coveralls it shouldn't affect the gem that we release
Try that change and see if Travis passes.  If not, I'll merge it anyway and figure out a way to fix it on Monday.  Thanks!

@cheerfulstoic @ProGM Forcing tins version helped - build's passing now. Thx!

LGTM 👍
Merging, thank you @knapo


Codecrunch compile error

Summary
Code crunch not compiling my code but javac -Xlint:rawtypes *.java does
Description:
Code crunch compiles with the following COMPILATION ERRORS. When doing javac it doesnt throw these error messages.
Roster.java:33: error: isEmpty() has private access in Optional
        if (stu.isEmpty()) {
               ^
Roster.java:37: error: isEmpty() has private access in Optional
        if (mod.isEmpty()) {
               ^
Roster.java:41: error: isEmpty() has private access in Optional
        if (assess.isEmpty()) {
                  ^
3 errors

Code Snippets
String noRecord = String.format("No such record: %s %s %s", stuName, modName, assessName);
Optional<Student> stu = this.get(stuName);
if (stu.isEmpty()) {
    return noRecord;
}
Optional<Module> mod = stu.flatMap(st -> st.get(modName));
if (mod.isEmpty()) {
    return noRecord;
}
Optional<Assessment> assess = mod.flatMap(md -> md.get(assessName));
if (assess.isEmpty()) {
    return noRecord;
}
Optional<String> str = assess.map(as -> as.getGrade());
return str.orElse(noRecord);

Screenshots

Yeah I found the same issue too when I used get() in another part of my code. For your code, I don't think you need all the if statements. Even if you do get Optional.empty(), you should still be able to pass it through flatmap, just like the flatmap chain in the jsh file. Your code should be fine after removing those parts. (If not, you can basically copy the same command from that line and change a bit to get the correct code.)


(tests) Improve coverage of binary operator type combinations

This is done using a new BinaryOperatorData class. The purpose of this class is to have a centralized location where "all" test data for the binary operators can be placed. This way, when adding a new type you can go through all the binary operators in a single place and add test cases for the newly added type, ensuring that it works  correctly with them all.
These tests pave the way for fixing #311. The fix for these errors (and making them be ValidationError instead of RuntimeError) will be done in one or more separate PRs.
Note: not all combinations of types are supported yet, but the coverage is much better with this PR than before it, as illustrated by these quite amazing stats:
Before
556 tests
After
834 tests

This is really a lot of work... Here's some status on the test data for the operators:

[ ] Subtraction
[ ] SubtractionAssignment

This one has quite out of hands since I started working on it some weeks (!) ago. Here's some status on the test data for the operators, mostly to help myself keep track of all the work and what parts of it are now done:

Hmm, I don't really have the energy to keep this dragging on much longer (as mentioned, it's already been going on for weeks). It's not complete in that sense (not all operators have test data for all types supported by the language), but... let's live with it. :grin: Let's just merge it and fix the remaining test data in a separate PR. I'm also looking to add a new test which enforces that all operators have proper test data; it will make it much easier to ensure I didn't miss any type combination by mistake.

Here's some status on the test data for the operators, mostly to help myself keep track of all the work and what parts of it are now done:

I'm also looking to add a new test which enforces that all operators have proper test data; it will make it much easier to ensure I didn't miss any type combination by mistake.

The proper fix to ensure that all operators have:

Full test data for all supported type combinations and
We don't forget to add test data for any operator and
We keep it this way to avoid regressions in the future (especially important when #70 is being implemented). :tada:

...is now available in #316. With the latest changes in place, it should now be CI clean. :rocket: Let's see if it in a few moments. :sweat_smile:


Is it a way to using NEKit in React Native

ref: https://facebook.github.io/react-native/docs/native-modules-ios.html#exporting-swift

NEKit is in no way special than other swift framework. So if react native can set up correct entitlements then of course.


Does not prompt the "value" property for "document.getElementById("inp").value"

Are you using TypeScript, JavaScript, JavaScript with Salsa?

Thank you for quick response. I am trying to use HTML with JavaScript. Just
simple.
Kind regards
Anton
On Tue, Feb 9, 2016 at 9:48 PM, Erich Gamma<EMAIL_ADDRESS>wrote:

Are you using TypeScript, JavaScript, JavaScript with Salsa?
—
Reply to this email directly or view it on GitHub
https://github.com/Microsoft/vscode/issues/2834#issuecomment-181811875.

I think the underlying problem is that the JS language service identifies the result of document.getElementById("inp") to be an Element. But not all Elements have a value property. So there's no way to know that "inp" points to an input or textarea to suggest value.


Reuse HttpClient

Currently, HtmlWeb does not reuse a client, and spins one up on every call:
      HttpClient httpClient = new HttpClient((HttpMessageHandler) httpClientHandler);

This is in contravention of the recommendations from .NET:

HttpClient is intended to be instantiated once and re-used throughout the life of an application. Instantiating an HttpClient class for every request will exhaust the number of sockets available under heavy loads. This will result in SocketException errors.

Hello @gtoombs-microsaas ,
Thank you for reporting, you are right.
However, there is also some customization in the HttpClient such as https://github.com/zzzprojects/html-agility-pack/blob/def26b2d2f5ea8e6a077d1dd8ec145004a6cf424/src/HtmlAgilityPack.Shared/HtmlWeb.cs#L1833 and the handler which currently make it impossible to re-use the same HttpClient in some scenario.
However, we will look at if we can re-use it when none of those setting are configured which is pretty much the case probably 99% of the time.
Best Regards,
Jon

@JonathanMagnan Good news! The specific line you referenced:
client.DefaultRequestHeaders.Add("User-Agent", UserAgent);

is fairly easy to convert to a per-request setting of headers. There are many convenient ways to do this, including holding those headers in a member variable and applying them en-masse to a request.

Hello @gtoombs-microsaas ,
The v1.11.40 has been released.
The same HttpClient (per UserAgent) should now be re-used whenever is possible.
Let me know if everything works as expected.
Best Regards,
Jon

Amazing, thanks! I'll check it out.


Add the ability to print the connector version

Add a --version flag which prints out which version of the connector is running. This is useful when debugging.

Will a cmd like version work? i.e
$ ./timescale-prometheus version
using patched pgconn
Version:  0.1.0-alpha.4.1

A simple way of achieving this would be to add a block like this in main.go
	versionFlag := os.Args[1]
	if versionFlag == "version" {
		fmt.Println("Version: ", Version)
		os.Exit(1)
	}

OR
we can use https://github.com/spf13/cobra (CLI library) for adding more cmds in timescale-prometheus like run, version, etc...
I'm open to suggestions & thoughts.

if we do promscale -h, we already get to know the version at the last line. So, not sure why we need this. Anyways, a version flag is common among binaries.


Fixed 35561 -- Made *args and **kwargs parsing more strict in Model.save()/asave().

Trac ticket number
ticket-35561
Branch description
Fixing a 5.1 release blocker to ensure that arguments passed to Model.save() and Model.asave() do not allow for unsupported or duplicated parameters.
Checklist

[X] This PR targets the main branch.
[X] The commit message is written in past tense, mentions the ticket number, and ends with a period.
[X] I have checked the "Has patch" ticket flag in the Trac system.
[X] I have added or updated relevant tests.

Thanks for getting this started @nessita . A shared parsing method is a good idea at this point.
I’m not such a fan of calling it in all cases though - it’s adding a lot of extra code to the usual keyword-only path. If we can get back to only doing extra work if args is passed, that would be great. Something like:
def save(self, *args, force_insert=False, ...):
    if args:
        force_insert, ... = self._parse_args(args, force_insert=force_insert, ...)

and have _parse_args check force_insert etc. against their defaults in that case.

Yeah I guess we could do something like this, but I'm not comfortable with allowing passing both the positional arg and the named arg in the same call (which, IMHO, the only way to detect this is checking against a sentinel and not against a boolean, or None).

Also, I had the idea that we might be able to leverage inspect.Signature.bind to do the parsing for us.

TIL about signature, I like it. The thing I can't see (yet?) is how to construct the real given *args and **kwargs without using sentinels for the kwargs (because comparing the named params against their default does not guarantee that the callsite did not pass it explicitly with its default value).
Does that make sense? Am I getting too picky?

Right, I wasn't thinking of calls that pass the defaults in keywords, like Model.save(True, force_insert=False). You’re right the only way to detect that is to change the defaults to sentinel values.
A reason I just thought of to avoid sentinels, or generic *args, **kwargs, is editor autocomplete. To help users correctly fill in arguments, it’s best to keep the function signature accurate during this transition. (It would also help with typing in django-stubs.)
Since we will still warn if there are any positional arguments, maybe it is a bit “picky”, or at least unpragmatic, to try and detect the “passed default” case.

Since we will still warn if there are any positional arguments, maybe it is a bit “picky”, or at least unpragmatic, to try and detect the “passed default” case.

Fair enough, thanks for convincing me :-)
I have pushed a simpler helper to be used in both save and asave, only when args is given. What do you think?

LGTM! The only thing I would change is to name the method _parse_save_params so it’s clearer what it’s for, especially since Model has so many members. Also, this will help reduce the (already small) risk of colliding with method names in users’ subclasses.

LGTM! The only thing I would change is to name the method _parse_save_params so it’s clearer what it’s for, especially since Model has so many members. Also, this will help reduce the (already small) risk of colliding with method names in users’ subclasses.

Good point! I created #18319 for this rename.


chore: fixing redundant AVX2 macro in runtime filter

What type of PR is this：

[x] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] I have added user document for my new feature or new function

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

run starrocks_admit_test


Dcos 2.2

Description

add dcos-2.2

(made sure that the docs-redirect works: https://github.com/mesosphere/dcos-docs-site/pull/3314/files)

removed information on the master-card to not indicate that there
will be a 2.3 release yet.

it now looks like this:

just saw that there's a staging env. will test deployment to that. 🎉


Version 6 documentation and CHANGELOG

Updates docs removing outdated content and adds CHANGELOG entry for v6 release.
Images for Changelog:
Schema Context Menu

Vis Sidebar

Query Save Dialog

User Profile Dialog

Simplified Query List

Multiple Statements UI - Running

Multiple Statements UI - Error

@rickbergfalk maybe change the conyez menu to say "copy table name to clipboard" to be more explicit?


Read More added in the first line

Read More added in the first line , but my condition was to add it after the 3rd line.
This happens after you only reload 1 cell in the table view , then the next cell after that automatically shows "read more" for 1 line text only.

Did u find solution?

its working fine with setting textReplacementType to .character


Improve circleci bundle install error messages

This helps with troubleshooting Circle CI problems when the Gemfile and Gemfile.lock don't mach. Before this change, you would only see a failed step once the ruby_tests job started to run and the error for that failed step would me misleading as to the cause of the problem.
With this change, the error will show up in the bundle_install step, and will be more explicit about what the discrepancy is.
Here is a screenshot of what that more helpful error will look like:

AWESOME!


Disable noobaa in new deployer

Signed-off-by: kesavan<EMAIL_ADDRESS>

@kesavanvt Can you also remove the  noobaa-core and noobaa-db from the resource section?

@kesavanvt Can you also remove the noobaa-core and noobaa-db from the resource section?

Thanks, Done

@JohnStrunk Can you please merge this PR?


Add the GroupedUpdate field to CreatePullRequest

This is a question in PR form, apologies!
As part of the grouped update spike, we are going to add a new field that is sent when the PR is created indicating if it was generated from a "Group Rule" or not.
In future this flag is likely to come along with a small value object that has the id/name/etc of the group rule.
On my spike, I get errors from the CLI that this column is not validate as part of the CreatePullRequest struct, so the obvious answer is to add it!
The less obvious part is the sequence I should following in doing this as right now the field is only sent if:

You are using my spike
You have an experiment enabled

My plan is to open a PR which adds the column, sent as 'false' by default to core soon ™. As part of that, I'll need to update the end 2 end tests for the CLI to include it, so I'll potentially need to change the CLI first, but it seems like that could be a 🐔 and 🥚 problem where tests will fail somewhere until both merge.
So my question is this: would the easiest approach be to add GroupedUpdate with omitempty, on the assumption that existing end-to-end tests will still pass until I update core, then circle back and do a subsequent update to the CLI which removes the omitempty ?

This is a question in PR form

I love that you're asking in public, and I'll weigh in with my limited viewpoint 😅

In future this flag is likely to come along with a small value object that has the id/name/etc of the group rule.

I like this idea, and would personally like to see it as a starting point. I'm biased toward using a more data-rich value, like a string mapping to Grouping or GroupRule. 👍 to omitempty 😄

I like this idea, and would personally like to see it as a starting point. I'm biased toward using a more data-rich value, like a string mapping to Grouping or GroupRule. 👍 to omitempty 😄

Apologies I merged before I saw this comment - I think that's a fair call out, but the API already has the boolean flag so this is required as a compatibility change for the existing code in API.
Since we're not persisting these flags, I'm ok with the redundancy and we can circle back to remove the field once we iterate further?


This library doesn't support IPv6

IPv6 doesn't work because the UdpSocket is always bound to IPv4. send_to then always fails, but the error is silently ignored.
Took me quite a while to find this ...
This could be fixed by checking if the address is IPv6 or IPv4 and then binding to <IP_ADDRESS>:0 for IPv4 and to [::]:0 for IPv6.

Closing as a pull request is open now.

Can you please push the new version to crates.io?

Done. I thought I had done it last night, but the publish failed with an error.


Add @programmerq to docker/docker curators

I'd like to propose adding @programmerq to our list of curators.
Jeff has always been very involved in answering user questions on IRC, Google groups, forums. He offered to help triage issues on docker/docker.

LGTM 🐯

LGTM

:tada:


Benchmark compatible with latest version of Ansible and Python 3.8

Error when running with latest version of ansible:

GPG key for YUM
Extra CNF file on VTTablet not being called

Code to change to make compatible for python 3.8
(initialize_benchmark.py)
def recursive_dict(data,ip):
     for k, v in data.items():
        if isinstance(data[k],dict) and k == "hosts":
            data[k] = recursive_dict_ip(data[k],ip)
        elif isinstance(data[k],dict):
            data[k] = recursive_dict(data[k],ip)
     return data

def recursive_dict_ip(data,ip):
    for k, v in data.items():
        old_key = k
        data[ip] = data.pop(old_key)
    return data

@Akilan1999 shall we close this issue since we migrate to Go?


Removed dependency of error_views

This allows one to use the default laravel error messages.
Since I deleted the error views from \resources\views\errors\***.blade.php I was getting an error because of the render by AccessDeniedException.php.
@tabacitu I also think backpack/base should not publish the views for error messages, or at least they should be updated. This is the new design, which can be easily modified.

Tell me what you think about backpack/base and I may help with a PR.

Hi @promatik ,
I like the new errors in Laravel - I agree they look much better than standard Backpack errors. I got excited there for a moment - I was hoping we can finally delete the error views entirely :-) But the underlying reason we decided to publish the error views is still there: Laravel does have nice views for a few errors, but it does NOT have nice views for all erorrs Backpack uses. Nor does it have a catch-all error view that looks similar to the other error views. When it doesn’t like the error it just throws an unstyled “whoops” page.
For example:

404 looks nice:

401 does NOT look nice:

And since it doesn’t look like we can have a default.blade.php or some sort of a catch-all, and we do throw other errors, like 401, 403, etc, I can only see two ways of providing a consistent UX for Backpack users:
A) Publish error views (downside: they will be used for non-backpack pages too)
B) Upon Base installation, ask developers to modify their Handler.php to include a catch-all (downside: one more installation step).
For the sake of NOT adding installation steps, we decided to go with (A). I see not much has changed in 5.7 (other than prettier error views for supported errors), so I’m afraid we still have to publish our own error views:

they treat the errors we use;
they provide a consistent UX for all errors;
they allow us to show a custom message to the user, right when we’re throwing them (abort(401, “You can’t do that, man.") will actually show that text the user; default Laravel views won’t do that);

As it happens, I have been working on new error views, they’re a little prettier and they now use a blade template, so you can change how all error views look in one view. Take a look at this PR for more details, and let me know what you think: https://github.com/Laravel-Backpack/Base/pull/328
Screenshot of the new Backpack error template here too:

What do you think?

Hi @tabacitu!
The problem with the 401 view didn't happen with me, in my installation laravel has the 401 view, apparently they have the most common. Any way, if there is any error not contemplated in laravel that is an issue for backpack.
Just for reference, I'm working on a website for a non-governmental organization, since they help street animals, I think it was nice to add some random animal pictures from unsplash, here is the result (refresh the page some times).
I personally prefer the new Laravel design, but if you opt for the backpack custom errors, I'll support your decision 👍 I just think the last line "Please go back or return ..." shouldn't be so thin.

Hmm… thank you, I think you’re right @promatik - made the text heavier:

I think Laravel’s errors are prettier too :-))
Very nice touch adding cute animal images on error pages. Makes running into an error not so annoying.


Properly handle DW_CFA_GNU_args_size

Depends on https://github.com/gimli-rs/gimli/pull/319
Mostly necessary in the case of an i686 backend (unless someone happens upon a compiler/binary that uses them on other archs).

https://www.uclibc.org/docs/psABI-i386.pdf talks about how to use it (section 2.5 "Stack Unwind Algorithm", in "Outgoing arguments area delta" section.


typescript support

Can you add this support?

Hi @productfrontenddeveloper!
Thanks for adding reporting this issue 🙏
We've added this issue to the backlog. We'll keep you posted about this issue when it's fixed.

You could add declare 'vue-flagpack in a declaration file for the mean time @productfrontenddeveloper , to fix the error

I added partial typescript support in pr #63, but I am noob in typescript, so if you can, please help me @noudadrichem, @productdevbook


[BEAM-788] Implement GroupAlsoByWindowsEvaluator Directly

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[x] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[x] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[x] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[x] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

Invoke the ReduceFnRunner methods directly rather than by constructing a
GroupAlsoByWindowDoFn and a ParDoEvaluator. Instead, construct a
ReduceFnRunner, ReduceFn, and invoke the methods directly.

R: @kennknowles

@tgroh shouldn't this be at the runner-core level, instead of having each runner implement this ?

ReduceFnRunner is the shared runner-core abstraction for executing (in the most general case) a GroupAlsoByWindow. We currently invoke the ReduceFnRunner via the GroupAlsoByWindowViaWindowSetDoFn; however, that isn't really a DoFn, as it requires direct access to StateInternals, TimerInternals, and WindowingInternals - this PR merely moves the behavior of GroupAlsoByWindowViaWindowSetDoFn into the GroupAlsoByWindowsEvaluator to enable removal of OldDoFn

+1 to the idea of basically inlining this. I like the idea of having something high level in runners-core but there is so little here that I'm not sure what would be factored out. In fact, use of GroupAlsoByWindowsViaWindowSetDoFn forces a particular materialization of timers, while each runner might just like to use their own representation.
To be clear, you've also reproduced the late data dropping, which might be nice to have a way to re-use.
And it can be further shrunk (not needed for this PR). ReduceFnRunner.onTimer(TimerData) actually doesn't need the timer data, it just needs to fire EOW panes, fire trigger panes, and GC. The TimerData is just a hint about which windows to process.


RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cuda:1![Question]

Question
I want to launch a model worker (Multiple GPUs, when GPU VRAM <= 24GB) with the code "CUDA_VISIBLE_DEVICES=0,1 python -m llava.serve.model_worker --host <IP_ADDRESS> --controller http://localhost:10000 --port 40000 --worker http://localhost:40000 --model-path liuhaotian/llava-v1.5-13b", raise the problem of "RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cuda:1!". how to fix it.

I'm having the same error. I posted here as well: https://github.com/huggingface/transformers/pull/28051
This is my gist to reproduce: https://gist.github.com/RylanSchaeffer/8198233a445ab3373aff01b038cc4b8b

Many thanks


Add reduce quantity functionality under delete

These changes will resolve #37.
Add reduce quantity functionality under delete
Add auto-delete function when quantity of item hits 0
TODO
Add test cases
Update user guide

Siew Yee are you showing the correct format message when the quantity to be added or reduced is wrong? I think the correct format should be displayed in the result display window after the error message.

Siew Yee are you showing the correct format message when the quantity to be added or reduced is wrong? I think the correct format should be displayed in the result display window after the error message.

I have only implemented the reduce quantity function under Delete command. As agreed in the team meeting, we decided not to implement the functionality for quantity to be added, as it is assumed that the user would key in the correct quantity for a particular item of a certain expiry date correctly. Otherwise, the user would need to delete the item and re-add. Do you think I should implement the add quantity functionality under the Add command?

Can use a function in StringUtil to check for >= 0

To Siew Yee: Sorry I was talking about the add commond message. It would be good if the correct format message for entering stuff can be displayed when the user input is in a wrong format.

For your delete error message tho, I feel it would be good if you extract it out into a final string.
And also right now i can add quantity 0. But should only allow positive integer right?

Yep, only positive integers should be allowed as integers. Thank you for pointing this out, I'll make the changes! :) Can you refer me to the line for the particular delete error message that I did not extract into a final string?

There is also a check for > 0


FilteredStream parameter

I'm trying to reduce the quantity of information received by a FilteredStream in vain. Even with a new parameter specifying fields wanted I keep receiving all fields
            await stream.StartAsync(new StartFilteredStreamV2Parameters() {

                Expansions = {},
                TweetFields= {"context_annotations"},
                UserFields = { "created_at, entities, id, name, public_metrics, url, username"}
            });

Thanks in advance for your help @linvi

This resolved the issue
            var pars = new StartFilteredStreamV2Parameters();
            pars.ClearCustomQueryParameters();
            pars.Expansions=new HashSet<string>(new string[] {"author_id"});
            pars.UserFields=new HashSet<string>(new string[] { "username" });

I am bit surprise by this issue but I will be taking a look at it.
Thank you for sharing the question and your solution.


Replaced React.PropTypes with PropTypes

PropTypes has been deprecated from the react package and moved to the 'prop-types' library in reactv15.5, so it currently shows errors in react native projects.
This PR makes that change to the prop-types library.

Any plan to merge this one? Without it latest version of RN is not compatible with the latest version of this library

It's compatible, it just shows a warning. However it would be nice to get it merged

Hmm when I try to run 0.46.2 with this library my app crashes due to undefined is not an object (evaluating '_react.PropTypes.oneOf'). I am using react ^16.0.0-alpha.12 I guess PropTypes is removed from that library. Any idea how to solve it without waiting for this merge, or I will just fork the library and apply your commit into it.

Interesting, it only shows as a warning for me. Right now i'm using it in my projects from the fork

Hmm sorry my fault I got confused somehow, nvm my previous comment

Thank you for the PR @iRoachie 👍

Thanks for merge!


Ctrl Shift P not working to show command pallete

Hit Ctrl + Shift + P
Nothing happens

Checked keyboard shortcuts: Show Command Pallete is configured for Ctrl + Shift + P
No other commands use the same combination
Searching for commands by recording keypresses does not record Ctrl + Shift + P at all

Ctrl + Shift is recognized
Ctrl + P is recognized
Shift + P is recognized

Let's first try to find out what command executes on your machine, with your settings and your keybindings when pressing <key>. Could you please try the following:

Run the command Developer: Toggle Keyboard Shortcuts Troubleshooting
This will activate logging of dispatched keyboard shortcuts and will open an output panel with the corresponding log file.
Press exactly the keybinding you desire.
check what VS Code detects and what command is invoked.

If you are having trouble understanding the output, please feel free to paste here and I can try to help.

Hi there Alexandru!
Thanks for the response. Got the following output for Ctrl + Shift + P:

[2022-06-18 13:12:08.611] [renderer1] [info] [KeybindingService]: /
Received  keydown event - modifiers: [ctrl], code: ControlLeft, keyCode:
17, key: Control
[2022-06-18 13:12:08.612] [renderer1] [info] [KeybindingService]: |
Converted keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 5
('Ctrl')
[2022-06-18 13:12:08.612] [renderer1] [info] [KeybindingService]:
Keyboard event cannot be dispatched in keydown phase.
[2022-06-18 13:12:08.654] [renderer1] [info] [KeybindingService]: /
Received  keydown event - modifiers: [ctrl,shift], code: ShiftLeft,
keyCode: 16, key: Shift
[2022-06-18 13:12:08.655] [renderer1] [info] [KeybindingService]: |
Converted keydown event - modifiers: [ctrl,shift], code: ShiftLeft,
keyCode: 4 ('Shift')
[2022-06-18 13:12:08.655] [renderer1] [info] [KeybindingService]:
Keyboard event cannot be dispatched in keydown phase.
[2022-06-18 13:12:09.158] [renderer1] [info] [KeybindingService]: +
Ignoring single modifier ctrl due to it being pressed together with other
keys.

Seems like it cannot detect keydown for 'P'  for this combination.
As for Ctrl + P:

[2022-06-18 13:13:11.569] [renderer1] [info] [KeybindingService]: /
Received  keydown event - modifiers: [ctrl], code: ControlLeft, keyCode:
17, key: Control
[2022-06-18 13:13:11.569] [renderer1] [info] [KeybindingService]: |
Converted keydown event - modifiers: [ctrl], code: ControlLeft, keyCode: 5
('Ctrl')
[2022-06-18 13:13:11.569] [renderer1] [info] [KeybindingService]:
Keyboard event cannot be dispatched in keydown phase.
[2022-06-18 13:13:11.857] [renderer1] [info] [KeybindingService]: /
Received  keydown event - modifiers: [ctrl], code: KeyP, keyCode: 80,
key: p
[2022-06-18 13:13:11.857] [renderer1] [info] [KeybindingService]: |
Converted keydown event - modifiers: [ctrl], code: KeyP, keyCode: 46 ('P')
[2022-06-18 13:13:11.857] [renderer1] [info] [KeybindingService]: |
Resolving ctrl+P
[2022-06-18 13:13:11.857] [renderer1] [info] [KeybindingService]: \ From 2
keybinding entries, matched workbench.action.quickOpen, when: no when
condition, source: built-in.
[2022-06-18 13:13:12.068] [renderer1] [info] [KeybindingService]: +
Ignoring single modifier ctrl due to it being pressed together with other
keys.

I hope you can help me with this one. This started happening just a few
days ago. Although I can still use F1 as an alternative, I'm really
accustomed to this.
Caleb
On Fri, Jun 17, 2022 at 8:54 PM Alexandru Dima @.***>
wrote:

Let's first try to find out what command executes on your machine, with
your settings and your keybindings when pressing . Could you please try
the following
https://github.com/microsoft/vscode/wiki/Keybinding-Issues#basic-troubleshooting
:

Run the command Developer: Toggle Keyboard Shortcuts Troubleshooting
This will activate logging of dispatched keyboard shortcuts and will
open an output panel with the corresponding log file.
Press exactly the keybinding you desire.
check what VS Code detects and what command is invoked.

If you are having trouble understanding the output, please feel free to
paste here and I can try to help.
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/vscode/issues/152448#issuecomment-1158842928,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJXCOFLS7U6DJTJTRHMGDMDVPRYQZANCNFSM5ZB5QFPA
.
You are receiving this because you authored the thread.Message ID:
@.***>

Just had this problem. Troubleshooter showed vs code wasn't getting the keystroke, so something else was grabbing it. Seems it was the Razer Cortex app swallowing the keystroke. If you have that running, go to its settings and remap or unmap the CTRL-SHIFT-P key mapping

I am also getting this issue, but I don't have this Razer Cortex app installed.

I'm on Win 11, literally closed every app even in services and still an issue.

Unfortunately, there is nothing we can do on our side if we don't receive the keybinding from OS. Most of the times, some other piece of software registers a global key listener and "steals" the keybinding.

Confirmed caused by Razer Cortex


TextBook Distribution - " Choose date  data is not displaying"

Textbook distrubution - "Choose a date data is not displaying"

@padmanabha1234 date column property is missing from meta_tooltip.json file. Please verify.

@JalajaTR please look into this issue.

As there is some outdated data in the storage location which is used in the testing, and retested with proper storage location details and it is working fine. @padmanabha1234 and @JalajaTR ensure that the issue won't repeat.

working as expected


[BUG] Getting Error Message when Using the Package to Predict

Describe the bug
The following error message comes from the predict function:

To Reproduce
Input:

The type of index is string, store columns with a total column in the dataframe
Tried to convert the index to datetime, but getting another error message for incompatibility of timestamp and object
Code:
clf = HTSRegressor(model='prophet', revision_method='OLS', n_jobs=12)
model = clf.fit(hts_ssm, hier)
preds = model.predict(steps_ahead=2,freq='M')
also tried freq='D' but getting the same error.
Expected behavior
Expected not getting an error.
Desktop (please complete the following information):

OS: [OS X Catalina]
scikit-hts version: [0.2.1]
Python version: [ 3.7.4]

Additional context
Add any other context about the problem here.

I solved it by making sure the index is in datetime format and also changing the original _get_predict_index function on regressor.py file to this code below
`def _get_predict_index(self, steps_ahead=1):
    freq = getattr(self.nodes.item.index, 'freq', 1)
    start = self.nodes.item.index[-1]

    future = pandas.date_range(freq='MS',
                               start=start,
                               periods=steps_ahead
                               )

    return self.nodes.item.index.append(future.to_pydatetime().tolist())`

I solved it by making sure the index is in datetime format and also changing the original _get_predict_index function on regressor.py file to this code below
`def _get_predict_index(self, steps_ahead=1):
    freq = getattr(self.nodes.item.index, 'freq', 1)
    start = self.nodes.item.index[-1]

    future = pandas.date_range(freq='MS',
                               start=start,
                               periods=steps_ahead
                               )

    return self.nodes.item.index.append(future.to_pydatetime().tolist())`


Add support for remote storage on Graphite

Allows to use graphite over tcp or udp. Metrics labels
and values are used to construct a valid Graphite path
in a way that will allow us to eventually read them back
and reconstruct the metrics.
For example, this metric:
model.Metric{
model.MetricNameLabel: "test:metric",
"testlabel":           "test:value",
"testlabel2":           "test:value",
)
Will become:
test:metric.testlabel=test:value.testlabel2=test:value
escape.go takes care of escaping values to match Graphite
character set, it basically uses percent-encoding as a fallback
wich will work pretty will in the graphite/grafana world.
The remote storage module also has an optional 'prefix' parameter
to prefix all metrics with a path (for example, 'prometheus.').
Graphite URLs are simply in the form tcp://host:port or
udp://host:port.

Eventually we should support mapping rules like the graphite exporters does.

For remote storage the ultimate goal is for Prometheus to be able to read the data back out, so we need to encode the data losslessly rather than sanitize it. The OpenTSDB remote storage has an example of this.

I'll look more at OpenTSDB. Since '\' seems to be available, we could easily use \ or similar to store everything losslessly. But then, with graphite, we will have two issues:

The query language is rather poor, and the default implementation not really scalable (but there are other backends: cyanite, kairosdb, ..). So reading the data may not be blazing fast .. but that's kind of fine.
Users, including me, will want to also have metrics cleanly exposed in graphite (= something that they can easilly use in graphite-web and that match the scheme they already use in graphite). Doing something like https://github.com/prometheus/graphite_exporter#metric-mapping-and-configuration would work, and users could enable this and/or the default export in a non-exclusive way (= data that you can read back and optionally clean data for graphite).

What do you think ?

So reading the data may not be blazing fast .. but that's kind of fine.

Yeah, remote storage isn't expected to be queried often.

Users, including me, will want to also have metrics cleanly exposed in graphite (= something that they can easilly use in graphite-web and that match the scheme they already use in graphite).

This is not the goal of remote storage, and such a mapping config doesn't belong in Prometheus itself.
There's three options I see here depending on exactly what you want to do:

Wait for the generic remote storage backend from Prometheus, and hook into that
Use Grafana, which can graph across both Graphite and Prometheus
Use the Python client to parse the text format from exporters and output to Graphite

Following the discussions on IRC, I updated the merge request. The main changes are:

Lossless encoding based on percent encoding.
Better doc on what is or is not a valid Graphite character.

I might have missed part of the discussion, but have we reached a conclusion if it makes sense to support writing to Graphite in this way at all?
Would love to hear @juliusv 's opinion about it...

Well, it all starts from my need to store Prometheus data in Graphite (and potentially reading it back) as I can't use influxdb or OpenTSDB. I'm open to any change in the way it's actually stored, my current requirements are that the format is lossless, and is usable directly in graphite.
Alternatively I could probably use the federation protocol to stream the data I need, and write to graphite myself, but that seems cleaner to use the remote storage API.

@beorn7, @brian-brazil, following the IRC discussion, and given that:

I will maintain this part of the code (and I have experience doing so: kernel.org/doc/linux/MAINTAINERS)
It fits the need for people already using Graphite for long term storage (using alternate backends, such as cyanite)

Do you think we can go forward with this ? If we ever decide to implement the code to read back the data, I'll be happy to do so too.

With the commitment of @iksaif , I'm fine with going forward here. I'll have a closer look ASAP (but happy to delegate that to other core devs ;).

Ok, I hopefully fixed everything.

@iksaif Hmm, did you forget to push your changes? I don't see the fixes.

Sorry, my mistake.

@iksaif Thanks! Looks good, except that my last comment on using a URL vs. a separate flag still stands: https://github.com/prometheus/prometheus/pull/1197/files#r44228720. How about: -storage.remote.graphite-transport (default: "tcp")?
Actually, maybe @fabxc or @brian-brazil want to share a second opinion here.

I fixed that, mostly because tcp was not in the list of valid URI schemes.

@iksaif Funny, I also ended up looking into that list :)
Thanks! Merging...


canvas.pushTransform/popTransform

pushTransform will apply transform you push to all elements rendered on screen, popTransform will reset that. The tricky part is stacking transforms, I think matrix multiplications can be involved then internally.

should we then also apply transforms to mouse position too?

Can't transform stacking be done by just applying all the transforms after each other?

Can't transform stacking be done by just applying all the transforms after each other?

Not sure what you mean by this.

The thing is that the transform order matters, whether you scale first and then translate or translate and scale first will yield different results.

That's why we need properly define how the stacking will work.

It should work exactly like matrix multiplication. E.g. previous transform matrix multiplied by a new one and that matrix is pushed onto the stack and used as the current one.

The current limitation of Transform is limiting to rotation/scaling/translation. There's also skewing which requires a matrix, maybe internally it's better to use matrices.


feature request: improve the training speed of GPU

tensorflow seems to have a good performance on CPU compared to other frameworks, however relatively poor on GPU according to third-party benchmark

Could I ask the reason why this happen? I belive Tensorflow is the hottest Deep Learning Framework on github. If we could make the performance of Tensorflow better, it will help a lot of people.
Anyone can help or contribute to this issue?

All of those benchmark numbers are quite stale -- things should be much faster, though there's still room for improvement.  If you have a specific benchmark with up to date numbers, we can definitely take a look!


Javascript Capstone Project

This project is a single-page webapp showing a bunch of cute Pokemons using PokeAPI, all with added Involvement interactions of adding likes, comments and reservations.

STATUS: INVALID!!!  :x: :x: :x:
Hi @,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code, please make sure you implement the following changes before you resubmit for review.
Required Changes ♻
Check the comments below.

[ ] As it is a requirement for this project, please kindly use Gitflow. open a PR from dev to main.

Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.
Invalid Code Review Request Does not count into the code reviews limit.
INVALID PROJECT


CrashPlan Upgrade to version<PHONE_NUMBER>671

Just an FYI. CrashPlan has a new version out as of 3/26/18.  Container is trying to download version<PHONE_NUMBER>671.

Can you provide the URL of the update (you can find it in service.log.0)?  Thanks!

https://download.crashplan.com/installs/linux/upgrade5/crashplansmb/1512021600671_4615.jar

Is it the last one?  This link is not working...

That's similar to what I have. Just a different guid.

Thanks everyone, I’m working on this.

Hey Guys,
I just discovered this docker container for CrashPlan and I love it. Thanks a lot for creating this.
Currently I'm getting an error where it says: CrashPlan Central Version mismatch - You must upgrade to use this destination. Is this related to this thread?
Thanks

Which version of CrashPlan do you have currently?

I'm currently on 6.7.04503.
Thanks

Are you using a new account/device?
I know that upgrades are pushed progressively.  Not all users are updated at the same time.
Anyway, I'm currently testing the latest version and a new docker image will be available today for you to try.

No it's an existing account and device, I followed the steps in the "Taking Over Existing Backup" section in your post.
Ok cool, great to hear a new image is on the way.
Thanks
Stijn

CrashPlan 6.7.1 available with latest release (https://github.com/jlesage/docker-crashplan-pro/releases/tag/v2.3.2).

and in case it helps:
[03.29.18 20:14:35.292 WARN  7343_DwldMgr er.FileTransferBlockingRequestor] FT::C-841556688741127645, guid=4200; ; Problem opening output file. java.io.FileNotFoundException: upgrade/1512021600671_4615.jar (Not a directory); upgrade/1512021600671_4615.jar, 4ms, duration=0 ms; 0MB (0Mbps), waitDuration=0 ms; 0MB (0Mbps), writeDuration=0 ms; 0MB (0Mbps), java.io.FileNotFoundException: upgrade/1512021600671_4615.jar (Not a directory)
STACKTRACE:: java.io.FileNotFoundException: upgrade/1512021600671_4615.jar (Not a directory)
        at java.io.RandomAccessFile.open0(Native Method)
        at java.io.RandomAccessFile.open(RandomAccessFile.java:316)
        at java.io.RandomAccessFile.<init>(RandomAccessFile.java:243)

This happens just before the exception I mentioned in the previous comment.

This happens because the container manifest script deletes Crashplan's upgrade folder, creates a file called "upgrade" and chmods it to 400. It's a simple but effective way to break the upgrade.
However, there's no documentation to explain why @jlesage disabled the auto-upgrade. I'd love to know. The default auto-upgrade process would be much preferred. The current upgrade process is non-trivial because Crashplan never figures out that it's the same device and that files don't need to be transferred or re-downloaded.

You can see my explanation here: https://github.com/jlesage/docker-crashplan-pro/issues/31#issuecomment-354032851.  Maybe I should add it to the README.

The current upgrade process is non-trivial because Crashplan never figures out that it's the same device and that files don't need to be transferred or re-downloaded.

The upgrade process should be trivial.  If after an upgrade CrashPlan thinks you have a new device, then you have an issue with your installation/configuration.
Also, I know some systems, like QNAP and Synology, make the upgrade process not user friendly.  However, other systems, like unRAID, make the upgrade process as simple as clicking an "Upgrade" button.  If you are running your container under a distro like Ubuntu, there are some upgrade scripts available that make the process very easy and transparent.

Thank you for this!
On Wed, Sep 12, 2018, 02:36 Jocelyn Le Sage<EMAIL_ADDRESS>wrote:

You can see my explanation here: #31 (comment)
https://github.com/jlesage/docker-crashplan-pro/issues/31#issuecomment-354032851.
Maybe I should add it to the README.
The current upgrade process is non-trivial because Crashplan never figures
out that it's the same device and that files don't need to be transferred
or re-downloaded.
The upgrade process should be trivial. If after an upgrade CrashPlan
thinks you have a new device, then you have an issue with your
installation/configuration.
Also, I know some systems, like QNAP and Synology, make the upgrade
process not user friendly. However, other systems, like unRAID, make the
upgrade process as simple as clicking an "Upgrade" button. If you are
running your container under a distro like Ubuntu, there are some upgrade
scripts available that make the process very easy and transparent.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jlesage/docker-crashplan-pro/issues/69#issuecomment-420580348,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADpKKgB9w2KyrC7X2NSUeDl6pBnOzoNVks5uaNWBgaJpZM4S_t6h
.

You can see my explanation here: #31 (comment). Maybe I should add it to the README.

The current upgrade process is non-trivial because Crashplan never figures out that it's the same device and that files don't need to be transferred or re-downloaded.

The upgrade process should be trivial. If after an upgrade CrashPlan thinks you have a new device, then you have an issue with your installation/configuration.
Also, I know some systems, like QNAP and Synology, make the upgrade process not user friendly. However, other systems, like unRAID, make the upgrade process as simple as clicking an "Upgrade" button. If you are running your container under a distro like Ubuntu, there are some upgrade scripts available that make the process very easy and transparent.

Thank you SO much for this explanation. I really would like to see it in the readme.
Separately, I'm pretty sure a way to re-enable automatic upgrades (and to live dangerously) is to delete the file "upgrade" so CrashPlan can once again auto-download an upgrade file.
Granted, since I'm on Synology, that's a big part of why I am even risking trying this. I figure, some upgrades it will work, and for those that don't, I'll just refresh the container per the upgrade instructions.

Upgrading on Synology is not automatic but it is trivial.  If you use command line, save your docker run command in a shell script file.  Merely stop the container, delete it, pull the updated image and run the script that holds your docker run command.
If you use the GUI, stop the container, download the latest image, clear the container and start it back up.
If you don't understand Docker and Linux, then you should use the GUI.

Upgrading on Synology is not automatic but it is trivial. If you use command line, save your docker run command in a shell script file. Merely stop the container, delete it, pull the updated image and run the script that holds your docker run command.
If you use the GUI, stop the container, download the latest image, clear the container and start it back up.
If you don't understand Docker and Linux, then you should use the GUI.

Hey Big T,
Yes, follow those steps and you have to:

Log back in
Specify whether you are replacing a device or adding one
If you are replacing a device (which you are), whether you want to re-download files from the backup or skip them. Of course, I don't want to re-download the whole archive, it's all there on the NAS already.
If you skip them, then CrashPlan considers the files in your archive "deleted" (for no good reason)
Then CrashPlan re-verifies the whole archive

Instead, you have to admit it'd be better for CrashPlan to just auto-upgrade.

@sebvance, if you have to follow all these steps, it's because you didn't configured the container correctly.  After an image upgrade, CrashPlan should run exactly like before, without re-logging and re-adopting the backup.  All persistent data are saved to /config in the container.  Make sure this folder mapped when creating the container.

Thank you for the pro tip. I checked the volumes and documentation and saw
that /docker/appdata/crashplan:/config:rw \ was not mounted. I created the
folder via SSH then added to the container via the Docker gui. If that
fixes the problem, I'll know on the next upgrade. Thanks again!
On Thu, Sep 13, 2018 at 8:55 AM Jocelyn Le Sage<EMAIL_ADDRESS>wrote:

@sebvance https://github.com/sebvance, if you have to follow all these
steps, it's because you didn't configured the container correctly. After an
image upgrade, CrashPlan should run exactly like before, without re-logging
and re-adopting the backup. All persistent data are saved to /config in
the container. Make sure this folder mapped when creating the container.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jlesage/docker-crashplan-pro/issues/69#issuecomment-421057900,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADpKKkRwQvEQY2mE8iE21Ze9lj3_McAjks5uan_fgaJpZM4S_t6h
.

I think the correct mapping on Synology is /volume1/docker/appdata/crashplan-pro:/config:rw.

Thank you!! It looks like I have to do it through the docker GUI in DSM, no
semi-obvious way to do it via CLI without overwriting the entire existing
container, so I can't include the semicolon
On Thu, Sep 13, 2018 at 10:17 AM Jocelyn Le Sage<EMAIL_ADDRESS>wrote:

I think the correct mapping on Synology is
/volume1/docker/appdata/crashplan-pro:/config:rw.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jlesage/docker-crashplan-pro/issues/69#issuecomment-421083964,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADpKKnrQUEJDObKz5LRQIi01iXATedebks5uapMUgaJpZM4S_t6h
.

This is what my Volume config looks like now. I think it's finally correct.

I have just recently migrated my Crashplan account to a pro version and are now trying to get the backup running on my Synology NAS using docker. I believe I have followed all the steps above and I can also login to crashplan on Docker and get the page with the option of adding a new or replace existing, but upon clicking the "replace existing" it just immediately returns to the previous page with the links to "Add new" and "Replace Existing"
Any idea what I have done wrong or missing?


Calories Data

Are there any methods to get Calories and Distance data?

@shrutaa  yes there are, I'll update this once i'll have some time.

Any update here? Would love to get the Calories. Thanks a lot!

@shrutaa yes there are, I'll update this once i'll have some time.

Still no documentation for retrieving calorie data @GaneshSinghPapola using this plugin. Is there any callback method found to implement it.


chore(yaml): prepare release v1.0.4

Signed-off-by: Tiago Castro<EMAIL_ADDRESS>

bors merge


Add Azure.Core samples

Logging
Pipeline extension
Common options

Removing the blocking-release label as we are going to add the samples early next week.


Bumped production RELEASE for 1.21-12

Bumped production RELEASE for 1.21-12
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve


binutils 2.43.50: Segmentation fault in test_local_lib

Hello.
I am trying to build and test meson-python with Python 3.14 in Fedora.
I see a strange Segmentation fault in test_local_lib. I can reproduce it on Fedora Rawhide (42), but not on Fedora 39.

        The returned instance will have attributes args, returncode, stdout and
        stderr. By default, stdout and stderr are not captured, and those attributes
        will be None. Pass stdout=PIPE and/or stderr=PIPE in order to capture them,
        or pass capture_output=True to capture both.

        If check is True and the exit code was non-zero, it raises a
        CalledProcessError. The CalledProcessError object will have the return code
        in the returncode attribute, and output & stderr attributes if those streams
        were captured.

        If timeout is given, and the process takes too long, a TimeoutExpired
        exception will be raised.

        There is an optional argument "input", allowing you to
        pass bytes or a string to the subprocess's stdin.  If you use this argument
        you may not also use the Popen constructor's "stdin" argument, as
        it will be used internally.

        By default, all communication is in bytes, and therefore any "input" should
        be bytes, and the stdout and stderr will be bytes. If in text mode, any
        "input" should be a string, and stdout and stderr will be strings decoded
        according to locale encoding, or by "encoding" if set. Text mode is
        triggered by setting any of text, encoding, errors or universal_newlines.

        The other arguments are the same as for the Popen constructor.
        """
        if input is not None:
            if kwargs.get('stdin') is not None:
                raise ValueError('stdin and input arguments may not both be used.')
            kwargs['stdin'] = PIPE

        if capture_output:
            if kwargs.get('stdout') is not None or kwargs.get('stderr') is not None:
                raise ValueError('stdout and stderr arguments may not be used '
                                 'with capture_output.')
            kwargs['stdout'] = PIPE
            kwargs['stderr'] = PIPE

        with Popen(*popenargs, **kwargs) as process:
            try:
                stdout, stderr = process.communicate(input, timeout=timeout)
            except TimeoutExpired as exc:
                process.kill()
                if _mswindows:
                    # Windows accumulates the output in a single blocking
                    # read() call run on child threads, with the timeout
                    # being done in a join() on those threads.  communicate()
                    # _after_ kill() is required to collect that and add it
                    # to the exception.
                    exc.stdout, exc.stderr = process.communicate()
                else:
                    # POSIX _communicate already populated the output so
                    # far into the TimeoutExpired exception.
                    process.wait()
                raise
            except:  # Including KeyboardInterrupt, communicate handled that.
                process.kill()
                # We don't call process.wait() as .__exit__ does that for us.
                raise
            retcode = process.poll()
            if check and retcode:
>               raise CalledProcessError(retcode, process.args,
                                         output=stdout, stderr=stderr)
E               subprocess.CalledProcessError: Command '['/tmp/pytest-of-root/pytest-5/mesonpy-test-venv0/bin/python3.14', '-c', 'import example; print(example.example_sum(1, 2))']' died with <Signals.SIGSEGV: 11>.

/usr/lib64/python3.14/subprocess.py:577: CalledProcessError
---------------------------- Captured stdout setup -----------------------------
Initialized empty Git repository in /meson-python/tests/packages/link-against-local-lib/.git/
+ meson setup /meson-python/tests/packages/link-against-local-lib /meson-python/tests/packages/link-against-local-lib/.mesonpy-gx4cvlf7 -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --native-file=/meson-python/tests/packages/link-against-local-lib/.mesonpy-gx4cvlf7/meson-python-native-file.ini
The Meson build system
Version: 1.6.0
Source dir: /meson-python/tests/packages/link-against-local-lib
Build dir: /meson-python/tests/packages/link-against-local-lib/.mesonpy-gx4cvlf7
Build type: native build
Project name: link-against-local-lib
Project version: 1.0.0
C compiler for the host machine: cc (gcc 14.2.1 "cc (GCC) 14.2.1 20240912 (Red Hat 14.2.1-4)")
C linker for the host machine: cc ld.bfd <IP_ADDRESS>41014
Host machine cpu family: x86_64
Host machine cpu: x86_64
Program python found: YES (/meson-python/venv/bin/python)
Found pkg-config: YES (/usr/bin/pkg-config) 2.3.0
Run-time dependency python found: YES 3.14
WARNING: Please do not define rpath with a linker argument, use install_rpath
or build_rpath properties instead.
This will become a hard error in a future Meson release.

Build targets in project: 2

link-against-local-lib 1.0.0

  User defined options
    Native files: /meson-python/tests/packages/link-against-local-lib/.mesonpy-gx4cvlf7/meson-python-native-file.ini
    b_ndebug    : if-release
    b_vscrt     : md
    buildtype   : release

Found ninja-1.11.1.git.kitware.jobserver-1 at /meson-python/venv/bin/ninja
+ /meson-python/venv/bin/ninja
[1/5] Compiling C object lib/libexample.so.p/examplelib.c.o
[2/5] Linking target lib/libexample.so
[3/5] Compiling C object example.cpython-314-x86_64-linux-gnu.so.p/examplemod.c.o
[4/5] Generating symbol file lib/libexample.so.p/libexample.so.symbols
[5/5] Linking target example.cpython-314-x86_64-linux-gnu.so
[1/2] /meson-python/tests/packages/link-against-local-lib/.mesonpy-gx4cvlf7/lib/libexample.so
[2/2] /meson-python/tests/packages/link-against-local-lib/.mesonpy-gx4cvlf7/example.cpython-314-x86_64-linux-gnu.so
=========================== short test summary info ============================
FAILED tests/test_wheel.py::test_local_lib - subprocess.CalledProcessError: Command '['/tmp/pytest-of-root/pytest-5/meso...
====================== 1 failed, 122 deselected in 3.01s =======================

# /tmp/pytest-of-root/pytest-5/mesonpy-test-venv0/bin/python3.14 -c 'import example; print(example.example_sum(1, 2))'
Segmentation fault (core dumped)

# gdb /tmp/pytest-of-root/pytest-5/mesonpy-test-venv0/bin/python3.14
(gdb) run -c 'import example; print(example.example_sum(1, 2))'
Program received signal SIGSEGV, Segmentation fault.
0x00007f05fbbe1294 in ?? ()
(gdb) bt
#0  0x00007f05fbbe1294 in ?? ()
#1  0x00007f05fbbfc310 in call_init (l=0x56104552bed0, argc=3,
    argv=0x7fffbdb0b0f8, env=0x7fffbdb0b118) at dl-init.c:60
#2  call_init (l=0x56104552bed0, argc=3, argv=0x7fffbdb0b0f8,
    env=0x7fffbdb0b118) at dl-init.c:26
#3  0x00007f05fbbfc42d in _dl_init (main_map=0x56104552bed0, argc=3,
    argv=0x7fffbdb0b0f8, env=0x7fffbdb0b118) at dl-init.c:121
#4  0x00007f05fbbf9562 in __GI__dl_catch_exception (
    exception=exception@entry=0x0,
    operate=operate@entry=0x7f05fbc030a0 <call_dl_init>,
    args=args@entry=0x7fffbdb09fc0) at dl-catch.c:215
#5  0x00007f05fbc03039 in dl_open_worker (a=a@entry=0x7fffbdb09fc0)
    at dl-open.c:785
#6  0x00007f05fbbf94c3 in __GI__dl_catch_exception (
    exception=exception@entry=0x7fffbdb09fa0,
    operate=operate@entry=0x7f05fbc02fb0 <dl_open_worker>,
    args=args@entry=0x7fffbdb09fc0) at dl-catch.c:241
#7  0x00007f05fbc03424 in _dl_open (
    file=0x7f05fb0d94f0 "/tmp/pytest-of-root/pytest-5/mesonpy-test-venv0/lib64/python3.14/site-packages/example.cpython-314-x86_64-linux-gnu.so",
    mode=<optimized out>,
    caller_dlopen=0x7f05fb869e21 <_imp_create_dynamic+929>,
    nsid=<optimized out>, argc=3, argv=0x7fffbdb0b0f8, env=0x7fffbdb0b118)
    at dl-open.c:860
#8  0x00007f05fb47a9b4 in dlopen_doit () from /lib64/libc.so.6
#9  0x00007f05fbbf94c3 in __GI__dl_catch_exception (
    exception=exception@entry=0x7fffbdb0a1b0,
    operate=0x7f05fb47a950 <dlopen_doit>, args=0x7fffbdb0a270)
    at dl-catch.c:241
#10 0x00007f05fbbf9619 in _dl_catch_error (objname=0x7fffbdb0a218,
    errstring=0x7fffbdb0a220, mallocedp=0x7fffbdb0a217,
    operate=<optimized out>, args=<optimized out>) at dl-catch.c:260
#11 0x00007f05fb47a4a3 in _dlerror_run () from /lib64/libc.so.6
#12 0x00007f05fb47aa6f in<EMAIL_ADDRESS>() from /lib64/libc.so.6
#13 0x00007f05fb869e21 in _imp_create_dynamic ()
   from /lib64/libpython3.14.so.1.0
#14 0x00007f05fb77dccb in cfunction_vectorcall_FASTCALL ()
   from /lib64/libpython3.14.so.1.0
#15 0x00007f05fb75b05a in _PyEval_EvalFrameDefault ()
   from /lib64/libpython3.14.so.1.0
#16 0x00007f05fb77aec2 in object_vacall () from /lib64/libpython3.14.so.1.0
#17 0x00007f05fb7b441e in PyObject_CallMethodObjArgs ()
   from /lib64/libpython3.14.so.1.0
#18 0x00007f05fb7b35bd in PyImport_ImportModuleLevelObject ()
   from /lib64/libpython3.14.so.1.0
#19 0x00007f05fb75d7c9 in _PyEval_EvalFrameDefault ()
   from /lib64/libpython3.14.so.1.0
#20 0x00007f05fb82d3bb in PyEval_EvalCode () from /lib64/libpython3.14.so.1.0
#21 0x00007f05fb852050 in run_eval_code_obj () from /lib64/libpython3.14.so.1.0
#22 0x00007f05fb84af83 in run_mod () from /lib64/libpython3.14.so.1.0
#23 0x00007f05fb83d8ee in _PyRun_StringFlagsWithName.constprop.0 ()
   from /lib64/libpython3.14.so.1.0
#24 0x00007f05fb83d798 in _PyRun_SimpleStringFlagsWithName ()
   from /lib64/libpython3.14.so.1.0
#25 0x00007f05fb8647e4 in Py_RunMain () from /lib64/libpython3.14.so.1.0
#26 0x00007f05fb81c7ec in Py_BytesMain () from /lib64/libpython3.14.so.1.0
#27 0x00007f05fb4120c8 in __libc_start_call_main () from /lib64/libc.so.6
#28 0x00007f05fb41218b in __libc_start_main_impl () from /lib64/libc.so.6
#29 0x0000561011e4f095 in _start ()

Is this the only test that fails? As far as I can tell, Python segfaults when executing the extension module initialization function. The module is extremely simple https://github.com/mesonbuild/meson-python/blob/main/tests/packages/link-against-local-lib/examplemod.c, thus I don't see how this is possible other than because of a bug in CPython. The other possibility is a bug in the packaging: if you end up with the Python headers and the installed Python having a different opinion about the shape of the PyModuleDef structure. Or something like this.

Is this the only test that fails?

Yes. Another one fails with https://github.com/pytest-dev/pytest-mock/issues/468

Huh, I can even reproduce this with Python 3.13.0 and 3.12.7. Possibly this is a problem in binutils etc.

I can reproduce the crash with binutils 2.43.50 but not with binutils 2.43.1.
I'll take that to Fedora's binutils maintainer.
Should I keep this open or close it?

https://bugzilla.redhat.com/show_bug.cgi?id=2321588

Should I keep this open or close it?

Looks unrelated to meson-python, so it'd make sense to close this. If you prefer to keep it open for some days until you receive a reply on the binutils bug report, that seems fine as well.

For the record, the binutils folks say this is a problem in patchelf. They are also quite determined that patchelf cannot be supported and would rather see meson-python utilize the final -Wl,-rpath=… option when building the extension module.

Reopening to keep it visible, since it doesn't sound like a fix in either binutils or patchelf is in the work just yet.

They are also quite determined that patchelf cannot be supported and would rather see meson-python utilize the final -Wl,-rpath=… option when building the extension module.

Using the final -Wl,-rpath doesn't seem like possible, since meson-python isn't actually building the extension module - meson is. And the package author (who could add an rpath argument to the package itself) doesn't know where and how meson-python will vendor the shared library into the wheel.
If the problem is RPATH rewriting though, this isn't just going to show up in this test case (which is a little niche and for a scenario that possibly is unused in the real world so far - not sure). auditwheel is doing the same when it vendors external shared libraries into wheels distributed on PyPI. That isn't going to show up in bug reports very soon only because auditwheel is usually run in a manylinux container that doesn't have a recent binutils. But that's an important use case for patchelf. And Nix will need it as well I'm sure.
It's still a little unclear to me what triggers the bug exactly, but it seems like this has to be fixed either in patchelf or in binutils.
I just read through the whole thread at https://bugzilla.redhat.com/show_bug.cgi?id=2321588. A few comments:

Agreed that setting LD_LIBRARY_PATH is useless (that means the wheel is broken by default)
Some of the feedback about us not understanding our build system seems misguided. The problem is fundamentally about (a) the way Python wheels are standardized and are not containing a libdir location for shared libraries, and (b) the need to make Python wheels portable and installable into venv's that don't have a predefined absolute install path on the user's OS. This makes relocating shared libraries a necessary step, and it's common to tooling for Python wheels, Nix packages, Conda packages, etc. It looks to me like saying "use -Wl,-rpath=/final/install/location" misses that key point.

Also, thanks for trying to sort this out @hroncok! Doesn't look like an easy conversation.

-Wl,-rpath=/final/install/location

technically,t his path is relative, so we don't have that exact problem. If meson-python could "tell" meson to use particular path, that should work, no?

There appears to be a kind of weirdly layered confusion going on here across multiple issue trackers.
"meson-python" happens to use patchelf, which uncovered a bug in the (uncoordinated) interaction between binutils snapshots (?) used distro-wide in fedora, and patchelf, a program widely used in various contacts. As noted in the fedora ticket, binutils has broken the PyPy build as well.
This bug doesn't need pip to replicate it, I'm sure. You could use python -m build, available on PyPI as "build", instead of pip install. It will create a wheel for you. And "build" assumes developer intent already, which means no passing --verbose to pip.
Patchelf is needed by literally anyone building wheels with C libraries for upload to PyPI and usage by basically all Linux users on any distro. Fedora and its derivatives are actually quite popular for this due to GCC Toolset, which allows you to use new GCC versions with older glibc... So having this broken on fedora specifically, seems a bit unfortunate!
Why is it needed, you ask? Well, it's needed because uploading to PyPI is a subcategory of building standalone binaries, so there's a program whose sole purpose is to modify your wheels, copy system libraries into the wheel, use patchelf to retarget everything to use relative rpaths that are part of the wheel layout, and upload the now standalone python modules.
This is a serious use case and complaining that meson-python should just not do that when using its own libraries, is missing the point (even though as a meson maintained, not a meson-python maintainer, I am sympathetic to this argument). Less blame, more investigating whether patchelf and binutils can get along, please.

The problem is fundamentally about (a) the way Python wheels are standardized and are not containing a libdir location for shared libraries, and (b) the need to make Python wheels portable and installable into venv's that don't have a predefined absolute install path on the user's OS. This makes relocating shared libraries a necessary step, and it's common to tooling for Python wheels, Nix packages, Conda packages, etc. It looks to me like saying "use -Wl,-rpath=/final/install/location" misses that key point.

@rgommers, note that this actually isn't about being relocatable. It's about changing the install layout at all. Being relocatable just means you need an rpath string using $ORIGIN (this is a dynamic loader variable) and the knowledge at the time of linking, what relocatable layout you need. You can then just inject the string value in LDFLAGS.
It doesn't help because you will potentially still have other unwanted rpath entries, and you can't handle library dependencies that aren't part of meson.build -- that's why auditwheel uses patchelf too, isn't it?
And actually injecting LDFLAGS is difficult to do robustly since if you do it in the environment it will be ignored when the user specified a native file, and if you do it via a native file you scribble all over the user LDFLAGS and the user native files.

Less blame, more investigating whether patchelf and binutils can get along, please.

I am not blaming anybody here. I am merely trying to solve this problem.
I am well aware that even if meson-python stops using patchelf, we will have this problem with auditwheel etc.

@rgommers, note that this actually isn't about being relocatable. It's about changing the install layout at all.

You're right. I never encountered any other reasons for changing the install layout, so in my mind the two meant roughly the same thing.

Being relocatable just means you need an rpath string using $ORIGIN

Yes indeed. I just wrote docs for using shared libraries in gh-700, and for internal ones it starts with explaining how to use $ORIGIN. Being able to do so is relatively rare though, since shared libraries that are only meant for being included in a Python wheel are quite uncommon. The more typical case is something like this:
c-or-cpp-lib/
  meson.build  # contains shared_library() or library()
  python-bindings/
    meson.build  # contains extension module linking against shared library
  other-lang-bindings/
    ...

In such cases, especially if the Python bindings are maintained by other people than the C/C++ core, it may not be acceptable to mess with how the C/C++ is compiled specifically to make Python wheel builds nicer. The failing test case at hand here is representative for that: the shared library goes to libdir, and meson-python is left to do the "vendoring" work a la auditwheel.
In gh-700 I'm also adding more test cases, including for the $ORIGIN case. One that is still missing is for an external shared library + auditwheel - that may be useful as well.


Should I use this Azure Kinect SDK to make my own application?

I'm new to working with the Azure Kinect DK and want to build an application that accesses the Kinect's data. Should I use this GitHub SDK and build my application within it or is it better to start my own application from scratch using the libraries that come in the binary SDK?

If you are new to the Azure Kinect DK, I suggest you follow the documentation here: https://learn.microsoft.com/en-us/azure/kinect-dk/build-first-app
Yoou will need the SDK to build your application, but you do not need to rebuild the binaries in the SDK.


Vulnerability roundup 63: lua-5.1.5: 1 advisory

search, files

[ ] CVE-2014-5461 (nixos-19.03)

Scanned versions: nixos-19.03: 5847485e3ec. May contain false positives.

This vulnerability has been fixed in commit 15cb79e48ed6056af542ced6cc41e6b32664c05b few years ago.
Lua 5.2.4 is not vulnerable.

I wonder that this one has not been filtered out by vulnix. Further debugging in https://github.com/flyingcircusio/vulnix/issues/52


DISABLE_REGISTRATION not function

I set DISABLE_REGISTRATION = true but I can still regist user.

@dreaminglwj Did you restart app?

why this bad made issue are not deleted?

Hello, i've the same problem,
I changed, saved and restarted gogs by hand, but no parameter changes in the interface.
But the EXTERNAL_URL  seems to work. Any idea ?
custom/conf/app.ini
[service]
REGISTER_EMAIL_CONFIRM = false
ENABLE_NOTIFY_MAIL     = false
DISABLE_REGISTRATION   = true
SHOW_REGISTRATION_BUTTON = false
ENABLE_CAPTCHA         = false
REQUIRE_SIGNIN_VIEW    = false

/conf/app.ini
; Whether to disallow anonymous users visiting the site.
REQUIRE_SIGNIN_VIEW = true
; Whether to disable self-registration. When disabled, accounts would have to be created by admins.
DISABLE_REGISTRATION = true
; Whether to enable captcha validation for registration
ENABLE_REGISTRATION_CAPTCHA = false

@pascal-ace If you're running 0.13.0+dev, notice the config option name has moved to [auth] not [service]. See https://github.com/gogs/gogs/issues/6276#issuecomment-678787224.

@unknwon problem solved when I open my ticket  #6279
I have installed version 0.12 since the releases.
It would have been preferable to change the installation doc to prevent this change.

I had to change the [service] in my app.init to [auth]. Looks like the first time installer creates an incorrect app.ini file.

I had to change the [service] in my app.ini file to [auth]. Looks like the first time installer creates an incorrect app.ini file.

@joshartman Thanks for pointing out! It is a bug, will work a fix ASAP.

I had to change the [service] in my app.ini file to [auth]. Looks like the first time installer creates an incorrect app.ini file.

Fixed in https://github.com/gogs/gogs/pull/6293, thanks again!


Definition of laboratory test

Currently, the definition of "Laboratory test" (OGMS_0000056) is the following:
"A measurement assay that has as input a patient-derived specimen and as output a data item that is about a quality of the specimen."
However, there are two problems with this definition:

a laboratory test can fail and not lead to any data item about a quality of the specimen.
the output of a (non-failing) laboratory test is not always about a quality of the specimen: it could be e.g. about a disposition, a temporal duration (when assessing the coagulation speed of a blood specimen), etc.

A twofold suggestion could therefore be to:

make the definition of "Laboratory test" more general, e.g.:
"A measurement assay that has as input a specimen derived from an organism and that aims at having as output a data item that is about an entity related to the specimen."
add a subclass of "Laboratory test" named e.g. "Validated laboratory test", defined as follows:
"A laboratory test that has as specified output a laboratory finding."

Maybe "about an entity related to the specimen" is a bit too general, and could be simplified by "about the specimen", if we suppose that something that is about a dependent continuant inhering in the specimen, or about a process to which the specimen participates, is also about the specimen.
Note that this has also consequences on the definition of "laboratory finding" (OGMS_0000018).

Will this term relate to 'clinical measurement' http://purl.obolibrary.org/obo/CMO_0000000 and/or assay http://purl.obolibrary.org/obo/OBI_0000070? both of those terms include many laboratory tests and overlap with your needs.

From a quick look the OGMS term is narrower than CMO term 'clinical
measurement http://purl.obolibrary.org/obo/CMO_0000000'. Eg. it has as
sub-class the term 'body temperature
http://purl.obolibrary.org/obo/CMO_0000015'  which is traditionally not
considered a 'lab test'.
And the OBI term is broader and would apply to an analysis of any substance

not just biological.

cheers
Sivaram

Sivaram Arabandi, MD, MS
ONTOPRO
W:  http://ontopro.com/
Ph:<PHONE_NUMBER>
Li : https://www.linkedin.com/in/sivaramarabandi/
Think Semantics. Tame Silos.
On Wed, Oct 16, 2019 at 10:33 AM rvita<EMAIL_ADDRESS>wrote:

Will this term relate to 'clinical measurement'
http://purl.obolibrary.org/obo/CMO_0000000 and/or assay
http://purl.obolibrary.org/obo/OBI_0000070? both of those terms include
many laboratory tests and overlap with your needs.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/OGMS/ogms/issues/129?email_source=notifications&email_token=AB4D6F7W4NZVER6ALOZTTNDQO4X5ZA5CNFSM4IFBYCPKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBM55SY#issuecomment-542760651,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB4D6F36HRX4DFGPSCR5ZVDQO4X5ZANCNFSM4IFBYCPA
.

Is  'laboratory test' (http://purl.obolibrary.org/obo/OGMS_0000056) a subClass of OBI:assay? If so, how can we distinguish it with OBI:assay (http://purl.obolibrary.org/obo/OBI_0000070)? Does it work if we add a specific objective for 'laboratory test'?
Related tracker:
https://github.com/obi-ontology/obi/issues/1379


speed of response is really slow is there any way that i could improve its efficiency in replying speed

there is a delay in the response of the chat bot

anyone is fine

i think i got it.but still facing installing mongo db in opensuse

I'm going to close this off as a duplicate of one of the many other "slow" tickets. I'm aware of the issue and I'm incrementally making changes intended to improve the overall performance and development experience of ChatterBot.

Can somebody help me on the same issue . The bot is taking too much time to respond. I have not fed even 1000 questions/answers but its lazy in answering . If i upgrade to latest version of chatBot it will not run as (this is the issue i faced during the intial set up of this program, i had to degrade it to 0.7.4 ).
Please advise


Repository reorganization

Hello! I'm Juan Luis, and I've been lending a hand to PyCon Namibia for a couple of years. This is the best place I found for opening this issue :)
This repository no longer reflects the current status of na.pycon.org - instead, the current website is hosted on Divio and python-namibia.github.io redirects to it.
Therefore, I'm proposing:

Renaming this to python-namibia.github.io-2016, and archive it
Move the current Django website hosted in na.pycon.org to this organization - I talked to @evildmp and he agreed, I would just need permission to push to a new repository (for example python-namibia/website?)
And later, with time, create na.pycon.org/2016 with the contents of this repository for archival purposes (by the way, I would also love to create na.pycon.org/2015

What do you think @drvinceknight? cc @Ngazetungue

Good idea. Let's hear from Vince

@evildmp went ahead with the creation of the new public repository https://github.com/python-namibia/pycon-namibia

Apologies for only responding now. The suggestions all sound good to me. Let me know if/how I can help.

Thanks @drvinceknight ! Would you please do this?

Renaming this to python-namibia.github.io-2016, and archive it

And we can continue discussing somewhere else.


support UDP applications

Right now every pack has a service which forwards the docker exposed port to port 80, and then specifies the port type as TCP. We should come up with a way where we can also support UDP applications other than through "just change the chart".

draft connect supports this. :)


Websocket read failure: ContinuationNotStarted

Hi, thanks for this library and for your awesome work! I have a question about a weird issue that I've run into. I'm trying to implement a proxy server application, that listens on an address and when a new client arrives it connects to another server and resends data to that server and replies back to the client. So I do smth like this:
// client is the connection to another server
// server is the connection that I have accepted
loop {
    tokio::select! {
        client_result = client.read(&mut buf_client) => {
             match client_result {
                 Message::Text => {
                     server.write(&mut buf_client).await?;
                     buf_client.clear();
                 }
             }
         }
         server_result = server.read(&mut buf_client) => {
              match server_result {
                  Message::Text => {
                      client.write(&mut buf_server).await?;
                      buf_server.clear();
                  }
              }
         }
    }
}

The issue is that on the second iteration (first is that server.read recieves a message and forwards it to the client) I always get this log message and the connection to client closes:
2024-06-19T14:50:55.603427Z ERROR ratchet_core::ws: WebSocket read failure: Error { inner: Inner { kind: Protocol, source: Some(ContinuationNotStarted) } }

Can you please explain what am I doing wrong here? I tried both with and without deflate extension, but it doesn't seem to make any difference.

Hi @pdavydov108!
Thank you for your kind feedback and for raising an issue. I've locally recreated what you're trying to achieve and I cannot reproduce the error. However, I believe what is the cause of your issue is how you are creating the futures using the Tokio select macro.
You're creating a read future in each arm of the macro every time the macro runs and it's possible that the other arm will complete first. Then when the loop runs again, the data buffer may be dirty for the corresponding WebSocket as it's previously read part of a frame but the state of the read operation has been reset, causing the error that you're seeing. What you'll need to do is hold on to the read future and await it completing before building another one. Hopefully, that is the cause of the issue. I should have made it clearer in the documentation that the read and write functions are not cancellation safe - I'll improve the documentation clearer about this.
If it's not, or you need any more help, then please let me know :)

@pdavydov108, glad you got it sorted. The read and write functions are not cancellation safe for both the owned and split socket implementations. I'll have the documentation updated shortly to reflect this.


Conversion error with JSON setting file

Good evening everyone.
For the deployment I created an application from which we fill in the environment variables and I retrieve them from the sharepoint list via the PnP-PowerShell. I managed to convert my string to JSON and I stored it in a file (D:\a\r1\a\file.json) but when importing the solution I got this error

Screenshot of the solution import task

I really don't know where to start here. Does anyone have an idea or can tell me where I messed up? 🙏

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

ID: ca1df5d8-ef79-c56d-3950-0617da9f976b
Version Independent ID: ff132857-2fc9-57d0-df24-d42c054cbf1c
Content: Pre-populate connection references and environment variables for automated deployments using Power Platform Build Tools - Power Platform
Content Source: power-platform/alm/conn-ref-env-variables-build-tools.md
Service: power-platform
Sub-service: alm
GitHub Login: @kkanakas
Microsoft Alias: kartikka

@Aurelien-SamS - “Thanks for your feedback. We are closing this issue because we are either unable to find relevant information or reproduce this. If you're still experiencing the issue described here, please reopen or create a new issue.


processes slowing down when home button is pressed

Hi
I'm using this plugin in combination with the power management plugin modified by boltex.
When I hit the home button, the process that should be running in the background slows down by a lot. For example, I have a setInterval, that should log something to the console every 20 milliseconds, but once the app is running in background mode it only gets called once every second.
The weird thing is, that it isn't slowed down when hitting the power button instead of the home button.
Does anyone know what could be causing this behavior?

Hello @ffraaz,
yes that seem to be the case. Its better to go with an interval not less than 1 sec.
However with v0.6.6 there's the new disableWebViewOptimizations() method. Be careful using the method as it's disables most of the optimizations the web view would do while in background.
cordova.plugins.backgroundMode.on('activate', function() {
    cordova.plugins.backgroundMode.disableWebViewOptimizations();
});

It does fix your described behaviour also.


Posibility to specify nuget download url

I'd like posibility to override nuget download web url (for offline builds) which currently is hardcoded in BaseNuGet exec:
def nugetUrl = "https://dist.nuget.org/win-x86-commandline/v${project.extensions.nuget.version}/nuget.exe"
It would be cool to be able to provide own url like this:
nuget {
nugetUrl ="http://cache.local/nuget/3.3.0/nuget.exe"
}

Would be nice indeed, feeling like contributing it ?

I've just started looking at gradle and would be happy to contribute a fix for this as well as allowing you to use 'latest' as the nuget version.  The only problem is that I am not sure how to test my changes locally before submitting the pull request.

@admsteck You can either create some tests in Specs we have so far, or, make a test project where you use the plugin and configure it like you want (In order to use the modified version you either install it locally, or do a buildSrc symbolic link - see more info https://docs.gradle.org/current/userguide/custom_plugins.html)

Thanks @timotei. I went with the buildSrc option and confirmed that it uses the nugetUrl provided.

Appears that urls are case sensitive - this one opens fine:
https://dist.nuget.org/win-x86-commandline/v3.4.4/NuGet.exe
However plugin builds lowercase url which fails:
https://dist.nuget.org/win-x86-commandline/v3.4.4/nuget.exe

BlobNotFound

The specified blob does not exist. RequestId:c6e5ef4b-0001-00d5-2cc8-d284b0000000 Time:2016-06-30T12:08:39.0913813Z

Seems the lowercase url works for <3.4.4 versions (tested with 3.4.3, both lowercase and cased urls work).
nUgEt is such a troll :trollface:

actually no, needs to be lowercase for <3.4.4 and cased for >=3.4.4
:trollface:

see #48

@vitia, @gluck, change was done in this PR: https://github.com/Ullink/gradle-nuget-plugin/pull/62


add more status codes

This pull request adds a couple status codes that are documented here. The last status code seems to be required to use the BestObjStop option like Gurobi.GurobiSolver(BestObjStop=...).

Looks good, thanks.


Rename schema-transformer (and variants thereof) in the code to metamorph

I think the rename has been done succesfully everywhere, except in the code.

Done, also in currently existing branches.
There may be some slight merge conflicts in the future, although probably not. Certainly nothing spectacular.


Post release automated changes for translation releases

Post release automated changes for azure-rest-ai-translation-document

API change check
API changes are not detected in this pull request.


error thrown on semicolon issue

Codemod does not seems to like the :
When it is removed it runs fine. Please help in if there is a solution for the same.
ERR .\e2e\steps\general\loginlogout.step.ts Transformation error (Missing semicolon. (22:13))
code in line 22
let loginPage: Login = new Login();
Code related to it
import { Loginlogout } from '../../pages/general/loginlogout.po';
let loginLogout : Loginlogout = new Loginlogout();
Same error happens else where as well when I try to write into excel sheet. Snippet form the function.
var wb = new XLSX.Workbook();
wb.xlsx.readFile(fileloc).then(function(){
let sheet:Worksheet = wb.getWorksheet("Sheet1");
Same error is thrown at let sheet:

Can you provide an example file to transform and to reproduce this?

Closing due to inactivity.


Toast notification when appearing animation is set to disabled

In the toast module, when animation is set to none, the toast message not shows at all.

Fixed in the release: https://github.com/costlydeveloper/ngx-awesome-popup/releases/tag/3.0.0


Add more quotes

I want to let others know what quotes I know, so I added more quotes.
Short description of what this resolves:
Changes proposed in this pull request:

Fixes: #

Thank you for taking the time to contribute! This is sincerely appreciated. 😇
(Powered by GitMate.io)


revert test version

fix https://github.com/iapicca/yak_packages/issues/111

unbelievably the issue persist with 1.17.0 reverting even further to 1.16.7

RE fix https://github.com/iapicca/yak_packages/issues/111


Add Travis settings

I just added Travis build settings to this project. I'd like to automatically check at least the compilation result when looking at pull requests.
Would you please do the following things when you have time?

enable Travis builds for this project (I guess only owners can do that)
and then, merge this pull request

Thanks!
Travis is enabled, if I did it right.  I have to go to sleep, so I'll check it in the morning. :)

@rossabaker Thanks and sorry for bothering you so late at night. I'm afraid the setting for this project is not finished yet. Take a look when you have time. https://travis-ci.org/scalatra/scalatra-sbt


how to serialize request.task

How is possible get the request.task serialized when available ?
sessionManager.upload(fileNameLocalPathUrl, to: url, method: .put, headers: headers, interceptor: nil, fileManager: .default)
.request {  task in ....    <----- EXAMPLE
taskHandler(task)
}
.uploadProgress { progress in
progressHandler(progress)
size = progress.totalUnitCount
}
.validate(statusCode: 200..<300)
.response { response in
switch response.result {
thanks a lot

I'm not quite sure what you mean. But no, you can't access the underlying Request state, including tasks, in response handlers. You can capture the Request (make sure it's weak or unowned) in the response handler if you need access.
What is your use case here?

Thanks @jshier for your kind reply, the issue is that I want know the task, If I assign:
let session = sessionManager.upload(...
...
let task = session.task this is nil because internally the  session.uploadTask(with: request, fromFile:  .. is not yet called ..
Now the question is, where I can get the task ? ( not with the use of EventMonitor because I want know the task inside my upload func ?
I hope you have understand what I mean.

Yes, you need to access the task inside your response handler.
I'm interested in your use case. What do you need the task for?

It's very important, two example:

I save the task.taskIdentifier so I can with  session.getTasksWithCompletionHandler { (dataTasks, uploadTasks, downloadTasks) recover the task for cancel() or suspend() ...

we use the File Provider Extension, when start a session for upload / download you must register the task :
https://developer.apple.com/documentation/fileprovider/nsfileprovidermanager/2890932-register

Know the task is very important, now dear @jshier how I can get this ?
Thanks a lot !!
m.

I would suggest not using getTasksWithCompletionHandler, as that can break certain Alamofire functionality. We'll have a native replacement soon, but in the mean time, tracking the Requests you create should give you something similar.
There isn't really a guaranteed way to be notified when a Request's task is created. You might be able to get something similar by creating the Request and then enqueuing an accessor for the task. Something like:
let request = // Create request, but don't add response handler.
session.rootQueue.async {
    // Access request.task, dispatch where it need to go on main queue.
}
request.response { ... }

I'll look in something that would allow users to be notified when tasks are created.

thanks but don't works ...
session.rootQueue.async {
    let task = request.task <-- it's nil because is not yet available
}

I have the same issue. I need the underlying URLSessionTask and what @jshier suggested doesn't work unfortunately. Any other ideas?

I would suggest not using getTasksWithCompletionHandler, as that can break certain Alamofire functionality...

why ? , how, otherwise, I can cancel a task ?

sorry

why ? , how, otherwise, I can cancel a task ?

You should be canceling the Request instead, not the task it's using to make network requests. By and large Alamofire works as an abstraction for URLSession, so direct interaction with the URLSession and URLSessionTasks should be avoided.
I'll work on dedicated API for task access. In the meantime, the previous solution may work by using asyncAfter with an arbitrary delay.

@marinofaggiana I've created a PR that adds callbacks for the URLRequests and URLSessionTasks created for a Request. You can try it out from the feature/lifetime-events branch. It looks like this:
AF.request(...)
    .onURLSessionTaskCreation { task in
        // Do something with the task.
    }
    .response...

However, this API should only be used to pass URLSessionTasks to existing API that require them. If you need to cancel, resume, or suspend a Request, you should do so on the Request itself, not its underlying task.

Great @jshier !! thanks

You should be canceling the Request instead, not the task it's using to make network requests. By and large Alamofire works as an abstraction for URLSession, so direct interaction with the URLSession and URLSessionTasks should be avoided.

Yes, I have modify our code,  but remember that e.g. extension document provide use the task also for cancel() ...

I've pulled lifetimeevents branch and I got EXC_BAD_ACCESS error on a line with 'onURLSessionTaskCreation'
let request = session.request(self.url)
var task: URLSessionTask?
request.onURLSessionTaskCreation(perform: { (asynctask) in
task = asynctask
}).responseJSON .........
Also, I assume there's no way to receive 'task' synchronously..? Asking because integrating with GraphQL lib Apollo and there's a protocol that requires URLSessionTask to be returned as a result of a method.

Yes, I have modify our code, but remember that e.g. extension document provide use the task also for cancel() ... and in this case don't exists the possibility for change this

Canceling the task directly just means you'll see a network cancellation error instead of Alamofire's cancellation error, and the Request won't transition to the cancelled state, which impacts other features. But it should work.
@greenmood How are you integrating the branch? I'd recommend recompiling your dependencies to see if that fixes it. And as I commented on the Apollo issue, you should just make Request conform to Cancellable, no need to access the underlying task at all.

I would also suggest updating to Xcode 11.5, as there have been several runtime issues in previous versions that produce EXC_BAD_ACCESS errors at runtime.

@jshier I'm integrating with alamofire using cocoapods, did several times full clean and rebuild, haven't updated my xcode yet. Since issue is resolved for me, I'll postpone the update.
Thanks again for all the help.

Hi @jshier the

feature/lifetime-events

will be included in master branch ?
Cheers
m.

This functionality has been merged into master and should go out as part of the 5.3 release.