left-join for "joinDefaultPrices"

We have some customer-environments without prices for the customer group "EK".
The "defaultPrice"-fallback-routine fails in this case and destroy price-features in product-listings:
Price-filter has no values and price-sorting is not possible.
With the commited left-join everything is fine :)

+1

Hi,
it is required that only products with standard prices will be selected, otherwise the pagination can not be determined clean. Products without standard prices would be removed by the ListProductService.

@jppeter For the reasons given by @OliverSkroblin I will close this PR for now. Please feel free to reopen or comment here if you think this needs to be changed.


Release a v1.0.0

If there's no objections, I'm going to tag a v1.0.0 next week?
I'll also move a v1 tag there and update all the @main references to @v1.
I intend to just use npm version for the time being to bump versions, and a small workflow to automatically move the major tag forward whenever there's a new tag on HEAD (main).

How many things are using this so far? it seems like usage should be somewhat extensive before we’re sure it’s ready for v1.

At the same time, people don't want to use it, because it's @main :)

We could release a v0.1.0 tag, at least?

So from a perspective of someone using it, they'd start a @v0 and have to expect breaking changes (or start at @v0.1 and fiddle with updates) and on any release - which is not much different than @main.

v0.1.0 to v0.1.1 has no breaking changes, only v0.2 or higher would have breaking changes.

Semver does not prescribe that (i.e. neither does it prescribe that you must bump minor when there's breaking changes, nor that you shouldn't bump minor when there aren't any) - anything goes in pre-v1.
Updated #39 to set a vX.Y when a vX.Y.Z is pushed.
Will poke around what people think about using this at @v0.1

semver v1 does, as does npm’s semver module which is really the arbiter here given the intended market
In vX.Y.Z, and v0.X.Y, and v0.0.X, X is the major, Y the minor, and Z the patch.

Released a v0.1.0. The v0 and v0.1 tags got created automatically.
Opened a https://github.com/pkgjs/action/pull/40 until there's better automation - we don't want to keep the @main as it could potentially break things for people importing the action at an older tag.

It looks like this has not happened yet? I was wondering if before we did this would you be open to me making a few changes to expand the feature set of this package a bit more?  I have been working on a few workflows which support more and I would love to make those OSS. Just been a while since I have engaged in here and want to make sure we would be aligned on the direction before committing to the work.

Sure, I'm all for it!


Server crashes with new 1.19.30 update

https://pastebin.com/M9DYDdxa
I get this error with the new jar that was just built with Jenkins here recently. Thanks for all your hard work!

it also crashes for me, but it says something about datapacks. i dont have any datapack, only fabric api, minimotd and the latest geyser build.
https://pastebin.com/AvMt16DT

Pls don’t use pastebin

sorry about that, where do you prefer to see the log?

@mangosurvival Pastebin is absolutely fine (mclogs is good at sensoring private info tough). Your issue isn't related to this issue report though, you can create your own if you want. Please include the same information that an issue report on https://github.com/GeyserMC/Geyser asks for.

sorry about that, where do you prefer to see the log?

https://mclo.gs/

Just randomly stopped happening with no configuration changes or updates? Closing for now unless someone can produce the same issue.


Remove Redis Requirement

I don't feel like you should have to install redis to use this library.
This makes it so that you can use the library without having fatal errors
thrown due to a missing optional dependency like redis.

Wanted to use this without having to install php5-redis as it does show as an optional dependency which is not actually the case.

While I agree that using the library without php5-redis is desirable, I don't see any point in adding changes for EOLed PHP version.
Please remove the other two commits.

Sounds good to me i'll clean it up, thanks for taking a look.

Closing due to inactivity.


Instead of hardcoding values, use a Config type

Right now, a ton of things are hardcoded. This is less than ideal. A Config type would be a better way to centralize these points of configuration.
data Config = Config
  { configMainIs :: String -- ^ Name of the main function to be exported.
  , ...
  }

[ ] Add a Config data type to the library
[ ] For hardcoded values, refer to the Config instead.
[ ] (optional): Refactor the library to use ReaderT Config IO a instead of Config -> IO a as the type of functions.

I think this can be combined with #12, the name of the import module can just be defined in the configuration.

As for the config, it makes sense to just use optparse to parse the config value from the arguments given to the preprocessor (see hspec-megaparsec).


docs: update official packages page

Updated the official packages page:

updated URLs of Shield and Settings to the new sub-domains.
Added information about Tasks and Queue.

My big question is whether the team thinks we should hold off adding Tasks and Queue until we get an official beta version out.

The sooner people start testing these packages, the better. Both have closed feature lists (at least for v1). The lack of an official release speaks for itself.


Projection Optimization Rule

Which issue does this PR close?

Closes #.
Rationale for this change

What changes are included in this PR?

Are these changes tested?

Are there any user-facing changes?

I have looked to the tests in this PR.
Generally changes are good and beneficial (according to my expectations)
However, there are three points need to be resolved

builtin projection handling for HashJoinExec
Collapsing Projection + SchemaPreservingOperator (n times) + Projection (shuffler not pruning or calculating) stack into Projection + SchemaPreservingOperator (n times)


??

I got minecraft 0.13.0 and i installed block launcher and when i was jloing to get in app the screeen was black and send me back to my homescreen my android devive is the Lg-E400 and version 2.3.6
HELP PLEASE!

Try the latest version? I think I fixed an issue with Android 2.3, but I'm not sure since I don't have 2.3 devices.


Refactor: update context arguments dynamically

Issue #, if available:
Description of changes:
Refactor 'update context arguments logics' for the argument depth exceeding by 5.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thanks for your contribution.
This code was the number one refactoring target to me.  So thank you even more. In particular, reduce() selection seems really good.
And I reorganized your code as follows. Please check once and request again, thank you.
In particular, I want to avoid statements like reducer(pointer) = {} as they cause unexpected modification in appConfig. If a problem occurs in flow, it seems better to handle an exception without proceeding further.
Finally, I add a Testcase - test/template/app-context.test.ts. Please verify your refactoring codes before PR.
npm test test/template/app-context.test.ts.
Test Suites: 1 passed, 1 total
Tests:       2 passed, 2 total
`
private updateContextArgs(appConfig: any, contextArgs: string[]) {
for (let key of contextArgs) {
const jsonKeys = key.split('.');
let oldValue = undefined;
const newValue: string = this.cdkApp.node.tryGetContext(key);
    if (newValue != undefined && jsonKeys.length > 0) {
        try {
            oldValue = jsonKeys.reduce((reducer: any, pointer: string) => reducer.hasOwnProperty(pointer) ? reducer[pointer] : undefined, appConfig);
        } catch(e) {
            console.error(`[ERROR] updateContextArgs: This key[${key}] is an undefined value in Json-Config file.\n`, e);
            throw e;
        }

        jsonKeys.reduce((reducer: any, pointer: string, count: number) => {
            if (count == jsonKeys.length - 1) reducer[pointer] = newValue;
            return reducer[pointer];
        }, appConfig);

        console.info(`[INFO] updateContextArgs: Updated ${key} = ${oldValue}-->${newValue}`);
    }
}

}
`

Thank you for review and adding test cases.
The statement like 'reducer(pointer) = {}' is aimed for new context key-value added when it is not existed in appContext.
If the skeleton of appContext will be immutable,  can be removed.

Good job.
Thanks again~


Value supplied for Accept header is not supported.

I'm getting this error on every file in the IG. Do I need to disable authentication to use this tool?
I'm trying to use this on Azure API for Fhir.

Sorry this has taken so long to get back to.
Now that it's switched over to a commandline tool that you don't need to build (dotnet tool install etc)
And there is a parameter you can use to provide the destination server headers.
--destinationServerHeaders or -dh "Authentication: Bearer xxxxxxxxxxx"

The message is on the accept header, not the authorization header.
Maybe try the -df json parameter?

Thank you, that did the trick!  It did require -dh "Authorization: Bearer xxx" (not Authentication).  But I did not have to do the az login.
So, to get this to work on Azure FHIR service, I ran:
UploadFIG -pid hl7.fhir.us.core -pv 6.0.0 -c -d https://<my_server>.fhir.azurehealthcareapis.com -df json -dh "Authorization:Bearer xxxx" --verbose


Logging dispatcher

Currently logs are written synchronously thus involving some overhead to the process. This PR adds a level of indirection (dispatchers) to inject strategies to deliver the log entries. Current implementation provides three alternatives: direct (just send the entry to the backend), sync (sends the entries acquiring a lock), and async (send the entries through a channel).
By default, IOBackend now uses the async dispatcher, and doing some performance tests on a simple HTTP server, logging every request to a file, I obtained the following results on my machine (using wrk -c 10 -d 10 -t 10 several times):
Single thread
Without logs         119445.98
With logs             66579.82
With logs & this PR   82162.56

Multiple threads
Without logs         135044.66
With logs             99995.77
With logs & this PR  115875.06

The gain is noticeable, but I think it could be improved in the future (for example, if fibers had different priorities, or with a dispatcher that send the entries in batches).
The Dispatcher is just a module, allowing stateless implementations like DirectDispatcher. The API exposes also an enum to make it easier to customise backends like this:
backend = IOBackend.new(file, dispatcher: :sync)

Is that a 10X performance gain!?!  That is super cool.

@wontruefree 10x? how did you get that number?

Just rebased to solve conflicts

I don't know why the specs where locking on Windows, but even the channel specs are disabled. I changed the default to use "sync" dispatcher in win32 for now.

I rebased on master so the CI runs with 0.35. Otherwise the specs failed with case/in.

Just merge instead......


What are the advantages of audio-to-audio compared to text-to-audio?

Mini-Omni提供了一个很棒的思路，可以将LLM结合TTS，与等待LLM流式返回后再传给TTS做合成相比，无疑在降低延时方面理论上有显著提升。
但对于输入的部分，跟调用ASR后得到文本，再将文本作为模型输入相比，将语音编码后直接输入到模型有什么效果上或者延时上的优势吗？
提出这样的问题主要是因为，我们在人机对话的过程中，如果要降低响应延时，怎么在vad方面做优化是一个很大的难点，如果按照传统的vad时长800ms作为完成说话的标志，那么先调用asr再将文本输入到模型，并不会比语音直接输入到模型慢；而如果像[omni_streamlit.py](https://github.com/gpt-omni/mini-omni/blob/main/webui/omni_streamlit.py)一样将vad设置成100ms确实会比asr更快，但是在实践上会很容易导致误打断。
本人的理解是，从输入这里的优化方向，是怎么让vad跟推理并行，才能最有效地降低前半部分的耗时。
如果有哪些方面说得不对，还请指教，谢谢！

Translated By GPT-4o:
Mini-Omni provides a great idea by combining LLM with TTS. Compared to waiting for LLM to return results in a streaming manner and then passing them to TTS for synthesis, it undoubtedly has a significant theoretical improvement in reducing latency.
However, for the input part, compared to obtaining text after calling ASR and then using the text as model input, what are the advantages in terms of effect or latency of directly encoding the speech and inputting it into the model?
The main reason for raising this question is that, in the process of human-computer interaction, if we want to reduce response latency, optimizing VAD is a major challenge. If we follow the traditional VAD duration of 800ms as a marker for completing speech, then calling ASR first and then inputting the text into the model would not be slower than directly inputting the speech into the model. However, if we set VAD to 100ms as in [omni_streamlit.py](https://github.com/gpt-omni/mini-omni/blob/main/webui/omni_streamlit.py), it would indeed be faster than ASR, but in practice, it can easily lead to false interruptions.
My understanding is that the optimization direction for the input part is how to make VAD and inference parallel to most effectively reduce the time consumption of the first half.
If there are any aspects that are incorrect, please advise. Thank you!

直接将音频信息输入给大模型，在有对应数据的情况下，模型可以理解说话人的情绪及其它非语义信息。而这些信息是纯文本中不包含的。
这里语音输入也可以模仿流式asr，可以流式提取音频特征，可以加快处理速度

Directly inputting audio information into the large model allows it to understand the speaker's emotions and other non-semantic information, provided that corresponding data is available. These are pieces of information that are not present in pure text.
The speech input here can also mimic streaming ASR, enabling the streaming extraction of audio features, which can speed up the processing.

针对 2. 这一点，是不是意味着此时 Mini-Omni 除了LLM，还内置了一个提取音频特征的模型？还是说 Mini-Omni 的语言模型自己能判断用户什么时候结束了说话，什么时候开始推理？
Regarding 2. , does this mean that at this point Mini-Omni not only includes an LLM but also has a built-in model for extracting audio features? Or does it mean that the language model of Mini-Omni can itself determine when the user has finished speaking and when to start reasoning?

这里音频特征提取用的预训练好的whisper encoder，判断用户什么时候结束说话是外置的VAD来实现的
The audio feature extraction here uses a pre-trained Whisper encoder, and determining when the user finishes speaking is achieved through an external VAD (Voice Activity Detection).

是否可能改成全双工的模式(Full-Duplex)?
输入audio的同时输出audio  ,input audio  stream和 output audio stream 可以实时做blending这样子. 这样latency有可能可以更低？ 例如人类多数情况下可以在未完全说完话的情况下抢答。类似于moshi , https://github.com/kyutai-labs/moshi

是否可能改成全双工的模式(Full-Duplex)?

是可以的，只是对数据要求会更高一些，以及对模型的鲁棒性要求也更高。

直接将音频信息输入给大模型，在有对应数据的情况下，模型可以理解说话人的情绪及其它非语义信息。而这些信息是纯文本中不包含的。

这里语音输入也可以模仿流式asr，可以流式提取音频特征，可以加快处理速度

Directly inputting audio information into the large model allows it to understand the speaker's emotions and other non-semantic information, provided that corresponding data is available. These are pieces of information that are not present in pure text.

The speech input here can also mimic streaming ASR, enabling the streaming extraction of audio features, which can speed up the processing.

对于这里的第一点有些疑问：
whisper本身是个ASR模型，他的encoder特征富含充足的语义信息，但是未必还保留了“人的情绪”这种非语义信息。直接输入音频或许会保留更多的非语义信息？
请问这里作者是怎么看待这个问题的呢？


Requirements for training.

Hi, please let me know minimum requirement for training all models and how long you train?
I run on google colab with ~12GB RAM which crashed due to not enough memory.
(In step 'load_dataset')
Thanks.

I've used 2 x 1080Ti for training. Try to decrease batch size.


Support Django 2.2

See also: Django 2.2 released @ djangoproject.com.

With the release of Django 2.2, Django 2.1 has reached the end of mainstream support. The final minor bug fix release, 2.1.8, was issued today. Django 2.1 will receive security and data loss fixes until December 2019. All users are encouraged to upgrade before then to continue receiving fixes for security issues.

COVID RE-Plan


Add helm chart

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 65.571%

Totals

Change from base Build<PHONE_NUMBER>8:
0.0%

Covered Lines:
1097

Relevant Lines:
1673

💛  - Coveralls


No package 'opencv' found following the instructions

Issue #74 and issue #85 seem to build opencv from source.
Resolving deltas: 100% (1230/1230), done.
$ cd php-opencv
$ phpize
Configuring for:
PHP Api Version:         20160303
Zend Module Api No:      20160303
Zend Extension Api No:   320160303
$ ./configure --with-php-config=/usr/bin/php-config
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for a sed that does not truncate output... /usr/bin/sed
checking for cc... cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether cc accepts -g... yes
checking for cc option to accept ISO C89... none needed
checking how to run the C preprocessor... cc -E
checking for icc... no
checking for suncc... no
checking whether cc understands -c and -o together... yes
checking for system library directory... lib
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for PHP prefix... /usr
checking for PHP includes... -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib
checking for PHP extension directory... /usr/lib64/php/modules
checking for PHP installed headers prefix... /usr/include/php
checking if debug is enabled... no
checking if zts is enabled... no
checking for re2c... no
configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
checking for gawk... gawk
checking for opencv support... yes, shared
checking for php debug... no
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for pkg-config... found
checking for opencv... not found
configure: error: Ooops ! no opencv detected in the system

What did I miss?

请问configure: error: Ooops ! no opencv detected in the system  这个问题解决了么?

@kiatng , what does this command do with you ?
pkg-config --libs opencv4
Try this before :
export PKG_CONFIG=/usr/bin/pkg-config && export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib64/pkgconfig/ && export LD_LIBRARY_PATH="/usr/local/lib64/"
And if it's not working, try to compile opencv with this params :
-D OPENCV_GENERATE_PKGCONFIG=ON
-D OPENCV_PC_FILE_NAME=opencv4.pc

Close as I am not working with opencv anymore.


istioctl/cmd/add-to-mesh:optimize code

[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[x] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[ ] Does not have any changes that may affect Istio users.

@tanjunchen: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
357212088db08ce74d7799441cb1a10e75e4dd50
link
/test release-notes_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@tanjunchen: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
357212088db08ce74d7799441cb1a10e75e4dd50
link
/test release-notes_istio

unit-tests_istio
357212088db08ce74d7799441cb1a10e75e4dd50
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@tanjunchen: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-multicluster-k8s-tests_istio
357212088db08ce74d7799441cb1a10e75e4dd50
link
/test integ-multicluster-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


Added EDA of imdb movies in R

Name: Exploratory Data Analysis of IMDB movies dataset with R
Description: Created a pull request to solve issue https://github.com/Anubhavdevv/Awesome-Machine-Learning-Models/issues/55
Title: "Exploratory Data Analysis of IMDB movies"
Labels: [enhancement] [hacktoberfest]
Added Exploratory Data Analysis of IMDB movies dataset with R in Rmd format as well as the dataset used for the exploration and predictions

Hey @Tejaswi-Kumar Please add the readme for the project while describing it

Hey @Anubhavdevv , added the Readme.md file, please check and approve.
Thanks and regards!

Cool !
You can also add the instruction file for running the program as in readme only like the requirement.txt file for other contributors to understand your code and contribute to it!

Updated Again @Anubhavdevv , extra requirements are being preinstalled in the RMD file itself so I don't think I need to mention the libraries.

LGTM! @Tejaswi-Kumar  🚀
Thanks for your valuable contribution ✨
Hope you like the repo Do Give a star to this repo ✨


Memory.ECCErrors is null in nvml binding

On Tesla T4, with ECC mode enabled, the nvml binding does not report ecc error count correctly.
I got nil value with error NVML_ERROR_NOT_SUPPORTED, however nvidia-smi command line tool works without problem

Can post the output of nvidia-smi? And what is your nvml.h version?


[BUG] max_primary_shard_size parameter does not exist in Shrink API

Describe the bug
As the Shrink API's document says, there is a request parameter named max_primary_shard_size which can be used to set the maximum size of a primary shard in the target index, but the parameter does not exist in opensearch actually.
To Reproduce
POST a/_shrink/e
{
  "max_primary_shard_size":"50gb"
}

the response is :
{
  "error" : {
    "root_cause" : [
      {
        "type" : "x_content_parse_exception",
        "reason" : "[2:3] [resize_request] unknown field [max_primary_shard_size]"
      }
    ],
    "type" : "x_content_parse_exception",
    "reason" : "[2:3] [resize_request] unknown field [max_primary_shard_size]"
  },
  "status" : 400
}

Expected behavior
Maybe we should remove the request parameter max_primary_shard_size from the document temporarily and add it back after we implement the function.
Screenshots

Host/Environment (please complete the following information):

OS: [MacOS]
Version [12.6]
OpenSearch Version: 2.3

Close this issue as the related PR has been merged yet.


Create CONTRIBUTING.md file

A CONTRIBUTING file to help developers understand how they can contribute to the project. In this file there are branches where we commonly write the new features of the library or those where we fix the errors instead of directly working on the main branch, also the file contains a short coding style guide to keep as much as possible the same style in the project.

Hello I will go through this pull request, I think it's interesting, but in my codebase there are some things are different to this CONTRIBUTING. For example:
Use `#pragma once` instead of include guards.

In my case I'm using include guards, I don't know if internally there's some change, since for the compiler maybe it can be the same.
I like the next one:
Use C++11 style of initializing variables, i.e., `int x{5}` instead of `int x = 5`.

So once that is written, I should go over the files modifying the way some variables are initialized. But I agree it is more readable probably.
And regarding smart pointers, agree it's better using smart pointers whenever is possible.
I'm sorry my replay was so late, I have been busy with a conference. Thank you for the pull request!


module 'empyrical' has no attribute 'information_ratio'

When calling pyfolio.create_returns_tear_sheet(), I get this AttributeError:

module 'empyrical' has no attribute 'information_ratio'

Here's my config:

Python 3.6.1
Anaconda 4.4
Microsoft Windows [Version 10.0.14393]
latest pyfolio, just installed today
empyrical 0.3.0 (from pip)

I looked at the source code of empyrical, can't find a module or actually anything called 'information_ratio.' Closest I could find is in the docstring for the Sharpe ratio mentioning it's a simplified version of information ratio.
Looks like a big bug, as create_returns_tear_sheet() is a core function in pyfolio. Please advise.

Hi, thanks for the report. Can you try downgrading to empyrical 0.2.2 (pip install empyrical==0.2.2)? Pyfolio as a whole is buggy right now, since we are waiting for pandas_datareader to get fixed.

Worked, thanks.

This is still an issue with the latest empyrical.

0.5.3 still an issue

Hi @sokol11 , information_ratio was removed from empyrical and then from pyfolio in v0.8.0 (released Aug 23, 2017). It sounds like you have an old version of pyfolio that still depends on information_ratio.


Users : sort icons not visible

http://localhost:30321/OrchardLocal/Admin/Users :
On chrome, sort icons in the table head columns are not well displayed.

same in http://localhost:30321/OrchardLocal/Admin/ContentTypes

I think we need to remove that functionnality. It's buggy. I tried fixing it but it make the design to break. I suggest we find a better js plugin to do that.

I agree


Start-Process fails with EnvironmentBlockTooLong error

It seems that Start-Process has a hardcoded limit for the environment block, which I am hitting when running in Azure Pipelines (which sets lots of environment variables)
According to the documentation this limit only existed for Windows XP, is there any reason for it to remain?
Steps to reproduce
Start-Process -FilePath "myprocess.exe"

Expected behavior
Process is executed
Actual behavior
2020-11-17T14:21:34.1311704Z Start-Process : EnvironmentBlockTooLong
2020-11-17T14:21:34.1313656Z At C:\Program Files\PowerShell\Modules\PSDeployTools\1.1.55\Functions\Invoke-Process.ps1:44 char:16
2020-11-17T14:21:34.1315142Z +     $process = Start-Process @processParams
2020-11-17T14:21:34.1316243Z +                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2020-11-17T14:21:34.1317681Z + CategoryInfo          : NotSpecified: (:) [Start-Process], InvalidOperationException
2020-11-17T14:21:34.1319184Z + FullyQualifiedErrorId : System.InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand

@hbuckle Do you want to pull PR?

Absolutely, if it's fine to remove the limit I'll create a PR

I believe we can remove the limit because Windows XP is out of support.
Since the issue is related to Azure Pipelines I'd ask MSFT team to include the fix in servicing release 7.1.1.

IIRC there's a limit of 32767 (0xFFFF as a signed Int16) on environment blocks defined by the user https://docs.microsoft.com/en-us/windows/win32/procthread/environment-variables on Windows. Removing this limit could potentially cause undefined errors.

@jborean93 - from that documentation

The maximum size of a user-defined environment variable is 32,767 characters. There is no technical limitation on the size of the environment block.

So the limit seems to be on the size of individual variables, not on the size of the block?

That's true, It does also say

However, there are practical limits depending on the mechanism used to access the block. For example, a batch file cannot set a variable that is longer than the maximum command line length.

But it's definitely more on the side of it should work and it's up to the user of the environment block to handle it properly and not something PowerShell should limit.

This issue appeared in PowerShell 7.1.0 as part of https://github.com/PowerShell/PowerShell/pull/10830
And appeared in Azure Pipelines for me today as the agent got updated to use PowerShell 7.1.0
Until the linked PR #14111 is in a workaround for some scenarios where you don't need to inherit environment variables from the process (or deployment pipeline in the case of Azure Pipelines) is to use -NoNewEnvironment which will as of 7.1.0 initialise a standard set of environment variables for the current user.
This fixed my issue trying to run an app inside of Azure Pipelines for now.

@MattJeanes - I don't think it was introduced in 7.1, I'm assuming it has been there since the days of Windows XP. I wonder if something changed in Azure Pipelines that meant they started creating more environment variables

The behaviour of PowerShell was changed to call ConvertEnvVarsToByteArray which contains the EnvironmentBlockTooLong check in 7.1 when not using -UseNewEnvironment as well, as the PR prepared PowerShell for the ability to pass in custom environment variable blocks.
You can see that change here: https://github.com/PowerShell/PowerShell/pull/10830/files#diff-a87e81856755f9e2a0f6002cf90c4cc3d0a4d1e81394bee7ac61543f71138b71R2464

Yes, this is a side effect from old code. The implementation was changed as first step to open a way for supporting new features (like adding new env vars on the fly by new parameter (I already forget approved name :-) ) and language feature like bash style LC=ALL grep...) but we stopped due to lack of resources :-( If you have an interest you can grab this work.

I have run into a situation where I needed to pass in environment variables to a process, so to work around the issue I essentially temporarily move a bunch of environment variables to a variable, run the processes and then move them back.
Here are the scripts to do it, they remove all RELEASE_* environment variables but you can tweak for your own needs:
function Clear-EnvironmentVariablesTemporary {
    # TEMPORARY: https://github.com/PowerShell/PowerShell/issues/14110

    $global:ClearedEnvironmentVariables = (Get-Item "env:").ForEach({
        if ($_.Key.StartsWith("RELEASE_")) {
            return $_
        }
    })
    $global:ClearedEnvironmentVariables | ForEach-Object { Remove-Item (Join-Path "env:" $_.Key) }
    Write-Host "Cleared $($global:ClearedEnvironmentVariables.Count) environment variables"
}

function Restore-EnvironmentVariablesTemporary {
    # TEMPORARY: https://github.com/PowerShell/PowerShell/issues/14110

    if ($global:ClearedEnvironmentVariables) {
        $global:ClearedEnvironmentVariables | ForEach-Object { Set-Item (Join-Path "env:" $_.Key) -Value $_.Value }
    }
    else {
        Write-Warning "No cleared environment variables saved, cannot restore"
    }

    Write-Host "Restored $($global:ClearedEnvironmentVariables.Count) environment variables"
    $global:ClearedEnvironmentVariables = $null
}


Configuration not saved after reboot

Hi,
I installed OpenWrt on NanoStation Loco M2. The configuration is not saved after the device is rebooted or powered off and on again.
I will be very thankful to you if anyone can suggest me what to do.
Thank you

Did you installed wirh a initram image?
And probably have you also flashed the initram image?
If both questions are true... -> do a sysupgrade with a image named XXX-sysupgrade.bin

Either wrong image flashed or out of space on rootfs, nothing that can be fixed in LuCI.


Handle math-equations with '$' possible?

Hi,
I would like to write math equations in markdown like $y = x^2$ and parse it as a custom component and with Mathjax in React.
But is it possible to define a component as just '$' ?

AFAIK, it's not a part of Markdown synthax? Then it looks like a non-trivial task.
After we release 6.0.0 with fix for https://github.com/storybooks/marksy/issues/38, you'll be able to do something like that:
```math
y = x^2
```


Whenever a fresh connection attempt is done, update the timestamp

/cc @reynir -- but this should not have any starvation effect (indeed, the retry / connection logic should previously be more eager to attempt further connections).

Thanks! This looks good. I don't think this is a cause of any issues people have observed, but this is more correct.


Transient 503 UH "no healthy upstream" errors during CDS updates

Title: Envoy briefly fails to route requests during CDS updates
Description:
When a cluster is updated via CDS, we sometimes observe request failures in the form of HTTP 503 "no healthy upstream" with the UH response flag.
The membership total for the cluster remains constant throughout the update.
The membership healthy falls down to 0 shortly after the CDS update begins, then switches back to normal shortly after the CDS update completed.
Request failures do occur regardless of the panic routing thresholds.
The docs around cluster warming (in https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/cluster_manager#cluster-warming) suggest there should be no traffic disruption during a CDS update.
Repro steps:
We observed and reproduced this behavior on static or EDS clusters, by sending a CDS update to change the health-checking timeout (eg. from 5s to 10s and back).
For example, we used an EDS cluster with 1% panic routing threshold configured around the lines of:
{
    "@type": "type.googleapis.com/envoy.api.v2.Cluster",
    "name": "foo",
    "type": "EDS",
    "eds_cluster_config": {
        "eds_config": {
            "api_config_source": {
                "api_type": "GRPC",
                "grpc_services": [ { "envoy_grpc": { "cluster_name": "xxx" } } ]
            }
        }
    },
    "connect_timeout": "10s",
    "health_checks": [ {
        "timeout": "5s",
        "interval": "3s",
        "unhealthy_threshold": 1,
        "healthy_threshold": 2,
        "reuse_connection": true,
        "http_health_check": {
            "host": "xxx",
            "path": "/healthcheck",
        },
        "no_traffic_interval": "3s"
    } ],
    "circuit_breakers": {
        "thresholds": [ {
            "max_connections":<PHONE_NUMBER>,
            "max_pending_requests":<PHONE_NUMBER>,
            "max_requests":<PHONE_NUMBER>,
            "retry_budget": {}
        } ]
    },
    "dns_lookup_family": "V4_ONLY",
    "common_lb_config": { "healthy_panic_threshold": { "value": 1 } },
    "transport_socket": {
        "name": "envoy.transport_sockets.tls",
        "typed_config": {
            "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext",
            "common_tls_context": {
                "tls_certificates": [ {
                        "certificate_chain": { "filename": "/path/to/cert.pem" },
                        "private_key": { "filename": "/path/to/key.pem" }
                } ],
                "validation_context": {
                    "trusted_ca": { "filename": "/path/to/ca.pem" },
                    "match_subject_alt_names": [ { "exact": "xxx" } ]
                }
            }
        }
    },
    "upstream_connection_options": {
        "tcp_keepalive": {
            "keepalive_probes": 9,
            "keepalive_time": 300,
            "keepalive_interval": 60
        }
    }
}

The cluster load assignment included a stable pool of 10 healthy backends.
Envoy does not appear to make any health-check request during the CDS update.
The backends are hard-coded to report healthy, and run locally on the same host to minimize possible network interferences.
Logs:
We've reproduced this using a version of Envoy 1.14.5-dev with some extra log statements:
2020-09-11T18:05:48 cluster.foo.membership_healthy = 10
[...]
2020-09-11T18:05:49 Traffic generator: 1428 requests, 0 errors
[...]
2020-09-11T18:05:54 Traffic generator: 2590 requests, 0 errors
2020-09-11T18:05:54 Updating foo HC timeout to 5s
2020-09-11T18:05:55 Traffic generator: 2962 requests, 0 errors
[...]
2020-09-11T18:05:57 Traffic generator: 3024 requests, 0 errors
2020-09-11T18:05:57 [backend@<IP_ADDRESS>:6878] responding to /healthcheck request from <IP_ADDRESS>:44078 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:57 [backend@<IP_ADDRESS>:6872] responding to /healthcheck request from <IP_ADDRESS>:37884 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:58 [backend@<IP_ADDRESS>:6871] responding to /healthcheck request from <IP_ADDRESS>:49690 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:58 [backend@<IP_ADDRESS>:6877] responding to /healthcheck request from <IP_ADDRESS>:36026 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:58 [backend@<IP_ADDRESS>:6876] responding to /healthcheck request from <IP_ADDRESS>:46476 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:58 [backend@<IP_ADDRESS>:6870] responding to /healthcheck request from <IP_ADDRESS>:46406 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:58 [backend@<IP_ADDRESS>:6873] responding to /healthcheck request from <IP_ADDRESS>:58104 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:58 [backend@<IP_ADDRESS>:6875] responding to /healthcheck request from <IP_ADDRESS>:34440 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:58 [backend@<IP_ADDRESS>:6869] responding to /healthcheck request from <IP_ADDRESS>:47934 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:58 [backend@<IP_ADDRESS>:6874] responding to /healthcheck request from <IP_ADDRESS>:45602 (for [<IP_ADDRESS>]) with OK
2020-09-11T18:05:58 Traffic generator: 3640 requests, 0 errors
[...]
2020-09-11T18:05:58 Traffic generator: 3554 requests, 0 errors
[2020-09-11 18:05:58.897][401][upstream] [source/common/upstream/cluster_manager_impl.cc:582] add/update cluster foo starting warming
[2020-09-11 18:05:58.897][401][upstream] [source/common/upstream/upstream_impl.cc:951] ClusterImplBase::initialize()
[2020-09-11 18:05:58.913][401][misc] [source/common/upstream/upstream_impl.cc:386] HostSetImpl::updateHosts with 10 added and 0 removed, updating hosts from 0 to 10, and healthy hosts from 0 to 0
[2020-09-11 18:05:58.913][401][upstream] [source/common/upstream/upstream_impl.cc:967] initializing Secondary cluster foo completed
[2020-09-11 18:05:58.913][401][upstream] [source/common/upstream/upstream_impl.cc:972] ClusterImplBase::onInitDone()
2020-09-11T18:05:58 cluster.foo.membership_healthy = 0
[2020-09-11 18:05:58.976][401][upstream] [source/common/upstream/upstream_impl.cc:992] ClusterImplBase::finishInitialization()
[2020-09-11 18:05:58.976][401][misc] [source/common/upstream/upstream_impl.cc:386] HostSetImpl::updateHosts with 0 added and 0 removed, updating hosts from 10 to 10, and healthy hosts from 0 to 10
[2020-09-11 18:05:58.978][401][upstream] [source/common/upstream/cluster_manager_impl.cc:594] warming cluster foo complete
[2020-09-11 18:05:58.978][401][upstream] [source/common/upstream/cluster_manager_impl.cc:612] updating TLS cluster foo
[2020-09-11 18:05:58.978][401][upstream] [source/common/upstream/cluster_manager_impl.cc:1176] Init ClusterEntry for foo at 0x563f2e21a340
[2020-09-11 18:05:58.978][401][upstream] [source/common/upstream/cluster_manager_impl.cc:1206] Initializing RoundRobin Load Balancer
[2020-09-11 18:05:58.978][401][upstream] [source/common/upstream/cluster_manager_impl.cc:369] onClusterInit
[2020-09-11 18:05:58.978][665][upstream] [source/common/upstream/cluster_manager_impl.cc:612] updating TLS cluster foo
[2020-09-11 18:05:58.978][665][upstream] [source/common/upstream/cluster_manager_impl.cc:1176] Init ClusterEntry for foo at 0x563f2e4189c0
[2020-09-11 18:05:58.978][665][upstream] [source/common/upstream/cluster_manager_impl.cc:1206] Initializing RoundRobin Load Balancer
[2020-09-11 18:05:58.981][665][misc] [source/common/upstream/load_balancer_impl.cc:808] chooseHostOnce: hosts_to_use.empty with source type AllHosts
[2020-09-11 18:05:58.981][665][upstream] [source/common/upstream/cluster_manager_impl.cc:1244] no healthy host for HTTP connection pool 0x563f2e4189c0
[2020-09-11 18:05:58.981][401][misc] [source/common/upstream/upstream_impl.cc:386] HostSetImpl::updateHosts with 10 added and 0 removed, updating hosts from 0 to 10, and healthy hosts from 0 to 10
[2020-09-11 18:05:58.985][665][misc] [source/common/upstream/upstream_impl.cc:386] HostSetImpl::updateHosts with 10 added and 0 removed, updating hosts from 0 to 10, and healthy hosts from 0 to 10
2020-09-11T18:05:58 Error making request: Expected HTTP code 200, but got 503 (with body "no healthy upstream")
2020-09-11T18:05:58 cluster.foo.membership_healthy = 10
2020-09-11T18:05:59 Traffic generator: 3441 requests, 1 errors

Based on the trace above, it looks like a load-balancer of the updated cluster is used to route a request before its underlying host set is initialized.
I'm not familiar enough with Envoy internals and could use some help to understand if I'm somehow misconfiguring Envoy, or if something else is happening.

This sounds like another repeat of https://github.com/envoyproxy/envoy/issues/13009? cc @htuch @ramaraochavali @snowp

I'm not sure if it's the same issue, if so I would expect the time stamps to indicate that we're hitting the EDS fetch timeout (15s) without a response, causing cluster warming prior to receiving any hosts.
The logs seem to indicate that the hosts are being added to the cluster, then health checked during warming:
[2020-09-11 18:05:58.897][401][upstream] [source/common/upstream/upstream_impl.cc:951] ClusterImplBase::initialize()
[2020-09-11 18:05:58.913][401][misc] [source/common/upstream/upstream_impl.cc:386] HostSetImpl::updateHosts with 10 added and 0 removed, updating hosts from 0 to 10, and healthy hosts from 0 to 0
[2020-09-11 18:05:58.913][401][upstream] [source/common/upstream/upstream_impl.cc:967] initializing Secondary cluster foo completed
[2020-09-11 18:05:58.913][401][upstream] [source/common/upstream/upstream_impl.cc:972] ClusterImplBase::onInitDone()
2020-09-11T18:05:58 cluster.foo.membership_healthy = 0
[2020-09-11 18:05:58.976][401][upstream] [source/common/upstream/upstream_impl.cc:992] ClusterImplBase::finishInitialization()
[2020-09-11 18:05:58.976][401][misc] [source/common/upstream/upstream_impl.cc:386] HostSetImpl::updateHosts with 0 added and 0 removed, updating hosts from 10 to 10, and healthy hosts from 0 to 10

I wonder if the problem is that we create a TLS cluster and update its hosts in separate dispatcher events so they don't happen atomically?

Warming shouldn't complete until the first round of health checking is complete, so not sure what is happening here. I can take a more detailed look later.

The idea I mentioned in my last post isn't even necessarily about warming, but about the fact that we call
void ClusterManagerImpl::createOrUpdateThreadLocalCluster(ClusterData& cluster) {
  tls_->runOnAllThreads([this, new_cluster = cluster.cluster_->info(),
                         thread_aware_lb_factory = cluster.loadBalancerFactory()]() -> void {
    ThreadLocalClusterManagerImpl& cluster_manager =
        tls_->getTyped<ThreadLocalClusterManagerImpl>();

    if (cluster_manager.thread_local_clusters_.count(new_cluster->name()) > 0) {
      ENVOY_LOG(debug, "updating TLS cluster {}", new_cluster->name());
    } else {
      ENVOY_LOG(debug, "adding TLS cluster {}", new_cluster->name());
    }

    auto thread_local_cluster = new ThreadLocalClusterManagerImpl::ClusterEntry(
        cluster_manager, new_cluster, thread_aware_lb_factory);
    cluster_manager.thread_local_clusters_[new_cluster->name()].reset(thread_local_cluster);
    for (auto& cb : cluster_manager.update_callbacks_) {
      cb->onClusterAddOrUpdate(*thread_local_cluster);
    }
  });
}

before we do
  // Finally, if the cluster has any hosts, post updates cross-thread so the per-thread load
  // balancers are ready.
  for (auto& host_set : cluster.prioritySet().hostSetsPerPriority()) {
    if (host_set->hosts().empty()) {
      continue;
    }
    postThreadLocalClusterUpdate(cluster, host_set->priority(), host_set->hosts(), HostVector{});
  }

which means we get two dispatcher events: [update TLS cluster, set hosts], which could be interleaved with a dispatcher event that tries to route to this cluster.
Maybe there's something I missed that prevents this from being an issue, I didn't try to reproduce the issue.
If this is the case then any CDS update could possibly cause this, so the main reason I'm skeptical about this theory is that I would have expected it to have been discovered a long time ago.

If this is the case then any CDS update could possibly cause this, so the main reason I'm skeptical about this theory is that I would have expected it to have been discovered a long time ago.

No I think you are right. This is definitely a race condition and broken. I'm guessing the reason this has not been reported before is that CDS updates are pretty rare and I'm guessing no one has noticed. We will need to fix this.

The fact that this specific issue "We observed and reproduced this behavior on static" happens on static clusters seem to indicate that it is not same as #13009 and may be @snowp 's theory is correct.

I am fairly sure this is the cause of https://github.com/istio/istio/issues/23029. I can reproduce this pretty reliably (not 100% of time, but within a few minutes).
The test I am doing is updating a cluster every 2s, changing some field in metadata that does not matter. In the mean time, I send 2k QPS.
Cluster, which notable has no TLS or health check:

     "version_info": "2020-10-29T00:34:54Z/259",
     "cluster": {
      "@type": "type.googleapis.com/envoy.config.cluster.v3.Cluster",
      "name": "outbound|8080||echo.default.svc.cluster.local",
      "type": "EDS",
      "eds_cluster_config": {
       "eds_config": {
        "ads": {},
        "initial_fetch_timeout": "3s",
        "resource_api_version": "V3"
       },
       "service_name": "outbound|8080||echo.default.svc.cluster.local"
      },
      "connect_timeout": "10s",
      "circuit_breakers": {
       "thresholds": [
        {
         "max_connections":<PHONE_NUMBER>,
         "max_pending_requests":<PHONE_NUMBER>,
         "max_requests":<PHONE_NUMBER>,
         "max_retries":<PHONE_NUMBER>
        }
       ]
      },
      "metadata": {
       "filter_metadata": {
        "istio": {
         "services": [
          {
           "namespace": "default",
           "host": "echo.default.svc.cluster.local",
           "name": "echo"
          }
         ],
         "default_original_port": 0.74407261806614822,
         "config": "/apis/networking.istio.io/v1alpha3/namespaces/istio-system/destination-rule/plaintext"
        }
       }
      }
     },
     "last_updated": "2020-10-29T00:34:54.197Z"
    }
   ]
  },

note: 3s initial fetch timeout was playing around with https://github.com/envoyproxy/envoy/issues/13009, it does not matter what I set this to, even disabling with 0s still gets this issue
I provided some trace logging of 2x where the update triggered this and 2x where it did not.
While the above test is synthetic, this behavior is consistently reproducible in real Knative workloads as well

I can take a look at fixing this.

I looked at this and the fix is not difficult. I will fix soon.


Right-click add Events Register and Unregister frames (a core feature)

Implemented in https://github.com/JKISoftware/JKI-State-Machine-Editor/releases/tag/2<IP_ADDRESS>


Adopt a MSRV policy

Note: migrated from original JIRA: https://issues.apache.org/jira/browse/ARROW-11605
With all our crates now supporting stable Rust, we can decide on a Minimum Supported Rust Version, so that we don't introduce breakage to people relying on older Rust versions.
We could:

Determine what the earliest Rust version that compiles is (at least 1.39 due to async in DF)
Use this version in CI
Decide on, and document, a policy for how we update versions

This might mean that when there's fresh new changes landing in Stable, we'd likely hold off on them until those changes meet our MSRV.
Thoughts [~Dandandan] [~alamb] [~jorgecarleitao] [~andygrove] [~paddyhoran] [~sunchao]?

Comment from Andrew Lamb(alamb) @ 2021-02-18T10:40:55.550+0000:
[~nevi_me] I don't have any well formed thoughts here -- it sounds like a reasonable idea to me.

This would be nice to have - for example from arrow 4.2 to 4.3 the required Rust version jumped from 1.51 to 1.52 (as noted in #456), but wasn't mentioned in release notes, and was a little surprising in a point release

Practically, as long the requirement changes are noted in the CHANGELOG.md, I'd be happy!
The main inconvenience with the 4.3 release to me was just I wasn't sure what had happened - I ran cargo update and got a strange error, and the changelog didn't mention anything significant. Had I not found #456 it would have taken a bit of poking around to realize exactly what happened
I think it makes more logical sense for minimum-Rust-version changes to be major bumps (since the change makes previously compiling code start erroring, practically the same as any other breaking change), but I know there is a lot of debate around this and I don't have any especially strong opinions on it!

@dbr  -- got it -- as it turns out I was somewhat surprised by the min change too (I didn't realize that something we backported used a new API in rust 1.53).
In order to properly implement such a version policy, we would probably need to pin the rust version used in the arrow-rs crate's CI system (otherwise we effectively get the latest rust whenever it is released, and we often scramble to fix new clippy lints and what not)
Feel free to submit a PR if you have a moment -- maybe using something like https://github.com/influxdata/influxdb_iox/blob/main/rust-toolchain.toml to pin to rust 1.53?

Hi, I saw a post that arrow-rs currently only builds with Rust 1.70 (r-universe-org/help#268) (I haven't tried to follow up).
Is there any chance that a PR configured to check MSRV on CI would be acceptable? Used here.
https://github.com/PRQL/prql/blob/1276b7c36d882f819b982c4369cb71e40122b88c/.github/workflows/test-all.yaml#L130-L147
This was useful in recently lowering the MSRV of r-polars to 1.65. (pola-rs/r-polars#280)

I personally think having a CI that verified a MSRV would be very valuable -- and we can have the discussion about "what should the MSRV be" after that is in place.
cc @tustvold

Thanks for your answer!
I checked MSRV and open an issue for setting CI #4487.

Related discussion in DataFusion: https://github.com/apache/arrow-datafusion/issues/9082


Add descriptions for options in documentation.

Filled out full descriptions for all options tables. Also added "diagram" of bar/category percentage. I know markdown supports images, is that something you guys would rather do? Or is there a way to embed a little HTML snippet that allows the user to change each setting and play around with it.

Looks good @wcatron


Memory leak with large write volume

Can you quantify what write volume is considered "large" enough to trigger this?

Closing this because we could not reproduce it internally.


The app doesn't run on the most recent version Xcode 14.3.1

The current version of the firebase friendly chat app required to follow the lesson for the iOS Udacity Nanodegree is severely outdated. I've made these changes so that it can run on the most recent version of Xcode (14.3.1).

@spirosrap Tested and working well, Thank you!


Build with ghc-head on travis

Let's not merge this yet, wait until GHC-8.2 RC1 is out.

Optionally we can merge it with allow_failures enabled for this configuration.


Frum init detects wrong shell inside shell scripts

I’m not sure what the exact cause is here.
Here is test.sh, which is executable:
#!/bin/sh
eval "$(frum init)"

If this script is run from zsh, the shell is detected as zsh, even though this command is running from a dash process.
$ ./test.sh
./test.sh: 6: eval: autoload: not found
./test.sh: 11: eval: add-zsh-hook: not found

I can run it from Bash, however:
$ bash
$ ./test.sh

At first I thought this was because the script was running inside dash, which is not handled in the shell detector. However, it seems that Frum simply doesn’t detect the shell when the shell is running a script:
#!/bin/bash
eval "$(frum init)"

This fails too, when invoked from zsh.
Thinking of a few ways my issue could be solved:

Autodetect shells when invoked from shell script
Allow shell to be specified as parameter to init (like frum init --shell=sh)
Provide a way to invoke commands using frum (like frum exec)

It looks like the cause is that if you’re running a shell script, the process name is the name of the shell script, not the name of the shell. At least on Linux. It is easy enough to circumvent this by creating a subshell.
So, here's a workaround:
eval "$(sh -c 'frum init')"

I was trying to run ruby commands from a cron job script but ran into this same scenario. However the above workaround still produces the same not found output for me.
This is an awful workaround, but it seems to get the job done:
ruby="/tmp/$(ls -t /tmp/ | grep frum_ | head -n 1)/bin/ruby"


Implement the Game creation page which allows users to select game mode.

Implemented the game creation page. The commit is pasted here: de82f54f4f314dee9a224e1aed035e0681a71c98


[BEAM-4044] [SQL] Simplify TableProvider interface

This should make it clear that tables are in memory. Also deleted some unused functions from the interface.

Follow this checklist to help us incorporate your contribution quickly and easily:

[X] Make sure there is a JIRA issue filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
[X] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue.

[X] Run ./gradlew build to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Merging this into mega PR #5224


TODO: Refactor and cleanup list

Configuration.js needs to be refactored when time permits for the following suggestions:

React hooks useState should be refined so duplicate line warnings aren't present and to condense the code that's truly needed. Maybe making use of AppContext instead of having a state object for cycling through everything.
react-datepicker is nice but electron is basically chrome bundled and it does have it's own date interface.
react-switch as well can be replaced with a radio button that's modified to look like a switch with some simple css.

Python needs to be refactored when time permits for the following suggestions:

Note the python code always needs to be refactored/cleaned but what's more import is removing dependencies that aren't crucial. Basically, every package/library that's not mne-bids or eeg related should be removed with pure python replacing the functionality; otherwise moving some of the python tasks to javascript (nodjs) code.

Keep in mind these suggestions may appear unnecessary but will help maintainability of the application and keep it easily upgradable for each major version of operating systems the user installs.

Hi @laemtl, please read the above and some was already mentioned in slack about a future refactor when time permits; not something to worry about now because of deadlines. I mainly want to highlight that we should attempt to keep (javascript & python) dependencies restricted to a minimum for future upkeep of the application. Side note: M1 MacBook will need use of rosetta for python v3.8.5 and for successfully building "numpy" used by mne-bids. There's a way to launch one's terminal to use rosetta and then to check if terminal is launched in the right mode. Video demonstration.


client.beta.threads.create_and_run() is not working

This can be repliated with a simple piece of snippet on any known assitant Id.
thread = client.beta.threads.create()
message = client.beta.threads.messages.create(
    thread_id=thread.id,
    role="user",
    content="I need to solve the equation `3x + 11 = 14`. Can you help me?",
)
result = client.beta.threads.create_and_run(assistant_id="asst_CspjsbeH61kT_7vCMH5ZU9Jb4GkDPiQZ", thread=thread)

The error message is:
openai.InternalServerError: Error code: 500 - {'message': '1 validation error for ThreadObject\ncreated_at\n  Input should be a valid integer [type=int_type, input_value=None, input_type=NoneType]\n    For further information visit https://errors.pydantic.dev/2.8/v/int_type'}
It looks like client.beta.threads.create_and_run is sending a POST request to '/threads/runs', however on the server there seems to be a conflict on routing. The actual request was sent to:
@router.post(
    "/threads/{thread_id}",
    responses={
        200: {"model": ThreadObject, "description": "OK"},
    },
    tags=["Assistants"],
    summary="Modifies a thread.",
    response_model_by_alias=True,
    response_model=None
)

see: .../packages/openai/resources/beta/threads/threads.py

@runninghare thanks for opening this issue, I'll have a look!

Repro and fix here - https://github.com/datastax/astra-assistants-api/tree/issue-69
The pesky route order issue.
Will cut a release and ship soon, likely tonight.

Fixed in v0.2.28 shipped to docker hub and deployed to service


ZACS 1.0

Added a simple playground environment. The hope is that it works nicely enough that I don't need https://astexplorer.net to efficiently play around with changes -- if this proves out while implementing new features, I'll split up the one huge babel plugin file into multiple, easier to understand files.
Add the ability to declare multiple unconditional style sets, eg. zacs.view([styles.text, styles.titleText], ...)
Slight refactoring, update docs
Fix buggy behavior on zacs.createXXX components with both zacs:inherit and zacs:style props whitelisted
Improved validation and error messages
Improved Flow typing (likely to reveal new errors)
Strip ZACS imports from production code

@michalpopek sure


Frontend Project "To-do-list-2" Border Design Enhancement

Title and Issue number
Frontend Project "To-do-list-2" Border Design Enhancement
Close #3317
Checklist:

[x] I have mentioned the issue number in my Pull Request.
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have created a helpful and easy to understand README.md

@MohitGupta121 Kindly review this PR.


docs: update README.md

More relevant acknowledgements

This change is

Will address these changes as part of PR #259


APACHE score calculation for missing data

Hi,
The apachePredVar give APACHE score and mortality prediction. For the one with an APACHE calculated, the table apacheApsVar contains a missing data (48% of urine outputs, 20% of bun, 19% of sodium etc.).
However, the methodology used to handle those missing values in the computation of the APACHE score/predictions isn't specified. I didn't find any explications in in the docs and the original article from ZImmerman (Crit Care Med 2006) doesn't specify a specific way (mean/mode imputation, multiples imputations, etc.)
Thank you for any information,
Regards,

Hi,
Thank you for your answer. My problem is (well... was) that APACHE III is a score. Each value is assigned a score, 0 being normal and the higher the "abnormality" the higher the number of point per category. In that case is makes sense to me that a missing value is replaced by 0 (being the weight for normality).
I understood that the IV was based on a logistic regression using continuous variable and not a categorical transformation, but rereading it I think that it was a misunderstanding of the methodology.
Thank you,
Nicolas

Hello, I'd like to know what table consists of the variables used to predict the APACHE score? Are the variables taken from apacheapsvar table only or multiple tables like  lab , nursecharting_ ?

Only apacheapsvar and apachepredvar are used for calculating APACHE scores.


Allow py_function to support functions that return RaggedTensor

System information

TensorFlow version (you are using): 1.13.1
Are you willing to contribute it (Yes/No): No

Describe the feature and the current behavior/state.
py_function only supports functions that return Tensors. However the wrapped function is executed in eager mode and therefore ideally should support other return types consistent with eager mode. As of tf-1.13.1, py_function attempts to convert the returned objects to Tensors, but a RaggedTensor cannot be converted directly to a Tensor. Any attempt to return a RaggedTensor raises an exception during the attempted conversion. E.g.,
with tf.Graph().as_default():
    elements = [[1., 2., 3.], [4., 5.]]
    ragged1 = tf.ragged.constant(elements)
    def py_func():
        return tf.ragged.constant(elements)

    ragged2 = tf.py_function(
        py_func, [], tf.dtypes.float32
    )
    with tf.Session() as sess:
        print(sess.run(ragged1))
        print(sess.run(ragged2))

>>> <tf.RaggedTensorValue [[1.0, 2.0, 3.0], [4.0, 5.0]]>
>>> ...
>>> ValueError: TypeError: object of type 'RaggedTensor' has no len()

I propose that py_function detect which output arguments, if any, are RaggedTensors and returns them without attempting to convert to Tensors. If the proposal is rejected, I suggest that the documentation is updated to make clearer (either in the API or guides) that a RaggedTensor is not a suitable return type for functions wrapped by py_function.
Will this change the current api? How? No.
Who will benefit with this feature? Anyone who uses RaggedTensor in conjunction with py_function.
Any Other info.
As a workaround, one can construct a RaggedTensor from the output of py_function. E.g.,
with tf.Graph().as_default():
    elements = [[1., 2., 3.], [4., 5.]]
    ragged1 = tf.ragged.constant(elements)
    def py_func():
        lengths = [len(element) for element in elements]
        return sum(elements, []), lengths

    concatenated, lengths = tf.py_function(
        py_func, [], [tf.dtypes.float32, tf.dtypes.int64]
    )
    ragged2 = tf.RaggedTensor.from_row_lengths(concatenated, lengths)
    with tf.Session() as sess:
        print(sess.run(ragged1))
        print(sess.run(ragged2))

>>> <tf.RaggedTensorValue [[1.0, 2.0, 3.0], [4.0, 5.0]]>
>>> <tf.RaggedTensorValue [[1.0, 2.0, 3.0], [4.0, 5.0]]>

In https://github.com/tensorflow/tensorflow/issues/27679#issuecomment-522578000, I showed how py_function could be extended to handle composite tensor inputs and outputs (and other nested structures, like dicts, tuples, lists, etc).  If you have bandwidth to work on a PR that adds that to TensorFlow (with tests etc.), then it would be very welcome; otherwise, you could just use the new_py_function that I defined there, which wraps tf.py_function.

The issue should have been fixed by @edloper. The following example should work.
import tensorflow

# TF1
tf = tensorflow.compat.v1
with tf.Graph().as_default():
    elements = [[1., 2., 3.], [4., 5.]]
    ragged1 = tf.ragged.constant(elements)
    def py_func():
        return tf.ragged.constant(elements)

    ragged2 = tf.py_function(
        py_func, [], Tout=tf.RaggedTensorSpec([2, None], tf.float32)
    )
    with tf.Session() as sess:
        print(sess.run(ragged1))  # <tf.RaggedTensorValue [[1.0, 2.0, 3.0], [4.0, 5.0]]>
        print(sess.run(ragged2))  # <tf.RaggedTensorValue [[1.0, 2.0, 3.0], [4.0, 5.0]]>

# TF2
tf = tensorflow.compat.v2
def py_func():
  return tf.ragged.constant([[1., 2., 3.], [4., 5.]])

print(tf.py_function(py_func, [], Tout=tf.RaggedTensorSpec([2, None], tf.float32)))  # <tf.RaggedTensor [[1.0, 2.0, 3.0], [4.0, 5.0]]>

Note the main difference of this example with the example in the original issue is the Tout argument of tf.py_function. When tf.py_function returns a CompositeTensor, the Tout argument should be a subclass of tf.TypeSpec, i.e., tf.RaggedTensorSpec for a RaggedTensor.
See https://www.tensorflow.org/api_docs/python/tf/py_function for more information on tf.py_function and https://www.tensorflow.org/api_docs/python/tf/TypeSpec on tf.TypeSpec.

The issue should have been fixed by @edloper. The following example should work.
import tensorflow

# TF1
tf = tensorflow.compat.v1
with tf.Graph().as_default():
    elements = [[1., 2., 3.], [4., 5.]]
    ragged1 = tf.ragged.constant(elements)
    def py_func():
        return tf.ragged.constant(elements)

    ragged2 = tf.py_function(
        py_func, [], Tout=tf.RaggedTensorSpec([2, None], tf.float32)
    )
    with tf.Session() as sess:
        print(sess.run(ragged1))  # <tf.RaggedTensorValue [[1.0, 2.0, 3.0], [4.0, 5.0]]>
        print(sess.run(ragged2))  # <tf.RaggedTensorValue [[1.0, 2.0, 3.0], [4.0, 5.0]]>

# TF2
tf = tensorflow.compat.v2
def py_func():
  return tf.ragged.constant([[1., 2., 3.], [4., 5.]])

print(tf.py_function(py_func, [], Tout=tf.RaggedTensorSpec([2, None], tf.float32)))  # <tf.RaggedTensor [[1.0, 2.0, 3.0], [4.0, 5.0]]>

Note the main difference of this example with the example in the original issue is the Tout argument of tf.py_function. When tf.py_function returns a CompositeTensor, the Tout argument should be a subclass of tf.TypeSpec, i.e., tf.RaggedTensorSpec for a RaggedTensor.
See https://www.tensorflow.org/api_docs/python/tf/py_function for more information on tf.py_function and https://www.tensorflow.org/api_docs/python/tf/TypeSpec on tf.TypeSpec.

Thanks for your brief tutorial, but the given code will not work, if I convert it into the lambda function.

look forward to see the further improvement of tf..

@HuangChiEn Are you using TensorFlow 2.7?  Support for using composite tensors (such as RaggedTensor) with py_function was added with 2.7, so if you're using an earlier version of TensorFlow, then it won't work.  I tried executing your code as written:
tmp = lambda _: tf.ragged.constant([[1., 2., 3.], [4., 5.]])
tf.py_function(tmp, [], Tout=tf.RaggedTensorSpec([2, None], tf.float32))

And it failed with "<lambda>() missing 1 required positional argument: '_'" (which is expected, since your lambda takes one argument, but you didn't supply any arguments when you called tf.py_function).  If I change it the lambda to not expect any argument:
tmp = lambda: tf.ragged.constant([[1., 2., 3.], [4., 5.]])
tf.py_function(tmp, [], Tout=tf.RaggedTensorSpec([2, None], tf.float32))

Then it succeeds for me (in TF 2.7).


How to use ConsumerBuilder class provided in examples using NuGet packages

Hi  Confluent Kafka team,
We saw samples from this github repository for kafka consumer with ConsumerBuilder class as,

Can we use the same client ConsumerBuilder class through NuGet Package provided for Dot Net Core...?

Yes: You will have to install the RC packages from NuGet though!

Thanks for answer ....


seperate LaTeXSVG into latexsvgfile.jl

PR Checklist
If you are contributing to Javis.jl, please make sure you are able to check off each item on this list:

[x] Did I update CHANGELOG.md with whatever changes/features I added with this PR?
[ ] Did I make sure to only change the part of the file where I introduced a new change/feature?
[ ] Did I cover all corner cases to be close to 100% test coverage (if applicable)?
[ ] Did I properly add Javis dependencies to the Project.toml + set an upper bound of the dependency (if applicable)?
[ ] Did I properly add test dependencies to the test directory (if applicable)?
[ ] Did I check relevant tutorials that may be affected by changes in this PR?
[ ] Did I clearly articulate why this PR was made the way it was and how it was made?

Link to relevant issue(s)
Closes #
How did you address these issues with this PR? What methods did you use?

Make sure to run:
using JuliaFormatter
format(".")

in your root directory.

Thanks @ArbitRandomUser


proposal: golang.org/x/exp/ptr package

I encountered the need to wrap and unwrap pointers in many packages.
AWS SDK (e.g., aws.String, aws.ToString), Azure, etc.
As Go supports generics since version 1.18, it could be beneficial to have some generics-based helpers instead of implementing them over and over.
i've created a simplistic package to show the expected approach: https://github.com/candiduslynx/ptr

Duplicate of #38298

@seankhliao thanks for reviewing this. However, the packages described in #38298 are strongly coupled with types by function names.
In this proposal i suggest adding a small package based on generics.
Similar approach was used in golang.org/x/exp/slices where the most useful patterns were extracted using generics.
golang.org/x/exp/maps is another example of such approach.

generics were considered https://github.com/golang/go/issues/38298#issuecomment-634837296


forge init fails in Docker container due to lack of Git

Component
Forge, Other (please describe)
Have you ensured that all of these are up to date?

[X] Foundry
[ ] Foundryup

What version of Foundry are you on?
forge 0.2.0 (5490c4a 2022-04-25T10:46:12.972666458+00:00)
What command(s) is the bug in?
forge init
Operating System
Linux
Describe the bug
I've built foundry Docker image from master branch (5490c4a0fef0a83827e4d5642730ea9ceff641b2) using:
docker build -t foundry:latest .

However, this image fails on forge init:
> docker run foundry "forge init --no-git /test"
Initializing /test...
Installing ds-test in "/test/lib/ds-test", (url: https://github.com/dapphub/ds-test, tag: None)
Error:
   0: No such file or directory (os error 2)

Location:
   cli/src/cmd/forge/install.rs:107

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

This is due to forge init trying to run git, which is missing in the image. After this patch to Dockerfile it works correctly:
--- Dockerfile  2022-04-25 13:30:16.624326460 +0200
+++ Dockerfile-git      2022-04-25 13:30:45.170368985 +0200
@@ -15,10 +15,10 @@
 ENV GLIBC_KEY_FILE=/etc/apk/keys/sgerrand.rsa.pub
 ENV GLIBC_RELEASE=https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.35-r0/glibc-2.35-r0.apk

-RUN apk add linux-headers gcompat
+RUN apk add linux-headers gcompat git
 RUN wget -q -O ${GLIBC_KEY_FILE} ${GLIBC_KEY} \
     && wget -O glibc.apk ${GLIBC_RELEASE} \
     && apk add glibc.apk --force

This patch still doesn't allow running init without --no-git due to unconfigured git, but I think this isn't something that is expected to work:
Author identity unknown

*** Please tell me who you are.

Run

  git config --global user.email<EMAIL_ADDRESS>  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got 'unknown@7a491a9c0095.(none)')

Is git not installed on purpose to reduce image size or is it something that's considered a bug? If it's on purpose, would it be a good idea to add a note about this to https://book.getfoundry.sh/tutorials/foundry-docker.html ? In either case I'd be happy to submit a PR.

I think packaging git is fine personally, so supportive of a PR for that, should be simple. We probably just forgot

I lean a bit the other way and think that git should remain excluded from the base image build.  I don't see a use-case except when users should already be extending the image. For example:
docker run foundry "forge init --no-git /test"

unless I'm missing something, all this would do is init a repo and exit the docker container immediately.
Preferred usage pattern for developing within Docker would be one of two things:

Mount the local filesystem to Docker
Build a development image off of the base image and install any dependencies needed

If you look at, say, the rust:alpine or python:alpine images, they do not ship with git. I don't lean too strongly, but would advise against. Happy to add documentation to the book page.

@dmfxyz unfortunately forge init --no-git /test fails, as it still uses git ls-remote when installing dependencies:
> docker run foundry "forge init --no-git /test"
Initializing /test...
Installing ds-test in "/test/lib/ds-test", (url: https://github.com/dapphub/ds-test, tag: None)
Error:
   0: No such file or directory (os error 2)

Location:
   cli/src/cmd/forge/install.rs:107

Backtrace omitted. Run with RUST_BACKTRACE=1 environment variable to display it.
Run with RUST_BACKTRACE=full to include source snippets.

Personally I agree that users should handle it themselves by building a new development image, it just makes sense to mention in the docs that git is required and not provided in ghcr.io/foundry-rs/foundry, given that the error message itself doesn't mention git.

@kacperzuk cool, agree we should mention it in the book since the error is very nebulous. Thanks for calling it out.
Do you want to make the PR into the foundry book?

Here: https://github.com/foundry-rs/book/pull/245, I think we can close once this is merged.


Fix issue 369 (Test for jack.readers.implementations.reader_from_file)

Codecov Report

Merging #374 into master will increase coverage by 0.46%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #374      +/-   ##
==========================================
+ Coverage   48.62%   49.08%   +0.46%
==========================================
  Files          91       91
  Lines        5104     5103       -1
==========================================
+ Hits         2482     2505      +23
+ Misses       2622     2598      -24

Impacted Files
Coverage Δ

...s/natural_language_inference/conditional_bilstm.py
100% <100%> (ø)
:arrow_up:

jack/readers/extractive_qa/torch/fastqa.py
0% <0%> (ø)
:arrow_up:

jack/train_reader.py
54.79% <0%> (ø)
:arrow_up:

jack/core/torch.py
0% <0%> (ø)
:arrow_up:

jack/core/reader.py
98.8% <0%> (+1.19%)
:arrow_up:

jack/io/load.py
100% <0%> (+17.39%)
:arrow_up:

jack/io/SQuAD2jtr.py
58.33% <0%> (+37.5%)
:arrow_up:

Continue to review full report at Codecov.

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


add SolidPython support

see ttps://github.com/jeff-dh/SolidPython/issues/34

command line version:
p2scad --python_code "difference()(cube(10),sphere(15))"

difference() {
	cube(size = 10);
	sphere(r = 15);
}


The map was rendered fine for first time, but the map turn to grey on second time

Hi, love your work.
I'm new to google map and reactjs. I built a component with react-google-map and place it on one of my page. I found that if that page was load for first time, everything work good and well, but if navigate to leave that page, and then navigate back to it, the map was gone, only left a google logo and a grey blank area. and If I drag the browser window to resize it for a little, the map appeared again. It feels like the map was drawn correctly, but just invisible for some reason. and the window resize will trigger some action to make it right.
I googled around and searched the issues in this repo, I think I need to trigger the resize event programatically. but I don't know how, where and when.
Btw, I'm using the react-router for navigation control. and ScriptjsLoader to load google map api.
Could anyone give me some hints?
Thanks.

Do you have a transition related to the map? I had exactly the same issue as you and after some investigation I found out that a transition is causing these issues.
My map is inside a widget that can be collapsed and has a transition effect when showing the content. Removing the transition made the error disappear.
Unfortunately that is not a solution, but narrows down the issue.
HTH

Yes, I made transition on the map for kind of page turning effect.
But the problem remain unsolved :(

I guess letting the map render when the transition effect is finished could solve the issue, but today I am too lazy to try.

We're going to look into this shortly. In the meantime, feel free to submit a minimal repository that can fully reproduce this error so that anyone can try to help out. Thanks.
We're also looking for maintainers. Involve in #266 to help strengthen our community!

Just following up on this to see if any progress on this issue?

Please refer to Getting Help section in the README (or #469).


[FEAT] add a way to provide a training model (or texts) for the ai result

Is there a way to provide some texts blocks or context, so openai can give better results ?

Hello!
If I understood you correct. you might be able to do so throught "controlled component"-ish way.
You can save the result from, let's say, your backend and pass it into the extention.
The package itself does not work with context separately.

@etozhealkhipce
My question was about this:

to provide qualitative texts suggestions, is that possible to pass to this plugin some "pre-trainer" open ai profile or login ?


Ability to enable monitoring for the standalone gateway via the convenient method in ZeebeClusterBuilder

Is your feature request related to a problem? Please describe.
As a user, I should be able to enable the monitoring endpoint for the cluster easily by calling one method in io.zeebe.containers.cluster.ZeebeClusterBuilder.
Describe the solution you'd like
I would prefer to have a single method like public ZeebeClusterBuilder withStandaloneMonitoring() or something like that.
Describe alternatives you've considered
The ability to set environment variables for a standalone gateway would works for this case too.

Superseded by https://github.com/camunda-community-hub/zeebe-test-container/issues/150


Separate cli and client functionality

Currently the cli acts as both a command line interface for the tower and as a basic client. It will be nice to split the functionality so the client can be used as a test client for contributors and a basic implementation of the client logic, whereas the cli can be used to interact with the tower.

Commands I think would be useful for the cli once it is split from the client:

gettowerinfo: Get a summary of the data in the tower, such as tower_id, number of registered users, appointments in the watcher and responder, ...
getusers: Gets a list of users
getuser "user_id": Get info about a given user
getappointment "locator": Gets info about all the appointments given a locator


go: add First Missing Positive solution

File(s) Modified: go/41-First-Missing-Positive.go
Language(s) Used: go
Submission URL: _https://leetcode.com/problems/first-missing-positive/submissions/864477763/_

File renamed to go/0041-First-Missing-Positive.go


Add notification when timer stops

This is pull request to fix issue #41

Sorry for bothering @mtavkhelidze. Could you please approve this little fix?

Sure. @danilokleber what is this .travis... thing?

I don't know exactly. But I just noticed that the other PR I commented on could fix this bug along the way. So let's wait for the authors to show up.

Ok. It's been a long time since someone actually took care of this. I will now. Give me a few days and I'll have a look on all of it over the w/e. Hope you don't mind. that.


Create midnight-steam.css

Got laid off yesterday, so with nothing to do, I decided to make this Steam inspired flavor. Make any changes if you deem them necessary - ideally add the Steam logo to the home button. Couldn't figure it out myself.

Here's the code from catpuccin if you wanted to set it to the steam logo 👍
.childWrapper_f90abb:has(> svg:not(.favoriteIcon_dcc7a4)) {
	background: url('https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/logos/exports/1544x1544_circle.png');
	background-color: transparent !important;
	background-size: cover;
}

By default it turns the button background transparent, you can change that to fit how you will


Issue with license of Unidecode dependency

A dep conflict we were having with Unidecode led me to a Wagtail issue pointing out that Unidecode is GPLv2+ licensed, a viral license, which is incompatible with Oscar's BSD license.
We're using Unidecode to sanely strip unicode chars in our custom slugify function.
Without just dropping the OSCAR_SLUG_ALLOW_UNICODE setting and allowing unicode slugs everywhere, the only alternative I can see would be to adopt a solution like Wagtail's cautious_slugifier (wagtail/core/utils.py#L64)?

The commit that introduced this setting was intended to provide backward compatibility for the allow_unicode argument added to Django's own slugify function in Django 1.9.
Since we no longer support Django 1.8 I'd say we just replace this whole thing with Django's and pass OSCAR_SLUG_ALLOW_UNICODE as the allow_unicode argument.

But the problem with Django's slugify with allow_unicode=False is that it just strips the unicode characters, potentially resulting in zero length slugs.
slugify('你好')
> ''

slugify(unidecode('你好'))
> 'ni-hao'

Hmm okay. In that case I agree that a cautious_slugifier is the best alternative.

Fixed in #2749.


Question: Creating mesh with USharp

Not sure if this is the appropriate place to ask a question, but I am curious if there is a way to programatically create a mesh via USharp. If I am not mistaken, there are several ways one could create a mesh with UE's API:

Custom Mesh Component Plugin
Procedural Mesh Component
Blueprint versions of the above
Create Static Mesh
RawMesh

I'm looking for a way to create a mesh programmatically via USharp and I'm obviously missing some key lessons in how meshes work within UE. Is it possible to create a mesh from USharp and have it added to the scene either during editing or in game play? If so, can anyone point me in the right direction?

I briefly looked at this before. Doing it properly probably involves writing manual bindings / wrappers for the various native functions / structs used to create the meshes. This may be slightly problematic with marshalling.
So to answer the question; no there currently isn't an easy way to do this unless the Blueprint bindings are already generated correctly for USharp (in which case that might work).

unless the Blueprint bindings are already generated correctly for USharp (in which case that might work).

How would I determine if this is the case? I tested creating a mesh via a blueprint, directly in the editor, and that works of course.
Can I access an actor's blueprint from USharp and feed the CreateMeshSection node with the vertex/face data?

I was able to create a class that was Blueprintable and have that have a ProceduralMeshComponent. The class has a few lists for vertices and face IDs (which I populate from my code that is reading them from elsewhere) which can be retrieved and fed into a CreateMeshSection node in the blueprint editor.
That is enough to get me going for now!


Added Moniker to quick-pick-menu-controller.ts

solved #546   &&  added unit test coverage: code-controller

Thanks @JohnTheFarmer , thanks for the contribution!  We'll review the PR soon and let you know if there's any feedback.

Hi @JohnTheFarmer , the code/functionality look great!
@meganbradley @bharney0 @adunndevster Do you think we should add context validation to the moniker command? AFAIK the attribute should only apply to the YAML header so should we add a context check to ensure the cursor is in the header and if it's not we bail on the command and notify the user?

@jamarw I believe it also applies to the markdown body. #362

@jamarw I believe it also applies to the markdown body. #362

Hey @JohnTheFarmer , looks good!  It seems like it was adding the attribute to the markdown body when I first tested but it could've just been me.  I'll approve the PR and we'll ship the update soon.
Thanks

@jamarw I also added unit test coverage for code-controller and made some other simple changes, please review

@JohnTheFarmer  Thank you again for your contributions. We expect to release these changes to production tomorrow on docs-markdown release version 0.2.67


Available regions section mentions a region called UK North, which doesn't exist as far as I'm aware...

Is this a typo for a SA North?

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

ID: 46602618-c925-75b6-bf3e-1039f168f141
Version Independent ID: aa73eb53-55b6-6aa2-2542-e26fd32764fe
Content: Azure SQL Database serverless (preview)
Content Source: articles/sql-database/sql-database-serverless.md
Service: sql-database
Sub-service: service
GitHub Login: @moslake
Microsoft Alias: moslake

@danijam Thank you for reaching out.
We are actively investigating and will get back to you soon.

@danijam We have raised a Pull request https://github.com/MicrosoftDocs/azure-docs-pr/pull/88815 for this change. Once approved you will see the change to the document.
@oslake Please sign off on this pull request.

@danijam Serverless databases cannot be created in UK North (a national cloud) but can be created in North Europe or South Africa North. Thanks to @oslake for pointing it out. So this pull request will closed without any action. We will now proceed to close this thread. If there are further questions regarding this matter, please comment and we will gladly continue the discussion.

Related issue

What appears in the Azure Portal for selecting an available region and what is listed in the documentation does not align.

And then in the docs it lists UK North:

Another note is that this section of the doc lists Available Regions but identifies an exception list where the service is not available for deployment.

@oslake We are assigning this case to you for rejecting the previously created PR and also to remove the confusion create a PR for removing UK North from this document.
Please let me know if you need any help.

@danijam We are closing this thread as documentation is correct for the same.


Update README

Move the sail alias instructions to the top of the to install section
During the installation instructions (before composer install) add instructions to copy .env.example to a .env file
After composer install add sail npm install and sail artisan key:generate

Raised PR to fix this...anyone can take a look at this!


revisit presentation preview to accommodate self-attested and non-rev…

…ealed attributes.
The only (attribute) claim filter criteria for which I can imagine a use case in presentation preview are cred-def-id and schema-id: the holder proposes, and so the holder already knows the cred defs on which he has credentials to present. Explicitly inviting less stringent criteria seems to me to invite bait-and-switch style shenanigans. Note pedantically that in this context each attribute under proposal is a claim, not a credential.
I believe we should still keep this RFC status as PROPOSED as prototypical implementations may reveal further missing amenity.
Signed-off-by: sklump<EMAIL_ADDRESS>

Prototyping has shown my approach here for the presentation preview does not accommodate non-revocation status well. Further updates to come.


Passing custom patterns to words() does not work

If no pattern is passed to words(), the function extracts the words without any hiccup. But when we call words(pattern), the function is rendered useless, returning an empty string.

Have to pass a raw string as pattern for it to work. Another method is to escape all the characters that are important in a RegExp for it to work.

Have to pass a raw string as pattern for it to work. Another method is to escape all the characters that are important in a RegExp for it to work.


How many GPUs do you used for training?

Hi, thank you for making the code public.
I use the training and testing command you provided. However, the final test result of the model from the last epoch is about slightly lower than the number you provided: J&F-Mean 67.6(yours) VS 66.9(ours).
I'm guessing the problem might be that you didn't use sync_bn so the batch norm parameters are computed per GPU and maybe I'm using a different number of GPUs compared with you.
So how many GPUs do you use during training?

Hi, @Steve-Tod. How long to train the model with your GPUs? I have never trained the Kinetics 400 dataset. So I wonder if 4 2080ti can train the model. Thanks.

Hi, @Steve-Tod. How long to train the model with your GPUs? I have never trained the Kinetics 400 dataset. So I wonder if 4 2080ti can train the model. Thanks.

Hi all,
Thanks for your interest! I actually trained my models using 2 2080s. Indeed I did not use sync_bn, and since the effective videos per batch ends up being small, there might be variance in the batch statistics.
Changing the momentum of the batchnorm running stats could also improve transfer stability at convergence, as well as parameter averaging at the end of training.
Best,
Allan

Hi all,
Thanks for your interest! I actually trained my models using 2 2080s. Indeed I did not use sync_bn, and since the effective videos per batch ends up being small, there might be variance in the batch statistics.
Changing the momentum of the batchnorm running stats could also improve transfer stability at convergence, as well as parameter averaging at the end of training.
Best,
Allan

@ajabri Do I understand correctly that 25 epochs were used? How much wall clock time does it take? I'm now downloading the dataset and preparing to run the repro, curious how long it would take

@ajabri Do I understand correctly that 25 epochs were used? How much wall clock time does it take? I'm now downloading the dataset and preparing to run the repro, curious how long it would take

Have you used DataParallel or DistributedDataParallel in practice? The released code uses DataParallel, but has a variable model_without_ddp which invokes that DDP (DistributedDataParallel) might have been used.
Have you used the batch size of 20 for training the model? 20 is the default value for batch size in the released code. The paper does not contain a batch size.

Have you used DataParallel or DistributedDataParallel in practice? The released code uses DataParallel, but has a variable model_without_ddp which invokes that DDP (DistributedDataParallel) might have been used.
Have you used the batch size of 20 for training the model? 20 is the default value for batch size in the released code. The paper does not contain a batch size.

Have you used DataParallel or DistributedDataParallel in practice? The released code uses DataParallel, but has a variable model_without_ddp which invokes that DDP (DistributedDataParallel) might have been used.
Have you used the batch size of 20 for training the model? 20 is the default value for batch size in the released code. The paper does not contain a batch size.

I've tried to modify the code into DDP version, because DataParallel is inefficient and GPU utils was low. However, after I change it into DDP, the performance of each epoch drops about 1-2...

Have you used DataParallel or DistributedDataParallel in practice? The released code uses DataParallel, but has a variable model_without_ddp which invokes that DDP (DistributedDataParallel) might have been used.
Have you used the batch size of 20 for training the model? 20 is the default value for batch size in the released code. The paper does not contain a batch size.

I've tried to modify the code into DDP version, because DataParallel is inefficient and GPU utils was low. However, after I change it into DDP, the performance of each epoch drops about 1-2...

For the best performing models I indeed trained for 25 epochs. That said, the model reaches >95% relative performance in about 1/4 of that training time, from what I observed. With a batchsize of 20, I believe it takes about one week.
I initially used DistributedDataParallel, but switched to DataParallel early on as it was easier to debug. One difference with DDP is the way batchnorm stats might be handled.

For the best performing models I indeed trained for 25 epochs. That said, the model reaches >95% relative performance in about 1/4 of that training time, from what I observed. With a batchsize of 20, I believe it takes about one week.
I initially used DistributedDataParallel, but switched to DataParallel early on as it was easier to debug. One difference with DDP is the way batchnorm stats might be handled.

@ajabri if possible, could you please share the training curves/wandb logs? this would help a lot initial "debugging" of model extensions...

@ajabri if possible, could you please share the training curves/wandb logs? this would help a lot initial "debugging" of model extensions...


[homework: asking, writing, thinking, doing, 🔴 red-teaming 😈] Critique what you have built; Real-World Data; Historiography of Data, Incentives, & AI

Reading
Pro tip: try using an app on your phone or computer to read aloud to you at 1.5x speed! This can save time and make it easier to absorb information while not being tied down to a computer or device visually.

[x] Review the bug report we submitted: https://github.com/duckdb/duckdb/issues/7015 and the fix to avoid the bug we ran into for analyzing Zulip data: https://github.com/onefact/datathinking.org-codespace/blob/main/notebooks/in-class-notebooks/230420-zulip-chat-duckdb-loading.ipynb
[x] Review several editions of Style, Clarity and Grace (https://bookshop.org/p/books/style-lessons-in-clarity-and-grace-joseph-williams/8980182 - Libgen)
[x] [climate harms] Read https://arxiv.org/ftp/arxiv/papers/2104/2104.10350.pdf
[x] [global context thanks to @indrekromet] Read https://www.palladiummag.com/2023/02/23/the-west-lives-on-in-the-talibans-afghanistan/
Preparation for guest lecture

[x] Read https://arxiv.org/abs/2302.10329
[x] https://www.economist.com/science-and-technology/2023/04/05/it-doesnt-take-much-to-make-machine-learning-algorithms-go-awry (https://archive.ph/5l1k3#selection-1038.0-1038.1)

[x] [David Foster Wallace on Consumption] https://harpers.org/wp-content/uploads/2008/09/HarpersMagazine-1996-01-0007859.pdf
[x] [Cross-Cultural Research and Ethnography] Read excerpt from https://www.thefieldstudyhandbook.com/ - https://drive.google.com/file/d/1F9zr1pHesGPSOTtXLQu4hTxOGu7zoIRx/view?usp=sharing
[x] [Status games, social engineering] Read the chapter on status games in Impro (https://bookshop.org/p/books/impro-improvisation-and-the-theatre-keith-johnstone/11721204 or Libgen)
[x] [Closure on the data journey begun in the first class on COVID] https://www.wsj.com/articles/covid-origin-china-lab-leak-807b7b0a
[x] [History of Computing and Data Thinking] Read the Epilogue of Computer Age Statistical Inference by Hastie et al., https://hastie.su.domains/CASI_files/PDF/casi.pdf
[x] [Basics of GitHub] https://github.com/onefact/github-starter-course
Systems Thinking and Incentives:

[x] [Context on how big 4 consulting firms may/may not be replaced by AI] https://www.lrb.co.uk/the-paper/v44/n24/laleh-khalili/in-clover (https://archive.ph/yC1YQ)
[x] [High finance & geopolitics] https://www.theguardian.com/world/2016/jul/28/1mdb-inside-story-worlds-biggest-financial-scandal-malaysia
[x] [High finance & geopolitics] https://www.bloomberg.com/news/articles/2014-08-21/mugabes-bailout-och-ziff-investment-linked-to-zimbabwe-despot#xj4y7vzkg?leadSource=uverify wall
[x] [Predatory Investing] https://www.newyorker.com/magazine/2018/08/27/paul-singer-doomsday-investor
[x] [Global Geopolitics of AI] Chapter 1 - China's Sputnik Moment - and Chapter 4 - A Tale of Two Countries - of Kai-Fu Lee's AI Superpowers (https://bookshop.org/p/books/ai-superpowers-china-silicon-valley-and-the-new-world-order-kai-fu-lee/6960836 or Libgen)

Doing

[x] Edit https://en.wikipedia.org/wiki/Data_thinking using the learner definitions of data thinking
[x] Try playing one round of https://lost-at-sql.therobinlord.com/
[x] Install https://marketplace.visualstudio.com/items?itemName=charliermarsh.ruff and read the documentation, and activate the extension for python files opened in Visual Studio Code: https://beta.ruff.rs/docs/tutorial/
[x] Red-teaming Previous Homework:

[x] [Set timer: 10 minutes maximum] Before asking GPT (to avoid biasing yourself!), write your own critique of your homework. Questions to consider could be: what could be improved? What doesn’t make sense in the visualization? What doesn’t make sense in the writing?
[x] [Set timer: 10 minutes maximum] Ask GPT-4 to critique the homework or the visual using your favorite data thinking definition we have so far.
[x] [Set timer: 10 minutes maximum] Add this critique as a comment on the homework’s github issue, and link to the critique in Zulip.
[x] [Set timer: 10 minutes maximum] Repeat this exercise for the previous homework of one other person in the class

Creating

[x] Generate art or diagrams or logos using https://beta.dreamstudio.ai/generate and post on Zulip chat
[x] Use https://poly.cam/ to scan an object or location of your choosing; share the link on Zulip (bonus: feel free to try BlenderGPT: https://github.com/gd3kr/BlenderGPT to modify the 3D scan)
[x] Use duckdb to load the Zulip data into a SQL database, and use altair to visualize the data, following https://github.com/onefact/datathinking.org-codespace/blob/main/notebooks/in-class-notebooks/230420-debugging-duckdb-altair-falcon-3-1-1-service-requests.ipynb (run this notebook with this data: https://data.cityofnewyork.us/Social-Services/311-Service-Requests-from-2010-to-Present/erm2-nwe9 - and try changing the data source to be the Zulip data and post a visualization of the chat data on Zulip)

Thinking

[x] In a comment on this issue, propose a research question that you will aim to answer the upcoming final homework (and cross-post it on Zulip for feedback); include a rationale for why this topic matters to you, and decisions you need to make, and a clear articulation of the stakes. This can be a paragraph or several. Perhaps start with your experience report from the first homework.

Listening

[x] Listen to this podcast with Emily Bender: https://open.spotify.com/episode/2ILGlkAXAt4xfuKHwIV2on

Large Language Model Access Checklist

[x] Try GPT-4 at https://chat.openai.com/chat (ask on Zulip if you need access)
[x] Try https://serge.chat/
[x] Try https://bard.google.com
[x] Try https://console.anthropic.com/claude (ask on Zulip if you have not received an invite)
[x] Try https://www.phind.com/
[x] Try Copilot (https://github.com/features/copilot; free with GitHub Education Pack)
[x] Try Bing Chat (https://bing.com/chat)
[x] Try Huggingface Chat (hf.co/chat)

Research questions, I don't have an exact idea, but I see those topics are interesting:
1- Analyzing the impact of biased data on algorithmic decision-making
The algorithms are only as good as the data on which they are trained on.
2- Analyzing the impact of incorrect statistical methods on data-driven decision-making
The wrong statistical methods or not understanding the data domain can lead to incorrect conclusions and bad decisions.
3- The impact of multimodality on model performance.
when incorporating multimodal data into models improves the performance? could it be a confusion?

I posted my visualization of the data for this homework in the main channel in Zulip, and posting again here in case it was lost there.  :)