Fixes don't work unless DeletedRegion specifies CharOffset/CharLength

Repro files:
SquiggleTest.sarif.txt
SquiggleTest.cs.txt
Repro steps:

Save the attached files.
Open the SARIF file in VS.
Click on the result in the Error List to open the SARIF Explorer.
Select the Fixes tab.
Click Preview or Apply.

Expected:
You see the Preview or Apply UI.
Actual:
Nothing happens.
Diagnosis:
The problem is that deletedRegion is specified with line/column properties, but ReplacementExtensions.ToReplacementModel expects CharOffset/CharLength.
                  "replacements": [
                    {
                      "deletedRegion": {
                        "startLine": 7,
                        "startColumn": 23,
                        "endColumn": 25
                      },
                      "insertedContent": {
                        "text": "42"
                      }
                    }
                  ]

Fix:
ReplacementExtensions.ToReplacementModel needs to fill out the region is CharOffset is absent (has value -1).
That would require the file path to be passed all the way down from where the fix models are created in the SarifErrorListItem ctor.
@michaelcfanning @GabeDeBacker FYI

It's true we're going to change the fix UI to use light bulbs, but ReplacementExtensions.ToReplacementModel still needs to do the right thing.

Want to get squiggles and lightbulbs working for fixes.

Per discussion in triage: The spec does not require deletedRegion to be specified with offset/length properties:

3.57.3 deletedRegion property
A replacement object SHALL contain a property named deletedRegion whose value is a region object (§3.30) specifying the region to delete.
If the length of the region specified by deletedRegion is zero, then deletedRegion specifies an insertion point, and the SARIF consumer performing the replacement SHALL NOT remove any content.

There's nothing about requiring offset/length properties vs line/column properties, and in fact the spec shows several examples of both.
@michaelcfanning @roywill FYI

I'm sure the original thought here was that requiring the consumer to compute offset/length (based on line/column data) to drive the replacement was not ideal. As you know, there's ambiguity around the column unit between IDE/platform environments which needs to be considered (to cover all cases).
Rather than plumbing data through the system, you might consider expanding regions proactively when processing the log file (on observing the presence of fixes).
But are we taking a fix here at all? The light-bulb machinery will replace all of this in any case, yes?

@michaelcfanning @GabeDeBacker
Thanks for reminding me of this. It's fixed in my most recent PR (I'd forgotten I'd filed an issue for it). I use the FileRegionsCache to "fully populate" the region before attempting to apply the fix. If the region can't be fully populated, I refrain from displaying the light bulb.
The VS light bulb machinery per se doesn't address this; one way or the other, you have to know where to put the light bulb, and it's the client code that's responsible for that.


feat(ncu): ncu update & upgrade node 9.9.0

Issue:
What I did
How to test

Deploy preview for mcslite ready!
Built with commit 820635fcf0efe8162555ef3a6113c301b6750905
https://deploy-preview-594--mcslite.netlify.com

Deploy preview for mcs-lite-introduction ready!
Built with commit 820635fcf0efe8162555ef3a6113c301b6750905
https://deploy-preview-594--mcs-lite-introduction.netlify.com

Deploy preview for mcs-lite-ui ready!
Built with commit 820635fcf0efe8162555ef3a6113c301b6750905
https://deploy-preview-594--mcs-lite-ui.netlify.com


Added KiranKumarRega to Readme file

Related issue

What changes does this PR do?
Added my Name to readme file
Screenshots (If any)
Questions

Closed as there was no reaction by the tagged user.


Can't edit post due to some js bug.

Issue Summary
I was writing a post, when suddenly i can't type new words but can delete.
A refresh can't solve the problem. Other posts don't have this problem.I just can't edit this post.
Console shows this:
Uncaught TypeError: Cannot read property 'tailPosition' of null
    at i.value (vendor.min-22581a2….js:28)
    at e.value (vendor.min-22581a2….js:29)
    at e.value (vendor.min-22581a2….js:29)
    at e.get (vendor.min-22581a2….js:31)
    at e.value (vendor.min-22581a2….js:26)
    at e.value (vendor.min-22581a2….js:26)
    at e.value (vendor.min-22581a2….js:26)
    at e.value (vendor.min-22581a2….js:26)
    at e.value (vendor.min-22581a2….js:27)
    at e.value (vendor.min-22581a2….js:26)

        {
            key: "tailPosition",
            value: function() {
                return this.items.tail.tailPosition() // <-- this line
            }
        }

this.items.tail equals to null.
Steps to Reproduce
I have no idea how to reproduce, even if i copy it to new post.
So i upload the sql file of this post.
bug_post.sql
Technical details:

Ghost Version: 1.0.0-alpha.20
Node Version: v6.10.2
Browser/OS: Chrome 57.0.2987.133 (64-bit) / Windows 10 Pro
Database: MySQL

Hi @HYec, I've labeled this issue as later because we've replaced the editor that was shipped in alpha.20 for a markdown-only editor to give us more time to work on perfecting the full mobiledoc based editor.


Remove tags-menu

I think we want to remove this as it is not used and is confusing to have it here. It's been talked about before.
It was a blog feature not implemented since tags are not useful without lots of posts.
The blog page also has a side menu already which we would need to remove or change to put this in.
Remove file /_includes/blog/tags-menu.md
Or, if we want to keep it, we should turn it on now there are more posts, and close this.

I was thinking of proposing to follow the style that Node.js uses in their blogs, with tags. Now that the project will have more blog posts, it would be a good idea to adopt that style

https://nodejs.org/en/blog


private JetBrains.Annotations dependency

Let the JetBrains.Annotations dependency be private, it can be private so that won't be an external dependency
https://docs.microsoft.com/en-us/nuget/consume-packages/package-references-in-project-files#controlling-dependency-assets

Thanks for the suggestion, but this dependency needs to remain public.  I have various R# attributes placed specifically for clients to consume, like the RegexPattern attribute.
Out of curiosity, is this actually causing a problem for you, or is this just a philosophical "reduce dependencies" suggestion?

Hi @gregsdennis , no problem met so far, just think it should be a development-only dependency, and I try to build the whole project, it would not fail

Okay. Thank you. I hear you, but I have my reasons for it being the way it is as explained above.


"cross-platform"?

In the readme, you say you're cross platform, yet, I see no instructions for installation on any system but unix.

The instructions in the readme work for both *nix and Mac OSX (...*nix).  As for Windows, I was assuming that someone using Vim on Windows would also be using Cygwin or a similar terminal emulator.  This assumption, however, could easily be wrong.
Could you elaborate on your setup?  If you are having trouble installing, I'd love to know that tools/platform etc. that you're using so that I can try to improve apt-vim. Thanks!

Hey, thanks for your quick response...I'm using git bash, and this is the error I get
./install.sh: eval: line 28: syntax error near unexpected token `('
./install.sh: eval: line 28: `export PATH=/k//bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/mingw64/bin:/usr/bin:/k/bin:/c/oracle/product/12.1.0/client_1/bin:/c/Program Files (x86)/CA/DCS/CAWIN:/c/windows/system32:/c/windows:/c/windows/System32/Wbem:/c/windows/System32/WindowsPowerShell/v1.0:/c/windows/esisoft:/c/Program Files (x86)/IBM/Personal Communications:/c/Program Files (x86)/IBM/Trace Facility:/c/Program Files/Internet Explorer:/c/SQLLIB/BIN:/c/SQLLIB/FUNCTION:/c/Program Files/Common Files/ThinPrint:/c/Programs/DCPS/npm:/c/Programs/DCPS/Git/cmd:/c/Programs/DCPS/PostgreSQL/9.4/bin:/cmd:/c/PROGRAMS/DCPS/NODEJS:%USERPROFILE%/.dnx/bin:/c/Program Files/Microsoft DNX/Dnvm:/c/Program Files/Microsoft SQL Server/130/Tools/Binn:/c/oracle/product/12.1.0/client_1/bin:/c/Program Files (x86)/CA/DCS/CAWIN:/c/windows/system32:/c/windows:/c/windows/System32/Wbem:/c/windows/System32/WindowsPowerShell/v1.0:/c/windows/esisoft:/c/Program Files (x86)/IBM/Personal Communications:/c/Program Files (x86)/IBM/Trace Facility:/c/Program Files/Internet Explorer:/c/SQLLIB/BIN:/c/SQLLIB/FUNCTION:/c/Program Files/Common Files/ThinPrint:/c/Programs/DCPS/npm:/c/Programs/DCPS/Git/cmd:/c/Programs/DCPS/PostgreSQL/9.4/bin:/cmd:/c/PROGRAMS/DCPS/NODEJS:%USERPROFILE%/.dnx/bin:/c/Program Files/Microsoft DNX/Dnvm:/c/Program Files/Microsoft SQL Server/130/Tools/Binn:/c/Users/276655/AppData/Roaming/npm:/c/Program Files/Sublime Text 3:/usr/bin/vendor_perl:/usr/bin/core_perl:/k//bin:/k//.npm/bin:/k//.vimpkg/bin'

Which I'm guessing has something to do with the parentheses in Program Files (x86) not being escaped, plus the spaces

I have not tried cygwin though

Ok, I put path in a string, , but now, I'm getting a new error
./install.sh: line 37: printf: `U': invalid format character
== Added apt-vim PATH to '~/.bashrc'
./install.sh: line 37: printf: `U': invalid format character
== Added apt-vim PATH to '~/.bash_profile'
apt-vim setup starting
There's already an apt-vim root directory at K:\.vimpkg

Are you sure you want to continue? [y|N]:  Traceback (most recent call last):
  File "<stdin>", line 12, in <module>
  File "./apt-vim", line 553, in first_run
    ASSUME_YES=False)
  File "./apt-vim", line 52, in report_fail
    if user_confirm(confirm_msg, ASSUME_YES=ASSUME_YES):
  File "./apt-vim", line 65, in user_confirm
    user_choice = input(msg).strip().lower()
  File "./apt-vim", line 845, in stdin_prompt
    sys.stdin = open('/dev/tty')
IOError: [Errno 2] No such file or directory: '/dev/tty'

== Error:
   Installation failed.

Awesome, thanks for the info.  You're spot on; the install script definitely doesn't take into account escaping Windows' PATH.
RE your new error, this also makes sense.  When trying to install via install.sh, there was a previous bug in which user input was ignored entirely by python launched via install.sh.  To resolve the bug, I used that little hacky trick:  sys.stdin = open('/dev/tty').  Unfortunately, that's very Windows-unfriendly.
These are a few things that need to get fixed; thanks for your help in identifying them. To get you off the ground sooner rather than later, you might try the manual installation?  Sorry about that.  Let me know if you get stuck during manual installation, I'd be happy to try to help

Idk which character it's referring to, but this is my path
export PATH='/k//bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/mingw64/bin:/usr/bin:/k/bin:/c/oracle/product/12.1.0/client_1/bin:/c/Program Files (x86)/CA/DCS/CAWIN:/c/windows/system32:/c/windows:/c/windows/System32/Wbem:/c/windows/System32/WindowsPowerShell/v1.0:/c/windows/esisoft:/c/Program Files (x86)/IBM/Personal Communications:/c/Program Files (x86)/IBM/Trace Facility:/c/Program Files/Internet Explorer:/c/SQLLIB/BIN:/c/SQLLIB/FUNCTION:/c/Program Files/Common Files/ThinPrint:/c/Programs/DCPS/npm:/c/Programs/DCPS/Git/cmd:/c/Programs/DCPS/PostgreSQL/9.4/bin:/cmd:/c/PROGRAMS/DCPS/NODEJS:%USERPROFILE%/.dnx/bin:/c/Program Files/Microsoft DNX/Dnvm:/c/Program Files/Microsoft SQL Server/130/Tools/Binn:/c/oracle/product/12.1.0/client_1/bin:/c/Program Files (x86)/CA/DCS/CAWIN:/c/windows/system32:/c/windows:/c/windows/System32/Wbem:/c/windows/System32/WindowsPowerShell/v1.0:/c/windows/esisoft:/c/Program Files (x86)/IBM/Personal Communications:/c/Program Files (x86)/IBM/Trace Facility:/c/Program Files/Internet Explorer:/c/SQLLIB/BIN:/c/SQLLIB/FUNCTION:/c/Program Files/Common Files/ThinPrint:/c/Programs/DCPS/npm:/c/Programs/DCPS/Git/cmd:/c/Programs/DCPS/PostgreSQL/9.4/bin:/cmd:/c/PROGRAMS/DCPS/NODEJS:%USERPROFILE%/.dnx/bin:/c/Program Files/Microsoft DNX/Dnvm:/c/Program Files/Microsoft SQL Server/130/Tools/Binn:/c/Users/276655/AppData/Roaming/npm:/c/Program Files/Sublime Text 3:/usr/bin/vendor_perl:/usr/bin/core_perl:/k//bin:/k//.npm/bin':/k//.vimpkg/bin

This is the line that fails
      printf "\n$bin_string\n" >> "$HOME/.$rc"

Yeah, I tried the manual installation, but had a lot of trouble with that as well

running ./apt-vim init doesn't do anything. It just sits there perpetually. Doesn't even give an error message.

I think that's because I can't run python in git bash though

And running in powershell gives me this error
Valid modes: ['add', 'delete', 'init', 'install', 'list', 'remove', 'update']

apt-vim> py.exe .\apt-vim init
Traceback (most recent call last):
  File ".\apt-vim", line 856, in <module>
    apt_vim.main()
  File ".\apt-vim", line 832, in main
    self.process_cmd_args()
  File ".\apt-vim", line 805, in process_cmd_args
    self.MODES[mode]()
  File ".\apt-vim", line 579, in first_run
    os.symlink(self.INSTALL_TARGET, BUNDLE_PATH)
AttributeError: 'module' object has no attribute 'symlink'

Another item to add to the fix list:  os.symlink is only supported by *nix.  Workaround would be to delete the usage of os.symlink from apt-vim and then use mklink in Windows to create a symlink from ~/.vimpkg/bundle to Windows equivalent of ~/.vim/bundle.  I'm not entirely sure where vim bundles/plugins are installed on windows, sorry.

idk regularly...I'm just on a Windows computer for work (at the government)...I wouldn't normally use a PC for development, but on my machine, they're stored (by git bash) on K://.vim/bundle. Git bash has an alias for ~/.vim/bundle though. Although my actual home directory is `C:\Users{username}\

Ok, so I added a "polyfill" I guess per this SO question, but I'm still getting an error,
apt-vim> py .\apt-vim init
There's already an apt-vim root directory at C:\Users\276655\.vimpkg

Are you sure you want to continue? [y|N]:
Invalid option. Please enter `Y` or `N` only
Are you sure you want to continue? [y|N]:  Y
Traceback (most recent call last):
  File ".\apt-vim", line 874, in <module>
    apt_vim.main()
  File ".\apt-vim", line 850, in main
    self.process_cmd_args()
  File ".\apt-vim", line 823, in process_cmd_args
    self.MODES[mode]()
  File ".\apt-vim", line 604, in first_run
    if not self.call_silent(['cp', os.path.realpath(__file__), SCRIPT_EXE_PATH]):
  File ".\apt-vim", line 516, in call_silent
    exit_code = call(command, stdout=devnull)
  File "C:\Python27\lib\subprocess.py", line 523, in call
    return Popen(*popenargs, **kwargs).wait()
  File "C:\Python27\lib\subprocess.py", line 711, in __init__
    errread, errwrite)
  File "C:\Python27\lib\subprocess.py", line 959, in _execute_child
    startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

ok, I removed the ~/.vimpkg, now, I'm getting this error:
apt-vim $ python apt-vim init
Traceback (most recent call last):
  File "apt-vim", line 874, in <module>
    apt_vim.main()
  File "apt-vim", line 850, in main
    self.process_cmd_args()
  File "apt-vim", line 823, in process_cmd_args
    self.MODES[mode]()
  File "apt-vim", line 597, in first_run
    os.symlink(self.INSTALL_TARGET, BUNDLE_PATH)
  File "apt-vim", line 20, in symlink
    raise ctypes.WinError()
WindowsError: [Error 5] Access is denied.

Sidenote: Would most people have just given up by now? I'm guessing so, or you would have had this issue before haha

This is the error I get with mklink
apt-vim $ python apt-vim init
There's already an apt-vim root directory at K:\.vimpkg

Are you sure you want to continue? [y|N]:  y
Traceback (most recent call last):
  File "apt-vim", line 856, in <module>
    apt_vim.main()
  File "apt-vim", line 832, in main
    self.process_cmd_args()
  File "apt-vim", line 805, in process_cmd_args
    self.MODES[mode]()
  File "apt-vim", line 579, in first_run
    os.mklink(self.INSTALL_TARGET, BUNDLE_PATH)
AttributeError: 'module' object has no attribute 'mklink'

Haha, yes definitely most would have bailed by now. Sorry for the rough ride. I'm also away from computer access so you're facing the front line of issues alone. I'll definitely be making fixes based on your struggles, but unfortunately they won't be immediate :-(

Ok, this polyfill appears to work
import os
if os.name == "nt":
    def symlink_ms(source, link_name):
        import ctypes
        csl = ctypes.windll.kernel32.CreateSymbolicLinkW
        csl.argtypes = (ctypes.c_wchar_p, ctypes.c_wchar_p, ctypes.c_uint32)
        csl.restype = ctypes.c_ubyte
        flags = 1 if os.path.isdir(source) else 0
        try:
            if csl(link_name, source.replace('/', '\\'), flags) == 0:
                raise ctypes.WinError()
        except:
            pass
    os.symlink = symlink_ms

But, now, I'm getting an error that K:.vimpkg\bin isn't in my path, when it is

Sorry, I wasn't very clear at all. You'll need to run mklink in command prompt on windows. You'll also need to remove the apt-vim code that checks for and replaces an existing ~/.vimpkg directory, as you know yours is in a good state

Oh ok, you've made great progress. Can you start interactive python in your current shell and try the following like so:
python -i

import os
print os.environ['PATH']

Does it list the apt-vim bin directory?

Ok, no problem...I mean, you've already sort of done your part by creating the actual program...
But I actually got it to work now, but it's now, it's asking me if I have any of these programs installed, and I have to say y for every one, and then it names the package y for some reason
apt-vim $ python ~/.vimpkg/bin/apt-vim install http://github.com/scrooloose/nerdcommenter
No recipe for `vim` for your OS
Do you wish to continue anyways? [y|N]:  y
No recipe for `git` for your OS
Do you wish to continue anyways? [y|N]:
Invalid option. Please enter `Y` or `N` only
Do you wish to continue anyways? [y|N]:  y
No recipe for `brew` for your OS
Do you wish to continue anyways? [y|N]:  hello
Invalid option. Please enter `Y` or `N` only
Do you wish to continue anyways? [y|N]:  y

Configuring and installing `y`
Cloning into 'y'...
remote: Counting objects: 1849, done.
remote: Total 1849 (delta 0), reused 0 (delta 0), pack-reused 1849
Receiving objects: 100% (1849/1849), 599.18 KiB | 584.00 KiB/s, done.
Resolving deltas: 100% (745/745), done.
Checking connectivity... done.
Completed successfully.

Yes, it's listed on the path
K:\bin;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\local\bin;C:\Pr
ogram Files\Git\usr\bin;C:\Program Files\Git\usr\bin;C:\Program Files\Git\mingw6
4\bin;C:\Program Files\Git\usr\bin;K:\bin;C:\oracle\product\12.1.0\client_1\bin;
C:\Program Files (x86)\CA\DCS\CAWIN;C:\windows\system32;C:\windows;C:\windows\Sy
stem32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0;C:\windows\esisoft;C:\Pro
gram Files (x86)\IBM\Personal Communications;C:\Program Files (x86)\IBM\Trace Fa
cility;C:\Program Files\Internet Explorer;C:\SQLLIB\BIN;C:\SQLLIB\FUNCTION;C:\Pr
ogram Files\Common Files\ThinPrint;C:\Programs\DCPS\npm;C:\Programs\DCPS\Git\cmd
;C:\Programs\DCPS\PostgreSQL\9.4\bin;C:\Program Files\Git\cmd;C:\PROGRAMS\DCPS\N
ODEJS;%USERPROFILE%\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm;C:\Program File
s\Microsoft SQL Server\130\Tools\Binn;C:\oracle\product\12.1.0\client_1\bin;C:\P
rogram Files (x86)\CA\DCS\CAWIN;C:\windows\system32;C:\windows;C:\windows\System
32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0;C:\windows\esisoft;C:\Program
 Files (x86)\IBM\Personal Communications;C:\Program Files (x86)\IBM\Trace Facili
ty;C:\Program Files\Internet Explorer;C:\SQLLIB\BIN;C:\SQLLIB\FUNCTION;C:\Progra
m Files\Common Files\ThinPrint;C:\Programs\DCPS\npm;C:\Programs\DCPS\Git\cmd;C:\
Programs\DCPS\PostgreSQL\9.4\bin;C:\Program Files\Git\cmd;C:\PROGRAMS\DCPS\NODEJ
S;%USERPROFILE%\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm;C:\Program Files\Mi
crosoft SQL Server\130\Tools\Binn;C:\Users\276655\AppData\Roaming\npm;C:\Program
 Files\Sublime Text 3;C:\Program Files\Git\usr\bin\vendor_perl;C:\Program Files\
Git\usr\bin\core_perl;K:\bin;K:\.npm\bin.lnk;K:\.vimpkg\bin

The command seems to run in a subshell somehow though, and my bashrc isn't executed for some reason

So, it's probably not in there for the process that is run


"Error: Request failed with status code 400" with some playlists using getSetInfo()

Hi all - I'm getting a http 400/Bad Request error when using getSetInfo() for some playlists (e.g. https://soundcloud.com/ilyanaazman/sets/best-of-mrrevillz or https://soundcloud.com/ilyanaazman/sets/bestofchillnation) while most others are perfectly fine (e.g. https://soundcloud.com/ilyanaazman/sets/latenightlofi).
Console output below with masked out client_id:
Error: Request failed with status code 400      at createError (/workspace/node_modules/axios/lib/core/createError.js:16:15)      at settle (/workspace/node_modules/axios/lib/core/settle.js:17:12)      at IncomingMessage.handleStreamEnd (/workspace/node_modules/axios/lib/adapters/http.js:244:11)      at IncomingMessage.emit (events.js:327:22)      at endReadableNT (_stream_readable.js:1220:12)      at processTicksAndRejections (internal/process/task_queues.js:84:21) {
  config: {
    url: 'https://api-v2.soundcloud.com/tracks?ids=867665638%2C916488845%2C916541744%2C879502579%2C911544727%2C920224540%2C920227672%2C912258409%2C182859485%2C879588352%2C871408492%2C903271243%2C899338447%2C907746022%2C906903244%2C851514058%2C907746013%2C899541523%2C871778755%2C845983675%2C727730749%2C310455689%2C351996389%2C221308049%2C617744415%2C222335592%2C220021334%2C625572180%2C586430472%2C136515969%2C350544130%2C292528042%2C672835793%2C233271745%2C634818096%2C345014116%2C194674830%2C613079007%2C219240973%2C250830766%2C157946069%2C242071122%2C220940419%2C356904608%2C447921720%2C325876880%2C303520330%2C577977645%2C258583921%2C329292478%2C302734389%2C288394390%2C304744944%2C213828110%2C158384606%2C322256287%2C654816296%2C321085206%2C180526491%2C151836932%2C240510101%2C259932466%2C340422811%2C120417156%2C308158931%2C242970980%2C265004302%2C225515495%2C94470145%2C147235179%2C193641840%2C192956375%2C243086787%2C418406040%2C319849669%2C361549280%2C348894700%2C357040427%2C482437833%2C252638815%2C465024060%2C465229422%2C450607776%2C329511908%2C493285392%2C489363333%2C502948368%2C509000139%2C411189549%2C290210997%2C519271257%2C519206883%2C604903338%2C578505426%2C560864886%2C556088364%2C546188349%2C516324954%2C145367831%2C323733248%2C135322127%2C353880398%2C396944928%2C296968053%2C494976372%2C215558123%2C190445096%2C192408098%2C242672575%2C204778816%2C319887152%2C403960782%2C194510401%2C214816945%2C383884892%2C341315415%2C172595409%2C210014181%2C519749160%2C226139958%2C483679920%2C84118776%2C473381727%2C214140973%2C489177243%2C266963313%2C285262888%2C272020529&client_id=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
    method: 'get',
    headers: {
      Accept: 'application/json, text/plain, */*',
      'User-Agent': 'axios/0.20.0'
    },
    transformRequest: [ [Function: transformRequest] ],
    transformResponse: [ [Function: transformResponse] ],
    timeout: 0,
    adapter: [Function: httpAdapter],
    xsrfCookieName: 'XSRF-TOKEN',
    xsrfHeaderName: 'X-XSRF-TOKEN',
    maxContentLength: -1,
    maxBodyLength: -1,
    validateStatus: [Function: validateStatus],
    data: undefined
  },
  request: ClientRequest {
    _events: [Object: null prototype] {
      socket: [Function],
      abort: [Function],
      aborted: [Function],
      connect: [Function],
      error: [Function],
      timeout: [Function],
      prefinish: [Function: requestOnPrefinish]
    },
    _eventsCount: 7,
    _maxListeners: undefined,
    outputData: [],
    outputSize: 0,
    writable: true,
    _last: true,
    chunkedEncoding: false,
    shouldKeepAlive: false,
    useChunkedEncodingByDefault: false,
    sendDate: false,
    _removedConnection: false,
    _removedContLen: false,
    _removedTE: false,
    _contentLength: 0,
    _hasBody: true,
    _trailer: '',
    finished: true,
    _headerSent: true,
    socket: TLSSocket {
      _tlsOptions: [Object],
      _secureEstablished: true,
      _securePending: false,
      _newSessionPending: false,
      _controlReleased: true,
      secureConnecting: true,
      _SNICallback: null,
      servername: 'api-v2.soundcloud.com',
      alpnProtocol: false,
      authorized: true,
      authorizationError: null,
      encrypted: true,
      _events: [Object: null prototype],
      _eventsCount: 10,
      connecting: false,
      _hadError: false,
      _parent: null,
      _host: 'api-v2.soundcloud.com',
      _readableState: [ReadableState],
      readable: true,
      _maxListeners: undefined,
      _writableState: [WritableState],
      writable: false,
      allowHalfOpen: false,
      _sockname: null,
      _pendingData: null,
      _pendingEncoding: '',
      server: undefined,
      _server: null,
      ssl: [TLSWrap],
      _requestCert: true,
      _rejectUnauthorized: true,
      parser: null,
      _httpMessage: [Circular],
      [Symbol(res)]: [TLSWrap],
      [Symbol(verified)]: true,
      [Symbol(pendingSession)]: null,
      [Symbol(asyncId)]: 210925,
      [Symbol(kHandle)]: [TLSWrap],
      [Symbol(kSetNoDelay)]: false,
      [Symbol(lastWriteQueueSize)]: 0,
      [Symbol(timeout)]: null,
      [Symbol(kBuffer)]: null,
      [Symbol(kBufferCb)]: null,
      [Symbol(kBufferGen)]: null,
      [Symbol(kCapture)]: false,
      [Symbol(kBytesRead)]: 0,
      [Symbol(kBytesWritten)]: 0,
      [Symbol(connect-options)]: [Object]
    },
    connection: TLSSocket {
      _tlsOptions: [Object],
      _secureEstablished: true,
      _securePending: false,
      _newSessionPending: false,
      _controlReleased: true,
      secureConnecting: true,
      _SNICallback: null,
      servername: 'api-v2.soundcloud.com',
      alpnProtocol: false,
      authorized: true,
      authorizationError: null,
      encrypted: true,
      _events: [Object: null prototype],
      _eventsCount: 10,
      connecting: false,
      _hadError: false,
      _parent: null,
      _host: 'api-v2.soundcloud.com',
      _readableState: [ReadableState],
      readable: true,
      _maxListeners: undefined,
      _writableState: [WritableState],
      writable: false,
      allowHalfOpen: false,
      _sockname: null,
      _pendingData: null,
      _pendingEncoding: '',
      server: undefined,
      _server: null,
      ssl: [TLSWrap],
      _requestCert: true,
      _rejectUnauthorized: true,
      parser: null,
      _httpMessage: [Circular],
      [Symbol(res)]: [TLSWrap],
      [Symbol(verified)]: true,
      [Symbol(pendingSession)]: null,
      [Symbol(asyncId)]: 210925,
      [Symbol(kHandle)]: [TLSWrap],
      [Symbol(kSetNoDelay)]: false,
      [Symbol(lastWriteQueueSize)]: 0,
      [Symbol(timeout)]: null,
      [Symbol(kBuffer)]: null,
      [Symbol(kBufferCb)]: null,
      [Symbol(kBufferGen)]: null,
      [Symbol(kCapture)]: false,
      [Symbol(kBytesRead)]: 0,
      [Symbol(kBytesWritten)]: 0,
      [Symbol(connect-options)]: [Object]
    },
    _header: 'GET /tracks?ids=867665638%2C916488845%2C916541744%2C879502579%2C911544727%2C920224540%2C920227672%2C912258409%2C182859485%2C879588352%2C871408492%2C903271243%2C899338447%2C907746022%2C906903244%2C851514058%2C907746013%2C899541523%2C871778755%2C845983675%2C727730749%2C310455689%2C351996389%2C221308049%2C617744415%2C222335592%2C220021334%2C625572180%2C586430472%2C136515969%2C350544130%2C292528042%2C672835793%2C233271745%2C634818096%2C345014116%2C194674830%2C613079007%2C219240973%2C250830766%2C157946069%2C242071122%2C220940419%2C356904608%2C447921720%2C325876880%2C303520330%2C577977645%2C258583921%2C329292478%2C302734389%2C288394390%2C304744944%2C213828110%2C158384606%2C322256287%2C654816296%2C321085206%2C180526491%2C151836932%2C240510101%2C259932466%2C340422811%2C120417156%2C308158931%2C242970980%2C265004302%2C225515495%2C94470145%2C147235179%2C193641840%2C192956375%2C243086787%2C418406040%2C319849669%2C361549280%2C348894700%2C357040427%2C482437833%2C252638815%2C465024060%2C465229422%2C450607776%2C329511908%2C493285392%2C489363333%2C502948368%2C509000139%2C411189549%2C290210997%2C519271257%2C519206883%2C604903338%2C578505426%2C560864886%2C556088364%2C546188349%2C516324954%2C145367831%2C323733248%2C135322127%2C353880398%2C396944928%2C296968053%2C494976372%2C215558123%2C190445096%2C192408098%2C242672575%2C204778816%2C319887152%2C403960782%2C194510401%2C214816945%2C383884892%2C341315415%2C172595409%2C210014181%2C519749160%2C226139958%2C483679920%2C84118776%2C473381727%2C214140973%2C489177243%2C266963313%2C285262888%2C272020529&client_id=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX HTTP/1.1\r\n' +
      'Accept: application/json, text/plain, */*\r\n' +
      'User-Agent: axios/0.20.0\r\n' +
      'Host: api-v2.soundcloud.com\r\n' +
      'Connection: close\r\n' +
      '\r\n',
    _onPendingData: [Function: noopPendingOutput],
    agent: Agent {
      _events: [Object: null prototype],
      _eventsCount: 2,
      _maxListeners: undefined,
      defaultPort: 443,
      protocol: 'https:',
      options: [Object],
      requests: {},
      sockets: [Object],
      freeSockets: {},
      keepAliveMsecs: 1000,
      keepAlive: false,
      maxSockets: Infinity,
      maxFreeSockets: 256,
      maxCachedSessions: 100,
      _sessionCache: [Object],
      [Symbol(kCapture)]: false
    },
    socketPath: undefined,
    method: 'GET',
    insecureHTTPParser: undefined,
    path: '/tracks?ids=867665638%2C916488845%2C916541744%2C879502579%2C911544727%2C920224540%2C920227672%2C912258409%2C182859485%2C879588352%2C871408492%2C903271243%2C899338447%2C907746022%2C906903244%2C851514058%2C907746013%2C899541523%2C871778755%2C845983675%2C727730749%2C310455689%2C351996389%2C221308049%2C617744415%2C222335592%2C220021334%2C625572180%2C586430472%2C136515969%2C350544130%2C292528042%2C672835793%2C233271745%2C634818096%2C345014116%2C194674830%2C613079007%2C219240973%2C250830766%2C157946069%2C242071122%2C220940419%2C356904608%2C447921720%2C325876880%2C303520330%2C577977645%2C258583921%2C329292478%2C302734389%2C288394390%2C304744944%2C213828110%2C158384606%2C322256287%2C654816296%2C321085206%2C180526491%2C151836932%2C240510101%2C259932466%2C340422811%2C120417156%2C308158931%2C242970980%2C265004302%2C225515495%2C94470145%2C147235179%2C193641840%2C192956375%2C243086787%2C418406040%2C319849669%2C361549280%2C348894700%2C357040427%2C482437833%2C252638815%2C465024060%2C465229422%2C450607776%2C329511908%2C493285392%2C489363333%2C502948368%2C509000139%2C411189549%2C290210997%2C519271257%2C519206883%2C604903338%2C578505426%2C560864886%2C556088364%2C546188349%2C516324954%2C145367831%2C323733248%2C135322127%2C353880398%2C396944928%2C296968053%2C494976372%2C215558123%2C190445096%2C192408098%2C242672575%2C204778816%2C319887152%2C403960782%2C194510401%2C214816945%2C383884892%2C341315415%2C172595409%2C210014181%2C519749160%2C226139958%2C483679920%2C84118776%2C473381727%2C214140973%2C489177243%2C266963313%2C285262888%2C272020529&client_id=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
    _ended: true,
    res: IncomingMessage {
      _readableState: [ReadableState],
      readable: false,
      _events: [Object: null prototype],
      _eventsCount: 3,
      _maxListeners: undefined,
      socket: [TLSSocket],
      connection: [TLSSocket],
      httpVersionMajor: 1,
      httpVersionMinor: 1,
      httpVersion: '1.1',
      complete: true,
      headers: [Object],
      rawHeaders: [Array],
      trailers: {},
      rawTrailers: [],
      aborted: false,
      upgrade: false,
      url: '',
      method: null,
      statusCode: 400,
      statusMessage: 'Bad Request',
      client: [TLSSocket],
      _consuming: false,
      _dumped: false,
      req: [Circular],
      responseUrl: 'https://api-v2.soundcloud.com/tracks?ids=867665638%2C916488845%2C916541744%2C879502579%2C911544727%2C920224540%2C920227672%2C912258409%2C182859485%2C879588352%2C871408492%2C903271243%2C899338447%2C907746022%2C906903244%2C851514058%2C907746013%2C899541523%2C871778755%2C845983675%2C727730749%2C310455689%2C351996389%2C221308049%2C617744415%2C222335592%2C220021334%2C625572180%2C586430472%2C136515969%2C350544130%2C292528042%2C672835793%2C233271745%2C634818096%2C345014116%2C194674830%2C613079007%2C219240973%2C250830766%2C157946069%2C242071122%2C220940419%2C356904608%2C447921720%2C325876880%2C303520330%2C577977645%2C258583921%2C329292478%2C302734389%2C288394390%2C304744944%2C213828110%2C158384606%2C322256287%2C654816296%2C321085206%2C180526491%2C151836932%2C240510101%2C259932466%2C340422811%2C120417156%2C308158931%2C242970980%2C265004302%2C225515495%2C94470145%2C147235179%2C193641840%2C192956375%2C243086787%2C418406040%2C319849669%2C361549280%2C348894700%2C357040427%2C482437833%2C252638815%2C465024060%2C465229422%2C450607776%2C329511908%2C493285392%2C489363333%2C502948368%2C509000139%2C411189549%2C290210997%2C519271257%2C519206883%2C604903338%2C578505426%2C560864886%2C556088364%2C546188349%2C516324954%2C145367831%2C323733248%2C135322127%2C353880398%2C396944928%2C296968053%2C494976372%2C215558123%2C190445096%2C192408098%2C242672575%2C204778816%2C319887152%2C403960782%2C194510401%2C214816945%2C383884892%2C341315415%2C172595409%2C210014181%2C519749160%2C226139958%2C483679920%2C84118776%2C473381727%2C214140973%2C489177243%2C266963313%2C285262888%2C272020529&client_id=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
      redirects: [],
      [Symbol(kCapture)]: false
    },
    aborted: false,
    timeoutCb: null,
    upgradeOrConnect: false,
    parser: null,
    maxHeadersCount: null,
    reusedSocket: false,
    _redirectable: Writable {
      _writableState: [WritableState],
      writable: true,
      _events: [Object: null prototype],
      _eventsCount: 2,
      _maxListeners: undefined,
      _options: [Object],
      _ended: true,
      _ending: true,
      _redirectCount: 0,
      _redirects: [],
      _requestBodyBuffers: [],
      _onNativeResponse: [Function],
      _currentRequest: [Circular],
      _currentUrl: 'https://api-v2.soundcloud.com/tracks?ids=867665638%2C916488845%2C916541744%2C879502579%2C911544727%2C920224540%2C920227672%2C912258409%2C182859485%2C879588352%2C871408492%2C903271243%2C899338447%2C907746022%2C906903244%2C851514058%2C907746013%2C899541523%2C871778755%2C845983675%2C727730749%2C310455689%2C351996389%2C221308049%2C617744415%2C222335592%2C220021334%2C625572180%2C586430472%2C136515969%2C350544130%2C292528042%2C672835793%2C233271745%2C634818096%2C345014116%2C194674830%2C613079007%2C219240973%2C250830766%2C157946069%2C242071122%2C220940419%2C356904608%2C447921720%2C325876880%2C303520330%2C577977645%2C258583921%2C329292478%2C302734389%2C288394390%2C304744944%2C213828110%2C158384606%2C322256287%2C654816296%2C321085206%2C180526491%2C151836932%2C240510101%2C259932466%2C340422811%2C120417156%2C308158931%2C242970980%2C265004302%2C225515495%2C94470145%2C147235179%2C193641840%2C192956375%2C243086787%2C418406040%2C319849669%2C361549280%2C348894700%2C357040427%2C482437833%2C252638815%2C465024060%2C465229422%2C450607776%2C329511908%2C493285392%2C489363333%2C502948368%2C509000139%2C411189549%2C290210997%2C519271257%2C519206883%2C604903338%2C578505426%2C560864886%2C556088364%2C546188349%2C516324954%2C145367831%2C323733248%2C135322127%2C353880398%2C396944928%2C296968053%2C494976372%2C215558123%2C190445096%2C192408098%2C242672575%2C204778816%2C319887152%2C403960782%2C194510401%2C214816945%2C383884892%2C341315415%2C172595409%2C210014181%2C519749160%2C226139958%2C483679920%2C84118776%2C473381727%2C214140973%2C489177243%2C266963313%2C285262888%2C272020529&client_id=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
      [Symbol(kCapture)]: false
    },
    [Symbol(kCapture)]: false,
    [Symbol(kNeedDrain)]: false,
    [Symbol(corked)]: 0,
    [Symbol(kOutHeaders)]: [Object: null prototype] {
      accept: [Array],
      'user-agent': [Array],
      host: [Array]
    }
  },
  response: {
    status: 400,
    statusText: 'Bad Request',
    headers: {
      'strict-transport-security': 'max-age=63072000',
      vary: 'Origin',
      via: '1.1 e57fe70b9ed429fb51b4b2432cadc67b.cloudfront.net (CloudFront)',
      'x-amz-cf-id': 'YbS6yqSmjIrGDdLZqKdTd3QHiqETWVPsKNUV43eE_Zak-hrQqsoAAQ=='
    config: {
      url: 'https://api-v2.soundcloud.com/tracks?ids=867665638%2C916488845%2C916541744%2C879502579%2C911544727%2C920224540%2C920227672%2C912258409%2C182859485%2C879588352%2C871408492%2C903271243%2C899338447%2C907746022%2C906903244%2C851514058%2C907746013%2C899541523%2C871778755%2C845983675%2C727730749%2C310455689%2C351996389%2C221308049%2C617744415%2C222335592%2C220021334%2C625572180%2C586430472%2C136515969%2C350544130%2C292528042%2C672835793%2C233271745%2C634818096%2C345014116%2C194674830%2C613079007%2C219240973%2C250830766%2C157946069%2C242071122%2C220940419%2C356904608%2C447921720%2C325876880%2C303520330%2C577977645%2C258583921%2C329292478%2C302734389%2C288394390%2C304744944%2C213828110%2C158384606%2C322256287%2C654816296%2C321085206%2C180526491%2C151836932%2C240510101%2C259932466%2C340422811%2C120417156%2C308158931%2C242970980%2C265004302%2C225515495%2C94470145%2C147235179%2C193641840%2C192956375%2C243086787%2C418406040%2C319849669%2C361549280%2C348894700%2C357040427%2C482437833%2C252638815%2C465024060%2C465229422%2C450607776%2C329511908%2C493285392%2C489363333%2C502948368%2C509000139%2C411189549%2C290210997%2C519271257%2C519206883%2C604903338%2C578505426%2C560864886%2C556088364%2C546188349%2C516324954%2C145367831%2C323733248%2C135322127%2C353880398%2C396944928%2C296968053%2C494976372%2C215558123%2C190445096%2C192408098%2C242672575%2C204778816%2C319887152%2C403960782%2C194510401%2C214816945%2C383884892%2C341315415%2C172595409%2C210014181%2C519749160%2C226139958%2C483679920%2C84118776%2C473381727%2C214140973%2C489177243%2C266963313%2C285262888%2C272020529&client_id=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
      method: 'get',
      headers: [Object],
      transformRequest: [Array],
      transformResponse: [Array],
      timeout: 0,
      adapter: [Function: httpAdapter],
      xsrfHeaderName: 'X-XSRF-TOKEN',
      maxBodyLength: -1,
    },
      _events: [Object: null prototype],
      _maxListeners: undefined,
      writable: true,
      chunkedEncoding: false,
      useChunkedEncodingByDefault: false,
      _removedConnection: false,
      _contentLength: 0,
      _trailer: '',
      _headerSent: true,
      connection: [TLSSocket],
        'Accept: application/json, text/plain, */*\r\n' +
        'User-Agent: axios/0.20.0\r\n' +
        '\r\n',
      agent: [Agent],
      socketPath: undefined,
      insecureHTTPParser: undefined,
      _ended: true,
      timeoutCb: null,
      [Symbol(kNeedDrain)]: false,
      [Symbol(kOutHeaders)]: [Object: null prototype]
    data: {}
  isAxiosError: true,
}

Thanks for bringing this up, I'll take a look at it later when I get the chance. Given that the first two playlists you've linked have 100+ tracks and the third playlist — which works — only has 48, my speculation is that the problem is the number of tracks in the playlists.
The SoundCloud API endpoint for retrieving track information might have a limit on how many tracks can be queried at once, hopefully a simple solution like distributing the tracks among multiple API requests will work.

Thanks for taking a look at it.
I think you might be on to something. I created a new playlist and ran into issues when the number of tracks > 55.
Hopefully that helps.

Just confirmed that the SoundCloud API endpoint used to retrieve track information in getSetInfo() is limited to only 50 tracks at a time. Info for the first 5 is supplied by the initial request, so it makes sense that this function breaks when the track count of a playlist is 56 or greater.
I altered getSetInfo() to make multiple requests of maximum size 50 tracks if the track length of the playlist is greater than 55.

@supergrov3r Just published v0.1.9 which includes a fix for this problem.

Confirmed v0.1.9 fixes this - thanks again!


how to train the hlg？

is there a recipe of training hlg on aishell？

Please have a look at here to see how a G is created.
After having the G, you can compose it with L and H to construct HLG. This step is described here

thanks!
but when stage 9 ,appeared the following：
2023-06-21 19:35:49,288 INFO [compile_hlg.py:122] LG shape after k2.remove_epsilon: (2842839, None)
Traceback (most recent call last):
File "./local/compile_hlg.py", line 167, in
main()
File "./local/compile_hlg.py", line 157, in main
HLG = compile_HLG(lang_dir, args.lm)
File "./local/compile_hlg.py", line 124, in compile_HLG
LG = k2.connect(LG)
File "/home/shiyanshi/anaconda3/envs/k2/lib/python3.8/site-packages/k2/fsa_algo.py", line 522, in connect
if fsa.properties & fsa_properties.ACCESSIBLE != 0 and
File "/home/shiyanshi/anaconda3/envs/k2/lib/python3.8/site-packages/k2/fsa.py", line 446, in properties
raise RuntimeError(
RuntimeError: The fsa attribute (labels) has been inappropriately modified like:
fsa.labels[xxx] = yyy
The correct way should be like:
labels = fsa.labels
labels[xxx] = yyy
fsa.labels = labels

@boshs It looks the same as https://github.com/k2-fsa/icefall/pull/1039. Updating your k2 version may solve it.

conda search -c k2-fsa k2 cannot find a version of 1.24.3

conda search -c k2-fsa k2 cannot find a version of 1.24.3

You can find pre-built wheels here https://huggingface.co/csukuangfj/k2/blob/main/cuda.md


[WIP] Delete (Cluster)Role(Bindings) as a final cleanup step.

This allows us to take advantage of the permissions granted to cluster admins
when performing cleanup. If the approach in #109
is approved, this will become necessary. Additionally, it makes sense to remove roles as the final
step to allow human Operators to modify any resources they may have permissions on as a result of the Knative installation (that is, we should not remove any access until we are 'almost done' cleaning up).
/lint
Proposed Changes
*Delete roles and rolebindings as a final cleanup step.
Release Note
Delete roles and rolebindings as a final cleanup step.

Whoops, looks like I need to update manifestival, one moment.

Blocked on https://github.com/knative/eventing-operator/pull/142

is this still WIP?

/assign @matzew
See also https://github.com/knative/serving-operator/pulls?q=is%3Apr+is%3Aclosed

@googlebot I consent

/approve
/lgtm


Antigravity bubble stops working when more than 1 is placed

Description (Required)

We've noticed in our testing the antigravity bubble works fine until a second one is placed.
I had one player on one side of the world place one, it worked fine. A second player (no where near them, but in the same world) placed one in their area and both antigravity bubbles stopped working. One player's flight kept shutting off while the other player couldn't even get up off the ground. Once one player picked their bubble up, the other one started working fine.
Steps to reproduce the Issue (Required)

Place two antigravity bubbles down in two different areas.
Expected behavior (Required)

They should both be able to fly in their bubble area at the same time.
Server Log / Error Report

No errors were found.
Environment (Required)

Minecraft Version: 1.16.5, paper 584
CS-CoreLib Version: N/A
Slimefun Version: Slimefun DEV - 878
Plugin Version:  DynaTech vDEV - 99

Fixed in 9356d17


check client support for multiline cap ls 302

Fixing #594 created potential incompatibilities with buggy clients. In particular, the latest release of The Lounge doesn't handle it correctly: https://github.com/thelounge/thelounge/issues/3500
We should investigate some or all of the following clients:

[ ] adiirc
[ ] hexchat
[ ] irssi (git)
[ ] mirc
[ ] quassel
[ ] textual
[ ] weechat

If anyone wants to help test, I registered an account sasltest on testnet.oragono.io, with password z3yhisXR2VPBG.

weechat 2.6-2 appears to work.

weechat 1.9.x works. Latest textual works.

HexChat 2.14.2 works.

Kiwi does not work: https://github.com/kiwiirc/kiwiirc/issues/1193

adiirc works.

Quassel works just fine, both with old (< 0.14) and new (0.14 and later) IRC parsers

works for bitbot https://gist.github.com/jesopo/4849d88eb939b3bd81e3b8c1e99ec54e

@AndrioCelos confirms that mirc works. I think we're good here.

Subsequently found a HexChat issue: https://github.com/hexchat/hexchat/issues/2398


Add indeterminate prop to Form.Checkbox

I can fill a PR for this! Is it welcoming?
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#indeterminate

This project is dead


User profile page filter font-size is too large (inconsistency with other UI elements)

@mradkov @AtanasKrondev, we should fix these as soon as we have time.
Describe the bug
Design inconsitencies and visual bugs.

User profile filters font size is too large.
Balance and Joined are not displayed aligned to bottom of user avatar (check margins according to design provided).
Where is Location? Should implement this also within user profile settings (auto filled by geo location tracking if available).
Extended options and date of the tip (within a feed item) are not displayed according to design (2 lines).
Within the tip view we display Fellow superhero when .chain name is missing (such as on the user profile page).

To Reproduce
Go to User Profile Page.
Expected behavior
FIlters style should be consistent with the other similar Superhero UI elements such as filters on home page (currently "Tips").
Other issues are described in the screenshot below.
Screenshots

resolved by #834


ARXIVNG-1347 ARXIVNG-1278 cross-list searches

Also delivers ARXIVNG-1348 (update requests due to security vulnerability).

Can search by cross-list category on advanced search interface.
"All" search includes cross-list category, mostly (see below).

Limitation: the current document mapping for secondaries is not quite the same as the mapping for primaries, qua normalization and adding to combined field. The only other thing to potentially do here is change the mapping and reindex, which we could do via the reindex API rather than from scratch (see reindex.py in root of the project).
"primary_classification": {
          "type": "object",
          "properties": {
            "group": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "keyword"
                },
                "name": {
                  "type": "keyword"
                }
              }
            },
            "archive": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "keyword",
                  "normalizer": "simple",
                  "copy_to": ["combined"]
                },
                "name": {
                  "type": "keyword",
                  "normalizer": "simple",
                  "copy_to": ["combined"]
                }
              }
            },
            "category": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "keyword",
                  "normalizer": "simple",
                  "copy_to": ["combined"]
                },
                "name": {
                  "type": "keyword",
                  "normalizer": "simple",
                  "copy_to": ["combined"]
                }
              }
            }
          }
        },
        "secondary_classification": {
          "type": "nested",
          "properties": {
            "group": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "keyword"
                },
                "name": {
                  "type": "keyword"
                }
              }
            },
            "archive": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "keyword"
                },
                "name": {
                  "type": "keyword"
                }
              }
            },
            "category": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "keyword"
                },
                "name": {
                  "type": "keyword"
                }
              }
            }
          }
        },

So my proposal is basically:

Update the mapping for secondary to match the mapping for primary
Perform a reindex operation, which will create a new index (say, arxiv0.5)
We can test and stage against the new index while leaving the production site on the old index
Deploy search-0.5 to production if and when we're happy. The code as written should work against either index, except that the behavior with the old index won't really match user expectations.
Switch over to the new index in production.

And please ignore the changes to schema/ -- that was from something else, and I forgot that I hadn't committed them... 👎

https://culibrary.atlassian.net/browse/ARXIVNG-1357


Consultation on blank parameters in uncertainty analysis

a) Hello, may I ask if blank parameter must be added in uncertainty analysis (https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/blob/master/biorefineries/lactic/models.py#L226-L231)? I have compared the results of the two cases with blank parameters and without blank parameters, and the rho values between some parameters and indicators are different in the two cases. For example, after uncertainty analysis without blank parameters is performed, the rho between parameters and indicators is 0.13 (0.1). It indicates that the index is sensitive to the parameters. But after adding blank parameters to perform uncertainty analysis, the rho is reduced to 0.06 (less than 0.1), indicating that the index is not sensitive to the parameters. The above two conclusions are completely opposite, which should prevail?
b) If blank parameters are added, is it OK for the rho between blank parameters and indicators to be slightly higher than 0.05 after uncertainty analysis? In this case, is the rho value between the remaining parameters and indicators and the conclusion that whether the indicators are sensitive to the parameters still valid? Is the change value in the indicators when shifting the baseline assumption to the minimum or maximum value of each individual parameter still right?

You don't need to have blank parameters, I sometimes add one to check if there are bugs in the model.
There's no hard science behind the threshold of 0.1 for rho. Check the p value for those parameters. rho tells you the sensitivity and p tells you the significance of that sensitivity.
You can also run single-point sensitivity analysis - just change one parameter and see how the results change - to see whether the parameter is really affecting the results.

From: zasddsgg @.>
Sent: Tuesday, December 10, 2024 8:06 AM
To: BioSTEAMDevelopmentGroup/Bioindustrial-Park @.>
Cc: Subscribed @.***>
Subject: [BioSTEAMDevelopmentGroup/Bioindustrial-Park] Consultation on blank parameters in uncertainty analysis (Issue #180)
a) Hello, may I ask if blank parameter must be added in uncertainty analysis (https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/blob/master/biorefineries/lactic/models.py#L226-L231)? I have compared the results of the two cases with blank parameters and without blank parameters, and the rho values between some parameters and indicators are different in the two cases. For example, after uncertainty analysis without blank parameters is performed, the rho between parameters and indicators is 0.13 (0.1). It indicates that the index is sensitive to the parameters. But after adding blank parameters to perform uncertainty analysis, the rho is reduced to 0.06 (less than 0.1), indicating that the index is not sensitive to the parameters. The above two conclusions are completely opposite, which should prevail?
b) If blank parameters are added, is it OK for the rho between blank parameters and indicators to be slightly higher than 0.05 after uncertainty analysis? In this case, is the rho value between the remaining parameters and indicators and the conclusion that whether the indicators are sensitive to the parameters still valid? Is the change value in the indicators when shifting the baseline assumption
to the minimum or maximum value of each individual parameter still right?
—
Reply to this email directly, view it on GitHubhttps://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/issues/180, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ALV5VLIZCBZS3LXLB7INLZD2E3RNFAVCNFSM6AAAAABTLD42S2VHI2DSMVQWIX3LMV43ASLTON2WKOZSG4ZTAMBXGQ2TKNY.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Thank you for your answer. May I ask you the following questions. Thanks for your help.
a) Whether the ρ (such as “To systematically assess the cost and environmental impact drivers of the biorefinery, we conducted a sensitivity analysis using Spearman’s rank correlation coefficients, where the absolute value of Spearman’s ρ represents the strength of the rank correlation and the symbol (+ or −) of ρ represents positive or negative correlation”) in the article (Sustainable Lactic Acid Production from Lignocellulosic Biomass) refers to rho or p, and whether the ρ in Figure 3 of the article and in the text below refer to rho or p?

b) How much rho and p are higher respectively means significant, and how much rho and p are lower respectively means not significant?
c) In the code of lactic acid uncertainty analysis (https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/blob/master/biorefineries/lactic/analyses/1_uncertainties.py#L96), if I want to see both the rho and the p, how do I add the p?
d) Therefore, when performing uncertainty analysis, we do not need to add blank parameter, but just add the other each parameters to be analyzed (such as the parameters in the “Table S5. List of parameters included in the uncertainty analysis” in article Sustainable Lactic Acid Production from Lignocellulosic Biomass) in the code like https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/blob/master/biorefineries/lactic/models.py#L285-L289, right?
e) What does the article mean that the rho above 0.1 is the most sensitive (“MPSP was most sensitive (i.e., absolute value of Spearman’s ρ ≥ 0.1) to 12 of the examined parameters”), and when can I use this statement?
f) If I do not look at p, only look at the absolute value of ρ. When the absolute value of ρ is higher than 0.1, it is said that the parameter is non-negligible, is it right?

ρ is rho, Spearman's rank correlation coefficient. Please take some statistic courses or read some reference materials on what these parameters mean.
The value of rho only makes sense in a comparably context, i.e., you need to decide for your case what is significant.

Thanks for your answer. I have learned relevant materials.
a) After the uncertainty analysis performed by BioSTEAM, if the absolute value of rho between parameter and indicator is higher than 0.1, and p is less than 0.05, it indicates that indicator is sensitive to parameter, right?
b) In the code of lactic acid uncertainty analysis (https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/blob/master/biorefineries/lactic/analyses/1_uncertainties.py#L96), if I want to see both the rho and the p, could I consult you how do I add the p?
c) When performing uncertainty analysis, we do not need to add blank parameter, but just add the other each parameters to be analyzed (such as the parameters in the “Table S5. List of parameters included in the uncertainty analysis” in article Sustainable Lactic Acid Production from Lignocellulosic Biomass) in the code like https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/blob/master/biorefineries/lactic/models.py#L285-L289, right?
d) What does the article mean that the rho above 0.1 is the most sensitive (“MPSP was most sensitive (i.e., absolute value of Spearman’s ρ ≥ 0.1) to 12 of the examined parameters”), and when can I use this statement?
e) If I do not look at p, only look at the absolute value of ρ. When the absolute value of ρ is higher than 0.1, it is said that the parameter is non-negligible, is it right?
f) For "The value of rho only makes sense in a comparably context, i.e., you need to decide for your case what is significant.
", does it mean that after performing uncertainty analysis, in all parameters, if the absolute value of rho of the parameter is the highest and the p-value is less than 0.05, does it mean that the indicator is most sensitive to the parameter? If the rho of the parameter is not so high, but the absolute value is still higher than 0.1, and the p-value is still less than 0.05, it means that the indicator is also sensitive to the parameter, but not the most sensitive, it is non-negligible sensitive, right?
g) If we combine the results of single point sensitivity, could I consult you how much does the indicator float to the change of the parameter to show that the indicator is sensitive to the parameter?

Hello, may I ask you the following questions. Thanks for your help.
a) Will the boxplot of GWP be drawn in origin software with the original data points of 1000 simulations, or will it be directly drawn in origin software with the corresponding data points [0, 0.05, 0.25, 0.5, 0.75, 0.95, 1] in the LCA percentiles data table exported by BioSTEAM.
b) Some Monte Carlo simulations are 2000 times (HP model), some are 1000 times (lactic acid model), is there any standard for how many simulations?
c) Blank parameters are added to both HP models and lactic acid models when performing uncertainty analysis. Whether blank parameters are added will affect the rho value of some parameters and indicators, and even affect whether the absolute value is higher than 0.1. I am not sure whether blank parameters need to be added in uncertainty analysis and global sensitivity analysis.
d) If blank parameters are added, how much lower should the rho values between blank parameters and each parameter be to show that the Monte Carlo simulation results are credible?
e) If blank parameters are added, are the plots and conclusions of the global sensitivity analysis for each parameter in the paper based on Monte Carlo simulation results with blank parameters or Monte Carlo simulation results without blank parameters (Monte Carlo simulation performed with only other parameters).
Sustainable Lactic Acid Production from Lignocellulosic Biomass

Sustainable Production of Acrylic Acid via 3-Hydroxypropionic Acid from Lignocellulosic Biomass

f) The type of blank parameter used in HP model is isolated and element is TEA (https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/tree/master/biorefineries/HP/analyses/full/parameter_distributions/HP_salt_product), but the type of lactic acid model is coupled and element is feedstock (https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/blob/master/biorefineries/lactic/models.py#L226-L228). Could I consult you how should blank parameters be set?

If you have questions on OriginPro, please send inquires to them.
For simulation numbers, there are not standards, it depends on your system and how many uncertain parameters you have, etc., please decide based on your needs.
We added blank parameters for the considerations I mentioned, since you are confused, just don't add them, it doesn't help you.

Thanks for your answer. For "Will the boxplot of GWP be drawn in origin software with the original data points of 1000 simulations obtained by BioSTEAM, or will it be directly drawn in origin software with the corresponding data points [0, 0.05, 0.25, 0.5, 0.75, 0.95, 1] in the LCA percentiles data table exported by BioSTEAM". May I ask which method you use.


Working on documentation.

Codecov Report

Merging #110 (e71be8b) into dev (bd29d92) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev     #110   +/-   ##
=======================================
  Coverage   76.96%   76.96%
=======================================
  Files          23       23
  Lines        1155     1155
  Branches      188      185    -3
=======================================
  Hits          889      889
- Misses        237      239    +2
+ Partials       29       27    -2

Impacted Files
Coverage Δ

api/resources/api_manager.py
60.36% <0.00%> (ø)

api/resources/summarization_gene_expression.py
41.66% <0.00%> (ø)

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 bd29d92...e71be8b. Read the comment docs.


Completion of error handling

Would you like to add more error handling for return values from a call of the function "fputs"?

Would you elaborate on this?

I suggest to avoid ignorance of return values generally.
Would you like to detect every error situation as early as possible?

Sorry I wasn't clear. How would you handle the EOF return value ?

Would you like to indicate a file output failure by a corresponding program exit status?


feature: introduce user-customizable ui strings

this PR introduces the ability to change the emojis that are used in the UI, as well as the text of the "post" button.

SHIP IT


Open-file palette cannot process dot-slash relative file paths ./

VSCode Version: any
OS Version: any macOS

Steps to Reproduce:

open file palette (⌘P)
paste ./path/to/file.js

Does this issue occur when all extensions are disabled?: Yes

I would expect this to work relative to the root folder, but it looks like you aren't, since ./actions/Delivery.coffee is under frontend/projects, not the root. How should ./ be interpreteted?

I wanna have custom project root in this case. I expect project root workspace config.

Well, something like that is still out of scope

What about mono-repos?
We have a big mono-repo. So my project is a sub-dir in it.
I wanna work in the my sub-dir mainly, but I also want to access some things out the project directory, like libraries sources.

+1
Every time I copy paste a path, seems silly that vscode can not interpret it. Need remove the ./ out of ./path/file each time.

./path are very common to find in output of many shell commands. We shouldn't be punished for copy-pasting paths that start with ./. This works as intended in IntelliJ IDEA.
@roblourens Please reopen this ticket and let the community have at least hope this isn't perma-rejected.

Often times I find myself trying to open files by leading with ../ only to find it not working ... Please re-open and fix.


Unrecognized frame and unrecognized location format

Need a format for unrecognized frames and unrecognized location. They will mostly contain some unformatted string, so it should be escaped.
The default format is: at fn (loc). We could use at fn (loc) by the unrecognized location and at [frame] by the unrecognized frame. But first I have to check the v8 stack api, maybe it has a better format.

The new format must use Stack(UnrecognizedFrame(frameString)) or something like that. It should remove the at from the beginning if the environment has at in the frame string and add the at [frameString] by formatting.

The location should use UnrecognizedLocation(locationString) if it is not recognized by the location pattern. It could use fn ([loc]) or something like that. By native it uses this. Note, that the [] should be removed and added again if it is present.

Note, that Opera does not necessary support the Chromium stack format, even if it supports captureStackTrace.

I am not sure which part of the code should remove the "at " from the unrec. frame and the "[]" from the unrec. loc. Maybe the parser.

I implemented it in the classes, not in the parser.


Fixed runtime error when running single node (non-MPI) version.

I found the runtime error in testsuites 111, 112, and 113 when running single node (non-MPI) version.
This PR fixed the communicator initialization in src/GCEED/modules/init_sendrecv.f90, but testsuites 112 and 113 with non-MPI version failed at the verification phase...

Thank you for fixing the problem, @yhirokawa san. I'll take care of this PR.

Probably, the test caused a computing error (by omp reduction clause?) in GPU test node. I'll re-execute the test.

test this please

I found some errors and bugs in run-time. I'll close this PR and investigate the these problems...


fix link for Pachyderm language clients docs

change clients.html to clients.md

@yehiyam @dwhitena This actually can just be an absolute link to our docs (not GH) instead of relative link, but should still have the .html suffix.
See: http://pachyderm.readthedocs.io/en/latest/fundamentals/getting_data_into_pachyderm.html#pachyderm-language-clients


Refactor accumulate

Codecov Report
Attention: Patch coverage is 96.29630% with 1 line in your changes missing coverage. Please review.

Project coverage is 83.27%. Comparing base (7927d04) to head (4c8e758).

Files with missing lines
Patch %
Lines

src/empirical/algorithms.jl
96.29%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #28      +/-   ##
==========================================
- Coverage   83.58%   83.27%   -0.32%
==========================================
  Files          33       33
  Lines         786      795       +9
==========================================
+ Hits          657      662       +5
- Misses        129      133       +4

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


jquery validation plugin and select2

It seems jquery validation plugin and select2 don't work together well. In particular, I was trying to make a text field turned into a multi-select required. Tried several things, including checking the selected index, but it looks like select2 changes attributes that jquery validator relies. I found a workaround, but as this seems to be a very broadly used lib, might be nice to support it.

I found a very nice way to implement this for me. Below I add the following validator default to my master page.  What this does is, for everything that contains this custom class "selectList", it forces it to validate it, while still ignoring all other hidden fields.
If you ignore all hidden fields, things that you do not want to be validated are validated, so this only validates things that contain the selectList class. Just be sure to add the class "selectList" to your select2 select list.
$.validator.setDefaults({ ignore: ":not(.selectList)" });
if ($('form').valid())
{
//do stuff
}
else
{
$("form").validate().showErrors();
}

Hi ..
I am using cofffee script for bootstrap validation.
$("#traveler_sign_up").bootstrapValidator
live: 'enabled'
feedbackIcons:
  valid: 'glyphicon glyphicon-ok',
  invalid: 'glyphicon glyphicon-remove',
  validating: 'glyphicon glyphicon-refresh'

ignore:  null
fields:
# Validation for email
  "traveller[first_name]":
    message: 'Please enter first name'
    validators:
      notEmpty:
        message: 'Please enter first name'

  "traveller[event_type_ids][]":
    message: 'Please select interested events'
    validators:
      notEmpty:
        message: "Please select atleast one procedure.."

And here I have used select 2 for event_type_ids . But validations are not working for select 2 . also I have tried ignore: ' ' also. But that also not worked for me.

just need to add excluded:'disabled', in your bootstrap validator.
$('form').bootstrapValidator({
excluded: ':disabled',
});

https://jsfiddle.net/vol7ron/Lvx6ru4j/


[App Performance] Profile the time it takes for the app to save a response from the server

Describe the enhancement

The FHIR core performs a comprehensive initial sync. This sync gets the following items.

Application Composition resource (Based on the Application ID)
Application Congis referenced on the Composition
Patient data based on the sync configs

Implementation

[ ] Review the time and device resources it takes for the application to save the response from the server.

[ ] The time and device resources to save the Composition resource after the response from the server
[ ] The time and device resources to save the Application configs  defined in the Composition
[ ] The time and device resources to save the Patient data. Here we can look at 3 different resources

[ ] Patient resource.
[ ] Group resource.
[ ] Task resource.
[ ] Observation resource.
[ ] CarePlan resource.
[ ] MeasureReports resource

Device configuration

RAM 3GB
ROM 64GB

Expected results.

Profiling documentation can be done by recording the following

[ ] Time and device resources it takes to save each response type as defined in the implementation section
[ ] Amount of resources used by the device for each request.  i.e RAM & CPU

@ekigamba let's add a perf test to close this out

sorry, nevermind, let's save profiling that requires a remote server for later


Fixed issue5145 by changing the font size

Summary
Fixes #5145
Details and comments
Reduced the font size of the axis from 18 to 8 so that the values are indicated clearly and are displayed without any overlap

the solution probably has to be something adaptive, not hardcoding a smaller font.

Actually even the y-axis seemed too jumbled up and by reducing the font the plot looked much neater. So I thought that it would be better if the default font would be changed.
Do you recommend a relatively smaller font only when the dt is passed then?

No i was just suggesting that the font might need to be a function of canvas size and how many point are plotted. It needs to be tested for a few plots of different sizes and options to see what looks good. If you find a setting that is generally good, then I’m fine. Thanks for your contribution.

On Oct 5, 2020, at 1:23 AM, Tanya Garg<EMAIL_ADDRESS>wrote:

Actually even the y-axis seemed too jumbled up and by reducing the font the plot looked much neater. So I thought that it would be better if the default font would be changed.
Do you recommend a relatively smaller font only when the dt is passed then?
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub, or unsubscribe.

Also probably not showing all digits, but just a few would help here. Angling the text could also be fruitful here depending on the number of labels.

Should something be done with the y-axis too?

@tgag17 are you still working on this? Thanks for the work so far, it would be great if you could share some screenshots testing out the plots with different options to see if the new default font size you've proposed works for a range of plot options. And yes feel free to edit the y axis as well if you like, again please share some screenshots of different options so we can compare

Hi! @javabster I am not sure but I think the issue has been solved with the addition and use of pulse_v2 instead of the legacy pulse drawer. If possible could you please confirm, if the issue is still relevant?
Thanks!

Hi! @javabster I am not sure but I think the issue has been solved with the addition and use of pulse_v2 instead of the legacy pulse drawer. If possible could you please confirm, if the issue is still relevant?
Thanks!

Ah yes you're quite right @tgag17 thank-you! I will close this PR and issue, please feel free to choose another good first issue if you would like something else to work on :)


Can not register on the site

Hello! I registered myself as a Junior team yesterday (Rinat Babichev BS 4 Innopolis University student, Russia) however, I still did not get any response in my mailbox
Can you please check?

Dear organizer, .Can You please confirm the new registers?Thanks and Best regards..

@cybervalient are you still too not registered?

I not registered too!!


Prepare to merge in opossum-examples repository

[ ] Remove the last-five directory
[ ] Remove the debuglog directory
[ ] Analyze how to combine (if it makes sense) client-server-error-rate and client-server
[ ] Analyze how to combine (if it makes sense) multiple-express and two-express
[ ] Rename and maybe improve the using-with-ts
[ ] Remove  half-open-monitor
[ ] Remove file-handling

Going to update to better fit the issue since we are going to archive instead of deleting the repository.

For the multiple-express and two-express, we are going to use the multiple-express example only. PR sent to opossum-examples

The database-timeout docs were improved a bit with a context about the example and with missing mysql command to setup.
PR can to opossum-examples to be done after the merge of the multiple-express PR.

The client-server is sort of covered by the multiple-express example and the client-server-error-rate uses the unofficial debug branch...
I start to think that makes no much sense to add those to opossum-examples.
@alexalikiotis Please let me know what do you think.


Gordon 2018

Can't attach the final gif because it's too big. See Slack.

Final workflow for future reference:
# If you changed the dates,  you need to rebuild the yml
scmake('6_storm_gif_tasks.yml')

# Rebuilding the whole gif after changes to figure

# rebuild frames
scmake('6_storm_gif_tasks', '6_storm_gif_tasks.yml')

# rebuild intro frames
scmake('6_visualize/log/6_intro_gif_tasks.ind', force=TRUE)

# rebuild gif
scmake('6_visualize/out/animation_a.gif', force=TRUE)


Conduit produces warning when compiling with gcc 11

Conduit should be updated to support GCC 11, and the warning should be removed.
Text of warning:
conduit/include/conduit/util/stdlib_coroutine.hpp:7:2:
warning: #warning "GCC versions 10, 10.1, and 10.2 contained a bug that
resulted in the coroutine frame not being destroyed when an exception
was thrown. Conduit implements a work-around for this bug that manually
destroys the coroutine frame when an exception is thrown. This workaround
is only enabled for these versions of GCC, so future versions of GCC
that still contain this bug are not accounted for. Please upgrade to a
newer version of conduit, or contact the maintainer at<EMAIL_ADDRESS>if a fix is needed for a newer version of GCC but with the same version
of conduit." [-Wcpp]
    7 | #warning "GCC versions 10, 10.1, and 10.2 contained a bug \
      |  ^~~~~~~

Update: The bug doesn't appear from gcc 10.3 onwards. I removed the warning.


Feature/substitutionAll

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Pull kernel stats with RTM_NEWSTAT

observe the nstat command that is shipped in iproute2.  It would be nice to expose these.

this is done as of 0.7.2, but see #55.
and in any case, all the stats pulled by nstat are being read from a collection of /proc files!


Add more data to DeploymentGroupEvent

Add DeploymentGroupStatus and domain for more info

@rohansingh

Why is the additional information needed?
Emitting the full DeploymentGroupStatus blob makes it harder to change how deployment groups works internally. I.e. if we change DeploymentGroupStatus that will also break anything that depend on the format of the emitted events. But maybe that's okay?

Yea, it's a lot more info. We wanted the error message from DeploymentGroupStatus and were lazy...

:+1:

Thanks. Let's merge for now and change later as needed.


CSS clip for afterImg

When using transparent .PNG or .SVG for the before and after images, you can always see the afterImg below, while the beforeImg gets a clipping rect mask applied on the fly. It would be great, if the afterImg could also be masked inversely while using the slider.

@martindefatte this was resolved by #41 which was just merged


upstream-dev: add failure information to CI issues

The purpose of this change is to add summary information to the automated issue created when the nightly upstream-dev CI fails.
Opened from a non-fork due to github actions permissions & tested by changing 'schedule' to 'pull_request' in the report job, and confirming that the parsed logs end up in the relevant issue description, as seen in the latest edit to https://github.com/google/jax/issues/11480.

Note: the failure in CI-Nightly is expected, and will be fixed by #11482

What is the upstream nightly workflow? Why do we need this?

This is what I added yesterday after some discussion on jax-dev – it tests JAX against development versions of numpy and scipy so we can catch failures before releases of these packages surface those failures to users. See https://github.com/google/jax/pull/11458

Why not use kokoro for this?

Because I already implemented it via github actions?

Ok, but maybe we can switch to kokoro? Then you won't need this parse logs thing and everyone will be notified if something fails. Its a good way to track all the CI we have rather than having things in different places.

We also have a fair bit of existing CI infrastructure running on github actions, and this workflow notifies everyone via the github issue tracker & contains links to raw logs there. Given that, I'm not sure what the advantage of kokoro would be.

I am not sure what the advantage of github actions is. Are externally people going to look at this? (I don't think so?)

existing CI infrastructure running on github actions
I don't think we do? But maybe I am wrong.

You can see a half dozen github actions CI tests running against this PR. Since we develop open source first, I tend to think of github CI as our primary CI, and Kokoro as secondary to that, so it made sense to me to implement this via actions.
In any case, we already have a working github actions implementation of the intended CI, perhaps it's a bit late to advocate for using a different platform?

perhaps it's a bit late to advocate for using a different platform?

I didn't see the thread where this was discussed. So maybe I am not late.

You can see a half dozen existing github actions CI tests running against this PR.

I wouldn't consider that CI. CI is continuous testing that is running post-submit. The PR stuff is presubmit.


How to keep parameter input name of query

I want to parse a string to a LambdaExpression.
Following classes:
      public class Person
      {
         public String Name { get; set; }
         public String FirstName { get; set; }
         public Int32 Status { get; set; }
         public IList<Student> StudentList { get; set; }
      }
      public class Student
      {
         public String LastName { get; set; }
         public String FirstName { get; set; }
         public Int32 Age { get; set; }
      }

And the query:
var expressionString = "pe => (( pe.Name == \"Hallo\" ))";
Now if I parse the expression
var expression = DynamicExpressionParser.ParseLambda(typeof(Person), null, expressionString);
The 'pe' name for my input parameter is lost or replaced.
Is there a way to preserve the given name?

This is a workaround, but it only helps if you know the input parameter name..
      /// <summary> Replace an input parameter in an expression with a predefined name.</summary>
      /// <exception cref="ArgumentNullException"> Thrown when one or more required arguments are null. </exception>
      /// <param name="itType">                    The main type from the dynamic class expression. </param>
      /// <param name="expression">                The expression. </param>
      /// <param name="parameterExpressionString"> The name of the input parameter to use for the expression parameters. </param>
      /// <returns> The dynamic expression with replaced input parameter name /></returns>
      public static string ReplaceInputParameter(Type itType, string expression, string parameterExpressionString)
      {
         if (String.IsNullOrEmpty(parameterExpressionString))
         {
            throw new ArgumentNullException("parameterExpressionString");
         }
         var parameters = new[] { Expression.Parameter(itType, parameterExpressionString) };

         var newExpression = DynamicExpressionParser.ParseLambda(parameters, null, expression, null);

         return newExpression.Body.ToString();
      }

Is there a way to extract only the input parameter name from a expression string?

I see your point. I've to check if this can be fixed.
This issue is maybe a bit related to https://github.com/StefH/System.Linq.Dynamic.Core/issues/110 ?

Yes, this looks like to have the same solution.
Anyway is there a way to get the input parameter name of a string expression?

I have the same Problem and as far as I can see, it comes from the calls to
ParameterExpressionHelper.CreateParameterExpression(itType, string.Empty)
in DynamicExpressionParser.cs.
string.Empty effectively removes the name of the parameter.
var serialized = "s => s.Length == 7"
var exp = DynamicExpressionParser.ParseLambda<string, bool>(new ParsingConfig {}, true, serialized);
Console.WriteLine(exp.ToString()); // will output Param_0 => (Param_0.Length == 7)

Instead of giving an arbitrary name to the Parser, it should be the other way around, so the parser determines the name given the type of the parameter.

The main question is : Why do you need this?

I'm getting the string as an MVC Controller parameter.
Then I'll parse the Expression.
Now if something goes wrong, I want to give the the user a nice error message with his original query.
When debugging it is way more readable if you have the original parameter name.
If you want to go from string to expression and back to string, you should be able to get your original string back. Currently this is not possible.

@wertzui and @Franki1986
I've found a simple solution based on https://stackoverflow.com/questions/8540954/changing-parameter-name-in-a-lambdaexpression-just-for-display/8541464
Code is like:
public class Renamer : ExpressionVisitor
{
	private readonly string _newName;

	public Renamer(string newName)
	{
		_newName = newName;
	}

	public Expression Rename(Expression expression)
	{
		return Visit(expression);
	}

	protected override Expression VisitParameter(ParameterExpression node)
	{
		if (string.IsNullOrEmpty(node.Name))
		{
			return Expression.Parameter(node.Type, _newName);
		}
		else
		{
			return node;
		}
	}
}

And can be used like:
void Main()
{
	var expression = DynamicExpressionParser.ParseLambda<string, bool>(new ParsingConfig { }, true, "s => s.Length == 8");
	expression.ToString().Dump();
	var newExp = new Renamer("something").Rename(expression);
	newExp.ToString().Dump();

	"---".Dump();

	var expression1 = DynamicExpressionParser.ParseLambda<TestObject, bool>(new ParsingConfig { }, true, "dto => dto.X == 8");
	expression1.ToString().Dump();
	var newExp1 = new Renamer("dto").Rename(expression1);
	newExp1.ToString().Dump();
}

public class TestObject
{
	public int X { get; set; }

	public string Name { get; set; }
}

Output is:
Param_0 => (Param_0.Length == 8)
something => (something.Length == 8)
---
Param_0 => (Param_0.X == 8)
dto => (dto.X == 8)

The only thing what needs to be done is that the it type which is found by the ExpressionParser should be a public property on that class so it can be used in the Renamer.

For that to work I  would neet to know the name of the Parameter upfront. But I do not know the name because I get the expression string from the consumers of my API.
I could probably work out the parameter name, but if I do not want to relay on error prone string inspection, I would have to parse the expression myself. And that is exactly what the Expressionparser does best ;)
So I think that would be the correct place for that code to live.

@wertzui and @Franki1986
I've build a solution, use this NuGet from a MyGet-feed:
https://www.myget.org/feed/system-linq-dynamic-core/package/nuget/System.Linq.Dynamic.Core/<IP_ADDRESS>-preview-01
What you need to do is:
var config = new ParsingConfig
{
    RenameParameterExpression = true
};

var exp = DynamicExpressionParser.ParseLambda<string, bool>(config, true, "s => s.Length == 7");
Console.WriteLine(exp.ToString());

Can you please try this?

@wertzui and @Franki1986 can you please try?

Sorry for delay. On monday I am back to office, then I will test it. Thanks for your work!

Mhh..  in the myget package you provided there is no 'RenameParameterExpression' property...

Sorry.
Please try version <IP_ADDRESS>-ci-1468

Ok,  tried to get the package over myget, don't know if there is a problem with the source, but the current version is still ci-1369. Is there a way to get the specific version?

Downloaded the latest master folder of 'System.Linq.Dynamic.Core' and tested ist this way.
Works fine!


use yarn, upgrade react-router v3, fixed issue

Hi @AllenFang,
Yarn install
This is PR with yarn and dependencies fix
Install yarn
> npm install yarn --global
> yarn

Fixed dependencies issue
React, React Bootstrap
use react version 15.3.0 cause PropTypes#7132 issue from react-bootstrap v0.29.5 so I upgrade react-bootstrap v0.30.0#2095 to resolve this issue.
React Router
I try to upgrade react-router to avoid history dependencies issue by version 3.0.0(link) which use history dependencies itself, so we can didn't care about history dependencies.
use
import { hashHistory } from 'react-router'
//and add props into
<Router history={ hashHistory }>

now react-router 3.0.0 working fine.
Now dependencies version

react-bootstrap v3.0.6
react-router v3.0.0

Test working version
react, react-dom: 0.14.7, 15.0.0, 15.3.0 (all pass)
Have some suggestion feel free to discussion with me 👍

@madeinfree, thanks a lot, it all look great for me but I still have few question about dependency, why move the react-bootstrap and history to dependencies section. In my opinion, react-bootstrap-table should not depend on these packages.

@AllenFang sorry it my fault, I fixed the dependency

Very appreciated that you can still contribute this repo until now. :octocat:

Thanks your contribution 👍

#497


Support other ways to generate service TLS certificate in the Helm chart

Hi,
This project is exactly what I need for managing internal CAs in Openshift clusters.
I don’t use cert-manager, and ideally, I would like to be able to install trust-manager without it.
As of https://github.com/cert-manager/trust-manager/pull/157 , I see this has been addressed, but the doc advises against using this in production.
One of Openshift’s operator allows for generating service certificates in a secret by annotating a secret, signed by the cluster’s CA:
https://docs.openshift.com/container-platform/4.15/security/certificates/service-serving-certificate.html#add-service-certificate_service-serving-certificate
It also can inject a CA bundle into the webhook: https://docs.openshift.com/container-platform/4.15/security/certificates/service-serving-certificate.html#add-service-certificate-validating-webhook_service-serving-certificate
Right now, the Helm chart only allows to either use the Helm generated certificate, or the cert-manager one.
Would you be willing to have another option to use the Openshift managed certificates?
I can understand that it’s not wanted to have a solution that is specific to a platform. In that case, would you consider having an option to not manage the certificate in the Chart, and let the user configure it another way?
I could then add the needed annotations the service and webhook.
Thanks

I prefer avoiding a solution tailored for OpenShift, even if we also run OpenShift in our target clusters. But a more generic extension mechanism for webhook certs seems like a valid ask. @anael-l, do you know if OpenShift supports injecting CA certs into CRDs for conversion webhooks? We will probably add new API versions that will require conversion webhooks.
To use the OpenShift mechanism to do this with the current webhook (validating), I think two things are needed:

Bring your own secret for the webhook server certificate.
Add annotations to webhook configuration resources.

I've never used it, but this seems to be what you are looking for: https://docs.openshift.com/container-platform/4.15/security/certificates/service-serving-certificate.html#add-service-certificate-crd_service-serving-certificate

For the secret, I think it is already possible to do, as the Deployment mounts a secret named {{ include "trust-manager.name" . }}-tls.
Maybe we could add a variable to specify another secret name.
That could be tied to a condition that would not create a secret with Helm nor a Certificate with cert-manager.

In the Openshift case, we would need to specify a different annotation for the Secret (service.beta.openshift.io/serving-cert-secret-name: {{ include "trust-manager.name" . }}-tls) and the ValidatingWebhookConfiguration (service.beta.openshift.io/inject-cabundle: "true")

Now that I see it, the annotation for the service as to be templated for the secret name.
As it will be defined in the values file, it will not really be feasible except if we use the tpl function when we apply the annotation in the service.
Maybe we can workaround this by setting a fix value for the secret name.

For anyone following this issue: I am currently working on a "webhook-cert-lib", that we also will use in cert-manager eventually - replacing the "dynamic authority" feature currently inside cert-manager to bootstrap and renew cert-manager webhook certificates. This will take some time to finish, but the process has started. Right now, I have a POC PR showing this is possible: https://github.com/cert-manager/trust-manager/pull/468.
Follow the cert-manager-dev channel on Slack and/or join put bi-weekly meetings to follow the progress on this.


Adds code of conduct

What this PR does / why we need it:
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Release note:

You should include the release note block with NONE in it, or alternatively add the /release-note-none label to get around the release not problems

/lgtm

/lgtm cancel

@munnerz please lgtm again, I have added an alias for it for jetstack.io

/approve

/lgtm


Parallelle code execution in one Lighter Session

Hi lighter experts,
similar to this issue in Livy: https://issues.apache.org/jira/browse/LIVY-395, I am wondering if lighter could support parallel code execution in one lighter session.
Currently I've tried to run 2 notebook cells at the same time, but I found the second cell's code will not be processed by lighter until the first cell is done.
This feature is useful when I set a fair scheduler for Spark and run several code snippets together.

Hello @wjxiz1992,
could you please give more details on the possible use cases? Because from our perspective usually, you use a single Notebook to achieve a single end result. Also, most of the time the lineage of the cells is important since you use the variables defined in cells that precede the currently running one.
Is running two notebooks in parallel is out of the question?

Thanks a lot! You are reasonable, close it for now.


New Panel

Hi,
Back with another new panel from Quangli. This is 40x80 panel Q4Y10V6H.
Photograph of the panel is as here.

Initialisation code I tried is
void setup() {
int i=0,j=0;
Serial.begin(9600);
display.begin(10);
display.setMuxPattern(BINARY);
display.flushDisplay();
display.setPanelsWidth(1);
display.setBrightness(100);
display.clearDisplay();
for(i=0;i<80;i++)
for(j=0;j<40;j++)
{
display.drawPixel(i,j,Red);
delay(10);
display_updater_enable(true);
}
}
The result is as shown in video...
From the part number, it seems 1/10 scan panel. Could not find its exact data sheet from their site though. On board they have shown D pin as well. So little confused. Can you guide please?
dotmx.zip

I tried making following change
#define MATRIX_WIDTH  80
#define MATRIX_HEIGHT 40
The display remains blank. Then I tried with other panel which works with SHIFT_ABC Mux pattern. Even that panel remains blank.
Then I tried with 64x32 dot matrix, of course after changing Width and height, it shows white line.

I guess it may use a shiftregister with different A-D pinout. Can you note down the ICs used on the panel?

It is using SM5266 and 160206 display driver.

SM5266P-SUNMOON.pdf

You may try https://github.com/xsrf/PxMatrix/tree/shiftreg-binary with SHIFTREG_ABC_BIN_DE which is not yet merged into PxMatrix. It should work with 1/10 scanning if the first 8 rows are connected to the first SM5266 and the remaining two are connected to a second SM5266. But if they use only 5 of the 8 outputs of each SM5266, only 7 of 10 rows will work...

Great !!! Display started to work. It seems need to use different SCAN pattern
for(i=0;i<80;i++)
for(j=0;j<40;j++)
{
display.drawPixel(i,j,Red);
delay(10);
}
}
I tried Line and Zigzag. With Zigzag following is the result  video.
q80.zip

please use display.displayTestPixel(20); instead of display.display() in your code and post a video to show how the pattern looks like.

vid80.zip
Please find attached. Thanks..

not sure if a pattern exists for that... @2dom ?

Nope ... appears to be a byte split pattern. I already implemented another one - should not be a biggie.

Would be ZZIAGG I suppose :)

Hi...by the way I had made a small donation on Monday. Hope you received it. Thanks.

Thanks man ... In this case all the credit goes to XSRF, @xsrf - if you PM me your PayPal very happy to forward you some beer money :)

Thx, but please keep it 😊 However, I wouldn't mind if you could add some visuals of the different patterns to the readme some time 😉

Yeah ... I should probably do that. I'm not entirely sure if the whole naming thing still makes sense - this is getting out of hand ...

@rajeshdoshi I implemented a new pattern ZZIAGG - check out the latest master if it does anything useful.

Oh great. Thanks.. will check and let you know.

Hope it includes SHIFTREG_ABC_BIN_DE  as well.

Some thing still missing. Here is video... It is supposed to fill in dots from left corner top to bottom.
vid.zip

Ok ... could you try again with the latest master and
for (int y=0; y<40; y++)
   {
       for (int x=0; x<80; x++)
       {
           display.drawPixel(x, y, myCYAN);

           delay(20);
       }
   }

Almost there....
Here is video...
vid1.zip

Could you try again with the latest master?

Opps. I put my comments in wrong place.
I tried with new master.  Still some problem..
Uploading vid_1.zip…

vid_1.zip

The mux pattern is not correct for your panel. Can you please post the complete code?

void setup() {
int i=0,j=0;
Serial.begin(115200);
Serial.println("Esp Started");
display.begin(10);
display.setMuxPattern(SHIFTREG_ABC_BIN_DE);
display.setScanPattern(ZZIAGG);
display.flushDisplay();
display.setPanelsWidth(1);                          // Set the number of panels that make up the display area width (default is 1) can be 2 or more
display.setBrightness(250);                         // Set the brightness of the panels (default is 255)
display.clearDisplay();
display_updater_enable(true);
for (int y=0; y<40; y++)
{
for (int x=0; x<80; x++)
{
display.drawPixel(x, y, Cyan);
delay(20);
}
}
}

can you please check your wiring of Pin D? You already had all rows working... Now it looks like it is stuck on the 2nd pair of rows.

Problem is not with D pin.
I loaded earlier commit
https://github.com/2dom/PxMatrix/blob/d120e24fd9fdc6cad7c84c8f89084ff9a94e0972/PxMatrix.h
And the result was as per vid1.zip I had shared earlier.

I am confused ... it should scan x from 1 to 80 first, now goes to to bottom. Everything worked in the first set of rows in your "almost there" comment. Did not touch that code?

Ok. Let me try earlier lib and then latest one and send you video again later in the day.
One problem I am facing here and it is only with this particular model of module. If I power on module and ESP together, then ESP does not start. But if I remove power to the module and start ESP first and then power on module, it works.
I tried with higher rating of power supply. Tried adding decoupling capacitors. Can it be that this module has OE inverted and on power on for a moment all the LEDs try to draw a huge current not letting the ESP on? I could not check this on scope. If you can think of any reason?
I had faced this problem with P10 single colour modules in the past where it used to draw huge current on power on. May be I should try inverting OE.

I checked. With PxMatrix.h from https://github.com/2dom/PxMatrix/blob/d120e24fd9fdc6cad7c84c8f89084ff9a94e0972/PxMatrix.h
The result is as below

With Latest PxMatrix.h
https://github.com/2dom/PxMatrix/files/4774028/vid_1.zip
Is there something that I might be doing wrong here?

I am just copying PxMatrix.h file. Not all the files.

I deleted the installed library and reinstalled latest ZIP library.
However, still the result is same.  I have attached video.
Can you help resolve this issue?
m1.zip
All rows are not filled up and the sequence is not correct. Also some dots are being filled twice. Thanks

I compared latest PxMatrix.h and PxMatrix.h in commit
//github.com/2dom/PxMatrix/blob/d120e24fd9fdc6cad7c84c8f89084ff9a94e0972/PxMatrix.h
There is a difference in the ZZIAGG pattern code in both the files.

@2dom I compared latest PxMatrix.h and PxMatrix.h in commit
//github.com/2dom/PxMatrix/blob/d120e24fd9fdc6cad7c84c8f89084ff9a94e0972/PxMatrix.h
There is a difference in the ZZIAGG pattern code in both the files.


Add controller for video blocks.

TODO: Handle more errors. Testing
JIRA: https://openedx.atlassian.net/browse/MA-692

@hanningni please review

:+1:


Profile edit page iteration

The first version of the page is now functional and live via #28. A few things to look into later:

Editing the display name. It's not an official spec, but clients seem to implement it, so a user has a name and a display name. There might also be a username floating around in places.
Proper field validation
Add external identities
Separate tab for relays with recommendations
Show errors when relays don't accept the publish
If nothing was found after X amount of time, have a button to scan more relays?
Option to import JSON

A more complex one is indicating when multiple versions of a profile were found. It does show that currently, but it's not well-solved yet. This should show on the profile page, with a small round info indicator on the edit button. Then show a message on this page, with the option to choose which profile version to edit. Then saving needs to make sure to update the other unwanted versions.

PR #90 moved relays into a separate tag. It also overhauled handling of the session profile and relays. Feels like pretty fragile stuff, TBH.


Fixes an issue related to artifact rendering

After the fix, we will be able to render WorkloadConfig
Example:

Nice! Does this completely solve #1108? If so, please close it when merging. Thank you! :shipit:

Yes, I believe so. However the issue is not related to heterogeneous element types of a list. Anyway, all of them should be rendered now.