fix: small parts after #903

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

Bug fix

What is the current behavior? (You can also link to an open issue here)

There are some problems with rendering Small Parts in the Timeline view after #903 was merged.

What is the new behavior (if this is a feature change)?

Other information:

Status

[ ] Code documentation for the relevant parts in the code have been added/updated by the PR author
[ ] The functionality has been tested by the PR author
[ ] The functionality has been tested by NRK

Codecov Report
Patch coverage: 41.66% and project coverage change: -11.63 :warning:

Comparison is base (7ef64c8) 68.06% compared to head (5140e7a) 56.44%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@             Coverage Diff             @@
##           master     #921       +/-   ##
===========================================
- Coverage   68.06%   56.44%   -11.63%
===========================================
  Files         280      472      +192
  Lines       34916    74847    +39931
  Branches     4659     3693      -966
===========================================
+ Hits        23767    42244    +18477
- Misses      10697    32552    +21855
+ Partials      452       51      -401

Impacted Files
Coverage Δ

meteor/client/lib/MeteorReactComponent.ts
0.00% <0.00%> (ø)

meteor/client/lib/UIStateStorage.ts
0.00% <0.00%> (ø)

meteor/client/lib/clientAPI.ts
0.00% <0.00%> (ø)

meteor/client/lib/data/mos/plugin-support.ts
66.29% <0.00%> (-0.38%)
:arrow_down:

meteor/client/lib/dev.ts
0.00% <0.00%> (ø)

meteor/client/lib/downloadBlob.ts
0.00% <0.00%> (ø)

meteor/client/lib/popperUtils.ts
0.00% <0.00%> (ø)

meteor/client/lib/reactiveData/reactiveData.ts
0.00% <0.00%> (ø)

...teor/client/lib/reactiveData/reactiveDataHelper.ts
71.69% <0.00%> (+12.80%)
:arrow_up:

meteor/client/lib/resizeObserver.ts
0.00% <0.00%> (ø)

... and 27 more

... and 437 files with indirect coverage changes

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

@alvancamp I've added screenshots for the before/after. This may not be an issue, if your particular rundown does not have Segments with very long and very short Parts at the same time.


Netbios: Fails to disable when NIC has link down

Problem description
When a NIC has link down it fails to set the NIC to disabled.
Verbose logs
PowerShell DSC resource DSC_NetBios failed to execute Set-TargetResource functionality with error message: System.InvalidOperationException: An error result of '84' was returned when attemting to set NetBIOS for Interface 'Intel(R) 82574L GigabitNetwork Connection #2' configuration to 'Disable'.
+ CategoryInfo : InvalidOperation: (:) [], CimException
+ FullyQualifiedErrorId : ProviderOperationExecutionFailure
+ PSComputerName : node01

The SendConfigurationApply function did not succeed.
+ CategoryInfo : NotSpecified: (root/Microsoft/...gurationManager:String) [], CimException
+ FullyQualifiedErrorId : MI RESULT 1
+ PSComputerName : node01

DSC configuration
NetBios DisableNetBios
{
    InterfaceAlias = 'Ethernet'
    Setting        = 'Disable'
}

Suggested solution
Check wehter the NIC has link down and set through registry instead.
Operating system the target node is running
Windows Server 2019

PowerShell version and build the target node is running
WPS 5.1

NetworkingDsc version
8.2.0

Hi @johlju - there are two possible approaches here:

Implement a fall-back method that sets the registry setting in the link is down. How would we detect this - is there an exception that is thrown or do we need to first detect this some other way?
Only use the registry setting method - regardless of link-state?

Any thoughts? It seems like an easy enough change, but option 1 will require good unit tests that validate the approach. Either way, I'd recommend a proxy function is created that can implement this (make it easier to test).

Thanks for the quick response @PlagueHO. We got this on a machine, but submitted the issue for a colleague of mine and asked him to look into a way to possible resolve this, so we could propose a PR. I’m hoping we can get back with more information around this. 😊

My assumption is that the setting won't be read from the registry except on specific adapter events. So, setting it that way for adapters that have a link up won't disable NetBios immediately. But if we can verify this then we could just implement the registry method always.

This was fixed via PR#479.

@phbits - you are quite correct! v9.0.0 has now been released and it has this fix in it. @johlju - can you check to see if this new version solves the issue?

I close this while we investigate if this has been fixed. Thanks @phbits!


renderProp followup (doc corrections & console.log removal)

I found some issues while reviewing #1863 after it was merged. This follow-up resolves them.

One test run is failing, but it doesn't seem related to my changes. Maybe restarting the test run in CI is enough.


feat: add function history_query/1

As discussed in #64, history_query/1 offers much more flexibility than the old history/2

@narrowtux please check again when you have a chance :smiley:


Setup reathedocs build

Add readthedocs.yml and create the Scalpel[docs] extra.

@tristanlatr  Thanks, this is a indeed a very good way to handle. I will try to use all slots for each of Python module files in this project.

Permissions have been updated.


fix: use dev/xvda as default volume for flatcar

pulled out of the gpu feature branch to get it landed asap.
The upstream/base image is not offering an /dev/sda1 volume, instead just a xvda. We need to match the upstream image block device setup.

https://github.com/kubernetes-sigs/image-builder/blob/master/images/capi/packer/ami/flatcar.json#L14 <- used upstream as well

https://kinvolk.io/docs/flatcar-container-linux/latest/installing/cloud/aws-ec2/#instance-storage


Dev tools, Speech recognition, Sync, IE

Addition of
Dev tools
Speech Recognition
Update to
IE Mode
Sync

Docs Build status updates of commit 15fe16d:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/privacy-whitepaper.md
:warning:Warning

Details

microsoft-edge/privacy-whitepaper.md

Line 1, Column 1: [Warning-author-missing] Missing required attribute: 'author'. Add the current author's GitHub ID.
Line 1, Column 1: [Warning-title-missing] Missing required attribute: 'title'. Add a title string to show in search engine results.
Line 12, Column 0: [Warning-h1-not-first] Markdown content is not allowed before H1.
Line 184, Column 0: [Suggestion-disallowed-heading] Heading 'Feedback' matches the text of a disallowed Docs template heading. NOTE: This Suggestion will become a Warning in late September, 2020.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 870448a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/privacy-whitepaper.md
:bulb:Suggestion

Details

microsoft-edge/privacy-whitepaper.md

Line 184, Column 0: [Suggestion-disallowed-heading] Heading 'Feedback' matches the text of a disallowed Docs template heading. NOTE: This Suggestion will become a Warning in late September, 2020.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 9080c40:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/privacy-whitepaper.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

#sign-off

Docs Build status updates of commit da2e523:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/privacy-whitepaper.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

#sign-off and merged.


conda-forge opencv now depends of ffmpeg

If we directly depend on ffmpeg we can get rid of the ffmpeg-feature dependence and, specially, have consistent versions for all the stack (thinking of pyav and opencv).
But if we decide to also depend on a full-blown ffmpeg package, then:

We get ffmpeg executables from conda-forge on top of the PATH
We do not control what ffmpeg was built with, so licenses and features (conda-forge ffmpeg is quite slim at the moment) are out of our control.
We add a compulsory dependence / download

means that ffmpeg paths need to be configurable everywhere; 2 and 3 that building ffmpeg packages on top of conda-forge's one should be needed and useful to us (for example, we could have a non-gpl feature controlling the version we provide externally, while still using gpled stuff when running in-house).

Another option would be to keep our ffmpeg-feature and just remove the ffmpeg dependency in our opencv builds.

Closing this becasuse it is being taken care of in #7


How to use nprintml's model to predict pcap and get accurate Label

What's up?
Hello, I encountered some problems when using nprintml machine learning to train the ids data set. There is relatively little information in this area. I hope you can help analyze it.

First, I downloaded the ids datasets under netml case studies under nprint-datases from https://drive.google.com/drive/folders/15Axxx-5d4HLHjPJb9dudyPQKGfRaoxQz
I compressed traffic.pcapng.gz to get traffic.pcapng, I used pcapml to extract pcap, pcapml -M traffic.pcapng -O ids/
Extracted about 30,000 pieces of ids pcap data to the dataset directory for training, and obtained the model nprintml -L labels.txt -a pcapng --pcap_dir dataset/ -4 -t -u -c 5, if you do not add -c here If 5 parameters are used, the error

error: ValueError: Number of classes in y_true not equal to the number of columns y_score
may occur.

After the training is completed, an nprintml directory will be generated in the current directory, with the training results of run-xxxxxx in the directory.
Next, we need to use the model to predict the test data. At this point, I don’t know how to import the test data for testing, such as pcap, npt. I refer to other people's methods to use a pcap file that has not participated in training, convert it into an npt file (nprint -P xxxx.pcap -4 -t -u -W out.npt), and then use pandas.read_csv to import it, maybe from this step started wrong.
Use the following code for data prediction

from autogluon.tabular import TabularPredictor
import pandas as pd

if __name__ == '__main__':
	predictor = TabularPredictor.load('/home/hj/nprintml/run-xxxxxxxxxx-xxxx/model')
	data = pd.read_csv('out.npt',index_col=0)
	result = predictor.predict(data)
	print(result)

KeyError error occurs when running, None of Index

The head of my out.npt file is "

src_ip,ipv4_ver_0,ipv4_ver_1,ipv4_ver_2, ..., udp_cksum_14, udp_cksum_15

", and the prediction data requires the head format to be "

src_ip,pkt_0_ipv4_ver_0,pkt_0_ipv4_ver_1,pkt_0_ipv4_ver_2,...,pkt_ 4_udp_cksum_14,pkt_4_udp_cksum_15

" , pkt_x here is related to the previous prediction parameter -c 5
7. I use a script to replace the head of out.npt with "

src_ip,pkt_0_ipv4_ver_0,pkt_0_ipv4_ver_1,pkt_0_ipv4_ver_2,...,pkt_4_udp_cksum_14,pkt_4_udp_cksum_15

". At this time, the prediction results can be obtained, and there will be a warning "

WARNING: Int features without null values" at train time contain null values at inference time! Imputing nulls to 0. To avoid this, pass the features as floats during fit!
”

The prediction results obtained are not consistent with the label of pcap.

Can you provide the training result model of ids and guide how to predict the pcap or npt data files exported by nprint. The prediction results should be as accurate as possible. Thank you.
Due diligence

[X] I have read the docs

Have you tried this in the docker image, or is this done on your machine?


Update startGemFire.sh

Replace creation of test region with correct region for demo and deploy jar and create lucene index similar to windows bat script

Fixing .sh script as discussed


Format String

We have used GoogleUtilities 6.2.5 pod file as per our need. Some VAPT points are mentioned in below picture. Kindly help us asap.
Issue Summary
An attacker may control the format string argument to initWithFormat:arguments:() at GULLogger.m line 164, allowing an attack much like a buffer overflow.An attacker may control the format string argument allowing an attack much like a buffer overflow.
Issue Screenshot:

VAPT points, clearly mentioned that

An attacker may control the format string argument to initWithFormat:arguments:()

How to solve this issue ? Can u guide me ?

The arguments passed here do not come from the command line. It is a varargs list passed from an another internal function.

In other words, this an internal API that intentionally behaves this way.
In general you’ll get better mileage running scanning tools like these against your own code.


French accent not encoded

Hi,
I use your library with English and french string. All English strings are properly retrieved but some french word containing accent are skipped. For example Activité projet will be display in PDF like Activit projet.
Do you have an idea about that?
Thanks

Hi Antoine,
I don't think that it is related to this library cause this library doesn't enforce any kind of text encoding on C# string datatype.
Anyway I will take a look into French, and I'll write tests for it ASAP.

Okay thanks a lot, I'll look at my code. Maybe I'm doing something wrong :)

You're welcome :-) Anyway if you need any need help with your code I'm available.

Cool it's really kind of you. I'll ask you if I need some help 😄


Connect to previous is failing

Describe the bug
Used 0.7.2 for the first time today and Connect to previous does nothing.
To Reproduce
Steps to reproduce the behavior:
F1, then select Connect to previous
Expected behavior
I expect it to put up my list of connections.
Screenshots

Environment (please complete the following information):

Extension version [e.g. 0.7.2]
IBM i OS version [e.g. 7.4]

Additional context

I can create a new connection and it connects, but I can't use Connect to previous.
I deleted all connections and connection settings from settings.json but left in the code-for-ibm1.actions.  Then I created a new connection and added an IFS shortcut.  Tried F1 and Connect to previous again.  It signed me off and showed the (new) connections listing in the sidebar. Tried F1 and Connect to previous again. .Still no luck.
Created another new connection. Tried F1 and Connect to previous again.  Still no luck.
If I add a new connection with an existing name, then it connects and honors the configuration settings I originally has for this configuration.

Settings.json:
{
    "telemetry.enableTelemetry": false,
    "editor.fontLigatures": false,
    "editor.renderWhitespace": "none",
    "editor.cursorStyle": "block",
    "overtype.labelInsertMode": "Ins",
    "overtype.labelOvertypeMode": "Ovr",
    "[Log]": {
        "editor.fontSize": 11
    },
    "terminal.integrated.shell.windows": "C:\\WINDOWS\\System32\\cmd.exe",
    "window.zoomLevel": 1,
    "update.mode": "start",
    "[javascript]": {
        "editor.defaultFormatter": "vscode.typescript-language-features"
    },
    "[html]": {
        "editor.defaultFormatter": "vscode.html-language-features"
    },
    "workbench.activityBar.iconClickBehavior": "focus",
    "workbench.list.openMode": "doubleClick",
    "npm.exclude": "",

    "workbench.editorAssociations": {
        "*.ipynb": "jupyter.notebook.ipynb"
    },
    "editor.fontFamily": " Lucida Console, Inconsolata, Consolas,  'Courier New', monospace",
    "workbench.colorTheme": "Visual Studio Dark",
    "git.autofetch": true,
    "editor.minimap.enabled": false,
    "code-for-ibmi.rpgleContentAssistEnabled": true,
    "code-for-ibmi.rpgleIndentationEnabled": true,
    "code-for-ibmi.logCompileOutput": true,
    "code-for-ibmi.actions": [
        {
            "type": "member",
            "extensions": [
                "RPGLE",
                "RPG"
            ],
            "name": "Create Bound RPG Program (CRTBNDRPG)",
            "command": "CRTBNDRPG PGM(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) OPTION(*EVENTF) DBGVIEW(*SOURCE) TGTRLS(*CURRENT)"
        },
        {
            "type": "member",
            "extensions": [
                "SQLRPGLE"
            ],
            "name": "Create SQL ILE RPG Program (CRTSQLRPGI)",
            "command": "?CRTSQLRPGI OBJ(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) CLOSQLCSR(*ENDMOD) OPTION(*EVENTF) DBGVIEW(*SOURCE) TGTRLS(*CURRENT)"
        },
        {
            "type": "member",
            "extensions": [
                "RPGLE",
                "RPG"
            ],
            "name": "Create RPG Module (CRTRPGMOD)",
            "command": "?CRTRPGMOD MODULE(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) OPTION(*EVENTF) DBGVIEW(*SOURCE) TGTRLS(*CURRENT)"
        },
        {
            "type": "member",
            "extensions": [
                "CMD"
            ],
            "name": "Create Command (CRTCMD)",
            "command": "?CRTCMD CMD(&OPENLIB/&OPENMBR) PGM(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) ALLOW(*ALL) CURLIB(*NOCHG) PRDLIB(*NOCHG)"
        },
        {
            "type": "member",
            "extensions": [
                "CMD"
            ],
            "name": "Create Command (Allow Return Variables - CRTCMD)",
            "command": "?CRTCMD CMD(&OPENLIB/&OPENMBR) PGM(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) ALLOW(ALLOW(*BPGM *IPGM *BMOD *IMOD) ) CURLIB(*NOCHG) PRDLIB(*NOCHG)"
        },
        {
            "type": "member",
            "extensions": [
                "pf",
                "lf"
            ],
            "name": "Delete File (DLTF)",
            "command": "?DLTF FILE(&OPENLIB/&OPENMBR)"
        },
        {
            "type": "member",
            "extensions": [
                "dspf"
            ],
            "name": "Create Display File (CRTDSPF)",
            "command": "?CRTDSPF FILE(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) SRCMBR(&OPENMBR) RSTDSP(*NO) REPLACE(*YES)"
        },
        {
            "type": "member",
            "extensions": [
                "pf"
            ],
            "name": "Create Physical File (CRTPF)",
            "command": "?CRTPF FILE(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) SRCMBR(&OPENMBR) SIZE(*NOMAX) MAXMBRS(1)"
        },
        {
            "type": "member",
            "extensions": [
                "lf"
            ],
            "name": "Create :Logical File (CRTLF)",
            "command": "?CRTLF FILE(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF)"
        },
        {
            "type": "member",
            "extensions": [
                "CLP",
                "CLLE"
            ],
            "name": "Create Bound CL Program (CRTBNDCL)",
            "command": "?CRTBNDCL PGM(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) OPTION(*EVENTF) DBGVIEW(*SOURCE)"
        },
        {
            "type": "member",
            "extensions": [
                "CLP",
                "CLLE"
            ],
            "name": "Create CL Program (CRTCLP)",
            "command": "?CRTCLPGM PGM(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) OUTPUT(*PRINT) REPLACE(*YES)"
        },
        {
            "type": "member",
            "extensions": [
                "PNLGRP"
            ],
            "name": "Create Panel Group (CRTPNLGRP)",
            "command": "?CRTPNLGRP PNLGRP(&OPENLIB/&OPENMBR) SRCFILE(&OPENLIB/&OPENSPF) SRCMBR(&OPENMBR) OPTION(*EVENTF)"
        },
        {
            "type": "member",
            "extensions": [
                "GLOBAL"
            ],
            "name": "Create Program (CRTPGM)",
            "command": "?CRTPGM PGM(&OPENLIB/&OPENMBR) MODULE(*PGM) ENTMOD(*FIRST) BNDSRVPGM(*NONE) BNDDIR(*NONE) ACTGRP(*ENTMOD) TGTRLS(*CURRENT)"
        },
        {
            "type": "streamfile",
            "extensions": [
                "rpgle"
            ],
            "name": "Create Bound RPG Program (CRTBNDRPG) with inputs",
            "command": "CRTBNDRPG PGM(${buildlib|Build library|&BUILDLIB}/${objectname|Object Name|&NAME}) SRCSTMF('${sourcePath|Source path|&FULLPATH}') OPTION(*EVENTF) DBGVIEW(*SOURCE) TGTRLS(*CURRENT)"
        },
        {
            "type": "streamfile",
            "extensions": [
                "RPGLE",
                "RPG"
            ],
            "name": "Create Bound RPG Program (CRTBNDRPG)",
            "command": "CRTBNDRPG PGM(&BUILDLIB/&NAME) SRCSTMF('&FULLPATH') OPTION(*EVENTF) DBGVIEW(*SOURCE) TGTRLS(*CURRENT)"
        },
        {
            "type": "streamfile",
            "extensions": [
                "SQLRPGLE"
            ],
            "name": "Create SQL ILE RPG Program (CRTSQLRPGI)",
            "command": "?CRTSQLRPGI OBJ(&BUILDLIB/&NAME) SRCSTMF('&FULLPATH') CLOSQLCSR(*ENDMOD) OPTION(*EVENTF) DBGVIEW(*SOURCE) TGTRLS(*CURRENT)"
        },
        {
            "type": "streamfile",
            "extensions": [
                "RPGLE",
                "RPG"
            ],
            "name": "Create RPG Module (CRTRPGMOD)",
            "command": "?CRTRPGMOD MODULE(&BUILDLIB/&NAME) SRCSTMF('&FULLPATH') OPTION(*EVENTF) DBGVIEW(*SOURCE) TGTRLS(*CURRENT)"
        },
        {
            "type": "streamfile",
            "extensions": [
                "CLP",
                "CLLE"
            ],
            "name": "Create Bound CL Program (CRTBNDCL)",
            "command": "?CRTBNDCL PGM(&BUILDLIB/&NAME) SRCSTMF('&FULLPATH') OPTION(*EVENTF) DBGVIEW(*SOURCE)"
        },
        {
            "type": "streamfile",
            "extensions": [
                "cmd"
            ],
            "name": "Create Command (CRTCMD)",
            "command": "?CRTCMD CMD(&BUILDLIB/&NAME) PGM(&BUILDLIB/&NAME) SRCSTMF('&FULLPATH') OPTION(*EVENTF)"
        },
        {
            "type": "streamfile",
            "extensions": [
                "cmd"
            ],
            "name": "Create Command (Allow Return Variables - CRTCMD)",
            "command": "?CRTCMD CMD(&BUILDLIB/&NAME) PGM(&BUILDLIB/&NAME) SRCSTMF('&FULLPATH') ALLOW(*BPGM *IPGM *BMOD *IMOD *BREXX *IREXX) OPTION(*EVENTF)"
        },
        {
            "type": "streamfile",
            "extensions": [
                "GLOBAL"
            ],
            "name": "Set CCSID to 1252",
            "environment": "pase",
            "command": "setccsid 1252 &FULLPATH"
        },
        {
            "type": "object",
            "extensions": [
                "GLOBAL"
            ],
            "name": "Delete object",
            "command": "?DLTOBJ OBJ(&LIBRARY/&NAME) OBJTYPE(*&TYPE)"
        },
        {
            "type": "object",
            "extensions": [
                "pgm"
            ],
            "name": "Call program",
            "command": "?CALL &LIBRARY/&NAME"
        }
    ],

    "editor.mouseWheelZoom": true,
    "editor.bracketPairColorization.enabled": true,
    "editor.fontSize": 12,
    "code-for-ibmi.connectionSettings": [
        {
            "name": "ipubtest",
            "sourceFileList": [
                "QSYSINC/H"
            ],
            "objectBrowserList": [
                "LENNONS1",
                "LENNONS2",
                "QTEMP",
                "QGPL"
            ],
            "databaseBrowserList": [
                "LENNONS1",
                "LENNONS2",
                "QTEMP",
                "QGPL"
            ],
            "libraryList": [
                "LENNONS1",
                "LENNONS2",
                "QTEMP",
                "QGPL"
            ],
            "libraryListProfiles": [],
            "ifsShortcuts": [
                "/home/LENNONS",
                "/home/lennons/github"
            ],
            "homeDirectory": "/home/LENNONS",
            "tempLibrary": "LENNONS1",
            "currentLibrary": "LENNONS1",
            "sourceFileCCSID": "*FILE",
            "enableSQL": true,
            "hideCompileErrors": [],
            "enableSourceDates": false,
            "sourceDateLocation": "none",
            "clContentAssistEnabled": false
        },
        {
            "name": "ipubxx",
            "sourceFileList": [
                "QSYSINC/H"
            ],
            "objectBrowserList": [
                "LENNONS1",
                "LENNONS2",
                "QTEMP",
                "QGPL"
            ],
            "databaseBrowserList": [
                "LENNONS1",
                "LENNONS2",
                "QTEMP",
                "QGPL"
            ],
            "libraryList": [
                "LENNONS1",
                "LENNONS2",
                "QTEMP",
                "QGPL"
            ],
            "libraryListProfiles": [],
            "ifsShortcuts": [
                "/home/LENNONS"
            ],
            "homeDirectory": "/home/LENNONS",
            "tempLibrary": "LENNONS1",
            "currentLibrary": "LENNONS1",
            "sourceFileCCSID": "*FILE",
            "enableSQL": true,
            "hideCompileErrors": [],
            "enableSourceDates": false,
            "sourceDateLocation": "none",
            "clContentAssistEnabled": false
        }
    ],
    "code-for-ibmi.connections": [
        {
            "name": "ipubtest",
            "host": "ipublic.online",
            "port": 2222,
            "username": "lennons",
            "privateKey": null
        },
        {
            "name": "ipubxx",
            "host": "ipublic.online",
            "port": 2222,
            "username": "lennons",
            "privateKey": null
        }
    ],
}

@SJLennon Thanks for the issue.
Connect to previous is now useless when running as a command from the user. I should make an issue to add a notice since the command is now used by the new browser.
To 'connect to previous' you can just select the connection from the list in the panel and it will do the same.

Created #285

Duh!  Didn't think to double click.  Did try right click though.

I will close this for now. Thanks for raising your concerns.. I will make sure to make improvements from it!

I've been tempted to make some changes to the documentation, but I'm not sure I can keep up with you.

@SJLennon yes, this is a problem I was thinking about last night.
I really like our quick deployment method but keeping the docs up to date is tough.
The important part, which I plan to stay on top of, is the walkthroughs. They are very important for newbies.

I'm not totally up to speed on how walkthroughs are supposed to work.  Right now I see them in Welcome, like below. But...

I see only two.  I know there are more because I edited at least three, and I think I saw three at one point.
Should they be appearing anywhere else?
Have I done something to hide them?

Just curious...

@SJLennon I believe VS Code limits how many it shows. I think as you close others, more will appear.
I also think it hides finished walkthroughs. Do F1 -> 'Open Walkthrough' and you will see them all I think.


404 default backend

Bug
creating a new cluster on a single node rancher server results in a 404 default backend error
Steps to reproduce

`docker run -dit --name rancher --rm -p 80:80 -p 443:443 rancher/rancher
log in
create a cluster
waiting cluster creation completion
trying get back to web interface and see a 404 default backend in place of rancher gui

Result:
Rancher gui pops-up normally until new cluster creation.
Other details that may be helpful:
I installed rancher server on a publicly accessible cloud instance with a resolvable FQDN.
Environment information

rancher/rancher:latest
cloud instance vps debian buster
Docker version 18.09.1, build 4c52b90

I have the same problem and can't figure out the problem from Docker logs.

This should be addressed by https://rancher.com/docs/rancher/v2.x/en/installation/other-installation-methods/single-node-docker/advanced/#running-rancher-rancher-and-rancher-rancher-agent-on-the-same-node, if not, please file a new issue and describe the steps and commands executed to reproduce the behavior so we can investigate.


[doc] Fix HiveMQ EE image name and tag

Currently, this page's HiveMQ EE code example uses the hivemq-ce image instead of the hivemq4 image. I've changed the image and used a tag that can be found in other parts of the documentation, but please note there is a newer one (4.9.1) that could be used.

Thanks @nandorsoma, I'll merge after @YannickWeber's suggestions are applied 🙂

Since the documentation is also executed as tests, I think it is fine to update the version just in this location and it keeps the PR small.
As a follow-up, we could consider extracting the version used by the other tests, so changing it would not require touching all test classes.
WDYT @YannickWeber?

Since the documentation is also executed as tests, I think it is fine to update the version just in this location and it keeps the PR small.
As a follow-up, we could consider extracting the version used by the other tests, so changing it would not require touching all test classes.

Sounds like a good plan. But we still should not extract the EE version for tests that are used for doc, because otherwise the code snippets will lack context.

Thanks @nandorsoma and @YannickWeber, I merged as-is and we can consider a follow-up as suggested.

Thanks @kiview for merging. Sorry for not responding for a while but there was an ER situation...

Sure, no worries @nandorsoma, thanks for your contribution 🙌


GUI - Fix stretch on resize. Note - it gets fixed when editing layer controls

The size and stretch of the camera image does not properly center on resize. Similarly, the size and position of the well plate layout also does not automatically relocated on resize or on startup.


Added translations ES,PT,FR,IT. Corrected some minor issues in EN and DE

Description

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

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

Checklist:

[ ] 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.
[ ] All new and existing tests passed.

Happy to see you here Alex :)
many thanks for the contribution.


feat: hackily allow signHash in keyfile accounts [APE-1584]

What I did
needed for ape-safe work
How I did it

How to verify it

Checklist

[ ] All changes are completed
[ ] New test cases have been added
[ ] Documentation has been updated

i just realized this won't work with these changes: https://github.com/ApeWorX/ape/pull/1614/files


[rlgl] Reviewed rlActiveDrawBuffers for OpenGL ES 3

see: https://github.com/raysan5/raylib/issues/4604

FYI, this change can be tested with the shaders/shaders_deferred_render.c example (which I think is the only example using rlActiveDrawBuffers). Tested successfully on Linux Mint 22.0, LGTM.

@asdqwe I got this on desktop:
WARNING: FBO: [ID 1] Framebuffer has incomplete attachment
WARNING: Framebuffer is not complete

Setup (Linux Mint 21.3):
INFO: GL: OpenGL device information:
INFO:     > Vendor:   NVIDIA Corporation
INFO:     > Renderer: NVIDIA GeForce GTX 980/PCIe/SSE2
INFO:     > Version:  OpenGL ES 3.2 NVIDIA 535.183.01
INFO:     > GLSL:     OpenGL ES GLSL ES 3.20

However, I will conduct the tests on Android in a while.

Well, after adapting the shaders of shaders/shaders_deferred_render.c on Android, I get the same issue:
 W  FBO: [ID 1] Framebuffer has incomplete attachment
 W  Framebuffer is not complete

This is something that will need to be investigated before considering merging this PR...

@Bigfoot71 https://github.com/raysan5/raylib/issues/4604#issuecomment-2543829132

Merging the change, no idea what's the issue with the incomplete framebuffer.

@raysan5 no problem, I was planning to investigate it, I would do it within the week


Emit an event when users bridge out ERC20 ETH

:clipboard: Add associated issues, tickets, docs URL here.
Overview
Describe what your Pull Request is about in a few sentences.
This adds an event when users withdraw their ERC20 ETH so that the subgraph can index the event
Changes
Describe your changes and implementation choices. More details make PRs easier to review.

Add an event

Testing
Describe how to test your new feature/bug fix and if possible, a step by step guide on how to demo this.

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 29.14%. Comparing base (bb19218) to head (9a11ee2).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

:exclamation:  There is a different number of reports uploaded between BASE (bb19218) and HEAD (9a11ee2). Click for more details.
HEAD has 1 upload less than BASE

Flag
BASE (bb19218)
HEAD (9a11ee2)

cannon-go-tests
1
0

Additional details and impacted files
@@                  Coverage Diff                  @@
##           custom-fee-token     #238       +/-   ##
=====================================================
- Coverage             40.13%   29.14%   -10.99%
=====================================================
  Files                    75       65       -10
  Lines                  5183     4104     -1079
  Branches                826      826
=====================================================
- Hits                   2080     1196      -884
+ Misses                 2996     2833      -163
+ Partials                107       75       -32

Flag
Coverage Δ

cannon-go-tests
?

chain-mon-tests
27.14% <ø> (ø)

common-ts-tests
26.72% <ø> (ø)

contracts-ts-tests
12.25% <ø> (ø)

core-utils-tests
44.03% <ø> (ø)

sdk-tests
34.91% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
see 10 files with indirect coverage changes


wasm-tools compose: Unexpected and unimplemented occurance of "resource" when following tutorial

Hi,
I just tried to follow https://github.com/bytecodealliance/component-docs/tree/main/component-model/examples/tutorial.
At the very last step, while composing the components, I get the following error:
✦1 ❯ wasm-tools compose command/target/wasm32-wasi/release/command.wasm -d composed.wasm -o command.wasm
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
[2023-10-25T13:58:58Z WARN ] instance<EMAIL_ADDRESS>will be imported because a dependency named<EMAIL_ADDRESS>could not be found
thread 'main' panicked at /Users/a1167272/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wasm-compose-0.4.10/src/encoding.rs:591:38:
not implemented
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Indeed https://github.com/bytecodealliance/wasm-tools/blob/main/crates/wasm-compose/src/encoding.rs#L591 tells me this is unimplemented.
In my WIT-File, no resource is defined:
package docs:calculator

interface calculate {
    enum op {
        add,
    }
    eval-expression: func(op: op, x: u32, y: u32) -> u32
}

interface add {
    add: func(a: u32, b: u32) -> u32
}

world adder {
    export add
}

world calculator {
    export calculate
    import add
}

world app {
    import calculate
}

Thanks for the report! The resources in question are coming from WASI, not from your local WITs, which is what's causing the issue here. The current tracking issue for resources in wasm-compose is https://github.com/bytecodealliance/wasm-tools/issues/1163 so I'm going to close in favor of that.


Kong with docker-compose v2. problem with network

Kong can't resolve cassandra host when starting. But the host ping is well from kong container. Maybe I should do it differently?
My docker-compose.yml:
version: 2

services:
  kong:
    image: mashape/kong:0.6.0
    ports:
      - 8000:8000
      - 8001:8001
      - 7946:7946
    networks:
      - cassandra

  cassandra:
    image: cassandra:2.2.4
    networks:
      - cassandra

networks:
  cassandra:
    driver: bridge

Logs from kong:
connect: Network is unreachable
[INFO] Kong 0.6.0
[INFO] Using configuration: /etc/kong/kong.yml
[INFO] database...........cassandra ssl=verify=false enabled=false keyspace=kong replication_factor=1 replication_strategy=SimpleStrategy contact_points=cassandra:9042 data_centers=
[INFO] Leaving cluster..
[ERR] Cassandra error: NoHostAvailableError: All hosts tried for query failed. cassandra:9042: SocketError: Network is unreachable for socket with peer cassandra:9042.
[ERR] Could not start Kong

Ping cassandra from kong container:
PING cassandra (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from automicroassembly_cassandra_1.automicroassembly_cassandra (<IP_ADDRESS>): icmp_seq=1 ttl=64 time=0.071 ms
64 bytes from automicroassembly_cassandra_1.automicroassembly_cassandra (<IP_ADDRESS>): icmp_seq=3 ttl=64 time=0.116 ms
64 bytes from automicroassembly_cassandra_1.automicroassembly_cassandra (<IP_ADDRESS>): icmp_seq=4 ttl=64 time=0.052 ms
64 bytes from automicroassembly_cassandra_1.automicroassembly_cassandra (<IP_ADDRESS>): icmp_seq=5 ttl=64 time=0.065 ms

--- cassandra ping statistics ---
5 packets transmitted, 4 received, 20% packet loss, time 3998ms
rtt min/avg/max/mdev = 0.052/0.076/0.116/0.024 ms

Docker version:
Client:
 Version:      1.10.0-rc2
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   c1cdc6e
 Built:        Wed Jan 27 22:31:21 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.10.0-rc2
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   c1cdc6e
 Built:        Wed Jan 27 22:31:21 2016
 OS/Arch:      linux/amd64

Compose version:
docker-compose version 1.6.0rc2, build 695c692
docker-py version: 1.7.0-rc3
CPython version: 2.7.9
OpenSSL version: OpenSSL 1.0.1e 11 Feb 2013

Add restart: always to the Kong definition, so Docker keeps restarting the container until Cassandra is up.

docker-kong-wait is also another solution. Ideally, Kong will be updated to still start without the datastore being accessible, which will make such use cases easier.

@thibaultCha That's what I need. Thank you.


6.0 Feedback:  On protocol run record start and end times are not displayed.

Overview
This protocol completed. The start and end times of each command are in the json when you download it, but are not shown in the app.

Current Behavior
Not shown.
Expected Behavior
Shown.
Steps To Reproduce
Run a protocol with steps that complete.
cancel or complete teh run
from the devices screen  view the protocol run record

Operating system
Mac
Robot setup or anything else?
No response

No one has been able to repro this for a while. The related PR #10860 will be merged shortly

@bndo i've merged #10860 and unassigned myself from this ticket. I will move it to bug backlog in case it pops up again.

I'm going to close this because it has the required-for-6.0 label on it. @y3rsh just FYI for when you're back!

Verified fixed


lightnovel

Added cpunovel plugin (closes #935)
Added Ippotranslations plugin (closes #873)
Plugin ellotl moved to lightnovelwp

I wrote a separate Plugin for ElloTL in order to make it work with htmlparser2. Multisrc would use cheerio.

I think in react-native they will be the same in terms of execution time.
But I will rewrite lightnovelwp to htmlparser2 later.

I think in react-native they will be the same in terms of execution time. But I will rewrite lightnovelwp to htmlparser2 later.

Nah, Cheerio keep whole DOM tree in memory which helps you to querySelector, and building that tree (load) consumes much resource which lead to lag in update library and global search

Hmm, then it's probably better to use native regex, match, substr, etc.
It will be much faster as you will only search for what you need.

Not really,
With htmlparser2, Time complexity is O(nk) where k is the number of switch case/if else statements, therefore you can consider as O(n).
Meanwhile with regex, it takes O(nq) where q is the number of queries. Even worse if you use some bad regex


CI: Split formatting check

This will allow early failure on formatting issues and keep useful spec failure in the long run.

I can't find the issue/PR where this was discussed. 🙈

Related PR: https://github.com/crystal-lang/crystal/pull/7140

The only "bad" thing is that the compiler is compiled twice

We could use a workspace to share data across jobs of the same workflow, and even share a same "executor" machine (with CircleCI 2.1). This would allow to have an initial "build" followed by "format", "std_spec" and "compiler_spec" running in parallel and reusing .build/crystal for example.

The whole formatter build takes under 2 minutes. We absolutely don't need to make this more complex.


issue: The twitter link button in the footer could need UI fix

Possible fix

Just make the background color of the div same as home.

Looks like the Twitter button has been removed from the footer on https://probot.github.io/. I think it's safe to close this issue.


Amp controller restructuring

Resolves errors about permissions when a amphora controller tries to modify a resource that was created/owned by another controller. Now those resources are owned by the parent Octavia controller and amphora controllers get read access only.

Moved SSH key management to octavia controller
Moved Certs management to octavia controller
Names of certs secret and ca passphrase secret are now fix and depend on the name of the octavia instance (which is "octavia" normally)

Depends-On: install_yamls#742

/test octavia-operator-build-deploy-kuttl

@weinimo: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:
Test name 	Commit 	Details 	Required 	Rerun command
ci/prow/octavia-operator-build-deploy-kuttl 	199ce02 link 	true 	/test octavia-operator-build-deploy-kuttl
Full PR test history. Your PR dashboard.

This is repeated over and over in the Octavia operator logs during the KUTTL test:
2024-02-23T01:16:14.565Z	ERROR	Reconciler error	{"controller": "octavia", "controllerGroup": "octavia.openstack.org", "controllerKind": "Octavia", "Octavia": {"name":"octavia","namespace":"octavia-kuttl-tests"}, "namespace": "octavia-kuttl-tests", "name": "octavia", "reconcileID": "521e3aee-c8c7-46c9-8a89-5c1c5d193e90", "error": "Error getting compute client: No suitable endpoint could be found in the service catalog."}

/test octavia-operator-build-deploy-kuttl

/retest


Add support to ios 7 style grand unified receipts

The PR adds classes to work with ios 7 style grand unified receips: Unified::AppReceipt and Unified::InAppReceipt.
Working with subscriptions was not covered.

Coverage increased (+0.9%) to 99.404% when pulling 6a0b1904818e8bfd581ed02f0c1764827b144fa2 on hello-baby:support-unified-receipts into a61a68935c9aef8c0ac72e47b7b56c2451fb206f on jnbt:master.

Coverage increased (+0.9%) to 99.404% when pulling 6a0b1904818e8bfd581ed02f0c1764827b144fa2 on hello-baby:support-unified-receipts into a61a68935c9aef8c0ac72e47b7b56c2451fb206f on jnbt:master.

Coverage decreased (-0.8%) to 97.786% when pulling c6b3cd1eb7be3f833baaea73750e4145a09f5534 on hello-baby:support-unified-receipts into a61a68935c9aef8c0ac72e47b7b56c2451fb206f on jnbt:master.

Coverage decreased (-0.8%) to 97.786% when pulling ce27aaf4bd668b43e9adde2aefd9f37acde79196 on hello-baby:support-unified-receipts into a61a68935c9aef8c0ac72e47b7b56c2451fb206f on jnbt:master.

Coverage increased (+1.4%) to 99.935% when pulling eedde53569bb4418f47b4eebbce31584a2d21dfe on hello-baby:support-unified-receipts into a61a68935c9aef8c0ac72e47b7b56c2451fb206f on jnbt:master.

Coverage increased (+1.4%) to 99.935% when pulling eedde53569bb4418f47b4eebbce31584a2d21dfe on hello-baby:support-unified-receipts into a61a68935c9aef8c0ac72e47b7b56c2451fb206f on jnbt:master.

Coverage increased (+1.4%) to 99.935% when pulling eedde53569bb4418f47b4eebbce31584a2d21dfe on hello-baby:support-unified-receipts into a61a68935c9aef8c0ac72e47b7b56c2451fb206f on jnbt:master.

Coverage increased (+1.4%) to 99.935% when pulling eedde53569bb4418f47b4eebbce31584a2d21dfe on hello-baby:support-unified-receipts into a61a68935c9aef8c0ac72e47b7b56c2451fb206f on jnbt:master.

@zabolotnov87 Thanks for your work. It looks quite great. Maybe we should think about dropping support for the iOS6 style receipts at all.
As also mentioned in #15: I'm currently in a situation where I cannot work on this project for a couple of weeks. I'm very sorry for this, but my family goes first.
I'll check this PR as soon as possible.

Any updates on this issue?

So, apparently these extra fields are presented outside of the receipt under the pending_renewal_info-key.
We've solved this by attaching the renewal info to the last transaction/receipts.
module CandyCheck
  module AppStore
    # Store multiple {Receipt}s in order to perform collective operation on them
    class ReceiptCollection

      PENDING_RENEWAL_INFO_KEYS = %w(expiration_intent
                                     is_in_billing_retry_period
                                     auto_renew_status
                                     auto_renew_product_id).freeze

      # Initializes a new instance which bases on a JSON result
      # from Apple's verification server
      # @param attributes [Array<Hash>]
      def initialize(attributes, pending_renewal_info = nil)
        @attributes = attributes
        @pending_renewal_info = pending_renewal_info
      end

      # Check if the latest expiration date is passed
      # @return [bool]
      def expired?
        expires_at.to_time <= Time.now.utc
      end

      # Check if in trial
      # @return [bool]
      def trial?
        latest_expiring_receipt.is_trial_period
      end

      # Get latest expiration date
      # @return [DateTime]
      def expires_at
        latest_expiring_receipt.expires_date
      end

      # Get number of overdue days. If this is negative, it is not overdue.
      # @return [Integer]
      def overdue_days
        (Date.today - expires_at.to_date).to_i
      end

      # Multiple receipts as in verfication response
      # @return [Array<Unified::InAppReceipt>]
      def receipts
        @receipts ||= receipt_data.map { |r| Unified::InAppReceipt.new(r) }
      end

      private

      def latest_expiring_receipt
        receipts.sort_by(&:expires_date).last
      end

      def receipt_data
        return @attributes unless @pending_renewal_info.present?

        @attributes.group_by{ |r| r['original_transaction_id']}.map do |original_transaction_id, transactions|
          extra_info = @pending_renewal_info.find do |info|
            info["original_transaction_id"] == original_transaction_id
          end.try(:slice, *PENDING_RENEWAL_INFO_KEYS)
          transactions.last.merge! extra_info
          transactions
        end.flatten
      end
    end
  end
end

Updated.

Coverage increased (+1.4%) to 99.888% when pulling 2df485316e9ef9b470090c9d328de9e3474e4769 on hello-baby:support-unified-receipts into a61a68935c9aef8c0ac72e47b7b56c2451fb206f on jnbt:master.


Some mdi icon are missing

Some icon mdi created by community not appear in lovelace UI's Android App (for example "mdi:window_shutter")

Will be fixed with #260


Automator: update<EMAIL_ADDRESS>in<EMAIL_ADDRESS>

Generated by Automator - 2023-09-28T19:58:56+00:00

@istio-testing: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-istiodremote-mc_istio_release-1.17
917d4b23b7b66f875320fbbf8e0d7ac4d1508953
link
true
/test integ-pilot-istiodremote-mc

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

/test integ-pilot-istiodremote-mc

@istio-testing: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-pilot-istiodremote-mc_istio_release-1.17
917d4b23b7b66f875320fbbf8e0d7ac4d1508953
link
true
/test integ-pilot-istiodremote-mc

integ-telemetry_istio_release-1.17
917d4b23b7b66f875320fbbf8e0d7ac4d1508953
link
true
/test integ-telemetry

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

@istio-testing: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-telemetry_istio_release-1.17
917d4b23b7b66f875320fbbf8e0d7ac4d1508953
link
true
/test integ-telemetry

integ-pilot-istiodremote-mc_istio_release-1.17
917d4b23b7b66f875320fbbf8e0d7ac4d1508953
link
true
/test integ-pilot-istiodremote-mc

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

@istio-testing: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-telemetry_istio_release-1.17
917d4b23b7b66f875320fbbf8e0d7ac4d1508953
link
true
/test integ-telemetry

integ-pilot-istiodremote-mc_istio_release-1.17
917d4b23b7b66f875320fbbf8e0d7ac4d1508953
link
true
/test integ-pilot-istiodremote-mc

integ-telemetry-mc_istio_release-1.17
917d4b23b7b66f875320fbbf8e0d7ac4d1508953
link
true
/test integ-telemetry-mc

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

/retest


measurement independent of instrument

make all functions independent of the instruments used.
Place all instruments + import functions / initialisation to be moved in https://github.com/julienbarrier/station2004

not necessary anymore.


group6: add unit-test for VolumePath #1762

Ⅰ. Describe what this PR did
Add unit test cases for volume.core.go func VolumePath()
Ⅱ. Does this pull request fix one issue?
Yes, #1762
Ⅲ. Describe how you did it
Implement test cases for can get and can't get volume path.
Ⅳ. Describe how to verify it
go test core_test.go
Ⅴ. Special notes for reviews
Group6

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@afc7a21). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             master   #1860   +/-   ##
========================================
  Coverage          ?   56.4%
========================================
  Files             ?     200
  Lines             ?   15659
  Branches          ?       0
========================================
  Hits              ?    8832
  Misses            ?    5735
  Partials          ?    1092

Flag
Coverage Δ

#critest
33.54% <ø> (?)

#integrationtest
37.69% <ø> (?)

#unittest
20.39% <ø> (?)


Unable to change format of topic before sending to remote server

I got this set up to listen for messages on a topic and forward them to a remote server using the JSON format and it's working great. I would ideally like to change the format before it's sent to a remote server. For example, instead of { "topic1": "123" }, is there a way to send it out like {"topic": "topic1", "value": "123"}?

to do so, please implement custom Bridge class and use it. See mqtt_bridge.bridge module. thank you.


Add documentation on JAR signature verification with Spring Monitor

API change check
API changes are not detected in this pull request.


IV was not an issue

I dug deeper and apparently there is no way to get the IV back unless it is stored since the order is reversed.

Further, the IV is defined in the FF1 spec to be hardcoded to 0. So we couldn't actually let the user decide what it would be.

Well, it's not really regular ECB. ciph() implements CBC, ultimately, but it can be called with 1 or more blocks of input.
CBC with a single block and a null (zero) IV is algorithmically equivalent to ECB, because there's no subsequent block to chain into.
CBC with multiple blocks and a null (zero) IV is NOT algorithmically equivalent to ECB, because the output of the first encryption is chained into the next block. Whereas regular ECB on multiple blocks just encrypts each block separately, with no connection between each block.
So, if you're porting this to Python, ensure you're using CBC with IV=0, not ECB, and you should see the NIST test vectors pass.

Do you know if ECB is not as safe as CBC with the IV set to 0 all the time?

Under normal circumstances, yes ECB is not considered secure. But ECB/CBC here is used as a primitive or a building block to construct a secure algorithm, as designed by the authors and reviewed.

"CBC with a single block and a null (zero) IV is algorithmically equivalent to ECB, because there's no subsequent block to chain into."
Right. What I meant was: Since CBC with IV Zero every time is basically ECB, but ECB runs a lot faster since you do not need to run the XOR, or the IV init every time, why not use ECB in the first place and add another set to the NIST standard using ECB?

Because it's not always a single block that is coming in. The number of blocks of input is an important factor for the behavior of CBC.
Looking through the code, there are 3 places where ciph() is called:

here, on a single block input
here, on a single block input
here, on a variable/multi block input.

For (1) and (2), yes, you could safely shortcut this by directly doing ECB. For (3), it requires CBC because it's multiple blocks, and the spec defines `prf()`` as essentially CBC-MAC. If you replaced this with ECB, it wouldn't implement what the spec defines.
There are 2 reasons why I did not do so for (1) and (2):

The code is easier to follow in the current way such that the function names more closely match what's defined in the spec, making it easier to follow.

Because there's only 1 block, the Go stdlib CBC implementation (or any CBC implementation, for that matter) has nothing to do after the first block. While I haven't tested this directly, I doubt that it would actually be faster to use ECB rather than CBC for the single block scenario.

why not use ECB in the first place and add another set to the NIST standard using ECB?

As to why the algorithm authors decided ECB was not sufficient here, I can't say with full confidence, but here's what the spec says, in section 4.6:
The PRF(X) function, specified in Algorithm 6, essentially invokes the Cipher Block Chaining encryption mode [11] on the input bit string and returns the final block of the ciphertext; this function is the pseudorandom core of the Feistel round function for FF1.Encrypt and FF1.Decrypt

Extrapolating from that, I imagine that ECB doesn't provide a strong enough pseudorandom core for the Feistel round.

First of all, big thank you for your responsiveness!
So I ported all of the FF1 code to Python for our use case. I noted, that you set the IV to 0 here.
From what I can tell stepping through the code and looking up where it is being called from, it only ever gets called with 32bytes at the most. This means it only runs with 2 blocks at most. It feels that there is not much security gained in this specific use case.
Another thing I noticed, I was able to set the IV to Zero only once, before you start the FF1 process, so that each block in the Feistel rotation had a completely different value except for the first block of course which has Zero. It still decompresses fine if you do the same thing and just set the first block to IV 0 before you run the Feistel and then leave it alone. You might want to try and comment out that line and see if it still works. It will of course not produce the same values as the NIST, but it will encrypt and decrypt properly, probably with more security since you have more unique IVs. It also runs faster.
To summarize, I do not think in its current form more than 2 blocks get encrypted before the IV gets set to 0, and the SetIV to Zero needs only be done once before the Feistel gets started.
I really appreciate your thoughts on this.
-Alex

It will of course not produce the same values as the NIST, but it will encrypt and decrypt properly, probably with more security since you have more unique IVs. It also runs faster.

Keep in mind that the correctness of test vectors is vitally important. It's not sufficient for an algorithm implementation (cryptographic or otherwise) to simply be correct when doing the inverse (encrypt then decrypt matching the original plaintext).
If the encrypted values don't match, the implementation is not compliant, which makes interchanging values across implementations impossible. Again, note that this isn't anything specific to FPE, the same can be said of really any algorithm.
Imagine, if you will, good old AES - if one implementation was "optimized" in a way that encryption then decryption works to get the original value back. But the ciphertext is incorrect - if you took that ciphertext and passed it into a different (compliant) decryption implementation, it would fail. Hence, it's a MUST that all values match the NIST test vectors - it's what determines compliance of an implementation to the spec.
I can understand where you're coming from w.r.t different IVs being related to higher security when you look at other algorithms (AES CBC, GCM [IV being nonce in this case], etc) but the important difference is that those algorithms explicitly define their IV as being variable and explain the consequences of static IVs. In the context of FF1/FF3, the algorithm explicitly defines the IV to be 0, because it's really just CBC-MAC.
All that said, I will look into moving the setIV(0) call out of ciph() to reduce the number of calls, but considering what that function does is just a copy, I don't expect the performance to improve by a meaningful amount. It definitely won't reduce the number of allocations, which tends to be one of the biggest drivers of performance degradation.


When clauses are not working

Joffref one question, is it allow to use un when {} clauses here? because i have the following policy:
permit(
principal in Role::"admin",
action == Action::"create",
resource
)
when {
resource.id like "/inventory*"
};
i already review everything but the policy is answering Deny, however i tried the same policy with the same data in Cedar Playground and responds allow, do you know why?

Hey @juliandecoss, thanks for opening this issue. I'll get a closer look to that soon.
Do you have any relevant traces or code to share. In order to reproduce the bug 😄

@Joffref  thanks for your answer, i was taking a closer look it turns out, in my JSON entity was having an extra "}" and that was affecting the result returning Deny, but because it didnt crashed i though it was something different, Thank you so much for your answer i will close this issue!

As a follow of your issue, did you expect on a not serializable policy to have an error. Or do you think this behavior is normal and validation should be handled by another method?


Fix registy typo

Description of your changes
Fixed a typo introduced in https://github.com/upbound/platform-ref-multi-k8s/pull/28.
Updated the provider versions to those available on the marketplace.

I have:

[x] Read and followed Upbound's contribution process.
[ ] Run make reviewable to ensure this PR is ready for review.
[ ] Added backport release-x.y labels to auto-backport this PR, as appropriate.

How has this code been tested

Tested by adding the each or the providers separately as show in the development.md:
PROVIDER_AWS=xpkg.upbound.io/crossplane-contrib/provider-aws:v0.37.1
PROVIDER_GCP=xpkg.upbound.io/crossplane-contrib/provider-gcp:v0.22.0
PROVIDER_HELM=xpkg.upbound.io/crossplane-contrib/provider-helm:v0.13.0

kubectl crossplane install provider ${PROVIDER_AWS}
kubectl crossplane install provider ${PROVIDER_GCP}
kubectl crossplane install provider ${PROVIDER_HELM}

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


Add node port (npm package) to README

I've added the node port which is basically an npm package wrapper for the javascript version of this library. It is very convenient for node.js developers to be able to just require this.

@jias0001 thoughts?
My $0.02:

libphonenumber has a JavaScript version. If we promote another JavaScript version in the README, then it should be for good reasons. Also, if there are other JavaScript forks (and not just this one), we should probably mention those too.
We should look at the differences between @ruimarinho's port/fork and the original JavaScript version. Which of the reasons / differences can and should be integrated into libphonenumber? Which differences are worth keeping separate?
If we mention the fork in the README, then the label should be different. Instead of "JavaScript (node)" maybe "Node.js"?

Hoping I can clarify some of those points:

Requiring libphonenumber from node is not a straightforward task. It depends on google closure's library in order for goog di to work.
The only difference between the original JavaScript version and the one on this repo is that errors that are thrown as strings are converted to proper Error instances. The API
Sure, it looks better! Maybe add npm to help clarify the intention?

Thanks for the feedback.

@andyst I've just released version 0.2.0 with<EMAIL_ADDRESS>The only difference from the vanilla JavaScript version provided by libphonenumber is entirely on the main file - and that's it.

Sorry guys, somehow I missed the emails on Feb 2. Just saw Rui's reply
today.
Re: throwing Error instead of string - I remember sometime last year we
have updated our code to mostly throwing Error instead of string. Please
feel free to send us a patch to update the rest if they are missed from
that update.
Re: Readme - we try to keep the list as short as possible. For the known
ports, we try to only list one per language (the one best maintained). Also
note that we don't tend to list wrappers in this file, as there can be very
many of them.
To sum up, my opinion here is that we probably won't accept this patch to
list the wrapper in our README, but please do send other patches to improve
the lib, which makes it easier for you to maintain your wrapper downstream.
Does this make sense?
On 6 March 2015 at 03:55, Rui Marinho<EMAIL_ADDRESS>wrote:

@andyst https://github.com/andyst I've just released version 0.2.0
https://www.npmjs.com/package/google-libphonenumber with
<EMAIL_ADDRESS>The only difference from the vanilla JavaScript
version provided by libphonenumber is entirely on the main file
https://github.com/seegno/google-libphonenumber/blob/master/index.js -
and that's it.
—
Reply to this email directly or view it on GitHub
https://github.com/googlei18n/libphonenumber/pull/595#issuecomment-77498150
.

@jias0001 regarding throwing errors, unfortunately it still lacks throwing proper errors on multiple places (see example). I'll see if I can contribute patches to make it more consistent though.
Your explanation makes sense but I think there is a real demand for a proper way to use this library on node.js. If this is something that can be done directly from javascript version, then I'm all for having it on a wiki or any other place of documentation. However, sourcing the closure library on node.js is not just a require away. Because of this, I consider this "wrapper" to actually be a port for node.js, even if they share the same language.
I would certainly prefer if this package could be officially distributed via npm without resorting to any modifications but, until then, I think the community will continue to search for a version that they can simply do require('libphonenumber') and it just works like every other node module.


example with-redux-observable

related to #2979
I will happily apply any suggestions. Especially in Readme.

@Tomekmularczyk thanks a lot for your contribution, which exposed me to redux-observable for the first time.
I don't understand what you write about 'anti-pattern' in the README.
Do you mean that the initial data fetch from the server at with-redux-observable/pages/index.js an optional enhancement, for example, start fetching right away?


ArrayIndexOutOfBoundsException

Netty version 4.1.91.Final
JVM version java1.8
OS version Linux
error log
2023-05-25 17:47:17.493 DEBUG 线程名: [erver_business@98] i.n.c.AbstractChannelHandlerContext      行号:[ 349] 请求ID： [system-id] : An exception java.lang.ArrayIndexOutOfBoundsException
was thrown by a user handler's exceptionCaught() method while handling the following exception:
java.lang.NullPointerException: null
java.lang.NullPointerException

Currently, I am unable to obtain more error stack information and cannot locate the unknown error. Is it a framework issue or a business issue.

this looks a problem in one of your ChannelHandler implementations. Without the full stack trace it's hard to tell tho.

Has the handler been removed and reported an array out of bounds error

At present, it is also quite strange that I cannot agree to more stack information, which makes it difficult for me to troubleshoot this issue. It is an occasional issue and difficult to surface

exceptionCaught problem


[BUG] KeyError:'bpy_prop_collection[key]: key "subdivision" not found

when running command:
BLENDER -noaudio --background --python generate.py -- --seed 0 --task coarse -g desert simple --output_folder outputs/helloworld/coarse
error occurs:
`
[20:30:28.830] [root] [INFO] | CUDA_VISIBLE_DEVICES=None
[20:30:28.830] [times] [INFO] | [MAIN TOTAL]
[20:30:28.831] [root] [INFO] | Processing frames 1 through 1 inclusive
[20:30:28.836] [times] [INFO] | [Create terrain]
[20:30:28.836] [root] [INFO] | Terrain using only on the fly  on_the_fly_asset_folder=PosixPath('/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/outputs/helloworld/coarse/assets')
[20:30:30.187] [times] [INFO] | [Create terrain] failed with <class 'KeyError'>
[20:30:30.187] [times] [INFO] | [MAIN TOTAL] failed with <class 'KeyError'>
错误: Python: Traceback (most recent call last):
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/generate.py", line 409, in
main()
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/generate.py", line 399, in main
infinigen.main(
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/core.py", line 425, in main
execute_tasks(
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1605, in gin_wrapper
utils.augment_exception_message_and_reraise(e, err_str)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
raise proxy.with_traceback(exception.traceback) from None
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1582, in gin_wrapper
return fn(*new_args, **new_kwargs)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/core.py", line 275, in execute_tasks
terrain = Terrain(scene_seed, surface.registry, task=task, on_the_fly_asset_folder=output_folder/"assets")
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1605, in gin_wrapper
utils.augment_exception_message_and_reraise(e, err_str)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
raise proxy.with_traceback(exception.traceback) from None
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1582, in gin_wrapper
return fn(*new_args, **new_kwargs)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/terrain/core.py", line 82, in init
self.elements, scene_infos = scene(seed, Path(on_the_fly_asset_folder), asset_path, device)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1605, in gin_wrapper
utils.augment_exception_message_and_reraise(e, err_str)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
raise proxy.with_traceback(exception.traceback) from None
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1582, in gin_wrapper
return fn(*new_args, **new_kwargs)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/terrain/scene.py", line 43, in scene
caves = Caves(on_the_fly_asset_folder / Assets.Caves, reused_asset_folder / Assets.Caves)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1605, in gin_wrapper
utils.augment_exception_message_and_reraise(e, err_str)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
raise proxy.with_traceback(exception.traceback) from None
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1582, in gin_wrapper
return fn(*new_args, **new_kwargs)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/terrain/elements/caves.py", line 44, in init
n_instances, N, float_data = self.load_assets()
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1605, in gin_wrapper
utils.augment_exception_message_and_reraise(e, err_str)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
raise proxy.with_traceback(exception.traceback) from None
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1582, in gin_wrapper
return fn(*new_args, **new_kwargs)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/terrain/elements/caves.py", line 66, in load_assets
caves_asset(self.on_the_fly_asset_folder / f"{i}")
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1605, in gin_wrapper
utils.augment_exception_message_and_reraise(e, err_str)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
raise proxy.with_traceback(exception.traceback) from None
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/blender/3.3/python/lib/python3.10/site-packages/gin/config.py", line 1582, in gin_wrapper
return fn(*new_args, **new_kwargs)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/terrain/assets/caves/core.py", line 188, in caves_asset
add_cave(rescale=1, cave_z=0)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/terrain/assets/caves/core.py", line 170, in add_cave
cave.add_subdivision("firstsub", 2)
File "/home/lab632/data_win/632_workspace/jzf/infinigen-main/worldgen/terrain/assets/caves/core.py", line 108, in add_subdivision
bpy.context.object.modifiers["Subdivision"].name = name
KeyError: 'bpy_prop_collection[key]: key "Subdivision" not found'
In call to configurable 'caves_asset' (<function caves_asset at 0x7f0287dfc430>)
In call to configurable 'load_assets' (<function Caves.load_assets at 0x7f0287dfc9d0>)
In call to configurable 'Caves' (<class 'terrain.elements.caves.Caves'>)
In call to configurable 'scene' (<function scene at 0x7f029051ecb0>)
In call to configurable 'Terrain' (<class 'terrain.core.Terrain'>)
In call to configurable 'execute_tasks' (<function execute_tasks at 0x7f0283132c20>)
`
actually the command succeed at the first time, the scene is generated and can open in blender. But this command does not run successfully the second time and the above error occurs.

The problem was fixed after I changed the language from Chinese to English, probably a blender bug

The problem was fixed after I changed the language from Chinese to English, probably a blender bug

hey buddy,i have the same error, can you tell me how to  changed the language from Chinese to English? Thanks.


Implements world.sleep_offline

Closes https://github.com/wixoaGit/OpenDream/issues/194
Doesn't properly implement sleep_offline = 0 because I have no idea how to handle that (see the docs: http://www.byond.com/docs/ref/#/world/var/sleep_offline)
Draft because I don't see where we actually accurately track the number of connected clients. I had to manually clear the Connections list while testing.

This will probably need changes with RT so I'll just close it for now.


Add infnet.txt

@gabrielomoreira I have to close this request without merging, because you requested to add a non-existent domain to this repository: Host infnet.al.com.br not found: 3(NXDOMAIN) Please ensure that you are familiar with this repository rules located at the bottom of this page and submit a new request with the correct information. Thank you for understanding!


Colors appear very dark on Overlunky WINE.

While using overlunky, the entire game is dark. Using wine 7+.
If anybody knows how to resolve this issue, please tell me.
Reference Image

Photographs of screens don't really show what the graphics look like at all, but I'll take your word for it... Does this really have anything to do with Overlunky, or does your game just look like that in wine anyway? Did you install DXVK like the readme says?

Photographs of screens don't really show what the graphics look like at all, but I'll take your word for it... Does this really have anything to do with Overlunky, or does your game just look like that in wine anyway? Did you install DXVK like the readme says?

Spelunky looks completely normal without overlunky.
I should already have DXVK installed, as I use it with other games.

Well don't know what to tell you, except you seem to have the console open, but that shouldn't affect the colors either. DXVK should be apparent from the launch messages noting the DXVK version etc. My vanilla game colors are messed up in wine without dxvk sorta like that, but game and OL work fine with it.
This inspired me to fix the steamplay proton support though, cause it seemed to work better OOTB before completely breaking without us doing nothing to it... https://github.com/spelunky-fyi/overlunky/pull/283

I did also confirm that my game with OL looks very dark/weird gamma on wine-7.22 on a fresh wineprefix. Game without OL is brighter, but the colors are messed up differently. Running WINEPREFIX=~/.wine_fresh setup_dxvk install with defaults on dxvk-2.0 fixes all of this.

Also found a sort of fix for this from some old imgui issues that were also hooking other games. This is some sort of sRGB color space/gamma issue that wine doesn't handle very well. This doesn't fix the color issues already present in vanilla wine, but reverts the darkness back to about the same level of banded uglyness.
More importantly my fix doesn't seem to break anything in the already working DXVK, Proton and Windows, so it might make its way in some day...

I didn't touch Wine colors, but #283 tries to fix Proton issues, so you can try running OL on Steam with the --launch_game parameter.


How effective FSDP is utilized in Accelerate?

System Info
accelerate==0.17.1
torch==2.2.0+cu118
transformers==4.27.1
python==3.8

Information

[ ] The official example scripts
[X] My own modified scripts

Tasks

[ ] One of the scripts in the examples/ folder of Accelerate or an officially supported no_trainer script in the examples folder of the transformers repo (such as run_no_trainer_glue.py)
[X] My own task or dataset (give details below)

Reproduction
I have been using Accelerate with my extended model containing BART-large on two GPU/48GB shared resource. The code segment looks like:
class Model(nn.Module):
    def __init__(self)
        super().__init__()
        self.seq2seq = BartForConditionalGeneration.from_pretrained("facebook/bart-large-cnn)
    ...

The code is working but running very slow because the GPUs are shared with others so that they are constantly utilized at 100% seen from nvidia-smi.
So, I moved running onto two GPU/32GB with exclusive use. The running lasted around 1000 iterations before OOM. I am now configuring FSDP with Accelerate.
Here is the configuration yaml file:
deepspeed_config: {}
distributed_type: FSDP
fsdp_config: {
  fsdp_auto_wrap_policy: TRANSFORMER_BASED_WRAP,
  fsdp_backward_prefetch_policy: BACKWARD_PRE,
  fsdp_forward_prefetch: false,
  fsdp_cpu_ram_efficient_loading: true,
  fsdp_offload_params: true,
  fsdp_sharding_strategy: FULL_SHARD,
  fsdp_state_dict_type: FULL_STATE_DICT,
  fsdp_cpu_offload: true,
  fsdp_rank0_only: true,
  fsdp_use_orig_params: true,
  fsdp_sync_module_states: true,
  fsdp_transformer_layer_cls_to_wrap: "BartEncoderLayer,BartDecoderLayer"
}
machine_rank: 0
main_process_ip: <IP_ADDRESS>
main_process_port: 9697
main_training_function: main
mixed_precision: 'no'
num_machines: 1
num_processes: 2
use_cpu: false

I also followed the suggestion (https://huggingface.co/docs/accelerate/v0.17.1/en/usage_guides/fsdp) to prepare the model before preparing the optimizer. But running only sustained for a few dozens of iterations before throwing the OOM:
  File "/shared/homes/my_home/dev/pyvenv_pt21/lib64/python3.8/site-packages/torch/autograd/__init__.py", line 266, in backward
    Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass
torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 5.78 GiB. GPU 0 has a total capacity of 31.74 GiB of which 5.26 GiB is free. Including non-PyTorch memory, this process has 26.48 GiB memory in use. Of the allocated memory 24.73 GiB is allocated by PyTorch, and 788.02 MiB is reserved by PyTorch but unallocated. If reserved but unallocated memory is large try setting PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True to avoid fragmentation.  See documentation for Memory Management  (https://pytorch.org/docs/stable/notes/cuda.html#environment-variables)
[2024-01-30 17:33:41,582] torch.distributed.elastic.multiprocessing.api: [WARNING] Sending process 4114313 closing signal SIGTERM
[2024-01-30 17:33:44,404] torch.distributed.elastic.multiprocessing.api: [ERROR] failed (exitcode: 1) local_rank: 0 (pid: 4114312) of binary: /shared/homes/my_home/dev/pyvenv_pt21/bin/python3.8
Traceback (most recent call last):
  File "/shared/homes/my_home/dev/pyvenv_pt21/bin/accelerate", line 8, in <module>
    sys.exit(main())
  File "/shared/homes/my_home/dev/pyvenv_pt21/lib64/python3.8/site-packages/accelerate/commands/accelerate_cli.py", line 45, in main
    args.func(args)
  File "/shared/homes/my_home/dev/pyvenv_pt21/lib64/python3.8/site-packages/accelerate/commands/launch.py", line 902, in launch_command
    multi_gpu_launcher(args)
  File "/shared/homes/my_home/dev/pyvenv_pt21/lib64/python3.8/site-packages/accelerate/commands/launch.py", line 599, in multi_gpu_launcher
    distrib_run.run(args)
  File "/shared/homes/my_home/dev/pyvenv_pt21/lib64/python3.8/site-packages/torch/distributed/run.py", line 803, in run
    elastic_launch(
  File "/shared/homes/my_home/dev/pyvenv_pt21/lib64/python3.8/site-packages/torch/distributed/launcher/api.py", line 135, in __call__
    return launch_agent(self._config, self._entrypoint, list(args))
  File "/shared/homes/my_home/dev/pyvenv_pt21/lib64/python3.8/site-packages/torch/distributed/launcher/api.py", line 268, in launch_agent
    raise ChildFailedError(
torch.distributed.elastic.multiprocessing.errors.ChildFailedError:

So, I am wondering how effective FSDP is utilized in Accelerate for a large model with a large dataset. Or, it may be just because I haven't configured it more efficiently. Could anyone shed some light?
Regards
Expected behavior
Accelerate with FSDP is expected to solve OOM. Or, it is at least expected to run longer than the case when FSDP is not used.

Hello @chris-opendata,
Given that the model facebook/bart-large-cnn has only 400 Million params, it should work fine with DDP/FSDP on a couple of 32GB GPUs. Could you please share a minimal reproducible example which we can run to  further look into this.

Hello @chris-opendata,
Given that the model facebook/bart-large-cnn has only 400 Million params, it should work fine with DDP/FSDP on a couple of 32GB GPUs. Could you please share a minimal reproducible example which we can run to further look into this.

Hi @pacman100 ,
Sorry for my delayed reply due to my other work. Finally, I prepared an example @https://github.com/chris-opendata/fsdp_trial_094576/tree/main. It is much simpler and smaller than my full version of production code, but it captures the coding structure. It is by large based on https://github.com/huggingface/transformers/blob/v4.9.2/examples/pytorch/summarization/run_summarization_no_trainer.py and https://huggingface.co/blog/pytorch-fsdp. The example will not incur an OOM issue on a dual GPU RTX/32GB machine given the small model footprint, but it didn't seem to take advantage of FSDP either. I appreciate if you could examine the code and enlighten me where either the FSDP setting or/and related code does not follow the FSDP mechanism efficiently.
Best regards
Chris


Feature/issue 991

For issue ga4gh/dockstore#991

Codecov Report

Merging #128 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           develop     #128   +/-   ##
========================================
  Coverage    64.87%   64.87%
========================================
  Files           95       95
  Lines         2551     2551
  Branches       322      322
========================================
  Hits          1655     1655
  Misses         723      723
  Partials       173      173

Continue to review full report at Codecov.

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


Enhancement: Replace Starlette Responses

PR Checklist

[x] Have you followed the guidelines in CONTRIBUTING.md?
[x] Have you got 100% test coverage on new code?
[ ] Have you updated the prose documentation?
[ ] Have you updated the reference documentation?

This PR removes the usage of Starlette based Response objects by introducing our own version - with a compatible API.
Relates to #612

PR is still missing docs and some polishing touches, but it is substantially done and the tests are in place - so its a good time to start reviewing. Please do!

So with this PR, instead of using starlette RedirectResponse in the middleware, I will be able to use RedirectResponse from starlite?

So with this PR, instead of using starlette RedirectResponse in the middleware, I will be able to use RedirectResponse from starlite?

that is correct

In docs/usage/5-responses/2-status-codes.md this line should be:
- tests). Starlette includes easy to use statuses that are exported from `starlette.status`, e.g. `HTTP_200_OK`
+ tests). Starleite includes easy to use statuses that are exported from `starlite.status`, e.g. `HTTP_200_OK`

In docs/usage/5-responses/2-status-codes.md this line should be:
- tests). Starlette includes easy to use statuses that are exported from `starlette.status`, e.g. `HTTP_200_OK`
+ tests). Starleite includes easy to use statuses that are exported from `starlite.status_codes`, e.g. `HTTP_200_OK`

fixed


stix2.exceptions.InvalidValueError: Invalid value for Report 'created': must be a datetime object, date object, or timestamp string in a recognizable format.

We have been using version 1.2.1 and it worked perfectly fine for datetime with ISO format.
Today, I upgraded to version 3.0.1, it can't parse ISO datetime anymore.
Test to reproduce the error:
from stix2 import Report
stix_report = Report(
                                created     = '2021-09-26T06:32:30.035769',
                                published   = '2021-10-26T06:00:30.012346',
                                modified    = '2021-09-29T06:01:35.015556',
                                name        = 'Test Report',
                                object_refs = 'identity--9293b79f-f935-45d3-9ff5-2f99154cce53',
                                object_marking_refs = 'marking-definition--3435bc16-43ba-46ab-9b9d-668ae141e768',
                                description = 'This is at test',
                                labels      = 'test-report'
                            )

This is the error:
 ValueError                                Traceback (most recent call last)
/usr/local/lib/python3.7/dist-packages/stix2/utils.py in parse_into_datetime(value, precision, precision_constraint)
    248         try:
--> 249             parsed = dt.datetime.strptime(value, fmt)
    250         except (TypeError, ValueError):

7 frames
ValueError: time data '2021-09-26T06:32:30.035769' does not match format '%Y-%m-%dT%H:%M:%S.%fZ'

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
ValueError: must be a datetime object, date object, or timestamp string in a recognizable format.

The above exception was the direct cause of the following exception:

InvalidValueError                         Traceback (most recent call last)
/usr/local/lib/python3.7/dist-packages/stix2/base.py in _check_property(self, prop_name, prop, kwargs, allow_custom)
     58                 raise InvalidValueError(
     59                     self.__class__, prop_name, reason=str(exc),
---> 60                 ) from exc
     61
     62         return has_custom

InvalidValueError: Invalid value for Report 'created': must be a datetime object, date object, or timestamp string in a recognizable format.

Thanks, I ended up writing a function to add the Z to all the dates if there is not already a Z in them


Properly handle byte order in NDArray serialization

Change-Id: Id6191a0124140dd12de6ac22b463b2c6dfd83527
Description
Brief description of what this PR is about

If this change is a backward incompatible change, why must this change be made?
Interesting edge cases to note here

Codecov Report

Merging #1240 (1cdd5b6) into master (8a76045) will decrease coverage by 0.01%.
The diff coverage is 70.58%.

@@             Coverage Diff              @@
##             master    #1240      +/-   ##
============================================
- Coverage     70.22%   70.20%   -0.02%
  Complexity     5053     5053
============================================
  Files           487      487
  Lines         22217    22229      +12
  Branches       2359     2365       +6
============================================
+ Hits          15602    15606       +4
- Misses         5412     5414       +2
- Partials       1203     1209       +6

Impacted Files
Coverage Δ

api/src/main/java/ai/djl/ndarray/NDSerializer.java
83.94% <66.66%> (-1.78%)
:arrow_down:

...i/src/main/java/ai/djl/ndarray/types/DataType.java
88.73% <80.00%> (-1.27%)
:arrow_down:

...ava/ai/djl/translate/ServingTranslatorFactory.java
78.28% <0.00%> (-1.32%)
:arrow_down:

.../main/java/ai/djl/benchmark/AbstractBenchmark.java
90.00% <0.00%> (-1.18%)
:arrow_down:

...mark/src/main/java/ai/djl/benchmark/Arguments.java
88.42% <0.00%> (-0.53%)
:arrow_down:

api/src/main/java/ai/djl/repository/Artifact.java
87.80% <0.00%> (+1.62%)
:arrow_up:

Continue to review full report at Codecov.

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


Ripple Effect Does not work on input submit

Here's a codepen: http://codepen.io/mateeyow/pen/WvgGLo

Confirmed.
Seems like any <input type='button'> doesn’t work either and I’m not sure there’s anything we can do about it. Thanks for issuing, we’ll look into it.

@surma Thanks, but do you even sleep? :laughing:

@mateeyow I am a diagnosed sleep-coder.

There isn't anything we can do. You should use a button element instead of input here. Inputs can't have children nodes, so the ripple effect (which is based on using some children elements and a parent container iirc) doesn't have the right elements in places it needs.
Why exactly are you trying to use an input node over a button?

Yup, I used button element. I was just wondering why it doesn't work. I thought it works the same as the aesthetic of the button.

It's because of the childnode problem. Inputs have their own shadow dom, but touching that is beyond what MDL can and should do. The only way to make this function is to manipulate that. Following any instructions we provide, buttons are used and should be continue to get used.
I'm closing this out since it is a technological limitation on what is possible. I think building a hack to make input types work for ripple is just bloat in the end. This is since it is a niche case to begin with, the extra code is wasted for most sites. Button elements work just fine, we should encourage they get used. I can't think of any real need for input types to be used as submit buttons.

@Garbee Ah thanks! Didn’t know we already looked into this.
@mateeyow My suggestion would be along the lines of
Submit

Since when is:
<button type="submit" class="mdl-button mdl-js-button mdl-js-ripple-effect">Submit</button>

Not good enough? :tongue: No need for a javascript event trigger.
We also didn't look into this before afaik. I just know how inputs work and how the ripple stuff functions. The two together don't mix.

Lol. I’m dumb. I’ll be over here, being ashamed of myself.

How does that make me feel? :sob:


Batch Amendment

High Level Overview of Change

Context of Change

Type of Change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Refactor (non-breaking change that only restructures code)
[ ] Performance (increase or change in throughput and/or latency)
[ ] Tests (you added tests for code that already exists, or your new feature included in this PR)
[ ] Documentation update
[ ] Chore (no impact to binary, e.g. .gitignore, formatting, dropping support for older tooling)
[ ] Release

API Impact

[ ] Public API: New feature (new methods and/or new fields)
[ ] Public API: Breaking change (in general, breaking changes should only impact the next api_version)
[ ] libxrpl change (any change that may affect libxrpl or dependents of libxrpl)
[ ] Peer protocol change (must be backward compatible or bump the peer protocol version)

Also, since it seems this PR is still under active development, could you convert it to a draft?

AffectedNodes of the Outer Transaction doesn't includePreviousField.
https://explorer.xrplf.org/wss:batch.nerdnest.xyz/tx/4FACA5DC82834BDD8071C6F6EC57D9FE1E83E189D5BE52D6D4EA7AB3E498E4D5

Looking at the ModifiedNode, the Sequence of AccountRoot has decreased from 30 to 29.
https://explorer.xrplf.org/wss:batch.nerdnest.xyz/tx/1CE0C3D9BB615B60CBD4287A3AF8187C90F459E5F554BFC1087362343A4B7C4C

BatchTxn.BatchIndex is not validated, so any number can be specified, resulting in a jump in the Sequence in AccountRoot.
https://explorer.xrplf.org/wss:batch.nerdnest.xyz/tx/386795456D88DD9059780F1B83CC572DF211CC250A33018543FDFBBC69169641

While Outer Transaction’s result is tecINVARIANT_FAILED, Inner Transactions are successfully submitted to network.
https://explorer.xrplf.org/wss:batch.nerdnest.xyz/tx/1CE0C3D9BB615B60CBD4287A3AF8187C90F459E5F554BFC1087362343A4B7C4C

While Outer Transaction’s result is tecINVARIANT_FAILED, Inner Transactions are successfully submitted to network.
https://explorer.xrplf.org/wss:batch.nerdnest.xyz/tx/1CE0C3D9BB615B60CBD4287A3AF8187C90F459E5F554BFC1087362343A4B7C4C

This is the same issue as above. This will be fixed with a refactor of the stacking views.

Some of the points I made in X are also posted here for the record.

TxnIDs field is not used (Must be coordinated with Standard)
SigningPubKey, Signature of Outer Transaction must be empty string if multi-account Batch.
SigningPubKey of Inner transaction must be empty string

@intelliot Ready For Review


User defined op without input + control dependencies causes op execution error

Define a user-defined op without input, with 1 output:
REGISTER_OP("MyOp")
.Output("output: T")
.Attr(.....)

in python code:
op1 = my_op(attrs)

with tf.control_dependencies([op1]):
op2 = otherOp
This runs OK, both op1 and op2 execute once:
sess.run(op2)
This is WRONG:
sess.run([op1, op2])
op1 will execute 2 times.
If adding an input for MyOp, op1 will execute only once as expected for
sess.run([op1, op2])

@skydoorkai Please include complete code.  Your description so far is unlikely to be true, since a single call to run never runs ops multiple times.

Closing due to lack of response.