Add benchmarks for string operations.

This PR adds two benchmarks for String operations (lowercased() and uppercased()) for non-ASCII strings and emojis.
Resolves SR-10857.

I'm not the right person to review this, but I'll kick off tests for you!
@swift-ci Please benchmark

@swift-ci Please smoke test

Performance: -O

Improvement
OLD
NEW
DELTA
RATIO

ObjectiveCBridgeStubFromNSDateRef
4110
3770
-8.3%
1.09x (?)

Added
MIN
MAX
MEAN
MAX_RSS

AngryEmojiPhonebook
66
69
67
—

AngryNonAsciiPhonebook
2240
2240
2240
—

Code size: -O

Regression
OLD
NEW
DELTA
RATIO

AngryPhonebook.o
1035
2467
+138.4%
0.42x

Performance: -Osize

Regression
OLD
NEW
DELTA
RATIO

ObjectiveCBridgeStubDateAccess
228
257
+12.7%
0.89x

ObjectiveCBridgeStubFromNSDateRef
3770
4170
+10.6%
0.90x (?)

Improvement
OLD
NEW
DELTA
RATIO

ObjectiveCBridgeStubDateMutation
285
257
-9.8%
1.11x (?)

Added
MIN
MAX
MEAN
MAX_RSS

AngryEmojiPhonebook
61
63
62
—

AngryNonAsciiPhonebook
2128
2142
2133
—

Code size: -Osize

Regression
OLD
NEW
DELTA
RATIO

AngryPhonebook.o
1144
2420
+111.5%
0.47x

Performance: -Onone

Improvement
OLD
NEW
DELTA
RATIO

ArrayAppendGenericStructs
2570
1520
-40.9%
1.69x (?)

Added
MIN
MAX
MEAN
MAX_RSS

AngryEmojiPhonebook
76
79
77
—

AngryNonAsciiPhonebook
2667
2674
2669
—

Code size: -swiftlibs

✅
Benchmark Check Report

How to read the data
The tables contain differences in performance which are larger than 8% and
differences in code size which are larger than 1%.
If you see any unexpected regressions, you should consider fixing the
regressions before you merge the PR.
Noise: Sometimes the performance results (not code size!) contain false
alarms. Unexpected regressions which are marked with '(?)' are probably noise.
If you see regressions which you cannot explain you can try to run the
benchmarks again. If regressions still show up, please consult with the
performance team (@eeckstein).

Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 12-Core Intel Xeon E5
  Processor Speed: 2.7 GHz
  Number of Processors: 1
  Total Number of Cores: 12
  L2 Cache (per Core): 256 KB
  L3 Cache: 30 MB
  Memory: 64 GB

In the meantime, would you mind looking up names from other European languages with extended latin characters like Czech (Jiří), Icelandic (Sigurður), etc., so that your additions have better coverage of both western and eastern Latin scripts?

Are these encoded differently in Unicode in a meaningful way, or otherwise have different capitalization or combining characteristics?

Good question! I guess the answer depends on how deep the Unicode rabbit hole one's prepared to fall... and how many clever optimization tricks are we willing to employ in the future to speed up case conversions for these cases.
When adding benchmark for Latin characters beyond the ASCII-one we have, I wanted to ensure that our sample set contained at least some characters from the first three blocks following the Basic Latin:

Unicode Code Block
Range
CaseTrick
UTF-8B/char

Basic Latin  (identical to ASCII)
0000–007F
±32
1

Latin-1 Supplement
0080–00FF
±32
2

Latin Extended-A
0100–017F
±1*
2

Latin Extended-B
0180–024F
±1*
2

Combining Diacritical Marks

—
2

@milseman I think there are quite a few choices to make here:
How would you like to deal with the issue of characters with combining diacritics vs. precomposed characters?  Do precomposed only? Split them into two different tests (AngryPhonebook.LatinExtended.Precomposed AngryPhonebook.LatinExtended.Combined) or have a healthy mix combined in just one?
What about digraphs like ǲ, ǅ(e.g. given name ǅemal would become ǄEMAL/ǆemal in AngryPhonebook), ǈ, ǋ?
What about ligatures?
Do you want to include the infamous Eszett to cover the ß -> SS? (There are no given names that include it, but we could just include a word that has it…)

My suggestion is to:

Introduce test cases from popular given names regexed from Wikipedia
Introduce separate test cases for special character nouns like Straße -> STRASSE -> strasse
3a. Add separate test cases for different Unicode code blocks to work on single character strings as well as digraphs and ligatures.
3b. Alternatively I could generate some pseudo-random words containing characters from different Unicode code blocks (prefixing / suffixing with basic letters) and run uppercasing / lowercasing on those.

Waiting for suggestions @palimondo

@milseman ^^

Sorry, I missed this thread at first.
For micro-benchmark workloads, there’s two main qualities we’re looking at: how well does this demonstrate differences in performance characteristics, and how well does this relate to important scenarios.
Often times with String, if you were to analyze the amount of resources spent doing some operation on any user’s system, you’ll often find that ASCII is over-represented even if the user’s language is non-Latin based. Many of String’s fast-paths reflect this observation. ASCII vs non-ASCII is both a salient performance characteristic and models important scenarios in most string benchmarking.
Beyond that, it depends on whether there is something additional to be observed from the workload. For example, comparison has fast-paths for pre-normalized contents, so it makes sense to have a variety of workloads that model different degrees of normality. Or, we may care about some pathological workload that exhibits worst-case performance (even if extremely rare in practice), because we need to ensure some algorithmic complexity guarantee in the face of malicious input (an important scenario) to model.
As for case conversion specifically, the current implementation has a good fast-path for ASCII and a crappy slow path (in need of improvement) for non-ASCII. For the non-ASCII slow path, we currently transcode into a UTF-16 Array to call ICU on in entirety and transcode the result back into a native String.
At this moment, ASCII vs non-ASCII is the most important workload difference to add for this micro-benchmark: content differences may just manifest as more time spent transcoding or in ICU. So ideally, most of the content of a non-ASCII workload should be non-ASCII scalars (with at least some case-variant contents).
Other workloads are useful for demonstrating the impact of improvements to this slow path, which is why a lot of performance work starts with writing a benchmark to model the scenario you’re about to improve. For case-conversion, that might be early-detecting case-invariance in portions (or entirety) of the String, whether it will need to grow or be the same size, etc., so that a faster implementation could just memcpy the UTF-8 contents directly and do incremental scalar-by-scalar case conversion for the portions that need it. Or, if we knew the content was in a small-string representation and would remain there, we might decide to transcode to/from stack buffers: in that case the size of the string becomes salient.
If you’re interested in improving performance in some situations here, or have insight into how those improvements could happen, then definitely consider adding those kinds of workloads. Otherwise, I’m thrilled to see you add non-ASCII ones, and I think having a variety of names from non-English, case-variant languages is a fine idea.
Good work!

@milseman, now that PR #25309 has been merged, is the performance test coverage already sufficient or does it makes sense to add ExtendedLatin variant with workload containing names with characters from Latin-1 Supplement, Latin Extended-A, Latin Extended-B?
What do you think about adding the emoji workload Michał has proposed here? I'm not sure how it fits into the new family… Could it represent some kind of early exit scenario since they could be thought of as case-invariant workload. We would have to find appropriate workload size (current seems too small to me).
If Michael says we need additional benchmarks here, @mdab121, you would first need to rebase this PR on top of master to resolve the conflicts.

@milseman, now that PR #25309 has been merged, is the performance test coverage already sufficient or does it makes sense to add ExtendedLatin variant with workload containing names with characters from Latin-1 Supplement, Latin Extended-A, Latin Extended-B?

Is there anything meaningfully different in those blocks?

What do you think about adding the emoji workload Michał has proposed here?

A case-invariant, multi-scalar-character workload wouldn't hurt and I'd welcome such an addition.

Can one of the admins verify this patch?

@mdab121 Would you be interested in reviving the emoji test case from this PR? You’d need to rebase on latest master and play a little bit with workload size to fulfill the documented properties of that benchmark family introduced in PR #25309. Otherwise we should probably close it.

@palimondo Could you get this rebased if you still want it merged?

@CodaFi Given that there was no response to my previous comment, we should probably close this, unless @mdab121 objects and want's to pick it up.

Please update the base branch to main by Oct 5th otherwise the pull request will be closed automatically.

How to change the base branch: (Link)
More detail about the branch update: (Link)


Create a "Build from Source" command

This task is about building a command like yarn init-from-source (or a better name) that will create a project from React Native source to make it easy to end-to-end test the new project creation flow as well as it makes it easy to create projects from source.
Right now the manual steps for this process are: https://gist.github.com/cpojer/38a91f90614f35769e88410e3a387b48
Vision:

The idea is for all of this to be wrapped up neatly into a single command line, using the version of RN cli that is shipped with RN on master (instead of npx).
After we added this command, a follow-up should be to add this to our end-to-end tests and make sure it doesn't regress.
Ideally this command will also run yarn link inside of react-native and then yarn link react-native after creating the new project. That will allow developers to modify the source version of RN and build a new app from it.

cc @lucasbento

FYI you can run ./scripts/test-manual-e2e.sh right now and it will build RN from source and make a test project for you automatically.
I believe we could start from there.
This script also has a command to run RNTester before creating a new project - we should probably comment this part out and move to a separate file.
So we could split test-manual-e2e.sh into:

build-from-source.sh
test-manual-rn-tester.sh
test-manual-rn-init.sh
and make test-manual-e2e.sh compose these 3 together.

Note: Your guide @cpojer for Android is running from source.
We could also provide an alternative guide (which is what ./scripts/test-manual-e2e.sh does at the moment) - building React Native from source and running it.
The difference is Android is already compiled and we don't have to perform Gradle changes as presented in your guide.
Depending on the use-case, this may or may not be desired.

I would like this command to build RN from source, yes.

@grabbou: how exactly does test-manual-e2e.sh should work? I tried it here and I get questioned twice about which version to use:

And in the end I get Incorrect version number in /tmp/RNTestProject/package.json.

Just for one more data point, I did:

install android ndk (https://developer.android.com/ndk/guides).
clone react-native repo.
change the react-native field in react-native/template/package.json to the absolute path of the react native repo, for example: "react-native": "file:///Users/username/react-native".
run yarn install
run npx @react-native-community/cli@next init TestApp --template file:///Users/username/react-native.
run pod install.
run yarn start and press play on xcode.
then I got

Failed to construct transformer:  { Error: Cannot find module '/Users/pvinis/Source/contrib/react-native/RNTestProject/jest/hasteImpl'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:668:15)
    at Function.Module._load (internal/modules/cjs/loader.js:591:27)
    at Module.require (internal/modules/cjs/loader.js:723:19)
    at require (internal/modules/cjs/helpers.js:14:16)
    at new HasteMap (/Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/node_modules/jest-haste-map/build/index.js:366:25)
    at Function._createHaste (/Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/src/node-haste/DependencyGraph.js:122:12)
    at /Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/src/node-haste/DependencyGraph.js:154:37
    at Generator.next (<anonymous>)
    at asyncGeneratorStep (/Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/src/node-haste/DependencyGraph.js:14:24)
    at _next (/Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/src/node-haste/DependencyGraph.js:34:9) code: 'MODULE_NOT_FOUND' }
(node:39936) UnhandledPromiseRejectionWarning: Error: Cannot find module '/Users/pvinis/Source/contrib/react-native/RNTestProject/jest/hasteImpl'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:668:15)
    at Function.Module._load (internal/modules/cjs/loader.js:591:27)
    at Module.require (internal/modules/cjs/loader.js:723:19)
    at require (internal/modules/cjs/helpers.js:14:16)
    at new HasteMap (/Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/node_modules/jest-haste-map/build/index.js:366:25)
    at Function._createHaste (/Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/src/node-haste/DependencyGraph.js:122:12)
    at /Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/src/node-haste/DependencyGraph.js:154:37
    at Generator.next (<anonymous>)
    at asyncGeneratorStep (/Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/src/node-haste/DependencyGraph.js:14:24)
    at _next (/Users/pvinis/Source/contrib/react-native/RNTestProject/node_modules/metro/src/node-haste/DependencyGraph.js:34:9)
(node:39936) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:39936) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

I also tried running ./scripts/test-manual-e2e.sh but I got
Preparing version 1000.0.0

FAILURE: Build completed with 2 failures.

1: Task failed with an exception.
-----------
* Where:
Build file '/Users/pvinis/Source/contrib/react-native/ReactAndroid/build.gradle' line: 190

* What went wrong:
A problem occurred evaluating project ':ReactAndroid'.
> Cannot get property 'absolutePath' on null object

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

2: Task failed with an exception.
-----------
* What went wrong:
A problem occurred configuring project ':ReactAndroid'.
> compileSdkVersion is not specified.

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

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

BUILD FAILED in 1s
Couldn't generate artifacts

(I find it weird that some scripts in RN use npm and npm when most other things are done with yarn..)

@lucasbento this script doesn't work on master right now. Please run it or copy from 0.60-stable where I am doing some fixes to adopt it to the new CLI.

@cpojer just to be clear, to build from source, not to run from source? That's a small difference - only for Android.

@grabbou I think ideally the command should set up a new project, and then patch the gradle files to build from source when running. If I change a java file in RN source, it should be reflected in the app.

I just want to try out iOS with cocoapods 😢.
About the difference running and building.. aren't we doing a build of the source, and make the rn library/package, and then create a new project that uses that package? Am I misunderstanding here?

I'm slightly confused on this as well and I can't really run the Android version here, it's failing on the build with Android NDK.
Will it be enough to add these steps here: https://github.com/facebook/react-native/blob/0.60-stable/scripts/test-manual-e2e.sh#L74-L92?
On this branch it's already using the local CLI.
When we complete this I would say it would be nice to work on docs for building from source.

Closing as now we have a page to describe those steps:
https://reactnative.dev/contributing/how-to-build-from-source


protobuf 3.3.0: the generated files need to be regenerated

Same as https://github.com/alexeyxo/protobuf-swift/issues/187 but for 3.3.0
@alexeyxo thanks in advance

Done. Thanks.


Add comment on README about Apple M1 with older iOS

Please, send me a sentence

Mattia to send stuff from his previous installation (Hardware and IOS)

Add comments on Apple/Windows and/or Linux

fix with commit f05986c

fix with commit f05986c


Add hacking

Codecov Report

Merging #14 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            master       #14   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            2         2
  Lines           20        20
  Branches         3         3
=========================================
  Hits            20        20

Impacted Files
Coverage Δ

flake8_no_implicit_concat/checker.py
100.00% <ø> (ø)

Continue to review full report at Codecov.

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


References: Need to add os

Some of the tests that we're adding to the script require import os.
We'll need to add this reference to the:

[ ] Bibliography

[ ] README dependencies

[ ] Report

Actually, do we need to add a reference for this??

No need to add a reference to this; os ships with Python


kubectl log does not support pods/foo format

kubectl create prints out the names of the created resources with the resource type as a prefix, like:
$ kubectl create -f myconfig.yaml
pods/mypod
pods/myotherpod

You can pass this prefixed name as an argument to kubectl describe but not to kubectl log (and presumably not to kubectl exec, though the latter not tested).
This would be nice for copy/paste with a default selection regex that includes slash as part of a word, and for scripts that chain the output of create to other commands.

Specifically, kubectl log pods/mypod does not work and I think it should.

Related: #8448

Related: https://github.com/openshift/origin/issues/5685

cc @soltysh

Sign me up, I'll try to find some time and fix it.

kubectl log pods/mypod should work now

Confirmed, @erictune you can close.

Thanks!


Add example of changing Redis server config

Existing docs have no examples of CONFIG SET, and no mention of multi-word commands.

LGTM. Could you please change the double quotes to single quotes?

Done.


fix issue: sometimes volume.fsck report 'volume not found'

What problem are we solving?
sometimes volume.fsck report 'volume not found' when a volume server has multiple disk types
How are we solving the problem?
reuse volumeId to VInfo map when is exists.
How is the PR tested?
I have tested on my cluster.
Checks

[ ] I have added unit tests if possible.
[ ] I will add related wiki document changes and link to this PR after merging.

Thank you for merging.
However, I am confused.
Suppose a node has below files:
bucket_680.ec01
bucket_680.ec05
bucket_680.ec09
bucket_680.ec13

I thought the node has 4 shards of an EC volume. (volume id=680)
The original code (before I modified it) reported a count of 1, not 4.
So I initially named the counter as volumeCount.
normal volume count + ec volume (though it's a fraction) count
The code you modified still reports 1 under the name ec shards.
I believe it should be 4 under the name ec shards.
If I'm missing something or if I'm mistaken, please let me know.
I found the following code to count ec shards:
count += erasure_coding.ShardBits(ecShardInfo.EcIndexBits).ShardIdCount()

the added volume count and ec shard count are only for verbose logging and do not have any actual effect.


Add sections-flash.ld

Add a linker script for applications running in flash.

Fixed on 2022-07-28.


S2 Color loupe tokens update (non-color only)

Description

Marked the following tokens for deprecation by adding a "🚫" flag, and then relinked them to global drop-shadow tokens:

color-loupe-drop-shadow-y (relink to drop-shadow-elevated-y)
color-loupe-drop-shadow-blur (relink to drop-shadow-elevated-blur)

Motivation and context

These changes occurred as a result of scaling things for S2 design language and experiences.
Related issue

Types of changes

 [ ] Patch (bug fixes, typos, mistakes; non-breaking change which fixes an issue)
 [X] Minor (add a new token, changing a value; non-breaking change which adds functionality)
 [X] Major (deleting a token, changing token value type; fix or feature that would cause existing functionality to change)
Checklist:

 [X] I have signed the [Adobe Open Source CLA](https://opensource.adobe.com/cla.html).
 [X] I updated the token in all applicable sets. This applies if updating, adding, or deleting a token that has data across different sets (for example, if the value differs across color themes.)


Introduce DevContainers

What problem does this PR solve?
Issue Number: ref #5991
Problem Summary:
What is changed and how it works?
A DevContainer that can build TiFlash.
You may use one of the following ways to utilize this DevContainer:

Use VsCode
Install the Remote Development extension pack, and use VsCode to open a local or even remote (via SSH) TiFlash source code directory. A prompt will be shown to ask whether you want to use the DevContainer:

By Clicking "Reopen in Container", now you go! You will have a develop environment with the following features with zero configuration:

C++ Code Completion in VsCode (powered by Clangd)

One click to configure (using cmake) and build TiFlash (using Ninja), or even switch different build targets and profiles:

And even test selection via UI, if gtests_dbms is built:

The VsCode terminal will also work, in case of you want to invoke customized build commands:

Cache just works, cache is persisted even if the docker container is restarted or rebuilt, including: Rust toolchains, Rust dependencies from Cargo, ccache.

Use Docker
The DevContainer is just a standard docker image with dev tools configured. So you can also just use Docker, for example, in a Linux x86_64 machine, you could just:
$ cd tiflash/.devcontainer
$ make dev   # Build tiflash using debug profile

Base image:
CentOS 7 (x86_64)
The built artifact is portable for most Linux x86_64 distributions because it is built against CentOS 7 which has a rather old glibc version.
Built-in components:

Clang 15.0.7
Very recent git, zsh, cmake, ccache, Python3, GitHub CLI

Work items:

[x] Open-source the image builder
[x] Use docker-compose so that mapping volumes will just work even without using VsCode or DevContainer CLI
[x] Support x86_64
[ ] Support ARM
[ ] Support memoizing bash and zsh histories
[ ] Include more handy tools in the image, e.g. fzf, fd, rg
[ ] Publish the image to the CI's image registry
[ ] Change CI release to be based on this image
[ ] Support easy-to-run clang-format and clang-tidy in the DevContainer

Check List
Tests

[ ] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

None

Wonderful! I have tried and get smooth develop experience. A small suggestion: improve hostRequirements.
Looking forward to supporting other Linux distribution like ubuntu:latest (sometimes we need new distribution environment to test some new features.)

Wonderful! I have tried and get smooth develop experience. A small suggestion: improve hostRequirements.
Looking forward to supporting other Linux distribution like ubuntu:latest (sometimes we need new distribution environment to test some new features.)

I guess our compilation may be still kept in CentOS 7, so that binary would be portable. We probably need some easy-to-use environment as Ubuntu for running these compiled dev binaries instead. Currently I don't come up ideas. Do you have some suggestions? Maybe docker in docker?

Wonderful! I have tried and get smooth develop experience. A small suggestion: improve hostRequirements.
Looking forward to supporting other Linux distribution like ubuntu:latest (sometimes we need new distribution environment to test some new features.)

I guess our compilation may be still kept in CentOS 7, so that binary would be portable. We probably need some easy-to-use environment as Ubuntu for running these compiled dev binaries instead. Currently I don't come up ideas. Do you have some suggestions? Maybe docker in docker?

Both compilation and run. For example, I want to introduce https://github.com/intel/qpl to tiflash which has high system requirements, then I need to create a new develop environment. A docker image with newest system can help a lot.

Wonderful! I have tried and get smooth develop experience. A small suggestion: improve hostRequirements.
Looking forward to supporting other Linux distribution like ubuntu:latest (sometimes we need new distribution environment to test some new features.)

I guess our compilation may be still kept in CentOS 7, so that binary would be portable. We probably need some easy-to-use environment as Ubuntu for running these compiled dev binaries instead. Currently I don't come up ideas. Do you have some suggestions? Maybe docker in docker?

Both compilation and run. For example, I want to introduce https://github.com/intel/qpl to tiflash which has high system requirements, then I need to create a new develop environment. A docker image with newest system can help a lot.

Interesting! I understand that you may want to use qpl as soon as possble for POC purpose. But if this library indeed has a very high system requirement, then may be you will still face the challenge to introduce it to master, as we will finally compile on CentOS 7 for portability?

Interesting! I understand that you may want to use qpl as soon as possble for POC purpose. But if this library indeed has a very high system requirement, then may be you will still face the challenge to introduce it to master, as we will finally compile on CentOS 7 for portability?

yes

With the free Codespace generally available, it is even possible to start developing TiFlash, just in the browser now!

/run-all-tests

Looking forward to a ubuntu:latest container 👍

/merge

/merge


wait_persist_across_loads does not work in INFRA

repro steps:

type hwait 600 say xddddd
load_fast any save on the same map
get xddddd on screen even though wait_persist_across_loads is 0

hwait is a different mechanism to wait, wait_to, and wait_for, just scheduling the command in x "host ticks" (which continue through loads)

Ah, I see, ty


Vec / array descriptions go to item instead of array

When documenting a struct field that's a vector, the description is added to the item in the array instead of the array itself.
Example:
Current behavior:
"structField": {
  "type": "array",
  "items": {
    "type": "string",
    "description": "Description of struct field."
  }
}

Intended(?) behavior:
"structField": {
  "type": "array",
  "description": "Description of struct field.",
  "items": {
    "type": "string"
  }
}

At least the intended behavior is what works with https://github.com/stoplightio/elements

I'll need to investigate this a bit when I get time, this smells like a bug at first sight though.

Fix is on the way, and landing in the next release :slightly_smiling_face:


Morning session code review friday

Your group members have provided the following issues in your repo

[ ] I would just suggest a few changes in the HTML file where you can wrap the form elements in a section tag so as to improve the semantics

Good job so far @Yordinia

Highlights 🎯
App submits scores to API ✅
Scores are retrieved from API ✅
Async, Await, and arrow functions are all well implemented ✅
There is an optional suggestion, it would be better if you sort the leaderboard list by score, from the highest scores to the lowest, this way, you can see who is the game leader.


Fixed a bug that can't open a fileDialog to import/export a SDK file throughout the GUI.

When export/import_SDKs_action is triggered, it sends False by default to the method, which is why the path argument receives False. The path argument needs to receive None to open a file dialog, To avoid this behavior and ensure None is passed instead, I used a lambda function.

Hi @joji2468ng  thanks for the PR!
I will check it and merge it ASAP 😄

@joji2468ng I have copy/pasted the fix of this PR by hand. Since it couldn't merge because of the mistake with the other PR you sent here 😄
Thanks for the contributions!


Uncaught TypeError: Object [object Object] has no method 'on'

I first started seeing this yesterday on PR's to ember-cli. They all have this error:
Acceptance: ember install installs addons via npm and runs generators:
     Uncaught TypeError: Object [object Object] has no method 'on'
      at FileReader._getStream (node_modules/bower/node_modules/fstream/lib/file-reader.js:41:10)
      at FileReader._read (node_modules/bower/node_modules/fstream/lib/file-reader.js:99:17)
      at go (node_modules/bower/node_modules/fstream/lib/reader.js:214:21)
      at go (node_modules/bower/node_modules/fstream/lib/reader.js:217:7)
      at go (node_modules/bower/node_modules/fstream/lib/reader.js:217:7)
      at go (node_modules/bower/node_modules/fstream/lib/reader.js:217:7)
      at statCb (node_modules/bower/node_modules/fstream/lib/reader.js:218:7)
      at Object.oncomplete (fs.js:108:15)

Perhaps it coincides with your recent release? Maybe an issue with the graceful-fs major version bump?

Turns out, this appears is the result of TWO libs both patching FS. GracefulFS and https://github.com/stefanpenner/fs-monitor-stack
Quick fix is to disable  fs-monitor-stack  unless its required (should have been the case anyways)

Just so everyone knows, we're in the process of upgrading graceful-fs everywhere within npm, because future versions of Node (Node 5+) are probably going to use the internal bindings in an incompatible way that will break code trying to monkeypatch the fs code the old way (i.e. by using process.binding()). See also nodejs/node#2714 for one example of how this change might be made, but there are others.
I'm going to close this as not an issue in fstream, and in any case one that is addressed now by having switched to graceful-fs@4 in the latest version of fstream.

@othiym23 sounds good. I'm still waiting on CI, but I am fairly confident it was the double monkey patching of FS modules that caused grief. Ultimately our patching was only to instrument for performance testing, and was only accidentally left always enabled.


prevent logging unneeded shader info on js

On JS, every shader was logged, by default. gl.getShaderInfoLog always returns a non-null string, as per the doc.

When a WebGLProgram object is initially created, its information log will be a string of length 0.

Good fix. Merged. Thanks!


When will you upgrade to angular9?

At present, I look at angular8. When will I upgrade to angular9?

Module will work with angular 2 => 9+ @jocklei


Profile backend2

Photo path the right way for gab (updated on photo upload and seed data path)

sorry for the conflict... to acces the photo in the frontend, its designed to have them in public in the root of frontend.


Missing Vanities to add to vanity_section.ts

New 777:
    [777, 145263], // An Interloper in the Library
New section for the three 77s:
    [77, 144494], // A Shaper of Starved Culture
    [77, 144203], // Neighbourhood Noctivagant
    [77, 144910], // Volatile Consignments Delivered to the Remote Magazine

Thank you! Added in d47d305b210935f589199706a599e94b9d748a16


Getting Blank screen while scan in flutter web +  IOS

I am not unable to scan in ios + flutter web. thanks.

same issue on ios 15 with flutter 3.0

same issue here but first time close scan screen while scan in flutter web + IOS

same issue on IOS 15.4.1 with Flutter 2.10.5

Im closing this because im cleaning out the issues. If this is still a problem please comment.


Update Turkish Translation

Check if this PR fulfills these requirements:

[ ] My changes respect the Kodi add-on development rules
[ ] I have read the CONTRIBUTING document.
[ ] I made sure there wasn't another one Pull Requests opened for the same update/change
[ ] I have successfully tested my changes locally

Types of changes

[ ] New feature (non-breaking change which adds functionality)
[ ] Feature change (non-breaking change which change behaviour of an existing functionality)
[ ] Improvement (non-breaking change which improve functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description

In case of Feature change / Breaking change:
Describe the current behavior

Describe the new behavior

Screenshots (if appropriate):

please check the latest changes,
you can look at this commit as reference:
https://github.com/CastagnaIT/plugin.video.netflix/commit/68299320af81375b3368f9b48d56df91fa838048

you have to rebase your branch otherwise i can't merge it


Guid uri template path/query parameter values should be normalized to string

the std uri template library does not handle guids, and wont because it's not a standard API across languages and they don't want to bring on additional dependencies.
We should normalize the value to string (no curlies) before we pass it to the uri template engine.
Originally reported:
https://github.com/std-uritemplate/std-uritemplate/issues/140
https://github.com/microsoft/kiota/issues/4335
Example implementation https://github.com/microsoft/kiota-abstractions-dotnet/blob/5a93d126e9ce30ae332e65f30df7b941e7d7c265/src/RequestInformation.cs#L123

According to the code at the link below, it looks like the generator does not emit a specific type for uuid/guid types in PHP. These are already normalized to string so it would not be expected to have any type for guid present in the URI.
https://github.com/microsoft/kiota/blob/947d0b3d8835168666edfff1716a2c75c9f9f141/src/Kiota.Builder/Writers/Php/PhpConventionService.cs#L71
If this is intended, I believe this issue can be closed as not GUID would be placed in a request info object.
cc @Ndiritu

I agree with closing this @andrueastman. PHP doesn't support GUID types natively & we map these to strings already as linked.

Thanks for checking @Ndiritu. Closing this one for now.


showing feedback when starting a new connection

we're currently not displaying any feedback when creating a new connection, but we should display something like "Connected to {alias}". This should be configurable and turned off when feedback=0
Likewise, the "switching to connection" messages should be turned off when feedback=0
you can get the current feedback level with: https://github.com/ploomber/jupysql/blob/master/src/sql/_current.py

Acceptance Criteria

Display a Connected to {alias} message that is configurable with feedback=0 when starting the first connection
Add test functions


quickstart create_accounts example in docs errors

I tried copy-pasting
create_accounts id=1 code=10 ledger=700,
                id=2 code=10 ledger=700;

from https://docs.tigerbeetle.com/quick-start#5-create-accounts but it gives an error:
info(message_bus): connected to replica 0
TigerBeetle CLI Client 0.16.14+ff102ad
  Hit enter after a semicolon to run a command.
  Ctrl+D to exit.

Examples:
  create_accounts id=1 code=10 ledger=700 flags=linked|history,
                  id=2 code=10 ledger=700;
  create_transfers id=1 debit_account_id=1 credit_account_id=2 amount=10 ledger=700 code=10;
  lookup_accounts id=1;
  lookup_accounts id=1, id=2;
  get_account_transfers account_id=1 flags=debits|credits;
  get_account_balances account_id=1 flags=debits|credits;

> create_accounts id=1 code=10 ledger=700,
Fail near line 1, column 40:

create_accounts id=1 code=10 ledger=700,
                                        ^ Near here.

Expected key starting key-value pair. e.g. `id=1`

It works as two separate lines. I'm on macos fwiw.

Thanks, this seems like it is a recent regression! I checked that it errors out on main, but does work on 0.16.1.
cc @brson I guess this could have regressed in the PR that introduced better terminal editing for repl?


Create "favourite settings" section

There are many options that I never change like font, number format, graphics, and others I change often like whether golden cookies should make a sound. It is annoying to scroll up and down through the options list to adjust those "favorite" options.
My request is to give the user the ability to mark options as "favorite" (probably using a star icon next to the name of the setting) and then a section within the options menu (at the top) where all the favorited options can be adjusted.
For me I would favorite "Lower limit for PP", "Sort buildings by PP", "Average CPS by ", "Ignore non-buyable", Golden cookie notification options, Farm tick notifications.

I think adding a star to each setting would clutter the settings even more.
There could be a button that open a dialog where you can select favorite settings that are then shown in a new section at the top.

I have implemented this using stars. Could you give me some feedback on it?
You can test it by using the dev-branch version. This is possible by going to "Code", selecting the dev branch and copying the content of CookieMonster.js into your browser console.


GKS failure in output

There are GKS failures somewhere in the post processing pipeline. We should fix them.
One job that is particularly concerning is sphere_aquaplanet_rhoe_equilmoist_allsky_gw_raw, which seems to take only 14 m to solve, but that job takes 40 m.

This is not an issue anymore as we moved to the new post processing pipeline.


fix(customize-process-field.md)

Fix typo in the customize-process-field.md page

@carlosmorgado : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Dealing with Async loaded json-ld

Hello! Is there a way to deal with async loaded json-ld such as in this url -> “https://www.omicsdi.org/dataset/arrayexpress-repository/E-GEOD-33515”
extruct “https://www.omicsdi.org/dataset/arrayexpress-repository/E-GEOD-33515” results in no json-ld metadata being returned

@omprakaash I think the only general way to solve this is to load the page in a headless browser (e.g. headless chrome or with http://splash.readthedocs.io), and then pass html after rendering to extruct. Another option, if you can trace which request fetches json-ld, you can fetch it directly and pass to extruct.

Ah. Thank you! Will try doing it the way you suggested.


Not able to build via CMake for stm32f407

When running

cmake ../ref_app -DCROSS_COMPILE=arm-none-eabi -DTARGET=stm32f407 -DCMAKE_TOOLCHAIN_FILE=../ref_app/cmake/stm32f407.cmake

it seems that the CXX compilers is rolled back to GNU on my system:

-- CMAKE_BUILD_TYPE not set, defaulting to MinSizeRel.
-- The CXX compiler identification is GNU 11.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/c++
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Generator .............. Unix Makefiles

I explicitly set the compiler to arm-none-eabi-gcc in stm32f407.cmake and that led to undefined reference to _exit'` error in CMake. I was wondering if this is an issue or I am missing something.
Thank you very much for your time and help.

explicitly set the compiler to arm-none-eabi-gcc in stm32f407.cmake and that led to undefined reference to _exit' error in CMake. I was wondering if this is an issue or I am missing something.

Hi @ArshaShiri thanks for your report. Sorry about the late response on this issue.
Actually, I believe there is an issue here. When compiling with CMake for am335x, we have also observed this phenomenon. It is being tracked in #101 (now linked to this issue).
I've tried a few things. One thing we need to make sure of is if we are linking in CMake with the so-called nano-specs, as hat compiler might be built with newlib-nano. I need to check if I incorporated that into the call of the linker in the CMake build scripts.
I wonder if you could try to see if you can build with GNUmake? If so, then that tells us if the problem is CMake-dependencies-related or generally on the distro that you've spinned up.
This issue has perplexed me for a while and a few people (non-published) have looked into this without yet finding a solution. So i am very keen on making progress on this issue and hearing about any ideas or experiences you make...

I actually label this issue as a bug, since I think it is a bug, though I'm not exactly sure where or which kind of bug we are dealing with.

Hi @ArshaShiri also I notice the docs are poor in this case.
The pattern for building with CMake for stm32f407 is:
cd real-time-cpp
mkdir build
cd build
cmake ../ref_app -DTRIPLE=arm-none-eabi -DTARGET=stm32f407 -DCMAKE_TOOLCHAIN_FILE=../ref_app/cmake/gcc-toolchain.cmake
make -j ref_app

I will correct the docs.
But this might still not fully solve the issue you mention.

cd real-time-cpp
mkdir build
cd build
cmake ../ref_app -DTRIPLE=arm-none-eabi -DTARGET=stm32f407 -DCMAKE_TOOLCHAIN_FILE=../ref_app/cmake/gcc-toolchain.cmake
make -j ref_app

Dear @ckormanyos
Thank you very much for your reply and help. Using your suggested pattern the issue is resolved.
The problem was that I was setting the CMAKE_TOOLCHAIN_FILE to stm32f407.cmake instead of gcc-toolchain.cmake which was my mistake. Sorry for taking your time for this.
I can also build using GNUMake by the way, so there seems to be no problem for stm32f407. I tired building the am335x and no elf was generated indeed when I used CMake.

Thank you @ArshaShiri

problem was that I was setting the CMAKE_TOOLCHAIN_FILE

I am glad it works locally for you now. Your very clear report helped point out weaknesses in the docs of real-time-cpp. Thank you for that.

can also build using GNUMake

Excellent! Thanks for checking.
If any other problems or roadblocks are encountered, please feel free to query any time.

tired building the am335x and no elf was generated indeed when I used CMake

Yes. that is another independent confirmation of what seems to be the topic of #101, which will remain open.


Fix unbound keys in vicmd/viins mode

Previously I made a change to try and bind these unbound keys to the main
keymap in thoughts that in vicmd or viins mode it would fallback if it wasn't
bound in vicmd/viins mode. This turned out not to be the case.
Explicitly bind the keys in both viins and vicmd mode as works properly.

Thanks for the fix!


don't assume timezone

https://github.com/catalystneuro/lerner-lab-to-nwb/blob/856b798dcf353dfaf7ec7ea6fa468ed6111dcb36/src/lerner_lab_to_nwb/seiler_2024/seiler_2024behaviorinterface.py#L70
This may be correct for this particular lab conversion, but even so I'd rather not include this assumption in the interface. This class should return the session_start_time without a timezone, and the timezone can be set in an outer scope, e.g. in the Converter object or even in the convert_sessions.py file

Is this a best practice? What exactly is the advantage of setting the time zone in the outer scope?

It's explicit that way
Otherwise you assume they have it set correctly on the machine


Provide flutter_infra release urls that always point to the latest for a channel

Precompiled flutter_infra releases are great for CI, but I need to keep updating my CI settings whenever a new release comes out.
Can we have a URL for each channel (master/dev/beta) that always points to the latest version for that channel?
https://flutter.dev/docs/development/tools/sdk/releases?tab=macos

If we had this, we could use it to provide a more intelligent version freshness check.
https://github.com/flutter/flutter/blob/49cce984834c5a007a15e74988f7a153cff32705/packages/flutter_tools/lib/src/version.dart#L286
/cc @zanderso @digiter

If we had this, we could use it to provide a more intelligent version freshness check.

Do you mean doing something like parsing the version number out of the url that the 'latest' url resolves to?

Yeah, I'm picturing a single JSON endpoint that provides the latest version on each channel.

Triage: what's needed from the infra team?

Obsolete. Please reopen if still needed.


"Push notifications are not supported by your browser" When nativefying The Lounge

Homework

[x] I looked at nativefier --help and https://github.com/jiahaog/nativefier/blob/master/docs/api.md
[x] I searched existing issues, open & closed. Yes, my question is new.
[x] I'm using the latest version available at https://github.com/jiahaog/nativefier/releases

Your question
I'm trying to get nativefier to bundle a hosted instance of The Lounge, but it complains about the browser not supporting push notifications. Is there anything that could get fixed upstream to make this work inside of electron 11 with push notifications?
Steps to reproduce
If you already have a Nativefier command you're struggling with, paste full nativefier command and its logs, with the --verbose flag, on a public site:
sausage@MBP ~ % nativefier --name "The Lounge" "https://ssg.land/irc" -a arm64 --counter --bounce --darwin-dark-mode-support -i Downloads/icon.icns --single-instance --verbo
se
Running in verbose mode! This will produce a mountain of logs and is recommended only for troubleshooting or if you like Shakespeare.

Performing async options post-processing.
Inferring user agent for electron 11.0.3 / darwin
Grabbing electron<->chrome versions file from https://atom.io/download/atom-shell/index.json
Got icon from options. Using it, no inferring needed
Got name The Lounge from options. No inferring needed
Sanitized filename for The Lounge : The Lounge
Associated electron v11.0.3 to chrome v87.0.4280.67
Given chrome 87.0.4280.67 on darwin, using user agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.67 Safari/537.36

Preparing Electron app...
Copying electron app from /usr/local/lib/node_modules/nativefier/app to /var/folders/1f/q4hz55_x2v50d_0t05_6ck_h0000gn/T/nativefier-15-40-16-app--14716-GXWj37iDKdGC
Writing app config to /var/folders/1f/q4hz55_x2v50d_0t05_6ck_h0000gn/T/nativefier-15-40-16-app--14716-GXWj37iDKdGC/nativefier.json
No files to inject, skipping copy.
Updating /var/folders/1f/q4hz55_x2v50d_0t05_6ck_h0000gn/T/nativefier-15-40-16-app--14716-GXWj37iDKdGC/package.json 'name' field to the-lounge-nativefier-284290

Converting icons...
Building for macOS and icon is already a .icns, no conversion needed
Copying icons if necessary
No copying necessary on macOS; aborting

Packaging... This will take a few seconds, maybe minutes if the requested Electron isn't cached yet...
  electron-packager Electron Packager 15.2.0
  electron-packager Node v15.4.0
  electron-packager Host Operating system: darwin 20.2.0 (x64) +0ms
  electron-packager Packager Options: {"arch":"arm64","asar":false,"darwinDarkModeSupport":true,"dir":"/var/folders/1f/q4hz55_x2v50d_0t05_6ck_h0000gn/T/nativefier-15-40-16-app--14716-GXWj37iDKdGC","electronVersion":"11.0.3","icon":"Downloads/icon.icns","name":"The Lounge","out":"/Users/sausage","overwrite":true,"platform":"darwin","targetUrl":"https://ssg.land/irc","tmpdir":false,"win32metadata":{"ProductName":"The Lounge","InternalName":"The Lounge","FileDescription":"The Lounge"}} +0ms
  electron-packager Target Platforms: darwin +0ms
  electron-packager Target Architectures: arm64 +0ms
  electron-packager Inferring appVersion from version in /var/folders/1f/q4hz55_x2v50d_0t05_6ck_h0000gn/T/nativefier-15-40-16-app--14716-GXWj37iDKdGC/package.json +0ms
  electron-packager Application name: The Lounge +5ms
  electron-packager Target Electron version: 11.0.3 +0ms
  electron-packager Ignored path regular expressions: [
  '/package-lock\\.json$',
  '/yarn\\.lock$',
  '/\\.git($|/)',
  '/node_modules/\\.bin($|/)',
  '\\.o(bj)?$'
] +0ms
  electron-packager Downloading Electron with options {"platform":"darwin","arch":"arm64","version":"11.0.3","artifactName":"electron"} +0ms
Packaging app for platform darwin arm64 using electron v11.0.3
  electron-packager Creating /Users/sausage/darwin-arm64-template +7ms
  electron-packager Extracting /Users/sausage/Library/Caches/electron/httpsgithub.comelectronelectronreleasesdownloadv11.0.3electron-v11.0.3-darwin-arm64.zip/electron-v11.0.3-darwin-arm64.zip to /Users/sausage/darwin-arm64-template +1ms
  electron-packager Initializing app in /Users/sausage/The Lounge-darwin-arm64 from /Users/sausage/darwin-arm64-template template +0ms
  electron-packager Ignored paths based on the out param: [
  '/Users/sausage/The Lounge-darwin-x64',
  '/Users/sausage/The Lounge-darwin-arm64',
  '/Users/sausage/The Lounge-linux-ia32',
  '/Users/sausage/The Lounge-linux-x64',
  '/Users/sausage/The Lounge-linux-armv7l',
  '/Users/sausage/The Lounge-linux-arm64',
  '/Users/sausage/The Lounge-linux-mips64el',
  '/Users/sausage/The Lounge-mas-x64',
  '/Users/sausage/The Lounge-mas-arm64',
  '/Users/sausage/The Lounge-win32-ia32',
  '/Users/sausage/The Lounge-win32-x64',
  '/Users/sausage/The Lounge-win32-arm64'
] +1s
  electron-packager Copying icon "Downloads/icon.icns" to app's Resources as "electron.icns" +0ms
  electron-packager Renaming Electron to The Lounge in /Users/sausage/The Lounge-darwin-arm64/Electron.app/Contents/MacOS +99ms
  electron-packager Renaming Electron Helper to The Lounge Helper in /Users/sausage/The Lounge-darwin-arm64/Electron.app/Contents/Frameworks/Electron Helper.app/Contents/MacOS +0ms
  electron-packager Renaming Electron Helper (Renderer) to The Lounge Helper (Renderer) in /Users/sausage/The Lounge-darwin-arm64/Electron.app/Contents/Frameworks/Electron Helper (Renderer).app/Contents/MacOS +0ms
  electron-packager Renaming Electron Helper (Plugin) to The Lounge Helper (Plugin) in /Users/sausage/The Lounge-darwin-arm64/Electron.app/Contents/Frameworks/Electron Helper (Plugin).app/Contents/MacOS +0ms
  electron-packager Renaming Electron Helper (GPU) to The Lounge Helper (GPU) in /Users/sausage/The Lounge-darwin-arm64/Electron.app/Contents/Frameworks/Electron Helper (GPU).app/Contents/MacOS +1ms
  electron-packager Renaming Electron Helper.app to The Lounge Helper.app in /Users/sausage/The Lounge-darwin-arm64/Electron.app/Contents/Frameworks +0ms
  electron-packager Renaming Electron Helper (Renderer).app to The Lounge Helper (Renderer).app in /Users/sausage/The Lounge-darwin-arm64/Electron.app/Contents/Frameworks +0ms
  electron-packager Renaming Electron Helper (Plugin).app to The Lounge Helper (Plugin).app in /Users/sausage/The Lounge-darwin-arm64/Electron.app/Contents/Frameworks +0ms
  electron-packager Renaming Electron Helper (GPU).app to The Lounge Helper (GPU).app in /Users/sausage/The Lounge-darwin-arm64/Electron.app/Contents/Frameworks +0ms

Finalizing build...
App built to /Users/sausage/The Lounge-darwin-arm64 , move it wherever it makes sense for you and run the app bundle.

Debug info
If applicable,

Context

Nativefier: 42.0.2
Node.js: 15.4.0
Npm: 7.2.0
OS: MacOS 11.1
Additional context: Apple M1 MBP

Is there any info from the devs on this?

This is an old issue: #955

@flying-sausages is there a way to provide a username to a site where I can test this? I tried using the demo Lounge site (https://demo.thelounge.chat/#/connect) but it doesn't look like it supports push notifications there.

As well I wonder if this issue is related to your other issue, and whether the version of node you are using is arm64: #1089

Thanks @flying-sausages I'll dig deeper on this when I have the time.

So here's the deal. I was under the assumption this was something like a standard notification, but these notifications are "Web Push" notifications, which are more like native app notifications that the app can receive even when not open. Unfortunately Electron doesn't support these out of the box: https://github.com/electron/electron/issues/6697
There is another package we could add to support this (https://github.com/MatthieuLemoine/electron-push-receiver), but it has a few major downsides:

It looks unmaintained as it hasn't been updated in two years
It would require bringing in a lot of new downstream dependencies for this feature
This package specifically mentions Firebase push notifications. I'd HOPE that this would work generically with any Web Push, but it would take a lot of investment to even find out if that's true.

So at this point it would take some work to support these push notifications, which I don't think we'd have the chance to do soon, but we can keep this open as a feature request if electron makes this easier in the future.


Item page sometimes fails to load

Describe the bug
The Item page randomly gets stuck and doesn't load the content. The issue occurs for anonymous users in 8.x. I believe this is related to the implementation of the correction types (loading them).
To Reproduce
This can be reproduced randomly e.g. by navigating several times between the Simple item page and Full item page.

@jaril1: Could you test this again? DSpace/dspace-angular#3412 was recently merged into DSpace 8.x, and it fixes a similar issue.

Still exists if you mean https://demo.dspace.org

Moved to https://github.com/DSpace/dspace-angular/issues/3425


Missing hook: LIST.make

With this small k definition:
requires "domains.md"

module TEST
    imports DOMAINS
    imports ARRAY

    configuration
        <k> $PGM:KItem </k>

endmodule

Trying to krun arr ( .List , 10 , 0 ) [0] returns #Bottom. The LLVM backend will return 0.
Trying to krun arr ( .List , 10 , 0 ) [0 <- 1] gives an error for a missing LIST.make hook.
It looks like it's these rules in domains.md:164 for the array update:
  syntax List ::= ensureOffsetList(List, Int, KItem) [function]
  rule ensureOffsetList(L::List, IDX::Int, D::KItem) => #if IDX >=Int size(L) #then updateList(makeList(IDX +Int 1, D), 0, L) #else L #fi

  rule arr(L::List, I::Int, D::KItem) [ IDX::Int <- VAL::KItem ] => arr(ensureOffsetList(L, IDX, D) [ IDX <- VAL ], I, D)

The backend does not provide an implementation of ARRAY, so the bugs are in the symbolic implementation provided with the frontend.

How about LIST.make? The symbolic rules for an array update try to use it, so unless we find a way without it should we still get that implemented?
This rule for the array lookup seems to be working fine when IDX <Int size(L), but returns #Bottom otherwise, do you know why this would be the case?:
  rule arr(L::List, _, D::KItem) [ IDX::Int ] => #if IDX >=Int size(L) #then D #else L[IDX] #fi

ARRAY is an unusual case because it is only actually hooked in the ocaml backend. The actual missing hook here is LIST.make which the Haskell backend ought to be able to easily implement.

This is because #if is not short circuiting, isn't it? Is there a simple workaround or do we need to bite the bullet and do something more difficult?

This is because #if is not short circuiting, isn't it? Is there a simple workaround or do we need to bite the bullet and do something more difficult?

Yes, it's because it's not short-circuiting: L[IDX] is not defined. You have two easy options:

Write two rules:

rule arr(L::List, _, D::KItem) [ IDX::Int ] => L[IDX] requires IDX <Int size(L)
rule arr(L::List, _, D::KItem) [ IDX::Int ] => D [owise]

Add a _ [ _ ] orDefault _ function for List as there is for Map, and then we implement that hook in the backend.

I'm fine with either of @ttuegel 's suggestions, they both seem reasonable, but I lean towadrs (1). I think we should avoid #ite if possible.
It seems that (1) is the quicker option for @gtrepta to test, maybe we can try that.
The problem with _orDefault_ is that it changes the semantics of Array from a bounded-length array to a conceptually infinite array. I guess this is only the case if the user explicitly uses _orDefault_, but then they can roll their own version of _orDefault_ like we do in KEVM with #lookup

The problem with _orDefault_ is that it changes the semantics of Array from a bounded-length array to a conceptually infinite array.

I don't understand; according to the rule cited by @gtrepta, array indexing is never supposed to fail. :thinking:

The second parameter in arr( List, Int, KItem ) is supposed to be the length of the array, but it isn't used in the lookup...

Ah I see, so tehy are conceptually infinite-length arrays anyway.
Then I would say the _orDefault_ syntax makes sense to me.


Issue seen with deploying to OCP 4.4

@Danil-Grigorev saw the below deploying operator to a OCP 4.4 nightly
TASK [migrationcontroller : Set up velero controller] ************************** task path: /opt/ansible/roles/migrationcontroller/tasks/main.yml:147 fatal: [localhost]: FAILED! => {"changed": false, "msg": "Failed to find exact match for apps/v1beta1.Deployment by [kind, name, singularName, shortNames]"}
See: https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.9.md#apps
For background the decision was to use the older apps/v1beta1 so our operator would work with OCP 3.7 - OCP 4.3.
Now that OCP 4.4 is out, looks like the apps/v1beta1 Deployment was removed, so probably need to have 2 logic paths that will work with older clusters (OCP 3.7) and newer.

daemonsets are also broken. Working on a follow up PR

@jwmatthews Do we need to support 4.4 with 1.1?

usptream latest works. Waiting to close until the expectation for 4.4/1.1 is set.


Code for straight forward CLIP fine-tuned to PEDES

Hello,
Good job, your paper is very interesting. I am happy to see papers leveraging VLP for Text ReID.
I am interested to have the fine-tuned CLIP model on PEDES. Do you plan to share the training script and/or the weights of this model, please ? I can re-do it by my own but it would save some times for me (and some other people, probably).
Thanks again for the contribution to the community.

You can get the straight forward CLIP fine-tuned results by  the following training config:
python train.py \
--name CLIP_finetune \
--img_aug \
--batch_size 64 \
--loss_names 'itc' \
--dataset_name 'CUHK-PEDES' \
--root_dir 'your dataset root dir' \
--num_epoch 60

Thanks you for your quick and useful answer. It's valuable!


42/add a starlette sample app

Codecov Report
Base: 94.60% // Head: 94.84% // Increases project coverage by +0.23% :tada:

Coverage data is based on head (fcd1be3) compared to base (bd55276).
Patch coverage: 96.26% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #45      +/-   ##
==========================================
+ Coverage   94.60%   94.84%   +0.23%
==========================================
  Files          16       19       +3
  Lines         538      640     +102
==========================================
+ Hits          509      607      +98
- Misses         29       33       +4

Impacted Files
Coverage Δ

src/aiotaskq/interfaces.py
100.00% <ø> (ø)

src/aiotaskq/tests/apps/simple_app/app.py
0.00% <0.00%> (ø)

src/aiotaskq/tests/conftest.py
95.38% <90.32%> (-4.62%)
:arrow_down:

src/aiotaskq/task.py
98.33% <100.00%> (+0.05%)
:arrow_up:

src/aiotaskq/tests/apps/simple_app/tasks.py
100.00% <100.00%> (ø)

...rc/aiotaskq/tests/apps/simple_app_starlette/app.py
100.00% <100.00%> (ø)

.../aiotaskq/tests/apps/simple_app_starlette/tasks.py
100.00% <100.00%> (ø)

src/aiotaskq/tests/test_integration.py
100.00% <100.00%> (ø)

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

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


minimal.nix: deprecated option use for NixOS manual

Issue description
When building configurations/images with minimal.nix, the warning appears:
warning: The option `services.nixosManual.enable' defined in `/home/local/ck/code/fc/nixpkgs-channels/nixos/modules/profiles/minimal.nix' has been renamed to `documentation.nixos.enable'.

Steps to reproduce
nix-instantiate nixos/release-combined.nix
Tested on bc41317e24317b0f506287f2d5bab00140b9b50e
Technical details

system: "x86_64-linux"
host os: Linux 4.15.0-43-generic, Ubuntu, 18.04.1 LTS (Bionic Beaver)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.1.3
nixpkgs: /home/local/ck/code/fc/nixpkgs-channels

This was fixed by 27982b408e465554b8831f492362bc87ed0ec02a. No longer reproducible on master.

Thanks for having a look.


Improve FAQ Section: Plus Icon Not Visible & Add smooth radius to Question Boxes & correct spellings

Description:
In the FAQ section of the website, the plus icon used for expanding the answers is not visible, and smooth border radius look on visuals and
also add s on  frequently ask question heading.
Issues:

The plus icon is not displayed properly.
Each FAQ question box currently lacks a border, making the section look less organized and harder to navigate.

Screenshots:
Before (Current View Without Plus Icon & Borders):

After (Expected View With Plus Icon & Borders):

Steps to Reproduce:

Navigate to the FAQ section.
Notice that the plus icon is missing and each question lacks a border.

Request:
Please assign this issue to me, and I'll work on resolving it and add required labels

@Vishwajeet594 Go ahead and work on it


feat: create tes task as k8s job

PS: This is WIP, consider this PR for POC, this maybe/will be further broken down into smaller PR once a concensus on code is reached and everthing starts to work.

Summary by Sourcery
This pull request introduces the ability to create TES tasks as Kubernetes jobs. It includes a new Kubernetes client wrapper, a converter for TES tasks to Kubernetes jobs, and updates to the deployment configuration to support these new features.

New Features:

Introduced a Kubernetes client wrapper to abstract interactions with the Kubernetes API.
Added functionality to convert TES tasks to Kubernetes jobs using a new converter module.
Implemented a new module for creating TES tasks, including the creation of Kubernetes jobs and config maps.

Enhancements:

Updated the deployment configuration to include a taskmaster template for Kubernetes jobs.
Enhanced the CreateTask function to convert TES tasks to Kubernetes jobs and print the resulting job object.

Deployment:

Added a new taskmaster template and environment properties to the deployment configuration.

The CI will break, those are easy fixes, please ignore them and review the rest of the code and logic :)


Rework adjacency handling in grids

Right now initializers for unstructured grids need to cast the GridBase handle they get to UnstructuredGrid in order to be able to set the weights inside the grid via setAdjacency(). This is error prone (the actual type might be an UnstructuredSoAGrid, which would cause the dynamic_cast to fail) and confusing (because what's being set is rather the edge weights, not the adjacency itself. (The edge weights can have s user-selected type, e.g. double), the adjacency is merely a set of pairs.
Proposed solution: add setWeights() to GridBase with a default implementation that throws a std::logic_error which notes that the function isn't implemented. Rename setAdjacency() in UnstructuredGrid to setWeights().

Closed in 68251dca


doc: First stab at an archiecture overview

Having such a document is one of the remaining steps to getting our OpenSSF Best Practices silver level badge.

This has been posted for a week. Any comments?
If you look in the "files changed" tab, then click the icon that looks like a piece of paper with a folded corner, whose pop-up help text is "display the rich text", then it will show you the rendered markdown, including the class block diagram I made.
Seeking feedback on whether this is an ok stab at a high-level whitepaper on the overall architecture of the project and its pieces.


esbuild dependency version

On install getting a warning when using with esbuild 0.12.24:
warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>
No issues in running at all, so wondering if this can be bumped up to latest?

Weird. The caret ^ is supposed to handle all minor version updates as it only describes "compatible with".
I am unable to reproduce this, can you show me the relevant parts of your package json?

Oh cool. Thanks!
I'm not too familiar with js packaging.

This has been patched and release with version 0.0.5


update variation terms to be more neutral. [sf#109]

Reported by eilbeck on 2008-07-29 20:27 UTC
This request came in from Tomasz Adamusiak from the ebi.
On 7/29/08 11:22 AM, "Tomasz Adamusiak"<EMAIL_ADDRESS>wrote:
Hello,
I'm working in Helen Parkinson's group on this. We're considering adopting
Sequence Ontology in the GEN2PHEN Consortium, a European Commission funded
project aiming to unify human and model organism genetic variation
databases. There are a number of European research groups and companies
involved (www.gen2phen.org).
Could SO be modified to better suit our needs? In particular changes that
were requested by our partners include:
1.
Change or alias unqualified terms like 'mutation' and 'polymorphism' in
favor of 'sequence_variant'. Thus mutation_affecting_transcript becomes
sequence_variant_affecting_transcript and so on.
Support:
In some disciplines the term "mutation" is used to indicate "a change" while
in other disciplines it is used to indicate "a disease-causing change".
Similarly, the term "polymorphism" is used both to indicate "a non
disease-causing change" or "a change found at a frequency of 1% or higher in
the population". To prevent this confusion we do not use the terms mutation
and polymorphism (including SNP or Single Nucleotide Polymorphism) but use
neutral terms like "sequence variant", "alteration" and "allelic variant".
Human Mutation (Vol. 19 ( 1) of 2002) contains several contributions
discussing these issues as well as the fact that the term "mutation" has
developed a negative connotation (see Cotton RGH - p.2, Condit CM et al. -
p.69 and Marshall JH - p.76).
Source: http://www.hgvs.org/mutnomen/recs.html
2.
Introduce new terms:
-pathogenic_sequence_variant defined as Sequence variant of known pathogenic
consequences.
-sequence_variant_of_no_known_phenotype defined as Sequence variant of
unknown phenotypic effect.
-translation_initiation_site
-translation_termination_site
Best regards
Tomasz

Commented by eilbeck on 2009-02-27 00:10 UTC
Finally this is done.
Sorry for the delay.
--Karen

Commented by tadamusiak on 2009-02-27 12:44 UTC
Thanks!
Tomasz

Updated by eilbeck on 2009-02-27 15:24 UTC

status: open --> closed-accepted


Extract the content of the case 'Int32' (Flow, TypeScript) into a single emitInt32 function in the parsers-primitives.js file.

Summary
Part of #34872
Refactors emitInt32 in codegen parser module into a common parsers-primitive.js

Changelog

[Internal] [Changed] - Extract the content of the case 'Int32' (Flow, TypeScript) into a single emitInt32 function
Test Plan
Ran yarn jesr react-native-codegen

@cipolleschi
Thanks for the review! I've added a unit test for emitInt32.


change  to  in Profile.js to meet a11y requirements

Fixes Issue
Closes #1007

Changes proposed
To fulfill A11Y requirements the <h4> tag was changed into an <p> tag with the same styling as a <h4> tag. Therefore, the UI keeps the same but the A11Y increased in the Lighthouse results.

Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[x] All new and existing tests passed.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

Screenshots
Increased Lighthouse results

Same UI

This change was already made and merged earlier this week. Thanks for your contribution and if you notice any other issues please feel free to raise them.


[Switch] Support overlay on Switch component

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Summary 💡
Provide support for the overlay prop in the Switch component, similar to how it is for the Checkbox and Radio components.
Examples 🌈
n/a
Motivation 🔦
Putting a switch inside a card with its description is a common UI, making the card entirely clickable to toggle the switch would make toggling it easier.

I assume that you are talking about Joy UI Switch. Could you please share a CodeSandbox that I can take a look?

Yes, I was talking about the Joy component. I'm note sure what a CodeSandbox is needed for though, since its just the design pattern shown in the docs but with a switch instead of a checkbox.

Yes, I was talking about the Joy component. I'm note sure what a CodeSandbox is needed for though, since its just the design pattern shown in the docs but with a switch instead of a checkbox.

The CodeSandbox would help me understand what kind of user interface you are building so that I might add it to the docs as an example for the switch overlay.


Protein returned as a chemical

This query asks what chemical entity interacts with a particular gene:
{"query_graph": {
                    "nodes": {
                        "$source": {
                            "categories": [
                                "biolink:ChemicalEntity"
                            ]
                        },
                        "$target": {
                            "ids": [
                                "NCBIGene:23162"
                            ],
                            "categories": [
                                "biolink:Gene"
                            ]
                        }
                    },
                    "edges": {
                        "edge_1": {
                            "subject": "$source",
                            "object": "$target",
                            "predicates": [
                                "biolink:interacts_with"
                            ]
                        }
                    }
                }}

It returns 3 identifiers for $source:
{'id': 'UniProtKB:P45983'}
{'id': 'MESH:D000888'}
{'id': 'UMLS:C0444626'}
The first is a protein.  Of course, we might consider a protein a chemical, but I'm pretty sure that biolink model does not (for this reason so that we can talk about non-protein things and not get our genes all mixed up with other chemicals)

it looks like, during canonicalization of KG2, one of the concepts equivalent to UniProtKB:P45983 has a category of ChemicalEntity, which explains why that concept cluster is being returned.
maybe it's an issue in the KG2pre LOINC ingest?
https://arax.ncats.io/?term=UniProtKB:P45983

I note that in KG2.8.0pre, LOINC:LP36223-3 is marked as deprecated. One possibility that we might want to consider is having the KG2c build process intentionally not canonicalize (or rather, intentionally not include in canonicalization) any KG2pre node that is marked as deprecated=true.

noted - definitely worth considering excluding deprecated nodes from canonicalization. although, apparently 68% of the nodes in KG2pre are marked as deprecated=true, so if we fully excluded those nodes, I think our synonymization would be able to recognize far fewer curies.
one possible alternative is to, rather than fully exclude deprecated nodes from canonicalization, instead just don't automatically consider the cluster to have deprecated nodes' category... i.e., in this case, LOINC:LP36223-3 would still belong to the cluster, but that cluster wouldn't be returned as a result when someone asks for ChemicalEntity.
another alternative is some sort of category voting where there must be some threshold fraction of member nodes that have a given category before it will be assigned to the overall cluster.


Add additivity parameter to avoid duplicate logs

@terrestris/devs FYI, this is why we had duplicate logs since moving to log4j2.

Thank you @hwbllmnn
I will merge now!


Issue from website page Flutter for React Native Developers

Steps to Reproduce
On mobile, the text in the page is cut on the left.
Android pixel xl

Looks like a duplicate of https://github.com/flutter/flutter/issues/15005


Allow setting metabase's ingress path

Signed-off-by: Kevin Pullin<EMAIL_ADDRESS>What this PR does / why we need it:
This PR allows for configuring the ingress path of the metabase ingress definition.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[X] Variables are documented in the README.md

/CC @pmint93

/ok-to-test
/assign
/lgtm


Make command center CLI tool

The command center module should:

Get HTML source code from URL
Make calls to actionEngine using config file for customizable parameters such as models to use, prompt template to use, etc.
Execute the generated code

https://github.com/lavague-ai/LaVague/pull/37


crashes_account and crashes_container are not documented

We should add documentation for crashes_account and crashes_container to the command replacements variable expansion.

See #551


Add exception for dev.edfloreshz.Tasks

COSMIC applications require read-only access to the host in order to watch for changes in the system theme and sync with it.
Can we add an exception?

Really there's no portal for this? GNOME and KDE do this through portals

Also please point to an issue in xdg-desktop-portal-cosmic or an existing discussion upstream. If not please open one.

changes in the system theme

What do you mean by "system theme" here? Is it the dark mode/ligh mode appearance option? Themes should be handled by Flatpak.

The configs used by libcosmic applications are currently stored in

~/.config/cosmic/com.system76.CosmicTheme.Mode
~/.config/cosmic/com.system76.CosmicTheme.Dark
~/.config/cosmic/com.system76.CosmicTheme.Light
~/.config/cosmic/com.system76.CosmicTk

And why does it not use portals?

For the same reason GTK does not use them.

~/.themes
~/.config/gtk-3.0
~/.config/gtk-4.0

Portals don't provide access to theme and GUI toolkit configuration files.

The theme from host is communicated via the settings portal backend on wayland and xsettings daemon on X11.
Exposing config directories from host is never needed.

That only conveys the theme name, which requires installing a flatpak containing the configuration files. COSMIC theming does not work the same way. Themes are configured by the user in COSMIC Settings, which saves the configurations in the appropriate cosmic-config config files. The cosmic-settings-daemon then issues a signal over dbus to notify libcosmic applications that the watched config has changed, which is then read by the application.

This should be made sandbox friendly. It is unfortunate if every cosmic application have to open sandbox holes to read theme files from host.
Nowadays static permissions for themes isn't required unless it is using some legacy API or is on a platform that lacks proper portal support or Xsettings support. For example SteamOS lacks them.

@edfloreshz can you please rebase on master and squash the commit? Can't merge without the rebase.

Sure, just give me a moment to get to my computer, I'm on my phone atm.

That should do it @bbhtt

Didn't work. I'll do it.

Sorry, missing coma, done

Nope you created a merge commit instead of rebasing.

Rebase completed 👍🏼

Themes are configured dynamically by the user in COSMIC Settings, which saves the configurations in the appropriate cosmic-config config files. The cosmic-settings-daemon then issues a signal over dbus to notify libcosmic applications that the watched configs have changed, which is then read by the application.

The settings portal is entirely controlled by the implementor of it, so xdg-desktop-portal-cosmic can simply expose any data it wants and notify when it changes.


Added a note on how to contribute in the README

Signed-off-by:Phillip Kruger<EMAIL_ADDRESS>As discussed at the community meeting, making "How to Contribute" more visible.

thanks @phillip-kruger


Introduce github workflows for cspell and textlint

With all files in content/ being clean right now we are ready to introduce cspell & textlint as github workflows.

I'd like to suggest that this PR only introduce github workflows for cspell and textlint, without attempting any optimizations for any of the GH actions (new or existing). Optimizations should be addressed and discussed separately IMHO.
For example, the choice to not commit package-lock.json is deliberate: it is a royal pain to have to deal with that file in merge and rebase conflicts -- it's just not worth it for a website that isn't, say, a single-page app.
I have an idea of how to optimize the GH actions without it, but just haven't had the time to investigate, given that optimizing seconds off (ok half a minute :)) of GH actions hasn't been a priority.
WDYT?

I got carried away a little bit while playing around with this PR, so yes, let me only introduce the workflows for cspell & textlint and remove the rest:-)

@chalin all green, all addressed hope this works for you :-)

got carried away a little bit while playing around with this PR

No worries, I understand! Taking a look now.

LGTM, other than possibly using the --ignore-scripts flag as mentioned in the inline comment.

fixed. TY


Can't import Bestiary 3 - Giant Porcupine

Can't import statblock:
Giant Porcupine      CR 2
XP 600
Male giant porcupine (Pathfinder RPG Bestiary 3 222)
N Medium animal
Init +1; Senses low-light vision; Perception +6
Defense
AC 13, touch 11, flat-footed 12 (+1 Dex, +2 natural)
hp 22 (3d8+9)
Fort +6, Ref +6, Will +2
Defensive Abilities quills
Offense
Speed 40 ft.
Melee tail slap +5 (2d6+4)
Statistics
Str 17, Dex 12, Con 16, Int 2, Wis 13, Cha 5
Base Atk +2; CMB +3; CMD 16 (20 vs. trip)
Feats Agile Maneuvers, Lightning Reflexes
Skills Acrobatics +1 (+5 to jump), Climb +7, Perception +6
Special Abilities
Agile Maneuvers Use DEX instead of STR for CMB
Low-Light Vision See twice as far as a human in dim light, distinguishing color and detail.
Quills (Ex) Foe making non-2 handed weapon attack takes 1d3 dam or 2d4 if grapple.

Used your latest module that was available as of this afternoon at about 2:30pm.  I used Hero Lab to produce this statblock. For greater accuracy, you might want to use one of the online resources. Hero Lab can truncate some of the text. All the other statblocks from Bestiary 3 imported -- a total of more than 86% imported!


rename from CodeRules to Analyzers

Should this be against a new release-0.10 branch instead?

Should this be against a new release-0.10 branch instead?

No, the last version of Particular.CodeRules was 0.8.0, so we want to release 0.9.0 now. I created the release-0.9 branch on the 0.8.0 tag.


Curly brace not working in  alpine linux?

I thought this library has a fallback wrapper like laminas/laminas-stdlib glob.

Need to know something more concrete about:

What is failing
Can we reproduce the problem in isolation
Can we have that problem reproduced in CI
Discuss a fix after that


Issue importing the plugin correctly

Hi,
I'm trying to import the plugin as is stated in the readme.md file.
To simplify matters I created an empty project and copied the JAR file into it. The build.gradle file looks like this (although I already tried several versions):
`buildscript {
dependencies {
classpath files('liberty-gradle-plugin-1.0-SNAPSHOT.jar')
classpath files('c:/devend/wlp/bin/tools/ws-server.jar')
}
}
apply plugin: 'liberty'
liberty {
wlpDir = 'c:/devenv/wlp'
serverName = 'test'
}`
I'm always getting this error message:
c:\devenv\projects\test>gradle libertyRun
FAILURE: Build failed with an exception.

Where:
Build file 'C:\devenv\projects\test\build.gradle' line: 6

What went wrong:
A problem occurred evaluating root project 'test'.

Failed to apply plugin [id 'liberty']
Plugin with id 'liberty' not found.

Can you help me with this please?

Hi @anselmringleben - that's the error I'd expect to see if it isn't loading the plugin JAR. Are you sure that the path 'liberty-gradle-plugin-1.0-SNAPSHOT.jar' is correct?

Hi @davidcurrie Thanks for replying this fast! In my test project the setup is as simple as possible: build.gradle and the JAR file are both directly in the project directory. So I guess it is correct.

Debug output: https://www.dropbox.com/s/gxkzux1ljoxx23y/--debug.txt?dl=0
Stacktrace output: https://www.dropbox.com/s/0yjoliw6o992t81/--stacktrace.txt?dl=0

especially in stacktrace output it seems that the plugin initialization fails.

Typo (devend vs devenv) in:
classpath files('c:/devend/wlp/bin/tools/ws-server.jar')
vs.
wlpDir = 'c:/devenv/wlp'

I did also discover a couple of issues (in doc & code). I updated the code and published a new snapshot of the plugin.


Make Prereg Admin readonly (temporarily)

We've decided to do an incremental release of a read-only version of the Prereg admin app. This eliminates any danger via writes to the prod database.

@samchrisinger Looks like flake checks are failing. Can you please resolve those? Once that's done, this should be good to merge.

@sloria we're not going to need this given that we're waiting for the 60 release.


Working on issue #361

I am not sure whether this is the right place to clarify..
But as issue #361 said, you would like an instructions page for contribution, right?
I would be just writing down the pointers covering how to start with open source and pull requests and how to find and make valuable contributions and cite some sources which helped me, also a first timer, out on how to get familiar with GitHub.
Hoping you get back to me :)

@alt-glitch Hey! There have been a few PRs with additions/creating a contributing doc (and some pending updates) BUT now that you say it, having a link to the contributing doc from the index.html page is a good idea. Did you want to make that update?

Yes I would love to. I will be getting right on it in some hours after my college is over :)


various enhancements to helmrelease

Signed-off-by: Mike Ng<EMAIL_ADDRESS>
HelmRelease delete shouldn't need to download charts to work.
pull operator-sdk upstream fixes
added digest (to be populated by the appsub side similar to version)

part 1 of https://github.com/open-cluster-management/backlog/issues/8603

@mikebonnet  The fix looks good to me. Since it is for 2.3, the fix would only be in master branch and not to merge to 2.2.
I think it may be better not to merge the PR to master until  the new release-2.3 branch is created.  Or all the new fixes after the pr will have to be cherry-picked to 2.2

@mikebonnet  The fix looks good to me. Since it is for 2.3, the fix would only be in master branch and not to merge to 2.2.
I think it may be better not to merge the PR to master until  the new release-2.3 branch is created.  Or all the new fixes after the pr will have to be cherry-picked to 2.2


GCC warns for -Wsign-conversion on multiple locations

Compiling tinyxml2 on Linux with GCC and -Wsign-conversion set gives the following warnings

../tinyxml2-7.1.0/tinyxml2.h: In static member function ‘static bool tinyxml2::XMLUtil::StringEqual(const char*, const char*, int)’:
../tinyxml2-7.1.0/tinyxml2.h:600:37: warning: conversion to ‘size_t {aka long unsigned int}’ from ‘int’ may change the sign of the result [-Wsign-conversion]
         return strncmp( p, q, nChar ) == 0;
                                     ^
../tinyxml2-7.1.0/tinyxml2.h: In instantiation of ‘void tinyxml2::DynArray::EnsureCapacity(int) [with T = char; int INITIAL_SIZE = 20]’:
../tinyxml2-7.1.0/tinyxml2.h:227:33:   required from ‘void tinyxml2::DynArray::Push(T) [with T = char; int INITIAL_SIZE = 20]’
../tinyxml2-7.1.0/tinyxml2.h:2299:23:   required from here
../tinyxml2-7.1.0/tinyxml2.h:307:43: warning: conversion to ‘std::size_t {aka long unsigned int}’ from ‘const int’ may change the sign of the result [-Wsign-conversion]
             T* newMem = new T[newAllocated];
                                           ^
../tinyxml2-7.1.0/tinyxml2.h: In static member function ‘static bool tinyxml2::XMLUtil::StringEqual(const char*, const char*, int)’:
../tinyxml2-7.1.0/tinyxml2.h:600:37: warning: conversion to ‘size_t {aka long unsigned int}’ from ‘int’ may change the sign of the result [-Wsign-conversion]
         return strncmp( p, q, nChar ) == 0;
                                     ^
../tinyxml2-7.1.0/tinyxml2.h: In instantiation of ‘void tinyxml2::DynArray::EnsureCapacity(int) [with T = char; int INITIAL_SIZE = 20]’:
../tinyxml2-7.1.0/tinyxml2.h:227:33:   required from ‘void tinyxml2::DynArray::Push(T) [with T = char; int INITIAL_SIZE = 20]’
../tinyxml2-7.1.0/tinyxml2.h:2299:23:   required from here
../tinyxml2-7.1.0/tinyxml2.h:307:43: warning: conversion to ‘std::size_t {aka long unsigned int}’ from ‘const int’ may change the sign of the result [-Wsign-conversion]
             T* newMem = new T[newAllocated];

I'd appreciate a fix if you have a PR; else I'll try to run it through gcc in the next couple of weeks.

I don't currently have gcc handy. PR would be appreciated.


Remove Features put overload

@gf712 could we have a helper method that applied the read i my prkoert to all parameters for cases like these?

sure! we can add something that is called in the base class constructor that adds the readonly mask to everything that is added via SG_ADD

@theartful I think this would be nicer as then we will never forget to mark parameters as readonly....Something like "mark_class_as_readonly" or so ....

@theartful can you also add the m_default_mask to the copy constructor? I forgot it!

@gf712 No, you're okay, the copy constructor also calls init.

let's merge


Nightly builds

This PR adds nightly builds with notifications to slack if the build has failed.
The test matrix is still in a bit of a flux as I'm trying to figure out which combination does not lead to quota violations, so this is still WIP.
Requires https://github.com/gravitational/gravity.e/pull/3845.

Yes, I could not increase limits myself so I guess someone with "admin" privileges should be able to bump that. But that's not the issue - I've not been able to get a single success run using preemptible instances which means that we either need to switch to regular instances or handle preemption differently (i.e. by not handling them as failures and retrying then over the current failed limit of 3).
I'm currently experimenting with second option to see if it has merit.


⚡  Update templates to Expo 51, Next.js 14.2, Turbo 2; migrate to bun

This PR upgrades the example projects to turbo 2.0.9 (with some change in turbo.json); Expo 51.0.23 (from 49, 2 main versions behind); Next.js 14.2.5 (from 13.5); and migrated from yarn to bun, as this has cut deployment time in half on an empty project:

don’t have time to test so i’m trusting that you tested all platforms!

@dnlgrgly could you please see #487? This seems to have broken the examples for people. Could we go back to yarn? Bun is less widely adopted and seems to have issues.
Thank you!

@nandorojo I think it's best to revert this PR given the number of issues it caused. Sorry about the hiccups. 😭
Due to some vacations I won't have enough time to fix this in a timely manner, but I'll give it another try in the following weeks. 🙏

Any shot you could submit a PR that reverts it?
Thank you!

Hey @dnlgrgly just following up on reverting this if possible, getting many open issues about it…also open to just fixing the issues people are getting with the tailwind template. Thank you!

@nandorojo I've opened a PR that reverts this one here: https://github.com/nandorojo/solito/pull/492


Framework lesson module4

I just merged the theory part into the develop branch. Please rebase (only) the framework-lesson related commits on top of it.
Currently it is un-reviewable, as the diff contains 303 (!) files.


SVG thumbnails for "Footer" category

🚀 Feature
A default thumbnail is being used currently for a code block.
For the "Footer" category, SVG thubmnails that represents the code block preview in an abstract manner (like a skeleton template) would help a user to get an intuition about the template in a glance in the sidebar itself
Have you spent some time to check if this issue has been raised before?
Yes
Have you read the Contributing Guidelines?
Yes
Pitch
This would enhance the user experience by providing a quick abstract preview of the code block in the sidebar that would reduce the time required to find the desired template. The thumbnail can be designed using any designing tool like Figma, Adobe XD etc.

I'll take this one

@erinknight242 Please take a look at this.

@VaibhavSaini19 may I have this one?

@VaibhavSaini19 I would like to work on this one next.

Cool, assigning this to you


Validate/dry-run mode

Matching google-java-format's google/google-java-format/issues/105 and google/google-java-format/pull/106 - it would be nice to have a dry-run mode that would show which files would be changed. Context: a CI task checking that the files are properly formatted.
google-java-format does this with two command line switches:
--dry-run or -n
Prints the paths of the files whose contents would change if the formatter were run normally.
--set-exit-if-changed
Return exit code 1 if there are any formatting changes.

Thanks for the idea.
What CI is this?
On Spotless for Gradle, for example, you get this for free from ./gradle build if I understand correctly.
Anyway, happy to accept a PR for doing this.

I'm not using Gradle - Bazel on GitLab CI. I can do something to run ktfmt over the whole repo, but building something more fine-grained by generating actual test targets would be much more convenient. Glad to see that it's something you'd be happy with, I don't have time to do that any time soon either, but if I have a free Sunday afternoon... :-)

I can do something to run ktfmt over the whole repo, but building something more fine-grained by generating actual test targets

Can you elaborate?
Do you mean Bazel sh_test targets to be run on presubmit?
Is this how you run google-Java-format presubmit?

Sure, happy to elaborate - I don't have any Java so I don't run google-java-format. But I do run ktlint, and hoped I could do something similar. Basically, for every kt_*_library and kt_*_binary target, I generate (all those targets are behind macros) a $name_ktlint_test target, which runs ktlint on those source files specifically. This allows me to leverage Bazel's caching mechanism and only re-run ktlint on source files that actually changed. I described the whole process over here and a very similar approach is currently being worked on over in bazelbuild/rules_kotlin.

it would be nice to have a dry-run mode that would show which files would be changed

As a side note, ktfmt-gradle will also benefit form this. Currently I had to manually diff the ktfmt output with the original source file to understand if there was a violation or not (in order to support a ktfmtCheck task).

This is now fixed in main, will release a new version on Monday or Tuesday.


Process finished with exit code -536870873

Bug Report

I have read:

Usage information
Help information

I am using the latest version of the library.
Expected Behavior
Telegram bot works properly
Actual Behavior
Process finished with exit code -536870873
Steps to reproduce the Behavior
I copied code snippet from main page then made js file, pasted code, apply NTBA_FIX_319 fix and run via node v14.21.1 and process exited unexpectedly

Node 14 looks to old. Use node 18 lts or 16 (end of life now)


Rename references after choosing a name for the bridge

Dear friends of the bridge,
now is a really good time to merge all your branches which you want to keep. Refactoring this repository and all references to it changes many files and in many cases even moves them. Your changes to the master branch from a previous state will have many merge conflicts if you don't merge them before this pull request.
I will update this pull request after your other merges and intend to perform this merge on final paper submission latest.

Also for your information, @sebastianstock.

I have a general thought. Should we rename the module to up-esb to represent the bridge towards unified_planning?
@alexander-sung @sebastianstock what are your thoughts?

Yes, a very good point. I noticed the non-descriptive abbreviation of esb as well. However, I was not sure if the naming convention is limited to planners. Otherwise, we should do it.
By the way, I intend to cancel this pull request and recreate its contents after your other pull requests for a cleaner update.


Implement an exporter for excel file (csv?) that will be enabled by default with zero configuration needed

All our current exporters require configuration (except for json that will probably not be useful for the common person).
Having a valuable exporter that works out of the box is important because it gives immediate value and will reduce the chance that people will give up during the initial setup to the complexity of it.
So, we can should create a new exporter that exports to an excel file (csv? xlsx?). This exporter will be enabled by default with some default file path.
On the ui of the excel exporter config there will be a link to open the file.

@baruchiro thoughts?

Sounds good, no questions. I also thought about export to some calculated excels like אקסולידית or פעמונים

I can take this

So excel or CSV? I'd say CSV because it give almost the same value for Excel users, but is also useful for other products.

Of course, you are right, the intention is CSV.
On Sun, Nov 8, 2020, 21:59 giladtaase<EMAIL_ADDRESS>wrote:

So excel or CSV? I'd say CSV because it give almost the same value for
Excel users, but is also useful for other products.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/brafdlog/budget-tracking/issues/109#issuecomment-723657918,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEG6CX2Z6YPGII4Z5RAKQWTSO32DFANCNFSM4RZZVJCA
.

Ok I got the basics working but I have a few clarifications I need

Should we support merging of existing data like the JSON exporter does?
Do we want to put a header line with field names?
I just separated the values with commas, but then thought I'll need to escape them if the values themselves have commas, and found out there's no unique standard for this. Is there maybe a popular library that you know of, which will generate a more or less common CSV output?

I think so, let's keep it work in the same way.
You can either add a checkbox to the frontend to decide about the header line. If you don't want, I think we should use the header line. Worst case, even if we didn't use the checkbox, I hope most programs will accept this file have a checkbox for the input 😉
I used json2csv somewhere in other software