Consider giving contains function a different name, or not doing importall Base

Your function contains{T}(P::Vector{T}, q::T; check_is_close=true, rtol=1.0e-4) is extending the Base generic contains function due to calling importall Base. Preferably at least one of the input types could be something defined in this package, or the function name itself could be local, or you could avoid importing everything.

In general, is importall Base a bad idea and should we get rid of it in future?

Yes, otherwise you're extending any functions that happen to use the same name as Base. For things like size, length, getindex etc that's what you want to do, but usually it's better style to be explicit about it.

Done


Update tx config with new client

Updating tx config and transifex pull command for new transifex client v3 . For further details, check the issue https://github.com/edx/edx-arch-experiments/issues/190#issuecomment-1442401691
arbi-bom doesn't have write access to the repo so created PR from fork instead.

Hey, @UsamaSadiq thanks for this PR.
please do follow conventional commits for PR title as well.
Also, do we have any Jira ticket for this fix?

Hi @omerhabib26 I've updated the PR title. As for the JIRA ticket, arbi-bom follows GitHub project to keep track of the issues. I've linked the related issue in the description of the PR.


GIS Definition

GIS Stands for Geographic Information Systems, not Geographic Information Science, though I like that better.

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

ID: 39395f6d-4136-97c3-348c-00e8060a1cbd
Version Independent ID: bf20855d-f1ad-be4e-dbbc-bcfa911479a5
Content: Create ArcGIS maps by ESRI in Power BI - Power BI
Content Source: powerbi-docs/power-bi-visualization-arcgis.md
Service: powerbi
GitHub Login: @mihart
Microsoft Alias: mihart

@johnbonnett
Thanks for letting me know. I've updated the document.
Take care,
Michele


Prescient sorting does not work with completion-styles

I'm currently using the default emacs minibuffer completion mechanism. I added prescient to completion-styles and noticed that candidates were being filtered but not being sorted.
To debug this, I removed all other completion styles, deleted prescient-save.el, made sure that prescient-persist-mode is active and indeed when activating completion and selecting a candidate through e.g. describe-variable, then closing emacs, prescient-save.el doesn't contain any information about the new completion. And when restarting emacs and doing the same completion again, the candidate is not at the top of the list.
prescient-save.el:
(funcall prescient-cache-callback :version '5 :history '#s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) :frequency '#s(hash-table size 65 test equal rehash-size 1.5 rehash-threshold 0.8125 data ()) :serial-number '0)

How can I activate prescient sorting through completion-styles? I'm happy to help you debug this, tell me what more info & data you need from me.
Thank you very much.

Did you set the option completions-sort to the function prescient-completion-sort? That option was added in a recent version of Emacs.
You might need to advise or hook into the minibuffer's commands to run prescient-remember. For that, you could look at how Vertico is supported.

I set completions-sort to prescient-completion-sort (it was previously set to prescient-sort) and that didn't help.
What helped was adding the following to minibuffer-exit-hook (taken from vertico-prescient.el):
 (defun init/prescient-remember-minibuffer-contents ()
  "Remember the minibuffer contents as a candidate.

    - If we are not completing a file name (according to
      `minibuffer-completing-file-name'), then we remember the
      minibuffer contents.

    - When completing file names, we remember the last component
      of the completed file name path, including a trailing
      directory separator as needed."
  (let ((txt (minibuffer-contents-no-properties)))
   (unless (string-empty-p txt)
    (prescient-remember
     (if minibuffer-completing-file-name
      (if (directory-name-p txt)
       (thread-first txt file-name-split (last 2) car file-name-as-directory)
       (thread-first txt file-name-split last car))
      txt)))))

Thank you very much.


test: error testing for handlers completed

Codecov Report

Merging #44 (f1f3ab4) into dev (37faa7c) will decrease coverage by 40.84%.
The diff coverage is 44.44%.

@@             Coverage Diff             @@
##              dev      #44       +/-   ##
===========================================
- Coverage   85.71%   44.87%   -40.85%
===========================================
  Files           1        9        +8
  Lines           7      156      +149
  Branches        0       17       +17
===========================================
+ Hits            6       70       +64
- Misses          1       78       +77
- Partials        0        8        +8

Impacted Files
Coverage Δ

src/middleware/bearer.js
15.38% <15.38%> (ø)

src/middleware/basic.js
23.07% <23.07%> (ø)

src/routes/public.js
25.64% <25.64%> (ø)

src/models/user.js
34.37% <34.37%> (ø)

src/routes/user.js
47.61% <47.61%> (ø)

src/models/index.js
81.81% <81.81%> (ø)

src/handlers/error.js
83.33% <83.33%> (ø)

src/handlers/not-found.js
100.00% <100.00%> (ø)

src/server.js
94.11% <100.00%> (+8.40%)
:arrow_up:

Continue to review full report at Codecov.

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

Merged


Small doc fixes

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

There are still some .. code-block:: python (e.g. see this) directives in our codebase, so maybe we can remove those as well as part of this PR.


Banner in landscape view

The feature regards the landscape view.
When I turn the phone from portrait to landscape, the banner doesnt change size and stays at the top/bottom left leaving a lot of space without nothing.

You have to manually change that in your code, reacting to orientation changes and calling a new banner.

I did it.
I called the removeBanner and then the add banner, but stay the same....
Did I miss something?
Do you have an example?

We do not have hard control about the size of the banner really. If you are using the correct size, then admob returns what is available.


[UI] Login in local user page still referring to Dex

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
Below the login with the local user page there is still a link referring to the "Dex login".

Expected Behavior
It should be "Log in with SSO" or "Use SSO" instead.
Steps To Reproduce
No response
Environment
- OS:
- Architecture:
- Epinio Version:
- Cluster:
  - Provider:
  - Options:
  - Kubernetes Version:

Logs
No response
Anything else?
No response

Checked in the latest epinio-dev
Tests adjusted here: https://github.com/epinio/epinio-end-to-end-tests/pull/345

Verified fixed in epinio v1.9.0-rc3:


/usr/bin/env: ‘python’: No such file or directory

Checklist

[x] I'm asking a question
[x] I've looked through the README and FAQ for similar questions
[ ] I've searched the bugtracker for similar questions including closed ones

Question

I'm using GNU/Linux Mint 21 without a lot of knowledge about linux systems. My original attempt was
youtube-dl https://www.youtube.com/watch?v=a4UQJwd3awQ
and this failed with something about a failed certificate,. This led me to consider possible updates of the software, as via youtube-dl -U  but this was rejected. Then via the Software Manager I tried uninstalling and re-installing and re-uninstalling then your manual install instructions
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
hash -r
and have now reached a confused state whereby the message "/usr/bin/env: ‘python’: No such file or directory" now appears on attempts at invocation of youtube-dl
I have no idea what to do now, as there is no obvious scheme for installing python, which I think is installed anyway (Dropbox uses it, for example)
Meanwhile, this is a dual-bootstrap system, with wunduhx XP (software compatibility reasons too irritating to recount) so I have a go at downloading and installing the wunduhs version, presumably the latest available, also with bad results via a DOS window, as below:
C:\Documents and Settings\Nicky\My Documents\Downloads>youtube-dl.exe --no-check-certificate --verbose https://www.youtube.com/watch?v=F-DvqEHJvFA
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--no-check-certificate', '--verbose', 'https://www.youtube.com/watch?v=F-DvqEHJvFA']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.4.4 (CPython) - Windows-XP-5.1.2600-SP3
[debug] exe versions: none
[debug] Proxy map: {}
[youtube] F-DvqEHJvFA: Downloading webpage
ERROR: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\YoutubeDL.py", line 815, in wrapper
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\YoutubeDL.py", line 836, in __extract_info
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\common.py", line 534, in extract
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\youtube.py", line 1794, in _real_extract
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\common.py", line 1012, in _search_regex
youtube_dl.utils.RegexNotFoundError: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag
and include its complete output.
Entering youtube-dl -U didn't produce anything helpful; now I'm back in Linux, because I couldn't sign up to your GitHub system via Firefox on XP, so I don't now recall exactly what didn't work with -U via DOS.
I can't try the --no-check-certificate on Linux, because youtube-dl command no longer activates, even after a fresh attempt at installing via the Software Manager. Presumably, something somewhere is messed up.
I can't find mention of python in the README for this context. And now it is time for bed.

Review #31530 to find suggestions for how to install an up-to-date yt-dl on your Linux system.

Thanks. After some noodling around, I used Linux/Mint's Software Manager to install yt-dlp and tried again, with the following intimidating response:
nicky@TimeVampire5:~$ yt-dlp https://www.youtube.com/watch?v=a4UQJwd3awQ
[youtube] a4UQJwd3awQ: Downloading webpage
[youtube] a4UQJwd3awQ: Downloading android player API JSON
[youtube] a4UQJwd3awQ: Downloading player f55759b8
WARNING: [youtube] nsig extraction failed: You may experience throttling for some formats
n = PZZ3fwE5qwfdy3Y ; player = https://www.youtube.com/s/player/f55759b8/player_ias.vflset/en_US/base.js
a4UQJwd3awQ: Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/yt_dlp/extractor/youtube.py", line 2519, in _decrypt_nsig
self._player_cache[sig_id] = func(s)
File "/usr/lib/python3/dist-packages/yt_dlp/extractor/youtube.py", line 2551, in
return lambda s: jsi.extract_function_from_code(func_code)([s])
File "/usr/lib/python3/dist-packages/yt_dlp/jsinterp.py", line 513, in extract_function_from_code
body, remaining = self._separate_at_paren(code[body_start - 1:], '}')
File "/usr/lib/python3/dist-packages/yt_dlp/jsinterp.py", line 117, in _separate_at_paren
raise ExtractorError(f'No terminating paren {delim} in {expr}')
yt_dlp.utils.ExtractorError: No terminating paren } in {var e=null;switch(b){case "JSON":try{var f=c.responseText}catch(h){throw d=Error("Error reading responseText"),d.params=a,Jy(d),h;}a=c.getResponseHeader("Content-Type")||"";f&&0<=a.indexOf("json")&&(")]}'\n"===f.substring(0,5)&&(f=f.substring(5)),e=JSON.parse(f));break;case "XML":if(a=(a=c.responseXML)?wma(a):null)e={},g.Tb(a.getElementsByTagName(""),function(h){e[h.tagName]=xma(h)})}d&&yma(e);
return e};
yma=function(a){if(g.Ra(a))for(var b in a)"html_content"==b||Haa(b,"_html")?a[b]=g.ke(a[b]):yma(a[b])};
wma=function(a){return a?(a=("responseXML"in a?a.responseXML:a).getElementsByTagName("root"))&&0<a.length?a[0]:null:null};
xma=function(a){var b="";g.Tb(a.childNodes,function(c){b+=c.nodeValue});
return b};
cz=function(a,b){b.method="POST";b.postParams||(b.postParams={});return g.bz(a,b)};
az=function(a,b,c,d,e,f,h){function l(){4==(m&&"readyState"in m?m.readyState:0)&&b&&g.Iy(b)(m)}
c=void 0===c?"GET":c;d=void 0===d?"":d;var m=nma();if(!m)return null;"onloadend"in m?m.addEventListener("loadend",l,!1):m.onreadystatechange=l;g.Cy("debug_forward_web_query_parameters")&&(a=rma(a,window.location.search));m.open(c,a,!0);f&&(m.responseType=f);h&&(m.withCredentials=!0);c="POST"==c&&(void 0===window.FormData||!(d instanceof FormData));if(e=pma(a,e))for(var n in e)m.setRequestHeader(n,e[n]),"content-type"==n.toLowerCase()&&(c=!1);c&&m.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
m.send(d);return m};
ez=function(a,b){var c=g.ed(b),d;return(new g.zf(function(e,f){c.onSuccess=function(h){g.Wy(h)?e(new zma(h)):f(new dz("Request failed, status="+Vy(h),"net.badstatus",h))};
c.onError=function(h){f(new dz("Unknown request error","net.unknown",h))};
c.onTimeout=function(h){f(new dz("Request timed out","net.timeout",h))};
d=g.bz(a,c); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
(caused by ExtractorError('No terminating paren } in {var e=null;switch(b){case "JSON":try{var f=c.responseText}catch(h){throw d=Error("Error reading responseText"),d.params=a,Jy(d),h;}a=c.getResponseHeader("Content-Type")||"";f&&0<=a.indexOf("json")&&(")]}'\n"===f.substring(0,5)&&(f=f.substring(5)),e=JSON.parse(f));break;case "XML":if(a=(a=c.responseXML)?wma(a):null)e={},g.Tb(a.getElementsByTagName(""),function(h){e[h.tagName]=xma(h)})}d&&yma(e);\nreturn e};\nyma=function(a){if(g.Ra(a))for(var b in a)"html_content"==b||Haa(b,"_html")?a[b]=g.ke(a[b]):yma(a[b])};\nwma=function(a){return a?(a=("responseXML"in a?a.responseXML:a).getElementsByTagName("root"))&&0<a.length?a[0]:null:null};\nxma=function(a){var b="";g.Tb(a.childNodes,function(c){b+=c.nodeValue});\nreturn b};\ncz=function(a,b){b.method="POST";b.postParams||(b.postParams={});return g.bz(a,b)};\naz=function(a,b,c,d,e,f,h){function l(){4==(m&&"readyState"in m?m.readyState:0)&&b&&g.Iy(b)(m)}\nc=void 0===c?"GET":c;d=void 0===d?"":d;var m=nma();if(!m)return null;"onloadend"in m?m.addEventListener("loadend",l,!1):m.onreadystatechange=l;g.Cy("debug_forward_web_query_parameters")&&(a=rma(a,window.location.search));m.open(c,a,!0);f&&(m.responseType=f);h&&(m.withCredentials=!0);c="POST"==c&&(void 0===window.FormData||!(d instanceof FormData));if(e=pma(a,e))for(var n in e)m.setRequestHeader(n,e[n]),"content-type"==n.toLowerCase()&&(c=!1);c&&m.setRequestHeader("Content-Type","application/x-www-form-urlencoded");\nm.send(d);return m};\nez=function(a,b){var c=g.ed(b),d;return(new g.zf(function(e,f){c.onSuccess=function(h){g.Wy(h)?e(new zma(h)):f(new dz("Request failed, status="+Vy(h),"net.badstatus",h))};\nc.onError=function(h){f(new dz("Unknown request error","net.unknown",h))};\nc.onTimeout=function(h){f(new dz("Request timed out","net.timeout",h))};\nd=g.bz(a,c); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U')); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
WARNING: [youtube] nsig extraction failed: You may experience throttling for some formats
n = YgDT9SWz2iaf5vA ; player = https://www.youtube.com/s/player/f55759b8/player_ias.vflset/en_US/base.js
a4UQJwd3awQ: Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/yt_dlp/extractor/youtube.py", line 2519, in _decrypt_nsig
self._player_cache[sig_id] = func(s)
File "/usr/lib/python3/dist-packages/yt_dlp/extractor/youtube.py", line 2551, in
return lambda s: jsi.extract_function_from_code(func_code)([s])
File "/usr/lib/python3/dist-packages/yt_dlp/jsinterp.py", line 513, in extract_function_from_code
body, remaining = self._separate_at_paren(code[body_start - 1:], '}')
File "/usr/lib/python3/dist-packages/yt_dlp/jsinterp.py", line 117, in _separate_at_paren
raise ExtractorError(f'No terminating paren {delim} in {expr}')
yt_dlp.utils.ExtractorError: No terminating paren } in {var e=null;switch(b){case "JSON":try{var f=c.responseText}catch(h){throw d=Error("Error reading responseText"),d.params=a,Jy(d),h;}a=c.getResponseHeader("Content-Type")||"";f&&0<=a.indexOf("json")&&(")]}'\n"===f.substring(0,5)&&(f=f.substring(5)),e=JSON.parse(f));break;case "XML":if(a=(a=c.responseXML)?wma(a):null)e={},g.Tb(a.getElementsByTagName(""),function(h){e[h.tagName]=xma(h)})}d&&yma(e);
return e};
yma=function(a){if(g.Ra(a))for(var b in a)"html_content"==b||Haa(b,"_html")?a[b]=g.ke(a[b]):yma(a[b])};
wma=function(a){return a?(a=("responseXML"in a?a.responseXML:a).getElementsByTagName("root"))&&0<a.length?a[0]:null:null};
xma=function(a){var b="";g.Tb(a.childNodes,function(c){b+=c.nodeValue});
return b};
cz=function(a,b){b.method="POST";b.postParams||(b.postParams={});return g.bz(a,b)};
az=function(a,b,c,d,e,f,h){function l(){4==(m&&"readyState"in m?m.readyState:0)&&b&&g.Iy(b)(m)}
c=void 0===c?"GET":c;d=void 0===d?"":d;var m=nma();if(!m)return null;"onloadend"in m?m.addEventListener("loadend",l,!1):m.onreadystatechange=l;g.Cy("debug_forward_web_query_parameters")&&(a=rma(a,window.location.search));m.open(c,a,!0);f&&(m.responseType=f);h&&(m.withCredentials=!0);c="POST"==c&&(void 0===window.FormData||!(d instanceof FormData));if(e=pma(a,e))for(var n in e)m.setRequestHeader(n,e[n]),"content-type"==n.toLowerCase()&&(c=!1);c&&m.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
m.send(d);return m};
ez=function(a,b){var c=g.ed(b),d;return(new g.zf(function(e,f){c.onSuccess=function(h){g.Wy(h)?e(new zma(h)):f(new dz("Request failed, status="+Vy(h),"net.badstatus",h))};
c.onError=function(h){f(new dz("Unknown request error","net.unknown",h))};
c.onTimeout=function(h){f(new dz("Request timed out","net.timeout",h))};
d=g.bz(a,c); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
(caused by ExtractorError('No terminating paren } in {var e=null;switch(b){case "JSON":try{var f=c.responseText}catch(h){throw d=Error("Error reading responseText"),d.params=a,Jy(d),h;}a=c.getResponseHeader("Content-Type")||"";f&&0<=a.indexOf("json")&&(")]}'\n"===f.substring(0,5)&&(f=f.substring(5)),e=JSON.parse(f));break;case "XML":if(a=(a=c.responseXML)?wma(a):null)e={},g.Tb(a.getElementsByTagName(""),function(h){e[h.tagName]=xma(h)})}d&&yma(e);\nreturn e};\nyma=function(a){if(g.Ra(a))for(var b in a)"html_content"==b||Haa(b,"_html")?a[b]=g.ke(a[b]):yma(a[b])};\nwma=function(a){return a?(a=("responseXML"in a?a.responseXML:a).getElementsByTagName("root"))&&0<a.length?a[0]:null:null};\nxma=function(a){var b="";g.Tb(a.childNodes,function(c){b+=c.nodeValue});\nreturn b};\ncz=function(a,b){b.method="POST";b.postParams||(b.postParams={});return g.bz(a,b)};\naz=function(a,b,c,d,e,f,h){function l(){4==(m&&"readyState"in m?m.readyState:0)&&b&&g.Iy(b)(m)}\nc=void 0===c?"GET":c;d=void 0===d?"":d;var m=nma();if(!m)return null;"onloadend"in m?m.addEventListener("loadend",l,!1):m.onreadystatechange=l;g.Cy("debug_forward_web_query_parameters")&&(a=rma(a,window.location.search));m.open(c,a,!0);f&&(m.responseType=f);h&&(m.withCredentials=!0);c="POST"==c&&(void 0===window.FormData||!(d instanceof FormData));if(e=pma(a,e))for(var n in e)m.setRequestHeader(n,e[n]),"content-type"==n.toLowerCase()&&(c=!1);c&&m.setRequestHeader("Content-Type","application/x-www-form-urlencoded");\nm.send(d);return m};\nez=function(a,b){var c=g.ed(b),d;return(new g.zf(function(e,f){c.onSuccess=function(h){g.Wy(h)?e(new zma(h)):f(new dz("Request failed, status="+Vy(h),"net.badstatus",h))};\nc.onError=function(h){f(new dz("Unknown request error","net.unknown",h))};\nc.onTimeout=function(h){f(new dz("Request timed out","net.timeout",h))};\nd=g.bz(a,c); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U')); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
ERROR: [youtube] a4UQJwd3awQ: Unable to extract uploader id; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
nicky@TimeVampire5:~$ yt-dlp -U
Usage: yt-dlp [OPTIONS] URL [URL...]
yt-dlp: error: yt-dlp's self-update mechanism is disabled on Debian.
Please update yt-dlp using apt(8).
See https://packages.debian.org/sid/yt-dlp for the latest packaged version.
I am not at all clear what might be done now, as apt(8) evokes a syntax error from bash...

#30839: "If you were actually running yt-dlp ..."
But, generally, some sort of web search engine will help you.
You seem to have installed a slightly out-of-date yt-dlp. The error you see is fixed in recent versions. When the instructions mention apt(8), apt is the command name and 8 is the Unix manual section (system management), so the command man -s 8 apt shows you its documentation. But your Mint presumably has some package management GUI that wraps apt and may be more friendly for you.

More confusion, but then success! Thanks.
I had been employing the Software Manager precisely to not strain my limited experience with GNU/Linux Mint and weird commands and strange parameters...
Via the link in bold blue above, I get to https://packages.debian.org/sid/all/yt-dlp/download where I see that "aptitude" or "synaptic" are advised rather than some sort of manual exercise. So:
sudo aptitude install yt-dlp
yt-dlp is already installed at the requested version (2022.04.08-1)
No packages will be installed, upgraded, or removed. etc.
Righto. This clearly is not the later version guff given on that web page, so I go for the offered link ftp.nz.debian.org/debian and after encouraging Firefox to proceed not via https, poke the result and a presentation similar to that of the Software Manager is shown for yt-dlp and subtitle 2023.03.04-1 which matches the version guff on the webpage, which is good, and then appears "Same version is already installed". Humphf. In all the floundering, I wonder what litter is scattered about.
But it is worth another try: yt-dlp https://www.youtube.com/watch?v=a4UQJwd3awQ
And it works! Yay!!
Thanks again.

In case you don't get on with yt-dlp, you can download an unofficial nightly yt-dl as in the issue linked above.
With these programs, the target websites change too frequently for package managers to keep up with the resulting program changes. As the programs have few dependencies, it's easier to keep pulling new versions from GH. Once you've installed the package manager version, you may be able to update it directly with the pip of your system's Python: again, described in the above linked issue.

Also, it's good practice to put your URLs in 'quotes'.


State data

I think this takes care of #183 and we can now do #186 ...

Yeah, just probably some issues... we will have to set different scaling up for the height of the rectangles in #186. I think we can make a new function like:
var scaleBars = d3.scaleLinear()
         .domain(minWU, maxWU)
         .range(0, 250);

Then the height of each bar uses that scale.

looks good. all set for merge?

I think so


flutter web html renderer textfield korea  lots of space at the text bottom multiline

Occurs only in html renderer
flutter 3.4.0-33.0.pre.44 version
good!!!!!!!!!!!
https://user-images.githubusercontent.com/16702158/219993113-2b239bd5-b21f-4932-a7bc-43da8b1e9ddb.mov
doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel master, 3.4.0-33.0.pre.44, on macOS 12.6.3 21G419 darwin-x64, locale ko-KR)
[!] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.1)
[!] Android Studio
    ✗ Unable to find bundled Java version.
[✓] IntelliJ IDEA Ultimate Edition (version 2021.3.2)
[✓] VS Code (version 1.75.0)
[✓] Connected device (1 available)
[✓] HTTP Host Availability

! Doctor found issues in 2 categories.

flutter 3.7.3 version
not good!!!!!!!!!!
https://user-images.githubusercontent.com/16702158/219993169-76524935-c9f6-4fa9-a73c-a0d42d9a941a.mov
doctor
Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel stable, 3.7.3, on macOS 12.6.3 21G419 darwin-x64, locale ko-KR)
    ! Warning: `dart` on your path resolves to /usr/local/Cellar/dart/2.17.0/libexec/bin/dart, which is not inside your current Flutter SDK checkout at /Users/toby/fvm/versions/stable. Consider adding /Users/toby/fvm/versions/stable/bin to the front of your path.
[!] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.
[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
[✓] Chrome - develop for the web
[✓] Android Studio (version 4.1)
[!] Android Studio
    ✗ Unable to find bundled Java version.
[✓] IntelliJ IDEA Ultimate Edition (version 2021.3.2)
[✓] VS Code (version 1.75.0)
[✓] Connected device (1 available)
[✓] HTTP Host Availability

! Doctor found issues in 3 categories.

same code
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',

      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {

  @override
  void initState() {
    super.initState();

  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          Row(
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
              Expanded(
                child: Container(
                  padding: EdgeInsets.all(20),
                  color: Colors.orange,
                  child: TextField(
                    maxLengthEnforcement: MaxLengthEnforcement.enforced,
                    textInputAction: TextInputAction.none,
                    keyboardType: TextInputType.multiline,
                    minLines: 1,
                    maxLines: 4,
                    autocorrect: false,
                    autofocus: false,
                    style: TextStyle(color: Colors.black, fontSize: 14, fontWeight: FontWeight.w400),
                    maxLength: 100,
                    scrollPadding: EdgeInsets.zero,
                  ),
                ),
              ),

              TextFieldTapRegion(
                child: GestureDetector(
                  behavior: HitTestBehavior.opaque,
                  onTap: () {},
                  child: Container(
                    color: Colors.green,
                    width: 30,
                    height: 30,
                    child: Icon(Icons.add),
                  ),
                ),
              )
            ],
          )
        ],
      ),
    );
  }
}

Hello @kokihoon. Since this is working as expected in the master channel, it is already fixed. This fix will be included in a future release of Flutter. Nothing to do but wait for it to be released. Since this issue is already fixed, I am closing this issue. Thank you


Suggestion: fix the UserRetrieve and UserUpdate or add a second ConvertAs method

I have to run this in order to update the user account because the user methods and node methods are not the same.
drupal.UserUpdate(uid, drupal.ConvertAs2(_user));
So I created a second ConvertAs method for my usecase as a temporary fix.
Maybe you have a reason for using object with the nodes but IDictionary with the users so I didn't want to make a commit before discussing this with you.
    public XmlRpcStruct ConvertAs2(IDictionary value) {
        IDictionary old;
        XmlRpcStruct @new;

        old = value as IDictionary;
        if (old == null) {
            return null;
        }
        @new = new XmlRpcStruct();
        foreach (string key in old.Keys) {
            @new.Add(key, old[key] == null ? "" : ConvertAs(old[key]));
        }
        return @new;
    }

After solving the other issues in the past few days, it's clear to me that the method above would be highly useful. I would how ever call it something else before committing it.
Cheers


Bug: In merged CacheFiles, multiple TraceData can become overwritten.

Describe the bug
We stumbled on a Bug when overwriting the data of a trace in a CacheFile merged from multiple files. This bug meant that every origin file started counting from zero again.
This means that if the data of the nth trace of an origin was overwritten, also all other nth traces of all other following origins were overwritten.
Expected behavior
Only the exact and correct Trace from this origin should be overwritten.
See https://github.com/translationalneurosurgery/tool-offspect/commit/193ca31ce8965be65d7f3f2416c25f22c838edab

This bug should not occur anymore after https://github.com/translationalneurosurgery/tool-offspect/commit/193ca31ce8965be65d7f3f2416c25f22c838edab Even before, it should have only affect traces which were baselined, or sign-flipped, because the detrend and line noise were introduced a day before the bug was solved. I expanded the CLI for offspect peek and it can now give warnings if one or more traces are similar (see https://offline-inspect.readthedocs.io/en/latest/cli.html#offspect-peek). Just give it a threshold for the correlation coefficient:
offspect peek test.hdf5 -s 0.75
-------------------------------------------------------------------------------
origin               : mapping_ipsi2_R001.xdf
channel_labels       : ['EDC_L']
channel_of_interest  : EDC_L
filedate             : Wed Apr 29 17:23:58 2020
global_comment       :
readin               : tms
readout              : cmep
samples_post_event   : 150
samples_pre_event    : 100
samplingrate         : 1000.0
subject              :
version              : 0.1.2
traces_count         : 30
-------------------------------------------------------------------------------
origin               : mapping_ipsi_R001.xdf
channel_labels       : ['EDC_L']
channel_of_interest  : EDC_L
filedate             : Wed Apr 29 17:24:01 2020
global_comment       :
readin               : tms
readout              : cmep
samples_post_event   : 150
samples_pre_event    : 100
samplingrate         : 1000.0
subject              :
version              : 0.1.2
traces_count         : 148
-------------------------------------------------------------------------------
In total, there are 178 traces from 2 origins
WARNING: traces [9, 39] share ID 8 and are similar with r = 1.00
WARNING: traces [15, 45] share ID 14 and are similar with r = 0.76

This allows to subsequently inspect offending traces with the GUI.

It seems a sensible default for the threshold is 0.9

Following https://github.com/translationalneurosurgery/tool-offspect/commit/193ca31ce8965be65d7f3f2416c25f22c838edab, this bug should not occur anymore.
Together with @don-i , we are currently revisiting possibly overwritten traces. If traces are identical, and the raw CacheFile is still available, one can overwrite only those affected traces and reinspect, e.g.
overwrite.yml
affected_cachefile.hdf5:
    - 1
    - 101
    - 103
    - 105

fix.py
import yaml
from pathlib import Path
from offspect.api import CacheFile
from offspect.cache.file import write_tracedata

yfname = Path(__file__).parent / "overwrite.yml"
atriskfolder = Path(__file__).parent / "atrisk"
rawfolder = Path(__file__).parent / "raw"

with open(yfname) as f:
    parms = yaml.load(f, Loader=yaml.Loader)

for key, tracelist in parms.items():
    print(key)
    rawcf = CacheFile(rawfolder / key)
    riskcf = CacheFile(atriskfolder / key)
    for traceidx in tracelist:
        print("Fixing", traceidx - 1)
        # subtract 0 because in the cachefile api, indexing starts at zero
        # while in the GUI indexing starts at 1
        rawdata = rawcf.get_trace_data(traceidx - 1)
        write_tracedata(riskcf, rawdata, traceidx - 1)


chore: Do not import big jsons

VSCode has been struggling lately with the typescript side of things. This is an attempt to fix that by not forcing the poor parser to go through massive json files, and instead just load on runtime the good old fashioned way.

So this breaks everything browser

Benchmark results
Metrics with a significant change:

protocol_circuit_witness_generation_time_in_ms (public-kernel-tail): 25,075 (+21%)
protocol_circuit_proving_time_in_ms (private-kernel-tail): 45,213 (+18%)
protocol_circuit_proving_time_in_ms (base-rollup): 86,897 (+25%)
protocol_circuit_proving_time_in_ms (root-parity): 43,259 (+28%)
protocol_circuit_proving_time_in_ms (public-kernel-setup): 46,306 (+24%)
protocol_circuit_proving_time_in_ms (public-kernel-app-logic): 46,002 (+20%)
protocol_circuit_proving_time_in_ms (public-kernel-tail): 187,329 (+20%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Proof generation
Each column represents the number of threads used in proof generation.

Metric
1 threads
4 threads
16 threads
32 threads
64 threads

proof_construction_time_sha256_ms
5,766
1,568
700
769 (+2%)
772

proof_construction_time_sha256_30_ms
11,497 (-2%)
3,086
1,377
1,427
1,460 (-1%)

proof_construction_time_sha256_100_ms
44,177
11,795
5,426 (-1%)
5,412
5,355

proof_construction_time_poseidon_hash_ms
78.0
34.0
34.0
58.0 (-3%)
88.0

proof_construction_time_poseidon_hash_30_ms
1,531
424
202
225 (-3%)
266 (-1%)

proof_construction_time_poseidon_hash_100_ms
5,786
1,595
726 (-1%)
787 (-1%)
793 (-1%)

L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
4 txs
8 txs
16 txs

l1_rollup_calldata_size_in_bytes
1,412
1,412
1,412

l1_rollup_calldata_gas
9,476
9,448
9,464

l1_rollup_execution_gas
610,297
610,269
610,285

l2_block_processing_time_in_ms
696
1,292 (-1%)
2,456

l2_block_building_time_in_ms
22,312 (-1%)
45,839 (-1%)
87,308 (-1%)

l2_block_rollup_simulation_time_in_ms
22,205 (-1%)
45,492 (-1%)
86,910 (-1%)

l2_block_public_tx_process_time_in_ms
19,101 (-1%)
42,066 (-1%)
83,660 (-1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 8 txs.

Metric
3 blocks
5 blocks

node_history_sync_time_in_ms
5,960
8,505

node_database_size_in_bytes
9,457,744
12,804,176 (+1%)

pxe_database_size_in_bytes
9,242
15,127

Circuits stats
Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
256 leaves
512 leaves
1024 leaves
32 leaves

batch_insert_into_append_only_tree_16_depth_ms
10.5 (-2%)
16.9 (-1%)
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.7
31.8
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.609 (-2%)
0.518 (-1%)
N/A
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
48.8 (-1%)
75.9 (-1%)
133 (-1%)
246 (-3%)
474
N/A

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
288
543
1,055
N/A

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.498 (-1%)
0.468 (-1%)
0.455 (-1%)
0.447 (-3%)
0.442
N/A

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
59.9
113 (-1%)
184 (-1%)
356
700
N/A

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
109
208
355
691
1,363
N/A

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.507
0.504 (-1%)
0.488
0.481
0.481
N/A

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
60.6

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
N/A
N/A
N/A
N/A
N/A
103

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
N/A
N/A
N/A
N/A
N/A
0.552

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
79,300
673,633

Transaction size based on fee payment method
| Metric |  |
| - |  |

Closing in favor of https://github.com/AztecProtocol/aztec-packages/pull/7181


As a Participant I want to only be able to pick answers my group wasn’t excluded from. Excluded answers should be deactivated.

connected to #232

Part of #232


Support passing empty lists to Pauli delete method

Fixes #10839
Summary
This PR addresses this issue where the Pauli operator's delete method does not gracefully handle an empty list parameter.
Details and comments
For the Pauli, PauliList, and PauliTable classes, performing a delete with an empty list argument will return a copy of the calling object.
Side note: I get unrelated errors with tox and tests sometimes, so I'm submitting this as a draft for now.

The test failure here in CI isn't unrelated: at the moment there's a place in the code where we accidentally call max([]), which is undefined because if there's a sequence of zero elements, there's nothing that can be the maximum.  I didn't look deeply, but there's likely a place where we should have short-circuited out of the method before trying to call max.

Thank you! It was a simply fix by reordering the checks for edge cases.
I looked at the logs for Run Docs build and am confused where the issue arises from. Not sure how to proceed.

The docs failing wasn't your fault - just a dodgy connection from the VM to crates.io.  I've re-run it, because it should just be ephemeral.


Investigate windows omnibus build and test performance

It takes almost an hour to build an omnibus package and about 90 minutes to test which makes iterating omnibus adhoc testing really really really really really really really really really really really really really really really really slow.

Closing this out as releng is about to enable git caching which should resolve our build performance issues.


Windows Installer not working

installer doesn't seems to do anything when clicking install reasonus
windows X64

@GJjoe, that's true. There is an issue with copying the files. It is still a work in progress. I'm currently working on more fixes and some improvements. But thanx for mentioning it. For updates on releases etc you can also check: https://forum.cockos.com/showthread.php?t=240162.

@GJjoe This should be fixed with the latest version, which can be found here: https://github.com/navelpluisje/reasonus-install/releases/tag/v0.1.0


Bump reva to latest edge

Closes #10272

Please restart with full-ci

Has been merged as part of https://github.com/owncloud/ocis/pull/10449 meanwhile. Closing ...


a unexpected error about scanning binary file, (bug report)

Hello, I have read your work "PyCG: Practical Call Graph Generation in Python", and think it is very nice and insightful. But when I try to generate a py file's graph, which contain 'import numpy', your provided script will scan some unexpected binary files following:
/home/xnli/.conda/lib/python3.7/site-packages/numpy/core/_multiarray_umath.cpython-37m-x86_64-linux-gnu.so,
I think maybe  scanning binary files is not your expected behaviour of your provided script?

Hi @LeeSureman, does this lead to an error? Typically, PyCG tries to identify the location of an imported module to deduce whether it is an internal-package module or not, to analyze it further.

Thank you for response! yes, it leads to an error, I find your script will read the "/home/xnli/.conda/lib/python3.7/site-packages/numpy/core/_multiarray_umath.cpython-37m-x86_64-linux-gnu.so" in numpy file by utf-8, but it is binary, so it leads to an error... how can I avoid it?

Closing due to archival of repository.


Add flaggen.exe running through proton/steam

Add picture of flaggen.exe running through proton, OS is Manjaro Gnome.
*Background is a screenshot of Castlevania III on the NES, if that is an issue I can reupload without wallpaper.

Merged. I'm surprised Steam included 16-bit app support, although I guess its a 32-bit prefix. Thanks!


STAT Format 2 ranges exclusive vs inclusive

While checking various implementations I found that the Microsoft STAT implementation for STAT Axis value table Format 2 assumes inclusive ranges. So, for example, an Axis value table with nominal/min/max of 400/350/450 includes the max value 450 in the range. Samsa and Adobe apps assume exclusive so the range effectively ends at 449. I believe this needs clarification in the spec first and implementations should be updated to follow.

Indeed, this needs clarification in the spec. I suggest you raise the issue at https://github.com/MicrosoftDocs/typography-issues if you haven't already.

Samsa is in fact already considering >= and <= as you can see in samsa-gui.html line 2039:
(avt.format == 2 && fvs[tag] >= avt.min && fvs[tag] <= avt.max))

I believe the problem is an ambiguity in the spec:

Two format 2 tables for a given axis should not have ranges with overlap greater than zero.

Given that, as you say, STAT ranges are inclusive of their extrema and STAT values are fixed point (16.16), the ranges in the Adobe Source fonts (Medium [450,550], SemiBold [550,650], etc.) can be said to overlap by 1/65536. In practice I assume Adobe is relying on this section of the spec for handling such cases:

If the range of T1 overlaps the higher end of the range of T2 with a greater max value than T2 (T1.rangeMaxValue > T2.rangeMaxValue and T1.rangeMinValue <= T2.rangeMaxValue), then T1 is used for all values within its range, including the portion that overlaps the range of T2.
If the range of T2 is contained entirely within the range of T1 (T2.rangeMinValue >= T1.rangeMinValue and T2.rangeMaxValue <= T1.rangeMaValue), then T2 is ignored.

Samsa does not currently implement these rules. The first of these applies in the Adobe fonts such that T1 (the higher range) should take precedence. That is, a value of 550 should invoke SemiBold rather than Medium. And that is what Samsa’s STAT determination actually achieves in the Source fonts, because it uses the last AxisValueTable that matches, and the AxisValueTables in the Source fonts are in ascending order.
This is not the only thing going on, though. The value 550 is round-tripped through the normalization process, becoming<PHONE_NUMBER>669204 (0x11b8 normalized), which is unambiguously within the Medium range, so Samsa ultimately determines Medium for Weight 550.
While writing Samsa as well as Axis-Praxis I’ve been thinking about all the various roundings that take place, and the rounding described above is possibly incorrect. Yet I don’t think the spec is sufficiently clear about how to think about axis locations, rounding and mappings. I sometimes wonder if a font context should ideally keep track of user input value (string), user input value (float), user input value (16.16), normalized value (float), normalized value (2.14)… And is it valid to generate user values from normalized values? One might think so, but what about when avar maps adjacent input values onto a single output value, leading to divide-by-zero for the reverse case?


Modifier for $regex

Would be nice to have a way to set case insensitive modifier with $regex
A mango DSL limitation I guess ?

It should be standard regex. So pouchdb-find is JavaScript regex and mango is erlang regex. So that should work. If it doesn't a failing test would really help us fix it.
All misspelling thanks to my iPhone

On 14 Feb 2016, at 10:53 AM, Mathieu Filotto<EMAIL_ADDRESS>wrote:
Would be nice to have a way to set case insensitive modifier with $regex
A mango DSL limitation I guess ?
—
Reply to this email directly or view it on GitHub.

Here is the code to do the exact test they have in Mango
    it('should do a regex search with case sensitive modifier ', function () {
      var db = context.db;
      var index = {
        "index": {
          "fields": ["name"]
        }
      };
      return db.createIndex(index).then(function () {
        return db.find({
          selector: {
            name: {$gte: null},
            series: {$regex: "(?i)Mario.*"}
          },
          sort: ['name']
        }).then(function (resp) {
          var docs = resp.docs.map(function (doc) {
            delete doc._rev;
            return doc;
          });

          docs.should.deep.equal([
            { name: 'Donkey Kong', rank: 7, _id: 'dk', series: 'Mario',
              debut: 1981, awesome: false },
            { name: 'Luigi', rank: 11, _id: 'luigi', series: 'Mario', debut: 1983, awesome: false },
            { name: 'Mario', _id: 'mario', rank: 5, series: 'Mario', debut: 1981, awesome: true },
            { name: 'Yoshi', _id: 'yoshi', rank: 6, series: 'Mario', debut: 1990, awesome: true },
          ]);
        });
      });
    });

That regex is how erlang does it. For that to work in pouchdb you need to follow these rules
https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions#Advanced_searching_with_flags

You're right the right pattern would be more like /mario.*/i
The problem is that RegExp constructor splits modifiers/flags from the rest of the pattern :
new RegExp(pattern[, flags])
So maybe pouchdb-find could extract that part from userValue and call the constructor with modifiers here :
https://github.com/nolanlawson/pouchdb-find/blob/0458b74d445457c55bc01096a19c3e35e6115045/lib/adapters/local/find/in-memory-filter.js#L188

Nice catch. This is a nice first fix if you want to do the work? I'm happy to help you where you need.

@garrensmith OK I'm on it

@garrensmith need help, I have a bad time running tests.
They reach my couchdb but fail with error 'Something wrong with the request'
Any idea ?

You need to use CouchDB 2.0 or if you using docker from klaemo/couchdb:2.0-dev. You most have only 1 node running ideally on port 15984 You also need to enable cors by running this https://github.com/nolanlawson/pouchdb-find/blob/master/bin/enable-couchdb-cors.sh

@garrensmith ok I'll try this config

@mfilotto any news about this?

@natcohen I'm stuck with the docker env.
I can't have klaemo/couchdb:2.0-devworking to replay all the tests

@mfilotto unfortunately not into docker stuff...can't you install the normal version? Or even test it on cloudant? Maybe @garrensmith can help with docker

Here is my reflexion for that feature.
It would be nice to add modifiers but I face several interrogations.
My first approach is to parse the given string and extract the modifier if the pattern of the string is something like '/pattern/modifier'
This could be easilly done. But it is semanctically wrong in regard to the RegExp Javascript object that can be created eather through a constructor('pattern', 'modifier') or with a litteral notation /pattern/modifier
But if we accept litteral notation how the users will dynamically create that notation ?
Do you think that we can accept the notation '/pattern/modifier' anyway ?

I think that it would be a good start to accept the literal notation

For a local PouchDB query you can simply pass in a Javascript object /mario/i. I'll ask Cloudant support how they handle flags since it isn't in the documentation.

I don't think we can. Underneath Regex for Cloudant Query/CouchDB mango is
just erlang regex. So it will always be a little different compared to
javascript regex.
https://github.com/apache/couchdb-mango/blob/master/src/mango_selector.erl#L496
On Wed, May 11, 2016 at 10:32 AM, Colin Skow<EMAIL_ADDRESS>wrote:

For a local PouchDB query you can simply pass in a Javascript object
/mario/i. I'll ask Cloudant support how they handle flags since it isn't
in the documentation.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/nolanlawson/pouchdb-find/issues/158#issuecomment-218395779

I verified that I can pass in a literal Javascript regex object to a local pouchdb-find, but of course that won't work with Cloudant or CouchDB.

@colinskow That sounds like a reasonable workaround; you can just use regular regexes for local and string regexes for remote. Closing unless someone thinks there's a fix we can reasonably do for this.

There are two REGEX flags that Erlang and Javascript have in common, i for case insensitive and m for multiline.
In Erlang this is accomplished by prefixing the regex string with (?im). This is invalid in Javascript and will throw an error. In Javascript there is no way to set flags directly from the regex string.
What I want to do for local is search for (?[flags]) at the beginning of the string, and convert to Javascript regex.
For remote search, if the user passes in a Javascript regex object with flags i or m set, it will convert this to an Erlang string.
How does that sound @nolanlawson ?

See: http://stackoverflow.com/questions/37157723/cloudant-query-couchdb-mango-how-to-set-regex-flags

What I want to do for local is search for (?[flags]) at the beginning of the string, and convert to Javascript regex.

Hmmm, I'd kinda prefer to have a more foolproof method. Can we accept a JavaScript regex and then convert it to a string and possible an Erlang regex string as necessary? When you call .toString() on a JavaScript regex, it seems we can determine whether it's case-insensitive or not:
> /foo/i.toString()
'/foo/i'

I think the goal is to have the behavior as similar as possible across both Cloudant/CouchDB 2.0 and local PouchDB.
In Cloudant:
"series": {
      "$regex": "(?i)mario"
    }

will do a case insensitive search for "mario". We should translate this to Javascript so it will work on a local pouchdb-find. And if the user passes a Javascript RegEx object to a remote find, we can check for the i and m flags and convert it to an Erlang expression.
We'll never be able to guarantee that Erlang and Javascript regexes will perform exactly the same, but we can support major use cases where the API is equivalent.

I test this and it works
var regexp = new RegExp(keyword, 'i');
{name: {'$regex': regexp}};

thank you @llin96! this may be handy on the readme until a proper solution is implemented?

This issue was moved to pouchdb/pouchdb#6274

Belated thanks for this!
FWIW plain old literals work as well:
localDB.find({
    selector: {name: {$regex: /.*Mario.*/i}}
});


Externalize all strings

Everything from errors to responses etc should be in an external file to allow people to translate the bot and add new replies to arrays.

good idea would be to use resx files, as they provide quickest way of managing multilanguage, also debug strings like errors should stay english as its easier to debug such stuff

Working hard on this, around 40% done, no idea.
The ones left:

[ ] Music
[ ] Searches
[ ] Permissions
[ ] Utiltiy
[ ] Games

Music and searches left.

Done. Need to get people to find missing keys where I messed up, then I'll set up a Poedit project and let people translate it.


image_picker_android  build error on 0.8.5

image_picker_android  build error on 0.8.5/0.8.5+1
0.8.4 can build success

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:lintVitalRelease'.
> Could not resolve all artifacts for configuration ':image_picker_android:debugUnitTestRuntimeClasspath'.
   > Failed to transform bcprov-jdk15on-1.68.jar (org.bouncycastle:bcprov-jdk15on:1.68) to match attributes {artifactType=processed-jar, org.gradle.category=library, org.gradle.libraryelements=jar, org.gradle.status=release, org.gradle.usage=java-runtime}.
      > Execution failed for JetifyTransform: /Users/huangxiaoyi/.gradle/caches/modules-2/files-2.1/org.bouncycastle/bcprov-jdk15on/1.68/46a080368d38b428d237a59458f9bc915222894d/bcprov-jdk15on-1.68.jar.
         > Failed to transform '/Users/huangxiaoyi/.gradle/caches/modules-2/files-2.1/org.bouncycastle/bcprov-jdk15on/1.68/46a080368d38b428d237a59458f9bc915222894d/bcprov-jdk15on-1.68.jar' using Jetifier. Reason: IllegalArgumentException, message: Unsupported class file major version 59. (Run with --stacktrace for more details.)
           Suggestions:
            - Check out existing issues at https://issuetracker.google.com/issues?q=componentid:460323&s=modified_time:desc, it's possible that this issue has already been filed there.
            - If this issue has not been filed, please report it at https://issuetracker.google.com/issues/new?component=460323 (run with --stacktrace and provide a stack trace if possible).

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 2s
Running Gradle task 'assembleRelease'...                            3.2s
Gradle task assembleRelease failed with exit code 1

Hi @hxywuya, can you try the solution in https://github.com/flutter/flutter/issues/105573#issuecomment-1149638311 to see if it works for you?

@danagbemava-nc tex! I tried and it work.

I am closing this as solved.
Thank you


can not install

Hi ,
when I try to install, it reports error as follows:
(base) zhangzhongheng@zhangzhhengsMBP ~ % pip install tfdlpack
ERROR: Could not find a version that satisfies the requirement tfdlpack
ERROR: No matching distribution found for tfdlpack

HOW may I solve the problem?
my computer is Mac OS

dlpack is part of tensorflow now. You can use it by tf.experimental.dlpck

This project is no longer active now


Mouse Events

I'm going to start using EaseIJS in several projects and I need to clear up something: How does it handle mouse events?
As you know, canvas is just a bitmap that does not recognize shapes.
Does EaseIJS mantain a data structure (like quadtree) in order to keep a mapping between canvas coordinates and data values?
I'm not able to find the source code that implements this feature.

EaselJS retains the DisplayList as DisplayObjects, which are drawn to the stage any time the stage is updated. The mouse events are handled by checking pixel opacity on an off-screen 1x1px canvas to determine when items are under the mouse. This provides pixel-perfect hit-detection. EaselJS supports DOM level 3 events, which supports bubbling, propagation, etc. You can subscribe to events on any displayobject on the stage.
Here is the method in the source that does the hit detection. The stage handles mouse and touch events, but you can also trigger it manually with any point: https://github.com/CreateJS/EaselJS/blob/master/src/easeljs/display/DisplayObject.js#L1050
Here is the documentation: http://www.createjs.com/docs/easeljs/classes/DisplayObject.html#method_hitTest
Rollover hit detection must be turned on using stage.enableMouseOver(), which adds a check interval, since hit detection can be expensive.
stage.enableMouseOver(10); // 10 checks per second

You can also make objects ignore the mouse (mouseEnabled) or determine how containers handle mouse interaction of their sub-content (mouseChildren).
Hope that answers your question.
Note that this forum is for reporting issues. I recommend posting discussion on reddit and questions on StackOverflow.
Cheers,


[feature]put several files in one cmd，一个接口写多个文件

just like redis api mget,mset , put several files in one api like 'mput'
reduce network cost
类似mset mget，减少网络耗时

Its very nice that you are using this tool and exploring it.. but it would be very useful, if you will post issue with more suitable information.. e.g what you tried, what were the errors... etc..

updated

add your use case here. Do you want to combine writes to master, volume server, or filer server?

need to understand what the use case is trying to optimize for.


Consider open sourcing this library?

At the moment, this repository does not declare any open-source license. This means it is, by default, fully copyrighted. This is a problem because in practice, it is used in many open source projects, directly (e.g. disgoorg/disgo) or indirectly.
Would you consider open sourcing this library under an appropriate license? The Apache and MIT license are popular and most widely compatible with other licenses, but of course the choice is yours.

PS, since I just came across this guide: Making a repository public is not enough to make it open source.

Added apache license

Thank you!


AMQP-633: Fix Non-Transactional Template Issue

JIRA: https://jira.spring.io/browse/AMQP-633
Previously, the RabbitTemplate running on a transactional container thread always
used the consumer channel, regardless of whether the template was transactional.
A non-transactional template should not use the container's transactional channel.
Also some polishing around passing the connection factory into doExecute().
cherry-pick to 1.6.x
Also tested with a SCSt app that publishes before throwing an exception.

Merged as https://github.com/spring-projects/spring-amqp/commit/b25a3d22e72065b28e8c773fe03c1bd8bed061b3 and cherry-picked.


Bugfix for piecewise linear 1d interpolation

@leifdenby Apologies for the numerous white-space mismatches. This is the isolated bugfix in the interpolation subroutine. It just changes nt_monc to nz_monc in one line.

I'm going to merge this since the change is so small. It would be good to discuss how to review each others changes though


Rename "Insane People" section

While I understand the frustration with this person, I personally feel like using "Insane People" is inappropriate. It makes you seem like the attacker instead of being attacked. Renaming the section to "Received Public Attacks" or something similar would put you in the defender spot. From a UX this would cause more sympathy.

okay will consider 👍


Default to free tier

When the gatsby-ipfs-web-wallet was developed, there was only the paid tier of FullStack.cash. This Gatsby Theme should now default to the free tier, but should have full support for switching between the two tiers. This Issue was created to capture the discussion and research in trying to achieve full support for both tiers.

This is copied from a chat in Telegram between Daniel and I. I want to capture it here so that I can start to answer some of the issues he brought up:

Hi Chris!  How its going? Got an update related to this task https://trello.com/c/TZ2vb5IN

I was testing the app to find the source of the error, and I think it comes directly from the minimal-slp-wallet library because when the slp wallet gets instanced, it calls directly to this function
https://github.com/Permissionless-Software-Foundation/minimal-slp-wallet-web/blob/master/index.js#L73

This function makes calls to bchjs api

While debugging I found that several instances of bchjs are giving problems I think, because they call to the api.fullstack and not to the free-api.fullstack

I believe that are the instances of bchjs from this two classes

https://github.com/Permissionless-Software-Foundation/minimal-slp-wallet-web/blob/master/index.js#L58-L59

That are no updating the api url

Putting it this way I managed that they call to the chosed api tier in the constructor, in this case, to the free-api.fullstack.cash

this.tokens.sendBch.bchjs = this.bchjs
this.tokens.utxos.bchjs = this.bchjs

I don't understand why it works this way, and why the way it was before don't update

Other thing I noticed is that this function

https://github.com/Permissionless-Software-Foundation/minimal-slp-wallet-web/blob/master/lib/utxos.js#L33

I think is not found on the free-api.fullstack.cash/v3/ it throws 404 error

I tested directly in the url and the free version throws a 404 error

https://free-api.fullstack.cash/v3/electrumx/balance/bitcoincash:qpnty9t0w93fez04h7yzevujpv8pun204qv6yfuahk

I added this unit test to minimal-slp-wallet to ensure that passing in the advancedOptions object with a restURL value set to the free tier would be reflected in the bch-js instances in the other libraries:
https://github.com/Permissionless-Software-Foundation/minimal-slp-wallet-web/blob/master/test/unit/a01-minimal-bch-wallet-unit.js#L247-L258
These changes are live in minimal-slp-wallet v1.4.3 as well as minimal-slp-wallet-web v1.4.3
We use the _this object to replace this in a lot of the libraries. It is possible this may be causing an issue. If the bch-js instances within the library continue to ignore the setting for the free-tier, we should look at the use of _this as the culprit.

bch-js integration tests can be run against the free tier with the command npm run test:integration:free. This is the Electrumx integration test file that it will run:
https://github.com/Permissionless-Software-Foundation/bch-js/blob/master/test/integration/electrumx.js
There is full support for Electrumx address balance and utxo endpoints for the free tier.

I suspect the root cause may be in the way that minimal-slp-wallet-web is getting instantiated within gastby-ipfs-web-wallet. I recommend investigating the way the library gets instantiated on load. Change those parameters to default to the free tier. Only load the paid tier when the Local Storage is set via the Configuration View.

Closing this issue as Daniel has done some great research and found a lot of the culprits. Moving forward, I will keep an eye on the interaction with LocalStorage, as I think that is the source of any issues between switching between the free and paid tiers and use of JWT tokens.


Add Docusaurus Docs for v2

As discussed in https://github.com/iaincollins/next-auth/issues/117 this adds the docusaurus v2 docs to the /docs subfolder.

@iaincollins the site is currently messed up because I updated the base URL, etc. for your future github pages setup so you can hopefully just activate github pages and be good to go.

@iaincollins I've merged this so I could edit my docs into it.


Hierarchical Clustering

Hierarchical Clustering on selections is useful for exploring local structure, https://github.com/mljs/hclust/blob/master/src/agnes.js has an implementation for javascript.
By altering the way a normal dendogram is drawn, this could be a neat technique

I also suggest the following two additions to the current clustering/grouping behaviour:
If a new group is created, automatically connect it with existing related groups. That means:

if the new group is part of another group (i.e., new group is a subset), or
if the another group is part of the new group (i.e., new group is a superset)


Django-admin, who is not non-tenant-admin, can request and change tenant data, but can't get to the "tenant settings" page

GET /user/ will now return:
{"last_login": "2015-07-20T05:41:41.768569Z",
  "username": "admin",
  "first_name": "",
  "last_name": "",
  "email": "root@localhost",
  "date_joined": "2015-07-20T05:41:41.768569Z",
  "tenant_admin": false,
  "is_superuser": true,
  "default_tenant_admin": false,
  "uuid": "6f73b75d-3eb9-4e80-a297-53cdf743eded"
}

The change is the addition of the, "is_superuser," key.  Its value will be either true or false.
If true, the user is a Django admin. A.k.a., a Goldstone admin. If false, the user is a standard user account.
The name comes from the Django attribute of the same name. It's different than our other attributes, but it'd be nice to keep it identical to Django's attribute, and avoid an alias.
Pylint:

master: 9.73 / 10 / 10 / 10
this pull: 9.75 / 10 / 10 / 10

The last_login key on the GET /user/ dict doesn't seem to reflect the date of the previous login. I logged out with /accounts/logout/ , followed by a login with /accounts/login/ .
The last_login key didn't change.
Also noticing the return value in the pasted screen shot above to be
{
    "last_login":  "2015-07-20T05:41:41.768569Z",....

Confirming client changes reflect new is_superuser key, and it returns true for a Goldstone Admin, and false for a tenant admin.

This is a djoser bug. As it turns out, the latest release includes a fix for it.
You'll have to upgrade djoser and reset your database.
So:
$ # In your "fab runserver" window...
$ git up
$ pip install -r requirements.txt

$ # In your workon window...
$ ^C
$ # Wait for the VMs to power off
$ bin/start_dev_env.sh

$ # Back in your "fab runserver" window...
$ fab runserver
$ (local_docker.py)

$ # In a third window...
$ workon goldstone-server
$ dropdb goldstone -U postgres -h <IP_ADDRESS>
goldstone
$ createdb goldstone -U postgres -h <IP_ADDRESS>
goldstone
$ fab goldstone_init
(blah blah woof woof)

You should now see the "last_login" attribute reflect the account's last login.

:+1:


Most scripts do not work

Most of the scripts in test/scripts/ do not produce the intended result: some of them have longstanding issues, others have stopped working after the recent updates to the codebase.
The number of scripts has grown in the past few months and I wonder if all of them are still useful. We should decide which scripts we want to keep. For each of them we should check if it works as expected and, if not, fix it.
Here is a table that we could keep updated as we do this clean-up.

Script
Keep?
Works?
Notes

analyse_load_demand_Norway.jl

test_combined_td_model.jl
yes
yes

test_dist_nw_model.jl
yes
yes

test_dist_opf.jl

yes

test_dist_tnep_strg.jl

yes

test_dist_tnep.jl

yes

test_environmental_model.jl

test_geo_plotting.jl

test_italian_case.jl

test_line_replacement.jl

test_mc.jl

test_multinetwork.jl

yes

test_multiple_years.jl
yes
yes

test_reliability_tnep.jl

test_reliability.jl

test_stochastic_tnep.jl

test_stochastic_variation_noflex_nostrg.jl

test_stochastic_variation_noflex.jl

test_stochastic_variation.jl

tests_flex_demand_CIGRE_MV.jl

tests_flex_demand.jl

tests_sensitivities_flex_demand_CIGRE_MV.jl

tests_strg.jl

All scripts fixed or deleted in v0.2.2.


After migrating from 3.5.3 to 3.6 I get AQL ArangoError: vector::reserve (while executing) (exception location: /work/ArangoDB/arangod/RestHandler/RestCursorHandler.cpp:298)

My Environment

ArangoDB Version:        3.6.0
Storage Engine:            RocksDB
Deployment Mode:       Single Server
Deployment Strategy:   Manual Start in Docker. I've used "--database.auto-upgrade", "true" as docker-compose command to upgrade the DB volume.
Configuration:               I use only "--query.memory-limit", "7GB"
Infrastructure:               localhost
Operating System:        MacOS 10.15.2
Total RAM in your machine:        16GB
Disks in use:       SSD
Used Package:              Docker - official

Component, Query & Data
Affected feature:
AQL query
AQL query (if applicable):
FOR organization in organizations
        FILTER organization.primary_role == "company"
        LET investments = (
            FOR investor, investment IN INBOUND organization GRAPH 'investments-graph'
                SORT investment.announced_on DESC
                COLLECT inv = { _key: investor._key, name: investor.name } AGGREGATE investments_count = COUNT(1)
                RETURN {
                        investor_key: inv._key,
                        investor_name: inv.name,
                        investments_count: investments_count
                }
        )
        FILTER COUNT(investments) >= 3
        FOR investment IN investments
            RETURN MERGE({ organization_key: organization._key, organization_name: organization.name }, investment)

AQL explain (if applicable):
Query String (770 chars, cacheable: true):
 FOR organization in organizations
         FILTER organization.primary_role == "company"
         LET investments = (
             FOR investor, investment IN INBOUND organization GRAPH 'investments-graph'
                 SORT investment.announced_on DESC
                 COLLECT inv = { _key: investor._key, name: investor.name } AGGREGATE
 investments_count = COUNT(1)
                 RETURN {
                         investor_key: inv._key,
                         investor_name: inv.name,
                         investments_count: investments_count
                 }
         )
         FILTER COUNT(investments) >= 3
         FOR investment IN investments
             RETURN MERGE({ organization_key: organization._key, organization_name: organization.name
 }, investment)

Execution plan:
 Id   NodeType                    Est.   Comment
  1   SingletonNode                  1   * ROOT
  2   EnumerateCollectionNode   900986     - FOR organization IN organizations   /* full collection scan */   FILTER (organization.`primary_role` == "company")   /* early pruning */
 21   SubqueryStartNode         900986       - LET investments = ( /* subquery begin */
 10   CalculationNode           900986         - LET #17 = 1   /* json expression */   /* const assignment */
  6   TraversalNode                  2         - FOR investor  /* vertex */, investment  /* edge */ IN 1..1  /* min..maxPathDepth */ INBOUND organization /* startnode */  investments
  7   CalculationNode                2           - LET #13 = investment.`announced_on`   /* attribute expression */
  8   SortNode                       2           - SORT #13 DESC   /* sorting strategy: standard */
  9   CalculationNode                2           - LET #15 = { "_key" : investor.`_key`, "name" : investor.`name` }   /* simple expression */
 11   CollectNode                    2           - COLLECT inv = #15 AGGREGATE investments_count = LENGTH(#17)   /* hash */
 20   SortNode                       2           - SORT inv ASC   /* sorting strategy: standard */
 12   CalculationNode                2           - LET #19 = { "investor_key" : inv.`_key`, "investor_name" : inv.`name`, "investments_count" : investments_count }   /* simple expression */
 22   SubqueryEndNode                2       - RETURN  #19 ) /* subquery end */
 15   CalculationNode                2       - LET #21 = (COUNT(investments) >= 3)   /* simple expression */
 16   FilterNode                     2       - FILTER #21
 17   EnumerateListNode            200       - FOR investment IN investments   /* list iteration */
 18   CalculationNode              200         - LET #23 = MERGE({ "organization_key" : organization.`_key`, "organization_name" : organization.`name` }, investment)   /* simple expression */   /* collections used: organization : organizations */
 19   ReturnNode                   200         - RETURN #23

Indexes used:
 By   Name   Type   Collection    Unique   Sparse   Selectivity   Fields      Ranges
  6   edge   edge   investments   false    false        48.68 %   [ `_to` ]   base INBOUND

Functions used:
 Name    Deterministic   Cacheable   Uses V8
 COUNT   true            true        false
 MERGE   true            true        false

Traversals on graphs:
 Id  Depth  Vertex collections  Edge collections  Options                                  Filter / Prune Conditions
 6   1..1                       investments       uniqueVertices: none, uniqueEdges: path

Optimization rules applied:
 Id   RuleName
  1   move-calculations-up
  2   move-calculations-up-2
  3   move-calculations-down
  4   move-filters-into-enumerate
  5   splice-subqueries

Debug dump
debugDump.zip
Problem:
This AQL query was working on 3.5.3 but not on 3.6 🤷♂
Expected result:
This AQL query to work on 3.6.
How can I assist further?

3.6.1 from https://hub.docker.com/_/arangodb fixes the problem. Thanks for the hard work!
P.S. I didn't try --query.optimizer-rules "-splice-subqueries".


WIP: Horizontal Scrollable via duplication

This is the implementation of a Horizontal version of the Scrollable widget.
Instead of being based on a Column, it is based on a Row.
The associated Renderer has to render the Scrollbar and Scroller at the bottom rather than on the right, and has to render it sideways rather than upright.
The stylesheet used are the same.
I renamed every height/width related field and function to be coherent with new orientations.
I added an example based on the original scrollable example.
This work is related to this other branch of mine, where instead of duplicating the Scrollbar widget, I merged the Row and Column widgets into one single Block widget (name subject to change if this work is one day used) :
https://github.com/GTimothy/iced/tree/row_column_unification
On this other branch I find it easier to see what code is shared a vertical and a horizontal version of a scrollbar. You can see this here : ee13eda806513dce5b4b0f30dcae4e7c237ee29f

I think it's better to move this PR to iced_aw and start a discussion there before we decide to make it a built-in iced widget.
Let me know if you need any help with that!


Letsencrypt-win-simple with IIS8.5 : SAN Certifcate with multiple domain entries

Hi,
I am trying to generate SSL SAN certificate with IIS8.5. I am using letsencrypt-win-simple.V1.9.1 Script. The IIS has Default Website and bind to hostname: test.xyz.edu.pk.
In DNS all three SAN entries are pointed to same IIS server.
test.pma.edu.pk <IP_ADDRESS>
test2.pma.edu.pk <IP_ADDRESS>
test3.pma.edu.pk <IP_ADDRESS>
I am using the below procedure to generate the SAN certificate. The domains were validated but 3 separate .pfx files are generated. Why it is not creating single .pfx file ? Why 3 ? Is it considering each .pfx file as a separate certificate ?
 PS C:\letsencrypt-win-simple.V1.9.1> .\letsencrypt.exe --san --centralsslstore C:\Central_SSL\
Let's Encrypt (Simple Windows ACME Client)
Renewal Period: 60
Certificate Store: WebHosting

ACME Server: https://acme-v01.api.letsencrypt.org/
Using Centralized SSL Path: C:\Central_SSL\
Config Folder: C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.org
Certificate Folder: C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.org
Loading Signer from C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.org\Sign
er

Getting AcmeServerDirectory
Loading Registration from C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.or
g\Registration

Scanning IIS Sites
 1: SAN - IIS Default Web Site (C:\inetpub\wwwroot)

 W: Generate a certificate via WebDav and install it manually.
 S: Generate a single San certificate for multiple sites.
 F: Generate a certificate via FTP/ FTPS and install it manually.
 M: Generate a certificate manually.
 A: Get certificates for all hosts
 Q: Quit
Which host do you want to get a certificate for: M
Enter a host name: test.pma.edu.pk
Enter all Alternative Names seperated by a comma test.pma.edu.pk,test2.pma.edu.pk,test3.pma.edu.pk
Enter a site path (the web root of the host for http authentication): %SystemDrive%\inetpub\wwwroot

Authorizing Identifier test.pma.edu.pk Using Challenge Type http-01
 Writing challenge answer to C:\inetpub\wwwroot\.well-known/acme-challenge/dooo02yy-U2OuGB-1Zs6G6gnw2RWq_8ClB3oJxPYZLE
 Answer should now be browsable at http://test.pma.edu.pk/.well-known/acme-challenge/dooo02yy-U2OuGB-1Zs6G6gnw2RWq_8ClB3
oJxPYZLE
 Submitting answer
 Authorization Result: valid

Authorizing Identifier test2.pma.edu.pk Using Challenge Type http-01
 Writing challenge answer to C:\inetpub\wwwroot\.well-known/acme-challenge/fWgqjX4Rr6Yi7jbyx0kjB4Una3hKsyDTWlWnvFO5V5A
 Answer should now be browsable at http://test2.pma.edu.pk/.well-known/acme-challenge/fWgqjX4Rr6Yi7jbyx0kjB4Una3hKsyDTWl
WnvFO5V5A
 Submitting answer
 Authorization Result: valid

Authorizing Identifier test3.pma.edu.pk Using Challenge Type http-01
 Writing challenge answer to C:\inetpub\wwwroot\.well-known/acme-challenge/oj6q3_pNJHqV9GCAbYysHZ3ELgGKOtVi3JW_zd0smrg
 Answer should now be browsable at http://test3.pma.edu.pk/.well-known/acme-challenge/oj6q3_pNJHqV9GCAbYysHZ3ELgGKOtVi3J
W_zd0smrg
 Submitting answer
 Authorization Result: valid

Requesting Certificate
 Request Status: Created
 Saving Certificate to C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencrypt.org\t
est.pma.edu.pk-crt.der
 Saving Issuer Certificate to C:\Users\Administrator\AppData\Roaming\letsencrypt-win-simple\httpsacme-v01.api.letsencryp
t.org\ca-0A0141420000015385736A0B85ECA708-crt.pem
Host: test.pma.edu.pk
 Saving Certificate to C:\Central_SSL\test.pma.edu.pk.pfx
Host: test2.pma.edu.pk
 Saving Certificate to C:\Central_SSL\test2.pma.edu.pk.pfx
Host: test3.pma.edu.pk
 Saving Certificate to C:\Central_SSL\test3.pma.edu.pk.pfx
 WARNING: Unable to configure server software.

Do you want to replace the existing letsencrypt-win-simple httpsacme-v01.api.letsencrypt.org task? (Y/N)

You're using a centralized SSL store to do this, so LWS will copy the file for each host name. When you enable centralized store capability in IIS, the web server then looks for certs that match the site host names. Since you have multiple host names, IIS will look for one cert for each host name.
Sure they'll be all copies of the same cert, but IIS doesn't have a separate setting to go, "this site uses this cert file, this site uses this one," and so on.
So this behaviour is by design, to accommodate how IIS looks for these certs.

I'm going to assume that this answer resolves the issue, thanks @gordonfpanam for chiming in.


Cannot resolve all the R file

Don't Know whether it's a Problem, I cannot resolve all the R file ,but I can still  run project on device well,

If the project builds and runs, it's not a problem.
By "cannot resolve" does this mean that Android Studio complains? You could try File > Invalidate Caches and Restart.
I've been having an issue in the latest canaries where the files resolve fine, but going to a resource declaration (CMD+click/CMD+b) takes you to the generated R.java file rather than the XML resource.

thanks，it works well on lastest canary


[bp-2.6]konflux: migration from 0.1 to 0.2

Summary
Related issue(s)
Fixes #

/lgtm
/cherrypick main
/cherrypick backplane-2.5
/cherrypick backplane-2.4

/lgtm


Gene name hyphens get filtered out when using cob.from_table()

If I have a data matrix that looks like this to serve as input into COB.from_table.

R1M-C2
R2M-C2
R3M-C2
R1T-C2

BDIBD21-3.1G0000700
0.440474
0.255481
0.312441

BDIBD21-3.1G0000800
1.41546
2.19172
2.00877

BDIBD21-3.1G0000900
0.0210054
0
0.0714931

BDIBD21-3.1G0001000
0
0
0

That command converts the gene names to something like BDIBD213.1G000290 before testing membership where the hyphen gets removed. This change ends up filtering out all of the genes since they don't match the RefGen gene names that include the hyphen.

So the place it is getting filtered out is right here at line 256:
https://github.com/schae234/Camoco/blob/master/camoco/Expr.py
I don't know if I did this or someone else, but if you change the regexp it should work, but I can't speak to the downstream effects of that, I looked and remembered having issues with column labels in bColz (see solution to that problem a couple lines above), but not specifically in the columns themselves.

It looks like this code was introduced because of HDF5 not bcolz. I think we can just remove this regex and be fine.
But we should add a regression test, I am not sure what bcolz can store in terms of strings.

Okay cool,
I don't recall noticing any weirdness, but may have been protected by that regex.


Fix check for antiword binary

We are checking for the existence of the string ‘antiword: No such file
or directory’ not its absence so the test should be !== -1
If checking for === -1 we will also fail here when the binary exists
but the file is not a word doc (as is the case in the testForBinary
function)
Also add a check for antiword: not found as that is the error message
I receive on my platform (Ubuntu 16.04)

Looks like this is off in a couple places, will probably simplify to not found as that is what I'm getting locally myself.


Add support for batch_get_secret_value

Describe the feature
AWS Secretsmanaget API exposes an API to retrieve secrets in batches (batch_get_secret_value).
This is a feature request to add support for that API
Use Case
For a multi-tenanted api, based on some metadata of the incoming request we need to load some group of secrets for the current tenant.
Currently we are making one request per secret, as there is no support for get secret value in batches
Proposed Solution
Add support for the aforementioned API
Other Information
No response
Acknowledgements

[X] I may be able to implement this feature request
[ ] This feature might incur a breaking change

A note for the community

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue, please leave a comment

This is actually a bug. It should be there, but isn't.

Thanks!

I merged a fix for this. It should go out with today's release.

Confirmed the method is now available at 1.8.0.


About Day 1

What's the meaning of random_state=0 in train_test_split()？

It means the seed for the random number generator is set to 0. Setting the seed makes the results reproducible. https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html

It means the seed for the random number generator is set to 0. Setting the seed makes the results reproducible. https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html

yeah,I know ,thank you.And do you have only 54 days?I can't see the rest


requirements: Upgrade HTTPretty to 0.8.14

Fixes: #3400
Didn't run into any issues with tests. The latest update included just some bug fixes and refactoring.

Automated message from Dropbox CLA bot
@decached, it looks like you've already signed the Dropbox CLA. Thanks!

@decached some tests are failing.
Did you run the tests after upgrade?

@zulipbot reviewed

@zulipbot abandon

Closing this given the commentary on #3400.


#M05 Creating Hackathon Database Models

Database Models to be created:

HackAwardCategory
Hackathon
HackTeam
HackProject
HackProjectScore
HackProjectScoreCategory

Model Schema can be found on the Development Wiki
@Ri-Dearg

Thanks @Ri-Dearg

Closing - PR merged successfully 🎉


Nanoleaf Lines are correctly identified but don't turn on after

[x] I confirm that this is an issue rather than a question.

Bug report
I want to control my Nanoleaf Lines using Hyperion. I'm successfully able to add the lines and token, I get the correct number of LEDs (26), clicking on "Identify" makes them flash twice. So far so good. However, turning on anything doesn't have any effect and the Lines stay black.
Steps to reproduce
Add new Nanoleaf device, either by search or IP, paste token and click on "Identify" (optional) and "Save".
Then going to "Remote control" and adding an effect to make the Lines show funny colors.
What is expected?
Obviouisly the Nanoleaf Lines to show anything at all aside from the identification flashing.
What is actually happening?
After adding the Nanoleaf Lines and overwriting the panel configuration to defaut settings the log says:
2023-10-01T10:06:12.140Z [LEDDEVICE|First LED Hardware instance] (ERROR) Device disabled, device 'nanoleaf' signals error: 'Not enough panels [25] for configured LEDs [26] found!'
even though my configuration says "26" panels.
Turning Hyperion Off from the web interface makes the Nanoleaf flash up with its last setting ("cozy fireplace" in my case) for half a second and then turns off.
Then there's something interesting I found in the advaced logs. Whenever I turn Hyperion off and back on from the web interface the number of configured panels rises by 25 and spits out an error/info. I did not change anything in my configuration. However, reducing the number of LEDs in my configuration doesn't change anything anyway.
2023-10-01T10:08:26.466Z [LEDDEVICE|First LED Hardware instance] (INFO) Resolved hostname (Lines 8C42._nanoleafapi._tcp.local) to IP-address (<IP_ADDRESS>)
2023-10-01T10:08:26.477Z [LEDDEVICE|First LED Hardware instance] (INFO) nanoleaf: More panels [100] than configured LEDs [26].
2023-10-01T10:08:26.477Z [LEDDEVICE|First LED Hardware instance] (INFO) Stream UDP data to <IP_ADDRESS> port: 60222
2023-10-01T10:08:26.477Z [LEDDEVICE|First LED Hardware instance] (INFO) Switching device nanoleaf ON
2023-10-01T10:08:27.113Z [LEDDEVICE|First LED Hardware instance] (INFO) Device nanoleaf is ON
2023-10-01T10:08:27.113Z [LEDDEVICE|First LED Hardware instance] (INFO) LedDevice 'nanoleaf' enabled

....

2023-10-01T10:09:37.654Z [LEDDEVICE|First LED Hardware instance] (INFO) Resolved service [Lines 8C42._nanoleafapi._tcp.local] to mDNS hostname [Lines-8C42.local.], service port [16021]
2023-10-01T10:09:37.654Z [LEDDEVICE|First LED Hardware instance] (INFO) Resolved hostname (Lines 8C42._nanoleafapi._tcp.local) to IP-address (<IP_ADDRESS>)
2023-10-01T10:09:37.666Z [LEDDEVICE|First LED Hardware instance] (INFO) nanoleaf: More panels [125] than configured LEDs [26].
2023-10-01T10:09:37.666Z [LEDDEVICE|First LED Hardware instance] (INFO) Stream UDP data to <IP_ADDRESS> port: 60222
2023-10-01T10:09:37.666Z [LEDDEVICE|First LED Hardware instance] (INFO) Switching device nanoleaf ON
2023-10-01T10:09:38.284Z [LEDDEVICE|First LED Hardware instance] (INFO) Device nanoleaf is ON
2023-10-01T10:09:38.284Z [LEDDEVICE|First LED Hardware instance] (INFO) LedDevice 'nanoleaf' enabled

....

2023-10-01T10:09:49.227Z [LEDDEVICE|First LED Hardware instance] (INFO) Resolved service [Lines 8C42._nanoleafapi._tcp.local] to mDNS hostname [Lines-8C42.local.], service port [16021]
2023-10-01T10:09:49.227Z [LEDDEVICE|First LED Hardware instance] (INFO) Resolved hostname (Lines 8C42._nanoleafapi._tcp.local) to IP-address (<IP_ADDRESS>)
2023-10-01T10:09:49.238Z [LEDDEVICE|First LED Hardware instance] (INFO) nanoleaf: More panels [150] than configured LEDs [26].
2023-10-01T10:09:49.238Z [LEDDEVICE|First LED Hardware instance] (INFO) Stream UDP data to <IP_ADDRESS> port: 60222
2023-10-01T10:09:49.238Z [LEDDEVICE|First LED Hardware instance] (INFO) Switching device nanoleaf ON
2023-10-01T10:09:49.752Z [LEDDEVICE|First LED Hardware instance] (INFO) Device nanoleaf is ON
2023-10-01T10:09:49.752Z [LEDDEVICE|First LED Hardware instance] (INFO) LedDevice 'nanoleaf' enabled

....

2023-10-01T10:10:02.504Z [LEDDEVICE|First LED Hardware instance] (INFO) Resolved service [Lines 8C42._nanoleafapi._tcp.local] to mDNS hostname [Lines-8C42.local.], service port [16021]
2023-10-01T10:10:02.504Z [LEDDEVICE|First LED Hardware instance] (INFO) Resolved hostname (Lines 8C42._nanoleafapi._tcp.local) to IP-address (<IP_ADDRESS>)
2023-10-01T10:10:02.515Z [LEDDEVICE|First LED Hardware instance] (INFO) nanoleaf: More panels [175] than configured LEDs [26].
2023-10-01T10:10:02.515Z [LEDDEVICE|First LED Hardware instance] (INFO) Stream UDP data to <IP_ADDRESS> port: 60222
2023-10-01T10:10:02.515Z [LEDDEVICE|First LED Hardware instance] (INFO) Switching device nanoleaf ON
2023-10-01T10:10:03.066Z [LEDDEVICE|First LED Hardware instance] (INFO) Device nanoleaf is ON
2023-10-01T10:10:03.066Z [LEDDEVICE|First LED Hardware instance] (INFO) LedDevice 'nanoleaf' enabled

My guess is that something is messing up the configuration while turning on Hyperion causing the Nanoleaf Lines to stay off.
System
I've checked this on three different configurations. My home cinema PC (x86, i7 4700) running both Windows 11 and LibreELEC 11 (legacy graphics) and my MacBook Pro 2012. The results are all the same.
- Build:             (HEAD detached at 2.0.15) (GitHub-70e1043/24a00e3-1676809483)
- Build time:        Feb 19 2023 14:45:05
- Git Remote:        https://github.com/hyperion-project/hyperion.ng
- Version:           2.0.15
- UI Lang:           de (BrowserLang: de-DE)
- UI Access:         default
- Avail Screen Cap.: osx,qt
- Avail Video  Cap.:
- Avail Audio  Cap.:
- Avail Services:    boblight,effectengine,forwarder,flatbuffer,protobuffer,mDNS,SSDP,borderdetection
- Config path:       /Users/jayb/.hyperion
- Database:          read/write

Hyperion Server OS:
- Distribution:      macOS 13.6
- Architecture:      x86_64
- Kernel:            darwin (22.6.0 (WS: 64))
- Root/Admin:        false
- Qt Version:        5.15.8
- Python Version:    3.11.2
- Browser:           Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Safari/605.1.15```

(This is my MacBook, the last device where I checked it.)

@JayB1988 Thanks for sharing your findings on the Nanoleaf device implementation.
The increasing panel number is of course a bug.
For the inconsistency between the panel number identified during configuration and during running Hyperion, I would like to better understand your setup.

How many panels do you have?
Do all panels have LEDs? Or is a controller without LEDs being part of your Lines setup (I do not know how Lines behave).
When you configured Nanoleaf in Hyperion the HW LED counts showed 26.
Now Hyperion sees 25...
Did you remove one Lines element after configuration?
Have you checked that all Lines are well connected any longer? Another user had that problem....
Does the Nanoleaf app see 25 or 26 panels currently?

I anyway will fix some of the identified issues.
Might be good, if you could test the updated code when available.....

Hi! Thanks for responding. I also see where I might have made a mistake.
My Lines setup consists of a LED-less controller and 9 Lines elements, each able to display 2 colors. So technically I should have 18 LEDs to control. I was thinking that each panel could display 3 colors which made 0-26 or 27 LEDs a reasonable number.
I made some experiments now to see how many LEDs are reported depending on the configuration.
Only the controller with no LEDs attached: 1 LED reported
Controller + 1 Lines panel = 3 LEDs
Controller + 1 Lines panel + 1 joint (or knot) = 4 LEDs
Controller + 2 Lines panels + 2 knots = 7 LEDs
And so on. So each knot element is another reported LED. However, the final piece that closes the circle (or triangle in my case) adds a +1 to the reported LEDs, probably because the last panel also ends in a knot piece (even though this already was counted).
The Nanoleaf Desktop app also sees all 9 elements and let's you assign two colors per LED. Can provide a photo of my setup and the accompanying screenshot from the app if that's any help.

@JayB1988 Thanks for sharing the details.
That still raises the question why the code thinks there are only 25 LEDs out there....
Unfortunately, there is no elaborated Nanoleaf documentation out there for newer devices.
Therefore, I need your help...
Would you mind executing the following URL in a Browser and share the output with me?
Then I would see how the Lines and related controllers and dots are presented to me.
http://<IP_ADDRESS>:16021/api/v1/Your-user-generated-auth-token/
To keep your data private, you might want sharing the output with me via a direct message using
Discord  or the Hyperion forum.
I already did some fixes, plus adding a wizard to create the user authorization token as a bonus.
If PR #1647 has been build finally, you might want to download a build and test, if that works for you.
Otherwise, we can further investigate.


time-stamps in netflix work WRONG

I already commented this but the issue is still going on, when i try to mine a certain subtitle on netflix the extension dosent mine the current subtitle but the one that is before, is so frustating i even tried to film a video but i couldnt even do it because when i click one subtitle time-stamp it automatically goes even three times back lol. This happens on every device i ever used asb player and on every web browser

@thiagocasti Does seeking through subtitles with left/right keys work correctly for you on Netflix?

Ok so, i came up with solution lol, the function of seeking trough subtitles with left/right keys, mining a sentence, clicking on a subtitle etc. doesn't work so good only on netflix for some reason  but i found out that if i install language reactor, this extension  changes something about the netflix reproducer and now asbplayer works way better without loosing track of subtitles, i made two videos the first one is with language reactor installed and the other one is without.
Sorry for the quality of the videos, i tried my best to show how it worked on each one, the one in language reactor when i clicked the subtitle it automatically pauses netflix reproducer (sometimes) and then goes to the subtitle position witch surprised me because even though i got the extension off it works way better lol, the only time it didn't went to my desired position on the video was because i made a false click lol.
Then in the second one just asbplayer, it works way different from, the netflix reproducer never pauses  and when you click on a subtitle the reproducer may not be running but the subtitle are already being played, so i think every time you click and change from different timestamps the delay goes worst and worst.
idk if this helped, again, sorry for the bad quality of the videos, i would keep using asbplayer this way because i just love it and is the only thing i have to mine from my dorama's and anime's in linux lol.
https://github.com/killergerbah/asbplayer/assets/130512347/d788cabf-e0fe-456c-9df8-5f4c3cc87e4c
https://github.com/killergerbah/asbplayer/assets/130512347/fb5b4168-18a2-4a21-bb68-aacce3d81c67

ok, idk i couldn't upload the two videos this is the one with language reactor:
https://github.com/killergerbah/asbplayer/assets/130512347/fdccdbd5-6aa8-490a-ba4a-28565fd1b942

https://github.com/killergerbah/asbplayer/assets/130512347/9b00b73f-234e-4273-aed4-66bc4899feb9

https://github.com/killergerbah/asbplayer/assets/130512347/54179c94-78a8-4ff9-982f-4527766f9591

idk what happened with the video that has language reactor, tell me if you can reproduce it lol

https://github.com/killergerbah/asbplayer/assets/130512347/cb875673-9dca-4830-99e5-dd1b767eeef1

It seems that language reactor does add "better playback controls" wich could contribute in asbplayer working better on netflix

Thanks for the info it looks like language reactor has a way to force Netflix's player to seek precisely

For some reason (possibly CPU core count) Netflix does not allow precise seeking on some devices by default.  A speculative fix for this is implemented (see Discord server for snapshot release).


fix: Calculate sum as f64 for images above 4096x4096

Hi,
I found a bug when comparing images with a very high resolution, with a pixel count above 16777216 to be precise. This happens because 16777216 is a maximum safe integer that can be stored in f32,
You can check it, as the following test passes:
#[test]
fn f32_test() {
    assert_eq!(16777216.0f32 + 1.0, 16777216.0f32)
}

When comparing the large image to themselves, the deviation array contains only elements 1.0, and sum::<f32> essentially increments an accumulator by 1.0 in a loop, which clips at 16777216, and if the pixel count was higher, the later division by element count yields score lower than 1.0.
This PR properly casts each element to f64 before calculating the sum with f64 accumulator, which solves this problem (since the maximum safe integer in f64 is about 9**15)
Note
I wasn't sure how to cover it with tests, since

I don't fully understand how it fits cucumber
In debug build this test takes 27 seconds to run on a AMD 3900x CPU (0.43s in release build)

#[test]
fn check_image_with_pixel_count_overflowing_f32() {
    let image = image::RgbaImage::from_vec(1, 16777300, vec![0; 16777300 * 4]).unwrap();

    // Fails right now on main branch with score 0.9999949932349067
    assert_eq!(
        image_compare::rgba_hybrid_compare(&image, &image)
            .expect("Could not compare")
            .score,
        1.0
    );
}

Published as 0.4.1