Android build fails - Deprecated api

Hi,
Flutter pub get outputs some warnings about device_calendar :
The plugin `device_calendar` uses a deprecated version of the Android embedding.
To avoid unexpected runtime failures, or future build failures, try to see if this plugin supports the Android V2 embedding. Otherwise, consider removing it since a future
release of Flutter will remove these deprecated APIs.
If you are plugin author, take a look at the docs for migrating the plugin to the V2 embedding: https://flutter.dev/go/android-plugin-migration.

And app build fails for Android :
e: [...]snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/device_calendar-3.9.0/android/src/main/kotlin/com/builttoroam/devicecalendar/CalendarDelegate.kt: (674, 36): Only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type Activity?
e: [...]snap/flutter/common/flutter/.pub-cache/hosted/pub.dartlang.org/device_calendar-3.9.0/android/src/main/kotlin/com/builttoroam/devicecalendar/CalendarDelegate.kt: (870, 65): Using 'max(): T?' is an error. Use maxOrNull instead.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':device_calendar:compileReleaseKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction
   > Compilation error. See log for more details

This is my flutter doctor summary :
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.3.9, on Ubuntu 20.04.5 LTS 5.4.0-135-generic, locale fr_FR.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[✓] Android Studio (version 2020.3)
[✓] VS Code (version 1.74.0)
[✓] Connected device (3 available)
[✓] HTTP Host Availability

Is this package still maintained, is there any solution ?
Thanks

Given the lack of comment since December this is likely closed. Please open a new issue if you're still having problems.


Handle ranging data notification

Type

[ ] Bug fix
[X] Feature addition
[ ] Feature update
[ ] Breaking change
[ ] Non-functional change
[ ] Documentation
[ ] Infrastructure

Goals

Calls the OnPeerPropertiesChanged callback when receiving new ranging data

Technical Details

Adds a conversion function from Q9.7 format to standard IEEE double format.

Test Results
None yet
Reviewer Focus
Test will be added for the conversion function
Checklist

[x] Build target all compiles cleanly.
[x] clang-format and clang-tidy deltas produced no new output.
[x] Newly added functions include doxygen-style comment block.

#107


Remove dependency on node-fetch

Node 16 is end-of-life. Node 18+ support fetch by default making node-fetch dependency useless.

Why EoL might not be a great reason?

I am also having error with http module which is not supported in LLRT AWS Lambda.


Define property type

Added Property type enum and reference on Address

Where is this coming from?

ok for now. this is the kind of thing that would be country specific when we refactor address.


⚠ Bofrost.fr has degraded performance

In 0e3e1fb, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 876 ms

Resolved: Bofrost.fr performance has improved in c4274e2.


189 to build-dev

189 to build-dev

I think that c422aa0 somehow broke the code.
Before c422aa0:
After c422aa0:

You are probably missing the file MetadataCMNS.rdf somewhere? I run the branch locally, and ov displays correctly.

@mereolog I've checked. After merging not all changes from branch 189-problem-with-resolving-local-ontologies-fix, were on build-dev.


Improve test maintainability

The focus for this issue is test maintainability.
Particularly, these items:

Raw JSON for JWKS are stored in global const, local const, and files such as example_jwks.json. It would be best if the source was uniform and the number of total JWKS could be reduced by sharing. Since this project has increased the minimum Go version to 1.16, the embed package can now be used for .json files. Alternatively all JWKS could be hard coded as const. Lately, I have been using the newer jwkset project to generate these. I would prefer if no temporary files or directories were used in tests. The global const or embedded files option is currently favorable to me now.
httptest servers are individually created for tests. This could be done with a helper function, as most functionality is shared.

Additionally, I think there are some background goroutines that are not ended. I'm not sure if tests automatically clean those up. I think they do not.

I plan on releasing version 3 soon. This issue will become irrelevant after v3.


Current commit fails to build, claims to need WINE

Prerequisites

[x] Using npm
[x] Using an up-to-date [main branch]
[x] Using latest version of devtools. [Check the docs for how to update]
[x] Tried solutions mentioned in [#400]
[x] For issue in production release, add devtools output of DEBUG_PROD=true npm run build && npm start

Expected Behavior
ran npm run package --linux

Application should build.
Current Behavior

npm run package --linux                                                                                19:38   07.06.22 

package
ts-node ./.erb/scripts/clean.js dist && npm run build && electron-builder build --publish always --win --linux

build
concurrently "npm run build:main" "npm run build:renderer"

[1]
[1] > build:renderer
[1] > cross-env NODE_ENV=production TS_NODE_TRANSPILE_ONLY=true webpack --config ./.erb/configs/webpack.config.renderer.prod.ts
[1]
[0]
[0] > build:main
[0] > cross-env NODE_ENV=production TS_NODE_TRANSPILE_ONLY=true webpack --config ./.erb/configs/webpack.config.main.prod.ts
[0]
[0] npm run build:main exited with code 0
[1] npm run build:renderer exited with code 0
• electron-builder  version=23.0.3 os=5.13.0-44-generic
• loaded configuration  file=package.json ("build" field)
• writing effective config  file=release/build/builder-effective-config.yaml
• installing production dependencies  platform=linux arch=x64 appDir=/home/adammpkins/programmer-browser/release/app
• packaging       platform=linux arch=x64 electron=18.3.0 appOutDir=release/build/linux-unpacked
• building        target=AppImage arch=x64 file=release/build/ProgrammerBrowser-0.1.8.AppImage
• installing production dependencies  platform=win32 arch=x64 appDir=/home/adammpkins/programmer-browser/release/app
• packaging       platform=win32 arch=x64 electron=18.3.0 appOutDir=release/build/win-unpacked
• downloading     url=https://github.com/electron/electron/releases/download/v18.3.0/electron-v18.3.0-win32-x64.zip size=89 MB parts=8
• downloaded      url=https://github.com/electron/electron/releases/download/v18.3.0/electron-v18.3.0-win32-x64.zip duration=2.457s
• downloading     url=https://github.com/electron-userland/electron-builder-binaries/releases/download/winCodeSign-2.6.0/winCodeSign-<IP_ADDRESS>z size=5.6 MB parts=1
• downloaded      url=https://github.com/electron-userland/electron-builder-binaries/releases/download/winCodeSign-2.6.0/winCodeSign-<IP_ADDRESS>z duration=737ms
⨯ wine is required, please see https://electron.build/multi-platform-build#linux
⨯ /home/adammpkins/programmer-browser/node_modules/app-builder-bin/linux/x64/app-builder process failed ERR_ELECTRON_BUILDER_CANNOT_EXECUTE
Exit code:
1  failedTask=build stackTrace=Error: /home/adammpkins/programmer-browser/node_modules/app-builder-bin/linux/x64/app-builder process failed ERR_ELECTRON_BUILDER_CANNOT_EXECUTE
Exit code:
1
at ChildProcess. (/home/adammpkins/programmer-browser/node_modules/builder-util/src/util.ts:250:14)
at Object.onceWrapper (node:events:472:26)
at ChildProcess.emit (node:events:365:28)
at maybeClose (node:internal/child_process:1067:16)
at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5)
From previous event:
at processImmediate (node:internal/timers:464:21)
From previous event:
at WinPackager.signApp (/home/adammpkins/programmer-browser/node_modules/app-builder-lib/src/winPackager.ts:376:27)
at WinPackager.doSignAfterPack (/home/adammpkins/programmer-browser/node_modules/app-builder-lib/src/platformPackager.ts:329:16)
at WinPackager.doPack (/home/adammpkins/programmer-browser/node_modules/app-builder-lib/src/platformPackager.ts:314:7)
at WinPackager.pack (/home/adammpkins/programmer-browser/node_modules/app-builder-lib/src/platformPackager.ts:136:5)
at Packager.doBuild (/home/adammpkins/programmer-browser/node_modules/app-builder-lib/src/packager.ts:441:9)
at Object.executeFinally (/home/adammpkins/programmer-browser/node_modules/builder-util/src/promise.ts:12:14)
at Packager._build (/home/adammpkins/programmer-browser/node_modules/app-builder-lib/src/packager.ts:376:31)
at Packager.build (/home/adammpkins/programmer-browser/node_modules/app-builder-lib/src/packager.ts:337:12)
at Object.executeFinally (/home/adammpkins/programmer-browser/node_modules/builder-util/src/promise.ts:12:14)
Steps to Reproduce

1.Pull the latest commit.

Run npm run package --linux

3.Exceptions

Possible Solution (Not obligatory)

Context

Your Environment

Node version : 16.2.0
Operating System and version : Ubuntu 20.04

try this
npm run package:linux

Your suggestion worked. This should be updated in the docs.

:+1:


FileLoadException: During runtime for an assembly "package referenced" (local nuget) from asp.net core csproj

Here's the situation what I am facing with:
Asp.net core .cs web host project has a reference to package "ABC", version 1.0.1.  If I set the package source to restore ABC directly from the feed and build, run the application it all works fine. Let's say, If I have the code base of ABC (.net standard assembly) and I want to make some changes and test/debug it locally, this is what I usually does:
I make changes in ABC project, create a local nuget package (.nupkg and .snupkg) with a version greater than or equal to 1.0.1
Set the package source in asp.net core project to restore from the local folder where I have the nuget pkg (or MS VS Offline Pkgs folder) and build, run the project.
Though it restores,builds fine,  I am getting a runtime error from the host:
FileLoadException: Could not load file or assembly 'ABC, Version=1.0.1, Culture=neutral, PublicKeyToken=null'. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
If I follow the same steps and tried to restore/debug local nuget pkg for a .net core console app, it works perfectly fine. This behaviour is happening only in asp.net core web app.
Appreciate your valuable inputs. Thank you.

@c0deExplorer is there a reason you aren't referencing the second project as a project reference rather than a package reference? Have you made sure that the assembly version for the binary built locally is 1.0.1 and not a different value?
If you would like to us to investigate this further, could you share a minimal setup that reproduces this issue?


shell command execute error

when source is shell and shell scripts with parameter(when no parameter is ok), result is:  fork/exec /tmp/clean.sh 'testinstance1': no such file or directory
my config file :
block_cache_size: 52428800
pool_size: 100
runners: 10
remote_config_refresh_interval: 60s
common parameters for actions
common_parameters:
jenkins_credentials:
endpoint: https://jenkins.example.com/
login: webhooker
password: qwerty123
state_refresh_delay: 5s
telegram_bot:
bot_token: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11
chat_id: -1001103941234
message: Fixed ${LABEL_ALERTNAME}
list of rules to check and act
rules:

name: JenkinsAutofix
conditions:
alert_annotations:
webhooker_jenkins_autofix: enabled # auto fix enabled
jenkins_job: (.*?)                 # jenkins job is set
actions:

executor: jenkins
common_parameters: jenkins_credentials
parameters:
job: ${ANNOTATION_JENKINS_JOB} # job name from annotation jenkins_job
block: 1m
executor: telegram
common_parameters: telegram_bot

name: LowDiskSpaceLogsFix
conditions:
alert_labels:
alertname: testalert1
instance: testinstance1
actions:

executor: shell
parameters:
command: "/tmp/clean.sh '${CUT_AFTER_LAST_COLON_LABEL_INSTANCE}'"
block: 30m
executor: telegram
common_parameters: telegram_bot

-------------------------------end
cat /tmp/clean.sh
con="$1"
echo aaaa"$con" >> /tmp/webhook.log
ls -l /tmp/clean.sh
-rwxrwxrwx. 1 root root 45 Oct 13 10:40 /tmp/clean.sh
result log
{"context":"webhook","event_id":"6339","level":"debug","msg":"payload is received, tasks are prepared","payload":{"receiver":"","status":"firing","alerts":[{"status":"","labels":{"alertname":"testalert1","instance":"testinstance1","source":"shell"},"annotations":{"name":"TestAlert"},"startsAt":"0001-01-01T00:00:00Z","endsAt":"0001-01-01T00:00:00Z","generatorURL":""}],"groupLabels":null,"commonLabels":null,"commonAnnotations":null,"externalURL":""},"tasks_groups":[[{"alert":"testalert1","details":{"command":"/tmp/clean.sh 'testinstance1'"},"event_id":"6339","executor":"shell","rule":"LowDiskSpaceLogsFix"},{"alert":"testalert1","details":{"chatID":-1001103941234,"message":"Fixed testalert1"},"event_id":"6339","executor":"telegram","rule":"LowDiskSpaceLogsFix"}]],"time":"2022-10-13T10:55:29+08:00"}
{"context":"webhook","level":"debug","msg":"ready to send tasks to runner","tasks":[{"alert":"testalert1","details":{"command":"/tmp/clean.sh 'testinstance1'"},"event_id":"6339","executor":"shell","rule":"LowDiskSpaceLogsFix"},{"alert":"testalert1","details":{"chatID":-1001103941234,"message":"Fixed testalert1"},"event_id":"6339","executor":"telegram","rule":"LowDiskSpaceLogsFix"}],"time":"2022-10-13T10:55:29+08:00"}
{"context":"webhook","level":"debug","msg":"sent tasks to runner","tasks":[{"alert":"testalert1","details":{"command":"/tmp/clean.sh 'testinstance1'"},"event_id":"6339","executor":"shell","rule":"LowDiskSpaceLogsFix"},{"alert":"testalert1","details":{"chatID":-1001103941234,"message":"Fixed testalert1"},"event_id":"6339","executor":"telegram","rule":"LowDiskSpaceLogsFix"}],"time":"2022-10-13T10:55:29+08:00"}
{"context":"webhook","event_id":"6339","level":"debug","msg":"all tasks sent to runners","payload":{"receiver":"","status":"firing","alerts":[{"status":"","labels":{"alertname":"testalert1","instance":"testinstance1","source":"shell"},"annotations":{"name":"TestAlert"},"startsAt":"0001-01-01T00:00:00Z","endsAt":"0001-01-01T00:00:00Z","generatorURL":""}],"groupLabels":null,"commonLabels":null,"commonAnnotations":null,"externalURL":""},"tasks_groups":[[{"alert":"testalert1","details":{"command":"/tmp/clean.sh 'testinstance1'"},"event_id":"6339","executor":"shell","rule":"LowDiskSpaceLogsFix"},{"alert":"testalert1","details":{"chatID":-1001103941234,"message":"Fixed testalert1"},"event_id":"6339","executor":"telegram","rule":"LowDiskSpaceLogsFix"}]],"time":"2022-10-13T10:55:29+08:00"}
{"context":"runner","level":"debug","msg":"runner starts executing group","tasks":[{"alert":"testalert1","details":{"command":"/tmp/clean.sh 'testinstance1'"},"event_id":"6339","executor":"shell","rule":"LowDiskSpaceLogsFix"},{"alert":"testalert1","details":{"chatID":-1001103941234,"message":"Fixed testalert1"},"event_id":"6339","executor":"telegram","rule":"LowDiskSpaceLogsFix"}],"time":"2022-10-13T10:55:29+08:00"}
{"alert":"testalert1","context":"runner","details":{"command":"/tmp/clean.sh 'testinstance1'"},"event_id":"6339","executor":"shell","level":"debug","msg":"runner starts executing task #1/2","rule":"LowDiskSpaceLogsFix","tasks":[{"alert":"testalert1","details":{"command":"/tmp/clean.sh 'testinstance1'"},"event_id":"6339","executor":"shell","rule":"LowDiskSpaceLogsFix"},{"alert":"testalert1","details":{"chatID":-1001103941234,"message":"Fixed testalert1"},"event_id":"6339","executor":"telegram","rule":"LowDiskSpaceLogsFix"}],"time":"2022-10-13T10:55:29+08:00"}
{"alert":"testalert1","context":"runner","details":{"command":"/tmp/clean.sh 'testinstance1'"},"duration":"447.909μs","event_id":"6339","executor":"shell","level":"error","msg":"runner got executing task #1/2 error, stopping group: fork/exec /tmp/clean.sh 'testinstance1': no such file or directory","result":"exec_error","rule":"LowDiskSpaceLogsFix","tasks":[{"alert":"testalert1","details":{"command":"/tmp/clean.sh 'testinstance1'"},"event_id":"6339","executor":"shell","rule":"LowDiskSpaceLogsFix"},{"alert":"testalert1","details":{"chatID":-1001103941234,"message":"Fixed testalert1"},"event_id":"6339","executor":"telegram","rule":"LowDiskSpaceLogsFix"}],"time":"2022-10-13T10:55:29+08:00"}
{"context":"runner","level":"debug","msg":"runner finished executing group","tasks":[{"alert":"testalert1","details":{"command":"/tmp/clean.sh 'testinstance1'"},"event_id":"6339","executor":"shell","rule":"LowDiskSpaceLogsFix"},{"alert":"testalert1","details":{"chatID":-1001103941234,"message":"Fixed testalert1"},"event_id":"6339","executor":"telegram","rule":"LowDiskSpaceLogsFix"}],"time":"2022-10-13T10:55:29+08:00"}

@athosw, show me clean.sh please. I think there is mistake in this script.

hi,the clean.sh already in  https://github.com/krpn/prometheus-alert-webhooker/issues/32
cat /tmp/clean.sh
con="$1"
echo aaaa"$con" >> /tmp/webhook.log
ls -l /tmp/clean.sh
-rwxrwxrwx. 1 root root 45 Oct 13 10:40 /tmp/clean.sh
At 2022-10-18 23:31:52, "Alexander Krupin" @.***> wrote:
@athosw, show me clean.sh please. I think there is mistake in this script.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>


Set initial state of row eg. selected or expanded

How can I select the rows that I require? I am making a catalog and I would like to load the rows that I already select previously.

It's possible but a bit cumbersome as of now so I'm going to change your question into a feature request and add the ability to set initial state of rows as well as a public function for selecting rows.

@mayra268 I'm still thinking about a nice way of handling this but in the meantime you could do the following:
    public configObject: GtConfig<RowData>;

    @ViewChild(GenericTableComponent)
    private myTable: GenericTableComponent<any, any>;

    constructor() {
        this.configObject = {
            settings: ...,
            fields: ...,
            data: ...
        };
    }

    ngOnInit() {
        setTimeout(() => {
            this.myTable.toggleSelect(this.configObject.data[1]);
        }, 0);
    }

This will select the second row. To select multiple rows just loop through all the rows that should be selected and pass them to the toggle select function toggleSelect(row);

Thanks @hjalmers, i will try it

Hi @hjalmers
You can tell me how I can get the value you send in this line
this.myTable.toggleSelect (this.configObject.data [1]);
Because I'm trying to do it this way but it has not worked for me.

Hi @mayraGL, I haven't had the time to come up with a nicer way of handling it but check out this plunker, it should do the trick in the meantime:)

@mayraGL there's finally a nicer way of letting the table know the initial state for rows, take a look at  this example, works the same way for normal row selection too. To set the state for expanded row use rowExpandInitialState.

Thanks @hjalmers. A question, the latest version supports angular 5?  I want to update it but i thinking about it.


Crash when starting telepresence

What were you trying to do?
Following getting started guide outlined in https://asciinema.org/a/117761
$ telepresence --deployment myserver --expose 8080 --run-shell

What did you expect to happen?
Connect to proxy of k8s cluster
What happened instead?
Crash
Automatically included information
Command line: ['/opt/telepresence/telepresence-venv/bin/telepresence', '--deployment', 'myserver', '--expose', '8080', '--run-shell']
Version: 0.76
Python version: 3.6.4 (default, Jan  5 2018, 02:35:40)  [GCC 7.2.1 20171224]
kubectl version: Client Version: v1.8.6
oc version: (error: [Errno 2] No such file or directory: 'oc': 'oc')
OS: Linux scl3a3-4 4.14.30-1-MANJARO #1 SMP PREEMPT Sun Mar 25 19:47:20 UTC 2018 x86_64 GNU/Linux
Traceback:
Traceback (most recent call last):
  File "/opt/telepresence/telepresence-venv/lib/python3.6/site-packages/telepresence/cli.py", line 73, in call_f
    return f(*args, **kwargs)
  File "/opt/telepresence/telepresence-venv/lib/python3.6/site-packages/telepresence/main.py", line 501, in go
    runner, remote_info, args, env, subprocesses, socks_port, ssh
  File "/opt/telepresence/telepresence-venv/lib/python3.6/site-packages/telepresence/local.py", line 154, in run_local_command
    connect_sshuttle(runner, remote_info, args, subprocesses, env, ssh)
  File "/opt/telepresence/telepresence-venv/lib/python3.6/site-packages/telepresence/vpn.py", line 223, in connect_sshuttle
    runner, args, remote_info, env["KUBERNETES_SERVICE_HOST"]
  File "/opt/telepresence/telepresence-venv/lib/python3.6/site-packages/telepresence/runner.py", line 177, in popen
    result = self.launch_command(track, args, **kwargs)
  File "/opt/telepresence/telepresence-venv/lib/python3.6/site-packages/telepresence/runner.py", line 126, in launch_command
    process = Popen(args, **kwargs)
  File "/usr/lib64/python3.6/subprocess.py", line 709, in __init__
    restore_signals, start_new_session)
  File "/usr/lib64/python3.6/subprocess.py", line 1344, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'sshuttle-telepresence': 'sshuttle-telepresence'

Logs:
74-3337']...
  10.1 31 | service "telepresence-1523348877-673874-3337" deleted
  10.1 TL | [31] ran.
  10.1 TL | [32] Running: ['kubectl', 'delete', 'service', 'telepresence-1523348877-9170876-3337']...
  10.8 32 | service "telepresence-1523348877-9170876-3337" deleted
  10.8 TL | [32] ran.
  10.8 TL | [33] Running: ['kubectl', 'delete', 'service', 'telepresence-1523348878-132999-3337']...
  11.1 33 | service "telepresence-1523348878-132999-3337" deleted
  11.2 TL | [33] ran.
  11.2 TL | END SPAN vpn.py:70(get_proxy_cidrs)    5.9s
  11.2 TL | [34] Launching: ['sshuttle-telepresence', '-v', '--dns', '--method', 'nat', '-e', 'ssh -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null -F /dev/null', '--to-ns', '<IP_ADDRESS>:9053', '-r', 'telepresence@localhost:45767', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24', '<IP_ADDRESS>/20', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24', '<IP_ADDRESS>/24']...

Sorry about the crash! How did you install Telepresence? Typically sshuttle-telepresence is installed automatically at the same time.

I installed it using yaourt https://aur.archlinux.org/packages/telepresence/. I assume the package installer is missing a few bits.
Anyway, I managed to get it running by installing from source. I think I'll close this, thanks again.

Glad you're up and running. Keep an eye on #135 for better Arch Linux support, and please help if you can.


Can't minimize the editor window when selected in 3d view

Godot version:
4-71907cb6d
OS/device including version:
GTX 2070 Vulkan windows 10
Issue description:
When selected an item in 3d editor view, can't operate on the minimize button on the main window.

Can you record a video of your desktop when you're trying to minimize the window? I don't know why it wouldn't work.
There were known issues with the minimize button not working if the editor window is maximized, but I think that one was fixed a long time ago.

Related to #15833.
Does this occur if you make the editor window non-maximized first?

No, just select something in view, then the main window not responded.

@happydpc Can you (or anyone else) still reproduce this bug in Godot 4.0 or any later release?

Closing due to lack of response. Please comment if you can still reproduce this bug on the latest Godot version.


Update to angular 5

Changed deprecations of angular 5 to their updated pendants.

Closing in favor of https://github.com/EmbeddedEnterprises/ng6-golden-layout


Failover marker persistence

What changed?
Provide persistence API to insert failover marker to the replication queue

Why?
To support graceful failover

How did you test it?
Integration test

Potential risks
N/A

Coverage increased (+0.002%) to 68.441% when pulling 948643704fcfb9e4f2009d0dfff9c8a99ea8f9ac on failover_marker_replication_task into 1f3404b402e4f4813166871610e7e4625bd547ef on master.


Fix number formatting on non-64bit architectures

I don't know if this is the correct approach, but it looks fine. I also added Linux/386 tests on CI, but I don't know if you actually want this. I figured it would make it easier to verify that it works.
Closes #234

Thanks @guilherme-puida. That was a good start. I've updated the PR with a bunch more similar fixes, and tweaked the CI. I'll merge shortly.

No problems, and thanks for the initial PR!


Typo: [2023-01-02] PDF Page 436

On line 40, it is written

where log $p_\theta(x)$ is the called the “evidence”.

i.e. there is an extra "the". It should read as

where log $p_\theta(x)$ is called the “evidence”.

fixed. (BTW I will soon upload a major rewrite of the VI chapter.)


added quick re-select mapping

Simple and easy mapping that allows for you to either quickly re-select the last pasted or changed text.
On a side-note, it might also be nice to add a "autocmd" (Autocommands) section which are great for easy configurations. Some examples,
removing trailing white-space on save
autocmd BufWritePre * :%s/\s\+$//e
auto reload/source .vimrc after save
if has ('autocmd')
	augroup vimrc
		autocmd! BufWritePost $MYVIMRC source % | echom ".vimrc reloaded" . $MYVIMRC | redraw
	augroup END
endif

Nice Man! Honestly, I haven't looked at autocmd stuff too much, but seems like there's a lot of potential with it! Feel free to create a section of your own (with a pun in the name ;)) and share some wizardry! :D


Add functionality to transfer ownership

Use the NFT contract to change the ownership of an item

[x] implement UI button to change ownership
[x] call change ownership function on contract
[x] reflect change in the UI

Check out https://docs.etherscan.io if it could be useful.

We finished the contract functionality. We created a function updateOwnership  where
First
We make a check so to see if the array of the hash-map allItemOwners   is empty where we store all the owners of the item. Then we just add the user as the first owner of the item.
 if (allItemOwners[tokenId].length == 0){
            allItemOwners[tokenId].push(nextOwnerAddress);

Then
If the array of the owners have old users then we call the safeTransferFrom function from the Openzepelin so to change the ownership of the item (NFT) and then we just add the next owner of the item to the allItemOwners hash map, in the array where we store all the owners of the item.
else{
            safeTransferFrom(currentOwnerAddress, nextOwnerAddress, tokenId);
            allItemOwners[tokenId].push(nextOwnerAddress);
        }

Finished UI implementation with #11


ARROW-11307: [Release][Ubuntu][20.10] Add workaround for dependency issue

We'll fix it after 3.0.0.

@github-actions crossbow submit -p release=3.0.0 -p rc=1 verify-rc-binaries-apt

@github-actions crossbow submit -p release=3.0.0 -p rc=1 verify-rc-binaries-apt

+1

+1


bugfix:fix wrong exception information when rollback fails due to dirty data

Ⅰ. Describe what this PR did
fix wrong exception information when rollback fails due to dirty data
Ⅱ. Does this pull request fix one issue?
#2325

Codecov Report

Merging #2333 into develop will decrease coverage by 0.15%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             develop    #2333      +/-   ##
=============================================
- Coverage      51.61%   51.46%   -0.16%
  Complexity      2691     2691
=============================================
  Files            517      517
  Lines          16728    16711      -17
  Branches        2038     2000      -38
=============================================
- Hits            8634     8600      -34
+ Misses          7284     7278       -6
- Partials         810      833      +23

Impacted Files
Coverage Δ
Complexity Δ

...obuf/convertor/BranchRegisterRequestConvertor.java
90.47% <0.00%> (-9.53%)
3.00% <0.00%> (ø%)

...otobuf/convertor/BranchReportRequestConvertor.java
90.90% <0.00%> (-9.10%)
3.00% <0.00%> (ø%)

...obuf/convertor/BranchRollbackRequestConvertor.java
92.00% <0.00%> (-8.00%)
3.00% <0.00%> (ø%)

...otobuf/convertor/GlobalBeginResponseConvertor.java
92.59% <0.00%> (-7.41%)
3.00% <0.00%> (ø%)

...otobuf/convertor/GlobalCommitRequestConvertor.java
93.75% <0.00%> (-6.25%)
3.00% <0.00%> (ø%)

...otobuf/convertor/GlobalStatusRequestConvertor.java
93.75% <0.00%> (-6.25%)
3.00% <0.00%> (ø%)

...obuf/convertor/GlobalRollbackRequestConvertor.java
93.75% <0.00%> (-6.25%)
3.00% <0.00%> (ø%)

...protobuf/convertor/RegisterTMRequestConvertor.java
94.73% <0.00%> (-5.27%)
3.00% <0.00%> (ø%)

...protobuf/convertor/RegisterRMRequestConvertor.java
90.47% <0.00%> (-4.77%)
3.00% <0.00%> (ø%)

...tobuf/convertor/BranchReportResponseConvertor.java
95.45% <0.00%> (-4.55%)
3.00% <0.00%> (ø%)

... and 19 more

Codecov Report

Merging #2333 into develop will decrease coverage by <.01%.
The diff coverage is 0%.

@@             Coverage Diff              @@
##             develop   #2333      +/-   ##
============================================
- Coverage      51.61%   51.6%   -0.01%
  Complexity      2691    2691
============================================
  Files            517     517
  Lines          16728   16730       +2
  Branches        2038    2039       +1
============================================
  Hits            8634    8634
- Misses          7284    7285       +1
- Partials         810     811       +1

Impacted Files
Coverage Δ
Complexity Δ

...in/java/io/seata/tm/api/TransactionalTemplate.java
66.05% <0%> (-1.24%)
24 <0> (ø)

@a364176773 check the code, no problem. However, there are a few minor problems. Tx.getStatus () is a remote call, but in fact status is already available when rollback. The second is that the exception thrown by tx.rollback () must be the rpc exception of the framework and the business rollback fails Both are defined with RollbackFailure, without distinction.

@a364176773 Please solve the problem of getStatus to get the remote status, in fact status has been returned in rollback.

@a364176773 Please solve the problem of getStatus to get the remote status, in fact status has been returned in rollback.

@slievrly i will submit in additional

@zjinlei @xingfudeshi PTAL

@xingfudeshi @zjinlei PTAL


Update EFS Driver Version to v1.5.4

update EFS Driver from v1.3.4 to v1.5.4 https://github.com/kubernetes-sigs/aws-efs-csi-driver/releases (https://github.com/kubernetes-sigs/aws-efs-csi-driver/tree/v1.5.4#deploy-the-driver)

need to configure terraform as well

https://github.com/aws-ia/terraform-aws-eks-blueprints/blob/v4.28.0/modules/kubernetes-addons/aws-efs-csi-driver/main.tf
The 4.28 eks-blueprint updated efs-csi-driver helm version on Nov, 2022 https://github.com/aws-ia/terraform-aws-eks-blueprints/pull/1191


CSS

CSS

As a boot camp student
I want the prework notes to be structured on a webpage
So that I can easily find and read the information

GIVEN a Prework Study Guide website
WHEN I view the study guide
THEN I see a dark blue header and footer, and four boxes with a shadow

learned to work with css to make web sites easier to navigate and more appealing


Add cordova-browser Support

When the server is accessed from a non-mobile device, it should serve an app version that is compatible with the browser.

See the milestone: https://github.com/phonegap/connect-phonegap/milestones/Add browser support


Synchronize OUTDIR_SUF for default version

OUTDIR_SUF produces different value when default version is used between minicargo.mk and run_rustc.
Closes: https://github.com/thepowersgang/mrustc/issues/256
Cc: @r-burns

To be honest I think it would be simpler to just always add the RUSTC_VERSION suffix to the outdir, but either way works for me. It's simple to override the OUTDIR as desired anyway. Thanks for the fix!


Add more debug_log tracing

Description
Adds more debug_log tracing which can be used by a separate tool to generate sequence diagrams like:

Plot is generated with this follow on PR:
https://github.com/wandb/client/pull/3119
Future work (in this order)

rename to tracelog
add more triggers (for socket ops)
check in processing tool (linked PR above)
create a more portable format and/or consider logging to separate files (jsonl maybe?) more standard formats?

Testing
Manually tested

Looks great!! One q: if the user logs stuff for a day, how big does the debug log get (provided it's enabled with WANDB_DEBUG_LOG)? Also, I'd add a todo note to make it configurable via the new Settings.

All depends on how often history data is logged,  I added to the PR future to test this.... I think our current logging is already pretty excessive in some cases.   I think this is a good reason to use a separate logging path (other than python logging) that can be made a bit more efficient.   I would not recommend we encourage the use of this yet by customers, i think we should iterate on it a bit before it is ready for that.


[Docs]: code of conduct link broken in README.md file

what's wrong in the documentation?
Need to add correct code of conduct link in readme file.
Add screenshots
NA
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Can I work on this? if possible under gssoc?


feat: 新增slo的上报指标周期任务

修改之前监控平台数据采集中的slo指标上报，把上报过程改为周期任务集成在bmw中

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


v1.13 backport 2023-01-05

Manual 1.13 backport of:

https://github.com/cilium/cilium/pull/22421 (myself)
https://github.com/cilium/cilium/pull/22814 (myself)
https://github.com/cilium/cilium/pull/22915 (@julianwiedmann)

Once this PR is merged, you can update the PR labels via:
$ for pr in 22421 22814 22915; do contrib/backporting/set-labels.py $pr done 1.13; done

/test-backport-1.13

k8s-1.19-kernel-4.9 pipeline is related to known issue https://github.com/cilium/cilium/issues/22849

(Currently investigating the l4lb issue, can repro locally on tc BPF. XDP works.)

/ci-l4lb-1.13

/ci-l4lb-1.13

/ci-l4lb-1.13

/ci-l4lb-1.13

/ci-l4lb-1.13

/test-backport-1.13

/test-upstream-k8s

gke:
Run gcloud container clusters create cilium-cilium-3895055065 \
Default change: During creation of nodepools or autoscaling configuration changes for cluster versions greater than 1.24.1-gke.800 a default location policy is applied. For Spot and PVM it defaults to ANY, and for all other VM kinds a BALANCED policy is used. To change the default values use the `--location-policy` flag.
Note: The Pod address range limits the maximum size of the cluster. Please refer to https://cloud.google.com/kubernetes-engine/docs/how-to/flexible-pod-cidr to learn how to optimize IP address allocation.
ERROR: (gcloud.container.clusters.create) ResponseError: code=409, message=Already exists: projects/***/zones/us-west2-a/clusters/cilium-cilium-3895055065.
Error: Process completed with exit code 1.

(L4LB suite requires a full backport/sync with master. Related GH, discussing with Martynas about needed PRs.)


[Request] Sorting by derived columns

I was just wondering if you could provide some information on how you might deal with sorting by some derived column which doesn't actually exist in the database e.g. sort by whether users are currently online (ID exists in an array retrieved by some function).
Sorry if this isn't the correct place to make this request, couldn't see a feature request template. Thanks for the library, very useful.

@AJDowds Hi there,
I'm assuming you're talking about doing this with the cursor pagination? I have an example of using arbitrary expressions in the test suite here: https://github.com/charlie-hadden/kysely-paginate/blob/ed37a87ad9c940596fc44e6b590d6d9ba6289b8d/test/cursor.test.ts#L382-L403
I believe that approach should cover what you're asking for here if I understand correctly. In the example I'm using coalesce as the expression, but there shouldn't be anything stopping you from using something like this:
sql`id in (${sql.join(onlineIds)})`

The expression must be used in the fields option, but also has to be selected so that it can be encoded into the cursor. Also remember that if you're sorting by something like that you'll need to include at least a tie-breaker sort, such as a sort on your id too so that the order remains stable.
If that example doesn't cover your use case, then a more concrete example (perhaps the query you're trying to run, but without the pagination options) would be helpful for me to have.

Thanks for the quick response. This is what I've been trying but haven't been able to get it to work:
    const online = await getConnections()
    let expr = sql`id in (${sql.join(online)})`

    let qb = db
      .selectFrom("user")
      .select([
        "user.id",
        "user.email",
        "user.emailConfirmed",
        "user.username",
        "user.firstName",
        "user.lastName",
        "user.dob",
        "user.gender",
        "user.picture",
        "user.createdAt",
        "user.updatedAt",
        expr.as("online"),
      ])
      .where("user.id", "!=", context.user.id)

    if (options.orderBy === "ONLINE") {
      qb.orderBy(expr, "desc")
    }

    const page = await executeWithCursorPagination({
      qb,
      opts: {
        after: after,
        cursorPerRow: true,
        perPage: first,
        fields: [
          { key: "id", expression: "id", direction: "desc" },
          { key: "username", expression: "username", direction: "desc" },
          { key: "online", expression: expr, direction: "desc" },
        ],
        parseCursor: (cursor) => ({
          id: parseInt(cursor.id, 10),
          username: cursor.username,
          online: cursor.online,
        }),
      },
    })

Actually, I have it working like this now thanks to following what you had in your test suite:

      const online = await getConnections()
      const expr = db.fn.coalesce(
        db
          .case()
          .when("user.id", "in", online)
          .then("ONLINE")
          .when("user.id", "not in", online)
          .then("OFFLINE")
          .else("OFFLINE")
          .end()
      )

      let qb = db
        .selectFrom("user")
        .select([
          "user.id",
          "user.email",
          "user.emailConfirmed",
          "user.username",
          "user.firstName",
          "user.lastName",
          "user.dob",
          "user.gender",
          "user.picture",
          "user.createdAt",
          "user.updatedAt",
          expr.as("status"),
        ])
        .where("user.id", "!=", context.user.id)

      if (options.orderBy === "ONLINE") {
        qb.orderBy(expr, "desc")
      }

    const page = await executeWithCursorPagination({
      qb,
      opts: {
        after: after,
        cursorPerRow: true,
        perPage: first,
        fields: [
          { key: "status", expression: expr, direction: "desc" },
          { key: "updatedAt", expression: "updatedAt", direction: "desc" },
          { key: "id", expression: "id", direction: "desc" },
          { key: "username", expression: "username", direction: "desc" },
        ],
        parseCursor: (cursor) => ({
          status: cursor.status,
          updatedAt: new Date(cursor.updatedAt),
          id: parseInt(cursor.id, 10),
          username: cursor.username,
        }),
      },
    })

Thanks for your help. Can I just ask, if you were dealing with a query that had lots of filtering/sorting conditionally added to it. Would you then just conditionally include elements in the fields array and parseCursor call?

I've noticed that id isn't working as a tiebreaker for duplicate updatedAt values using the following code:
I know that my ids are all unique and I also know that I do have duplicate updatedAt values in my db
let qb: SelectQueryBuilder<Database, "user" | "userRelationship", any> = db
      .selectFrom("user")
      .select([
        "user.id",
        "user.email",
        "user.emailConfirmed",
        "user.username",
        "user.firstName",
        "user.lastName",
        "user.dob",
        "user.gender",
        "user.picture",
        "user.createdAt",
        "user.updatedAt",
      ])
      .where("user.id", "!=", context.user.id)

    qb = qb.orderBy("user.updatedAt", "desc")
    qb = qb.orderBy("user.id", "desc")

    const page = await executeWithCursorPagination({
      qb,
      opts: {
        after: after,
        cursorPerRow: true,
        perPage: first,
        fields: [
          { key: "updatedAt", expression: "user.updatedAt", direction: "desc" },
          { key: "id", expression: "user.id", direction: "desc" },
        ],
        parseCursor: (cursor) => {
          const parsed = {
            updatedAt: new Date(cursor.updatedAt),
            id: parseInt(cursor.id, 10),
          }

          console.log("!!parsed", parsed)

          return parsed
        },
      },
    })

    const result = {
      edges: page.rows.map((row) => {
        return {
          cursor: row.$cursor,
          node: { ...row },
        }
      }),
      pageInfo: {
        startCursor: page.startCursor,
        endCursor: page.endCursor,
        hasNextPage: page.hasNextPage,
        hasPrevPage: page.hasPrevPage,
      },
    }

    return result


Error when trying to enable dev spaces

Describe the bug
When attempting to enable dev spaces on an AKS cluster I got back the error:
Creating and selecting Azure Dev Spaces Controller 'k8s-devspaces-ea' in resource group 'shared_ea_eca-east2-rg' that targets resource 'k8s-devspaces-ea' in resource group 'shared_ea_eca-east2-rg'...Failed to create Azure Dev Spaces Controller 'k8s-devspaces-ea' in resource group 'shared_ea_eca-east2-rg' in subscription '343ee394-ba45-424a-8c80-eb113154cff8' - Long running operation failed with status 'Failed'. Additional Info:'Failed to configure container host for Azure Dev Spaces Controller.'
To Reproduce
Try to enable dev spaces with command:  az aks use-dev-spaces -g shared_ea_eca-east2-rg -n k8s-devspaces-ea
azds-sdk-2020-03-27-13-20-54-24380.txt

Enable dev spaces and create controller
A clear and concise description of what you expected to happen.
Logs
Attach logs from the following directory:
For Windows: %TEMP%/Azure Dev Spaces
For OSX/Linux: $TMPDIR/Azure Dev Spaces
Environment Details
Client used (CLI/VS Code/Visual Studio):
azds --version
Azure Dev Spaces CLI
1.0.20200320.7
API v3.2
Client's version:
Operating System:
Additional context
Add any other outputs from the clients or context you would like to share.

@tdelbosco From our service logs it looks like we were unable to ensure traefik load balancer on the cluster because of policy restrictions in your subscription. This resource type was denied: Microsoft.Network/publicIPAddresses. A service of type load balancer will try to create a public IP address in the resource group that contains the agent nodes for the cluster(resource group with name starting with MC_). Dev Spaces uses this public IP address to enable the routing functionality.
If you don't want the routing functionality, you can follow the steps here to create a controller resource without traefik load balancer.

Sorry for the delayed response,  the article referenced mentions V2.2 of the Azure CLI and my company required that to be approved before I can use it.  After getting V2.3.1, when I run the command to use a private endpoint.  I get the following message:
C:>az aks use-dev-spaces -g ea-eca-east2-rg -n sbx-k8s-ds-cmdv2 -e private
az: error: unrecognized arguments: -e private
I've verified I'm using the latest az cli version:
C:>az --version
azure-cli                          2.3.1

Hi @tdelbosco, could you add the --update arg to your command to make sure you have the latest Dev Spaces extension installed for the az CLI? More info here:
https://docs.microsoft.com/en-us/azure/dev-spaces/how-to/upgrade-tools#update-the-dev-spaces-cli-extension-and-command-line-tools

@philon-msft thx for the quick response.  My work laptop is locked down so I can't install software.  I did get what I believe to be the latest version installed:
C:>azds --version
Azure Dev Spaces CLI
1.0.20200407.9
API v3.2

Hi @tdelbosco ! Does the issue reproduce if you run azds use -g <your group> -n <your cluster> -e private  instead?

@amsoedal   That works!  Thx for the help, the documentation here needs to be updated.


 Darwin 16.7.0
npm ERR! argv "/Users/tongchuan/.nvm/versions/node/v7.10.0/bin/node" "/Users/tongchuan/.nvm/versions/node/v7.10.0/bin/npm" "install" "laravel-mix" "--save-dev"
npm ERR! node v7.10.0
npm ERR! npm  v4.2.0
npm ERR! path /Users/tongchuan/Workspace/articles/node_modules/js-beautify/js/bin/css-beautify.js
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall chmod
npm ERR! enoent ENOENT: no such file or directory, chmod '/Users/tongchuan/Workspace/articles/node_modules/js-beautify/js/bin/css-beautify.js'
npm ERR! enoent ENOENT: no such file or directory, chmod '/Users/tongchuan/Workspace/articles/node_modules/js-beautify/js/bin/css-beautify.js'
npm ERR! enoent This is most likely not a problem with npm itself
npm ERR! enoent and is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! Please include the following file with any support request:
npm ERR!     /Users/tongchuan/.npm/_logs/2017-09-18T13_56_18_588Z-debug.log

There's are a lot of people seeing this today.
https://github.com/beautify-web/js-beautify/issues/1247

Is there a work around or anything?

Yes.
Delete your node_modules folder, and in your package.json add this:
"js-beautify": "~1.6.14",

in the "devDependancies" section.
Then do an npm_install and you should be sorted :)
(Took me a LONG time to sort until someone pointed out I was accidentally adding ^1.6.14 instead of ~1.6.14)

(Or wait a few hours until the dev wakes up and fixes this!)

See, I was doing the samething you were for the last hour. I had ^1.6.14 instead of ~1.6.14 Thank you, that solved my issue so I can work until this gets updated.

This is fixed in 1.4.5. Just do an npm update. #1206

Thank you sir!


introduce enabled/recording settings

What does this pull request do?
Introduce recording/enabled as per https://github.com/elastic/apm/issues/92#issuecomment-519752096

@basepi the "spec" (a.k.a. random comment amidst lengthy discussion) says

Introduce enabled config: true by default, setting to false will completely disable the agent, including instrumentation and remote config polling. This can only be set locally to the agent (e.g. in code, config file, environment variable), and is interpreted once at agent initialisation time; once disabled, disabled for the process's lifetime.

That's the only place I'm aware of that defines behavior of these new settings. Is there any other place I missed?

Oh! I missed that. I thought enabled was a remote config option as well. We always talk about enabled/recording together in the remote config issue: https://github.com/elastic/apm/issues/213
That certainly makes things easier, thanks for the explanation.

:green_heart: Build Succeeded

Expand to view the summary

Build stats

Build Cause: [Branch indexing]

Start Time: 2020-04-28T14:08:45.905+0000

Duration: 39 min 23 sec (2363265)

Commit: bdd994c7a63c873f22810dae10679e62035536d2

Test stats :test_tube:

Test
Results

Failed
0

Passed
9172

Skipped
6248

Total
15420

@beniwohli if this is ready let's get it merged on Monday and cut a new release early next week.


The "name" attribute of inputs and controls(TypeScript)

RMWC or MDC?
RMWC
What RMWC Version are you using?
1.8.3
What browser(s) and React Version is this bug affecting?
All
What build system are you using?
Create React App (TypeScript)
What is the expected behavior?
The input element of html has "name" attribute, which is usually used to handle the change of value.
For example, assumed I have an input element:
<input name="address" type="text" />

And a handleChange function:
handleChange(e: any) {
    const { name, value } = e.target;
    //Do something with name and value.
}

Then I can bind the onChange event to my handleChange function:
<input name="address" type="text" onChange={this.handleChange} />

What is the actual behavior?
The inputs and controls of RMWC(TextField, Checkbox, Select, Radio...)  currently have no "name" attribute.
Any other information you believe would be useful?
However, I am able to use some tricks to achieve this in TypeScript.
Here's how I do it:
(TS part)
const nameAttr = { name: "address" };

(HTML Part)
<TextField {...nameAttr} type="text" onChange={this.handleChange} />

Is it possible to add "name" attribute on the inputs and controls of RMWC?
That would be a more proper way to handle changes of inputs and controls.

Thanks for reporting this. Took me a bit to figure out that HTMLAttributes doesn't do anything... Got this properly working and applied the same fix to all of the input elements in RMWC.
Will post a patch sometime today.


Http Request Error

Hello, I'm having an issue making request. I've tested making the same request with regular angular HttpClient and it works normally, but when I try to make the request with this package it fails and gives me an error with some information.
Version: 1.5.2 (latest available on npm)
HttpClient request:
this.http.get(`https://api.phrase.com/v2/projects/${projectId}/locales/en/download?file_format=simple_json`, {
  headers: {
    'authorization': `Bearer ${apiKey}`,
  },
}).subscribe(locale => {
  console.log('LOCALE', locale);
});

This request works normally and the locale json is printed.
Using the package to make the same request:
    const configuration = new Configuration({
      apiKey: apiKey,
    });

    this.phraseLocalesApi = new LocalesApi(configuration);

    this.phraseLocalesApi.localeDownload({
      projectId: projectId,
      id: 'en',
      fileFormat: 'simple_json',
    }).then(file => {
      console.log('FILE', file);
    }, err => {
      console.log('ERROR', err);
    });

When using the package as shown above, I get a 401 response and the following error is printed:
{
    "body": {},
    "bodyUsed": false,
    "headers": {},
    "ok": false,
    "redirected": false,
    "status": 401,
    "statusText": "",
    "type": "cors",
    "url": "https://api.phrase.com/v2/projects/********/locales/en/download?file_format=simple_json"
}

Am I doing something wrong here?
I've noticed that on the authorization header, there is no Bearer prefix before the value. I wonder if that's causing this issue.
Thanks for the help!

Hi @alexandretok, could you try passing token ${apiKey} as the api key? Currently the full value of the authorization header is required by the SDK

Hi @alexandretok, did this solve the issue? I'll close the issue for now but let me know if there is still any issue


React should be included in the layout

We should add this to the script block in layout:
<script src="/library/react/JSXTransformer.js"></script>````

This is needed for development.
For production, JSXTransformer.js should be replaced by compiled React JS code. I will add build script later on.

Ok
On Sat, Apr 4, 2015, 11:46 AM leapon<EMAIL_ADDRESS>wrote:

This is needed for development.
For production, JSXTransformer.js should be replaced by compiled React JS
code. I will add build script later on.
—
Reply to this email directly or view it on GitHub
https://github.com/leapon/reactcms/issues/63#issuecomment-89602232.

I will give a talk on React component next week:
http://www.meetup.com/React-DC/events/221041390/
You can see how I compile react code for deployment in this demo repository:
https://github.com/leapon/reactlet-demo


Spherical Joints at Contact, Mass Matrix

Hi all,
I created a simple humanoid model with 1 spherical joint and all other joints fixed. When I throw this humanoid to the floor, I got array out of bound assertion failures and simulation stopped without error messages.
After some digging, it appears that when constructing the mass matrix for contact resolution, the spherical joint case might indeed have some issues. I ended up changing this line to Algebra::assign_block(*M, Algebra::transpose(Fi), 0, qd_i, 6, 3);, as the way assign_block is implemented for 6*3 matrices seemed to cause out-of-bound errors due to the "fake transpose".
With this mod, the sim successfully runs, but the energy does not seem to decrease over time with zero restitution. Please see the video attached. In fact, if we wait long enough, the sim eventually explodes and gives NaNs.
I checked related issues #76 , #91 and made sure my model does not have inertial offset at root. The urdf model and python code is also attached.
Attachments
Thanks for helping with this issue!
Yifeng

Thanks for the report, haven't had the time to check this out yet.


Eliah Kagan: Watch bluemap.co

Eliah Kagan requests the watch of the watch_keyword bluemap\.co. See the MS search here and the Stack Exchange search here.

bluemap\.co has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Makyen in Charcoal HQ


Docs: Added privacy policy page

Description
Added privacy policy to Website instead of referencing to .github/PRIVACY.md
Because of this, @yaira2 has to update the link of this to reference to website's link.
Screenshots (if appropriate):

I'm wondering if this would be better as a standalone page.

Not in docs page?
I agree ☝

@0x5bfa what does the updated footer look like?

Work needs to be done on the design.

I'm going to merge into a separate branch so I can make some more changes.


Deprecated Parse

app_settings.py line 55 is using outdated code rather use model_validate
Like so ... self._config = Settings.model_validate(settings_dict)

@BrandenSysoutHelloWorld  Fixed in the master branch

@BrandenSysoutHelloWorld new release 1.0.0 beta 24 https://github.com/rupeshs/fastsdcpu/releases/tag/v1.0.0-beta.24


[Bug]: 404 error at URL: /txns/e6kllQs9JFT2drXrQo1U8DN7oG4f1qZTem5CdS7eKMs

What happened?
A bug happened!
URL
https://explorer.helium.com/txns/e6kllQs9JFT2drXrQo1U8DN7oG4f1qZTem5CdS7eKMs
What browsers are you seeing the problem on?
Safari
Do you see the issue on Mobile or Desktop?
Mobile
Relevant log output
No response

works now, closing.


NDRS-464--nctl-refold

Moved nctl into casper-node.
Updated .gitignore so as to avoid committing transient nctl assets.
Updated nctl's chain spec.toml template in light of most recent changes.

NOTE - this PR supersedes a previous PR that has already been reviewed by @Fraser999 but that failed merge due to a commit signature issue.

bors r+


Improve model representation

When is called a representation the model structs lack of the information about the fields
Many thanks for submitting your Pull Request :heart:!
What this PR does / why we need it:
Special notes for reviewers:
Additional information (if needed):

Hi @desmax74, is it still needed or can we close?

@spolti yes because we can choose to use a useful representation in the logs when is called fmt.Printf
fmt.Printf
https://pkg.go.dev/fmt

If an operand implements method String(), that method will be invoked to convert the object to a string, which will then be formatted as required by the verb (if any).

The {} in the String() is used just to avoid confusion with [] of the arrays/slices is not a replacement of json/yaml representation with marshal/unmarshal

@desmax74 I still don't have a strong opinion about the need of these String() funcs, parsing the workflow an d printing json pretty output is a way clearer.
Note that, you can parse snippets of the workflow as well.
@ricardozanini @lsytj0413 wdyt?

@desmax74 I still don't have a strong opinion about the need of these String() funcs, parsing the workflow an d printing json pretty output is a way clearer. Note that, you can parse snippets of the workflow as well.
@ricardozanini @lsytj0413 wdyt?

I didn't see the specific application scenarios or the problems that json.Marshal couldn't solve；On the other hand, if you want to see the specific information of each field, is go-spec an available option。

@lsytj0413 go-spew fits well for the same purpose, thanks for the answer !


[2.0] Add integration tests using fixtures files.

There are good unit tests for fixers (and other parts of the code),
but there is no easy way to make integration tests.
This PR adds integration tests to the PHP-CS-Fixer code base.
It aims to makes it easy to tests (whole) PHP code (files) using multiple fixers.
Inspired by the fixtures in Twig.
Limitations:

it doesn't test/do linting (by design)
file based fixers won't work (like PSR0 and possibly PSR4 if that fixer is made)

A .test has the following structure:
--TEST--
My test title
--CONFIG--
level=none|psr0|psr1|psr2|symfony
fixers=name1,name2 (additonal fixers)
--fixers=name3,name4 (fixers not to use)
--INPUT--
some code
--EXPECT--
expected code after fixing

config items fixers and --fixers are optional
--EXPECT-- is optional, if omitted the input is expected to stay the same.
Examples can be seen here:

https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1375/files#diff-e283518231c001f9337e0093560cb730R1
https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1375/files#diff-acdfc6b1dc6d83c7a9ae915af8acb5a1R1

Surely all the phpdoc changes should be made on the 1.11 branch?

I guess :+1: , lets see if this is a feature wanted before getting all the details in place :)

Sure, but the phpdoc additions are mainly unrelated, which is why I'm suggesting taking them out of this PR. :)

Why making this a 2.0 feature ? New features can (and should) go in 1.x.
I also think you should separate the logic allowing to create integration tests from the actual tests using it in this library, to make the integration testing setup reusable by other packages providing extra fixers. See how Twig does it.

Why making this a 2.0 feature ? New features can (and should) go in 1.x.

well, I need another API on the Fixer class because this won't work for the .test files:
$new = $old = file_get_contents($file->getRealpath());
changing the API will be a BC

I also think you should separate the logic allowing to create integration tests from the actual tests using it in this library, to make the integration testing setup reusable by other packages providing extra fixers. See how Twig does it.

I'll see if I can find it, thanks for the pointers.

Great idea and I'm very happy to see this PR! ;)
On 2.x line we won't have levels like PSR2 or Symfony - so please put tests into same dir.

updated : )

more fixes done

https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1375#issuecomment-137393979

What about that? Are your PR already depends on sobe breaking changes?

What about that? Are your PR already depends on sobe breaking changes?

I'm not sure I follow, since I don't know the meaning of 'sobe'.
As stated in the response on the linked comment of Stof, I've created a PR for 1.11,
https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1384

typo, shoud be 'some' ;)

I see :)
No, the tests do not depend on anything new introduced in the 2.x line (or removed for that matter). However  it uses the errorManager to check if everything went well and that part (and the Error class) have changed in 2.x.

And now integration tests are on master too.
Thank you again @SpacePossum !


Inputs for min max values

Hello, thank you very much for this examples
I add 2 inputs to change min/max values of the sliders but i don't find a way to change them on the slider

Is that possible?

Sorry this is a bit late reply!
You can double-click the "dot" on the slider to bring up the normal Grasshopper slider settings


Added Hive query generation to optionally support explicit database names

Added Hive query generation to optionally support explicit database names

Minor change, self approving.


Y075 (controllerAs in directives with isolated scope) example broken

In the provided example of style Y075, the myExample directive has an isolated scope with 'max' defined, and the directive is called with max=77. If the purpose of the example is to show that vm.max == 77, it is broken.. sort of.
As the scope is isolated, the provided code is incorrect but because of the way the associated controller ExampleController is written, the bug is masked.
If you remove the vm.max = $scope.max; line, then vm.max should be undefined (or NaN because of the %i), while one would expect it to equal 77.
The reason is that the directive doesn't use bindToController: true which is mandatory for isolated scopes properties to be bound to the this (your vm) of controllers.
From https://docs.angularjs.org/api/ng/service/$compile:

bindToController
When an isolate scope is used for a component (see above), and controllerAs is used,  bindToController: true will allow a component to have its properties bound to the controller, rather than to scope. When the controller is instantiated, the initial values of the isolate scope bindings are already available.

An example with an injection is good to have but using $scope here is sort of counter productive, or at least super confusing if you're new to this syntax.
Or maybe I misunderstood the purpose of the example...

bindToController: true should be there. Feel like making a PR?

I just did, PR #216

fixed in 5585ed34b0b4e62405fc8526a61cefe302259d3a


Outdated cask: sqleditor

Outdated cask: sqleditor.
Info:

version: 3.0.2.
appcast url: https://www.malcolmhardie.com/sqleditor/appcast/sq2release.xml.

Please do not run find_outdated_appcasts unless you are a maintainer.


return view functions from resources

From @aaronhaines on February 11, 2014 13:50
I have a version of this working as per this gist: https://gist.github.com/aaronhaines/8934810
also a example of how the config would look: https://gist.github.com/aaronhaines/8934892
Have a look at the changes on my fork here: https://github.com/aaronhaines/nap
I'm creating a response object and passing it though as the scope to the various handlers. Probably need a better solution for preventing the response scope from being exposed to the resource function.
Selector negotiation is now a standalone function which can be optionally used by views and could be moved out of the core library along with the 'into' client. nap itself doesn't need to have any dom handling code at all.
Copied from original issue: sammyt/nap#9

I think we should drop selector negotiation from nap altogether, and let clients deal with such things instead.


(1.10.2 1.1.5) Space Station builder doesn't work

I can't seem to get the space station builder to work and I need a space station ID chip for Station 1 so I can send rockets to and from the station.
Can I have a command for it? I'm running 1.10.2, AR version 1.1.5/

First off, what are you trying to do with the space station builder and what's not working about it.  Second off the command "/advancedRocketry givestation 1" should give you a chip for station 1

Post a pic of your set up if you could plz. I set mine up and it worked flawlessly. It's possible that you have it set up wrong.

I was trying to build a small space station, so I could get a programmed station chip and edit the chip's NBT so it would be a station 1 chip, that way I could use rockets with my warp ship.
I had a pad around 6x6 with a tower about 5 blocks tall, I had the tower on the same level as the pad so that the tower's first block was touching the side of the pad.
I also had the station assembler with the correct side facing outwards, and a coal generator to power it.
I could put the satellite bay and chip in the assember slots, but when I click build, it consumes one of both items and does nothing after that. I don't know if I'm just lagging really bad or what.
I'm running this on my laptop, which has pretty decent specs.
I already destroyed the pad and scanner because I somehow managed to get it working in another situation. Do the assemblers work in space? If they don't, that would explain my problem. I was trying to build a shuttle in the hangar of my warp ship. I disabled fuel and set the per-engine thrust multiplier to 64 because I didn't want thrusters to be visible on the bottom of the shuttle.
I managed to get it working elsewhere, but I can't remember if it was on another world or another dimension in the same world I was having the issue in. Perhaps it's an issue with my world or that ship in specific?

I don't believe so. Honestly in order to build a ship it stands to reason that you would start on the planet to launch a station...

Also, anything you build on the station or not connected to the station but in that dimension is connected regardless. Meaning if you try and move the shuttle it's going to move the station as well. Already been over this with Zmaster. It's something that would take major work to get accomplished to be able to separate them from the station. But then you're also talking major lag due to having two entities within the same vicinity.

I don't think there's anything preventing rockets being built on spacestations other than the normal requirements, there's definatly no check for dimid in the assembler.  And if it comsumed the items it definately started. Did you run a scan first?  Did you open the multiblock to see if it actually has power/progress?

I also can't get rockets to launch even after I use a planet ID chip or station ID chip, whether it's programmed for a planet orbiting the one I'm on or not.
Like, if I'm on Earth with a chip for Luna, and try to launch with it, it won't take off, but it does ignite the engine, it just doesn't fly up. I can't get rockets to actually get off the ground no matter what I do.
So I don't know what to do. D:
It doesn't matter what planet/station the chip is programmed for, the rocket won't lift off even IF the chip is for a station or moon orbiting the planet I'm trying to take off from. I don't know if it's a mod conflict or what.

What was the acceleration rating for the rocket in the assembler.  Also are
you sure there are no blocks in top of it holding it down?

Acc:-.27
Thrust:450
Weight:223

you shouldn't be able to successfully build a rocket with negative acceleration to avoid this exact issue.
It looks like it's too heavy to fly.

So turns out the configuration affected the thrust in the assembler, but not of the rocket itself.  That'll be fixed in the next release

Also, I noticed a rendering issue in the alpha version with the planets when I'm in orbit.
The planet jitters and spazzes like crazy.
Do you know the cause of this?

I think I know what caused the issue: I deleted an unwanted station with an NBT editor. Do you think that could be the problem?


[v1.0.8] Update cloud OS images

Fix for #3299. Additionally updating RHEL and Ubuntu images.

/azp run


Starlark LLDP script breaks prometheus output

I'm probably doing something wrong in this script, it's not a bug with the implementation.
This is the config I'm trying to use, currently it just breaks prometheus's /metrics
subscriptions:
  sub1:
    paths:
       - "/lldp/state/system-name"
       - "/lldp/interfaces/interface/state/name"
       - "/lldp/interfaces/interface/neighbors/neighbor/state/system-name"
       - "/lldp/interfaces/interface/neighbors/neighbor/state/port-id"
    stream-mode: sample
    sample-interval: 30s
    heartbeat-interval: 30s
    updates-only: false

outputs:
  prometheus:
    type: prometheus
    listen: :9273
    append-subscription-name: false
    strings-as-labels: true
    timeout: 30s
    event-processors:
      - starlark-add-lldp-info

processors:
  starlark-add-lldp-info:
    event-starlark:
      source: |
          cache = {}

          def apply(*events):
              evs = []
              for e in events:
                  local_system_name_path = "/lldp/state/system-name"
                  local_port_id_path = "/lldp/interfaces/interface/state/name"
                  remote_system_name_path = "/lldp/interfaces/interface/neighbors/neighbor/state/system-name"
                  remote_port_id_path = "/lldp/interfaces/interface/neighbors/neighbor/state/port-id"

                  if e.values.get(local_system_name_path) and e.values.get(local_port_id_path) and e.values.get(remote_system_name_path) and e.values.get(remote_port_id_path):
                      local_device_lldp_name = e.values[local_system_name_path]
                      local_port_id = e.values[local_port_id_path]
                      remote_device_lldp_name = e.values[remote_system_name_path]
                      remote_port_id = e.values[remote_port_id_path]

                      # Create a sorted lldpName label and use cache
                      local_key = f"{local_device_lldp_name}:{local_port_id}"
                      remote_key = f"{remote_device_lldp_name}:{remote_port_id}"

                      if local_key not in cache and remote_key not in cache:
                          if local_device_lldp_name < remote_device_lldp_name:
                              lldp_name = f"{local_device_lldp_name}:{local_port_id}:{remote_device_lldp_name}:{remote_port_id}"
                          else:
                              lldp_name = f"{remote_device_lldp_name}:{remote_port_id}:{local_device_lldp_name}:{local_port_id}"
                          cache[local_key] = lldp_name
                          cache[remote_key] = lldp_name
                      else:
                          lldp_name = cache.get(local_key) or cache.get(remote_key)

                      new_event = e.clone()
                      new_event.name = "lldp_local_mapping"
                      new_event.values = {"lldp_local_mapping": 1}
                      new_event.tags["lldpName"] = lldp_name
                      new_event.tags["lldpRemSysName"] = remote_device_lldp_name
                      new_event.tags["lldpLocalSysName"] = local_device_lldp_name
                      new_event.tags["lldpLocalPortId"] = local_port_id

                      evs.append(new_event)
                  else:
                      evs.append(e)
              return evs

The idea in a nutshell is to create a new metric in a format
lldp_local_mapping with the following labels:

- lldpName = {local_device_lldp_name}:{local_port_id}:{remote_device_lldp_name}:{remote_port_id}"
- lldpRemSysName
- lldpLocalSysName
- lldpLocalPortId

lldpName needs to be sorted by name on creation, so it's the same on both devices: local and remote.
This lldpName label will be used to correlate device/port on both sides for alerts, etc.
Any pointers to what's wrong with the script above?

              if e.values.get(local_system_name_path) and e.values.get(local_port_id_path) and e.values.get(remote_system_name_path) and e.values.get(remote_port_id_path):

Are you expecting the event has all these values in the same event?
On a Juniper QFX5130 with this set of subscription paths each item seems to come as its own event?
When you says it 'breaks' /metrics can you provide more information?
You can add some tracing in your starlark which can output on the console for assistance in debugging?
ie
print(e)
I'm not sure I have tried e.clone() to create a new event, but I have tried something like
     new_event = Event("enhanced_interface_counters", e.timestamp, e.tags)

This worked for me ... you might need to rework it but the idea being you cache the stuff you need until you have all of it (because the neighbor port-id and neighbor system-name are in different events) before you create your new event
logging = True
cache = {}

def apply(*events):
  # events we return
  ret_events = []

  for e in events:
    if e.name == 'lldp':
      if logging:
        print(e)
      # remove port part of target
      hostname = e.tags['source'].replace( ':9339', '' )
      if e.tags.get('neighbor_id'):
        cache_key = hostname + '_' + e.tags['interface_name'] + '_' + e.tags['neighbor_id']
        if cache_key in cache:
          if logging:
            print( 'cache hit for ' + cache_key )
        else:
          if logging:
            print( '** new cache slot for ' + cache_key )
          cache[cache_key] = {}

        if e.values.get( '/lldp/interfaces/interface/neighbors/neighbor/state/port-id' ):
          cache[cache_key]['remote-port'] = e.values.get( '/lldp/interfaces/interface/neighbors/neighbor/state/port-id' )
        if e.values.get( '/lldp/interfaces/interface/neighbors/neighbor/state/system-name' ):
          cache[cache_key]['remote-name'] = e.values.get( '/lldp/interfaces/interface/neighbors/neighbor/state/system-name' )
        cache[cache_key]['local-name'] = hostname
        cache[cache_key]['local-port'] = e.tags['interface_name']

        if 'remote-name' in cache[cache_key] and 'remote-port' in cache[cache_key]:
          new_event = Event("lldp_inventory", e.timestamp )
          for key,value in cache[cache_key].items():
            new_event.tags[key] = value
          new_event.values = { 'lldp_item' : 1 }
          ret_events.append( new_event )
          if logging:
            print( new_event )
    else:
      ret_events.append( e )
  return ret_events

gives me
# HELP lldp_item gNMIc generated metric
# TYPE lldp_item untyped
lldp_item{local_name="bl01.laba.lab",local_port="et-0/0/0",remote_name="sp01.01.laba",remote_port="et-0/0/28"} 1
lldp_item{local_name="bl01.laba.lab",local_port="et-0/0/1",remote_name="sp02.01.laba",remote_port="et-0/0/28"} 1
lldp_item{local_name="bl01.laba.lab",local_port="et-0/0/28:0",remote_name="dr03.laba",remote_port="et-2/2/3"} 1
lldp_item{local_name="bl01.laba.lab",local_port="et-0/0/28:2",remote_name="dr04.laba",remote_port="et-2/2/3"} 1
lldp_item{local_name="bl01.laba.lab",local_port="re0:mgmt-0",remote_name="rsw01.r1.05.laba",remote_port="ge-0/0/14"} 1

Thanks @peejaychilds for looking into it. Got your point about regarding caching the stuff I need until I have all of it for processing.
Trying to troubleshoot (you script doesn't break things but doesn't return lldp_item), where does it send the logs? I'm running it in cli ./gnmic --config gnmic-config.yaml subscribe  --tls-cert ./1.pem --tls-key ./1-key.pem --skip-verify -d but it's a bit too much gibberish and I don't see any logs from the script itself.

I believe it is the log: true option that makes output to stdout
My gnmic.yaml has
skip-verify: true
encoding: json
log: true

loader:
  type: file
  # path to the file
  path: /opt/gnmi/targets/targets.yaml
  enable-metrics: true

subscriptions:
  lldp:
    paths:
      - /lldp/interfaces/interface/neighbors/neighbor/state/system-name
      - /lldp/interfaces/interface/neighbors/neighbor/state/port-id
    stream-mode: sample
    sample-interval: 60s

outputs:
  prometheus:
    type: prometheus
    listen: :8080
    append-subscription-name: false
    strings-as-labels: true
    timeout: 30s
    event-processors:
      - proc-test

processors:
  proc-test:
    event-starlark:
      script: /opt/gnmi/test.star

I run gnmic --config /opt/gnmi/gnmic.yaml subscribe and see things like
...
2024/07/30 00:09:13.940595 [event-starlark] print(): {"name":"lldp","timestamp":1722298153765731172,"tags":{"interface_name":"re0:mgmt-0","neighbor_id":"50:c7:09:a7:c3:f1-ge-0/0/17","source":"sp01.01.laba.lab:9339","subscription-name":"lldp"},"values":{"/lldp/interfaces/interface/neighbors/neighbor/state/port-id":"ge-0/0/17"}}
2024/07/30 00:09:13.940620 [event-starlark] print(): cache hit for sp01.01.laba.lab_re0:mgmt-0_50:c7:09:a7:c3:f1-ge-0/0/17
2024/07/30 00:09:13.940664 [event-starlark] print(): {"name":"lldp_inventory","timestamp":1722298153765731172,"tags":{"local-name":"sp01.01.laba.lab","local-port":"re0:mgmt-0","remote-name":"rsw01.r1.05.laba","remote-port":"ge-0/0/17"},"values":{"lldp_item":1}}
...

Thanks, now I have something to work with!

This seems to do the trick:
  starlark-add-lldp-info-2:
    event-starlark:
      source: |
        logging = True
        cache = {}

        def apply(*events):
          # events we return
          ret_events = []

          for e in events:
            if e.name == 'lldp':
              if logging:
                print(e)
              # remove port part of target
              hostname = e.tags['source'].replace(':6030', '')
              if e.tags.get('neighbor_id'):
                cache_key = hostname + '_' + e.tags['interface_name'] + '_' + e.tags['neighbor_id']
                if cache_key in cache:
                  if logging:
                    print('cache hit for ' + cache_key)
                else:
                  if logging:
                    print('** new cache slot for ' + cache_key)
                  cache[cache_key] = {}

                if e.values.get('/lldp/interfaces/interface/neighbors/neighbor/state/port-id'):
                  cache[cache_key]['remote-port'] = e.values.get('/lldp/interfaces/interface/neighbors/neighbor/state/port-id')
                if e.values.get('/lldp/interfaces/interface/neighbors/neighbor/state/system-name'):
                  cache[cache_key]['remote-name'] = e.values.get('/lldp/interfaces/interface/neighbors/neighbor/state/system-name')
                cache[cache_key]['local-name'] = hostname
                cache[cache_key]['local-port'] = e.tags['interface_name']

                if 'remote-name' in cache[cache_key] and 'remote-port' in cache[cache_key]:
                  local_name = cache[cache_key]['local-name']
                  local_port = cache[cache_key]['local-port']
                  remote_name = cache[cache_key]['remote-name']
                  remote_port = cache[cache_key]['remote-port']

                  # Sort names to ensure consistent lldpName
                  if local_name < remote_name:
                    lldp_name = local_name + ":" + local_port + ":" + remote_name + ":" + remote_port
                  else:
                    lldp_name = remote_name + ":" + remote_port + ":" + local_name + ":" + local_port

                  # Create a new event manually
                  new_event = Event("lldp_inventory", e.timestamp)
                  new_event.values = {'lldp_local_mapping': 1}
                  new_event.tags = {}
                  new_event.tags.update(cache[cache_key])
                  new_event.tags['lldpName'] = lldp_name
                  ret_events.append(new_event)

                  if logging:
                    print(new_event)
            else:
              ret_events.append(e)
          return ret_events

On a side note, is there an efficient way in gnmic (starlark or some other existing processor) to change metric value based on label value?
For example, with the default interface status, not much one can do
interface_state_oper_status{alias="blah.com",ifAlias="SomeName",ifName="Ethernet1/1",oper_status="NOT_PRESENT"} 1
interface_state_oper_status{alias="blah.com",ifAlias="SomeOtherName",ifName="Ethernet2/1",oper_status="UP"} 1

I need to convert it to
interface_state_oper_status{alias="blah.com",ifAlias="SomeName",ifName="Ethernet1/1",oper_status="NOT_PRESENT"} 0
interface_state_oper_status{alias="blah.com",ifAlias="SomeOtherName",ifName="Ethernet2/1",oper_status="UP"} 1

(based on oper_status label value)

On a side note, is there an efficient way in gnmic (starlark or some other existing processor) to change metric value based on label value?
For example, with the default interface status, not much one can do
interface_state_oper_status{alias="blah.com",ifAlias="SomeName",ifName="Ethernet1/1",oper_status="NOT_PRESENT"} 1
interface_state_oper_status{alias="blah.com",ifAlias="SomeOtherName",ifName="Ethernet2/1",oper_status="UP"} 1
I need to convert it to
interface_state_oper_status{alias="blah.com",ifAlias="SomeName",ifName="Ethernet1/1",oper_status="NOT_PRESENT"} 0
interface_state_oper_status{alias="blah.com",ifAlias="SomeOtherName",ifName="Ethernet2/1",oper_status="UP"} 1
(based on oper_status label value)

You should just map the oper_status value to a numerical value, instead of making it a label.
processors:
  # processor name
  map-oper-status:
    # processor type
    event-strings:
      value-names:
        - "/interface/state/oper-status"
      transforms:
        # strings function name
        - replace:
            apply-on: "value"
            old: "NOT_PRESENT"
            new: "0"
        - replace:
            apply-on: "value"
            old: "UP"
            new: "1"

Pretty neat, thanks!


File -> Save As MVP 1 (Permalink)

Design requirement
This is going to assume that the File->Save As launches a modal dialog. It might be quite a big modal, because we're going to extend it ourselves and allow others to add functionality/integration here.
The functionality below is a plugin - there could be other plugins in other tabs in the dialog in future. The job of whichever plugin is used to save the manifest is to persist the Vault contents identified by a particular id, report success/failure, reset the unsaved changes flag (#80).
The manifest is only assigned an id when the Manifest is saved; the id is provided by the plugin that is invoked to save the manifest. In the case below, this is the permalink service.
Acceptance

[x] The File->Save As menu item launches a modal overlay/dialog
[x] There is a heading, Permalink. For now this is the only heading.
[x] If the currently loaded Manifest has never been saved to a permalink before, it looks like this under the Permalink header (a note and a button):
A new URL will be created for the Manifest on first Save  | Save |
[x] If it has previously been saved (the ME has an entry in local storage for its id) then it looks like this (radio buttons):
◉ Replace https://iiif.sandbox/p3/ababababababababa
◎ Create a new permalink
| Save |
[x] Clicking Save either PUTs the manifest to the stored Update URL, or POSTs to the new /permaLink endpoint (as per RFC)
[x] Whatever happens, the above UI is replaced by a confirmation:
The manifest has been saved to the permaLink {hyperlink here} | Copy URL |
[x] The ME adds the permalink URL to its recent files stack (in local storage)
[x] The ME stores the update and delete URLs for future use (in local storage)
[x] The "unsaved changes" flag is reset (#80)
[ ] The manifest now has the id assigned by the plugin (the permalink URL in this case)

Notes
In future iterations we're going to add more choices here - more places to save.
It might be tabbed, or a long scrolling list of sections. But that's for later. See https://github.com/digirati-co-uk/iiif-manifest-editor/wiki/Saving-IIIF
The ME needs to remember the way the user ends up Saving in the Save As menu, because it will (if it can) perform the same operation without further interaction if the user performs File->Save, or a keyboard shortcut like ctrl+s.

Will be superseded


Fix Windows Expo Export Data  Include \ Problem

windows exported expo metadata path has '\'.But linux server can’t read successful.

Thank you for the contribution!!


feat: distinguish types of dependencies

Summary
This PR adds a new section to the module detail page under the heading Dependency graph; in this section, accordions are shown for the package's dependency relationships:

Transitive packages (the most meaningful to a package consumer)
Dev packages (not meaningful to a package consumer, maybe meaningful to contributors)
Dependents (lightly meaningful to all stakeholders)

This UI optimizes for the above goals, with the Transitive package accordion open by default, and the others closed, but with counts added so that a package's popularity / relevance in the wider package graph can be understood with a quick glance.
Background: I just shipped rules_graalvm, my first BCR package. Due to the polyglot nature of GraalVM, I need to depend on a lot of different rule packages as dev dependencies. I want to make sure downstream users of my package are aware that they don't need to depend on all these packages.
Fixes and closes #62
UI Preview

New section in detail:

Compare the perceived transitive cost of these two screenshots. They depict the exact same library, but with much less mental overhead for a clearer picture.

Side by side:

Subtle details

This PR is layered on top of #102 because it won't properly build otherwise
Aria attributes were used to preserve heading roles, so there should be no accessibility impact despite different tags
Completely native to HTML (no added JS, no added CSS)

A minor nit -- the new accordions when moused over show an I-cursor instead of a hand. Would be nice if we made it cursor: pointer (I'd do it but I don't know what the modern idiom for that is)

@Wyverald i'll fix that on one of my next PRs :) i wanted to keep things as absolutely minimal as possible but I probably could have fit that in.


rebalance callbacks

This pull request adds callback notification hooks to the rebalance process. It's related to #288.

@emmett9001 I was just looking at the callback interface that the new JVM consumer has for this, looking to steal some ideas, and I wonder if it might be worthwhile to do something similar? They define two callbacks, one for partitions that are to be removed, and one for partitions that are to be newly added, with the guarantee that the underlying consumer is not running while the callbacks run.
The purpose of all that seems to be that that helps users who have some external offsets store: if you know a partition is about to be dropped, and you know the consumer is not servicing consume() calls currently, that makes it a safe moment to store that partition's offset in your external store. And for the second callback it's the same -  a safe moment to call reset_offsets(), basically.

@yungchin I've implemented something comparable to the JVM consumer's interface, and I think it's ready for master. One possible difference that I don't actually think is a big deal is the fact that both of these callbacks are triggered after the rebalance is completed. Given that they're both still inside of the rebalance lock, we maintain the guarantee that consumption will not start until the callbacks return. Let me know what you think, and feel free to merge if you like.

Actually I just realized - let me know if you think this is ready, but we'll wait to merge until right before cutting a minor version bump. That will make it easier to keep doing bugfix releases if other things on the 2.1.0 milestone get delayed.

@yungchin I've changed around the rebalance logic to support saving and fetching offsets from an external store, as well as resetting offsets via the partitions_assigned callback. Let me know what you think of the second try.

@yungchin updated with a single callback instead of two. I agree it's significantly simpler and actually more powerful this way.


Rotation fix: was crashing the app

MainActivity.onCreate() was being recalled when device rotated to landscape mode
Since activeProfile, a lateinit property, was being set by the sign-in screen which is only accessed once, the app was crashing due to the uninitialized lateinit property.

This PR fixes the aforementioned issue by locking the app orientation in portrait mode. Not only does this fix the bug, but we also believe that it works better for our app as a whole - which like something like instagram, was not designed with landscape mode in mind.

Detail, but very important for the app ! Great work Ethan.


[Feature][Support Struct] Support select operation in struct type.

What type of PR is this：

[ ] BugFix
[x] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Link to: #10677
Design
1. Support struct type in CREATE TABLE.
Below is CREATE TABLE grammar example. Each StructField supports COMMENT.
CREATE TABLE struct_test(
a INT,
b STRUCT<a: INT> COMMENT 'smith',
c STRUCT<a: INT, b: DOUBLE>,
d STRUCT<a: INT, b: ARRAY<ARRAY<INT>>, c: STRUCT<a: INT> COMMENT 'aa'>
) DISTRIBUTED BY HASH(`a`) BUCKETS 1
PROPERTIES (
    "replication_num" = "1"
);

2. Support for identifying struct types in the Hive catalog.
3. Support . operator
Support . is a little tricky now. In the existing implementation of our system, we can get SlotRef's catalog, DB, tbl, col name in the Parse phase. But if we want to support ., we must infer this information in the Analyze phase.
In this PR, we resolve struct field in Field.java.
4. Support ORC read
5. Design StructColumn in be
In struct_column.h, there are two fields, _fields & _field_names.
For example, if we have a struct type: STRUCT<col1: INT, col2: DOUBLE>.
_fields will have IntColumn and DoubleColumn.
_field_names is a BinaryColumn use to store struct field names, it contains two slice "col1" & "col2".

If we use . operation to retrieve the specific struct field, the _fields & _field_names size will only be one.

used_struct_field_pos
We use used_struct_field_pos to mark which struct field we used.
Example: struct type: col:STRUCT<c1: INT, c2: STRUCT<c1: INT, c2: DOUBLE>>,
We execute sql: SELECT col.c2.c1 FROM table, the usedStructFieldPos value is [1, 0].
We execute sql: SELECT col.c2 FROM table, the usedStructFieldPos value is [1].
We execute sql: SELECT col FROM table, the usedStructFieldPos value is [];
Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] I have added user document for my new feature or new function

run starrocks_fe_unittest

[FE PR Coverage Check]
:heart_eyes: pass : 116 / 139 (83.45%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/ast/QualifiedName.java
0
2
00.00%
[37, 38]

:large_blue_circle:
com/starrocks/catalog/StructType.java
2
9
22.22%
[72, 78, 83, 84, 85, 86, 87]

:large_blue_circle:
com/starrocks/external/HiveMetaStoreTableUtils.java
1
4
25.00%
[249, 250, 251]

:large_blue_circle:
com/starrocks/external/hive/Utils.java
7
10
70.00%
[242, 243, 244]

:large_blue_circle:
com/starrocks/analysis/SlotRef.java
13
16
81.25%
[68, 69, 70]

:large_blue_circle:
com/starrocks/sql/analyzer/Field.java
40
44
90.91%
[96, 126, 143, 155]

:large_blue_circle:
com/starrocks/sql/parser/AstBuilder.java
19
20
95.00%
[4114]

:large_blue_circle:
com/starrocks/sql/analyzer/SelectAnalyzer.java
3
3
100.00%
[]

:large_blue_circle:
com/starrocks/analysis/TypeDef.java
7
7
100.00%
[]

:large_blue_circle:
com/starrocks/sql/plan/PlanFragmentBuilder.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/catalog/Type.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/AST2SQL.java
8
8
100.00%
[]

:large_blue_circle:
com/starrocks/analysis/SlotDescriptor.java
5
5
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/transformer/SqlToScalarOperatorTranslator.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/ExpressionAnalyzer.java
5
5
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/operator/scalar/ColumnRefOperator.java
3
3
100.00%
[]

[FE PR Coverage Check]
:heart_eyes: pass : 119 / 143 (83.22%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/ast/QualifiedName.java
0
2
00.00%
[37, 38]

:large_blue_circle:
com/starrocks/catalog/StructType.java
2
9
22.22%
[72, 78, 83, 84, 85, 86, 87]

:large_blue_circle:
com/starrocks/external/HiveMetaStoreTableUtils.java
1
4
25.00%
[249, 250, 251]

:large_blue_circle:
com/starrocks/external/hive/Utils.java
7
10
70.00%
[242, 243, 244]

:large_blue_circle:
com/starrocks/analysis/SlotRef.java
13
16
81.25%
[68, 69, 70]

:large_blue_circle:
com/starrocks/analysis/SlotDescriptor.java
8
9
88.89%
[277]

:large_blue_circle:
com/starrocks/sql/analyzer/Field.java
40
44
90.91%
[96, 126, 143, 155]

:large_blue_circle:
com/starrocks/sql/parser/AstBuilder.java
19
20
95.00%
[4114]

:large_blue_circle:
com/starrocks/sql/analyzer/SelectAnalyzer.java
3
3
100.00%
[]

:large_blue_circle:
com/starrocks/analysis/TypeDef.java
7
7
100.00%
[]

:large_blue_circle:
com/starrocks/sql/plan/PlanFragmentBuilder.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/catalog/Type.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/AST2SQL.java
8
8
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/transformer/SqlToScalarOperatorTranslator.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/ExpressionAnalyzer.java
5
5
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/operator/scalar/ColumnRefOperator.java
3
3
100.00%
[]

[FE PR Coverage Check]
:heart_eyes: pass : 110 / 137 (80.29%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/ast/QualifiedName.java
0
2
00.00%
[37, 38]

:large_blue_circle:
com/starrocks/catalog/StructType.java
2
9
22.22%
[72, 78, 83, 84, 85, 86, 87]

:large_blue_circle:
com/starrocks/external/HiveMetaStoreTableUtils.java
1
4
25.00%
[249, 250, 251]

:large_blue_circle:
com/starrocks/external/hive/Utils.java
7
10
70.00%
[242, 243, 244]

:large_blue_circle:
com/starrocks/sql/parser/AstBuilder.java
10
14
71.43%
[4621, 4622, 4624, 4628]

:large_blue_circle:
com/starrocks/analysis/SlotRef.java
13
16
81.25%
[68, 69, 70]

:large_blue_circle:
com/starrocks/analysis/SlotDescriptor.java
8
9
88.89%
[277]

:large_blue_circle:
com/starrocks/sql/analyzer/Field.java
40
44
90.91%
[96, 126, 143, 155]

:large_blue_circle:
com/starrocks/sql/analyzer/SelectAnalyzer.java
3
3
100.00%
[]

:large_blue_circle:
com/starrocks/analysis/TypeDef.java
7
7
100.00%
[]

:large_blue_circle:
com/starrocks/sql/plan/PlanFragmentBuilder.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/catalog/Type.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/AST2SQL.java
8
8
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/transformer/SqlToScalarOperatorTranslator.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/ExpressionAnalyzer.java
5
5
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/operator/scalar/ColumnRefOperator.java
3
3
100.00%
[]

[FE PR Coverage Check]
:heart_eyes: pass : 110 / 137 (80.29%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/ast/QualifiedName.java
0
2
00.00%
[37, 38]

:large_blue_circle:
com/starrocks/catalog/StructType.java
2
9
22.22%
[72, 78, 83, 84, 85, 86, 87]

:large_blue_circle:
com/starrocks/external/HiveMetaStoreTableUtils.java
1
4
25.00%
[249, 250, 251]

:large_blue_circle:
com/starrocks/external/hive/Utils.java
7
10
70.00%
[242, 243, 244]

:large_blue_circle:
com/starrocks/sql/parser/AstBuilder.java
10
14
71.43%
[4621, 4622, 4624, 4628]

:large_blue_circle:
com/starrocks/analysis/SlotRef.java
13
16
81.25%
[68, 69, 70]

:large_blue_circle:
com/starrocks/analysis/SlotDescriptor.java
8
9
88.89%
[277]

:large_blue_circle:
com/starrocks/sql/analyzer/Field.java
40
44
90.91%
[96, 126, 143, 155]

:large_blue_circle:
com/starrocks/sql/analyzer/SelectAnalyzer.java
3
3
100.00%
[]

:large_blue_circle:
com/starrocks/analysis/TypeDef.java
7
7
100.00%
[]

:large_blue_circle:
com/starrocks/sql/plan/PlanFragmentBuilder.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/catalog/Type.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/AST2SQL.java
8
8
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/transformer/SqlToScalarOperatorTranslator.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/ExpressionAnalyzer.java
5
5
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/operator/scalar/ColumnRefOperator.java
3
3
100.00%
[]

[FE PR Coverage Check]
:heart_eyes: pass : 110 / 137 (80.29%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/ast/QualifiedName.java
0
2
00.00%
[37, 38]

:large_blue_circle:
com/starrocks/catalog/StructType.java
2
9
22.22%
[72, 78, 83, 84, 85, 86, 87]

:large_blue_circle:
com/starrocks/external/HiveMetaStoreTableUtils.java
1
4
25.00%
[249, 250, 251]

:large_blue_circle:
com/starrocks/external/hive/Utils.java
7
10
70.00%
[242, 243, 244]

:large_blue_circle:
com/starrocks/sql/parser/AstBuilder.java
10
14
71.43%
[4621, 4622, 4624, 4628]

:large_blue_circle:
com/starrocks/analysis/SlotRef.java
13
16
81.25%
[68, 69, 70]

:large_blue_circle:
com/starrocks/analysis/SlotDescriptor.java
8
9
88.89%
[277]

:large_blue_circle:
com/starrocks/sql/analyzer/Field.java
40
44
90.91%
[96, 126, 143, 155]

:large_blue_circle:
com/starrocks/sql/analyzer/SelectAnalyzer.java
3
3
100.00%
[]

:large_blue_circle:
com/starrocks/analysis/TypeDef.java
7
7
100.00%
[]

:large_blue_circle:
com/starrocks/sql/plan/PlanFragmentBuilder.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/catalog/Type.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/AST2SQL.java
8
8
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/transformer/SqlToScalarOperatorTranslator.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/sql/analyzer/ExpressionAnalyzer.java
5
5
100.00%
[]

:large_blue_circle:
com/starrocks/sql/optimizer/operator/scalar/ColumnRefOperator.java
3
3
100.00%
[]


@ not working when used at the beginning of a message

My Setup

Operating System: Win 10
App Version: 2.17.0
Installation type: exe
[x] I have tested with the latest version
[x] I can simulate the issue easily

Description

Current Behavior
whenever @ followed by a username or shortcut is used at the beginning of a message, the mention is not working
Expected Behavior
We should have the @ being acknowledged as a mention and trigger the email without the need to add a space before.

My setup is the same, but I don't have that bug. All mentions are working at the beginning of any message. And in a middle @ works fine.
@ do not work after \ sign and I think it is by design (escape sign)

Humm interesting, @ works fine in the middle of the message but not at the beginning like shown in the new screenshot. Are you running the latest RC windows version?

Are you running the latest RC windows version?

Yes, latest Electron RC version 2.17.0 and latest RC server version 2.3.0

Interesting, and when you do press enter and submit the message, does it come up automatically as a mention? (Underlined in bold and trigger the email?)

Yes. But we don't use email notofocation on mention.

Please test if the latest release did solve this. If not please reopen the issue or create a new one and tell us. I will be closing this one for now.
Thank you!