MSWC pre-training task is very easy

I tried my hand at pre-training a few of the models I use on the MSWC base training set. I found that it was really easy to overfit (100% train accuracy) on this data (even with random time shifts):

This model has 126k parameters and performs equally well to the M5 model in the paper. I think with a bit more tuning, I could get 98% validation accuracy with this model. Meaning that for bigger models, 99/100% validation accuracy should be within close reach...
What are your thoughts?

@Maxtimer97 Pinging Maxime, what do you think about the difficulty of the pre-train subset?
@V0XNIHILI Good point, the pre-train task is perhaps too easy given that all of the words are distinct and have many syllables. On the image datasets used for FSCIL, pre-train accuracy is usually around 80%. It does remain though that maintaining high accuracy through the continual learning portion is unsolved, and also that we monitor model complexity via network size and operations as well as accuracy.
Do you have any other ideas for how we can select a subset of words from the MSWC set?

Yes this is something we were already discussing before.
One element is this is already a bit harder if you take an online recurrent model vs a CNN. I get up to 95% test accuracy with a GRU with similar number of MACs.
Then the question of explanability of the dataset building with taking the longest words for now.
And I guess keyword classification nowadays is an easy problem but we maybe want to push for exploration with very compact models (and of course considering the FSCIL which is still challenging).
Else we could make it harder by selecting the smallest words but we go away from promoting the processing of temporal information.
For me this is OK because the target is not to convert the deep learning community to our dataset  but rather the neuromorphic and tinyML one and considering the average model people play with right now (local plasticity, bio-plausible neurons, super sparse spiking, etc.), I think they will still have a challenge on this task.

If we want to push for a real challenging temporal task with continual learning I would be up to brainstorm on that, but then we need to think of really long sequences and what transformers and state space models can do on such a task :)

Ok I mean my remaining concern was the question of having a less temporal task with shorter keywords but I guess we are not testing long range memory anyway.
So if you just want to move to shorter keywords @V0XNIHILI I guess you could go ahead, generate the new dataset and see how the baseline models perform. I can help if something doesn't work out of the box with the current models (actually I noticed LIF models maybe work even better than adLIF for the prototype approach, so it would be something to try for the shorter keywords).
The remaining point then is just what it means for the paper @jasonlyik, can we just resubmit an adapted version with the shorter keywords and updated results?

@Maxtimer97 In terms of the paper, we are still waiting for reviews, and especially early on before too many people are using the dataset it is the best time to change, if we want to change.

So, how should we proceed then? For selecting shorter keywords, I think I will be able to do this. Then: what is the timeline/deadline for such a change?

@V0XNIHILI The reviews have returned. None were specifically concerned with the high starting accuracy on the MSWC task, but it is still something we can upgrade. We are planning to return the revision within the next 6-10 weeks. Are you still looking into the shorter keywords dataset changes?

Okay, that sounds good. Yes I'd still like to do it but I haven't had the chance yet. I'll try to do it before the end of this month. If I can't manage timewise, I'll update you ASAP.

Hey @V0XNIHILI, do you have any updates on this?

Hey @jasonlyik, I have a small update. To stay true to the multilingual aspect of the original dataset, I kept five European languages (20 words each, total 100 words) and selected the shorted (in terms of characters) words with > 1000 samples + removing all words with equal spelling. Also I replaced Catalan by Spanish for the base set and Spanish for Turkish in the continual learning set as Spanish and Catalan are quite similar to each other in terms of pronunciation/intonation.
I guess what remains then is to retrain on this set and see what the performance impact is?
import json

path = 'metadata.json'
data = json.loads(open(path, 'r').read())

# Remove for each key in data, the key 'filenames' to make dict ligher
for key in data:
    if 'filenames' in data[key]:
        del data[key]['filenames']

def get_words(data, langs, count, min_samples, non_overlap_words = None):
    wc_selected = {}
    all_words = non_overlap_words or []
    all_words = all_words[:]

    for lang in langs:
        wc_selected[lang] = {}
        wc = data[lang]['wordcounts']

        # Only select words that have a higher word count than 1000
        for key in wc:
            if wc[key] > min_samples:
                wc_selected[lang][key] = wc[key]

        sorted_words = sorted(wc_selected[lang], key=len)

        for word in sorted_words:
            if word in all_words:
                sorted_words.remove(word)

        selected_words = sorted_words[:count]
        all_words.extend(selected_words)

        if len(selected_words) < count:
            raise ValueError('Not enough words for language: ' + lang)

        # Sort by shortest word
        wc_selected[lang] = selected_words

    return wc_selected

base_langs = ['en', 'de', 'fr', 'es', 'it']
base_words = get_words(data, base_langs, 20, 1000)
all_base_words = [word for lang in base_words for word in base_words[lang]]

cont_words = get_words(data, ['fa', 'tr', 'ru', 'cy', 'it', 'eu', 'pl', 'eo', 'pt', 'nl'], 10, 500, all_base_words)

This yields:
>>> base_words

{'en': ['has',
  'the',
  'big',
  'car',
  'sat',
  'for',
  'age',
  'saw',
  'cut',
  'eye',
  'yet',
  'box',
  'hey',
  'six',
  'lie',
  'got',
  'boy',
  'son',
  'job',
  'set'],
 'de': ['gab',
  'mir',
  'sie',
  'tun',
  'ihn',
  'mit',
  'ich',
  'ihr',
  'oft',
  'tag',
  'und',
  'gar',
  'ist',
  'ort',
  'für',
  'aus',
  'ihm',
  'vor',
  'gut',
  'wer'],
 'fr': ['rue',
  'six',
  'lui',
  'non',
  'bas',
  'fin',
  'les',
  'oui',
  'peu',
  'moi',
  'dit',
  'été',
  'qui',
  'mes',
  'des',
  'une',
  'dès',
  'bon',
  'mon',
  'ici'],
 'es': ['así',
  'uno',
  'era',
  'día',
  'año',
  'han',
  'por',
  'hay',
  'con',
  'ese',
  'san',
  'una',
  'del',
  'muy',
  'las',
  'fue',
  'que',
  'sus',
  'vez',
  'los'],
 'it': ['era',
  'sua',
  'che',
  'due',
  'per',
  'tra',
  'sul',
  'più',
  'suo',
  'nel',
  'dei',
  'gli',
  'dal',
  'loro',
  'sono',
  'come',
  'anni',
  'dopo',
  'alla',
  'aveva']}

>>> cont_words

{'fa': ['صدا', 'دهم', 'یاد', 'کمک', 'خون', 'قبل', 'های', 'این', 'هیچ', 'کنه'],
 'tr': ['yüz',
  'ise',
  'iki',
  'çok',
  'beş',
  'var',
  'bin',
  'bir',
  'için',
  'ancak'],
 'ru': ['нам', 'эта', 'как', 'эти', 'его', 'мне', 'эту', 'все', 'уже', 'нет'],
 'cy': ['awr', 'mwy', 'dim', 'ble', 'nhw', 'gan', 'eto', 'chi', 'ond', 'fod'],
 'it': ['cui', 'nei', 'mai', 'sua', 'può', 'poi', 'due', 'sia', 'tre', 'tra'],
 'eu': ['bat', 'eta', 'edo', 'dut', 'ere', 'dio', 'lan', 'zer', 'oso', 'den'],
 'pl': ['jak', 'dla', 'gdy', 'też', 'był', 'ale', 'cię', 'czy', 'pod', 'nad'],
 'eo': ['sen', 'min', 'unu', 'kaj', 'tio', 'laŭ', 'oni', 'ĝin', 'ili', 'tro'],
 'pt': ['foi', 'mas', 'são', 'não', 'com', 'tem', 'seu', 'ela', 'ele', 'meu'],
 'nl': ['wat', 'bij', 'een', 'aan', 'dat', 'het', 'van', 'uit', 'dan', 'was']}

Looks good, I hope the shortest words aren't too difficult - especially with many of them being single syllable and also because MSWC has automated alignment the words may not be very clear.
I'd guess we should shoot for something around the difficulty of the common FSCIL benchmarks, which looks to be around 75%-85% on base classes / session 0 (here's a latest FSCIL paper).
I'll be finalizing the revision at the start of next month, if you could have any modification by the end of this month that would be great!

Hey Jason, to give you an update: today I will schedule training on the above shortest words, but I will also try words with maximum length 5, 7 and 9. I can hopefully post the results of that tonight CET time.

@jasonlyik sorry for my late reply, hopefully the results can still be useful...
Legend:

Orange line = 5 characters or more
Green line = exactly 5 characters
Pink line = exactly 4 characters
Gold line = exactly 3 characters

I used the same languages as before (base_langs = ['en', 'de', 'fr', 'es', 'it']) and (cont_langs = ['fa', 'tr', 'ru', 'cy', 'it', 'eu', 'pl', 'eo', 'pt', 'nl']) although I didnt try the continual learning yet. I can try to run that as well.
Let me know what you think and how we should proceed!

Looks good Douwe, can we see how the prototypes work for the continual learning part as well?
At this point I'm not sure we have enough time to push this new change as a major revision into the article, and I'd like to see more tests as well. The forward plans with the harness are to allow for many benchmarks to be included, so that one could find them all in one location and do whatever tests they would like. So, I think this more challenging keyword subset would be nice to add as something like an MSWC-short dataloader, which would enrich the FSCIL benchmark as a whole.

@jasonlyik  here are the graphs for the continual learning part. Seems like exactly 5 characters strikes a good trade-off. What do you think? Also, I quite like the idea of MSWC-short!

Hey Douwe, sorry for not reacting ealier but this looks very nice!
Are these results on the CNN or the SNN?
And so you have a big drop while converting the models to prototypes?
Then I agree, it would be nice to have it as an alternative version of the task called MSWC-short!
And for best impact we should also pre-fix the samples and create a new dataset for huggingface :)
And maybe there would be space for supplementary materials on the paper to descibe it quickly?
Anyway thank you for the work!

On the CNN, the M5!
@jasonlyik anything I can mean for the supplementary material of the paper with this data?

Great to see that this moves more in line with standard FSCIL tasks!
I have added these couple of sentences to the Methods section under the Keyword FSCIL task section:

Using shorter keyword subsets can lead to greater challenge in both base language training and continual class learning. The full list of chosen words for the task presented in this paper (longest words), as well as other potential subsets of short words for the same languages, can be found with dataset documentation through the harness.

@V0XNIHILI Could you package the script/data and send in a PR so that we can add it to the harness as well as auto-download from HuggingFace?

Super, thanks a lot Jason! Yep, will do this!!


Some tests in error when make package

I just checked the latest Jedis master branch and the latest Redis master branch (unstable branch) 20 minutes ago. Then I tried to run make package under Jedis. It shows some tests in error as below:
Results :
Tests in error:
ControlCommandsTest.waitReplicas:123 » JedisData ERR unknown command 'WAIT'
JedisClusterReplicateTest.testClusterFailover:159 » JedisData ERR You should s...
JedisSentinelPoolTest.ensureSafeTwiceFailover:43->forceFailover:143 » JedisData
JedisSentinelTest.sentinelFailover:94 » JedisData NOGOODSLAVE No suitable slav...
Tests run: 365, Failures: 0, Errors: 4, Skipped: 0
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 02:09 min
[INFO] Finished at: 2014-08-14T00:19:49+08:00
[INFO] Final Memory: 16M/310M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.16:test (default-test) on project jedis: There are test failures.
[ERROR]
[ERROR] Please refer to /Users/genelian/yahoo/twdata/legolas/jedis/target/surefire-reports for the individual test results.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
make: *** [package] Error 1
Can any one help me out? Thanks!

One thing we can do is to start every redis with a random available port instead of a fixed one.
This can be done with something like this:
python -c 'import socket; s=socket.socket(); s.bind(("", 0)); print(s.getsockname()[1]); s.close()'


python3Packages.environs: 9.4.0 -> 9.5.0

Motivation for this change
https://github.com/sloria/environs/blob/master/CHANGELOG.md#950-2022-01-30
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 157441 run on x86_64-linux 1

4 packages built:

python310Packages.deezer-python
python310Packages.environs
python39Packages.deezer-python
python39Packages.environs


[Bug] latest and 1.x.latest tags for ghcr Docker releases are stale

Is this a new bug in dbt-core?

[X] I believe this is a new bug in dbt-core
[X] I have searched the existing issues, and I could not find an existing issue for this bug

Current Behavior
Look at https://github.com/dbt-labs/dbt-spark/pkgs/container/dbt-spark/versions?filters[version_type]=tagged
1.2.3 is tagged as latest:

Expected Behavior
1.7.6 is tagged as latest and 1.7.latest:

And the rest of the 1.x minor versions have 1.x.latest tags as well.
Steps To Reproduce
See current behavior above.
Relevant log output
No response
Environment
- OS:
- Python:
- dbt:

Which database adapter are you using with dbt?
postgres
Additional Context
No response

https://github.com/dbt-labs/dbt-core/pull/9495 fixes the underlying issue (thank you @mikealfare !), and this particular issue will be resolved for each 1.x version of this adapter upon its next patch release.
We are choosing not to address any un-supported versions at this time, so <=1.4.x will not be updated.
Here are the most recent ones for the supported versions of dbt-postgres in PyPI:

1.7.6
1.6.9
1.5.9

So this will be completely resolved for >=1.5.x when each of the following are released (but only if each is released prior to falling out of support):

1.7.7
1.6.10
1.5.10


CLI: panic on mcapp install

Cli version: v2.2.0-rc11
Steps to reproduce (least amount of steps as possible):

Have a 2C4G single node K8S cluster with Rancher HA installed, and a GKE cluster provisioned
$ rancher login -t xxx xxx
$ rancher mcapp install redis myredis

Result:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x13f137c]

goroutine 1 [running]:
github.com/rancher/cli/cmd.multiClusterAppTemplateInstall(0xc4200c4b00, 0xc42015cb00, 0xc4200c4b00)
	/go/src/github.com/rancher/cli/cmd/multiclusterapp.go:629 +0xd0c
github.com/rancher/cli/vendor/github.com/urfave/cli.HandleAction(0x1483360, 0x1580b00, 0xc4200c4b00, 0x0, 0xc420156300)
	/go/src/github.com/rancher/cli/vendor/github.com/urfave/cli/app.go:501 +0xd2
github.com/rancher/cli/vendor/github.com/urfave/cli.Command.Run(0x1562686, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x156b460, 0x1b, 0x0, ...)
	/go/src/github.com/rancher/cli/vendor/github.com/urfave/cli/command.go:165 +0x4bb
github.com/rancher/cli/vendor/github.com/urfave/cli.(*App).RunAsSubcommand(0xc42013a380, 0xc4200c4840, 0x0, 0x0)
	/go/src/github.com/rancher/cli/vendor/github.com/urfave/cli/app.go:383 +0xad7
github.com/rancher/cli/vendor/github.com/urfave/cli.Command.startApp(0x1565cc8, 0x10, 0x0, 0x0, 0xc42007b8c0, 0x3, 0x3, 0x156f3aa, 0x22, 0x0, ...)
	/go/src/github.com/rancher/cli/vendor/github.com/urfave/cli/command.go:330 +0x944
github.com/rancher/cli/vendor/github.com/urfave/cli.Command.Run(0x1565cc8, 0x10, 0x0, 0x0, 0xc42007b8c0, 0x3, 0x3, 0x156f3aa, 0x22, 0x0, ...)
	/go/src/github.com/rancher/cli/vendor/github.com/urfave/cli/command.go:103 +0x8c9
github.com/rancher/cli/vendor/github.com/urfave/cli.(*App).Run(0xc42013a1c0, 0xc42010e300, 0x5, 0x8, 0x0, 0x0)
	/go/src/github.com/rancher/cli/vendor/github.com/urfave/cli/app.go:259 +0x740
main.mainErr(0xc42011ff70, 0x0)
	/go/src/github.com/rancher/cli/main.go:116 +0x1605
main.main()
	/go/src/github.com/rancher/cli/main.go:57 +0x22

Other details that may be helpful:
It does not happen in a standalone rancher. Inspecting the code, it is probably because the heavy loaded Rancher/K8S takes longer time to handle the conditions thus we get nil status when fetching the mcapp object after it is created.

available in v2.2.0-rc13

Validated with cli v2.2.0-rc13. MCapp install did not panic
Command used: ./rancher mcapp install redis myredis
Mcapp installation and corresponding app installation succeeded.


itemFormatter/titleFormatter docs mismatch/misplaced between translations

It seems the Tooltip itemFormatter and titleFormatter have a mismatch between the english file and the chinese file.
Chinese version
|itemFormatter|||提示框单个serie或数据项内容的字符串模版格式器。支持用 \n 换行。用
|titleFormatter|||提示框标题内容的字符串模版格式器。支持用 \n 换行。可以单独设置占位符{i}表示忽略不显示title。 模板变量有{.}、{a}、{b}、{c}、{d}、{e}、{f}、{g}。
 {.}为当前所指示或index为0的serie的对应颜色的圆点。
 {a}为当前所指示或index为0的serie的系列名name。
 {b}为当前所指示或index为0的serie的数据项serieData的name，或者类目值（如折线图的X轴）。
 {c}为当前所指示或index为0的serie的y维（dimesion为1）的数值。
 {d}为当前所指示或index为0的serie的y维（dimesion为1）百分比值，注意不带%号。
 {e}为当前所指示或index为0的serie的数据项serieData的name。
 {h}为当前所指示或index为0的serie的数据项serieData的十六进制颜色值。
 {f}为数据总和。
 {g}为数据总个数。
 {.1}表示指定index为1的serie对应颜色的圆点。
 {a1}、{b1}、{c1}中的1表示指定index为1的serie。
 {c1:2}表示索引为1的serie的当前指示数据项的第3个数据（一个数据项有多个数据，index为2表示第3个数据）。
 {c1:2-2}表示索引为1的serie的第3个数据项的第3个数据（也就是要指定第几个数据项时必须要指定第几个数据）。
 {d1:2:f2}表示单独指定了数值的格式化字符串为f2（不指定时用numericFormatter）。
 {d:0.##} 表示单独指定了数值的格式化字符串为 0.## （用于百分比，保留2位有效数同时又能避免使用 f2 而出现的类似于"100.00%"的情况 ）。
 示例："{a}:{c}"、"{a1}:{c1:f1}"、"{a1}:{c1:0:f1}"、"{a1}:{c1:1-1:f1}"

English version
|itemFormatter|||a string template formatter for a single Serie or data item content. Support for wrapping lines with \n. Template variables are {.}, {a}, {b}, {c}, {d}.
 {.} is the dot of the corresponding color of a Serie that is currently indicated or whose index is 0.
 {a} is the series name of the serie that is currently indicated or whose index is 0.
 {b} is the name of the data item serieData that is currently indicated or whose index is 0, or a category value (such as the X-axis of a line chart).
 {c} is the value of a Y-dimension (dimesion is 1) from a Serie that is currently indicated or whose index is 0.
 {d} is the percentage value of Y-dimensions (dimesion is 1) from serie that is currently indicated or whose index is 0, with no % sign.
 {e} is the name of the data item serieData that is currently indicated or whose index is 0.
 {f} is sum of data.
 {.1} represents a dot from serie corresponding color that specifies index as 1.
 1 in {a1}, {b1}, {c1} represents a serie that specifies an index of 1.
 {c1:2} represents the third data from serie's current indication data item indexed to 1 (a data item has multiple data, index 2 represents the third data).
 {c1:2-2} represents the third data item from serie's third data item indexed to 1 (i.e., which data item must be specified to specify).
 {d1:2: F2} indicates that a formatted string with a value specified separately is F2 (numericFormatter is used when numericFormatter is not specified).
 {d:0.##} indicates that a formatted string with a value specified separately is 0.##   (used for percentage, reserved 2 valid digits while avoiding the situation similar to "100.00%" when using f2 ).
 Example: "{a}, {c}", "{a1}, {c1: f1}", "{a1}, {c1:0: f1}", "{a1} : {c1:1-1: f1}"

|titleFormatter|||The string template formatter for the tooltip title content. Support for wrapping lines with \n. The placeholder {I} can be set separately to indicate that the title is ignored and not displayed. Template see itemFormatter.

It looks like the english docs is correct and the chinese docs have a missing piece and/or is misplaced. Since the website show only the chinese docs (see #283), this mismatch could only be found looking at the source files.

Thanks for the feedback, we will complete the documentation as soon as possible.


session_authorized, session_validate vs is_logged_in, is.null(session)||is_logged_in

Initial motivation for this issue (but see below):
wanted to export session_authorized because it's at least as useful as session_validate for clients.

...hmm. but now I see that very similar functionality is already available as is_logged_in. Now I'm wondering if session_authorized serves any purpose better than is_logged_in. The only place it's used in the package is in the internal function check_session:
check_session <- function(x) {
	if (!session_authorized(x))
		stop('session is not authorized. See ?authenticate_sb', call. = FALSE)
}

And this looks like a case where is_logged_in would also be appropriate.
Can we delete session_authorized?

Bringing some data to this. A bit surprisingly to me, session_authorized and session_validate are always slower than options involving is_logged_in, even though they skip the GET call. They are also potentially less reliable since they depend on our perfect understanding of how SB renews sessions.
library(microbenchmark)
library(dplyr)
library(sbtools)

# without login
session_logout()
bind_rows(
	summary(microbenchmark({session_validate()})),
	summary(microbenchmark({is.null(current_session()) || is_logged_in()})),
	summary(microbenchmark({session_authorized()})),
	summary(microbenchmark({!is.null(current_session()) && is_logged_in()})),
	summary(microbenchmark({is_logged_in()})))
#                                                    expr     min      lq     mean   median      uq      max neval
#                                                   (chr)   (dbl)   (dbl)    (dbl)    (dbl)   (dbl)    (dbl) (dbl)
# 1                            {     session_validate() }  5.3210  5.7020  7.46156  5.70200  6.0820  82.1030   100
# 2  {     is.null(current_session()) || is_logged_in() }  3.8010  3.8010  4.34089  4.18100  4.1810  29.6480   100
# 3                          {     session_authorized() }  7.6020  7.6020  8.16098  7.98200  7.9830  33.0690   100
# 4 {     !is.null(current_session()) && is_logged_in() }  3.8010  3.8010  4.24584  4.18100  4.1810  22.4270   100
# 5                                {     is_logged_in() } 77.3485 88.0165 94.43853 89.12602 90.9929 376.2634   100

# with login
authenticate_sb()
bind_rows(
	summary(microbenchmark({session_validate()})),
	summary(microbenchmark({is.null(current_session()) || is_logged_in()})),
	summary(microbenchmark({session_authorized()})),
	summary(microbenchmark({!is.null(current_session()) && is_logged_in()})),
	summary(microbenchmark({is_logged_in()})))
#                                                    expr       min        lq      mean    median        uq      max neval
#                                                   (chr)     (dbl)     (dbl)     (dbl)     (dbl)     (dbl)    (dbl) (dbl)
# 1                            {     session_validate() } 252.00900 263.98250 275.85294 270.44450 279.94650 592.9630   100
# 2  {     is.null(current_session()) || is_logged_in() }  76.89352  88.54693  96.21872  90.01775  91.79473 375.2698   100
# 3                          {     session_authorized() } 241.74600 258.09100 274.87217 265.31200 278.61650 525.3040   100
# 4 {     !is.null(current_session()) && is_logged_in() }  76.85741  80.07575  91.09422  86.13270  89.33736 352.5936   100
# 5                                {     is_logged_in() }  76.89200  79.25567  86.44213  80.34638  82.00934 355.1825   100

I propose that we

rewrite session_validate so to simply contain is.null(session) || is_logged_in(session) (faster)
rename session_validate to session_valid (because it doesn't DO stuff, just gets info)
remove session_authorized from the package (redundant with & slower than is_logged_in)
rewrite is_logged_in to check for a NULL session before going to session_details, i.e., with !is.null(session) && session_details(..., session = session)$isLoggedIn (faster)

Thoughts, @lawinslow @sckott @jread-usgs ?

Also want to confirm that is_logged_in detects a change in authorization status due to session timeout (using code that reflects the above changes 1, 3, and 4).
> library(sbtools)
> authenticate_sb()
> session_validate()
[1] TRUE
> is_logged_in()
[1] TRUE
> Sys.time()
[1] "2016-02-15 12:33:41 CST"
> Sys.time()
[1] "2016-02-15 12:42:35 CST"
> is_logged_in() # possibly renews session?
[1] TRUE
> # wait an hour since the call to authenticate_sb()
> Sys.time()
[1] "2016-02-15 13:38:21 CST"
> is_logged_in()
[1] FALSE
Warning message:
In current_session() :
  SB authentication expired, SB interaction may fail. Please re-authenticate using authenticate_sb().

One thing this demonstrates is that is_logged_in() does not itself renew the session. Good to know.
The other, main thing is that current_session() and is_logged_in() both notice, in different ways (internal records and SB records, respectively) that the session has expired. And they tell you this with a warning and a FALSE. We won't lose this info by switching from session_authorized to is_logged_in.

I'm not sure what's going on with that benchmark. I got similar results using your above code with microbenchmark, but those results are way off.
> system.time(replicate(100, session_validate()))
   user  system elapsed
   0.04    0.00    0.04
> system.time(replicate(100, is_logged_in()))
   user  system elapsed
   1.56    0.16   10.04

using just system.time, I get results that make a lot more sense. is_logged_in takes two orders of magnitude more time. This is from my home connection where my RTT to the WAF (beyond which pings are dropped) is ~65ms, so your mileage may vary if you're internal USGS or further away.

Why have both?
Good question. One could argue that you might have two different use-cases. 1) You want to catch easy to predict errors like a very old session. 2) You want an unequivocal way to check authorization, which is going directly to SB.

We certainly could drop all functions which guess the session state internally and replace them directly with round-trip to SB versions. This would roughly double the amount of time each request takes, increase the error rate (every HTTP transaction has a non-zero chance of random failure), and increase the certainty of our session state (no time and age tracking).
Alternatively, all functions could be kept as they are to support fast, non-round-trip checking of session state and also more direct, HTTP-query based checking.
I personally lean towards removing as much internal package state as possible. This will have the effect of reducing sbtools performance by about 2x (practically probably a less).

rewrite session_validate so to simply contain is.null(session) || is_logged_in(session) (faster)
rename session_validate to session_valid (because it doesn't DO stuff, just gets info)
remove session_authorized from the package (redundant with & slower than is_logged_in)
rewrite is_logged_in to check for a NULL session before going to session_details, i.e., with !is.null(session) && session_details(..., session = session)$isLoggedIn (faster)

I am on board with this plan. Let's let @jread-usgs and @sckott weigh in before we make these changes.

@lawinslow , your new info on runtime makes me think differently about the problem - for a few hours it was a win-win in my mind, but now it's a tradeoff between speed and internal simplicity, with reliability costs on both sides. we do a validity check at the start of pretty much every function call, so i'm much less excited about removing the shortcuts (local checks) now that I know they're so much faster and have been reminded that they might not be any less reliable.
a third option (besides keeping everything as-is and moving to all round-trip checks), would be to

name & document the functions so it's clear which uses local checks and which goes round-trip (or consolidate to two functions, for authorized and valid, that each have a flag for local vs round-trip),
set a policy for internal use of local vs round-trip checks, and
suggest a user policy for when to use local vs round-trip checks.

PS -- i figured out why microbenchmark appeared to give such contradictory results. it customizes the units to the results, and my bind_rows was wiping out the units differences. my bad.
# without login
if(is_logged_in()) session_logout()
no_login_mb2 <- microbenchmark(
  session_validate(),
  is.null(current_session()) || is_logged_in(),
  sbtools:::session_authorized(current_session()),
  !is.null(current_session()) && is_logged_in(),
  is_logged_in(),
  control=list(warmup=0))
no_login_mb2
#                                            expr       min         lq         mean     median        uq         max
#                              session_validate()    32.689    89.8945    102.78778    95.2160   124.864     163.065
#    is.null(current_session()) || is_logged_in()     6.462    13.6840     16.95275    15.5845    17.105      57.395
# sbtools:::session_authorized(current_session())    48.653   113.8415    129.48613   126.3850   158.503     222.361
#   !is.null(current_session()) && is_logged_in()     5.321    14.4440     19.10409    16.3450    18.245      68.039
#                                  is_logged_in() 72831.725 83512.4570<PHONE_NUMBER>8 85064.4215 88206.552 1320398.774

# with login
authenticate_sb()
with_login_mb2 <- microbenchmark(
  session_validate(),
  is.null(current_session()) || is_logged_in(),
  sbtools:::session_authorized(current_session()),
  !is.null(current_session()) && is_logged_in(),
  is_logged_in(),
  control=list(warmup=0))
with_login_mb2
#                                            expr       min         lq       mean    median        uq        max neval
#                              session_validate()   317.006   886.0225   936.3330  1007.085  1062.201   1199.989   100
#    is.null(current_session()) || is_logged_in() 75082.321 84000.7010 89968.1929 85057.389 87438.361 354469.396   100
# sbtools:::session_authorized(current_session())   319.667   927.2640   992.9647  1078.545  1100.401   1239.899   100
#   !is.null(current_session()) && is_logged_in() 74680.551 83777.0095 96587.6658 85463.151 89560.102 367438.544   100
#                                  is_logged_in() 74521.667 83253.6065 91475.0430 84973.957 87737.883 455502.177   100

interested in input from all @lawinslow @jread-usgs @sckott

@aappling-usgs -- do you have any recollection of whether this issue really needs to still be open? It just cought my eye and I found it curious that it's open.


Top level README refers to missing API doc

The top level README says the API is documented as follows, but it references a file that no longer exists:
Underneth all communication happends via protocol-buffer objects over sockets (see [the runtime API README](north_common/README.md))

Superseded by #426


add visibility annotations

Add a @public, @protected or @private annotation to anything that's publicly visible.
See https://github.com/phetsims/tasks/issues/307.

This issue seems stale to me. 65% of Scenery has been converted to typescript, and visibility annotations are now required in type-checking. I skimmed through javascript files and saw visibility annotations throughout. I cannot confirm that this is 100% applied across all javascript scenery files, but since we are dedicated to the typescript conversion, spending time here no longer seems beneficial.
I will close, but if someone feels differently please reopen.


how to install two node RAC using Ansible?

I am using this site "https://github.com/oravirt/ansible-oracle"  as reference but the yml file used there is only referring to one node .
can someone guide me on exactly which files to use ?
thanks

Hi, first of all - thanks for trying this out!
You need to be more specific - which file are you referring to?

for a two node RAC install is this going to be my playbook ? full-rac-install-dc1.yml
also I want to remove the steps for storage configurations since system admins already did that,, can you please guide me on how to remove it ?
thanks

I started with a simple file that just setup the ssh between two nodes, its working fine for oracle user but it skips the ssh setup for grid user for some reason, can you tell why ?
---------------------- files ------------------------------------------------------------------------
ansible-playbook -i hosts full-rac-install.yml -u kn857sa -k -K
[kn857sa@dotstoans101 ansible-oracle-master]$ more full-rac-install.yml

name: ssh configuration
hosts: orarac
user: kn857sa
become: yes
serial: 1
roles:

{role: orahost-ssh}

--------------------------------------------- ERROR -----------------------------------------------------
TASK [orahost-ssh : ssh-keys | get public key for oracle user] ***************************************************************************************************************************
changed: [dotstodb750]
TASK [orahost-ssh : ssh-keys | get public key for grid user] *****************************************************************************************************************************
skipping: [dotstodb750]
TASK [orahost-ssh : ssh-keys | Add keys for oracle user] *************************************************************************************************************
TASK [orahost-ssh : ssh-keys | Add keys for grid user] ***********************************************************************************************************************************
skipping: [dotstodb750]
TASK [orahost-ssh : ssh-keys | create .known_hosts] **************************************************************************************************************************************
ok: [dotstodb750] => (item=oracle)

even from the start when he is getting the public keys , it skips the "grid" user
TASK [orahost-ssh : ssh-keys | get public key for oracle user] ***************************************************************************************************************************
changed: [dotstodb749]
TASK [orahost-ssh : ssh-keys | get public key for grid user] *****************************************************************************************************************************
skipping: [dotstodb749]

ok I fixed this issue , I have another issue though , I will open a new thread since its different issue.
thanks for your help

Ok, great.
Just for reference, if you want to have the grid user own the GI this needs to be set:
role_separation: True.
That will also set up the keys for the grid user

Thanks
Can you please see the other issue I opened ?
I am really excited to work with your solution
Regards
On Apr 23, 2019 13:58, Mikael Sandström<EMAIL_ADDRESS>wrote:
Ok, great.
Just for reference, if you want to have the grid user own the GI this needs to be set:
role_separation: True.
That will also set up the keys for the grid user
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHubhttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Foravirt%2Fansible-oracle%2Fissues%2F168%23issuecomment-485910063&data=02|01||f5a39b8931eb403baae708d6c81553f8|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636916391253702525&sdata=Noog5AvQD5q8b3ygB0DMsUsDj5jtnKyhP0tGb8l4HB0%3D&reserved=0, or mute the threadhttps://eur04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FABLKFRC6YKWL4KIHD74TCTTPR5E5FANCNFSM4HHSGMLQ&data=02|01||f5a39b8931eb403baae708d6c81553f8|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636916391253712533&sdata=KPCYQnBhFdblKepxlHFBGlAiYP2BHTBdoSeUA%2FquUkM%3D&reserved=0.


Fix precommit check failures with missingJavadoc task

Describe the bug
The missingJavadoc task in javadoc branch currently works well when run on its own (i.e. ./gradlew missingJavadoc) but fails the precommit checks due to some wrangled gradle build logic. This can be reproduced by running ./gradlew precommit on javadoc branch. The validateNebulaPom task, which is part of precommit checks, fails because it looks for pom file in the wrong location (build/publications/nebula/pom-default.xml) when the actual pom file is generated in the path configured here (e.g. for benchmarks modulebuild/distributions/opensearch-benchmarks-7.10.3-SNAPSHOT.pom). On removing this line, the precommit logic seems to work fine. Somehow, applying missingJavadoc script plugin here is causing the PomValidation task to read pom from default location instead of overridden location.
To Reproduce
Steps to reproduce the behavior:

Sync remote javadoc branch
Run ./gradlew precommit. It should fail in PomValidation
Comment this line.
Run step 2 again. It should pass now.

Expected behavior
precommit task should work fine with missingJavadoc gradle task.
Host/Environment (please complete the following information):

OS: iOS
Version: 10.14.6

Logs
➜  search git:(javadoc) ./gradlew precommit

> Configure project :
========================= WARNING =========================
         Backwards compatibility tests are disabled!
See https://github.com/opensearch-project/OpenSearch/issues/105
===========================================================

> Configure project :qa:os
Cannot add task 'destructiveDistroTest.docker' as a task with that name already exists.
=======================================
OpenSearch Build Hamster says Hello!
  Gradle Version        : 6.6.1
  OS Info               : Mac OS X 10.14.6 (x86_64)
  JDK Version           : 14 (OpenJDK)
  JAVA_HOME             : /Library/Java/JavaVirtualMachines/jdk-14.jdk/Contents/Home
  Random Testing Seed   : C2BC3255C3EA0731
  In FIPS 140 mode      : false
=======================================

> Task :benchmarks:validateNebulaPom FAILED

FAILURE: Build failed with an exception.

* What went wrong:
A problem was found with the configuration of task ':benchmarks:validateNebulaPom' (type 'PomValidationTask').
> File '/Users/setiah/projects/odfe/search/benchmarks/build/publications/nebula/pom-default.xml' specified for property 'pomFile' does not exist.

#707 fixes this.


1.4 dev#modupdate

This merges the different update commands, and adds --verify and --update-mods options.
c329f28 begins moving the argument processing into the doUpdate function.
e3dbe28 merges the safe update into the doUpdate function
e86f7b0 merges the warn update into the doUpdate function, with the actual warning logic in doUpdateWarn.
At this point, all of the options can be handled by doUpdate.
9b5435f passes update option handling to doUpdate, with the main argument processor grabbing all of the double-dash options after the update command.
39c649d merges the forceUpdate function into doUpdate so we can add better handling
fddbec4 adds a --validate option to the update command, which allows one to force a re-validation of the ARK server files.
2207ff1 moves the mod downloading out of doInstallMod so we can call it elsewhere.
4bd9da5 moves the mod extraction out of doInstallMod so we can call it elsewhere.
b5819d5 optimizes the mod extraction so it only extracts files that have been changed.
e9b987f adds a --update-mods option to the update command, which downloads the mods, and then uses the update maintenance shutdown to extract the mods that have been updated.

You are awesome :)


Add ISLAMI token

Please check the following to ensure a successful verification of Token Profile
.json and .png document checklists

[x] logo dimensions: 120*120 px
[x] logo background: Transparent
[x] At least one transaction on the token contract
[x] For ERC-20 project teams: Upper and lower capitalized alphabets in token address (For checksum purposes)
[x] Same document name for both .json and .png (Including capitalization)

Project background:
Official announcement:
Project team background:
Project basic information:
Media publications:
Tradeable exchanges:
Recommended Gas Limit (For ERC-20 project teams) for transaction: (Default is 60,000)

please give us more information about your project, you can follow this tutorial:https://github.com/consenlabs/token-profile/blob/master/tutorial/erc20-tutorial.en.md

Official announcement: https://islamicoin.finance
Project team background: https://islamicoin.finance/#team  Our founder is a certified Solidity developer & Blockchain expert
Project basic information: ISLAMICOIN a cryptocurrency for the global Muslim community
Media publications:
Telegram News: https://t.me/islamicoin1
Telegram group: https://t.me/islamicoinchat
Facebook: https://facebook.com/islamicoin
Twitter: https://twitter.com/islamicoin
YouTube: https://www.youtube.com/c/ISLAMICOIN
Whitepaper: https://secureservercdn.net/<IP_ADDRESS>/mmc.19a.myftpupload.com/wp-content/uploads/2021/09/islamicoinE.pdf
Polygonscan: https://polygonscan.com/address/0x9c891326fd8b1a713974f73bb604677e1e63396d
Tradeable exchanges: DoDoex.io
Project is on Polygon POS
Recommended Gas Limit (For ERC-20 project teams) for transaction: (Default is 60,000)

Official announcement: https://islamicoin.finance Project team background: https://islamicoin.finance/#team Our founder is a certified Solidity developer & Blockchain expert Project basic information: ISLAMICOIN a cryptocurrency for the global Muslim community Media publications: Telegram News: https://t.me/islamicoin1 Telegram group: https://t.me/islamicoinchat Facebook: https://facebook.com/islamicoin Twitter: https://twitter.com/islamicoin YouTube: https://www.youtube.com/c/ISLAMICOIN Whitepaper: https://secureservercdn.net/<IP_ADDRESS>/mmc.19a.myftpupload.com/wp-content/uploads/2021/09/islamicoinE.pdf Polygonscan: https://polygonscan.com/address/0x9c891326fd8b1a713974f73bb604677e1e63396d
Tradeable exchanges: DoDoex.io Project is on Polygon POS Recommended Gas Limit (For ERC-20 project teams) for transaction: (Default is 60,000)

Official announcement: https://islamicoin.finance
Project team background: https://islamicoin.finance/#team Our founder is a certified Solidity developer & Blockchain expert
Project basic information: ISLAMICOIN a cryptocurrency for the global Muslim community
Media publications:
Telegram News: https://t.me/islamicoin1
Telegram group: https://t.me/islamicoinchat
Facebook: https://facebook.com/islamicoin
Twitter: https://twitter.com/islamicoin
YouTube: https://www.youtube.com/c/ISLAMICOIN
Whitepaper: https://secureservercdn.net/<IP_ADDRESS>/mmc.19a.myftpupload.com/wp-content/uploads/2021/09/islamicoinE.pdf
Polygonscan: https://polygonscan.com/address/0x9c891326fd8b1a713974f73bb604677e1e63396d
Tradeable exchanges: DoDoex.io
Project is on Polygon POS
Recommended Gas Limit (For ERC-20 project teams) for transaction: (Default is 60,000)

please give us more information about your project, you can follow this tutorial:https://github.com/consenlabs/token-profile/blob/master/tutorial/erc20-tutorial.en.md

Please inform me if more information is required. Thank you so much.

please give us more information about your project, you can follow this tutorial:https://github.com/consenlabs/token-profile/blob/master/tutorial/erc20-tutorial.en.md

Dear @evelyn2331
hope you are doing well, please tell me how can we proceed?
Thank you

You are missing the English description
Your logo is not clear, please submit a logo picture of 120*120 size
The first line of code parsing error

You are missing the English description
Your logo is not clear, please submit a logo picture of 120*120 size
The first line of code parsing error
4.Please provide the contract address, the address you are providing is not the contract address（0x9c891326Fd8b1a713974f73bb604677E1E63396D ）

Good day,

English Description: ISLAMICOIN is the largest global Islamic financial project, aiming to achieve financial independence for individuals, businesses, and humanitarian and charitable organizations for the global Muslim community. Built and devised based on the latest blockchain technology developed by Polygon Network, ISLAMICOIN is a token created to establish and launch a secure and reliable TRUSTED Islamic currency that facilitates commerce exchanges and financial transactions around the world.
Will upload a new file
checking it after this comment
This is our contract address on Polygon Pos Chain
0x9c891326Fd8b1a713974f73bb604677E1E63396D
Link: https://polygonscan.com/token/0x9c891326fd8b1a713974f73bb604677e1e63396d

Please upload your logo

Please upload your logo

Thank you, Please check the logo uploaded here, I don't know why I didn't get a notification on my email when you sent me this message, am really sorry for the delay. Thank you so much.

Please upload your logo

@kaiko1203
Please note that the logo is also found in files of this pull request and below I will share its link:
https://github.com/consenlabs/token-profile/pull/7311/files#diff-2861be2effddf3f494530a86203688eb9f2a0c96f7702b8ba909b0501477e70a
Thank you
Best regards

The project is no longer maintained.

The project is no longer maintained.

Please do you have any advise how we can achieve adding ISLAMI logo to dodoex
Thank you

Hi，imToken currently only supports the submission of ERC20 and EOS Token Profile, I'm afraid this is not ERC20 or  EOS token. @ISLAMIBLOCKCHAIN

Hi， currently imTokenonly supports the submission of ERC20 and EOS Token Profile, I'm afraid this is not ERC20 or EOS token. @ISLAMIBLOCKCHAIN

Our token is ERC20 on polygon PoS chain, polygon is supported on DoDo and many other dex.
Thank you
Best Regards

0x87F555Eba5B7Ab9Ea53867BabC23921F85DBa567

0x87F555Eba5B7Ab9Ea53867BabC23921F85DBa567

Currently, this project only handles Ethereum Erc-20 token. Polygon token is cooperated with debank. If debank already supports it, it will automatically appear in the user's wallet.


Spokane custom region not working

see https://groups.google.com/d/msg/onebusaway-developers/JAs3DxRcfB0/n-wZQ0EEDQAJ

To clarify, as of this morning Spokane is now an experimental region in the Regions API:
http://regions.onebusaway.org/regions-v3.json

Also as I said when I try and add the location manually pressing the + I put in the proper input with the base URL being https://<IP_ADDRESS>/api and the location name being Spokane and the application shows a spinning circle which keep spinning. I also attempted https://<IP_ADDRESS>/api/ and it resulted in the same thing, a spinning circle that never ends.

Outside of the TBD banner and the greyed out text, not being able to hit the API after I manually input it into the application might be an issue on my end. I tried to hit the above URL's from my browser, even though I have ports 443 and 8443 in my security group, I cannot seem to hit it. Ill keep checking this out on my end

@rwt88 Ah - the URL I used in the Regions API used by the apps (http://regions.onebusaway.org/regions-v3.json ) is http://<IP_ADDRESS>:8080/api/.
iOS is currently stricter than Android on forcing SSL for HTTPS, so this might be the issue.
When you get HTTPS working from a web browser let me know and I can update the Regions API.

This is now resolved.


Get 404 after clicking "Insert Image" button

Hi, I followed the steps in the "Insert an Image" section and encountered a problem when trying the add-in. When I clicked the Insert Image button,  it showed an error notification. I set a break-point and found that the ajax returned 404 when getting /api/Photo/.
It seems that the tutorial has not discussed how I can configure the routers and I wonder whether the routers are configured automatically.
Thank you!

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

ID: 18abb533-5be7-d533-8106-c52d458ddc1d
Version Independent ID: 6af81176-d832-d3d5-5060-5218b2ba75ac
Content: PowerPoint add-in tutorial - Office Add-ins
Content Source: docs/tutorials/powerpoint-tutorial.md
Product: powerpoint
Technology: add-ins
GitHub Login: @o365devx
Microsoft Alias: o365devx

Hi @kinnplh,
Thanks for reporting this issue. @Rick-Kirkham, could you please investigate?

If you paste this URL into the browser, does the image open? http://bing.com/th?id=OHR.LeiDay_EN-US2557797109_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp

If you paste this URL into the browser, does the image open? http://bing.com/th?id=OHR.LeiDay_EN-US2557797109_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp

Thank you for your response! Yes, the image opens. Besides, I modified the Get() function in the PhotoController and returned a hardcode base64 string (similar to the getImageAsBase64String function in the previous article), but I still got the same error. I think there may be something wrong with the routers and the Get() function is not called.

Thank you! I will also try to solve the problem ~

I found an archived repo. I add the code in the tutorial to that project and it works.  I compare the codes and it seems that some important files (such as Global.asax and WebApiConfig.cs) are missing in the tutorial.

I have reproduced this. I haven't tried to reproduce your workaround yet, but I'm sure you are right. Visual Studio is not creating some of the needed folders and files. I'm not sure when these should be created. It is either when the project is created or when the reader is instructed to add a Web API 2 Controller - Empty scaffolding. Probably, the latter. This seems to be a bug in Visual Studio. I will report this. I will also update the doc to add the missing stuff manually.

I've found the range of VS 2019 version numbers that have the bug. Instead of giving the reader tedious instructions for manually creating the scaffolding, I'll just have the instructions warn readers not to use the buggy versions. VS 2022 is not affected by the bug.


I don't know how to make a watermark in source

Describe your problem here.
I did it with lua script but I want to port it to the source cod
https://user-images.githubusercontent.com/94813393/183674649-fa398081-87c2-4840-9cc2-26e2dc64e729.mp4
e
Are you modding a build from source or with Lua?
Source
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
No response

#8176


Pylance has crashed. Would you like to try using a Node.js executable to run the language server?

Pylance has crashed. Would you like to try using a Node.js executable to run the language server?
2024-07-17 14:56:44.584 [info] [Error - 2:56:44 PM] Sending document notification textDocument/didSave failed.
2024-07-17 14:56:44.597 [info] Error: Connection is disposed.
at de (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:1948291)
at Object.sendNotification (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:1949134)
at S.sendNotification (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:1992950)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async t (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:2073066)
2024-07-17 14:56:44.901 [info] [Error - 2:56:44 PM] Notify file events failed.
2024-07-17 14:56:44.901 [info] Error: Connection is disposed.
at de (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:1948291)
at Object.sendNotification (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:1949134)
at S.sendNotification (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:1992950)
at async t.Delayer. (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:2004892)
2024-07-17 14:56:44.964 [info] [Error - 2:56:44 PM] Sending document notification textDocument/didSave failed.
2024-07-17 14:56:44.964 [info] Error: Connection is disposed.
at de (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:1948291)
at Object.sendNotification (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:1949134)
at S.sendNotification (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:1992950)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async t (/dssg/home/acct-seeshb/seeshb-user1/.vscode-server/extensions/ms-python.python-2024.10.0-linux-x64/out/client/extension.js:2:2073066)
2024-07-17 14:56:45.322 [info] [Error - 2:56:45 PM] Notify file events failed.

The log above looks like the log from the Python extension. Assuming that you are using Pylance as your language server (that's the default), could you please provide the Pylance log. It appears as "Python Language Server" in the Output pane.

+1 Pylance has been crashing and short circuiting much more than normal and I am now getting the error 'Pylance has crashed. Would you like to try using a Node.js executable to run the language server?'.
I've noticed that a variable will grey out of a sudden and then this error may come later.

For others who have been experiencing this issue, it seems to correlate with the release of 2024.7.1.

@umarbutler, can you provide a "Python Language Server" log from a case where Pylance crashed?

The log above looks like the log from the Python extension. Assuming that you are using Pylance as your language server (that's the default), could you please provide the Pylance log. It appears as "Python Language Server" in the Output pane.

Thanks, that's the log of python language server

@GXY0116, can you provide the entire log? Drag it into the log as an attachment, assuming it's large.

@GXY0116, can you provide the entire log? Drag it into the log as an attachment, assuming it's large.

Thanks, that's the entire log.
log.txt

2024-07-19 00:23:45.268 [info] [Info  - 12:23:45 AM] (2577591) Heap stats: total_heap_size=289MB, used_heap_size=256MB, cross_worker_used_heap_size=256MB, total_physical_size=289MB, total_available_size=3882MB, heap_size_limit=4144MB
...
2024-07-19 00:24:15.581 [info] [Error - 12:24:15 AM] Server process exited with signal SIGKILL.

Our best guess based on the log output above is that Pylance was killed by the Linux kernel when the machine ran low on memory. You could confirm that by checking dmesg after Pylance is killed. Here's dmesg output from my machine after I forced a process to be killed by Linux's OOM killer:
erikd@ERIKD:~$ (echo "li = []" ; echo "for r in range(9999999999999999): li.append(str(r))") | python3
Killed
erikd@ERIKD:~$ dmesg | tail -7
[146590.568889] [ 223208]     0 223208      572        0    40960       29             0 SessionLeader
[146590.568892] [ 223209]     0 223209      576        0    40960       31             0 Relay(183022)
[146590.568894] [ 223212]  1000 223212     2411        2    49152     1316             0 bash
[146590.568919] [ 223967]  1000<PHONE_NUMBER>8732  7976248 81420288  2042808             0 python3
[146590.568921] [ 224465]     0 224465      509       19    36864        0             0 systemctl
[146590.568924] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/,task=python3,pid=223967,uid=1000
[146590.568954] Out of memory: Killed process 223967 (python3) total-vm:40914928kB, anon-rss:31904992kB, file-rss:0kB, shmem-rss:0kB, UID:1000 pgtables:79512kB oom_score_adj:0

Given that the total available physical memory is so small, I assume this is a container or virtual machine of some sort? Can you allocate more memory to the machine?
We have some guidance on ways to reduce the amount of memory that Pylance uses here: https://github.com/microsoft/pylance-release/wiki/Pylance-Configuration-Tips.

I have 64GB of RAM.

@umarbutler we don't have any evidence yet that the two of you are hitting the same issue. Can you file a new issue and attach a log file? We can always resolve one of them as a duplicate of the other if we determine that they are the same.

@debonte I'll be building a new PC within the next week or two so it makes more sense for me to use the older version, however, if the issue appears again (which would be on a completely new, more powerful build), I'll create a new ticket.

Had the same error today. The language server was randomly disconnecting when running a Jupyter notebook. After installing the Pylance extension in the WSL distro instead of running in Windows, I got this:

I could reproduce the error running the notebook again, here's the log:
pylance_wsl_log.txt

@otavio-silva's problem is this:
Error: Debug Failure. False expression: Chained file path undefined doesn't match cellFilePaths file:///home/azakun/Documents/Code/Python/notebooks/Stable%20Diffusion%20XL/StableDiffisionXL.ipynb.py#X14sdnNjb2RlLXJlbW90ZQ%3D%3D
at _0x2ee97f (/home/azakun/.vscode-server/extensions/ms-python.vscode-pylance-2024.7.1/dist/server.bundle.js:1:888452)
at /home/azakun/.vscode-server/extensions/ms-python.vscode-pylance-2024.7.1/dist/server.bundle.js:1:817188
Not likely the same issue as the original poster. I'll link a new bug.

I have the same issue running in a devcontainer

@rhuanbarros can you open new issue. that error message is generic message for any crash. so having your own issue will help us to track your issue better.

I hope the method in this picture can help you.


Specify layout when using style-tags snippet

Needed for when https://github.com/Shopify/slate/pull/642 is merged and released.

(Good once https://github.com/Shopify/slate/pull/642 has been merged)


Unable to load DLL 'raylib'

Trying to install this in Windows under the Manual Installation. Not sure if I'm missing something, or I've done something wrong, but I just keep getting this error when I try to run the demo

If you use the github repo, you have to put the raylib.dll into your root folder (where the csproj is). You can download it here:
https://github.com/raysan5/raylib/releases/tag/4.0.0
It's the raylib-4.0.0_win64_msvc16.zip .
The repo doesn't contain the compiled shared library.
If you want to use Raylib-cs for your own game, I recommend you to use the nuget package:
https://www.nuget.org/packages/Raylib-cs/
The nuget package contains all libraries for windows, mac os and linux.


No output to console when using external backend server

Hello,
Is it correct behavior that there is no output to console when using, for example, cheroot as backend?
run(host='<IP_ADDRESS>', port=8900, server='cheroot', debug=False)
I see in console only this:
Bottle v0.13-dev server starting up (using CherootServer())...
Listening on http://<IP_ADDRESS>:8900/
Hit Ctrl-C to quit.

Hello, I have the same issue.

Access logs are generated by the server implementation, not by bottle. The wsgiref development server emits logs by default, cheroot does not, apparently. Refer to the cheroot documentation on how to activate access logs.

Not possible I guess : https://github.com/cherrypy/cheroot/issues/89

Check out https://stackoverflow.com/a/31093434/3633154
This is what I do

There's also decent WSGI middleware for doing logging. When using Cheroot with Bottle, I usually use https://pypi.org/project/wsgi-request-logger/ for request logging.


[BUG] - Dark theme with light themed navigation bar and status bar

Describe the bug
App show dark theme with light themed navigation bar and status bar, resulting in unreadable status bar. Android is using light theme.
Smartphone (please complete the following information):

Device: OnePlus 6T
Android Version: Android 11
App Version 3.5.4
Backend: Userspace

To Reproduce

use a light themed Android
open app

Expected behavior
Either show light mode to match my Android theme or show a proper dark theme
Screenshots (Only if necessary)

Hello! This should be fixed in the latest version 3.6.0.
Let me know if you continue to have issues and we can reopen.

Now theme works nicely with version 3.6.0. Thanks so much for the fix!


CSS: Update Safari from Apple docs (positioning/visibility properties)

Part of five parts to #1774.  This updates all the Safari (and some Safari iOS data) for CSS properties, based upon Apple documentation that @connorshea found.  This conforms BCD's data to said documentation.

On BCD this is https://github.com/mdn/browser-compat-data/pull/4063. I guess you accidentally opened this here :)

I apparently did, haha, whoops!


JSONDecodeError

Thanks for the interersting guide and repo. I have cloned it and setup a virtualenv with required packages. I am able to run the flask server, however not able to make requests.
When using curl request: curl -X POST -F<EMAIL_ADDRESS>'http://localhost:5000/predict', I get the following error:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>500 Internal Server Error</title>

Internal Server Error

The server encountered an internal error and was unable to complete your request.  Either the server is overloaded or there is an error in the application.

And subsequently when running the python simple_request.py I get the following error as an output:
Traceback (most recent call last):
  File "simple_request.py", line 17, in <module>
    r = requests.post(KERAS_REST_API_URL, files=payload).json()
  File "/home/bloks/Projects/Sentriq/simple-keras-rest-api/skra_venv/lib/python3.5/site-packages/requests/models.py", line 896, in json
    return complexjson.loads(self.text, **kwargs)
  File "/usr/lib/python3.5/json/__init__.py", line 319, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.5/json/decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.5/json/decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

As far as I could find, it may have something to do with a version conflict of some of the packages.
Maybe include a requirements.txt file solves the problem?

It's not an issue with requirements.txt, it's a problem with your request itself, perhaps being an invalid path to the input image. Double-check your image path and try again.

I'm facing the same issue, and the image path is also valid.

same

reference to the closed issue 'Error particular to a case when I tunnel SSH to server on a remote server #1'，may be helped

I did also follow @edchepen on this one and everything works fine. Thanks for that.
However, you should also add
import tensorflow as tf

to the run_keras_server.py module.

hi，this code “curl -X POST -F<EMAIL_ADDRESS>'http://localhost:5000/predict'” how to invert it in windows environment，thanks

Just in case you're new and currently using a latest version of Keras and it is not still working after following @edchepen and @paulelvers , downgrade you Keras version to at least 2.2.5:
pip uninstall keras
pip install keras==2.2.5

then execture the run_keras_server.py module
Special thanks to the guys I have mentioned!

used tf.compat.v1.get_default_graph() instead of tf.get_default()

@edchepen What are the dependencies you are using with pip list?  I tried your fix, but it did not work.
These were the results when executed:
python simple_request.py
Traceback (most recent call last):
File "simple_request.py", line 17, in
r = requests.post(KERAS_REST_API_URL, files=payload).json()
File "/Users/hottelet/Library/Python/2.7/lib/python/site-packages/requests/models.py", line 898, in json
return complexjson.loads(self.text, **kwargs)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/init.py", line 339, in loads
return _default_decoder.decode(s)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 364, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 382, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
MacBook-Pro:~/Desktop/simple-keras-rest-api-master quantum-fusion$ python simple_request.py
Traceback (most recent call last):
File "simple_request.py", line 17, in
r = requests.post(KERAS_REST_API_URL, files=payload).json()
File "/Users/hottelet/Library/Python/2.7/lib/python/site-packages/requests/models.py", line 898, in json
return complexjson.loads(self.text, **kwargs)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/init.py", line 339, in loads
return _default_decoder.decode(s)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 364, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/decoder.py", line 382, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
MacBook-Pro:~/Desktop/simple-keras-rest-api-master quantum-fusion$ curl -X POST -F<EMAIL_ADDRESS>'http://localhost:5000/predict'
See the attached program in compressed format.


Allow configuration of a backup git repository

At a workshop with @mstine a few questions came up about how to deal with internal git repository maintenance windows and outages.  One of the potential resolutions was to modify the SCC server to accept a secondary git repository in the event that the first repository is unavailable, ala Hystrix fallbacks.
Perhaps something along the lines of spring.cloud.config.server.git.fallbackUris=host1,host2
Any thoughts on usefulness/if it would be worth the additional complexity?

There is currently a composite EnvironmentRepository. You could list both. Currently, if git on host1 failed the whole request could fail. We could add an option to keep going even if some EnvironmentRepositorys fail.

There are [various] cache related issues, if one of them fits, comment there.

This would be a nice enhancement if connection to git fails, configurations are picked from local file on config-server.

@cah-andrewfitzgerald: PR https://github.com/spring-cloud/spring-cloud-config/pull/749 could potentially work for you in the case of serving stale data. It also offloads the git server in case there are lots of servers refreshing their configuration regularly. There is the potential to improve on my PR to force updates from the outside (scheduled task), but not without breaking the current interfaces.

same problem here

There is currently a composite EnvironmentRepository. You could list both. Currently, if git on host1 failed the whole request would fail. We could add an option to keep going even if some EnvironmentRepositorys fail.

Is this on the way ? As I understand, we can go around this "backup" problem using a custom EnvironmentRepository but not that great.
We had a case for some reason the on-premise-Gitlab is down... So none of our microservices can be started without Gitlab :/

@GuiF007 I have a very similar concern. Did you come up with a workaround?

@ikhangt As it was with Openshift, we created a volume with the configuration inside. This volume is automatically updated everytime a configuration is asked. And it does not crash if the repo is not available, taking the last config retrieved...


[SPARK-48565][UI] Fix thread dump display in UI

What changes were proposed in this pull request?

Thread dump display in UI is not pretty as before, this is side-effect introduced by SPARK-44863
Why are the changes needed?

Restore thread dump display in UI.
Does this PR introduce any user-facing change?

Yes, it only affects UI display.
How was this patch tested?

Current master:

With this patch applied:

Was this patch authored or co-authored using generative AI tooling?

No

cc @yaooqinn @LuciferYang

Merged to master. Thank you @pan3793

late lgtm


make singleThreaded groupBy query config overridable at query time

some users found that you get better throughput by using singleThreaded processing for small groupBy queries while parallel for large groupBy queries. this allows both to be used appropriately when user knows how much data groupBy query is going to process. also, this allows rapid benchmarking for both on same cluster and data.

👍

minor comments, but overall :+1:

@xvrl , @drcrallen  ?

👍 , LGTM

👍 other than possibly changing the name of the query runner.

@gianm renamed

👍


⚠ DataByteDigital - Production has degraded performance

In 54223c6, DataByteDigital - Production (https://databytedigital.com) experienced degraded performance:

HTTP code: 200
Response time: 8156 ms

Resolved: DataByteDigital - Production performance has improved in 4d99a48 after 5 minutes.


HBASE-25648 Fix normalizer TestSimpleRegionNormalizerOnCluster branch-1

HBASE-25648
From #2972 there was a change from
if (!this.regionNormalizerTracker.isNormalizerOn()) {
to
if (isNormalizerOn()) {
(missing ! it looks like)
and then
        if (quotaManager.getNamespaceQuotaManager() != null &&
            quotaManager.getNamespaceQuotaManager().getState(table.getNamespaceAsString()) != null){
          LOG.debug("Skipping normalizing " + table + " since its namespace has quota");
          continue;
        }

changed to
        final NamespaceAuditor namespaceQuotaManager = quotaManager.getNamespaceQuotaManager();
        if(namespaceQuotaManager == null) {
          LOG.debug("Skipping normalizing since namespace quota is null");
          return false;
        }
        if (namespaceQuotaManager.getState(table.getNamespaceAsString()) != null) {
          LOG.debug("Skipping normalizing " + table + " since its namespace has quota");
          continue;
        }

which now requires namespaceQuotaManager to exist before allowing normalizer to work, which I think is unintended, and doesn't match the original behavior in HBASE-23932
@mnpoonia @virajjasani

I didn't fully read all the code in the other JIRAs, but these two changes allow TestSimpleRegionNormalizerOnCluster.java to pass at least. (Why didn't this test run as part of CI on the previous PR? Do MediumTests not run?)

Merging as it is obviously fixing the test. Will trigger flaky build soon after merging this.
Thanks @d-c-manning


[Runtime Bug]: Just Cause - Crash on Startup

Describe the bug
Just Cause fails to launch with Remix installed for me.
How do you reproduce the bug?
1.) Install Just Cause
2.) Install Remix into main directory
3.) Launch game, see crash
Using Remix version,
dxvk-remix-53b0bdc-599-debugoptimized
bridge-remix-07778f9-85-debugoptimized
What is the expected behavior?
Game to launch as usual
Version
dxvk-remix-53b0bdc-599-debugoptimized
Logs
d3d9.log
JustCause_d3d9.log
NvRemixBridge.log
Crash dumps
NvRemixBridge.exe_20240729_061220.dmp
Media

REMIX-3408 for tracking


Timeout on en_tw bible folder load

Trying to load https://git.door43.org/Door43/en_tw/src/master/bible is timing out.  You can load the sub-folders without much trouble, https://git.door43.org/Door43/en_tw/src/master/bible/kt or https://git.door43.org/Door43/en_tw/src/master/bible/other.  The main repo loads fine too: https://git.door43.org/Door43/en_tw/

I forked en_tw, renamed config.yaml in the bible/ directory and now it works. Looks like it is trying to do something with the config.yaml file. That is odd as it shouldn't be showing YAML files in a directory listing, unless Gitea shows the content of a file like it does a README file if there is only one?

Must be because the yaml file is 690k in size, takes a long time to edit even the renamed copy. Odd that the file listing page tries to load it.
Can see the bible/ directory load in my repo: https://git.door43.org/richmahn/en_tw/src/master/bible

I believe this is related to https://github.com/go-gitea/git/pull/66, which would explain why renaming the file fixed the problem. I'll merge in changes from upstream.

Fixed in Gogs develop branch, to be deployed to production


Get frustration matrix features

Get delta frustration metrics from complex PDB structures for interaction and non-interaction sites. There is an R package that seems to do this: frustratometeR
but ideally there is a more elegant way to do this in Python. Perhaps compute min, max, average for these delta stats as well.

Compute the delta FrstIndex values from the frustration calculation for monomer vs. multimer and further subset into interaction/non-interaction values. Calculate the deltas for each multimer model (1-5) and take the min, max, and avg values for each partner in the interaction, and for each partner, each of the interaction and non-interaction sites


error when starting dev server

as the title, detailed error below
[ERROR] Failed to resolve entry for package "vite-plugin-jspm". The package may have incorrect main/module/exports specified in its package.json: No known conditions for "." specifier in "vite-plugin-jspm" package [plugin externalize-deps]
vite version 4.2.1
vite-plugin-jspm version 0.2.0
node version 16.20.0
npm version 9.2.0
as side note, i see version 0.3.0 of vite-plugin-jspm in the repo, but it's not available in npm registry. is that ok?

Hello @veonline thanks for reporting. Looks like import-maps are not appending in dev mode to resolve. I will be taking a look. Regarding the

i see version 0.3.0 of vite-plugin-jspm in the repo, but it's not available in npm registry.

I am going to publish it, we kept it o hold. But, it's good to go now 👍

The latest version is on npm now. Will look into the. dev mode issue

I had the same problem, but in the end the problem is that my vite config was with the .js extension. Changing it to .mjs solved the problem :)


Fix BBF PIVOT cannot use CTE as source table (PG15)

Description
Fixed BBF PIVOT stmt cannot use CTE as source table.
Fixed string in pivot clumn value list caused crash
Fixed conflicting column name is allowed in BBF PIVOT clause
Issues Resolved
BABEL-4958, BABEL-4959, BABEL-4960, BABEL-4977
Test Scenarios Covered

Use case based -

string in PIVOT column value list (BABEL-4958)
PIVOT with CTE as source table
aggregate column in PIVOT column value list
completely qualified name (dbname.schema_name.table_name.column_name)
PIVOT  in different stmt level (within and out of CTE)

Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is under the terms of the Apache 2.0 and PostgreSQL licenses, and grant any person obtaining a copy of the contribution permission to relicense all or a portion of my contribution to the PostgreSQL License solely to contribute all or a portion of my contribution to the PostgreSQL open source project.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

11 of 11 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.004%) to 73.178%

Totals

Change from base Build<PHONE_NUMBER>:
0.004%

Covered Lines:
41702

Relevant Lines:
56987

💛  - Coveralls


Flow doesn't error on invalid static of function within the same module

When accessing a non-existing property on a function that is defined in the same file, flow doesn't complain. E.g.:
function f(){}

f.foo.bar(); //no error

On flow.org/try
Flow does complain correctly when the function is defined in a different file:
// a.js
export function f(){}

// b.js
import { f } from './a';
f.foo.bar(); //property not found in statics of function

Fixed 0.190


updated cql4browsers: equivalence/version

cql4browsers update to go along with
https://github.com/cqframework/clinical_quality_language/pull/244
Affects Code, Value Set, and Concept equivalency.
Equivalency should no longer return false if the only difference is in version.
Modified Equivalent class to use the equivalent function in comparisn.js rather
than a different but similar expression.
The only tests that failed due to this change were expected (tests that were
looking for different versions). I updated those tests to expect equivalence if
the only difference is in version.
JIRA Ticket: https://jira.mitre.org/browse/BONNIE-1102

Regression script was run and passed -- all results equal.


Minor code refactoring

Duplicate HTML element attributes:

nowrap declared twice.

Conflicting border values:

Border attribute has the same name as another attribute of the same element, but a different value.

Comparison of constants:

Comparison of constants will always return constant, removing unnecessary and 2 + 2 == 4 statement which will always return true.
https://cwe.mitre.org/data/definitions/571.html
https://cwe.mitre.org/data/definitions/570.html

I'd guess the python is like that on purpose. Did you look at contents of the file?

I would recommend to leave python_basics.py out of this PR.

@mumbel and @d1str0 are correct. The 2 + 2 == 4 check is a contrived example and needs to be left in python_basics.py. I'd remove that change from this PR.

Same goes for if statement above. Clearly <class 'dict'> is not equal to <class 'type'>. It would only evaluate true if the check was for type(dict())

Yes, python_basics.py is simply an example script to show how to do very basic things in python...there is no need to change it.
In general, we will not have time to support refactoring-style pull requests.  We have a certain amount of overhead associated with each pull-request to consider.


Add analytics specific data

Adds analytics specific data to enable integration style testing for the
govuk_component project's analytics_meta_tags component.

Looks good. Will you just test against one document or do they all need an analytics_identifier?

For the time being I'm localising this here as I have my doubts about the general approach. I'll take it up with the team tomorrow, but for now this needs to be merging before I can configure triggered builds of alphagov/static.


Minor improvements to Azure configuration docs

cc @arikalon1
Let me know if I missed any other improvements we should make.

@aantn I will merge for now


/data: added pagination and sort by descending order of id

Issue Reference
This PR addresses the Issue : Fixes #634
Summarize
Added pagination (/data?page=1) to /data and sorted the result in descending order of id

My concern is this could be more performance heavy on db than the previous one. We can push the change, if performance is not ok we take the api down.

Its better than fetching 6k+ records, sorting by id with limits on it is handled efficiently by pgsql. The actual bottleneck here was django ORM which now sees only a fraction of rows to map.

Will an id range query be better?  the ids here are decreasing monotonous

Id range will be better, or maybe just a last_known_id. Went with pagination as  people are used to it and limits work better for query planer.

My recomendation is change the api from
From:  /data?page=1
To: /data?lastid=6777&page=1
so our system will give results of only ids that are > 6777
May be we can consider it as enhanment if we get performance problems.

Can someone do a quick performance test on this? With approx 500000 dummy records?

@ajitsen We can prefer that if we see significant performance boost.
@arjun-pp I am testing this with sqlite3 which shows considerable improvement. Some with pgsql can share the stats.

Can you actually cache the JSON object with the same key ?

/data was pretty important, but was obviously a giant load on the database. A less expensive alternative would be nice. I say this PR be higher priority.

@cibingeorge  django-pagination does a lot of beautiful stuff and has a long code pathway. It isn't about reinventing the wheel, its just about shortening the data pathway if we are looking for performance. So I have rewritten it to bypass ORM(no need to map to Request objects) and return lists instead of dicts(lists encode faster).
@ajitsen yea, we could cache the Json instead of objects, point taken.
Before: Querying via ORM, ie Request.objects. and returning dicts
In [26]: min(timeit.repeat('mapdata(ht)', 'from __main__ import mapdata,ht', number=10000))
Out[26]:
22.387185666000732

After: Querying directly, ie db.execute(). and returning models as lists
In [25]: min(timeit.repeat('mapdata(ht)', 'from __main__ import mapdata,ht', number=10000))
Out[25]:
0.49350195299848565,

Since we are returning list instead of dict, here are the order of keys for every returned Request
'id', 'district', 'location', 'requestee', 'requestee_phone', 'latlng
', 'latlng_accuracy', 'is_request_for_others', 'needwater', 'needfood', 'needclo
th', 'needmed', 'needtoilet', 'needkit_util', 'needrescue', 'detailwater', 'deta
ilfood', 'detailcloth', 'detailmed', 'detailtoilet', 'detailkit_util', 'detailre
scue', 'needothers', 'status', 'supply_details', 'dateadded'

The query to get data without specified district will work fine as postgresql by default will order the indexed field and since this is used with a limit, postgresql will just return the rows without any sorting.
The other query which filters on district will be slow. As there is no index on it and is the first predicate. You will have to add an index on that column before you can use it efficiently. or alternatively and composite index on (distrcit, id asc) which would perform even better.


Fixed various indentation

A pretty trivial one. Just fixed some indentations (3 spaces instead of 4, something like that).

:+1:


Cleanup: add assemble.AppendEntry utility function [phab:D882]

Created by schroederc at 2016-05-11 22:50:42:

shahms commented inline (context lost during migration) at 2016-05-11 22:54:07:
Unittest for the newly-public function?

schroederc wrote at 2016-05-11 23:23:31:
So much test

schroederc wrote at 2016-05-11 23:26:20:
PTAL

shahms wrote at 2016-05-12 15:19:11:
Thanks!

shahms accepted this revision at 2016-05-12 15:19:11

schroederc closed via commit 27e7280d0b807ef2a91a59c451b6732f976cf0f8 at 2016-05-12 15:30:19


Update TileMap doc descriptions for update_bitmask_area/region

Woops, sorry about that. I corrected the spelling and added the missing periods. Thanks!


App features re-organization

Moved feature code under /app
Split individual modules into smaller and more manageable submodules
API implementation no longer relies on calling a bunch of free functions and giving them a DB handle

Codecov Report

Merging #111 (06d897d) into master (866d82a) will decrease coverage by 3.05%.
The diff coverage is 70.45%.

@@            Coverage Diff             @@
##           master     #111      +/-   ##
==========================================
- Coverage   71.94%   68.88%   -3.06%
==========================================
  Files          28       37       +9
  Lines        1554     1639      +85
==========================================
+ Hits         1118     1129      +11
- Misses        436      510      +74

Impacted Files
Coverage Δ

src/app/config/error.rs
0.00% <0.00%> (ø)

src/app/ddns/manager.rs
0.00% <0.00%> (ø)

src/app/index/metadata.rs
89.23% <ø> (ø)

src/app/index/update/collector.rs
84.33% <ø> (ø)

src/app/index/update/inserter.rs
79.06% <ø> (ø)

src/app/index/update/traverser.rs
78.88% <ø> (ø)

src/app/playlist/error.rs
0.00% <0.00%> (ø)

src/app/user/error.rs
0.00% <0.00%> (ø)

src/main.rs
0.00% <0.00%> (ø)

src/options.rs
0.00% <ø> (ø)

... and 39 more

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 866d82a...06d897d. Read the comment docs.


Compiling from source on Visual Studio 2022 Community Edition generates only intermediary files.

This seems to be the case as of latest release, the compile logs all indicate that everything has gone well and even point to the location of the dll and injector, however opening the target folders there are only intermediary compilation files and unlinked object files. There has been no AV tampering as I've excluded it from scanning the solution folder.

the builded dll is located in Release/RiotGamesServers


Allow vim_configurable to disable X11

The vim_configurable package hard-codes various X11 libraries as dependencies while making many other features optional, including GUIs. It would be nice to have an option to disable the X11 feature and the related buildInputs.
The use case I have in mind is installing a custom Vim on a remote server. Pulling X libraries, even without enabling a GUI, adds a few dozen megabytes for something essentially useless.
An approach is doing something like this:
vim_configurable.override {
  libX11 = null; libXext = null; libSM = null; libXpm = null;
  libXt = null; libXaw = null; libXau = null; libXmu = null; libICE = null;
  config.vim.gui = "none";
}

but it doesn't feel very clean...
Any thoughts from @lovek323 or @equirosa ?

I agree. It would have been nice if these X dependencies would have been added to buildInputs only if gui is "gtk2" or "gtk3".

/me whispers neovim~~~

I'm all for testing new things and neovim is on my list. But according to nix-tree, the neovim package pulls 428MiB of dependencies, half of which for Ruby, the other half for both Python 3 and Python 2 (seriously?). Is there a way, by any chance, to configure neovim to avoid this bloat ?

admittedly I've never tried to configure a mininmal version but one can unselect these ecosystems: https://github.com/teto/nixpkgs/blob/nixos-unstable/pkgs/applications/editors/neovim/wrapper.nix#L18

See https://github.com/NixOS/nixpkgs/pull/117022 .


[NOJIRA] New Social Media Icons (USA, Korea, China)

i vaguely remember nathan adding Check already, so it might be overlapping for that one. but the rest of this looks good

It looks to be the same as Checkmark so I'll just get rid of it


[Feature request] Editable comment/description for a table or database

Discussed in https://github.com/StarRocks/starrocks/discussions/19269

Originally posted by akzarma March  9, 2023
I found that we can set the comment for a table while creating it but we cannot update it anymore once it is created. (tried with ALTER TABLE command but it didn't work)
So, here are mainly 2 feature requests:

Make the comment of a table editable
Add the functionality to add a comment on a database too.

created another one with proper labels
https://github.com/StarRocks/starrocks/issues/20825


Option.merge() ： ContentType bug

New Issue Checklist

[x] I have searched for a similar issue in the project and found none

Issue Info

Info
Value

Platform Name
flutter

Platform Version
1.9.0

Dio Version
3.0.1

Repro rate
all the time (100%)

Issue Description and Steps
When I call "Option.merge()" method，an exception happened in "option.dart" file.
And I find this method go wrong for "ContentType" value,it should be "contentType ?? this.contentType" ,not "String ?? this.contentType ". The source code is as follow!
=============
Options(
method: method ?? this.method,
sendTimeout: sendTimeout ?? this.sendTimeout,
receiveTimeout: receiveTimeout ?? this.receiveTimeout,
extra: extra ?? Map.from(this.extra ?? {}),
headers: headers ?? Map.from(this.headers ?? {}),
responseType: responseType ?? this.responseType,
contentType: String ?? this.contentType,
validateStatus: validateStatus ?? this.validateStatus,
receiveDataWhenStatusError:
receiveDataWhenStatusError ?? this.receiveDataWhenStatusError,
followRedirects: followRedirects ?? this.followRedirects,
maxRedirects: maxRedirects ?? this.maxRedirects,
requestEncoder: requestEncoder,
responseDecoder: responseDecoder ?? this.responseDecoder,
);

old content-type
contentType = Headers.formUrlEncodedContentType

new

Fixed >=v3.0.3


build image fails on run ALLOWED_UIDS

moving from openshift/origin to sti - https://github.com/openshift/origin/issues/4409:
DESCRIPTION
today I've been running a fresh installation of openshift using the ansible cookbook and got the new openshift origin 1.0.5 version.
Everything seems fine (existing docker images are getting deployed), but for the builder-part the process seems currently not working. It requires the specification of an UserID.
This is the oc logs build output.
The same happens when initiating the build either from web console as well as from command line using the admin credentials.
cheers,
Matthias
ENV
# oc version
oc v1.0.5-4-g3eee7d2-dirty
kubernetes v1.1.0-alpha.0-1605-g44c91b1

REPRODUCE
oc new-app wildfly~http://openshift-code.domain.tld/root/some_visualizer.git --name=some3

ISSUE:
[root@oc-master ~]# oc logs some3-1-build
I0828 11:39:41.279331       1 sti.go:74] The value of ALLOWED_UIDS is [1-]
I0828 11:39:41.286395       1 docker.go:211] Image openshift/wildfly-8-centos@sha256:457764eea8327d00ebb99686bc3a22f602f3f75e57e9f953c80d0af2de4b1884 available locally
I0828 11:39:41.286471       1 sti.go:96] Creating a new S2I builder with build config: "Builder Image:\t\topenshift/wildfly-8-centos@sha256:457764eea8327d00ebb99686bc3a22f602f3f75e57e9f953c80d0af2de4b1884\nSource:\t\t\thttp://openshift-code.domain.tld/root/some_visualizer.git\nOutput Image Tag:\t<IP_ADDRESS>:5000/dry1/some3:latest\nEnvironment:\t\tOPENSHIFT_BUILD_NAMESPACE=dry1,OPENSHIFT_BUILD_SOURCE=http://openshift-code.domain.tld/root/some_visualizer.git,OPENSHIFT_BUILD_NAME=some3-1\nIncremental Build:\tdisabled\nRemove Old Build:\tdisabled\nForce Pull:\t\tdisabled\nQuiet:\t\t\tdisabled\nLayered Build:\t\tdisabled\nDocker Endpoint:\tunix:///var/run/docker.sock\n"
I0828 11:39:41.293608       1 docker.go:211] Image openshift/wildfly-8-centos@sha256:457764eea8327d00ebb99686bc3a22f602f3f75e57e9f953c80d0af2de4b1884 available locally
F0828 11:39:41.302923       1 builder.go:47] Build error: image "openshift/wildfly-8-centos@sha256:457764eea8327d00ebb99686bc3a22f602f3f75e57e9f953c80d0af2de4b1884" must specify a user that is numeric and within the range of allowed users

reinstalled the whole environment - the same happens again.
the issue does not occur when using https://github.com/openshift/nodejs-ex#master and the node.js builder image

This seems more like a origin bug when parsing the ALLOWED_UIDS.... The 1- means the container is not allowed to run as root. @soltysh can you take a look?

info: getting the current sti-master-branch and running "s2i build http://openshift-code.domain.tld/root/some3_visualizer.git openshift/wildfly-8-centos some3_visualizer" the image is being build fine.
@all: where are these ALLOWED_UIDS defined?

We should:

Fail the build immediately when this happen (can't run as root). The builder should not even be created.
Give users much more helpful information about how to fix this (presumably something is wrong in the ansible configuration that disallows running build containers as root).

the question is, why this build must be run as root - actually I see no reason for this - which are the circumstances when a build must be run with such privileges?

@mwiora running the build manually (with s2i build) and in OpenShift are two different things :-) OpenShift have security policies defined that prevents you running container as root (they run with random user ID). The build is a special case, I don't think we currently support running builds as non-root. I don't know where exactly is this behavior configured, but @soltysh or @csrwng or @liggitt should know.

@mwiora it must build as root because it is creating container on the node and need to have access to the host/hode docker socket...

@mfojtik - thank you very much for these explenations! I hope we'll be able to find the mysterious switch soon!

already logged in origin issue:
workaround found on https://trello.com/c/eGlfwXcs/603-3-prevent-sti-builder-images-from-running-as-root-build-security
I had to run:
oc edit scc privileged -n default

and add the last line.
users:
- system:serviceaccount:default:router
- system:serviceaccount:default:registry
- system:serviceaccount:openshift-infra:build-controller
- system:serviceaccount:sample01:builder

while sample01 is my project name...

@mwiora nice one!

I'll leave that to @csrwng, iirc he was reworking s2i to allow building as non-root.

@csrwng pretty sure you documented this but i'm not seeing it offhand... can you confirm/provide the link here and i think we can close this?

https://docs.openshift.org/latest/creating_images/guidelines.html#openshift-specific-guidelines under "Support arbitrary user ids"

@mwiora if possible, you should create a builder image that specifies a non-root default user. This is a new requirement in release 1.0.5.

@csrwng looking at the attached output @mwiora  is using our sti-wildfly image, which has that user set to 1001, unless @mwiora is using an older image where that was not specified yet.

@soltysh sorry didn't notice that. Yes, it looks like it's an outdated image. @mwiora pls make sure that you pull the latest sti-wildfly image.

The build pod is created by the build controller, which is already in the privileged SCC... you shouldn't need to add a particular builder service account.

@soltysh @csrwng actually I'm using the latest checked in version, which is being pulled by the ansible script (run by 4:00 PM UTC). By default it would be helpful for newbies to be able to use the provided image without any customizations. Maybe it would be possible to merge the latest version of the sti-image to the origin bundle.

You're right, they should be usable without any customization and that's the case for other images. We need to check sti-wildfly then, there must be some bug in that case.

1+

@mwiora I see the issue, the image streams json file was referring to the wrong image (which had 'widfly' as the user, instead of a numeric user). @bparees fixed it recently: https://github.com/openshift/origin/pull/4343

@csrwng thx!

@mwiora if that solves your problem can you please close the issue?

works like a charm with the updated templates. would be great when merged to the current master branch.

Encountered same issue on ocp v<IP_ADDRESS>. Though @liggitt point makes sense that build controller is already in privileged users but still, got builder pod running only after adding :

system:serviceaccount::builder

as @mwiora suggested above.

sample01

https://docs.okd.io/latest/admin_guide/manage_scc.html#enable-images-to-run-with-user-in-the-dockerfile
Grant all authenticated users access to the anyuid SCC:
$ oc adm policy add-scc-to-group anyuid system:authenticated
use this command can work fine!


💚 Change GitHub Pages deploy action

Current GitHub Pages deploy action fails. And action repository (maxheld83/ghpages) looks like not maintained anymore.
I changed maxheld83/ghpages with peaceiris/actions-gh-pages.
Failed action: https://github.com/upptime/upptime.js.org/actions/runs/3107099481/jobs/5034796351
Successfull action: https://github.com/sercanuste/upptime.js.org/actions/runs/3111255468/jobs/5043326077

Amazing, thank you so much!


Can we use master branch?

Hi,
I'd propose to use 'master' branch instead of 'live' for the following reasons:

it's default git branch and git checks it out when you do fresh repository clone
we don't need to change branch in README.rst and .travis.yml
we reducing possibility to conflict with upstream

Regards,
Ed

Good idea! I'd suggest that we try to be in sync with upstream. How about rebasing every Sunday?

I'd prefer to have master branch based on the latest release and devel branch based on upstream master. This way our users will be able to run stable code from master. We as a developer will be able to fight with the latest upstream code in devel if we want to :)

I'm not sure I understand the concept here. If we have two branches (master / devel), then I suppose we'll be pushing to 'devel' first. Once we have a stable product we'll merge to master?
How is it any different than having a 'live' and 'master' (as of today)?

The concept is simple - master branch contains stable code based on the latest zipline release. devel branch(or "live" if you wish - it doesn't matter) contains unstable code and based on zipline master to isolate users from upstream and our own breakages. That's the main idea. We can discuss details further if main idea is acceptable.

Just found this detailed explanations of the similar model: http://nvie.com/posts/a-successful-git-branching-model/

Thanks for the explanation. What's still unclear to me is where are you planning to post the Live related PRs to: devel/live, master or both?
My point being is that our code is much more in alpha state at the moment. Using any devel version of zipline might be more stable than our trial on get live trading working.

This makes sense to me. Let's keep using live until we have working and stable code.

Done with https://github.com/zipline-live/zipline/pull/27


Add web responsiveness

Is your feature request related to a problem? Please describe.
The WebApp is not mobile responsive or small screens.
Describe the solution you'd like
The app should be responsive across all the screen sizes.

Hey @rohanprasadofficial
Can you check for responsiveness before I merge to master? It is deployed on: https://dev-profilinator.rishav.dev/

Yeah , Looks better than the previous version @rishavanand

Alright then, I'll fix the "hello, world" image width and then merge. Thanks.


Allow TileLayer url and attribution to change

Adds a watchers which allows for attribution and URL to change dynamically
Fixes #37

Hi @EyMaddis,
Thanks for the great work !
I just rework how props are implemented and use the propbinder.js to do so to be consistent with other components.