UI Flickering after updating manually the content (code) of the editor

Hello,
The UserConfig property of the MonacoEditorReactComp allows us  to initialise the content of the editor using wrapperConfig / editorAppConfig / code property.
For example:
const userConfig: UserConfig = {
            htmlElement: rootElem,
            wrapperConfig: {
                ...
                editorAppConfig: {
                    $type: 'classic',
                    languageId: 'typescript',
                    useDiffEditor: false,
                    theme: 'vs-light',
                    code: content,
                },
            },
};

<MonacoEditorReactComp
                    ref={editorRef}
                    userConfig={userConfig}
/>

I would like to push an external update to the current editor code, let's consider  a button that add a new console.log('Hello') to the editor.
My first attempt was using the useState hook:
const [content, setContent ] = useState(initialCode);
And then call the setContent inside of the onClickHandler of the button, but this cause a restart of the editor getting a flickering in the UI.
Then I found that I can access the current value of the editor as follow:
const editor = editorRef.current?.getEditorWrapper().getEditor();
const currentCode=  editor?.getValue();

and I tried to update the value of the editor inside of a useEffect with content as dependency. In this case, I initialised the wrapperConfig / editorAppConfig / code property with an empty string
editor?.setValue(content);
That approach was worst fully crashing the editor.
My third attempt was to try to update it via the updateModel of the MonacoEditorWrapper but it raised an error so the editor was restarted again.
My code
const wrapper = editorRef.current?.getEditorWrapper();
wrapper?.updateModel({code: code});

The new error
No service init on restart
wrapper.ts:85 Starting monaco-editor (15)
editorAppClassic.ts:101 Init of MonacoConfig was completed.
editorAppBase.ts:109 Uncaught (in promise) Error: You cannot update the editor model, because the regular editor is not configured.
    at EditorAppClassic.updateModel (editorAppBase.ts:109:35)
    at MonacoEditorLanguageClientWrapper.updateModel (wrapper.ts:132:31)
    at index.tsx:79:22
    at commitHookEffectListMount (react-dom.development.js:23150:26)
    at commitPassiveMountOnFiber (react-dom.development.js:24931:11)
    at commitPassiveMountEffects_complete (react-dom.development.js:24891:9)
    at commitPassiveMountEffects_begin (react-dom.development.js:24878:7)
    at commitPassiveMountEffects (react-dom.development.js:24866:3)
    at flushPassiveEffectsImpl (react-dom.development.js:27039:3)
    at flushPassiveEffects (react-dom.development.js:26984:14)

When I looked at the editorAppBase.ts Line 109 the exception is raised because the editor is null/undefined.
editorAppBase.ts
async updateModel(modelUpdate: ModelUpdate): Promise<void> {
        if (!this.editor) {
            return Promise.reject(new Error('You cannot update the editor model, because the regular editor is not configured.'));
        }

        this.updateAppConfig(modelUpdate);
        await this.updateEditorModel();
}

I updated my code as follows, but although the error is gone, the editor still is restarted.
const wrapper = editorRef.current?.getEditorWrapper();

if (wrapper?.getEditor()) {
     wrapper?.updateModel({code: code});
}

In the bellow gif you can see the flickering issue using my first approach. Due to the quality of the gif only on the four addition of the console.log you can see the flickering of the strings.

Does anyone know the right way to update the code of the editor in a programatically/manual way?
Here is the code of my demo. It is basically a modification of the reactTs.ts example available in monaco-components repository
reactTs.ts
import React from 'react';
import ReactDOM from 'react-dom/client';
import EditorDemo from './EditorDemo.js';

const comp = <EditorDemo />
const rootElem = document.getElementById('root')!;
const root = ReactDOM.createRoot(rootElem);
root.render(comp);

EditorDemo.ts
import React, { useState } from 'react';
import { MonacoEditorReactComp } from '@typefox/monaco-editor-react';
import { UserConfig } from 'monaco-editor-wrapper';

import 'monaco-editor/esm/vs/basic-languages/typescript/typescript.contribution.js';
import 'monaco-editor/esm/vs/language/typescript/monaco.contribution.js';

import { buildWorkerDefinition } from 'monaco-editor-workers';
buildWorkerDefinition('../../../../node_modules/monaco-editor-workers/dist/workers', import.meta.url, false);

const EditorDemo: React.FC = () => {
    const logMessage = `console.log('hello')`
    const [content, setContent] = useState(logMessage);

    const rootElem = document.getElementById('root')!;
    const userConfig: UserConfig = {
        htmlElement: rootElem,
        wrapperConfig: {
            serviceConfig: {
                enableKeybindingsService: true,
                debugLogging: true
            },
            editorAppConfig: {
                $type: 'classic',
                languageId: 'typescript',
                useDiffEditor: false,
                theme: 'vs-dark',
                code: content
            }
        }
    };

    const addConsoleMessage = () => {
        setContent(`${content}\n${logMessage}`);
    };

    return (
        <>
            <button onClick={addConsoleMessage}>
                Click me!
            </button>
            <MonacoEditorReactComp
                userConfig={userConfig}
                style={{
                    'paddingTop': '5px',
                    'height': '80vh'
                }}
            />
        </>

    );
};

export default EditorDemo;

Hi @rhumbertgz thank you for reporting this. Using updateModel is the correct approach. The underlying monaco-editor-wrapper does not require a restart in this case.
It may be the case that componentDidUpdate has an unidentified problem in the mustReInit detection logic. I will try to re-produce the problems with your example.

@kaisalmen thanks!

@rhumbertgz I have reproduced your issue and the restart detection logic is bad at one point as I suspected. Will work on a fix now...

@kaisalmen thanks for the update 👌

@rhumbertgz #47 is open. There is still a thing that needs to be fixed.

@rhumbertgz #47 is ready for review now. The fixes and others are included in a new preview versions:
https://www.npmjs.com/package/monaco-editor-wrapper/v/3.1.0-next.0


coroutine 'AppleAccount.close' was never awaited

Hello, don't know if this is a bug... but sometimes I get this issue:
/usr/local/lib/python3.11/asyncio/base_events.py:679: RuntimeWarning: coroutine 'AppleAccount.close' was never awaited
  self._ready.clear()
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
ERROR:asyncio:Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7845015c8450>
ERROR:asyncio:Unclosed connector
connections: ['[(<aiohttp.client_proto.ResponseHandler object at 0x78450272cec0>, 2831.831099158)]']
connector: <aiohttp.connector.TCPConnector object at 0x7845015f3f50>
ERROR:asyncio:Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7845015cf090>
ERROR:asyncio:Unclosed connector
connections: ['[(<aiohttp.client_proto.ResponseHandler object at 0x7845015b81a0>, 2832.221270141)]']
connector: <aiohttp.connector.TCPConnector object at 0x7845015f3a50>

Thank you for your work, I'm an android user, and through this I was able to pin point my tags in a Home Assistant map :)

Can confirm, I run into this issue too sometimes. The sync wrapper attempts to clean up when an account object is gc'd, but for some reason the coroutine is never actually awaited, resulting in that warning. It's harmless, but quite annoying.
I haven't really found a solution to this yet, but thanks for filing an official bug report :-)

Would you be willing to try #60 to see if it fixes the issue? i.e.:
pip install git+https://github.com/malmeloo/FindMy.py@fix/coro-never-awaited

It's been much more reliable for me, I hope it's a universal solution.

It seems to be working... I stressed the program... but no error have been shown...

Nice to hear! I'll go ahead and merge the change then, new release should be out in a bit.


OJ-30026-use-jf-ingest-logging

Work to cut over the new standardized logging library to use in Agent.
Need to wait for https://github.com/Jellyfish-AI/jf_ingest/pull/9 to be merged and published on pypi
Test Notes

Build the agent locally, like so: docker build . -t agent_local
Run the new local agent with the following commands:

 DOCKER_HOST="unix://$HOME/.colima/agent/docker.sock"
    mkdir $PWD/jf_agent_output
    docker run --rm \
    --mount type=bind,source=$PWD/config.yml,target=/home/jf_agent/config.yml \
    --mount type=bind,source=$PWD/jf_agent_output,target=/home/jf_agent/output \
    --env-file $PWD/creds.env \
    agent_local --jellyfish-api-base http://host.docker.internal:8000

Verify output to stdout and to logs

mkdir: /Users/gavinpitt/Code/jf_agent/jf_agent_output: File exists
Will write output files into ./output/20231018_131022
Attempting to generate Jira Manifest...
Processing 3 Jira Projects...
Done processing 3 Jira Projects!
Done processing Jira Manifest!
Successfully created Jira Manifest
Attempting to generate Git Manifests...
Generating manifest for instance orthogonal-networks-GH
Processing git instance orthogonal-networks-GH for company orthogonal-networks under github org Jellyfish-AI
Processing 30 repos
Done processing Repos
Processing 103 users
Done processing Users
Attempting upload of 2 manifest(s) to Jellyfish...
Attempting to upload JiraDataManifest_orthogonal-networks_REMOTE_20231018T13:10:27 manifest to s3...
Successfully uploaded JiraDataManifest_orthogonal-networks_REMOTE_20231018T13:10:27 manifest to s3!
Attempting to upload GitDataManifest_orthogonal-networks_orthogonal-networks-GH_Jellyfish-AI_REMOTE_20231018T13:10:30 manifest to s3...
Successfully uploaded GitDataManifest_orthogonal-networks_orthogonal-networks-GH_Jellyfish-AI_REMOTE_20231018T13:10:30 manifest to s3!
Successfully uploaded 2 manifest(s) to Jellyfish!
Obtained Jira configuration, attempting download...
downloading jira fields... ✓
downloading jira projects... ✓
downloading jira project components... ✓
downloading jira versions... ✓
downloading jira users...  ✓
downloading jira resolutions... downloading jira issue types...  ✓
downloading jira issue link types... ✓
downloading jira priorities... ✓
downloading jira boards...: 100%|██████████| 3/3 [00:00<00:00,  3.71it/s]
downloading jira sprints: 100%|██████████| 4/4 [00:05<00:00,  1.50s/it]
downloading issue metadata... ✓
downloading jira issues: 100%|██████████| 312/312 [00:04<00:00, 74.86it/s]
downloading jira worklogs...  ✓
downloading jira custom field options... ✓
downloading jira statuses... ✓
Starting Git download for 1 provided git configurations
downloading github projects... ✓
downloading github users... ✓
downloading github repos...
downloading repos for Jellyfish-AI: 2repos [00:12,  6.20s/repos]
Done downloading repos!
downloading github commits on included branches...
downloading commits for branch develop in repo jellyfish (Jellyfish-AI): 463commits [00:04, 99.93commits/s]
downloading commits for branch main in repo jf_ingest (Jellyfish-AI): 30commits [00:00, 60.43commits/s]
Done downloading commits for included branches!
downloading github prs...
processing prs for jellyfish (81621092): 210prs [00:30,  6.82prs/s]
processing prs for jf_ingest (668351510): 4prs [00:02,  1.69prs/s]
Done downloading github PRs!
Compressing ./output/20231018_131022/diagnostics.json
Sending data to Jellyfish...

Agent Upload from above run:
diagnostics (17).json
jf_agent (45).log

Q: Surely I just missed it - where is the diagnostics.json file being opened?

Q: Surely I just missed it - where is the diagnostics.json file being opened?

The code for this didn't change, but the diagnostics module got moved, so it doesn't show up on this PR (I think)
The specific call is here: https://github.com/Jellyfish-AI/jf_agent/blob/680191622e95beca66bc332e22a8d4998c32d668/jf_agent/main.py#L161

Q: Surely I just missed it - where is the diagnostics.json file being opened?

The code for this didn't change, but the diagnostics module got moved, so it doesn't show up on this PR (I think)
The specific call is here:
https://github.com/Jellyfish-AI/jf_agent/blob/680191622e95beca66bc332e22a8d4998c32d668/jf_agent/main.py#L161

Ahh yeah just found this - thank you!


In scan mode narrator focus gets lost after volume controller.

Actual Result:
In scan mode narrator focus gets lost after volume controller.
Note:

Narrator focus again moves back to music bar on forward navigation.
On backward navigation, correct name property is not defined for music bar and narrator focus jumps to time text present under 'audio'.

Expected Result:
In scan mode narrator focus should visible on every control.
Repro Steps:

Open URL https://microsoft.github.io/BotFramework-WebChat/full-bundle/ in Edge browser.
Start Narrator by pressing "Ctrl + Win + Enter" key.
Navigate to 'Type your message' text box present in bottom of screen, type 'help' and press enter key.
Navigate to 'Show an audio attachment' button and activate it.
Navigate the music bar in scan mode with down arrow key.
Observe that if narrator focus gets lost after volume controller or not.

User Impact:
If narrator focus gets lost at the time of navigation then the user who use scan mode to navigate the page will get confuse as they think there are more controls are present on the page.
Test Environment:
OS: Windows 10
OS Build: 17763.107
OS Version: 1809
Browser: Edge
Attachment:
Narrator_FocusLost.zip

We did not customize the playback controls from the browser. If this bug repro on Edge, this bug should goes to their bucket.
Related to #1358.

Confirmed as external by accessibility team

#HCL;#Accessibility;#HCL_BotFramework_WebChat;A11yMAS;WCAG4.2.10


[WiP] Add knocker support

This implements the interface for django-knocker https://github.com/nephila/django-knocker

Coverage decreased (-0.08%) to 97.241% when pulling 7e4a730bfb4f4cf1ea31a029af423965d13d91cd on feature/knocker into 36af7833afd4664861b4a1f37f2ce225f831574d on develop.

Coverage decreased (-0.08%) to 97.241% when pulling 7e4a730bfb4f4cf1ea31a029af423965d13d91cd on feature/knocker into 36af7833afd4664861b4a1f37f2ce225f831574d on develop.

Coverage increased (+0.02%) to 97.336% when pulling 5868a9facebe23fbc8a9a90c8b6f2603c5015676 on feature/knocker into 36af7833afd4664861b4a1f37f2ce225f831574d on develop.


Healthcheck stack fails to rollback, container stuck in initializing state

Rancher versions:
rancher/server: Rollback from v1.6.15-rc6 to v1.6.14
Healthcheck- Roll back from v0.3.5 to v0.3.3-1
Steps to Reproduce:

Create a cattle setup in v1.6.14
Upgrade to v1.6.15-rc6
Rollback rancher to v1.6.14 and all infra stacks.
Healthcheck stack starts rolls back from v0.3.5 to v0.3.3-1 which fails to complete.
The stopped container( with version rancher/healthcheck:v0.3.5) displays the following logs:

3/13/2018 1:24:22 PMconnect' with port information. Check has been disabled.\n[ALERT] 071/202422 (2241) : Error(s) found in configuration file : /etc/haproxy/haproxy.cfg\n[ALERT] 071/202422 (2241) : Fatal errors found in configuration.\n"
3/13/2018 1:24:22 PMtime="2018-03-13T20:24:22Z" level=error msg="Error applying config: error reloading healthCheck -- reloading haproxy config with the new config changes\n[ALERT] 071/202422 (2241) : parsing [/etc/haproxy/haproxy.cfg:32] : server cattle-31835e4d-f957-4096-ad8b-fca46a815a8e_ff009b14-7cc7-4a6f-8eaa-105506fea6ee_1 has neither service port nor check port nor tcp_check rule 'connect' with port information. Check has been disabled.\n[ALERT] 071/202422 (2241) : parsing [/etc/haproxy/haproxy.cfg:37] : server cattle-31835e4d-f957-4096-ad8b-fca46a815a8e_fcb8f44c-8571-4c65-9ba0-3f0d1dd6e842_1 has neither service port nor check port nor tcp_check rule 'connect' with port information. Check has been disabled.\n[ALERT] 071/202422 (2241) : parsing [/etc/haproxy/haproxy.cfg:42] : server cattle-31835e4d-f957-4096-ad8b-fca46a815a8e_f341e3eb-8a07-4113-bcd4-2a7604de86ba_1 has neither service port nor check port nor tcp_check rule 'connect' with port information. Check has been disabled.

Tested with upgrade and rollback from  v1.6.14 to v1.6.15-rc6 and back to v1.6.14 (after the fix). Healthcheck stack completed the rollback successfully.


Typo in ValidateSet line 97

ValidateSet was ValidaetSet
This causes an error when installing the module and running for the first time.

Thank you.


Improve tutorial in our docs

How could we improve https://github.com/fedimint/fedimint/blob/master/docs/dev-running.md?
Some ideas:

[x] Use mprocs, not tmuxinator

[x] Update screenshot

[ ] On-chain deposits and withdrawals
[ ] Link to UI docs about running the dashboards
[ ] Show them how to use gateway-cli. Maybe show it's balance changing before and after a lightning payment.
[ ] rename to tutorial.md

Removing as @Kodylow is working this and will close on it faster.

@justinmoon  please tell where can I get UI docs for solving 3rd task?


Cherry-pick: renaming to Stake Maturity

Cherry-pick from e2ee0fea4550f3281e5a8e7e168df41c689b1540 wich was merged on main on #13.
ftheirs can you have a look?
I stumbled on a conflict with previous changes on app-icp/tests/ui_tests.cpp not in main, but in develop: https://github.com/LedgerHQ/app-icp/commit/fd9847c577fea8070a80781cb53e850c2f20d60c#diff-86f721431649b48ffe7c4374a0f90dc098e2a9fafa22b16d1c7582217ac68afd
I choose to keep the version already present in develop

Hi @xchapron-ledger, this is already implemented in this commit.
You can find it in this PR that includes several improvements.
There are a couple of functions that were moved from ui_tests.cpp to common.cpp and that's why you might get some errors in the CI. If you compare these commits, you will see that we've added the same check but in different files

Check in common.cpp: https://github.com/LedgerHQ/app-icp/pull/12/commits/ea286668ffde25e82496ecc301f78943edf1c313
Check in ui_tests.cpp: https://github.com/LedgerHQ/app-icp/pull/13/commits/e2ee0fea4550f3281e5a8e7e168df41c689b1540

Do you still need to integrate this in develop branch? Or can we just wait until https://github.com/LedgerHQ/app-icp/pull/12 is review and merged?

Hi @ftheirs , thank for your answer and help.
If the commit from PR#12 can be easily extracted and applied on develop, I think it would be better.

Closing this as #12 as been merged.
The synchronization between main and develop will therefore been done when merging develop in main once the app is deployed on P1.


Fix link

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

@nxtn-staged - thanks for fixing this!


Swift 1.2 support

Hi.
Do you plan to upgrade this project to swift 1.2 ?

+1 yes please support! interfaceOrientation is now deprecated

Same here, needs update :(

Siwft 1.2 support will come as soon as I get a chance to go through it and fix the issues. it shouldn't be much, so if someone wants to do it and make a pull request that would be greatly appreciated as well!

@fahlout  #36  Support Swift 1.2
I have not  update for interfaceOrientation deprecated. Looks like PageMenu still want to support iOS 7


Correctly nest OTel spans

This fixes an issue in the current opentelemetry extension where spans are not correctly nested.
Description
As per https://github.com/strawberry-graphql/strawberry/issues/1275 and a discussion on discord we decided it would be best to use the nested span option in OTel to represent a graphql resolver handling the request.
Here is what spans look like now:

Note that I added a "GraphQL Handling: " prefix to the span name to keep it clear what strawberry is doing for you versus your own spans.
Types of Changes

[ ] Core
[x] Bugfix
[ ] New feature
[ ] Enhancement/optimization
[ ] Documentation

Issues Fixed or Closed by This PR

https://github.com/strawberry-graphql/strawberry/issues/1275

Checklist

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] I have tested the changes and verified that they work and don't break anything (as well as I can manage).

Thanks for adding the RELEASE.md file!

Here's a preview of the changelog:

Nests the resolver under the correct span; prior to this change your span would have looked something like:
GraphQL Query
  GraphQL Parsing
  GraphQL Validation
  my_resolver
  my_span_of_interest #1
    my_sub_span_of_interest #2

After this change you'll have:
GraphQL Query
  GraphQL Parsing
  GraphQL Validation
  GraphQL Handling: my_resolver
    my_span_of_interest #1
      my_sub_span_of_interest #2

Here's the preview release card for twitter:

Here's the tweet text:
🆕 Release (next) is out! Thanks to Michael Ossareh for the PR 👏

Get it here 👉 https://github.com/strawberry-graphql/strawberry/releases/tag/(next)


Request for handling black listed licenses from blackduck

b. FOSS with Blacklisted License
Click here to check license status
FOSS name	FOSS version	License
frame	1	GNU General Public License v2.0 only
ttfunk	1.7.0	GNU General Public License v2.0 or later   - asciidoctorj-pdf-1.6.2.jar!/gems/ttfunk-1.7.0/lib/ttfunk/
com.guicedee.services:bouncycastle	<IP_ADDRESS>	GNU General Public License v3.0 or later  -  jruby-stdlib-<IP_ADDRESS>.jar!/META-INF/jruby.home/lib/ruby/stdlib/org/bouncycastle/bcpkix-jdk15on/1.68/bcpkix-jdk15on-1.68.jar!/org/bouncycastle/cert/

Please do not post outputs of reports for your personal terms and conditions to this project. Besides, the reports is wrong anyway because ttfunk is licensed under the Matz's license for Ruby. If you post this again, you will be prohibited from opening issues in this project.


Labels for svg 'pieces'

If cutting some items, even if they are drawn out, some might be very similar.  It would be nice to attach a label to each piece (possibly a number, with an optional text field - think 20 to 30 characters or so).
This 'legend' could be separate from the parts, but would need to be associated with each part both before and after optimization, so the parts can be identified for use later.
Sorry if this is to wordy.  This should be a long term enhancement, not something I expect could be quickly done.
Thanks for your consideration.

I believe the SVG specification has ability to add name/description to the nodes.  I'm not sure if this is theoretical at this point though - I've not seen SVG software that provided for adding the info.

In most laser cutting software, each part is assigned a specific color and number.

I have found if you set the ID property in the initial software it is preserved through the nesting process.
In inkscape set under (Objects-> Object Properties...) Ctrl-Shift-O . I have been using this to add ids and text info that i can then deal with in the output nested svg. I use it to automatically add label markers in a document. ( NB

i am using the code to make a quiz sheet for building/places  :) )


v1 & v2 chart installation for targeted/provisoned clusters

Added v1 & v2 Charts installation scripts for test scenarios surrounding included rancher charts
Includes support for Rancher 2.5x/2.6x for targeted/provisioned clusters for admin/standard users
v2 Charts installed:
CIS Benchmark
Kiali
Tracing
Istio
Logging
Monitoring
Longhorn
OPA Gatekeepr
Rancher Backups
Neuvector
v1 Charts installed:
monitoring-operator
cluster-monitoring
longhorn
cluster-istio
rancher-logging

Added Longhorn prereq variable and set current defaults for 2.5 and 2.6

This removes the hardcoded version number

The depends_on section for each resource located at the bottom of each resource block with each dependencies on its own line

As per the example here: https://www.terraform.io/language/meta-arguments/depends_on


[Issue report] Failed to emerge chromeos-base/libwidevine-0.0.1

Describe the bug or issue
Hello, I followed the steps in the README.md, and made it to build_packages step, most packages passed, there're about 11 left, I ran a few times, it always errors out at below:
./build_packages --board=rpi4 --nowithautotest

Failed to emerge chromeos-base/libwidevine-0.0.1
libwidevine-0.0.1: 20:41:20 >>> Install chromeos-base/libwidevine-0.0.1 into /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/image/
libwidevine-0.0.1: !!! doexe: /var/cache/chromeos-chrome/chrome-src/src/out_rpi4/Release/libwidevinecdm.so does not exist
libwidevine-0.0.1:  * ERROR: chromeos-base/libwidevine-0.0.1::cros-pi failed (install phase):
libwidevine-0.0.1:  *   doexe failed
libwidevine-0.0.1:  *
libwidevine-0.0.1:  * Build log: /build/rpi4/tmp/portage/logs/chromeos-base:libwidevine-0.0.1:20201223-124119.log
libwidevine-0.0.1:  * Stable log symlink: /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/temp/build.log
libwidevine-0.0.1:  * CWD: /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work
libwidevine-0.0.1:  * S:   /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work
libwidevine-0.0.1:  * QA Notice: file does not exist:
libwidevine-0.0.1:  *
libwidevine-0.0.1:  * 	doexe: /var/cache/chromeos-chrome/chrome-src/src/out_rpi4/Release/libwidevinecdm.so does not exist
>>> 20:41:21 Jobs: 3 of 11 complete, 1 failed                Load avg: 1.70, 2.55, 6.25

 * Messages for package chromeos-base/libwidevine-0.0.1 merged to /build/rpi4/:
 * Log file: /build/rpi4/tmp/portage/logs/chromeos-base:libwidevine-0.0.1:20201223-124119.log

 * ERROR: chromeos-base/libwidevine-0.0.1::cros-pi failed (install phase):
 *   doexe failed
 *
 * Build log: /build/rpi4/tmp/portage/logs/chromeos-base:libwidevine-0.0.1:20201223-124119.log
 * Stable log symlink: /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/temp/build.log
 * CWD: /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work
 * S:   /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work
20:41:21 ERROR   : 2020年 12月 23日 星期三 20:41:21 HKT
20:41:21 ERROR   :  PGID  PPID   PID     ELAPSED     TIME %CPU COMMAND
20:41:21 ERROR   :     8     4     8    09:57:50 00:00:00  0.0 -bash
20:41:21 ERROR   : 31174     8 31174       01:51 00:00:00  0.0  \_ /bin/bash ./build_packages --board=rpi4 --nowithautotest
20:41:21 ERROR   : 31174 31174  3045       00:00 00:00:00  0.0      \_ /bin/bash ./build_packages --board=rpi4 --nowithautotest
20:41:21 ERROR   : 31174  3045  3046       00:00 00:00:00  0.0          \_ ps f -o pgid,ppid,pid,etime,cputime,%cpu,command
20:41:21 ERROR   : Arguments of 31174: ./build_packages '--board=rpi4' '--nowithautotest'
20:41:21 ERROR   : Backtrace:  (most recent call is last)
20:41:21 ERROR   :  build_packages:462:main(), called: die_err_trap
20:41:21 ERROR   :
20:41:21 ERROR   : Command failed:
20:41:21 ERROR   :   Command '( if [[ "${FLAGS_run_goma}" -eq "${FLAGS_TRUE}" ]]; then
20:41:21 ERROR   :     info "Starting goma compiler_proxy."; goma_ctl="${GOMA_DIR:-${HOME}/goma}/goma_ctl.py"; "${goma_ctl}" restart; trap "'${goma_ctl}' stop" EXIT;
20:41:21 ERROR   : fi; sudo -E "${EMERGE_CMD[@]}" "${EMERGE_FLAGS[@]}" "${PACKAGES[@]}" --useoldpkg-atoms="${CRITICAL_SDK_PACKAGES[*]}" --rebuild-exclude="${CRITICAL_SDK_PACKAGES[*]}" )' exited with nonzero code: 1

Describe your setup

Your Raspberry Pi model and spec variant, e.g. 4B with 2GB RAM
I haven't completed building, no device used yet
Your Chromium OS for Raspberry Pi release version, e.g. Chromium OS r77 r3
same version in README.md, m86
Your hardware configuration and setup, e.g. how you have wired the Pi board with any other peripheral connected to it
I haven't completed building, no device used yet

To Reproduce
Steps to reproduce the behavior:

cros_sdk to enter chroot
run ./build_packages --board=rpi4 --nowithautotest command
check shell output

Expected behaviour
expect build_packages pass all steps
Screenshots and/or hardware setup photos
no screenshot, pls check below log
Additional context
logfile: /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/temp/build.log
 * Package:    chromeos-base/libwidevine-0.0.1
 * Repository: cros-pi
 * USE:        arm elibc_glibc kernel_linux userland_GNU
 * FEATURES:   network-sandbox splitdebug userpriv
 * Running stacked hooks for pre_pkg_setup
 *    sysroot_build_bin_dir ...
 [ ok ]
 * Running stacked hooks for post_pkg_setup
 *    python_eclass_hack ...
 [ ok ]
20:41:19 >>> Unpacking source...
20:41:19 >>> Source unpacked in /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work
 * Running stacked hooks for post_src_unpack
 *    asan_init ...
 [ ok ]
 * Running stacked hooks for pre_src_prepare
 *    build_toolchain_catch ...
 [ ok ]
20:41:19 >>> Preparing source in /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work ...
20:41:19 >>> Source prepared.
20:41:20 >>> Configuring source in /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work ...
20:41:20 >>> Source configured.
20:41:20 >>> Compiling source in /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work ...
20:41:20 >>> Source compiled.
 * Running stacked hooks for post_src_compile
 *    python_eclass_hack ...
 [ ok ]
20:41:20 >>> Test phase [not enabled]: chromeos-base/libwidevine-0.0.1
 * Running stacked hooks for pre_src_install
 *    tidy_setup ...
 [ ok ]
20:41:20
20:41:20 >>> Install chromeos-base/libwidevine-0.0.1 into /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/image/
!!! doexe: /var/cache/chromeos-chrome/chrome-src/src/out_rpi4/Release/libwidevinecdm.so does not exist
 * ERROR: chromeos-base/libwidevine-0.0.1::cros-pi failed (install phase):
 *   doexe failed
 *
 * Build log: /build/rpi4/tmp/portage/logs/chromeos-base:libwidevine-0.0.1:20201223-124119.log
 * Stable log symlink: /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/temp/build.log
 * CWD: /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work
 * S:   /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/work
 * QA Notice: file does not exist:
 *
 * 	doexe: /var/cache/chromeos-chrome/chrome-src/src/out_rpi4/Release/libwidevinecdm.so does not exist

Assuming you are building chromium as well from our repo.
You need to check your chrome-root under ${chrome-root}/src/third_party/widevine/cdm/chromeos/arm and if libwidevinecdm.so exist. If not, rerun gclient sync or figure out a way to make sure the missing file is there.

@fydeos-alpha, thank you for the update!
yes, i'm building chromium as well, but i'm using vanilla chromium, it's fetched from google
i checked ${chrome-root}/src/third_party/widevine/cdm/ using both Files from ubuntu os and chroot, there's no chromeos/arm, but all other folders don't have that either ...
i noticed that some files under /build/rpi4/tmp/portage/chromeos-base/libwidevine-0.0.1/ are broken, and libwidevine-0.0.1 is the only one in /build/rpi4/tmp/portage/chromeos-base

is it possible that the temp files for libwidevine are broken? from log i can see, the build was completed, it's saying install failed ...

vanilla chromium doesn't have widevinecdm support, to pass the build, you need to remove widevine from the relevant ebuild files.
Or consider using chromium-raspberry_pi

@fydeos-alpha, oh...
since i've started building with vanilla chromium, how do i remove widevine from ebuild files?

It's registered in fyde-packages-0.0.1.ebuild file, remove/comment the widevine package under RDEPENDas well as from the IUSE

@fydeos-alpha, sorry, i only found chromeos-chrome-86.0.4240.260_rc-r1.ebuild, where do i find fyde-packages-0.0.1.ebuild?
i tried seaching using Files in the chroot.img, the closest file i can find is /chroot/var/cache/edb/dep/mnt/host/source/src/overlays/project-cros-pi/virtual/fyde-packages-0.0.1
DEFINED_PHASES=-
DEPEND=chromeos-base/auto-expand-partition chromeos-base/power_wash_command chromeos-base/fyde-chromedev-flags widevine? ( chromeos-base/libwidevine ) kiosk_demo? ( chromeos-base/fyde-kiosk-demo ) fyde_extension? ( chromeos-base/fyde-shell-daemon-bin )
DESCRIPTION=empty project
EAPI=5
HOMEPAGE=https://fydeos.io
IUSE=kiosk_demo widevine fyde_extension
KEYWORDS=*
LICENSE=BSD
RDEPEND=chromeos-base/auto-expand-partition chromeos-base/power_wash_command chromeos-base/fyde-chromedev-flags widevine? ( chromeos-base/libwidevine ) kiosk_demo? ( chromeos-base/fyde-kiosk-demo ) fyde_extension? ( chromeos-base/fyde-shell-daemon-bin )
SLOT=0
_md5_=c505da669389cb53e51dde188c33e4c8

is this the one to edit?

all files that I was referring to belonged to this current project, it'd be helpful if you have followed the Guide and have them located somewhere outside cros_sdk repo and created symlinks and bind mounts.
search this git repository rather than the choot.img.

@fydeos-alpha, thanks a lot!
i thought they must be files inside chroot.img, i copied this project to overlay folder directly
i edited the 2 files, the build_packages passed!
pls keep this ticket open for a while, i'm going for next step

@fydeos-alpha, last step went wrong, the card is new, please help, thanks a lot!
(cr) (release-R86-13421.B/(7bd3fbb...)) pi@dev ~/trunk/src/scripts $ cros flash usb:// rpi4/latest
Removable device(s) found. Please select/confirm to continue:
  [0]: Generic Mass Storage Device 14.9G (/dev/sdc)
Please choose an option [0-0]:
Input is not an integer
Please choose an option [0-0]: 0
 [###############################################################################################] 100%
The backup GPT table is not on the end of the device. This problem will be corrected by write.
Checking that no-one is using this disk right now ... FAILED

This disk is currently in use - repartitioning is probably a bad idea.
Umount all file systems, and swapoff all swap partitions on this disk.
Use the --no-reread flag to suppress this check.

sfdisk: Use the --force flag to overrule all checks.
partx: /dev/sdc: error updating partition 1
14:14:18: ERROR: Failed copying image to device /dev/sdc
14:14:18: NOTICE: cros flash completed successfully.

the image should work afaik, try it out.

@fydeos-alpha , thanks a lot! the image works, it's booted
sorry to bother you over and over again
when i boot from the image, this error message is in the top screen:
You will not be able to add users because Google API keys are missing. See
https://www.chromium.org/developers/how-tos/api-keys for details.

but i did follow the README.md to add the key in ~/.googleapikeys, is this location in host or chroot? i put in host, btw i do remember see log in build_packages saying they found google key
also, after picking wifi, it stuck in this almost blank window, saying Please wait..., and have been spinning long time ...

shall i wait or what?

but i did follow the README.md to add the key in ~/.googleapikeys, is this location in host or chroot? i put in host, btw i do remember see log in build_packages saying they found google key

.googleapikeys in the host is fine, it gets cloned to chroot too so you should really see it in both places, especially if you remember the log confirmed it was found.
The WSOD is more than likely caused by API issues causing the OS being unable to talk to Google's login services.
Not sure how you've configured and applied API accesses from your GCP account, unfortunately it's out of the scope of this project, can't help you too much on this front.
Comments welcome, issue closed.

@fydeos-alpha
i would like to take this opportunity to express my gratitude to this project, you guys rock!
it's been a very exciting journey to build an entire OS from scratch and be able to use it in raspberry pi!
Awesome job, FydeOS team!


[Bug] Logging sample doesn't work

Describe the bug
At http://cjycode.com/flutter_rust_bridge/feature/logging.html, the sample code given is this:
pub struct LogEntry {
    pub time_millis: i64,
    pub level: i32,
    pub tag: String,
    pub msg: String,
}

// Simplified just for demonstration.
// To compile, you need a OnceCell, or Mutex, or RwLock
// Also see https://github.com/fzyzcjy/flutter_rust_bridge/issues/398
lazy_static! { static ref log_stream_sink: StreamSink<LogEntry>; }

pub fn create_log_stream(s: StreamSink<LogEntry>) {
    stream_sink = s;
}

But, within the create_log_stream rust function, where we assign stream_sink to the value of s, stream_sink is not known. The only occurance of stream_sink occurs within the function and has not been initialised prior. So, as it is, it seems the example doesn't work. Below, we can see the assignation without creation of stream_sink.

Codegen logs with RUST_LOG=debug environment variable
N/A

To Reproduce
No response
Expected behavior
No response
Generated binding code
No response
OS
No response
Version of flutter_rust_bridge_codegen
No response
Flutter info
No response
Version of clang++
No response
Version of ffigen
No response
Additional context
No response

That just demonstrates the idea :) Feel free to PR for a full sample

I'm looking at the sample to try to work out how I can have a stream exposed in rust, that other functions within the rust code can write to. As it stands at the moment I can't get that to even begin to work because the sample doesn't work in it's current form 😭

This is a standard Rust question :) Maybe you need a little bit more familiarity with Rust

That's true, I'm learning Rust at the same time which is proving to be a bit of a challenge. However, as it seems at the moment, the sample code on the page doesn't compile because the variable names refer to variables that don't exist. So it does seem like a genuine documentation issue.
Once I understand more about the underlying tech and I get my stuff to work I'll definitely submit a PR though.

https://github.com/fzyzcjy/flutter_rust_bridge/pull/537/files
Does this work for you?
Take your time!

LGTM. Btw you should handle the Result in the OnceCell, probably via a ?.


Bug: Database Migrations - Problem in resolving constrained table name

Laravel Version
11.19.0
PHP Version
8.3.4
Database Driver & Version
SQLITE
Description
when I was trying to insert into categories table i get this error
   INFO  Seeding database.

   Illuminate\Database\QueryException

  SQLSTATE[HY000]: General error: 1 no such table: main.parent_categories (Connection: sqlite, SQL: insert into "categories" ("name", "slug") values (tech, tech))

the solution was to specify manually constrained table name like this
$t->foreignIdFor(Category::class, 'parent_category_id')->nullable()->constrained('categories')->onDelete('cascade');

categories migration
<?php

use App\Models\Category;
use App\Models\Media;
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     */
    public function up(): void
    {
        Schema::create('categories', function (Blueprint $t) {
            $t->id();
            $t->string('name');
            // before fix
            $t->foreignIdFor(Category::class, 'parent_category_id')->nullable()->onDelete('cascade');
            // afted fix
            $t->foreignIdFor(Category::class, 'parent_category_id')->nullable()->constrained('categories')->onDelete('cascade');
            $t->string('slug');
            $t->foreignIdFor(Media::class)->nullable();
            $t->string('description')->nullable();
            $t->string('status')->default('published');
            $t->timestamps();

            $t->unique(['parent_category_id', 'slug']);
        });
    }

    /**
     * Reverse the migrations.
     */
    public function down(): void
    {
        Schema::dropIfExists('categories');
    }
};

Steps To Reproduce
Create this migration and try to insert into categories
<?php

use App\Models\Category;
use App\Models\Media;
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     */
    public function up(): void
    {
        Schema::create('categories', function (Blueprint $t) {
            $t->id();
            $t->string('name');
            $t->foreignIdFor(Category::class, 'parent_category_id')->nullable()->onDelete('cascade');
            $t->string('slug');
            $t->foreignIdFor(Media::class)->nullable();
            $t->string('description')->nullable();
            $t->string('status')->default('published');
            $t->timestamps();

            $t->unique(['parent_category_id', 'slug']);
        });
    }

    /**
     * Reverse the migrations.
     */
    public function down(): void
    {
        Schema::dropIfExists('categories');
    }
};

What is the bug?
The schema builder does not keep a copy of the model instance. So when calling constrained() it tries to guess the table from the foreign key name.
As you are using a custom foreign key name (due to a self-referencing foreign key), it correctly tries to guess from that name.
From the docs:

... while the constrained method will use conventions to determine the table and column being referenced. If your table name does not match Laravel's conventions, you may manually provide it to the constrained method.

Reference: https://laravel.com/docs/11.x/migrations#foreign-key-constraints
When using a custom foreign key, just provide the table name to the constrained() method.
Also, why not just using category_id as the foreign key name?


fix: recover all metadata from experiments close #703

Thank you, Alejandro, I saw that Michael Zasso Update the nmr-parsers to version 0.2.10 after you did the changes, I have to close this pull request, Many Thank you, you did a great job.


Could you please add titillium web regular font

[x] I agree to follow the Code of Conduct that this project adheres to.
[x] I have searched the issue tracker for a feature request that matches the one I want to file, without success.

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

You can use any font as a web font, https://www.diagrams.net/blog/external-fonts


[Mostly meant for discussion] What are the possibilities of integrating with hugo-academic?

I'm cross-referencing this: gcushen/hugo-academic#1565
I love the styling of zzo! However, as a researcher, I find many of the features from hugo-academic quite desirable. (e.g. publications, posts, slides, talks, authors, and projects.)
I think there's some synthesis that might be mutually beneficial to both hugo-academic and zzo, but am unsure of what that kind of integration would look like. So figured I'd start a conversation between us.
What are your thoughts on this?

The zzo theme already has publications, projects(showcase page), posts, slide(presentation page), talks page.
What do you mean integration.
Since the two themes totally different code base so I don't think the two themes can mutually beneficial.

NB: I think I should be clear about this – I'm not suggesting that you're the only participant in developing some sort of migration/synthesis/what-have-you. I'm mostly looking to see where you stand on the possibility of something like this and what constraints might exist.

So, I think this is an adequate summarization
zzo has many of the features in academic; however, zzo's implementations aren't quite as developed. I would attribute this lag to project age, as academic is going on 4 years old while zzo is about 4 months old.
What I mean by "integration"
Given the current state of both academic and zzo, I think most of the integration would involve:

migrate zzo styling (assets/{js,scss}) to academic
discern an optimal way to setup _layouts to support academic and zzo "skins"
migrate academic to a grid-based CSS system, like zzo has

Certainly, this would not be a singular effort on your end. However, I think some components may start with you (as you're clearly the most knowledgeable of zzo).
My primarily rationale for proposing this transition is that while I prefer zzo's look-and-feel, academic's feature-set is quite thorough and very useful. While zzo could always reach this degree of capability, it's re-inventing the wheel, which seems like a sub-optimal use of time.
A note on hosting an open-source project
I totally get that zzo has a special place in your heart because you can point to it and say "I built this from nothing and it's helping X people." But I also see tremendous value in extending academic's platform with "skins," as the current layout creates a lot of bland websites.
Different code-bases
While it's true that the code bases are different, I'm skeptical to toss up hands just over that – without doing a proper investigation on how difficult adjusting academic and zzo to support each other might be.
A bit of a comparison

The zzo theme already has publications, projects(showcase page), posts, slide(presentation page), talks page.

Agreed. However, many of these lack the feature-set that academic provides, especially in terms of ready-to-use components that can be placed across the site.
Publications
Features in academic:

Reference co-authors (requires a built-in author's layout) – this works on both personal and organization pages
Different presentation layouts based on type of research publication
Filtering is explicit. (I believe zzo's "search" could do this, but it's not as clear that one would strictly extract publications matching the query.)

Posts
Features in academic:

Posts can be attached (analogous to how showcases categorize) to projects, publications, and talks.
Posts may also have slides attached to them.
Posts (and projects, publications, talks, etc.) can be cross-referenced across the site easily (and in some cases automatically).
Multiple authors – specified globally with author profiles. (This also applies to projects, publications, etc.)

NB: I haven't tested the full extent of cross-linking/reference in zzo. From what I've read in the documentation, though, this wouldn't be possible. As showcases are directory-based. series might be able to capture this, but that doesn't work well in the case that a project has multiple posts, publications, talks, and slides.

Slides
Can't comment on – haven't looked into this, but (as the documentation says, you're disinclined to use this, so it's likely not a first-class feature.)[https://zzodocs.netlify.com/docs/pages/presentation/]
Talks
Features from academic:

Cross-linking/referencing I've mentioned earlier.

I'm not suggesting that you're the only participant

In that case, I don't want to participate

what constraints might exist.

We can do anything if we want. But there is a significant amount of time and effort consumed.

however, zzo's implementations aren't quite as developed

No, My theme's implementation is better than Academic

What I mean by "integration"

For each project, development should be done independently. Since the Academic theme not designed dynamic color change, there will be a significant amount of time to do that.
I can make PR regarding styling, but in that case, I insist that my name should be specified in the license file in the Academic repository which is I don't think Cushen will accept this.

without doing a proper investigation on how difficult adjusting academic and zzo

Academic theme using a 3-party library(bootstrap) for styling, And Zzo theme is not using any styling library. So, If there will be integration, Cushen may have to redesigns the styling.

Agreed. However, many of these lack the feature-set that academic provides, especially in terms of ready-to-use components that can be placed across the site.

I don't think Zzo theme lacks the feature-set that academic provides(Just the two theme has different concepts to provide contents). If you want to make change something, open a new issue in this repository. I'll make it better with your suggestions.

I'm not suggesting that you're the only participant

In that case, I don't want to participate

What do you mean by this? Are you looking to be the sole contributor to something like this?
I was stating that you wouldn't be the only person involved in a change like this.

however, zzo's implementations aren't quite as developed

No, My theme's implementation is better than Academic

That's subject to opinion, but all right.

I can make PR regarding styling, but in that case, I insist that my name should be specified in the license file in the Academic repository which is I don't think Cushen will accept this.

What do you mean by this? Are you saying that your name should be present in: https://github.com/gcushen/hugo-academic/blob/master/LICENSE.md 🤔
Would you making further contributions to hugo-academic with style updates that would be made to zzo?

What do you mean by this? Are you looking to be the sole contributor to something like this?
I was stating that you wouldn't be the only person involved in a change like this.

If you want to use an academic theme and want to change the color theme dynamically like zzo theme, ask about it to Cushen(the owner of the academic theme).
If you want to use zzo theme, you can make an issue here.
What you said is not a trivial job to do. The two themes have a different concept and not designed to benefit each other.

What do you mean by this? Are you saying that your name should be present in:

Yes, when If I contribute to the hugo-academic repository.

Would you making further contributions to hugo-academic with style updates that would be made to zzo?

I didn't contribute anything to hugo-academic. Don't have a plan to contribute in the future.

What you said is not a trivial job to do. The two themes have a different concept and not designed to benefit each other.

I'm quite aware of what kind of ask this is... I did web development for about 6 years.
I'm not sure what you mean by "... not designed to benefit each other." – the defining line between zzo and academic seems to be zzo's visual styling. Otherwise the intended audiences seem to overlap quite a bit.

If you want to use an academic theme and want to change the color theme dynamically like zzo theme, ask about it to Cushen(the owner of the academic theme).
If you want to use zzo theme, you can make an issue here.

Personally, I have minimal preference on the ability to allow users to change the color scheme. The main use zzo has, for me, is the visual layout.

I didn't contribute anything to hugo-academic. Don't have a plan to contribute in the future.
But the hugo-academic theme owner accept my name specified the license file, I'll make some contributions

So, I'm not insinuating you contribute or anything of the sort. I'm mostly getting a feel for what your "terms" might be, in the case George is interested in expanding academic's support for alternate themes.

not designed to benefit each other

I think I select the wrong word because of language. I mean, It will take plenty of time to do this ->What I mean by "integration"
I'll wait other people's opinion(mostly George)

Just my 2 cents on this topic. I use zzo theme already.
Merging two projects would be good chunk of work. Anyone who has done web development would agree "just changing layout/visual styling" is not as easy as said.
If still that is something someone wants to do, the project is open sourced  and anyone is free to make the changes. I think the maintainer here has made it quite vocal they don't want to take on the huge task of "integrating" two themes.
What started as a "discussion" issue is now turning into "demanding" extra free work.
Please open a PR to bring parity on either side of the platform or even kick of what you wish to have in the project with a subset PR.
This project is built by the maintainer and is supported by contributions from the community. If someone requires a functionality they open an issue, discuss feasibility as well as provide possible solutions. Then eventually either tries to help by opening a PR or asking for directions from the maintainer itself.

@nisrulz I'm well aware something like this is not simple. To the best of my knowledge, I've not proposed it was simple to begin with – anything that conveyed otherwise was a printed misstep.
I've opened this as a question largely because there's already significant overlap between both projects. The largest distinctions are the support and utilities that academic already has, and the styling that zzo offers.

What started as a "discussion" issue is now turning into "demanding" extra free work.

I'm not sure where you got that idea. I have no intent of demanding work of anyone on open-source. For my own adjustment/self-improvement, can you point out where you see that?

@ionlights Well this can be seen in this thread, the maintainer has voiced that he doesn't see the work done in the direction of merging two projects, citing time and effort. At the same time also mentioned that if there is any possibility of doing some work directly on the academic theme they would want to be cited for their work in the academic theme (be it just license file, its their choice).
Your statements on the other hand have been on the lines of "can you do it?". You have not once suggested a possible solution around how to even hit the problem from the technical side of things. It is pretty much known that there is a lot of work required, yes. But please give something more than an "ask" of doing the work.

However, many of these lack the feature-set that academic provides, especially in terms of ready-to-use components that can be placed across the site.

Would you making further contributions to hugo-academic with style updates that would be made to zzo?

So, I'm not insinuating you contribute or anything of the sort. I'm mostly getting a feel for what your "terms" might be, in the case George is interested in expanding academic's support for alternate themes.

Your constant emphasis on pushing for the maintainer to commit to contributing is disturbing here.
What is really bad that someone made a negative statement and you decided to dump it here:

however, zzo's implementations aren't quite as developed.

In whatever state it is, it is what it is. It is open sourced, Free as in Freedom, piece of code. Respect that. Be empathetic about other people effort and time spent. Some of us do open source work in our free time after work hours. You don't like something, then don't use it. However please stop spreading negative statements made elsewhere within the open source community.
For the most part, the maintainer is not entitled to service your feature request. They are the maintainer of this project, you can make a request and they can decline your request. If you don't like it, fork it and build on your own.


Rollback of remote transaction is not work!

OrientDB Version, operating system, or hardware.

v2.0 SNAPSHOT[ ] - .18[ ] .17[ ] .16[ ] .15[ ] .14[ ] .13[ ] .12[ ] .11[ ] .10[ ] .9[ ] .8[ ] .7[ ] .6[ ] .5[ ] .4[ ] .3[ ] .2[ ] .1[ ] .0[ ]
v2.1 SNAPSHOT[ ] - .16[ ] .15[ ] .14[ ] .13[ ] .12[ ] .11[ ] .10[ ] .9[ ] .8[ ] .7[ ] .6[ ] .5[ ] .4[ ] .3[ ] .2[ ] .1[ ] .0[ ]
v2.2 SNAPSHOT[ ] - .rc1[ ] .beta2[ ] .beta1[ ]
-v3.0 SNAPSHOT[ x]

Operating System

[ ] Linux
[ ] MacOSX
[x] Windows
[ ] Other Unix
[ ] Other, name?

Expected behavior and actual behavior
I try to rollback transaction in 'in-memory' database. State of transaction is:
[main] 07:51:18,184 DEBUG org.hibernate.ogm.datastore.orientdb.transaction.impl.OrientDBLocalTransactionCoordinator: transaction info: OTransactionOptimistic [id=2, status=BEGUN, recEntries=1, idxEntries=1]
Then I execute same code for 'rremote' database I get next string in log:
[main] 07:54:38,332 DEBUG org.hibernate.ogm.datastore.orientdb.transaction.impl.OrientDBLocalTransactionCoordinator: transaction info: OTransactionOptimistic [id=2, status=BEGUN, recEntries=0, idxEntries=0]
Steps to reproduce the problem
public static void main(String[] args) {
ODatabaseDocumentTx db = new ODatabaseDocumentTx("remote:localhost/trtest").
open("admin", "admin");
db.getMetadata().reload();
System.out.println(db.getMetadata().getFunctionLibrary().getFunctionNames());
db.begin(OTransaction.TXTYPE.OPTIMISTIC);
OFunction func = db.getMetadata().getFunctionLibrary().getFunction("executeQuery".toUpperCase());
HashMap<Object,Object> funcArgs = new HashMap<>();
funcArgs.put("insertQuery", "insert into Poem content {"name":"Wazaaaaa2","id":"84d33e4f-7f43-4181-9a69-ebeb9e628ccc"};");
func.execute(funcArgs);
System.out.println(db.getTransaction().toString());
db.rollback(true);
//db.commit(true);
    db.close();
}

Code of function is:
return orient.getDatabase().command(insertQuery);
Result of execution of the Java example is rollback not work and You can see new record.

Hi @schernolyas
This is an expected behavior in 2.2.x, see http://orientdb.com/docs/2.2.x/Transactions.html#isolation
This will change in 3.0, as we are introducing remote transactions
Thanks
Luigi

Actually @schernolyas is trying 3.0

ouch, I didn't notice the flag... sorry, switching labels again
Luigi

Hi @lvca !
Okey.  I will test the feature

hi,
Yes is missing a bit, fixing it.
Regards

implemented, closing

HI @tglman !
Not work!

@tglman , before annoncing .... check your code!

@tglman  see to state of sesion:
2.OTransactionOptimistic [id=1, status=BEGUN, recEntries=0, idxEntries=0]
no changes in transaction :-(

Well before announcing i've done a basic test case : https://github.com/orientechnologies/orientdb/blob/14217affcf08b20eb58b76ca6d967ce883770371/server/src/test/java/com/orientechnologies/orient/server/tx/RemoteTransactionSupportTest.java#L77
the tests creates 2 records one before the transaction and one inside the transaction, change them in tx, with a server side query and count the result of changes, after rollback the transaction and check with a server side query that it actually have only the value before tx, and it works.
I'm going to add some tests on the status client side to see if there are problem in there.
Regards

Hi,
I included a test case also with the check of the status: https://github.com/orientechnologies/orientdb/blob/af71491e4e5daf2acf51c287e07ea3a8aa740ada/server/src/test/java/com/orientechnologies/orient/server/tx/RemoteTransactionSupportTest.java#L100 and all seems fine i run it and double checked the status server side and was fine also that, anyway that was covered by the unit tests on server side operations: https://github.com/orientechnologies/orientdb/blob/14217affcf08b20eb58b76ca6d967ce883770371/server/src/test/java/com/orientechnologies/orient/server/OConnetionExecutorTransactionTest.java#L244
So i'm not sure yet where is the problem, Regards

Hi @tglman !
Today, I get sources and retest. Problem not fixed!

@tglman I can send project for testing ... if you want

hi @schernolyas,
That will be really helpful.
Regards

Hi @tglman
It is maven project. Command: mvn exec:java -Dexec.mainClass="ru.schernolyas.odocumenttest.App"
odocumenttest.zip

hi @schernolyas,
I did run the test cases and did some fixes about it, more will come anyway, and I'm not sure if everything will land in the M1, for example we where thinking to deprecate the "execute" of the functions, in favour of execution by sql statement (ex: select myFunc(:arg) ), another important topic about this is that the command executed with the old command(new OCommandSQL("...")).execute() not support the transaction, and they may never support it, this method is going to be deprecated in the final, so use instead db.command("...")
Hope this help

Hi @tglman !
Do you mean this http://orientdb.com/docs/master/Java-Query-API.html ?

if yes .... @tglman  I will correct my example and check.

hi @schernolyas,
yes and have a look also to this: http://orientdb.com/docs/docs_review_30/java/Document-Database.html is our working in progress review of the documentation

Hi @tglman !
A lot of thanks!!!! I will analyse the article and test.

Hi @tglman !!!!
A lot of thanks!!!!! I test rollback of remote transaction.  It works correctly!!!!

@schernolyas thanks for helping us to fix this.

Hi @lvca !
No problem! Please fix problem with @RID during transaction :-)


Request - support for Bolier

Hi there,
I'm looking for something similar for my Vaillant Vaillant Ecotec Plus 32 (boiler) + sensoHOME VRT 380f + sensoNET
I have tried with my app account and I can log in correctly, but it does not show any device.
Do you think I can use this for the installation I have at home?
Thanks in advance 👍

Are you using the myVAILLANT app for your setup? If yes, you could try turning on debug logging for this integration, refreshing it, and posting the results here.

Yes, I use the myVAILLANT app.
I think I'm doing something wrong or I'm missing something to configure :-(
Thanks for your help!
2023-02-28 16:25:35.905 ERROR (MainThread) [custom_components.mypyllant] Unexpected error fetching myVAILLANT data: 2 validation errors for Circuit
heating_curve
field required (type=value_error.missing)
min_flow_temperature_setpoint
field required (type=value_error.missing)
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 239, in _async_refresh
self.data = await self._async_update_data()
File "/config/custom_components/mypyllant/init.py", line 129, in _async_update_data
data = [
File "/config/custom_components/mypyllant/init.py", line 129, in
data = [
File "/usr/local/lib/python3.10/site-packages/myPyllant/api.py", line 198, in get_systems
system = System(
File "/usr/local/lib/python3.10/site-packages/myPyllant/models.py", line 115, in init
self.circuits = [Circuit(system_id=self.id, **c) for c in self._raw_circuits]
File "/usr/local/lib/python3.10/site-packages/myPyllant/models.py", line 115, in
self.circuits = [Circuit(system_id=self.id, **c) for c in self._raw_circuits]
File "/usr/local/lib/python3.10/site-packages/pydantic/main.py", line 342, in init
raise validation_error
pydantic.error_wrappers.ValidationError: 2 validation errors for Circuit
heating_curve
field required (type=value_error.missing)
min_flow_temperature_setpoint
field required (type=value_error.missing)

@joselaya could you try again with version v0.0.19? Thanks to https://github.com/signalkraft/myPyllant/pull/3 the missing fields are now optional.
This sort of problem may pop up a few more times while you're setting up this component, because I had no way of testing which data the myVAILLANT API returns for different installations. Please turn on debug logging for this integration if you encounter another problem and add it to this issue.

@signalkraft
Hi, I am very happy today! This is already Working, I don't see all the entities (like for example the energy consumption)...but the most important thing, which is the boiler control, is already there!
Cooling Allowed in Circuit 0
Domestic Hot Water 0
Error sensoHOME Ok
Online Status sensoHOME Ok
Zone 1 (online)
I have been trying to integrate my boiler to HA for many months and I couldn't find anything... I thought about spending some extra money changing the thermostat, which means a BIG saving for me.
Let me know how I can buy you a coffee and I'll be happy to do it! 👍

Good night,
Congratulations on the component I have installed.
We come from monitoring our machines with jonh30's ebusd, we have a lot of information. If you need any information or help, do not hesitate to ask.

@joselaya I'm happy to hear that! Positive feedback like that is good enough for me, but thanks for the coffee offer :heart:


(#72) Fix print fmt-specifier that causes cc failure on macOSX

As reported in issue #72, couple of files are failing to compile on macOSX. This commit fixes those failures by using long long print specifier, PRIu64.
Things seem to work fine on macOSX for $ make -f cert_utility.mak.

Are we sure this is the only place needed?

@yelvmw -- received confirmation from @jlmucb that this fix is good to go. I'm going to push this to /main shortly.

----- Forwarded Message -----
From: John Manferdelli
To: Aditya Gurajada
Sent: Sunday, May 21, 2023 at 02:33:08 PM PDT
Subject: Re: About fix for issue # 72 - printf build failure on macOSX
I'm good with it.  Assigning it to me was a mistake.  Go ahead and merge


Fix hyperband example in 12_kubeflow

{
"type": "Failed",
"status": "True",
"reason": "ExperimentFailed",
"message": "Suggestion has failed",
"lastUpdateTime": "2020-09-05T19:58:46Z",
"lastTransitionTime": "2020-09-05T19:58:46Z"
}

cleaned up


Any plans on iresnet?

Thx for sharing your works!
Any plans on making pretrained iresnet backbone (the one used in official arcface) ?

The r50 swish model shared in readme/accuracy is similar with iresnet. Just using swish instead of PReLU. No further plan training the exactly same one using PReLU, as the r50 model on Glint360K is good enough.

Thanks!


swagger-ui middleware does not allow explicit api-docs path

If you use /swagger.json as your apiDocs operation for the swagger-ui middleware, the Swagger document is not served when you access that path.

The problem comes from the line https://github.com/apigee-127/swagger-tools/blob/master/middleware/swagger-ui.js#L129
indexOf does an strict equals, and not always the apiDocsPaths variable contains the whole path requested via URL.
var isApiDocsPath = apiDocsPaths.indexOf(path) > -1;


Question

This package prevents a User from being logged in more than once. It destroys the previous session when a User logs in and thereby allowing only one session per user.

Does this mean I can leave the login page without guest:web middleware?

The guest middleware just checks if a user is logged in. This package checks if a user is not logged in twice, for example in two different browsers.

That is so cool. I think I am gonna dive deep into the source code. Thanks.


Run reindex

What does this change?
As part of https://github.com/wellcomecollection/platform/issues/5804, we need to run the full pipeline to re-populate all production Elaticsearch indexes. We could do this with the existing production indexes but that would be a bit risky — we have not run the full pipeline in a long time and therefore might run into unexpected issues.
To mitigate the risks, this PR refactors the Terraform code to allow us to clone the full concepts pipeline stack (in the same way we can clone the catalogue pipeline). This way we can keep existing Elasticsearch indexes unchanged and create new indexes which we can populate with the new data before testing with the catalogue API. If something goes wrong in production, we can easily revert to the existing indexes.
This also adds a new stack (2024-10-28) which will be used for https://github.com/wellcomecollection/platform/issues/5804, but the Terraform changes to create this stack have not been applied yet.
How to test
Run terraform plan on the new 2024-10-28 stack. Does the terraform diff look reasonable?
How can we measure success?
This should allow us to run multiple production versions of the concepts pipeline in parallel for testing purposes.
Have we considered potential risks?
This does not make any changes to the existing concepts pipeline stack, so risks should be minimal.

This looks good to me, the only thing that gives me pause is that i'm sure that something like this must have been a consideration when building the concepts pipeline so the lack of it now makes me think it's a design decision somehow?
Other note is around switching to the new index, that all looks fine and would operate the same way as the works index, new stack here creates a new site of secrets with es config parameterised by pipeline date. Switching over is a PR to catalogue API 👍


Figure out an ergonomic way to verify clients current metadata state

We want to ensure that what the client considers the current valid metadata matches our opinion of the same.
It should be easy for each unitttest to verify this even multiple times during the test run.

is it enough to verify that the version of each metadata is what we expect? or should we actually compare the file to the file on the repository? I think maybe the latter...
there's likely several designs that would work: one idea is a method in our UnitTest based class (that does not exist yet. Assume the class knows about the RepositorySimulator and ClientRunner). That method would get a list of roles that we expect to be in client cache and would then compare for each role the metadata in local cache to the metadata in the RepositorySimulator. Then the check in the test would be e.g. self.assert_client_cache(["root", "timestamp"]) for a test where client refresh ended after timestamp

I think maybe we're close to something reasonable:

assert requests to repository:
repo.metadata_statistics == [("root", 1), ("timestamp", None)]
repo.artifact_statistics == [("artifact", ("aa61e...acd81")]
assert client trusted roles and downloaded artifacts:
client.trusted_roles() == [("root", 1)] or client.version("root") == 1
client.get_downloaded_target_bytes() == [b"file 1 content", b"file 2 content "]

not the prettiest API but seems to do the job


why confidence value for face recognition always 0.0

Hi @bryantobing12! Thanks for this. Unfortunately, I will need a bit more context to your question. Can narrow down the solution quicker then.

Seeing that there hasn't been any activity in the past 3 months, I'm closing this issue. Feel free to re-open it if necessary


It is hoped that it can normally use non-English languages such as Chinese

Is your issue REALLY a bug?

[X] My issue is indeed a bug!
[X] I am not crazy! I will not fill out this form just to ask a question or request a feature. Pinky promise.

Is there an existing issue for this?

[X] I have searched the existing issues.

Is this issue related to iced?

[X] My hardware is compatible and my graphics drivers are up-to-date.

What happened?
I know that widgets like Button can use .shaping(text::Shaping::Advanced) for shaping text. However, if the entire project is in Chinese, it's inconvenient to use .shaping(text::Shaping::Advanced) in various widgets or wrap it in a function. Additionally, widgets like Checkbox cannot use .shaping(text::Shaping::Advanced). I hope this issue can be fixed (I suggest making .shaping(text::Shaping::Advanced) the default for text).
What is the expected behavior?
It can normally use Chinese and other non-English languages
Version
master
Operating System
Windows
Do you have any log output?
No response

Checkboxes have a .text_shaping() method exactly for this. And you can make your own helpers to not have to do that every time, like this:
mod widget_helpers {
  /// Creates a new [`Checkbox`].
  ///
  /// [`Checkbox`]: crate::Checkbox
  pub fn checkbox<'a, Message, Theme, Renderer>(
      label: impl Into<String>,
      is_checked: bool,
  ) -> Checkbox<'a, Message, Theme, Renderer>
  where
      Theme: checkbox::Catalog + 'a,
      Renderer: core::text::Renderer,
  {
      Checkbox::new(label, is_checked).text_shaping(text::Shaping::Advanced)
  }

  pub fn button<'a>(text: impl Into<Text<'a>>) -> Button<'a, Message> {
      button(text.into().shaping(text::Shaping::Advanced))
  }

  /// Creates a new [`Text`] widget with the provided content.
  pub fn text<'a, Theme, Renderer>(
      text: impl text::IntoFragment<'a>,
  ) -> Text<'a, Theme, Renderer>
  where
      Theme: text::Catalog + 'a,
      Renderer: core::text::Renderer,
  {
      Text::new(text).shaping(text::Shaping::Advanced)
  }
}

Then instead of importing the normal checkbox, button, text from iced::widget you import them from this widget_helpers (name is just an example) and use them normally like this:
use widget_helpers::*;

pub fn view(&self) -> Element<Message> {
  checkbox("Whatever you want", true).into();
}

Other widgets like the radio, toggler, pick_list also have the same method for text shaping. Text inputs I believe use advanced shaping by default and that's why they don't have it...

Maybe it ispossible to auto update shaping according to the string content.
There is a function is_ascii from std.
If it can be done, does it have any value?
If it have value, I may give it a try to make it work.

不是哥们，我的button为什么调用不了.shaping(text::Shaping::Advanced)，求指点


oned.conf: Separate LOG/SYSTEM to LOG/SYSTEM and LOG/VM

Description
There is need an opportunity to select different behavior for writing the VM logs.
I want:

Write system logs into stdout
Write VM logs into files (to make them readable from sunstone interface)

Use case

No collisions when using RAFT and logging on shared system.

Tight integration with systemd and micro service architecture.
I'm preparing special helm-chart which deploys OpenNebula on Kubernetes. See kube-opennebula project
I want to be able use kubectl logs command for see the system log and use sunstone for see the VM related logs

Interface Changes
oned.conf configuration file:
 LOG = [
   SYSTEM      = "std",
+  VM          = "file",
   DEBUG_LEVEL = 3
 ]

Additional Context
I've tried to redirect oned.log to stdout like:
ln -sf /dev/stdout /var/log/one/oned.log

But openebula just stops writing any log there after initialization

Progress Status

[ ] Branch created
[ ] Code committed to development branch
[ ] Testing - QA
[ ] Documentation
[ ] Release notes - resolved issues, compatibility, known issues
[ ] Code committed to upstream release/hotfix branches
[ ] Documentation committed to upstream release/hotfix branches

This is still desirable change.


Update dependencies and add access to more DB options

Hi,
My problem:
my DB has nearly 700 tables and the column query (GetCoulmnsFromEntity) needs about 2mins to finish. But it breaks after 15s
To be able to use your model generator I need to increase the requestTimeout of the MSSQL ConnectionPool.
Solution

Upgrade the outdated npm packages.
The MSSQL npm package will match the current documentation.
make requestTimeout  (and other options?) accessible from your package.

This would also solve https://github.com/Kononnable/typeorm-model-generator/issues/185
Thank you.

Implemented and released in<EMAIL_ADDRESS>under timeout option(a month ago).


f

في أربعاء، ٢٦ أبريل، ٢٠٢٣ في ٨:٤٨ ص، كتب github-actions[bot] <
@.***>:

Message that will be displayed on users' first issue
—
Reply to this email directly, view it on GitHub
https://github.com/rayan8338070/https-github.com-rayan8338070-console.log-Hello-World-/issues/2#issuecomment-1522820793,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7EXW2MK4LI7LEBKZSX4MP3XDCZJRANCNFSM6AAAAAAXL5NONA
.
You are receiving this because you authored the thread.Message ID:
<rayan8338070/https-github.com-rayan8338070-console.
@.***>


NullIsFalse should keep the initial condition

NullIsFalse would be better if the view could display the original condition

Was already fixed, published now, thanks for reporting!


Does the SaaS Accelerator integrate with MSAL (MS Authentication Library)

Does the SaaS Accelerator link somehow to the MSAL (Microsoft Authentication Library)?  I see in the SaaS Accelerator Admin Portal that when I click on the Subscription Details that I can see the Azure Tenant ID of the subscriber.
It would be nice if the SaaS Accelerator provided a simple way to Authorize and Authenticate a subscriber.
I've been following various Microsoft tutorials on Authentication and Authorization, including SSO (single sign on) but I'm struggling to understand how to implement them.  The closest thing I've found is MSAL for Node, which is what my Excel Add-in is based on.
I have developed an Excel Add-In that I will be offering on the Microsoft Partner Center as an Office Add-in under Microsoft 365.  I also have a Commercial Marketplace SaaS offer that I'll be offering as a Transactable Offer.  Then under the Offer Setup I can link my Excel add-in to my SaaS (transactable) offer and they will show up as a single offer on AppSource.  At least that is my understanding.

I believe I found what I was looking for: https://www.youtube.com/watch?v=V_G4pOy0Sdo


refactor: using cobra and create subcommands

@tstromberg
This is a refactor to make it a bit easier for future changes. If you like this I will continue on that and make it cleaner and remove some duplicate code.
Just in this way now to open this WIP PR to see what do you think.
But instead of having the --kind we split in subcommand and then we can have this
$ ./pullsheet
pullsheet - Generate spreadsheets based on GitHub contributions

pullsheet generates a CSV (comma separated values) & HTML output about GitHub activity across a series of repositories.

Usage:
  pullsheet [command]

Available Commands:
  help           Help about any command
  issue-comments Generate data around issues
  issues         Generate data around issues
  leaderboard    Generate leaderboard data
  prs            Generate data around pull requests
  reviews        Generate data around reviews

Flags:
  -h, --help                help for pullsheet
      --log-level string    the logging verbosity, either 'panic', 'fatal', 'error', 'warning', 'info', 'debug', 'trace' (default "info")
      --repos strings       comma-delimited list of repositories. ex: kubernetes/minikube, google/pullsheet
      --since string        when to query from
      --title string        Title to use for output pages
      --token-path string   GitHub token path
      --until string        when to query till
      --users strings       comma-delimiited list of users

Use "pullsheet [command] --help" for more information about a command.

and using cobra we have some handy helpers 😄
please let me know your thoughts, if you disagree feel free to close it.
thanks!

Ok, I will continue on the refactor

@tstromberg the initial refactor is done, let me know what you think, we can improve more in other follow-ups 😄
Added some missing license header and updated the readme

Looks great. Thank you for organizing the code - it's more readable now.


cloudapi: use Recover middleware to handle panics

Recover middleware recovers from panics anywhere in the
chain & prints stack trace
This pull request includes:

[ ] adequate testing for the new functionality or fixed issue
[ ] adequate documentation informing people about the change such as

[ ] create a file in news/unreleased directory if this change should be mentioned in the release news
[ ] submit a PR for the guides repository if this PR changed any behavior described there: https://www.osbuild.org/guides/

Ah @diaasami discussed this yesterday.
So by default a panic will not crash the webserver of course, but the client will just get an empty reply. Using this, which simply calls recover(), it will make it to the errorhandler and return a 500 at least. And it will log the error using echo.Logger which with some minor work we can hook up to logrus, instead of stderr.
That said they'd probably get the ErrorNotHTTPError error code, which is true of course but not very informative? Is it worth just writing our own and returning a specific error, ErrorRecoveredFromPanic or something?

That said they'd probably get the ErrorNotHTTPError error code, which is true of course but not very informative? Is it worth just writing our own and returning a specific error, ErrorRecoveredFromPanic or something?

I do not think an error without details and message would be helpful for the client, may be only for metrics.

That said they'd probably get the ErrorNotHTTPError error code, which is true of course but not very informative? Is it worth just writing our own and returning a specific error, ErrorRecoveredFromPanic or something?

I do not think an error without details and message would be helpful for the client, may be only for metrics.

Yea ErrorRecoveredFromPanic is about as useful as ErrorNotHTTPError, plus the details of those errors should really only be seen by us as who knows what they might contain.

I think some generic 500 makes sense and details in the logs. Don't think we really need to say it was a panic, but don't have a strong opinion.

Agreed, this is fine as is.


Verify and fix code format automatically by Spotless

By this PR, we verify code automatically in CI. For instance, this build was failed because it has wrongly formatted code. Then reviewer can focus not on code format but on important things.
Spotless also provides automatic fix, we can run ./gradlew spotlessApply then it will fix all problems in the project.

This is just a question.
Does this PR introduce format lint with spotless on travisci?

Does this PR introduce format lint with spotless on travisci?

spotlessCheck task depends on check task, so it will run in the CI build:
https://github.com/spotbugs/spotbugs-gradle-plugin/blob/84b55ebfd723bdfb6898be5cacc372499b8ff64b/.travis.yml#L42
However spotlessApply does not run in CI for now.

Is this going to reformat the whole codebase at once?
Won't that mean a huge whitespace change in the commit history?

@ThrawnCA if we apply google java format, it is possible. Current change set doesn't contain big change, because we apply minimal format rules only.

Hello, can we merge this PR? Then please approve.
I think we don't need to add more rules in this timing.


Improve description in OpenShift templates

This PR improves the way the templates are displayed in the OpenShift catalog:

Add Apache icon (no Kafka icon available)
Add description of what the templates do
Add link to Barnabas repo
Categorize the tamples

Kafka goes into Messaging and Data stores
Kafka Connect goes into Messaging

I am not a lawyer, but using the Apache icon might be problematic since it's trademarked. I've not read  all of their trademark policy, but while it might qualify as "nominative use" (and thus be OK) it might also be interpreted as "software product branding" (and thus not be allowed), depending on your interpretation of whether the thing in the catalog is barnabas, or Kafka itself. It might be worth getting the opinion of someone who is a lawyer.

@tombentley Fair enough ... so what about using the envelope icon? Or the topology icon from PatternFly?

Since, if we end up writing a UI of our own, it would probably be based on patternfly (and since enmasse itself has a patternfly-based UI) I would be inclined towards their topology icon.

@tombentley Ok, changed.

@ppatierno The formatting IMHO looks better this way in the catalog.
On Nov 7, 2017 11:45, "Paolo Patierno"<EMAIL_ADDRESS>wrote:

@ppatierno commented on this pull request.
In kafka-inmemory/resources/openshift-template.yaml
https://github.com/EnMasseProject/barnabas/pull/85#discussion_r149330228
:

@@ -2,6 +2,19 @@ apiVersion: v1
kind: Template
metadata:
name: barnabas

annotations:
openshift.io/display-name: "Apache Kafka (Ephemeral storage)"
description: >-

 This template installes Apache Zookeeper and Apache Kafka clusters. For more information

 about using this template see https://github.com/EnMasseProject/barnabas

 WARNING: Any data stored will be lost upon pod destruction. Only use this

is there a reason for this two blank lines ?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/EnMasseProject/barnabas/pull/85#pullrequestreview-74704668,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFZXR3Wi_ou2Uhemmhtz1BrdN3f5nfH4ks5s0DTZgaJpZM4QUbeE
.

@scholzj maybe this is the first reason why I don't like the "description" annotation. The formatting in the UI dependens on how you format the "description" annotation text in your YAML file which should be used for describing resources and not this kind of metadata around it. Of course I'm not saying to change or remove annotations but this kind of formatting then produces a worst formatting in the YAML imho :-(

@scholzj maybe this is the first reason why I don't like the "description" annotation. The formatting in the UI dependens on how you format the "description" annotation text in your YAML file which should be used for describing resources and not this kind of metadata around it. Of course I'm not saying to change or remove annotations but this kind of formatting then produces a worst formatting in the YAML imho :-(

Yeah, it looks strange in the YAML format. If you want we can remove the warning completely. Or we can remove the empty lines and put it into the text.

Maybe we can start to use "kafka" in the tags list ? It's not possible because tags come from a fixed catalog ... just read from OpenShift documentation ;)

Yeah, you put there whatever you want. But unless it is a defined as a category in the OpenShift installation it will be useless :-(.

Yeah, it looks strange in the YAML format. If you want we can remove the warning completely. Or we can remove the empty lines and put it into the text.

Oh no I was just saying that it's not a real good way of formatting text but it's the only way to do that in this space I guess so we have to live with that.


Multiple apps always compile all apps

Bug Report or Feature Request (mark with an x)
- [ x] bug report -> please search issues before submitting
- [ ] feature request

Versions.
@angular/cli: 1.1.1
node: 7.7.4
os: darwin x64
@angular/animations: 4.2.2
@angular/common: 4.2.2
@angular/compiler: 4.2.2
@angular/core: 4.2.2
@angular/forms: 4.2.2
@angular/http: 4.2.2
@angular/platform-browser: 4.2.2
@angular/platform-browser-dynamic: 4.2.2
@angular/router: 4.2.2
@angular/cli: 1.1.1
@angular/compiler-cli: 4.2.2
@angular/language-service: 4.2.2

Repro steps.
After install globally new ng and start a project just made a kick start for multiple app. Get the current project and double it on two projects. Different names on angular-cli to split compilation but cli always compile the two projects.
Current structure:

Current angular-cli config:

Main-a.ts:

Main-b.ts

The log given by the failure.

Here you can see the verbose output from compilation that it complies app-a and app-b when the command has the parameter to compile only app-a.

Desired functionality.
Compilation only for the app assigned on the argument.
Mention any other details that might be useful.

Current i found that if i split different sources it will work as expected.

As you can see if i define for each "root" an application with the respective files in .angular-cli.json it works with no problem. We should have a clean documentation of how should be defined multiple apps.

I have a similar approach mentioned by @miguelramos, but if I build my app, I can see some Modules that are never referred in the first app.
I'll create a new repo with some examples and post it here. I'm glad to know I'm not the only one though.

UPDATE.
I think it's related to my LazyLoaded Modules. It seems the angular-cli is reading random files and not following the imports. So it's creating all LazyModules even thouhg my app2, doesn't need some of the lazyloaded modules from app1.

Thanks for reporting this issue. This issue is now obsolete due to changes in the recent releases. Please update to the most recent Angular CLI version.
If the problem persists after upgrading, please open a new issue, provide a simple repository reproducing the problem, and describe the difference between the expected and current behavior.


Clean up DatasetInfo and Dataset docstrings

This PR cleans up the docstrings for DatasetInfo and about half of the methods in Dataset.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Create "Your First Laser Cut" article

I'd like to have a no-frills article that walks folks through how to use the laser cutters. The goal is to have a completely inexperienced person scan a QR code at the laser, then be able to walk through the process of using the Glowforge lasers without any external help.
In scope:
Uploading a file.
Selecting material from Glowforge presets.
Changing items from engraves to cuts to scores.
How the Glowforge separates the file into items.
Changing order of items.
Positioning artwork on material.
Two rules of laser cutting: don't leave cut unattended and talk to staff before using external materials.
Out of scope:
Design (they should cut a sample file we provide)
In-depth tutorial on Glowforge interface

Please check the document that I've uploaded.

@kevinarne, I've updated the doc.

This looks really good, I made a few minor tweaks, but am very pleased with it. Hoping to test it this week with some of the other staff.


bugfix for stage_meta_basic mostly

Coverage decreased (-0.005%) to 10.316% when pulling cbb7d9afb1f4483b33e4acd3f296e5f72c201cbf on aappling-usgs:develop into 954797dbd986dcfee40352d482cb9fc30182d052 on USGS-R:develop.


Better cache analytics trough custom User-Agent #50

As part of the work on the S3 cache GC, we discovered that most of our Fastly traffic is coming from North America. Could this be primarily GitHub traffic?
It would be interesting if this action could set the "user-agent-suffix" Nix setting with the following info:

the name of the action
which github org it's being used on

This would allow us to build a better understanding of the usage pattern of the cache.
I'm going to post this to the other Nix install actions as well.

To not duplicate the discussion here, I'll post on https://discourse.nixos.org/t/tracking-nixos-cache-usage-by-user-agent instead.


avoid passing nils to Printf() during HTTP Debug mode

I've been staring at logs from the agent in HTTP Debug mode a whole bunch recently. I noticed the request logs always started like this:
2020-07-20 21:05:15 DEBUG  ERR: %!s(<nil>)
POST /v3/jobs/3a242e02-9ff7-4a2e-8e80-939bc30231c8/artifacts HTTP/1.1
Host: agent.buildkite.com
User-Agent: buildkite-agent/3.23-beta.1.x (linux; amd64)

.... and the response logs started like this...
2020-07-20 21:05:16 DEBUG
ERR: %!s(<nil>)
HTTP/1.1 201 Created
Transfer-Encoding: chunked
Cache-Control: max-age=0, private, must-revalidate

The potential error that we're trying to log is almost always going to be nil. Serialising the request/response into bytes will almost never fail.
I was unreasonably irritated by the little %!s(<nil>) for every request, so I've added some conditionals to make the log output warning-free.

Yes, so good!


Does rocketmq support Dead-Letter-Queue?

Does rocketmq support Dead-Letter-Queue?

Yes @hepyu ，but if your consuming business  failure many times, it will be delivered to the DLQ


Creat the UI for share

From @amitabhm21 on July 26, 2018 4:23
Reference the UI guidelines for share
Copied from original issue: Microsoft/Access2Justice#280

Issue resolved/complete.


Volume Percentage Calculator

This calculator calculates Volume percentage by taking volume of solute and volume of solution as input.
Please assign this issue to me under JWOC.

@S-ishita go for it.


docs: Make it more prominent that show_submodules is needed for recursivley documenting submodules

https://github.com/mkdocs/mkdocs/discussions/3608#discussioncomment-8934981

Closed in favor of meta-issue https://github.com/mkdocstrings/python/issues/199.


variable sharing between C# & F#?

I wonder if the engineering work to make it happen implicitly is a lot, and if it was already considered and dismissed.
I find it unnatural to "share variables" when it is not about crossing runtimes (such as dotnet to javascript, etc.).
I should be able to define a cell with a function and a variable in F#, and use it in next cell in C#, no ceremony involved, it should work with additional CLI languages so long the infrastructure to make it happen is extensible.
I overall think it could work with netmodules, but I don't know how the dotnet backend works.

We've had some discussions around this kind of implicit variable sharing. It can certainly work and we already have the APIs to do it, so it would be possible to implement this using a .NET Interactive extension. Here's a quick naive example that shows the basic flow:

There are a few caveats:

The more kernels involved, the chattier this will get.
Variables might get overwritten accidentally.
Sharing variables in-process will fail if the type isn't understood by the target kernel (e.g. types from NuGet packages that were installed in one kernel but not the other, C# anonymous types, F# option types, tuples, etc.)

These can probably be solved with enough bookkeeping and some thinking about the right user experience.
Related: #2873
@sharoncxu

@jonsequitur, thanks this gives a nice peek at how things are wired 🙂.
I'm wondering if it would make sense to de-correlate the 1 to 1 relationship between kernel and language, and basically have a kernel per runtime, and have each "kernel as runtime" potentially support several languages?
I can see similar considerations: using javascript, typescript, and other language that target the javascript runtime together?
For example, F# in context of polyglot notebooks is in special spot, F# code can be valid in CLI, javascript, python and some other runtimes in the future.
I assume it could turn to be the same with C#.
I'm sorry this seems to challenge what lays behind the current implementation of kernels, and bring some UX challenges, if this would be considered a good route for this project.

Kernel and language are uncorrelated in the sense that the .NET Interactive architecture isn't opinionated about them. It's incidental that the dotnet-interactive tool loads C#, F#, and PowerShell kernels in the same process. You can connect additional instances out-of-process using proxy kernels. You might want, for example, a C# 10 kernel and a C# 11 kernel in the same notebook. This can be accomplished by running one out-of-process. Another example is the CSharpProjectKernel (i.e. the backend for the next version of Try .NET) which is a C# kernel that compiles code in one process and emits assemblies to be run using WASM in another.

I can see similar considerations: using javascript, typescript, and other language that target the javascript runtime together?

JavaScript in Polyglot Notebooks is executed in the web view context. We also have experimental Playwright-powered browser kernels where the JavaScript runs in an external browser:

For example, F# in context of polyglot notebooks is in special spot, F# code can be valid in CLI, javascript, python and some other runtimes in the future.

Yes! Paweł Stadnicki's work, which you might be referring to, is a beautiful example of this: https://twitter.com/florence_dev/status/1671150700259315717?s=20


Rename apiKey() to credential() in FormRecognizer and TextAnalytics ClientBuilder

Fixes #10737

/azp run java - textanalytics - ci


Dataset insertion benchmark

xref: https://github.com/pydata/xarray/pull/7221

[ ] Closes #xxxx
[ ] Tests added
[ ] User visible changes (including notable bug fixes) are documented in whats-new.rst
[ ] New functions/methods are listed in api.rst

ok naming is always hard. I tried to pick a good name.


Helm Chart doesn't contain schedule for backups?

Thank you for the latest PGO, it's amazing, and fully Kubernetes, no more command line pgo:)
I'm hoping it's me, but I don't see anywhere in the HELM values.yaml file for the backup schedule, did I just not see it?
I'm hoping I can add to the template, but was hoping smarter HELM people than me would

@jfmatth do you mean something like this?
backups:
  pgbackrest:
    configuration:
      secret: pgo-s3-creds
    global:
      repo1-path: /postgres-operator/repo1
      repo1-retention-full: "14"
      repo1-retention-full-type: time
    repos:
      - name: repo1 #backup repo to keep backup on s3 if you're using s3
        schedules:
          full: "0 8 * * *"
        s3:
          bucket: "s3-bucket-name"
          endpoint: "s3.amazonaws.com" #s3 endpoint
          region: "us-east-1" #s3 region
      - name: repo2 #local volume to keep backup locally
        schedules:
          full: "0 8 * * *"
        volume:
          volumeClaimSpec:
            storageClassName: gp3 #(whatever the storageClassName you have, ignore if you're using default)
            accessModes:
            - "ReadWriteOnce"
            resources:
              requests:
                storage: 500Gi #specify local volume  size here

This one does 4am UTC but you can use https://crontab.guru/ to populate your schedules.
Hope this helps!

@nawarajshahi Thank you for the response :)
Yes and No, it gives me more insight to the details of CRON for PGO, but i was really hoping to see a HELM chart in the examples, but it's harder than it looks after googling for HELM cronjob
I'll have a look over and work it into my environment.
thanks again

@jfmatth  this is worked for me:
for the helm values.yaml:
pgBackRestConfig:
  global:
    repo1-retention-full: "4" # Keep 4 full backups
    repo1-retention-diff: "7" # Keep 7 differential backups
    repo1-type: gcs
    repo1-path: /dev-backup

  configuration:
  - secret:
      name: pgo-gcs-creds # GCS credentials
  - configMap:
      name: pgbackrest-config # pgbackrest config

  repos:
  - name: repo1
    schedules:
      full: "0 1 * * 0" # Weekly full backup on Sundays at 1 AM
      differential: "0 1 * * 1-6" # Daily differential backup on Mon-Sat at 1 AM
    gcs:
      bucket: "my-bucket"

  manual:
    repoName: repo1
    options:
    - --type=full

And for pgo-gcs-creds and  pgbackrest-config
apiVersion: v1
kind: Secret
metadata:
  name: pgo-gcs-creds
  namespace: pg
stringData:
  gcs-key.json: |-
    {
    Your gcs key
    }
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: pgbackrest-config
  namespace: pg
data:
  db.conf: |-
    [global]
    compress-level=6
    start-fast=y
    process-max=20


using custom driver

Is it possible to use Helium with a custom driver, such as undetected-chromedriver?

Yes. Use Helium's set_driver(...) function.


Error with token generation

My script used to work perfectly well till Nov 5. From today showing the error.
line 21, in kite_trade
self.kite_loginer.update_access_token()
line 39, in update_access_token
request_token = self._get_request_token()
line 65, in _get_request_token
return json.loads(resp.text)['token']
KeyError: 'token'

Myscript looks like this
resp = s.get(KITE_CONNECT, params={'api_key': self.api_key})             return json.loads(resp.text)['request_token']

@vividr plz guide

@vividvilla plz guide

Request token is supposed to be copied from redirect URL after successful Kite connect login flow. Seems like you are typing to automate it so I am not sure what you are doing wrong. You and ask your questions on Kite connect forum here.