Multiple coordinates with same standard_name for sftof in BCC-CSM2-MR

When I apply a sea mask to BCC-CSM2-MR, I get:
esmvalcore.cmor.check.CMORCheckError: There were errors in variable sftof:
There are multiple coordinates with standard_name "latitude": ['lat', 'latitude']
There are multiple coordinates with standard_name "longitude": ['lon', 'longitude']
sftof: does not match coordinate rank
in cube:
sea_area_fraction / (%)             (latitude: 232; longitude: 360)
Dimension coordinates:
latitude                             x               -
longitude                            -               x
Auxiliary coordinates:
latitude                             x               x
longitude                            x               x
I think this is an issue with the model sftof data file; other model files that I've looked at don't repeat the use of latitude & longitude.
main_log_debug.txt
test_region.yml.txt

@jprb-walton Jeremy, welcome to ESMValTool GH! I will transfer this issue to ESMValCore since this is clearly a data/cmor check issue; I will also assign the right people to deal with it, sorry @ledm you are not one of them :grin:


Create UUIDS for feeder

Please create UUIDs for feeder so i can access my vps bots without everytime changing my ip since my ISP changes my ip address every 6 hours. Just like ogar-feeder-bot

The bot doesn't find you based on ip... it finds you based on your position that you send to the server. This project isn't made for a feeding bot, I'm working on a project dedicated to it and should be released in 2-3 days.

@HLDahquan Alright. awesome

@mayed505 use a dns with and auto ip updater or whatever


Mockc nocrash

Take out this functionality because crashOnFailure is never passed as true

The problem with crashOnFailure in mock_c() is that

it is never set
if we did set it, it will stay set forever, because the test terminator is static

It seems that mock_c() works fine for everything that is stored inside the mock() class itself, but it doesn't work for values stored in aggregates that become static in mock_c().

This change doesn't make sense. This would disable the crash on failure in C code. Not understand why we would want that.
On your comments:

It is passed in the constructor and set in the base class, right?
Of course it stays forever, that is the point of crashOnFailure :) If it is true, it will crash.

The reason this makes sense is that this code cannot be executed under any circumstances :-)

Nope. Wrong. I can submit a test that proves it (actually, was part of PR #580 that I closed). It might be set if I first make a call to mock_c() and only then call mock().crashOnFailure. I wouldn't call that proper behavior though. It is unlikely to happen in this way, especially if I use mock() in test cases and mock_c() in mocks written in C. It would be impossible to activate if using pure mock_c(), since crashOnFailure is not part of the mock_c interface.

Nope. Wrong again. For mock(), the setting stays only for the current TEST, because the test terminator isn't static. I see your point though; but if staying forever was a feature we actually wanted indeed, it would become very difficult to test, as it would be active in each and every subsequent TEST and has no matching operation to reset it.

Please take a look at the closed PR #580 to see the other option. Also, that PR would take considerably more changes to work properly, where with "properly" I mean that mock() calls and mock_c() calls are 100% exchchangeable under all circumstances.

When you use CrashOnFailure, you just want it to CrashOnFailure, so the scope of the test isn't really that relevant. It is a debugging technique and not something that would ever be permanently in a test. So, I do not find it very useful to make it work 100% exchangable, as long as you can let it crash on failure.
Related to #1, so you mean we ought to add a crashOnFailure method to the mock_c() ?

Yes, if it is to work at all, we would definitely need a crashOnFailure method in mock_c().
I recommend my addition to mock_c()::clear() also, if for no other good reson, the for keeping our sanity when testing CppUTest. In other words, close this PR and open #580 again ;-)
But, as I said, I wasn't entirely happy with that one.

P.S. If you can make it work without mock_c().crashOnFailure(), I'd be very interested to see how you did it.

Rejected


[Rokfin] Add extractor

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Bug fix
[ ] Improvement
[x] New extractor
[ ] New feature

This closes issue 1351.

let me know when you are done making changes

You can go ahead. I am done.

It's been 9 days, so I was wondering where the review process is. Any outstanding issues?
I would not be asking, but Rokfin is such an important site. It's a political website.  Supporting it supports free speech. Rokfin
became popular because of the on-going censorship on YT. Examples of this censorship are countless. You can find one of them in rokfin.py. The second test case has a link to a show that's been wiped from YT. The author got his entire YT channel taken down with no clear explanation.
The other reason Rokfin support is so important is a lack of the "Download" feature. The only way to download something from Rokfin is through things like yt-dlp.
I know that every extractor may be released as a plugin. However, there are two problems with this. First, not everyone has technical expertise to be able to use plugins. Second, even I (to be fully honest) didn't know about yt-dlp plugins until recently, and I've been using youtube-dl for years. So, can you really trust an average user to figure this out, since plugins are unsupported?
In summary, I would appreciate a substantive feedback regarding the Rokfin extractor.  If everything is good, then perhaps it can be merged. Simultaneously, I will do what I can to speed the process up: let me know if there are urgent/important yt-dlp bugs
that must be fixed, and I will look into fixing them. (Yes, I am familiar with the Discord channel).
I hope this message won't be ignored. Certain videos on Rokfin are so important that they can (literally, not metaphorically) save lives. I can provide specifics privately, if you are interested.
Thank you.

I've been testing the Rokfin extractor with the --wait-for-video option, and, as I was waiting for a stream, a network glitch occurred. The 'release_timestamp' immediately became None, as did diff (line 1370 in YoutubeDL.py). So far, so good. But then line 1375 gave a warning that the video should have become available by now, which is false, and line 1376 gave
TypeError: '>' not supported between instances of 'int' and 'NoneType'
There are two ways out of this. The extractor could do _download_json(... fatal = True ...) instead of fatal = False, the way this is done right now. That would silence the warning and avoid the TypeError. Problem is: this won't work well if --wait-for-network gets implemented.
So, should your code handle both diff and 'live_status' being None?

It's a simple fix. I'll push later
diff --git a/yt_dlp/YoutubeDL.py b/yt_dlp/YoutubeDL.py
index 227098656..528d727ee 100644
--- a/yt_dlp/YoutubeDL.py
+++ b/yt_dlp/YoutubeDL.py
@@ -1375,7 +1375,7 @@ class YoutubeDL(object):
             self.report_warning('Release time of video is not known')
         elif (diff or 0) <= 0:
             self.report_warning('Video should already be available according to extracted info')
-        diff = min(max(diff, min_wait or 0), max_wait or float('inf'))
+        diff = min(max(diff or 0, min_wait or 0), max_wait or float('inf'))
         self.to_screen(f'[wait] Waiting for {format_dur(diff)} - Press Ctrl+C to try now')

         wait_till = time.time() + diff

Yes, but the lines
elif (diff or 0) <= 0:
    self.report_warning('Video should already be available according to extracted info')

will still give a false warning in the situation I described.

The warning is correct. If the extractor doesn't set was_upcoming, it means that the video should be already available according to extracted info

@P-reducible Can you please rebase and squash these commits so there aren't a lot of unrelated changes in the commit history?

@orbea Yeah, sure. Right now, I'm still testing, fixing bugs, and adding new things. Should be finished soon.

Suppose there is a pre-filmed non-live video. What's the difference between release_timestamp and timestamp in this case? Does release_timestamp show when the video was released by the author, possibly on other platforms? Does timestamp show when the video (quoting the description) "became available" on this particular platform?
Also, what should the timestamp be for live streams?
Is there a place where the difference is explained?

For some services, there is a clear separation between "uploaded" time and "released" time. The two fields exists to account for that. If such a distincton doesnt make sense for a site, just use timestamp

Ok, I got confused because common.py and README.md say different things about timestamp. It looks like timestamp would be better named upload_timestamp due to its link with upload_date.
But what about live streams? Live streams need release_timestamp. Otherwise --wait-for-video won't work (line 1378 in YoutubeDL.py). What should their timestamp be?

It looks like timestamp would be better named upload_timestamp due to its link with upload_date.

Originally there was only timestamp and upload_date. The release_ variants were added later. The field names cannot be changed for compatibility reasons

But what about live streams? Live streams need release_timestamp. Otherwise --wait-for-video won't work (line 1378 in YoutubeDL.py). What should their timestamp be?

For livestreams, I think it makes sense to have only release_timestamp. But if you want to copy the same to timestamp, that's fine as well

Is this done now? If so, rebase on master and ping me

@pukkandan As you requested ...

Is this supposed to work yet? I applied it to 2021.12.25 yt-dlp release and ran into this error.
$ yt-dlp --verbose 'https://rokfin.com/stream/12029/What-were-allowed-to-debate--Dr-Pierre-Kory'
[debug] Command-line config: ['--verbose', 'https://rokfin.com/stream/12029/What-were-allowed-to-debate--Dr-Pierre-Kory']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, err utf-8, pref UTF-8
[debug] yt-dlp version 2021.12.25 [87e049962]
[debug] Python version 3.9.0 (CPython 64bit) - Linux-5.10.45-x86_64-AMD_FX-tm-6350_Six-Core_Processor-with-glibc2.33
[debug] exe versions: ffmpeg git-2021-06-26-ad06929 (setts), ffprobe git-2021-06-26-ad06929, rtmpdump 2.4
[debug] Optional libraries: sqlite
[debug] Proxy map: {}
[debug] [generic] Extracting URL: https://rokfin.com/stream/12029/What-were-allowed-to-debate--Dr-Pierre-Kory
[generic] What-were-allowed-to-debate--Dr-Pierre-Kory: Requesting header
WARNING: [generic] Could not send HEAD request to https://rokfin.com/stream/12029/What-were-allowed-to-debate--Dr-Pierre-Kory: HTTP Error 404: Not Found
[generic] What-were-allowed-to-debate--Dr-Pierre-Kory: Downloading webpage
ERROR: [generic] Unable to download webpage: HTTP Error 404: Not Found (caused by <HTTPError 404: 'Not Found'>); please report this issue on  https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see  https://github.com/yt-dlp/yt-dlp  on how to update. Be sure to call yt-dlp with the --verbose flag and include its complete output. (caused by <HTTPError 404: 'Not Found'>); please report this issue on  https://github.com/yt-dlp/yt-dlp . Make sure you are using the latest version; see  https://github.com/yt-dlp/yt-dlp  on how to update. Be sure to call yt-dlp with the --verbose flag and include its complete output.
  File "/usr/lib64/python3.9/site-packages/yt_dlp/extractor/common.py", line 717, in _request_webpage
    return self._downloader.urlopen(url_or_request)
  File "/usr/lib64/python3.9/site-packages/yt_dlp/YoutubeDL.py", line 3456, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/lib64/python3.9/urllib/request.py", line 523, in open
    response = meth(req, response)
  File "/usr/lib64/python3.9/urllib/request.py", line 632, in http_response
    response = self.parent.error(
  File "/usr/lib64/python3.9/urllib/request.py", line 561, in error
    return self._call_chain(*args)
  File "/usr/lib64/python3.9/urllib/request.py", line 494, in _call_chain
    result = func(*args)
  File "/usr/lib64/python3.9/urllib/request.py", line 641, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)

@orbea Does yt_dlp/extractor/extractors.py have this import statement:
from .rokfin import (
    RokfinPostIE,
    RokfinStreamIE,
    RokfinStackIE,
    RokfinChannelIE,
    RokfinSearchIE,
)

PS  I'm in the process of making a host of changes pukkandan requested.

@P-reducible Yes, I confirmed yt_dlp/extractor/extractors.py has that import statement. I just added .patch to the end of the PR url and applied it to the 2021.12.25 yt-dlp release.
wget 'https://github.com/yt-dlp/yt-dlp/pull/1534.patch'
patch -p1 < 1534.patch

$ grep -i rokfin /usr/lib64/python3.9/site-packages/yt_dlp/extractor/extractors.py
from .rokfin import (
    RokfinPostIE,
    RokfinStreamIE,
    RokfinStackIE,
    RokfinChannelIE,
    RokfinSearchIE,

How do I pass custom data between extractors? Is this already being done somewhere?

What kind of data? You can smuggle data in the URL, but this is often a sign of bad design of the extractors

I'd like to filter search results based on certain criteria such as date. The best approach seems to be to have the SearchIE -- rather than the URL extractor -- fetch the meta data and create the info_dict out of it. Once the filtering has taken place, the URL, along with the info_dict, is passed on (how?) to the URL extractor. The latter, in this case, has nothing left to do but simply send the info_dict downstream.
It wouldn't occur to me to use the user URL for this. Doesn't seem like a good idea.

User can just give an appropriate --match-filter, no?

If you say so. I will look into this.
I just realized something: one way to share custom data is through the  --extractor-args dictionary. The URL extractor can subsequently call self._configuration_arg and read that data back. I hope, this doesn't sound too wild.

@P-reducible this was a partial review.
Make these suggested changes to other functions/extractors as well if u think they apply.
And read the contributing guidelines once (again if already done so)

Is it possible you could add username/password support to this PR? I tried using the -u/-p options but I dont see it getting used and it errors with "premium content" for those types of videos. Great work BTW.

@pinchyCZN My plan is to work on site logins as soon as I finish this round of changes. These are the changes to get the existing version approved.  PS Thx for the word of encouragement!

Is it possible not to auto-follow POST/302 redirects? Can I override YoutubeDLRedirectHandler.redirect_request in utils.py (line 1670) somehow?

I am in the process of adding site logins. Here, on Rokfin, the login mechanism uses cookies extracted from a 302 redirect. Unfortunately (correct me if I am wrong), the existing code does not give access to the 302 response. Only the final outcome of the redirect chain is accessible.
To address this, I want to add push_url_opener/pop_url_opener logic to YoutubeDL. The push would store the existing opener (line 3710) on the stack and install a new one; the pop would, obviously, undo the change. (Needless to point out, the custom opener will be using a custom redirect_handler. To use the new opener, the extractor would call self._downloader.push_url_opener(rokfin_url_opener) and, when the login completes, self._downloader.pop_url_opener()).
If there is a better strategy, I'm all ears.
@pukkandan: is it better to make a new PR for this?

Why do you need access to the intermediate state? Any set-cookie header is automatically added into yt-dlp's cookie store. You can fetch it after the request

Why do you need access to the intermediate state?

@pukkandan

The target page is meaningless.
The target page is on a different domain, so yt-dlp needs to re-connect.

Why do you need access to the intermediate state?

@pukkandan

The target page is meaningless.
The target page is on a different domain, so yt-dlp needs to re-connect.

@pukkandan Thanks for your remarks. Since there seems to be serious miscommunication involved, I will address things one by one.

I do not close the issue unless I honestly believe it to be resolved.

Your statement that you may stop reviewing rokfin.py needs special attention. First, I have been (and will continue) doing my best to address the issues you raise. (As you may recall, my work was recently praised by a fellow GitHub member). But communication is a two-way street. When you leave comments like "same applies to the rest of the code" and disappear for over a month, you cannot expect your comments to be read and extrapolated from exactly as you envision. I can't read minds. Don't get me wrong, I try to avoid personal remarks.  Using this management style in the real world will get your subordinates to revolt on day one. Once again, don't get me wrong. It brings me no joy to say this. Nor do I try to be rude, confrontational, defiant, etc, or imply that I don't make mistakes myself. My only goal is to explain that the existing interaction is unproductive at best. We need to communicate. It's as simple as that.

In the meantime, I will start going through your latest remarks and address them as best as I can. Also, kindly read my comment from Nov. 18 if you haven't already.

Thank you.

I have "unresolved" some of my earlier comments that were not fully addressed. Many of these cases, I have literally given you code suggestions! You can go back and look for yourself whether you actually committed them or not. It is true that I don't (and don't plan to) put much effort into explaining my comments. I assumed the diff is most often self-explanatory. If it is not clear to you what I mean by a comment, you could ask.

Also, kindly read my comment from Nov. 18 if you haven't already.

Just because the website has contents that agrees with your political beliefs doesn't make it a priority for me. Unless it is a critical issue for a site like youtube/twitch etc or some feature I personally use (yes, I am selfish), the issue wont get any special consideration

When you leave comments like "same applies to the rest of the code"

Because there are too many places with the exact same problems. You expect me to point out each one?

and disappear for over a month,

Because of how much problems there are with this PR, it takes me a long time to review this. When I can review and merge multiple other PRs in the same time, I am obviously going to put this on the backburner. That is just how it is. (Sometimes I decide to just push the changes myself coz that can be faster than reviewing. Just haven't done that for this PR yet)
PS: I havent forgotten about the 302 issue you mentioned. But this PR is already quite big. Making such changes to the core code can be looked into separately after this is done

@pukkandan

Communication is key. (Can't stress this enough).
I never said anything about my political beliefs or asked for preferential treatment. That's 100% your invention.
Glad you reopened these issues. I will go over them carefully (as always). In some cases, I will make a note explaining why the proposed solution is problematic.

@pukkandan In your prioritization of websites, do you, as the yt-dlp maintainer, take into consideration that a particular website fights against censorship? You can replace "fights against" with "helps overcome" if you like. Here, by censorship, I mean extra-judicial content removal.

@pukkandan I just committed a new version. To the best of my knowledge, everything you said has been taken care of (except the optional change). I left all the requests open and commented on each of them except the optional one. You can close them if they are no longer relevant. I did try to extrapolate from your remarks but have no idea how well that went.

Is it possible you could add username/password support to this PR?

@pinchyCZN Since I don't have a Rokfin subscription right now, do you mind trying yt-dlp v.2022.02.04 out on a handful of premium videos to see if site logins work? One post, one stream, and one stack. Also, can you try it on a channel containing premium videos? No need to download the entire channel, of course. Your help is appreciated.

Is it possible you could add username/password support to this PR?

@pinchyCZN Since I don't have a Rokfin subscription right now, do you mind trying yt-dlp v.2022.02.04 out on a handful of premium videos to see if site logins work? One post, one stream, and one stack. Also, can you try it on a channel containing premium videos? No need to download the entire channel, of course. Your help is appreciated.

Ok thats great. I tried it on 3 premium videos and it worked great. It also downloaded the correct resolution [height<=360]. see attached log. Also are you on windows? If so, could you post a compiled exe on your page/fork? That would save me the trouble of busting out a VM and getting the toolchain setup. And whats taking so long with this PR? are they nitpicking you to death? lol

@pinchyCZN That is a great news. Thank you hugely!
I am not on Windows. (I'm actually on GNU/Linux). Following your suggestion, I've made a release https://github.com/P-reducible/yt-dlp/releases/tag/2022-02-25 hoping that this creates the .exe on the fly, but that didn't happen. I am yet to find out how to approach this.
For the channel-related question: can you try using 'title' instead? In the meantime, I'll see if I can add more fields.
PS   Yeah, it's been a slow-moving process. Hopefully, this page tells the story.

@pinchyCZN That is a great news. Thank you hugely!
I am not on Windows. (I'm actually on GNU/Linux). Following your suggestion, I've made a release https://github.com/P-reducible/yt-dlp/releases/tag/2022-02-25 hoping that this creates the .exe on the fly, but that didn't happen. I am yet to find out how to approach this.
For the channel-related question: can you try using 'title' instead? In the meantime, I'll see if I can add more fields.
PS Yeah, it's been a slow-moving process. Hopefully, this page tells the story.

I managed to create an exe on my VM, it wasn't as bad as I thought it would be. For the template stuff, It looks like the name "channel" is what I needed. I think I was using "uploader" since that works with both bitchute and youtube videos. The field "title" works correctly, I'll test some other fields today.
This is great that you got an extractor that does rokfin premium vids, I've seen other people asking about it. I tried to take a stab at it a few months ago starting with the template and never did get past the 404 responses. I see now how its pulling from a different url. I guess you found all that by using the chrome debugger? They should have a tutorial for what to look for in there docs. Im not much of a web dev, I'm more of a low level C and asm guy.

@pinchyCZN

... the 404 responses.

Rokfin gives a real head fake when it comes to 404: the video player is JS-based, and the JS runs on the Not Found error page. Go figure. Whatever works for them, I guess.

I guess you found all that by using the chrome debugger?

Partly the debugger. Partly using trial and error (e.g. how many video entries are maximally allowed per download?) Partly, through de-obfuscation of a JS file; otherwise, the search wouldn't work. The search DB uses a third-party domain. The DB access is login-password-protected. The login-password pair is kept in a static JS file which the extractor then parses. The Rokfin site logins would have been much harder if not for Keycloak. I still had to figure out certain Keycloak settings, but, at least, I knew where to look for docs.

They should have a tutorial for what to look for in there docs.

Rokfin didn't put out any specs (let alone tutorials) I am aware of. That, by the way, is their drawback. Imagine how many Rokfin bots would have been out there if Rokfin opened up. Take all the e-mail clients as an example. GNU Emacs has one. MH sends and receives e-mails through the command line directly. It's an ECO-SYSTEM. I'm not even mentioning the Internet bots. :)

Im not much of a web dev ...

Me neither. I normally write performance-sensitive code in C++.

I'm more of a low level C and asm guy.

Sounds like you've been doing embedded programming in C. I've done some of that myself.

As I mentioned before, I cannot review the PR if you keep adding things. So for now, I am considering only the part before the you added login 2e9bb11410f15368dde75d000facd79f9109b313.
For simplicity, I further split it into single video and playlist extractors and have merged the first part 334b1c480037ed5559ad53b435f13fbf70db5dd0. I'll merge the second part also soon. Then you can rebase the login code on it (or make a new PR for it)

As I mentioned before, I cannot review the PR if you keep adding things.

I had no idea. Did I overlook something?

I meant to keep the searchIE in this and separate the login code. But since you have now removed both from this PR, I assume you will be making separate PRs for both
As we discussed before, yt-dlp MUST NOT return non-video URLs in playlists!

@pukkandan

The reason searchIE is removed is that I started with the merged version and am putting the search back in. However, I am not finished with this yet and have not indicated that the code is ready for the next review. My intention is to keep searchIE in this PR, if you are still ok with that.
Only videos and audios are being returned by channelIE and stackIE, by default.

My intention is to keep searchIE in this PR, if you are still ok with that.

sure, either way is fine by me

Only videos and audios are being returned by channelIE and stackIE, by default.

yt-dlp MUST NOT return non-video URLs in playlists! It doesn;t matter if you put it behind an extractor-arg

yt-dlp MUST NOT return non-video URLs in playlists! It doesn;t matter if you put it behind an extractor-arg

In our most recent exchange (which has since disappeared), you seemingly left the door open for an extractor-specific argument, so I went ahead with it.
You can take this functionality out if you choose to. I would not put it in in the first place if you made yourself clear from the start.

In our most recent exchange (which has since disappeared), you seemingly left the door open for an extractor-specific argument, so I went ahead with it.

I clearly said the same thing in our previous discussion  (which has not "disappeared" btw). When you asked about adding an extractor arg, I asked for your reasoning on why yt-dlp "should return non-video URLs in playlists" and you failed to give any genuine reason beside a comment arguing the semantics that "it's not really a playlist" (which is relevant how?)

@pukkandan

Fair enough. Why didn't you say that right there and then? That would have saved my time and coding effort.
I am glad the old discussion is still up, although I still can't see it. Regardless, I take the "disappeared" part back.

Fair enough. Why didn't you say that right there and then? That would have saved my time and coding effort.

what!? I suggest you read the conversation again

@pukkandan What I said makes perfect sense. I gave an explanation, and you didn't reply. Only in retrospect did I learn that my explanation was not "genuine".

@pukkandan Are you planning a new release? If so, when should I give you the code in time for the release?

There are a couple more issues (unrelated to this) that I want to fix before a release. Will make one as soon as I get the time to finish those up. It is unlikely for new code to make it in. Feel free to take your time

@pukkandan If that's the case, you may want to merge this regression fix I just committed: 'premiumPlan' applies to posts only. For streams, the field is just called 'premium'. I also added multi_video=True to playlist_result in RokfinStackIE.

thanks @P-reducible I look forward to this feature.
On my flakey internet connection, rokfin videos frequently buffer and break and are impractical to play through. It will be GREAT if yt-dlp will acquire the video for me so that it can be watched later without buffering and network issues.

thanks ...

@iambumblehead, you are welcome. The speed lag affects me, as well, to some degree. Must be a Rokfin issue.

Site search and login moved to PR #2992.


client.getUsers("FRIEND'S NAME") doesn't work

Hi,
I used the example from README, but it doesn't work at all. Can you give me some advices? My code is as follows:
import fbchat
client = fbchat.Client("MY_ID", "MY_PASSWORD")
friends = client.getUsers("Ning")  # I tried a friend's name
friend = friends[0]

After executing the code, it shows the following error messages:
friends = client.getUsers('Ning')
File "build/bdist.linux-x86_64/egg/fbchat/client.py", line 189, in getUsers
File "build/bdist.linux-x86_64/egg/fbchat/utils.py", line 18, in get_json
File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
obj, end = self.scan_once(s, idx)
ValueError: Expecting ',' delimiter: line 1 column 63 (char 62)

Thanks!

Judging from the name, I guess your response data might contain non-ascii chars, am I correct?

Download the repo on your computer, then edit utils.py file. Try to change get_json(text) function from this: return json.loads(re.sub(r"for.*(.*;.*;.*).*;", '', text.encode('utf-8').decode("unicode-escape"), 1)) to this: return json.loads(re.sub(r"^[^{]*", '', text, 1)). Save the file and install fbchat again via setup.py from the folder you've downloaded.

code by @HashirZahir on pull request #32

still have error. would you please help me to take a look on it ? thank you.

import fbchat
client =<EMAIL_ADDRESS>"*******")
Logging in...
friends = client.getUsers("李魯民")
Traceback (most recent call last):
File "", line 1, in
File "build/bdist.linux-armv7l/egg/fbchat/client.py", line 189, in getUsers
File "build/bdist.linux-armv7l/egg/fbchat/utils.py", line 18, in get_json
File "/usr/lib/python2.7/json/init.py", line 338, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
obj, end = self.scan_once(s, idx)
ValueError: Expecting ',' delimiter: line 1 column 64 (char 63)

hi !
with fbchat help. I can successfully login into facebook and get friend on it. but I am not able to sent message to my friend. would you please kindly help to see anything wrong here ? thank you.
encoding: utf-8
import fbchat
client =<EMAIL_ADDRESS>"********")
friends = client.getUsers("李魯民")  # return a list of names
friend = friends[0]
sent = client.send(friend.uid, "測試訊息") # <-- always get false return. please help. thank you.
if sent:
print("Message sent successfully!")

thanks. return json.loads(re.sub(r"^[^{]*", '', text, 1))
fix the issue for me.


When can you provide the code for iOS client???

Went through the article while following the steps. Then found the empty folder. It's great to know that when we can try this out.

Any update?
@mobilequickie

Hello @mobilequickie
Need your update

Hi @mobilequickie, I like the idea of passwordless login by SMS. May I ask if the iOS client commit is ready? Thanks!

Hello @mobilequickie
Can you tell us the main methods/apis we have to use when creating the iOS app?
Thanks a lot.

I have some progress creating the client, but I found a bug I cannot fix:
https://github.com/aws-amplify/aws-sdk-ios/issues/2101
What I did is trying to replicate the react app logic:
Here we see that the password is not important and that the username is the phone number.
https://github.com/mobilequickie/amplify-passwordless-sms-auth/blob/master/webClient/angular/src/app/auth.service.ts#L47
Here we see that signup is called to create the user, and after that, we have to call signIn to start the sms logic.
https://github.com/mobilequickie/amplify-passwordless-sms-auth/blob/master/webClient/angular/src/app/sign-up/sign-up.component.ts#L34

@Ricardo1980  and others... I just published the iOS Sample application that works with the same way as the web client. Deploy the backend and then update the awsconfiguration.json to match your environment.
iOS Client
In addition, I updated and published a new version of the /Backend under the Serverless Application Repository here.

Closing this issue as the iOS app project code was published a few weeks ago.


updated github User class, added properties

I have updated the github User class, and now we can scrape following properties from the github profile.

Fullname
Username
Bio
Location
Followers
Following

Here's sample code for the same
user = User('pyguru123')
print(user.username)
print(user.fullname)
print(user.followers)
print(user.following)
print(user.bio)
print(user.location)

Do not make the PR without getting assigned. Also, we need to do it step by step, not all the properties at a time. We will go step by step. @pyGuru123

👍


BUG: ResultTables.CriticalLoadFactors()

Describe the bug
ResultTables.CriticalLoadFactors() returns ' ' , even with a loadcase defined with the 'calculate critical load' parameter enabled.
Similar commands in the ResultTables module seem to work as expected, example ResultTables.MembersInternalForces()
Expected behavior
A list of critical load factors for the calculation conducted. The lists produced by ResultTables are usually hard to discern but valuable data can be extracted.
Similar results are found when trying a surface exclusive commands (for example ResultTables.SurfacesEquivalentStressesMises()) on a model using strictly members.
`
from RFEM.enums import *
from RFEM.initModel import *
from RFEM.BasicObjects.material import Material
from RFEM.BasicObjects.section import Section
from RFEM.BasicObjects.node import Node
from RFEM.BasicObjects.line import Line
from RFEM.BasicObjects.member import Member
from RFEM.TypesForNodes.nodalSupport import *
from RFEM.LoadCasesAndCombinations.staticAnalysisSettings import StaticAnalysisSettings
from RFEM.LoadCasesAndCombinations.stabilityAnalysisSettings import StabilityAnalysisSettings
from RFEM.LoadCasesAndCombinations.loadCase import LoadCase
from RFEM.LoadCasesAndCombinations.loadCombination import LoadCombination
from RFEM.Loads.memberLoad import *
from RFEM.Calculate.meshSettings import GetModelInfo
from RFEM.TypesForNodes.nodalSupport import setNodalSupportConditions
from RFEM.Results.resultTables import ResultTables
from RFEM.Reports.html import *
from RFEM.Reports.printoutReport import *
from RFEM.ImportExport.exports import *
from RFEM.TypesForMembers.memberHinge import *
import numpy as np
import pandas as pd
import re
Model(new_model=False, model_name = 'Referensmodell_struktur_python')
Model.clientModel.service.begin_modification()
#Geometrically Linear Static analysis
StaticAnalysisSettings.GeometricallyLinear(no=1,
name = 'Fully Linear')
#Linear Buckling Modes
StabilityAnalysisSettings.EigenvalueMethod(1,'Eigenvector Linear' , 10, True, False, None, None,
StabilityAnalysisSettingsEigenvalueMethod.EIGENVALUE_METHOD_LANCZOS,
StabilityAnalysisSettingsMatrixType.MATRIX_TYPE_STANDARD)
#Create load case and combinations.
LoadCase.StaticAnalysis(no=1,
name='Lineload + Prestress',
to_solve = True,
analysis_settings_no = 1,
self_weight = [False],
params = {'calculate_critical_load': True, 'stability_analysis_settings': 1})
MemberLoad.Force(no=1,
load_case_no=1,
members_no = '28,61',
load_distribution =  MemberLoadDistribution.LOAD_DISTRIBUTION_UNIFORM,
load_direction =  MemberLoadDirection.LOAD_DIRECTION_GLOBAL_Z_OR_USER_DEFINED_W_TRUE,
load_parameter =[36e3 + 4.8e3]) #30 kN utbredd last.
MemberLoad.InitialPrestress(no=2,
load_case_no= 1,
members_no = '32,31,68,64,65',
load_direction= MemberLoadDirection.LOAD_DIRECTION_LOCAL_X,
magnitude = 600e3) #600 kN förspänning.
NodalSupport(no = 6, support = NodalSupportType.FREE,
params = {'name': "Tryckbom_param", 'nodes': "58 59 113 114",'spring_x': 0,'spring_y': 11e6,'spring_z': 0, 'coordinate_system' : 1})
Calculate_all()
clf = ResultTables.CriticalLoadFactors()
print(clf)
`

Using Model.clientModel.service.export_result_tables_to_csv("path") is a decent workaround, it creates a folder with seperate csv sheets for different results, for example  'LC1_stability_analysis_critical_load_factors', then use pandas to read the worksheet.
Would be nice to just extract the results directly without having to create and read files, especially for parametric study purposes.

Hi @BjornSchweder,
CriticalLoadFactors table seems to be really empty. But I can't tell if it should be empty or not. For this, I need your sample code to be complete so I can run it and compare results in RFEM to exported table.

Thank you for helping, and sorry for the delayed response!
The code I'm using is for editing an already existing client model, the RFEM-model is attached below:

from RFEM.enums import *
from RFEM.initModel import *
from RFEM.BasicObjects.material import Material
from RFEM.BasicObjects.section import Section
from RFEM.BasicObjects.node import Node
from RFEM.BasicObjects.line import Line
from RFEM.BasicObjects.member import Member
from RFEM.TypesForNodes.nodalSupport import *
from RFEM.LoadCasesAndCombinations.staticAnalysisSettings import *
from RFEM.LoadCasesAndCombinations.stabilityAnalysisSettings import *
from RFEM.LoadCasesAndCombinations.loadCase import LoadCase
from RFEM.LoadCasesAndCombinations.loadCombination import LoadCombination
from RFEM.Loads.memberLoad import *
from RFEM.Imperfections.imperfectionCase import *
from RFEM.Calculate.meshSettings import GetModelInfo
from RFEM.TypesForNodes.nodalSupport import setNodalSupportConditions
from RFEM.Results.resultTables import ResultTables
from RFEM.Reports.html import *
from RFEM.Reports.printoutReport import *
from RFEM.ImportExport.exports import *
from RFEM.TypesForMembers.memberHinge import *
import numpy as np
import pandas as pd
import re
Model(new_model=False, model_name = 'Referensmodell_struktur_python')
Model.clientModel.service.begin_modification()
Model.clientModel.service.delete_all_results()
#What load cases are to be calculated
lin = Model.clientModel.service.get_load_case(1)
lin.to_solve = True
Model.clientModel.service.set_load_case(lin)
deltaP = Model.clientModel.service.get_load_case(3)
deltaP.to_solve = False
Model.clientModel.service.set_load_case(deltaP)
nonlin = Model.clientModel.service.get_load_case(4)
nonlin.to_solve = False
Model.clientModel.service.set_load_case(nonlin)
Calculate_all()
test = ResultTables.CriticalLoadFactors()
print(test)
Referensmodell_struktur_python.zip

Hi @BjornSchweder,
this is seems to be a bug. Thank you for reporting.

Fixed


chore(main): release 2.0.0

:robot: I have created a release beep boop
2.0.0 (2024-07-14)
⚠ BREAKING CHANGES

The optional hovered_buffer_background key in the YaziConfigHighlightGroups has been renamed to hovered_buffer. This change was made to better reflect the purpose of the key.

Features

add default colors for hover highlighting (#194) (1deeba2)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v2.0.0
:sunflower:


Investigate should we support storage account and EH in different resource groups

https://github.com/microsoft/spring-cloud-azure/issues/632

We have a case where we need to consume events from an Event-Hub that we don't own and can't create a storage account in its resource group. Currently, such a case is not supported.

@yiliuTo, I believe this PR https://github.com/Azure/azure-sdk-for-java/pull/23849 has implemented this feature.

Please track #24260 for the release of our next major version.


Avoid redundant state should cover heavy calculations

https://beta.reactjs.org/learn/choosing-the-state-structure#avoid-redundant-state
The principle is great for covering a very common anti-pattern in React codebases, but I think the example shown is too simple in the sense that this is only dealing with primitives.
It could be easy to confuse that heavy calculations such as states involving Arrays should follow this principle too,  whereas those are better put into their own local state through the use of a useEffect instead of following this principle
ie.
import { useState, useEffect } from 'react';

export default function Child({ 2DArray = [] }) {
 const [1DArray, set1DArray] = useState([])

 useEffect(() => {
    const flattened = 2DArray.flat()
    set1DArray(flattened)
}, [2DArray] )

return ( ...

whereas those are better put into their own local state through the use of a useEffect instead of following this principle

They're not better off being put into separate state because now you split your rendering across two commits. One will contain and updated 1DArray but outdated 2DArray. Only the second commit will contain a consistent screen where both 1DArray and 2DArray are up-to-date.
This derived state should be computed during render not in a effect. If that computation is heavy, useMemo is the proper hook to reach for here:
export default function Child({ 2DArray = [] }) {
 const 1DArray = useMemo(() => {
    return 2DArray.flat()
  }, [2DArray] )
  return ( ...

Or, if 2DArray can be rendered with a lower priority you can useDeferredValue
export default function Child({ 2DArray = [] }) {
 const deferred2DArray = useDeferredValue(2DArray)
 const 1DArray = useMemo(() => {
    return deferred2DArray.flat()
  }, [deferred2DArray] )
  return ( ...

Wow yeah thats right that is much cleaner to read and understand..
So with that,  do you think this is still helpful info to add onto that page?

New beta docs will cover these use cases.


Support 2wheel mode

Add support for 20-wheel differential drive instead of only 4-wheel.

Looks fine to me


Roll Engine from 284ef2217dc9 to 8d48b399ddbe (1 revision)

https://github.com/flutter/engine/compare/284ef2217dc9...8d48b399ddbe
2020-10-05<EMAIL_ADDRESS>Roll Skia from e2c4999ec340 to 0d31ed506863 (5 revisions) (flutter/engine#21604)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Commit queue failed; closing this roll.


Add the ability to blacklist identifiers from a module

This allows you to prevent someone from importing a specific identifier from a module. This is useful if you want to, for example, maintain a policy that people never import identifiers that are reexported (e.g.: in MTL).
I am not sure how the hlint testing framework works, so I have not been able to test this code.

You can run
stack run hlint test
to do tests (or the equivalent cabal command)

Can you rebase/merge master into this so the tests will run properly.

Can you give an example of the kind of thing this hint will spot, and not spot, so I can understand it a bit better? Does it only work with explicit imports?

The point is that if you do badidents: ["foo", "bar"] then you won't be able to import foo and bar explicitly from that module. You can still import them implicitly, but in practice many codebases have a rule that disallows implicit imports.


Use invariantSeparatorsPath for resource dirs

On Windows the file separator is \ which results in escaped characters being encoded in the Karma config paths which breaks tests.
e.g.
config.files.push({
   pattern: __dirname + "/\src\jsTest\resources/**",
   watched: false,
   included: false,
   served: true,
   nocache: false
});

This PR changes all resource paths to use invariantSeparatorsPath which forces / to be used as the separator on all platforms.

Good catch!

Released in 0.2.2. Thanks again!


to fix notification renderer when custom fields edited

Could you please write a test case which fails without your change and works with it?


Css

Hi,
This is a very nice component.
I was wondering, is there anyway I can use bootstrap style in the component. I need to use something similar style to form-control class of bootstrap.
Could you gimme any idea?
Thanks

Hi,
In order to override the css of the autocomplete component you have to disable the parent component 'encaptulation' i.e encapsulation: ViewEncapsulation.None
Eg.
`import { Component, ViewEncapsulation } from '@angular/core';
@Component({
selector: 'any-component-name',
template: '<ng4geo-autocomplete (componentCallback)="autoCompleteCallback1($event)">',
styles: [  .demo #search_places {     height: 100px;   }]
})`


New features needed to ensure alignment and increase productivity across the Azure SDK Service Partner Engagement Model

This epic is for new features needed to ensure alignment across the Azure SDK Service Partner Engagement Model.  The Beta Azure SDK Service Partner Engagement Model is complete.  Moving forward we will need to continue to prioritize new requirements that impact the model and move them into our roadmap.  This epic will track those issues for next semester.
Azure SDK Service Partner Engagement Model (as of Feb 2023)

### Increase productivity (i.e. reduce complexity, automate where and when possible, ...)
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7676
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7890
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7837
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7913
- [ ] https://github.com/Azure/azure-sdk-tools/issues/5297
- [ ] https://github.com/Azure/azure-sdk-tools/issues/8222
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7469
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7144
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7084
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7878

### Improve user experience (application layer)
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7607
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7592
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7546
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7120
- [ ] https://github.com/Azure/azure-sdk-tools/issues/5905
- [ ] https://github.com/Azure/azure-sdk-tools/issues/5492
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7358
- [ ] https://github.com/Azure/azure-sdk-tools/issues/8063
- [ ] https://github.com/Azure/azure-sdk-tools/issues/8079
- [ ] https://github.com/Azure/azure-sdk-tools/issues/8206
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7035
- [ ] https://github.com/Azure/azure-sdk-tools/issues/7529

### Evolve engagement experience data model to deliver improved insights and reporting:
- [ ] #7769
- [ ] #7503
- [ ] #7237
- [ ] https://github.com/Azure/azure-sdk-tools/issues/8808
- [x] #7084

@ladonnaq I want to be clear that all the issues in this Epic are proposals and that we are not committing to completing all of this issues to be able to consider the Epic done, or that we failed with the committments for Dl

Closing as we have captured relevant data with the appropriate epic.


Bounding box does not update on child node (or parent node) modifications

Describe the Bug
Hi! Got a weird issue when it comes to updating the width of a parent node.  It seems that, once a child node is attached to a parent, the bounding box breaks, and will not update when new updates come in.
https://user-images.githubusercontent.com/5607577/205497162-866eab0e-f5d3-4c80-82fa-0c7780adfaaf.mov
As you can see here, I go and make a table (parent) node.  I then update the name, and the width of the node updates as expected.  I then add a column (child) node.  I would ideally like the parent size to update as well when the child is added, but I just haven't figured out how to do that.
However, when I go back and try to edit the parent name again, the width of the node no longer updates :(
Your Example Website or App
No response
Steps to Reproduce the Bug or Issue
Ah man IDK this is so hard with web dev stuff :( I can't post my code b/c it is a private repo.  But essentially my set up is that i am trying to dynamically add child nodes, and have the parent and children always have the same width of the largest parent / child.
I'm also using tailwind if that helps
Expected behavior
The parent node should still update width when input is received despite having a child node
Screenshots or Videos
see above
Platform

OS: MacOS Ventura
Browser: Arc
Version: 0.79

Additional context
No response

Parent nodes behave a bit differently. You need to pass the correct dimensions via style.width and style.height. Are you sure that you need a parent node here? Why are you not just adding divs for the columns? Can you drag them out of the parent?

Why are you not just adding divs for the columns

This would be the ideal solution, but when I tried this, I had a bad time trying to figure out the deal w/ handlers, positioning them correctly, etc. etc. Particularly when it came to dealing with nested content (Ie modeling out a nested structure inside a node, with handlers on certain nested fields).
Is there a way to position a handler relative to a specific div inside of a node?? it seemed from the docs to be required to position manually :(

Sure that's possible. We are doing it here: https://reactflow.dev/docs/examples/overview/.
I built a little example: https://codesandbox.io/s/dynamic-handles-71dc9v
Does it help?

please re-open if the issue persists.


botio-linux hangs with slow script dialog box on issue6032.pdf test

This started happening after dec-5 firefox aurora update (https://hg.mozilla.org/releases/mozilla-aurora/rev/eeaa77b2a1e0e2c8f34f2342b2a254e1025f9f4d), last good firefox aurora (https://hg.mozilla.org/releases/mozilla-aurora/rev/858b1b930b16a5c46634e3dad2650c517e150cb0)
See https://github.com/mozilla/pdf.js/pull/4352#issuecomment-162230504

Should this be reported upstream or should we replace the test file? I recall we have another test file from the Bugzilla issue.

https://hg.mozilla.org/releases/mozilla-aurora/pushloghtml?fromchange=fd72ac533a5d91e8ba8341b78a4b0ed11332c904&tochange=695a52aa5554b191bd6d533f6842edf5ad228e8e
We shall probably replace the test


Update Domain Tool: can not deploy with SourcePath as relative path in WLST online mode

I am using the Create Domain Tool to create the domain (WLST offline) and Update Domain Tool (WLST online) to  update the domain (and also for appDeployments update)
In both the cases without "archive_file" option (as I am copying the war or ear files to the necessary location myself).
I have noticed that createDomain.sh (WLST offline) works but updateDomain.sh (WLST online) does not.
e.g. with
appDeployments:
  Application:
    testapp:
      SourcePath: "pf-appl/dist/test.war"
      Target: "CLUWDT"

after runnging updateDomain (WLST online,  without "archive_file" option), I get this error
SEVERE Messages:
    1. WLSDPLY-09015: updateDomain deployment failed: Failed to get hash for file pf-appl/dist/test.war because the entry did not point into the archive and was not an absolute path

although "pf-appl/dist/test.war" exists (relative to the domain directory).
With absolute path it works.
With "archive_file" option also it works if "SourcePath" is subdirectory of wlsdeploy
e.g.
appDeployments:
  Application:
    testapp:
      SourcePath: "wlsdeploy/applications/test.war"
      Target: "CLUWDT"

for those addresses relative to domain, prefix with @@DOMAIN_HOME@@/

Thanks
I assume that otherwise (with relative path), it is not supposed to work with updateDomain .


fix update case nereids_syntax_p0/test_timestamp_arithmetic.groovy

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


can't set window.location and get warning about CSP change

I'm completely new to all this so I'm sorry for my ignorance...  I'm trying to just do window.location = "https://www.google.com/"; after the deviceready.  If I try accessing the app through the browser it seems to have no issue.  If I try accessing it through the PhoneGap Developer Android app it seems to refuse to go to that address and I also get a warning about it updating the Content Security Policy:
[phonegap] [console.warn] Content Security Policy has been modified to be: <meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline' gap: ws: https://ssl.gstatic.com;style-src 'self' 'unsafe-inline' data: blob:;media-src *;img-src * 'self' data: content:;script-src * 'unsafe-inline' 'unsafe-eval' data: blob:;">
I don't know enough about CSP to determine if this policy is restricting loading the page I want or not...  But I've already set all the whitelist settings in config.xml to be as permissive as possible and I can't figure out why it's not letting me do this.
PhoneGap CLI, node & npm versions
phonegap 6.5.0
node v4.2.6
npm 3.5.2
Sample Code that illustrates the problem
I commented out the 'js/index.js' component to the default hello-world app and changed it as follows:
    <!--<script type="text/javascript" src="js/index.js"></script>-->
    <!--<script type="text/javascript">-->
        <!--app.initialize();-->
    <!--</script>-->
    <script>
        function onDeviceReady() {
            if (navigator.connection.type == Connection.NONE) {
                navigator.notification.alert('An internet connection is required to continue');
            } else {
                window.location = "https://www.google.com/";
            }
        }
        document.addEventListener("deviceready", onDeviceReady, false);
    </script>

Hi @tisdall
See this article about setting the the proper whitelisting of urls the app is allowed to navigate to: https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-whitelist/#navigation-whitelist
Also, since you are trying to do this within the PhoneGap Developer App, you won't be able to navigate to that url because the PhoneGap Developer App is using its own config.xml to read the settings from. So even if you set the config.xml within your own project, the PhoneGap Developer App won't honour that.
In order to use the PhoneGap Developer App and navigate to the urls you want, you can clone the repo and build the app yourself. See these instructions to do so: http://docs.phonegap.com/references/developer-app/custom-build/ios/

Thank you @timkim .  It seems really odd to me that the PhoneGap Developer App has any sort of restrictions on it (whitelist, CSP, etc).  It's a developer-only application and restrictions would only serve to confuse other developers when things mysteriously don't work.  Any idea why it's set that way?

@timkin ...  I just looked at the app repo, it doesn't look like it has any restrictions.  Are those restrictions just added to the app in the Play store?

@timkim - sorry, I misread it..  it has no whitelist rules so it's disallowing it.  I still don't understand why it would restrict anything like that in a dev-only tool.

Hi again @tisdall,

It seems really odd to me that the PhoneGap Developer App has any sort of restrictions on it (whitelist, CSP, etc). It's a developer-only application and restrictions would only serve to confuse other developers when things mysteriously don't work. Any idea why it's set that way?... it has no whitelist rules so it's disallowing it. I still don't understand why it would restrict anything like that in a dev-only tool.

In this case, the allowing of navigation of urls wasn't something we considered so we just never put it in. I suppose we could include it in the next release.
For the CSP modification that's done by connect-phonegap - we've tried to modify the user's CSP in such a way that makes it as open as possible. It's a bit janky, I'll admit. However modifying the user's CSP is needed in certain cases where a user's CSP might interfere with the communication needed between connect-phonegap and the PhoneGap Developer App.

Hi guys,
As I have nothing to do with this project and I received the initial email in error, could you please discontinue including me in the conversation.
Thanks and regards,
Tim
Dr Tim Wilkin
Senior Lecturer | Course Director – Computer Science
School of Information Technology,
Faculty of Science Engineering & Built Environment
<EMAIL_ADDRESS>Deakin University
221 Burwood Highway, Burwood, VIC 3126
+61 3 92517714
tim.wilkin<EMAIL_ADDRESS>www.deakin.edu.auhttp://www.deakin.edu.au/
Deakin University CRICOS Provider Code 00113B
Important Notice: The contents of this email are intended solely for the named addressee and are confidential; any unauthorised use, reproduction or storage of the contents is expressly prohibited. If you have received this email in error, please delete it and any attachments immediately and advise the sender by return email or telephone.
Deakin University does not warrant that this email and any attachments are error or virus free.
From: Tim Kim<EMAIL_ADDRESS>Sent: Tuesday, 20 June 2017 10:21 AM
To: phonegap/connect-phonegap<EMAIL_ADDRESS>Cc: Tim Wilkin<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [phonegap/connect-phonegap] can't set window.location and get warning about CSP change (#200)
Hi again @tisdallhttps://github.com/tisdall,
It seems really odd to me that the PhoneGap Developer App has any sort of restrictions on it (whitelist, CSP, etc). It's a developer-only application and restrictions would only serve to confuse other developers when things mysteriously don't work. Any idea why it's set that way?... it has no whitelist rules so it's disallowing it. I still don't understand why it would restrict anything like that in a dev-only tool.
In this case, the allowing of navigation of urls wasn't something we considered so we just never put it in. I suppose we could include it in the next release.
For the CSP modification that's done by connect-phonegap - we've tried to modify the user's CSP in such a way that makes it as open as possible. It's a bit janky, I'll admit. However modifying the user's CSP is needed in certain cases where a user's CSP might interfere with the communication needed between connect-phonegap and the PhoneGap Developer App.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/phonegap/connect-phonegap/issues/200#issuecomment-309608806, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AC7xG8mEWiZ8ge3BTQhyLupK9NfDoF9aks5sFxBQgaJpZM4N88cP.
Important Notice: The contents of this email are intended solely for the named addressee and are confidential; any unauthorised use, reproduction or storage of the contents is expressly prohibited. If you have received this email in error, please delete it and any attachments immediately and advise the sender by return email or telephone.
Deakin University does not warrant that this email and any attachments are error or virus free.

@Timkin - sorry!  I didn't realize github names were case sensitive!
I'm going to close this issue since it's unrelated to this project.


Add 3 way merge option

Hi,
I added the option to have a 3 way merge editor instead of the 2 way diff.
You can see an example of usage as I've added a demo4 directory with an example.
I'm also interested in implementing synchronised scrolling between the editors, is this related to your scroll locking branch / are you working on it?
P.S: Sorry for the amount of code you will need to go over.
Thanks

Extremely cool, thanks @morsdyce! I'll check it out tonight.

Hey @morsdyce, sorry for never getting back to you on this. Very cool feature, however I found a lot of things just didn't work anymore. Try playing around adding changes to different editors and scrolling - I was on Chrome, Mac. The diffs were not working properly.

I'm closing this, as there is no way this gets merged now. Still open to a 3-way merge option


Possible abuse to retrieve users github tokens

If a package's sourceUrl is set to any URL that contains the string github.com, the token is attached to the request.
cf: https://github.com/airsdk/apm/blob/1be2921ecc0247dc9e04aabbc8d5e0049e00f688/client/src/com/apm/client/commands/packages/utils/PackageRequestUtils.as#L132
possible abuse
By setting the sourceUrl to: https://www.evil.com/releases/assets/github.com/package_1.0.0.airpackage
The publisher / owner of the evil.com domain can then collect github tokens from people downloading the package.
possible solution
Check that the download URL starts with https://api.github.com/
I'll test this and submit a PR. (Done: #36)

Yep too true.


Graph feature canvas aspect ratio

When resizing the window of the calculator app the graph stretches, and that's not how it should be working. The canvas aspect ratio should be always constant. As the app is right now, it can't be that helpful for students.
Feedback hub link:
https://aka.ms/AAdjqm5

This is your friendly Microsoft Issue Bot. I've seen this issue come in and have gone to tell a human about it.

I want to work on this issue

Thanks for your report! I agree the stretched graph seems to be pretty confusing 😵. We'll take a deep look into this.

Thanks for the bug report! This appears to be a dupe of #1368, so going to close for now. If I am mistaken, please let me know, and we can revisit.


[FixCode] Make sure to accept the fixit in note about adding '@escapi…

What's in this pull request?
Change to accept fixit in diagnostic note about adding '@escaping'.

Resolved bug number: (SR-)

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

A smoke test on macOS does the following:

Builds the compiler incrementally.
Builds the standard library only for macOS. Simulator standard libraries and
device standard libraries are not built.
lldb is not built.
The test and validation-test targets are run only for macOS. The optimized
version of these tests are not run.

A smoke test on Linux does the following:

Builds the compiler incrementally.
Builds the standard library incrementally.
lldb is built incrementally.
The swift test and validation-test targets are run. The optimized version of these
tests are not run.
lldb is tested.

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

…ng'.

@swift-ci smoke test and merge

@swift-ci smoke test OS X platform

@swift-ci smoke test

@swift-ci smoke test


Ls/fixed rosenbrock

This work implements the Rosenbrock timestepping scheme for computation of stellar evolution quantities with a fixed time grid (though increasing timestep).
To determine the time grid, I ran the adaptive Rosenbrock scheme and plot the time step as a function of time. I roughly obtained a power law dAge = 0.1 Age^0.75 (Myr). I added a capping to a maximum time step of 50 Myr for further accuracy.
This time step is now set as the default one. I added a test but kept the one using the ForwardEuler scheme.

Fast work, thanks @lsoucasse. Does the Rosenbrock method roughly reproduce the results of the Euler method?

Yes, you can actually compare them as I kept same input for the two tests (Rosenbrock/Euler). Highest differences are of the order of 5% for XUV fluxes as spotted earlier with the adaptive Rosenbrock.

Actually I also ran the Proteus test (physical integration) and only escape rate is affected (which makes sense).

I agree that that makes sense. If we run PROTEUS with the updated version of MORS, will it then automatically use this new integrator by default?

Yes, I switch this new time scheme as the default as discussed this morning. I already have a proteus branch with updated test values. I will open a PR once pyPI release is published.

If you want to run with previous time stepping scheme use:
    params = mors.NewParams()      params['TimeIntegrationMethod'] = 'ForwardEuler'      star = mors.Star(Mstar=inp[0], Omega=inp[1], params = params)


fix: Rename graphql.go to goql.go

What this PR does / why we need it:

JIRA ID: XX-XX

Notes for your reviewer:

:tada: This PR is included in version 1.2.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


I added nanoJSX to the new home page of Denoify

I hope you don't mind :)
https://www.denoify.land

That's cool. I love denoify. Glad to be on your website, which looks really nice. 👍🏻


fix(typing): ensure return type is a str when default_value is set

Issue number: #3839
Summary
Changes
Overload get_header_value.
User experience
Ensure return type without casting.
Checklist
If your change doesn't seem to apply, please leave them unchecked.

[x] Meet tenets criteria
[x] I have performed a self-review of this change
[x] Changes have been tested
[ ] Changes are documented
[x] PR title follows conventional commit semantics

Is this a breaking change?
RFC issue number:
Checklist:

[ ] Migration process documented
[ ] Implement warnings (if it can live side by side)

Acknowledgment
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

thank you @Wurstnase for once again address a typing tech debt I wish we had resolved a while ago but never priotized 🫶
Merging after CI checks

Your welcome :rocket:


AnimatedSprite should NOT force to use core.ticker.shared.

Maybe Users  want to update animatedSprite by their gameLoop/gameTick method.
So I think there should be a switch to control whether use core.ticker.shared

Would be easy to add another constructor argument and member for self-updating. Turning this off should not use shared-ticker.
class AnimatedSprite {
  constructor(textures, selfUpdate=true);
}

Alternatively or in addition, could add global setting AnimatedSprite.SELF_UPDATE to disable shared ticker usage for all AnimatedSprite.
Thoughts?

@bigtimebuddy ， I've add a PR.
But I think your plan is better.

See #3429

merged 👍


[5.2] Add chunkById query builder tests

This just adds a test for query builder chunkById, and fixes up some crappy docblocks from my last pr.
There were no existing tests for the query builder chunk method -- possibly because the method is essentially duped from the eloquent builder file. Seems nice to have both sides tested.
Happy to add a couple more tests if they bring any value.

Ha... whoops. I started that way, but then realized that other methods in the file seemed to vertically align, so i changed it. Changed it back now :smile:
Thanks for clarifying.

Some phpdocs don't follow this convention simply because they haven't been updated. It's not supported by StyleCI ;)

IMO, other part of phpdocs fix should go to new PR

More important, because of the mocking, these tests failed to detect that the results contains only the id column, and I also noted in https://github.com/laravel/framework/pull/12861#issuecomment-202780961.

No thoughts concerning the "only id column in results" issue? Seems pretty important to me.

@kevindoole Any news on this "select only id" stuff? As a reminder, this goes unnoticed because tests mock pageAfterId.

Yeah, I've been dragging my heels with this! I'll get it done tonight; looks like probably a change to one line, unless I figure out a nicer way to test it.

@vlakoff Looks like someone beat me to it :+1:
I'm gonna still take a quick look at some of the duplication there.

Looks like someone beat me to it :+1:

Yep: #13137


Decide on a versioning scheme

We need a versioning scheme for our nodes.
e.g. in web3_clientVersion RPC we must return a version. For instance geth returns: "Geth/v1.12.1-stable/linux-amd64/go1.19.1"
You can discuss under this issue.

closing since I opened this issue on the wrong repo


Missing reference to Microsoft 365 Defender

Hi,
As this is part of the Microsoft 365 Defender console, it would be useful to state that in the article, mentioning that it is one of the components within the main MS 365 Defender portal.
Cheers
Amjad

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

ID: 07d225fa-722b-4608-a695-b935d4b820e1
Version Independent ID: 07d225fa-722b-4608-a695-b935d4b820e1
Content: Microsoft Defender Vulnerability Management
Content Source: microsoft-365/security/defender-vulnerability-management/defender-vulnerability-management.md
Service: microsoft-365-security
Sub-service: mdvm
GitHub Login: @siosulli
Microsoft Alias: siosulli

@Amjad202020 Thank you for your feedback. We have made changes to the document via PR#https://github.com/MicrosoftDocs/microsoft-365-docs/pull/12427
Once the author approves, the changes will be live.
Thanks
Sri

Closing as per author's comment. Thanks


Wrong view of SMPL data in infer_wild_mesh.py

Hello, I used motionbert from the mmpose package and put the resulting 3D keypoints results into infer_wild_mesh.py. I have a problem with the SMPL prediction, the human body always has its back to the screen, I would like to ask how to improve this problem, thank you.
https://github.com/Walter0807/MotionBERT/assets/89696836/55f481a1-eec4-47dd-a6c6-0f29b0429be5
https://github.com/Walter0807/MotionBERT/assets/89696836/fe331654-cb80-4ba9-97d5-54d70a20a181

https://github.com/Walter0807/MotionBERT/assets/89696836/721fb408-c4f8-4a88-b97f-19292df9fa78


Binary float

When float is read, the parser ought to make sure to write data in a float and then convert it to double, not just write on the first 4 bytes of double. This is not a problem with integers.

Fixed for Parser; check in Deserializer since I haven't commented about it...


[GEARPUMP-272] Fix app submit exception when no arguments provided

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

[x] Make sure the commit message is formatted like:
[GEARPUMP-<Jira issue #>] Meaningful description of pull request
[ ] Make sure tests pass via sbt clean test.
[x] Make sure old documentation affected by the pull request has been updated and new documentation added for new functionality.

Codecov Report

Merging #155 into master will decrease coverage by -0.02%.
The diff coverage is 0%.

@@            Coverage Diff             @@
##           master     #155      +/-   ##
==========================================
- Coverage   71.57%   71.56%   -0.02%
==========================================
  Files         191      191
  Lines        6068     6069       +1
  Branches      526      527       +1
==========================================
  Hits         4343     4343
- Misses       1725     1726       +1

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b0c905b...e2bffa4. Read the comment docs.

+1


4 argument function is not inferred as ErrorRequestHandler in Express.use

import {ErrorRequestHandler} from "express";
import express from "express"

const errorHandler: ErrorRequestHandler = (err,req,res,next)=>{}

const app = express()

app.use(errorHandler) // Works well with typescript
app.use((err,req,res,next)=>{}) //     <-------  Wrong type here

All arguments(err~next) is any type. Is it intended?

would you please provide us more info about error message you got

@tareq-alsayed This error is typescript type error.
https://github.com/DefinitelyTyped/DefinitelyTyped/discussions/60353


Question: Livestreaming, like Twitch?

Heyo! Thanks for releasing this, super excited about the possibilities!
Would it be possible to livestream using webtorrent? I have been doing some research and somewhere someone said you COULD livestream, but you'd need to make 15-30s chunks of video into individual torrents.
How would that work without causing all kinds of stutters/gaps? How quickly will webtorrent be able to download the next magnet(?) link, connect to new peers, and pick up the video stream? I could maybe have it so each time the client starts streaming, have like a 2-5second delay before it starts playing the torrent to give some time to pickup subsequent torrents + peers??
Thanks for reading, appreciate all the hard work put into this!

duplicate of  #14, #243 and #448
There is a search bar in issues ;)

I swear I searched! Thanks for those references.
So, the answer seems to be: webtorrent (BitTorrent) is for static unchanging files. Bah! I'll keep trying to find options, thank you!


ISE when enumerating array aggregates

Given a type:
type Person;

The query select enumerate(array_agg((insert Person))); produces the error:
edgedb error: InternalServerError: aggregate functions are not allowed in functions in FROM

Additionally, the query with y := array_agg((insert Person)), x := enumerate(y), select x; produces the error:
edgedb error: InternalServerError: a column definition list is required for functions returning "record"

The second error is related to #4090 and is related to how arrays are unpacked.
In standard pgsql, given:
CREATE TABLE PERSON (
  id int
);

INSERT INTO PERSON(id) VALUES (1);
INSERT INTO PERSON(id) VALUES (2);
INSERT INTO PERSON(id) VALUES (3);

The query generates something like:
SELECT
  *
FROM (
  SELECT
    array_agg("Person~1"."ps~1") as "ps~2"
  FROM (
    SELECT
      ROW(id) as "ps~1"
    FROM
      Person
  ) as "Person~1"
) as "Person~2"
CROSS JOIN LATERAL (
  SELECT
    *
  FROM LATERAL ROWS FROM (
    unnest("Person~2"."ps~2") -- ERROR HERE
  ) WITH ORDINALITY as "f"("id")
) as "F"
;

Where the error line should be something like
    unnest("Person~2"."ps~2") as ("id" int)

The array_agg and unnest are generated during eta_expand_ordered


chore(version): bump to 4.1.2

Codecov Report
Patch coverage: 89.58% and project coverage change: -0.01 :warning:

Comparison is base (05aaf87) 90.37% compared to head (eb80c72) 90.37%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1298      +/-   ##
==========================================
- Coverage   90.37%   90.37%   -0.01%
==========================================
  Files         185      185
  Lines        5725     5765      +40
==========================================
+ Hits         5174     5210      +36
- Misses        551      555       +4

Flag
Coverage Δ

py3.8-ubuntu-latest-pandas
90.37% <89.58%> (-0.01%)
:arrow_down:

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

Impacted Files
Coverage Δ

src/ydata_profiling/profile_report.py
81.96% <ø> (ø)

src/ydata_profiling/compare_reports.py
87.84% <83.01%> (+1.66%)
:arrow_up:

src/ydata_profiling/visualisation/missing.py
88.37% <92.85%> (-6.98%)
:arrow_down:

src/ydata_profiling/model/pandas/missing_pandas.py
100.00% <100.00%> (ø)

src/ydata_profiling/visualisation/plot.py
80.21% <100.00%> (-0.43%)
:arrow_down:

tests/unit/test_comparison.py
100.00% <100.00%> (ø)

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

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


When add Chia (XCH) support ?

Description
official website:  https://www.chia.net/
Name:  Chia

HD Derivation Scheme:

Symbol:  XCH

Documentation:
https://github.com/Chia-Network

Reason:
HOT
Checklist
Finish check list here.

Currently not planned.


Plugin doesn't let me export, it doesn't show any message out of console

I'm here to report this bug:
Plugin ReferenceError: xdNode is not defined
at l (\plugins\6eaf77ea\main.js:1:89631)
at a._serialize (\plugins\6eaf77ea\main.js:1:89240)
at a.serialize (\plugins\6eaf77ea\main.js:1:22069)
at u._decorate (\plugins\6eaf77ea\main.js:1:11998)
at u.serialize (\plugins\6eaf77ea\main.js:1:11844)
at \plugins\6eaf77ea\main.js:1:12136
at Array.forEach ()
at e.Artboard._getChildList (\plugins\6eaf77ea\main.js:1:12113)
at e.Artboard._getChildStack (\plugins\6eaf77ea\main.js:1:12334)
at e.Artboard._serializeWidgetBody (\plugins\6eaf77ea\main.js:1:75136)
It appears when i'm trying to export my project, doesn't show any message and doesn't export anything, i got the last adobe XD version and downloaded plugin from the plugins section.
Am uploading ss for you to see what's happening

and when i click export

it doesn't show any message and tought was my problem because of it... then tried like 3 or 4 times to do the same and all of em says that reference error.
please, help me with this...
Thank you!

same error in Adobe XD version <IP_ADDRESS> for Mac

Same issue here. There is no activity at all it just goes blank and when you check /lib folder there is nothing at all.
HELP!!!

some solution to this issue?

Same issue on Windows 10. No error message at all and nothing in the selected lib folder when exporting.

Yes me too. On Windows 10 Home. Using Adobe XD 34.1.12. And Flutter 1.22.2.
No error message.

This looks like it a duplicate of #71 .
I know it's been awhile since this was posted (see #79 for some info), but would anyone be able to confirm that they are using v1.0.0, and if so, provide me with an XD file that's slimmed down to the minimum that will throw the error? That will help me isolate it, confirm it's the same as #71, and ultimately fix it.
Thanks!

I can confirm I get this error using XD <IP_ADDRESS> on macOS 11.0.1 with the plugin version v1.0.0.

Here's a stripped down version:
prototype-test.xd.zip

Thanks @edhaz ! I'll take a look at this, and have a fix in the v1.0.1 build.
If anyone else can similarly share their files it will help me confirm that there is only one cause for this issue.

I just added a fix for the issue presented by the file @edhaz provided. Wound up being an error in our error handling. sigh
If anyone else has sample files, I'm happy to test them to ensure they are covered by this fix.

I just added a fix for the issue presented by the file @edhaz provided. Wound up being an error in our error handling. sigh
You can work around it for now by ensuring there are no unsupported transitions or eases on your prototype interactions (ex. auto animate).
If anyone else has sample files, I'm happy to test them to ensure they are covered by this fix.

This solved it for me, could not export any individually either. Even those that had simple transition and no auto-animate so long as there were artboards that used auto-animate.
No errors though, it just doesn't do anything.


[False Positive] Fix MySQL state store to handle eTag properly.

Expected Behavior
Every value set in MySQL should have eTag.
Etag must be calculated automatically and not be user input.
Set operation is always an UPSERT.
Validate actors reminders work by running the new E2E test from https://github.com/dapr/dapr/pull/2848
Actual Behavior
ETag is not automatically set
ETag must be defined from the App.
ETag determines if action is update or insert.
Steps to Reproduce the Problem
Validate actors reminders work by running the new E2E test from https://github.com/dapr/dapr/pull/2848
UPDATE:
I validated the behavior is as expected. No change needed. The E2E test also passes.

I validated the behavior is as expected. No change needed. The E2E test also passes.


As a user I need to see the placeholder text whenever it is available so that I can make high quality entries into the fields.

There are several fields that have context dependent placeholder text (ex. the placeholder text for [Details] depends on the action you have selected from the dropdown)
Agreement Holders

[ ] actions for Minister's Issues
[ ] schedule narrative

Staff

[ ] Pasture Notes
[ ] Plant Community Description
[ ] Action for Plant Community Actions [Details] #170
[ ] Minister's Issue [Details] #190
[ ] Minister's Issue [ Objective] #191
[ ] Actions for Minister's Issue (Detail?)
[ ] Additional Requirements [Details] -- does not depend on the selection

@mccullochk There are a few user stories I'm wondering if you could take a look and consider for this sprint. We can talk later to discuss which you think would be best. This is one of them.  I'll tag you in another couple after lunch.

@LisaMoore1 Are these placeholder texts available anywhere?

@calebissharp These are the ones that are all in iPad. I can recreate a table with all of them in for you or you can refer to the iPad. Let me know what you prefer.

A table would be great please.


handle tuple with value 0 and return empty array

Currently randint will fail when handed tuple with a value (0,)

cupy.random.randint(10, None, size=(0,))
AttributeError: 'NoneType' object has no attribute 'reshape'

This PR resolves the error by handing back any empty cupy array if the ret value is None

@quasiben thanks for opening the PR. Could you add a test here too?

@pentschev added test.  I'm not entirely sure the test is in the style the cupy community adheres to

It looks fine to me, but I think some of the CuPy maintainers will soon let us know for sure if we missed something. :)

Jenkins, test this please

Jenkins CI test (for commit 1b6d0354da7729430e9ea738529b98f8e8288ee7, target branch master) succeeded!

Jenkins, test this please

Jenkins CI test (for commit f69d6e9f1094e9d280ff4b60b1285c0cc4b575a4, target branch master) succeeded!


Rejected trades are now recreated

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

Bug fix

What is the current behavior? (You can also link to an open issue here)

When a trade is rejected in Coinbase Pro because the price moved after Gekko sent the trade to the exchange, a new trade isn't recreated (can't retry the trade as the exchanged deleted it). Gekko holds asset that wasn't sold until the user intervenes by manually selling (and restarting Gekko). Rejected buy orders also require user intervention as Gekko thinks it bought the asset and won't respond to a new buy order until a sell order is issued.

What is the new behavior (if this is a feature change)?

Gekko will note the error in terminal, recalculate the price based on ticker info, and recreate the trade using new price information.

Other information:

Keeping this pull request alive. This is a serious issue that has lost money for me and others that use Coinbase Pro.

Agree with crypto49er here, this fix is needed for coinbase trades.

This issue might have been fixed with this recent commit (https://github.com/askmike/gekko/commit/a143345a6a42f60bbb3c5e6520fce16fa1da9a39), but I want to keep this open until I or some one can confirm by forcing a trade that will be rejected in Coinbase Pro, instructions here: https://forum.gekko.wizb.it/thread-57832.html


Split Minecraft Story Mode Fandom Wiki from the rest

Resolves #834 by giving the Story Mode Fandom its own entry that redirects to minecraft.wiki.

Thank you for this PR! I ended up removing the redirect from Minecraft Story Mode Fandom Wiki to the independent Minecraft wiki altogether.

So what will happen now if a user accesses the story mode fandom?


Indicator that shows if you are uploading or downloading?

Is your feature request related to a problem? Please describe.
I'm unable to tell if I am downloading or uploading my save easily
Describe the solution you'd like
A small text box telling me if I'm downloading or uploading would be very useful.
Describe alternatives you've considered
It may be visible already, but I don't know where to find it if it is.
Thank you for your hard work on this project.

This shouldn't be too hard - I'll target for 0.19 since I want to feature lock 0.18 soon.


Support Apollo Federated Directives

Problem Statement
Add support for federated directives so that directives like @inaccessible cause the inaccessible fields to be filtered out from the generated Karate feature file.
Proposed Solution
This should be doable by:

Creating a list of directives to support
Taking a particular action based on the directive (e.g. "filter out field x since it has been marked as @inaccessible")
Cover all the new functionality with tests

An small optimization may be to include a flag that allows users to indicate whether their schema is a federated schema (or not) and skip all this work if not.

Closing this for now, as baseline functionality for @inaccessible and @external has been added.


unable to select a dropdown value. Want to select mp3.

I am unable to select a dropdown value. I am using Windows 10 OS if that helps. As soon as i try to select a dropdown value(other than the default), the focus moves away from the dropdown.

Hi, can you upload a GIF or a video that shows exactly what is happening?

Here's the video:
https://www.useloom.com/share/d0d8f3657643456ba26eb0e255bcdf45
I did not build from the source. I installed using the "windows installer'.

I have no idea why this is happening and i can't reproduce it on my side.
I use wx.PopupTransientWindow to implement the formats dropdown.
From the wxPython docs on the wx.PopupTransientWindow:

disappears automatically when the user clicks mouse outside it or if it loses focus in any other way.

I guess something on your PC cause the window to lose focus...
Also, what is the window that appears exactly under the youtube-dlg's "Welcome" message?
It seems to appear everytime you open the formats dropdown.


Move Moves legacy integration

[x] Make repo at https://github.com/gedankenstuecke/oh-moves-source (needs to be moved later on)
[x] implement moves login on the new project
[x] Export API connection to external source into stand-alone oauth2 project
[x] Deploy external project
[x] Generate oauth2 tokens for existing legacy members
[x] Import newly created tokens into stand-alone project
[x] Alter foreign-keys of existing data files to stand-alone project
[x] shutdown legacy integration

Ok, the integration now lives at https://github.com/OpenHumans/oh-moves-source.
The current version

[x] works
[x] has minimal tests for the import tasks (both the transfer from onsite-OH to standalone as well as the regular data updates)
[x] is set up to make scheduled updates every 4 days of all users
[x] has an import management command that needs a CSV with oh_project_member_id,oh_refresh_token,moves_id,moves_refresh_token

For the switch the following things need to happen:

[ ] have export command for the main site that can export such a CSV
[ ] deployed new Moves app needs to be cleaned of test users
[ ] test users that have joined the project on the main site need to be deleted (i.e. @madprime and myself)
[ ] Moves client_id & client_secret need to be switched out on the heroku deployment
[ ] The redirect_uri on the Moves API page needs to be updated to the new location.

All set for the switch. 🎉

and another one transferred!


does the PersonRestService.java   can be implemented by mybatis3.x?

i want to use this demo as the micro service architecture, does the PersonRestService.java   can be implemented by mybatis3.x? and add the token expired,the token can be insert into the table as a record with a expired time column.

Hi! Yes, of course you can implement the PersonRestService with MyBatis. Please search the web how to do that in Spring in detail. You rather can implement this service in any way (or with any data source) you want. You just have to look how to integrate it in Spring.
To the second part of your question:
I'm not sure what you mean. The token has actually a field (or claim) "created". You could check if that date is too old (expired) and reject the authentication in JwtAuthenticationTokenFilter#doFilterInternal. There is a rest point under AuthenticationRestController#refreshAndGetAuthenticationToken where you could refresh an existing token. In JwtTokenUtil#refreshToken you can see that in that case a new token is generated with an updated "created" field.
I would try to avoid a blacklist table in the database with expired token hashes because this table can grow very large. But feel free to do that if you want to blacklist tokens ;)
I hope this comment answers your questions. Please give me a feedback so I can close this ticket.

Yes i want to want to blacklist tokens. but as you advoise,i should does't use it ,and use The token has actually a field (or claim) "created" instead. Thank you very much!


Modal params not working

Hi great package. I was working on this for a while but yours is a really nice implementation.
I did notice that when navigating to a model with parameters the parameter key is its value.
This is from your example:
Route(path: "details/:id", builder: { param in NamedView(text: param["id"] ?? "No param")}, isModal: true) // added isModal
params = ["id": ":id"] instead of ["id":<actual_id>]

Thanks for the raised issue!
You are right. I never tested this case. Will fix it soon.

Should be fine now in the latest release https://github.com/archanger/LinkRouting/releases/tag/0.2.1


ControlledSearch - closes #249

Component Description
A controlled search component

Can you update the storybook imports so that it imports the component from '../ControlledSearch'


Issue #2 Tagfix

Issue #2 fixed by requesting the value of the hidden div as well as adding the value of the input div

Good work! Looks like your commit for issue #1 snuck into this PR though. Can you isolate your fix?


[WIP] fix: this.Events() was not available for consumption due to assembly name conflicts

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
fix
What is the current behavior? (You can also link to an open issue here)
https://github.com/reactiveui/ReactiveUI/issues/1526
What is the new behavior (if this is a feature change)?

What might this PR break?
Unbreaks people, if an item is missed in the review then potentially a platform might remain broken etc.
Please check if the PR fulfills these requirements

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

Other information:

@ghuntley,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

Coverage remained the same at 69.557% when pulling 1b3d88c51bdd2239e9212cdba7bd08f7e0787d45 on append-suffix-to-assembly-names into f94ba3fde4067b7c1fe64c90e358d57dd9557ed5 on develop.

Confirming this resolves #1526


Release 7.80.1

Please make sure all GH checks passed before merging. It can take around 20 minutes.
Briefly review this PR to see if there are no issues or red flags and then merge it.

Ignore, testing release script changes