Nb optparse to argparse migration

Main reason to migrate from optparse to argparse is python documentation itself.

from: https://docs.python.org/2/library/optparse.html
Deprecated since version 2.7: The optparse module is deprecated and will not be developed further; development will continue with the argparse module.
from: https://docs.python.org/2/library/argparse.html
The argparse module improves on the standard library optparse module in a number of ways including:
Handling positional arguments.
Supporting sub-commands.
Allowing alternative option prefixes like + and /.
Handling zero-or-more and one-or-more style arguments.
Producing more informative usage messages.
Providing a much simpler interface for custom type and action.

Regarding to the migration job done in this pr:

optarse library is removed from the source, all library argument parsing is now done with argparse.
version argument is now handled by argparse, that supports special version argument.
qdstat arguments: fully handled by argparse library.
qdmanage arguments: all optparse arguments are now migrated to argparse.

positional argument parsing (operation) remains "unmodified", in the future it may be changed so argparse also parsing positional arguments.

incompatible arguments (like -r, --all-routers) or (-c --all-entities) are now handled by the special "mutually_exclusive_group".
Help message is also handled by argparse.
Usage message is also handled by argparse.
some unittests created to test specifically the parsing.

some more could be added.

some unittests added to the "main" method in command.py module.
help messages could be customized, right now they are being printed with the default argparse format.
qdstat_help:

usage: qdstat [-h] [-b URL] [-t SECS] [--ssl-certificate CERT] [--ssl-key KEY]
              [--ssl-trustfile TRUSTED-CA-DB] [--ssl-password PASSWORD]
              [--ssl-password-file SSL-PASSWORD-FILE]
              [--sasl-mechanisms SASL-MECHANISMS]
              [--sasl-username SASL-USERNAME] [--sasl-password SASL-PASSWORD]
              [--sasl-password-file SASL-PASSWORD-FILE]
              [--ssl-disable-peer-name-verify] [--version] [-v]
              [-g | -c | -l | -n | -e | -a | -m | --autolinks | --linkroutes | --log | --all-entities]
              [--all-routers | -r ROUTER-ID] [--limit LIMIT]

optional arguments:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  -v, --verbose         Show maximum detail
  --limit LIMIT         Limit number of output rows

Connection:
  Connection Options

  -b URL, --bus URL     URL of the messaging bus to connect to default <IP_ADDRESS>
  -t SECS, --timeout SECS
                        Maximum time to wait for connection in seconds default
                        5
  --ssl-certificate CERT
                        Client SSL certificate (PEM Format)
  --ssl-key KEY         Client SSL private key (PEM Format)
  --ssl-trustfile TRUSTED-CA-DB
                        Trusted Certificate Authority Database file (PEM
                        Format)
  --ssl-password PASSWORD
                        Certificate password, will be prompted if not
                        specifed.
  --ssl-password-file SSL-PASSWORD-FILE
                        Certificate password, will be prompted if not
                        specifed.
  --sasl-mechanisms SASL-MECHANISMS
                        Allowed sasl mechanisms to be supplied during the sasl
                        handshake.
  --sasl-username SASL-USERNAME
                        User name for SASL plain authentication
  --sasl-password SASL-PASSWORD
                        Password for SASL plain authentication
  --sasl-password-file SASL-PASSWORD-FILE
                        Password for SASL plain authentication
  --ssl-disable-peer-name-verify
                        Disables SSL peer name verification. WARNING - This
                        option is insecure and must not be used in production
                        environments

Display:
  Choose what kind of information you want to be displayed

  -g, --general         Show General Router Stats
  -c, --connections     Show Connections
  -l, --links           Show Router Links
  -n, --nodes           Show Router Nodes
  -e, --edge            Show edge connections
  -a, --address         Show Router Addresses
  -m, --memory          Show Router Memory Stats
  --autolinks           Show Auto Links
  --linkroutes          Show Link Routes
  --log                 Show recent log entries
  --all-entities        Show all router entities. Can be combined with --all-
                        routers option

Target:
  Choose destination router to required, default the one you connect to.

  --all-routers         Show entities for all routers in network. Can also be
                        used in combination with other options
  -r ROUTER-ID, --router ROUTER-ID
                        Router to be queried

qdmanage help:
usage: qdmanage [-h] [-b URL] [-t SECS] [--ssl-certificate CERT]
                [--ssl-key KEY] [--ssl-trustfile TRUSTED-CA-DB]
                [--ssl-password PASSWORD]
                [--ssl-password-file SSL-PASSWORD-FILE]
                [--sasl-mechanisms SASL-MECHANISMS]
                [--sasl-username SASL-USERNAME]
                [--sasl-password SASL-PASSWORD]
                [--sasl-password-file SASL-PASSWORD-FILE]
                [--ssl-disable-peer-name-verify] [--version] [-v]
                [-r ROUTER-ID] [--type TYPE] [--name NAME] [--identity ID]
                [--indent INDENT] [--stdin] [--body BODY]
                [--properties PROPERTIES]

optional arguments:
  -h, --help            show this help message and exit
  --version             show program's version number and exit
  -v, --verbose         Show maximum detail
  -r ROUTER-ID, --router ROUTER-ID
                        Router to be queried
  --type TYPE           Type of entity to operate on.
  --name NAME           Name of entity to operate on.
  --identity ID         Identity of entity to operate on.
  --indent INDENT       Pretty-printing indent. -1 means don't pretty-print
                        (default 2)
  --stdin               Read attributes as JSON map or list of maps from
                        stdin.
  --body BODY           JSON value to use as body of a non-standard operation
                        call.
  --properties PROPERTIES
                        JSON map to use as properties for a non-standard
                        operation call.

Connection:
  Connection Options

  -b URL, --bus URL     URL of the messaging bus to connect to default <IP_ADDRESS>
  -t SECS, --timeout SECS
                        Maximum time to wait for connection in seconds default
                        5
  --ssl-certificate CERT
                        Client SSL certificate (PEM Format)
  --ssl-key KEY         Client SSL private key (PEM Format)
  --ssl-trustfile TRUSTED-CA-DB
                        Trusted Certificate Authority Database file (PEM
                        Format)
  --ssl-password PASSWORD
                        Certificate password, will be prompted if not
                        specifed.
  --ssl-password-file SSL-PASSWORD-FILE
                        Certificate password, will be prompted if not
                        specifed.
  --sasl-mechanisms SASL-MECHANISMS
                        Allowed sasl mechanisms to be supplied during the sasl
                        handshake.
  --sasl-username SASL-USERNAME
                        User name for SASL plain authentication
  --sasl-password SASL-PASSWORD
                        Password for SASL plain authentication
  --sasl-password-file SASL-PASSWORD-FILE
                        Password for SASL plain authentication
  --ssl-disable-peer-name-verify
                        Disables SSL peer name verification. WARNING - This
                        option is insecure and must not be used in production
                        environments

Operation:
  Standard operations: QUERY, CREATE, READ, UPDATE, DELETE, GET-TYPES, GET-
  OPERATIONS, GET-ATTRIBUTES, GET-ANNOTATIONS, GET-MGMT-NODES, GET-SCHEMA,
  GET-LOG. Use GET-OPERATIONS to find additional operations.

Codecov Report

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

@@            Coverage Diff            @@
##             master       #2   +/-   ##
=========================================
  Coverage          ?   86.32%
=========================================
  Files             ?       90
  Lines             ?    20364
  Branches          ?        0
=========================================
  Hits              ?    17579
  Misses            ?     2785
  Partials          ?        0

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 759dfd6...65ba3d7. Read the comment docs.


Shareable prefabs

Using @ErikSom's trick of compressing JSON, then turning it into base64 so prefabs can be shared on Discord.
Let's use https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs as the format.
A good compression algorithm is necessary because Discord's character limit per message is presently 2000.
data:application/bombhopperio-prefab+json;compression=lz-string;base64,NobwRALgngDgpmAXJOAPCYA0YYEMBOuAtgM5LipIBMADDdlEgKy3YDGA9jI4uHAHZIwAFQAWASxIACSVIii4UgCZwAZrgCuAGwhStcAG5wtAQgA6/AKJLxuiBylQOG/HvEBrcfwDmYAL7YuPxsohz45GCUiDQAdEwMSLFMAWBB3vqJfgHg0PBC/GFEuFpYOATEZLxgRvgQ4mxwlaCRSAAsdAmIABy02S2I7fRgPF1dNH1RLEMjYxPMrMNIPeMAutiSAMoQuHVsSBD4GnBZmDmwCMj1CNh4hKQRNbuNSM1RALRUAGzTzLOn/R9vp1lnMBh1Ft1ev8ooNOgB2b6ggCMQIhCPG0KQHx+iE+7VBbyR7U6eNW6xIWx29X2h2OfVyFzAAiUMA4XgwN3K9yqkyYOM+AGYhpttrsaUdsPhxN5RBAAGK4NheXyIA4S1I+DLRE5nPLIGBaXBQODhTl3SoULGonifBZpLXCimi6mIdRaEhwbBFby4ABeXguwDA3nwAlwKlKcCIMGgpQARtp9BgVjrIOd8oViqVbhUHiank1LYgPgLPp0qABOKgEpEI8tVmt1iEClgEqilzot6trMAiql7V3FD1ZFZAA

Tour of the compression algorithms

lz-string: works well (sadly operates only on strings, so array buffers need to be turned into strings)
lzma: works well, small file size
brotli: dependency is too big to include in this project
zstd: https://www.npmjs.com/package/zstddec is to be tested, others are too big

My tests
How small can the entities in this level can turn out to be?
The comparisons below are done on base64 strings, close to real-world.

json + lz-string: 1712B
messagepack + lz-string: 1312B 5ms
messagepack + lzma: 872B 77ms

Some naive non-base64 benchmarks (because they all use the default paramters)
615 msgPacked.bin.br
638 msgPacked.bin.zopfli.deflate
644 msgPacked.bin.zopfli.zlib
652 msgPacked.bin.lzma
656 msgPacked.bin.zopfli.gzip
668 msgPacked.bin.lz
682 msgPacked.bin.bz2
690 msgPacked.bin.gz
700 msgPacked.bin.xz
721 msgPacked.bin.lzham
762 msgPacked.bin.zst
1018 msgPacked.bin.lzo
1035 msgPacked.bin.lz4
1065 msgPacked.bin.Z
2464 msgPacked.bin
TL;DR: the lzma module is sturdy and has a good ratio, so let's use that. (but let's make sure the service worker works since it's slow!)
The prefix will be as follow: data:application/vnd.bombhopperio-prefab+msgpack;compression=lzma;base64

Closed by the series of commits leading up to cdcb7d4d95f0af7c3934f8d8d4545bc72b64fda3!


work queue sequences oddness

I have a work queue, after some time some messages were removed after ack and 1 is there waiting to be consumer:
% nats s info WORK -j|jq .state
{
  "messages": 1,
  "bytes": 44,
  "first_seq": 3,
  "first_ts": "2020-09-04T09:46:26.53125897Z",
  "last_seq": 3,
  "last_ts": "2020-09-04T09:46:26.53125897Z",
  "consumer_count": 1
}

If I ack the message, I get this:
{
  "messages": 0,
  "bytes": 0,
  "first_seq": 4,
  "first_ts": "1970-01-01T00:00:00Z",
  "last_seq": 3,
  "last_ts": "2020-09-04T09:46:26.53125897Z",
  "consumer_count": 1
}

The weird thing is first_seq > last_seq

That has been the behavior since the beginning.

When a used stream empties first will be last+1.

Yeah I realise its not new, just noticed it now, seems weird but makes sense as you explain it


docs(plugin config): :memo: updated plugin-config

Description
added @type decorators, added missing TypeName and FieldName variables in the exampleMarkdowns
mergeTypes signature changed to mergeTypes?: Record<string, TypeName[]>
Type of change

[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)

@saihaj this PR complements https://github.com/dotansimha/graphql-code-generator/pull/8839


Link on about page leads to 404 page: https://eclipse.dev/dataspace-protocol-base

Bug Report
Describe the Bug
On https://github.com/eclipse-dataspace-protocol-base/DataspaceProtocol, below the about text the given link "https://eclipse.dev/dataspace-protocol-base" leads to a 404 page.
Type: ?
Expected Behavior
A page with helpful insights.
Observed Behavior

Opened PR
https://github.com/eclipse-dataspace-protocol-base/.eclipsefdn/pull/6


De-register managed server in a autoscaled environment

The weblogic scripts do a great job of explaining how to register a server dynamically. However i get stuck when it comes to de-registering when the environment scales down.
At the moment i am having to go in and manually delete the servers from the admin console.  I have tried to latch a deregister script to one of the sig kill sig term  function but tit looks like the script never gets called.
Im not entirely sure this is a docker weblogic issue or a docker issue in general.  But it would be nice to have some kind of mechanism that does a cleanup after the docker container is shutdown.
i.e run a script to deregsiter it self from the cluster and  remove it self from the admin server etc

I suggest that this is something better managed by the WebLogic Kubernetes Operator.


CustomConsole is missing many methods

Ref https://github.com/facebook/relay/pull/1857/files#r119980384
Would it make sense for CustomConsole to implement (or stub) some of the more advanced console methods? Might be nicer than having to sniff for support in various loggers to avoid erroring out in tests.

It makes sense if you're willing to do so! :)

@taion , @thymikee , which of the functions listed in the MDN Docs for Console need to be implemented? I can jump in to implementing them.

group and groupCollapsed would be nice :D

Can someone point me to certain files that has references to said CustomConsole? I'd like to take on the item, but do need some familiarity on the code base before doing so. Thank you!

@gtoprak The code sits mostly in here: https://github.com/facebook/jest/blob/master/packages/jest-util/src/Console.js. We basically extend Nodes console module and apply some logic to buffer the output.

What's wrong with the pull request submitted by @sumnerevans ? As far as I can see it is just waiting for code review.

That PR is opened against a fork of Jest, not jest itself

#5514


Announce namespaced commands as 'namespace.fnName'

Can you give me a bit context to this change?

The commandName value is only used to announce the command with the beforeCommand and afterCommand hooks. It's useful for these hooks to also receive the namespace, so they can properly identify which command was run (e.g. differentiating browser.url() from browser.mynamespace.url()).

:+1:


gzip support in Ambassador

The title says it all. I couldn't find any mention of such a thing in your docs.

Yes see https://github.com/datawire/ambassador/issues/544 for the architecture work that is in progress to support gzip (and SNI, among others)

Please include Brotli compression as well

@richarddli Since I wrote it for Envoy, I can take the compression integration if no one had.
@krish512 Envoy upstream still doesn’t support Brotli, but it could be easily extended when we get the new compression filter done.

With Ambassador 0.50 RC1 released, how do I use gzip compression?

I don't think that compression was included in this release.

Hey, has this been added to a milestone or is it released yet?

Working on this one.

So for the first item on the checklist, I assume that gzip is a per-listener thing in Envoy? Is it meaningful to configure it per-Mapping?
Assuming that it's not, do we need more than
compression: gzip
in the ambassador Module?


Updated information about block disk devices

Thank you very much for contributing to the development of our product!
Before creating a pull request, we want to make sure that you're aware of some constraints:

We use Github as one of several ways to distribute our product, but we don't use Git as our internal VCS
The files in this repository are automatically created from our internal VCS during the release process
All changes made solely through Git/Github (like merging pull requests) will be lost after the next release
PRs that are specific to Git/Github will be rejected if they conflict with other ways of distribution

So, in order to make your PR permanent, we have to transfer it to our internal VCS. It will be reviewed and tested and eventually become visible in this repository after the next release. Therefore, even if your PR is acceppted, it may not be merged via Git/Github.

Block devices should be configured by generating device-files with mknod, as symlinks are not reliable (they may not be valid within the container). This is already described in the documentation. Also, the EXAConf disk section is identical for file and block devices (no need to duplicate that information).
Release 6.1.3 will contain a new section about disk management that hopefully makes things more clear.


Upgrade sqlx to 0.7.1

This PR includes:

Upgrade of sqlx
Changes to make database-layer and tests compile again

Things to look out for when reviewing:

In a few places connection use has been changed to transaction use because using sqlx::Acquire::acquire in fetch leads to higher-ranked lifetime error that with sqlx::Acquire::begin is not there. This should not be a problem for performance but it is important that no transaction commit is forgotten resulting in a change not being saved to the database. The default without commit is rollback. Test cases should catch this but it is possible we have not everything covered by test cases.

Things that could make sense but are excluded here because the PR is already big:

Entirely removing the self-made Executor trait
Refactoring for execute functions that are not doing much anymore

Related info:

The PR removing the Executor implementations for Transaction and PoolConnection , reason for most of the changes here
How to write a method that can take either a Transaction or a PgPool
Switch from sqlx-data.json to .sqlx/ for builds without active database connection

Congrats and thanks a lot. Let's set a new version for the server in this PR in order to deploy it soon.

@AndreasHuber Can you do this in another PR?


Loading Error

Hello, thanks for your wonderful mod and your attention to this bug report. Everything was working fine last night. Then when I went to log on this morning the game wouldn't load. So I updated UMM and all my mods including ToyBox. The game loads to the menu screen but in the UMM screen the red button indicating that ToyBox has loaded with error was on with the exclamation marks. I then tried to continue my game but it will not load. Please help as  I have many hours invested in this game. Thanks!
Below I have attached the loading log from the UMM and a screenshot showing all my current mods.
Current ToyBox version: 1.4.15

WotRLoadingLog.zip

It looks like it's the same as https://github.com/cabarius/ToyBox/issues/654#issue-1211068718 because of the new game update 1.3.0 that came out yesterday


pxt.microbit.org variable initialisation -> control.onEvent problem

I've created variable DelayServiceID initialised to 9200 and added a control event in Blocks as follows:-

The Javascript shows this:-

This code fails, I'm assume the control.onEvent is being registered with the variable initialised to zero due to the ordering of the code and not the value as specified in the "on start" block. If I change the first line "let DelayServiceID = 9200" in the javascript the code now works but I can't switch back to block editing mode. I've tried switching around the order of the code but this also fails to switch back to Blocks. Is this a bug or is there a different way this can be achieved?

Events are registered first. This is avoid the case where they get never a chance to register due to a infinite loop. This bug can't be fixed in the current design. There is a workaround of setting the id directly in the event handlers.


reCaptcha not stopping a form from sending?

I was able to install and have reCaptcha show successfully on the footer of a site I'm editing (but did not develop). The form—pixelandtonic's contact form—is meant to get a visitor's name and email address.
However, the form still validates even though I didn't check the reCaptcha panel. I only have {{craft.recaptcha.render('dark', 'compact')}} on the page. I tried to include the saveuser code from the readme, but I don't think it's necessary for what I use the form for.
What am I missing?

How does this work?  I am having same issue.  Form just submits.  I assume we need the server side response object but isn't that part of this plugin?

Go to craft/plugins/contactform/controllers/ContactFormController.php at line 34 adding:
// required to install craft recaptcha plugin
        $captcha = craft()->request->getPost('g-recaptcha-response');
        $verified = craft()->recaptcha_verify->verify($captcha);
        if(!$verified)
        {
            //Uh oh...its a robot. Don't process this form!
            craft()->userSession->setError('Please check the recaptcha, to prove that you are not a robot!');
            $errorMsg = array(
                'message' => $message,
				'recaptchamessage' => "Please verify your recaptcha"
			);
			$this->renderTemplate("contact", $errorMsg, true, true);
        }

My contact page is {{ siteUrl }}contact, please change it based on the template you wanted to show.
And the in html/twig, you can do
{% if recaptchamessage is defined %}
{{ recaptchamessage }}
{% endif %}

to grab the error.
This is temporary fix, and the important thing is its working.

Hello, adding this code to my pixelandtonic contact form still does not stop it from sending, unfortunately. I can confirm that my template name matches - did anyone get this working with success?


Add pyproject.toml for Custom Node Registry

We are working with dr.lt.data and comfyanon to build a global registry for custom nodes (similar to PyPI). Eventually, the registry will be used as a backend for the UI-manager. All nodes go through a verification process before being published to users.
The main benefits are that authors can

publish nodes by version and users can safely update nodes knowing ahead of time if their workflows will break or not
automate testing against new commits in the comfy repo and existing workflows through our CI/CD dashboard

Action Required:

[ ] Go to the registry. Login and create a publisher id (everything after the @ sign on your registry profile).
[ ] Add the publisher id into the pyproject.toml file.
[ ] Merge the separate Github Actions PR, then merge this PR.

If you want to publish the node manually, install the cli by running pip install comfy-cli, then run comfy node publish
Check out our docs if you want to know more about the registry. Otherwise, feel free to message me on discord at haohao_81202 or join our server if you have any questions!

hey @sugarkwork, wanted to send a small nudge and ask if you had any questions!

@sugarkwork, wondering if there's any way we can support you on this PR!


Initial draft of status codes and handling

@jyao1 @taprinz @richkong88
Some things to consider / contemplate.

I got rid of the error origin because in a lot of cases the origin is either unknown or not easily attributable to another entity.
Having these unique error codes has the potential to increase code size beyond an acceptable level for some integrators. It's possible we might offer an optimization where libpsdm only distinguishes between error (status == 1) and success (status == 0). This would mean libspdm would be prohibited from taking different actions based on the status, ie it couldn't do if status == LIBSPDM_STATUS_INVALID_STATE_PEER) do_something;
The list of error codes is obviously not complete.

Signed-off-by: Steven Bellock<EMAIL_ADDRESS>

@ekohandel Do you know why this failed the style compliance check?

@ekohandel Do you know why this failed the style compliance check?

It is complaining about larger then 4 space indentation on the line after #define:
#define LIBSPDM_STATUS_SUCCESS \
	LIBSPDM_STATUS_CONSTRUCT(LIBSPDM_SEVERITY_SUCCESS, LIBSPDM_SOURCE_SUCCESS, 0x0000)

It wants it to be:
#define LIBSPDM_STATUS_SUCCESS \
    LIBSPDM_STATUS_CONSTRUCT(LIBSPDM_SEVERITY_SUCCESS, LIBSPDM_SOURCE_SUCCESS, 0x0000)

But this points out that I need to improve logging and output the changes uncrustify is expecting.

I think the initial draft is good. Let's move forward.
I guess we might revisit the draft, after we see more real cases in the code.

@ekohandel Do you know why this failed the style compliance check?

It is complaining about larger then 4 space indentation on the line after #define:
#define LIBSPDM_STATUS_SUCCESS \
	LIBSPDM_STATUS_CONSTRUCT(LIBSPDM_SEVERITY_SUCCESS, LIBSPDM_SOURCE_SUCCESS, 0x0000)

It wants it to be:
#define LIBSPDM_STATUS_SUCCESS \
    LIBSPDM_STATUS_CONSTRUCT(LIBSPDM_SEVERITY_SUCCESS, LIBSPDM_SOURCE_SUCCESS, 0x0000)

But this points out that I need to improve logging and output the changes uncrustify is expecting.

@steven-bellock, I added #580 to output the diff expected by uncrustify when it fails.

Some things to consider / contemplate.

Having these unique error codes has the potential to increase code size beyond an acceptable level for some integrators. It's possible we might offer an optimization where libpsdm only distinguishes between error (status == 1) and success (status == 0). This would mean libspdm would be prohibited from taking different actions based on the status, ie it couldn't do if status == LIBSPDM_STATUS_INVALID_STATE_PEER) do_something;

It would be good to have an idea of how much code size might increase (although obviously hard to guess impact without having performed all the replacements). I think the ability to at least have some ability to take actions based on the status would be beneficial - for example, for certain errors we could maybe determine whether a retry is possible, or if we need to error out hard.
The makeup & definitions look good to me otherwise, though.

I know this isn't in the current spec, but I found it useful for some internal work, to return a slightly different error value depending on which if statement triggered an error.
For example, in the following code, there are 3 different error cases, but they all return the same thing.
        LIBSPDM_CONNECTION_STATE_AFTER_CAPABILITIES) {
        return libspdm_generate_error_response(spdm_context,
                                               SPDM_ERROR_CODE_UNEXPECTED_REQUEST,
                                               0, response_size, response);
    }

    if (request_size < sizeof(spdm_negotiate_algorithms_request_t)) {
        return libspdm_generate_error_response(spdm_context,
                                               SPDM_ERROR_CODE_INVALID_REQUEST, 0,
                                               response_size, response);
    }
    if (request_size <
        sizeof(spdm_negotiate_algorithms_request_t) +
        sizeof(uint32_t) * spdm_request->ext_asym_count +
        sizeof(uint32_t) * spdm_request->ext_hash_count +
        sizeof(spdm_negotiate_algorithms_common_struct_table_t) *
        spdm_request->header.param1) {
        return libspdm_generate_error_response(spdm_context,
                                               SPDM_ERROR_CODE_INVALID_REQUEST, 0,
                                               response_size, response);
    }```

 I thought there was an "origin" discussed before within the error structure, which we could differentiate situations similar to this. I'm wondering if we could bring that back into the error fields returned at least internally to libspdm, as it could facilitate debug, especially in environments where its tough to get a debugger. I know I saved a lot of time by knowing the exact if statement that failed by having extra error data.

Some things to consider / contemplate.

Having these unique error codes has the potential to increase code size beyond an acceptable level for some integrators. It's possible we might offer an optimization where libpsdm only distinguishes between error (status == 1) and success (status == 0). This would mean libspdm would be prohibited from taking different actions based on the status, ie it couldn't do if status == LIBSPDM_STATUS_INVALID_STATE_PEER) do_something;

It would be good to have an idea of how much code size might increase (although obviously hard to guess impact without having performed all the replacements). I think the ability to at least have some ability to take actions based on the status would be beneficial - for example, for certain errors we could maybe determine whether a retry is possible, or if we need to error out hard.
The makeup & definitions look good to me otherwise, though.

@taprinz We can leave it is-as and then if it becomes a problem revisit the issue. I don't think libspdm will have many cases where it evaluates the status; it just passes it up to the integrator. If we need to implement simple status codes it it isn't very difficult.

I thought there was an "origin" discussed before within the error structure, which we could differentiate situations similar to this. I'm wondering if we could bring that back into the error fields returned at least internally to libspdm, as it could facilitate debug, especially in environments where its tough to get a debugger. I know I saved a lot of time by knowing the exact if statement that failed by having extra error data.

@richkong88 Origin wouldn't help in the case of, for example, isolating which parameter of a message is invalid. Seems like you'd want to use DEBUG() whenever an error is encountered that has the additional info. In the case of validating a message the return status would be LIBSPDM_STATUS_INVALID_MESS_FIELD and then the DEBUG() would state exactly which field is bad.

@richkong88 Origin wouldn't help in the case of, for example, isolating which parameter of a message is invalid. Seems like you'd want to use DEBUG() whenever an error is encountered that has the additional info. In the case of validating a message the return status would be LIBSPDM_STATUS_INVALID_MESS_FIELD and then the DEBUG() would state exactly which field is bad.

Yeah, having DEBUG print is ideal, but may be difficult in some environments, or if you are the requester and don't have access to the responder source. I feel like we the "error data" passed back in the requester and it is usually 0. If we could make use of it and send back some non-zero code instead, it could be helpful to speed up integration. In any case, this is against spec, so I'll bring it up with the spec owners and drive it there.

@richkong88 Origin wouldn't help in the case of, for example, isolating which parameter of a message is invalid. Seems like you'd want to use DEBUG() whenever an error is encountered that has the additional info. In the case of validating a message the return status would be LIBSPDM_STATUS_INVALID_MESS_FIELD and then the DEBUG() would state exactly which field is bad.

Yeah, having DEBUG print is ideal, but may be difficult in some environments, or if you are the requester and don't have access to the responder source. I feel like we the "error data" passed back in the requester and it is usually 0. If we could make use of it and send back some non-zero code instead, it could be helpful to speed up integration. In any case, this is against spec, so I'll bring it up with the spec owners and drive it there.

@xiaoyuruan beat you to it. https://github.com/DMTF/Security-TF/issues/1784

Question on severity [bit 31]:

In original proposal, BIT-31 is ERROR. Here is is severity. Are they same? or do they have different meaning?
What if BIT-31 is 0? if non-severity error == warning ?

Yeah, having DEBUG print is ideal, but may be difficult in some environments, or if you are the requester and don't have access to the responder source. I feel like we the "error data" passed back in the requester and it is usually 0. If we could make use of it and send back some non-zero code instead, it could be helpful to speed up integration. In any case, this is against spec, so I'll bring it up with the spec owners and drive it there.

I don't believe spec will be updated shortly. I recommend we separate them to two different issues.
First, we need a solution in Q1, under current restriction - no error data. There is no need to add origin.
Second, if spec is updated later, we can figure out how to incorporate. We may add origin in reserved field, which is a compatible change.

@richkong88 Origin wouldn't help in the case of, for example, isolating which parameter of a message is invalid. Seems like you'd want to use DEBUG() whenever an error is encountered that has the additional info. In the case of validating a message the return status would be LIBSPDM_STATUS_INVALID_MESS_FIELD and then the DEBUG() would state exactly which field is bad.

Yeah, having DEBUG print is ideal, but may be difficult in some environments, or if you are the requester and don't have access to the responder source. I feel like we the "error data" passed back in the requester and it is usually 0. If we could make use of it and send back some non-zero code instead, it could be helpful to speed up integration. In any case, this is against spec, so I'll bring it up with the spec owners and drive it there.

@xiaoyuruan beat you to it. https://github.com/DMTF/Security-TF/issues/1784

Xiaoyu is on my team. I brought it up to him to bring into the spec :)

@jyao1 I've updated the severity so that it is four bits now.
@richkong88 It is truly a small world we inhabit.


Two suggestions about terminals

[ ] Can the terminal add replication function
[x] Can the terminal add a button to clear the terminal's output

Thanks for your suggestion!
For your second suggestion I will add a shortcut to do that for eg: Ctrl+I
And can you explain bit more about your first suggestion

感谢您的建议！
对于您的第二个建议，我将添加一个快捷方式来执行此操作，例如：Ctrl+I
你能多解释一下你的第一个建议吗

The first suggestion is to long press the terminal without a pop-up copy option

https://github.com/bajrangCoder/acode-plugin-acodex/assets/86006776/f83c4af8-9238-40c5-a095-beee396be8f2

感谢您的建议！
对于您的第二个建议，我将添加一个快捷方式来执行此操作，例如：Ctrl+I
你能多解释一下你的第一个建议吗

The first suggestion is to long press the terminal without a pop-up copy option

Currently there is no any full fledged touch screen support is available for touch device on terminal parser library used by Acodex but I am researching about alternatives , for just use double tap on words and press and hold to copy paste or use key shortcut

Your second feature request is added. Check https://github.com/bajrangCoder/acode-plugin-acodex/commit/2860097fdee1df61c7dd8b10515373aba1d1c4d9

Both features are now available check https://github.com/bajrangCoder/acode-plugin-acodex/pull/73


Add -s alias for --short, missing dependencies pyyaml and pyxdg

Set up a fresh virtualenv and these two modules were used but missing from setup.py.

This pull request implements #345 and adds a few missing dependencies from setup.py.

Will work on a fix for the breaking test.  I swear tests passed when I ran before the commit.

I am getting extremely weird behavior for the following two scenarios.  The only difference is the single quotes around the second date that cause it to pass.

  Scenario: --short and -s display the short version of entries (only the title)  # features/core.feature:51
    Given we use the config "basic.yaml"                                          # features/steps/core.py:49 0.000s
    When we run "jrnl -on 2013-06-10 --short"                                     # features/steps/core.py:73 0.008s
    Then the output should be "2013-06-10 15:40 Life is good."                    # features/steps/core.py:147 0.000s
    When we run "jrnl -on 2013-06-10 -s"                                          # features/steps/core.py:73 0.003s
    Then the output should be "2013-06-10 15:40 Life is good."                    # features/steps/core.py:147 0.000s
      Assertion Failed: Output has 2 lines (expected: 1)
      Captured stdout:
      2013-06-10 15:40 Life is good.
      2013-06-10 15:40 Life is good.

Failing scenarios:
  features/core.feature:51  --short and -s display the short version of entries (only the title)

0 features passed, 1 failed, 0 skipped
0 scenarios passed, 1 failed, 0 skipped
4 steps passed, 1 failed, 0 skipped, 0 undefined
Took 0m0.012s

And the next passes with single quotes around the date

  Scenario: --short and -s display the short version of entries (only the title)  # features/core.feature:51
    Given we use the config "basic.yaml"                                          # features/steps/core.py:49 0.000s
    When we run "jrnl -on 2013-06-10 --short"                                     # features/steps/core.py:73 0.007s
    Then the output should be "2013-06-10 15:40 Life is good."                    # features/steps/core.py:147 0.000s
    When we run "jrnl -on '2013-06-10' -s"                                        # features/steps/core.py:73 0.003s
    Then the output should be "2013-06-10 15:40 Life is good."                    # features/steps/core.py:147 0.000s

1 feature passed, 0 failed, 0 skipped
1 scenario passed, 0 failed, 0 skipped
5 steps passed, 0 failed, 0 skipped, 0 undefined
Took 0m0.010s

I have been debugging for an hour stepping through code but can't find the problem.  The interesting parts are features/steps/core.py check_output():

def check_output(context, text=None):
    text = (text or context.text).strip().splitlines()
    out = context.stdout_capture.getvalue().strip().splitlines()

and StringIO.py

    def getvalue(self):
        """
        Retrieve the entire contents of the "file" at any time before
        the StringIO object's close() method is called.

        The StringIO object can accept either Unicode or 8-bit strings,
        but mixing the two may take some care. If both are used, 8-bit
        strings that cannot be interpreted as 7-bit ASCII (that use the
        8th bit) will cause a UnicodeError to be raised when getvalue()
        is called.
        """
        _complain_ifclosed(self.closed)
        if self.buflist:
            self.buf += ''.join(self.buflist)
            self.buflist = []
        return self.buf

In the bugged version, in StringIO on the first step that runs jrnl, buflist is empty, but on the second run it contains the output from the find command.  This doesn't happen in the good version.  In both versions StringIO is the same instance in both steps.
It is even stranger that adding quotes around the date fixes the problem, but changing -s to --short doesn't.
I'm new to Python and behave so, although I'm not happy about it it, I'd prefer to submit this change with the hack of single quotes to avoid the bug.  @maebert Are you ok with the hack?

The problem is a little bit tricky. Basically, when do the the output should be step it checks the output of the FULL scenario. So when you run it twice, the output will be two (identical lines). With the quotes it fails because for some unrelated reason the argument in quotes does not get passed on to jrnl (I just fixed that on 2.0 - now your tests should fail properly whether you use quotes or not ;-)
You'll have to use two different tests here.
    Scenario: --short displays the short version of entries (only the title)
        Given we use the config "basic.yaml"
        When we run "jrnl -on 2013-06-10 --short"
        Then the output should be "2013-06-10 15:40 Life is good."

    Scenario: -s displays the short version of entries (only the title)
        Given we use the config "basic.yaml"
        When we run "jrnl -on 2013-06-10 -s"
        Then the output should be "2013-06-10 15:40 Life is good."

I did this and merged this in manually. Thanks!

I come from a Perl and C++ background and you can probably tell I'm new to Python.  Thank you very much for taking the time to explain the errors and point out the mistakes in my PR.

No, thank you for contributing! This was a tricky problem indeed and took me some time to figure out, and heck, I wrote the code ;-)


Crashed: NSOperationQueue - URLDataPromise

I'm receiving this crash in 2 completely different apps. So I would asume other people also encountered this issue and was first of all wondering if anyone knows the cause and second if it can be fixed.
Crashed: NSOperationQueue 0x175f8d30 :: NSOperation 0x1b5a9410 (QOS: LEGACY)
EXC_BREAKPOINT 0x00000000e7ffdefe
Crash log:
Crashed: NSOperationQueue 0x175f8d30 :: NSOperation 0x1b5a9410 (QOS: LEGACY)
0  PromiseKit                     0x55d854 _TFFZFC10PromiseKit14URLDataPromise2goFTCSo12NSURLRequest4bodyFFTGSqCSo6NSData_GSqCSo13NSURLResponse_GSqCSo7NSError__T_T__S0_U_FTFS2_T_FPs9ErrorType_T__T_U_FTGSqS2__GSqS3__GSqS4___T_ + 780
1  PromiseKit                     0x55cf60 _TPA__TFFZFC10PromiseKit14URLDataPromise2goFTCSo12NSURLRequest4bodyFFTGSqCSo6NSData_GSqCSo13NSURLResponse_GSqCSo7NSError__T_T__S0_U_FTFS2_T_FPs9ErrorType_T__T_U_FTGSqS2__GSqS3__GSqS4___T_ + 144
2  PromiseKit                     0x55cf60 _TPA__TFFZFC10PromiseKit14URLDataPromise2goFTCSo12NSURLRequest4bodyFFTGSqCSo6NSData_GSqCSo13NSURLResponse_GSqCSo7NSError__T_T__S0_U_FTFS2_T_FPs9ErrorType_T__T_U_FTGSqS2__GSqS3__GSqS4___T_ + 144
3  CFNetwork                      0x21007399 __75-[__NSURLSessionLocal taskForClass:request:uploadFile:bodyData:completion:]_block_invoke + 16
4  CFNetwork                      0x21016b83 __49-[__NSCFLocalSessionTask _task_onqueue_didFinish]_block_invoke + 278
5  Foundation                     0x21311659 __NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK__ + 8
6  Foundation                     0x21272723 -[NSBlockOperation main] + 146
7  Foundation                     0x21264cf9 -[__NSOperationInternal _start:] + 768
8  Foundation                     0x21313911 __NSOQSchedule_f + 192
9  libdispatch.dylib              0x2067a423 _dispatch_queue_drain$VARIANT$mp + 1758
10 libdispatch.dylib              0x20679a61 _dispatch_queue_invoke$VARIANT$mp + 284
11 libdispatch.dylib              0x2067c15d _dispatch_root_queue_drain + 396
12 libdispatch.dylib              0x2067bfcd _dispatch_worker_thread3 + 96
13 libsystem_pthread.dylib        0x20831b29 _pthread_wqthread + 1024
14 libsystem_pthread.dylib        0x20831718 start_wqthread + 8

Hard to debug without some idea of the input that causes it. Unless you're saying it happens for all NSURLSession promise usage?

It only happens once and a while and I have no idea under which conditions since I never ran into it myself. I also see it back at crash reports.

I think this was: #323


staging: virtglrenderer broken

Issue description
Another cause of being unable to build NixOS VM's (#43650 ).
...What's going on here, folks? :(
Steps to reproduce
$ nix build -I testpkgs=https://github.com/NixOS/nixpkgs/archive/dca7b10fd52371548870f7a8aba90c39574ca89e.tar.gz  '(import <testpkgs> {}).virglrenderer'

Build log: https://gist.github.com/dtzWill/eb4bd6cb8738017b9ff8cf3e3fcaaa48
Also seen by ofborg here.
Technical details
See other issue.

maybe fixed with this: 2bd8e98eba5798ae948335da6db304fe10626904
So if a fix is made on staging-next, should it not be made on staging?
Is there a way to mark staging as being known completely-broken? (is this a state it will be more frequently now?)
(cc https://github.com/NixOS/rfcs/pull/26)
I don't build my system on staging or anything but I do send PR's there often and it's usually in good shape -- certainly at least in terms of packages building.
I'd pick that myself (assuming it fixes at least this bit?) but I'm not sure if that's how this goes.
As staging-next gets fixes, should it just be continuously merged into staging (or at least "as needed")?

I had tested the commit to fix the virgl build and that's how I found about the problem.  I haven't yet worked out good details of the new workflow :-)  Merging sounds OK, so let me do it at least now.


Global styling?

How do you do global styling similar to how Material Angular does it?
https://material.angular.io/guide/theming
I've seen supposed examples on how to do this, but always come up dry.

You have to override the scss file from Materialize and import your file in .angular-cli.json instead of Materialize scss file.
If you want to define new color palette you have to copy _color.scss file and your new color palette inside your new file.
You can copy _variables.sccs. In this file you can override individual component style.
Finally you will have to create a file which import your color and variable files.
@charset "UTF-8";

// Color
@import "assets/color";

// Variables;
@import "assets/variables";

// Basic Materialize imports
@import "node_modules/materialize-css/sass/materialize";

This will be this file you will include in your .angular-cli.json :
"styles": [
  "styles.scss",
+ "../assets/your-new-theme.scss"
],

To add to @scote description, you can use http://mcg.mbitson.com to generate palettes from any color and use it in your custom _color.scss file.


Include multiple partials

Hello,
I want to ask whether there is a way to include multiple code snippets/partials in one theme. Couldn't figure out how to do this. Thanks

Can you clarify? You can have as many include statements as you want in a template. Where exactly are you running into trouble?

I have several partials with different contents. All of them contain some code for example a navbar. I need to include those partials into my default theme. But when I try to archive this I get the "Did you forget the {% block %} tags?" message

We'd need to see some code. It sounds like you may be confusing the twig primitives embed, extends, and include. You can also look at the default "new theme" templates and see how yours differ.

Closing as not a Grav issue but an issue in your Twig template. @Perlkonig suggestion should already solve your doubt, comment if not.


Is it possible to connect to Azure Blob Storage?

Hi,
I want to create remote corpus storage for storing *.cdm.json files in the container in Azure Blob Storage. Is it possible to use ADLS or Remote Adapter for this purpose? If yes, could you provide some examples?

Yes, the ADLSAdapter is for this purpose.
In samples folder, we have a read-local-save-adls sample which read a model.json file from the local folder and save it to adls blob storage. It's not exactly the same but the way it initializes an ADLSAdapter and mount it to the corpus could be a reference.

@dingbx ,
I ran this example with my credentials. Maybe there are some incorrect values. Could you check the screenshot?

for client_id I use Azure storage account name.
And errors which I got:

Can you try following hostname and root?
hostname = 'account.blob.core.windows.net',
root = '/ms-common-data-model/test'
And in the sample's sample-data/model.json, the placeholder field  needs to be replaced as your account name, since it will be checked in the ADLSAdapter.
There are some other details that you might need to be aware of in the README.md.

hi @dingbx ,
I tried to do all steps mentioned by you and I got the next error:
_2020-11-04 09:49:19,243	ERROR	logger.py:47	_log	2020/11/04 06:49:19,2422 | PersistenceLayer | Failed to write to the file 'model.json' for reason 'Get Token request returned http error: 400 and server response: {"error":"unauthorized_client","error_description":"AADSTS700016: Application with identifier '<CLIENT_ID>' was not found in the directory '<TENANT_ID>'. This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. You may have sent your authentication request to the wrong tenant.\r\nTrace ID: 5febff78-b7f4-4885-95ac-a66254607600\r\nCorrelation ID: 5586da25-b5d2-4bd6-aa91-be1b50919a6f\r\nTimestamp: 2020-11-04 06:49:19Z","error_codes":[700016],"timestamp":"2020-11-04 06:49:19Z","trace_id":"5febff78-b7f4-4885-95ac-a66254607600","correlation_id":"5586da25-b5d2-4bd6-aa91-be1b50919a6f","error_uri":"https://login.windows.net/error?code=700016"}' | _save_document_as_async_

Hi,
Are you sure you have access to the blob storage? Could you please check with the settings in your account?
Let me know if you need more help.
Thanks

hi @llawwaii ,
I'm sure that I have access to the Azure Blob Storage. More over I've connected to this blob using the same credentials and Azure Blob Storage library.

Hi @jayrumi ,
I think the problem is that you mentioned 'for client_id I use Azure storage account name',
your client id should be a id with the same length as your tenant id.

Closing due to lack of response. Please reopen if necessary.


NPM installing @badeball/cypress-cucumber-preprocessor failing on windows

Current behavior

Attempting to install @badeball/cypress-cucumber-preprocessor version 12.0.1 from npm registry<EMAIL_ADDRESS>.

Works on macs but now windows machines.

Error:

Does not work with other versions of badeball (13, 14, 15, 16)

Am able to install fine on macs/linux machines, but not windows machines.

Desired behavior

@badeball/cypress-cucumber-preprocessor should install with npm install.

Test code to reproduce

Run npm install<EMAIL_ADDRESS>in the terminal of your node project's root directory to install this package into your package.json.
Can run with different versions of the package as well: npm install @badeball/cypress-cucumber-preprocessor@<different package version>

Versions

Cypress version: cypress v. 12.3.0
Preprocessor version: @cypress/webpack-preprocessor v. ^5.17.1
Node version: node v. 16.19.0

Checklist

[x] I've read the FAQ.
[x] I've read instructions for logging issues.
[x] I'm not using<EMAIL_ADDRESS>(package name has changed and it is no longer the most recent version, see #689).

This isn’t something I can help you with. For reference, that’s esbuild erroring.

Related issue: https://github.com/evanw/esbuild/issues/467#issuecomment-1148404256

Ok, thanks @badeball !


[move-only-addresses] Slicing some patches off of the larger patch.

In this PR, I am just slicing off some work from the larger series of address move only patches that I am preparing. Specifically this:

Teaches the SILVerifier that like copy_value, load [copy] and copy_addr [init] can not be used on move only typed values once we are in canonical SIL.
It adds a new SIL instruction called explicit_copy_addr. This is exactly like copy_addr except that one /can/ use it to copy move only values once we are in canonical SIL. It has two uses: to enable us to implement explicit copy for no implicit copy addresses and to enable the move checker to transform copy_addr that it cannot eliminate into explicit_copy_addr so that we still produce valid SIL when we emit an error. NOTE: We don't need this for load [copy], since we can just transform the load [copy] into a load_borrow + explicit_copy_value.
Since I added docs to SIL.rst for explicit_copy_addr, I decided to clean up the SIL.rst docs around explicit_copy_value/copy_value.
With all that together I added a small very preliminary section to SIL.rst about move only types and their restriction around copy_value/copy_addr/load [copy] and how one can use the explicit variants when appropriate [see point 2 above].

@swift-ci test


Updated EEPROM driver to use bit utility

This commit updates all the bit manipulation in the eeprom lpc40xx driver to use the bit utility.

Coverage remained the same at 77.435% when pulling 4bcec71507d3dd0b173f6200e76909d160f90fdd on harmandersihra:unstable into c5134cb5d24c11c4b831e2058ebd1e727f8984b6 on kammce:master.


Move config to its own file.

Current coverage is 11.11% (diff: 100%)

Merging #25 into master will not change coverage

@@             master        #25   diff @@
==========================================
  Files             1          1
  Lines            45         45
  Methods           0          0
  Messages          0          0
  Branches          8          8
==========================================
  Hits              5          5
  Misses           39         39
  Partials          1          1

Powered by Codecov. Last update 3ab1094...6aa2665


ModalBottomSheet doesn't render transparen color on iOS #133120

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
Set the backgroundColor: Colors.transparent in the function showModalBottomSheet
Expected results
Background color should be transparent in iOS, same as Android.
Actual results
Background color is white on iOS it should be transparent
Code sample
Code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      themeMode: ThemeMode.dark,
      theme: ThemeData(
        colorScheme: const ColorScheme.dark(),
        useMaterial3: true,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        title: Text(widget.title),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: () {
          showModalBottomSheet(
            context: context,
            builder: (_) {
              return DraggableScrollableSheet(
                expand: false,
                initialChildSize: 0.9,
                builder: (_, scrollController) {
                  return BottomSheet(
                    enableDrag: true,
                    builder: (context) {
                      return SingleChildScrollView(
                        controller: scrollController,
                        child: const Column(
                          children: [
                            ListTile(title: Text('Item 1')),
                            ListTile(title: Text('Item 2')),
                            ListTile(title: Text('Item 3')),
                          ],
                        ),
                      );
                    },
                    onClosing: () {},
                  );
                },
              );
            },
            backgroundColor: Colors.transparent,
            enableDrag: true,
            isScrollControlled: true,
          );
        },
        tooltip: 'Show Bottom Sheet',
        child: const Icon(Icons.add),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]
https://github.com/flutter/flutter/assets/22465800/080be29b-f2a7-4e02-96da-2451f8bd2944

Logs
No response
Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.13.7, on macOS 13.0 22A380 darwin-arm64, locale en-IN)
    • Flutter version 3.13.7 on channel stable at /Users/bhavikmakwana/Documents/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 2f708eb839 (4 days ago), 2023-10-09 09:58:08 -0500
    • Engine revision a794cf2681
    • Dart version 3.1.3
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.2)
    • Android SDK at /Users/bhavikmakwana/Library/Android/sdk
    • Platform android-33, build-tools 33.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • android-studio-dir = /Applications/Android Studio.app
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.1.2)
    • IntelliJ at /Users/bhavikmakwana/Applications/JetBrains Toolbox/IntelliJ IDEA Ultimate.app
    • Flutter plugin version 74.0.4
    • Dart plugin version 231.9065

[✓] IntelliJ IDEA Ultimate Edition (version 2023.1.2)
    • IntelliJ at /Users/bhavikmakwana/Library/Application Support/JetBrains/Toolbox/apps/IDEA-U/ch-0/231.9011.34/IntelliJ IDEA.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] IntelliJ IDEA Ultimate Edition (version 2023.1.1)
    • IntelliJ at /Users/bhavikmakwana/Library/Application Support/JetBrains/Toolbox/apps/IDEA-U/ch-0/231.8770.65/IntelliJ IDEA.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] Connected device (3 available)
    • iPhone SE (3rd generation) (mobile) • 62FC5B1D-E25A-4069-8E63-56EF3E7CD007 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • macOS (desktop)                     • macos                                • darwin-arm64   • macOS 13.0 22A380 darwin-arm64
    • Chrome (web)                        • chrome                               • web-javascript • Google Chrome 118.0.5993.70

[✓] Network resources
    • All expected network resources are available.

• No issues found!

I checked this issue #133120 but as it is marked as resolved, had to open a new issue.

Hi @ibhavikmakwana. Thanks for filing this. I see this is an issue with impeller on the latest stable channel but this has been fixed on the latest master channel.

stable, master flutter doctor -v

[✓] Flutter (Channel stable, 3.13.7, on macOS 13.0 22A380 darwin-arm64, locale
    en-NG)
    • Flutter version 3.13.7 on channel stable at
      /Users/damilolaalimi/sdks/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 2f708eb839 (3 days ago), 2023-10-09 09:58:08 -0500
    • Engine revision a794cf2681
    • Dart version 3.1.3
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/damilolaalimi/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/damilolaalimi/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E300c
    • CocoaPods version 1.12.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      17.0.6+0-17.0.6b802.4-9586694)

[!] Android Studio (version unknown)
    • Android Studio at /Users/damilolaalimi/Downloads/Android Studio
      Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to determine Android Studio version.
    • Java version OpenJDK Runtime Environment (build
      17.0.7+0-17.0.7b1000.6-10550314)

[✓] VS Code (version 1.82.3)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.50.0

[✓] Connected device (4 available)
    • sdk gphone64 arm64 (mobile) • emulator-5556                        •
      android-arm64  • Android 14 (API 34) (emulator)
    • iPhone XS (mobile)          • 3CFD1268-0D52-486E-A12E-6E136E972D94 • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • macOS (desktop)             • macos                                •
      darwin-arm64   • macOS 13.0 22A380 darwin-arm64
    • Chrome (web)                • chrome                               •
      web-javascript • Google Chrome 117.0.5938.149

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

[✓] Flutter (Channel master, 3.16.0-10.0.pre.72, on macOS 13.0 22A380 darwin-arm64, locale en-NG)
    • Flutter version 3.16.0-10.0.pre.72 on channel master at /Users/damilolaalimi/fvm/versions/master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision d479b5e2c6 (72 minutes ago), 2023-10-13 03:35:07 -0400
    • Engine revision b59d779d4f
    • Dart version 3.3.0 (build 3.3.0-20.0.dev)
    • DevTools version 2.28.1

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/damilolaalimi/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/damilolaalimi/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E300c
    • CocoaPods version 1.12.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)

[!] Android Studio (version unknown)
    • Android Studio at /Users/damilolaalimi/Downloads/Android Studio Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to determine Android Studio version.
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)

[✓] VS Code (version 1.82.3)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.50.0

[✓] Connected device (4 available)
    • sdk gphone64 arm64 (mobile) • emulator-5556                        • android-arm64  • Android 14 (API 34) (emulator)
    • iPhone XS (mobile)          • 3CFD1268-0D52-486E-A12E-6E136E972D94 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-4 (simulator)
    • macOS (desktop)             • macos                                • darwin-arm64   • macOS 13.0 22A380 darwin-arm64
    • Chrome (web)                • chrome                               • web-javascript • Google Chrome 117.0.5938.149

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

Closing this as it has been fixed in newer versions, if you disagree, please comment and I'll reopen this.
Thank you!


lost props when creating multiple instance of a component simultaneously

When creating multiple instance of a given component in 1 shot through this kind of code:
var host = document.querySelector('#container');
host.innerHTML = '<x-hello-world name="first"></x-hello-world>' +
  '<x-hello-world name="second"></x-hello-world>';

Only the second one will render with the right name props. The first one will have an undefined name props during render.

Closed by https://github.com/skatejs/skatejs/pull/1110


uv pip compile header does not include --upgrade

I don't see the point of adding --upgrade to the header, since it doesn't make any difference to the final result.
Unless you have specific cases where including --upgrade results in different outcomes, adding it will only cause unnecessary file changes.
By the way, I'm not part of the uv team. I'm just expressing my personal opinion, so whether or not this feature request should be implemented is not up to me.

Yeah, I believe this is intentional.

Unless you have specific cases where including --upgrade results in different outcomes

I don't have an opinion on including it / not including it, but there is a difference when an output file is specified and pre-populated. I found this a little confusing when first using uv pip compile, that it takes the contents of the output file as a starting solution and you need to explicitly call --upgrade to get a new solution.
E.g.
$ echo "pandas" | uv pip compile --exclude-newer 2023-01-01 --python 3.11 -o requirements.txt --annotation-style line -
Resolved 5 packages in 17ms
# This file was autogenerated by uv via the following command:
#    uv pip compile --exclude-newer 2023-01-01 --python 3.11 -o requirements.txt --annotation-style line -
numpy==1.24.1             # via pandas
pandas==1.5.2
python-dateutil==2.8.2    # via pandas
pytz==2022.7              # via pandas
six==1.16.0               # via python-dateutil

$ echo "pandas" | uv pip compile --python 3.11 -o requirements.txt --annotation-style line -
Resolved 5 packages in 11ms
# This file was autogenerated by uv via the following command:
#    uv pip compile --python 3.11 -o requirements.txt --annotation-style line -
numpy==1.24.1             # via pandas
pandas==1.5.2
python-dateutil==2.8.2    # via pandas
pytz==2022.7              # via pandas

$ echo "pandas" | uv pip compile --python 3.11 -o requirements.txt --annotation-style line --upgrade -
Resolved 6 packages in 141ms
# This file was autogenerated by uv via the following command:
#    uv pip compile --python 3.11 -o requirements.txt --annotation-style line -
numpy==2.2.0              # via pandas
pandas==2.2.3
python-dateutil==2.9.0.post0  # via pandas
pytz==2024.2              # via pandas
six==1.17.0               # via python-dateutil
tzdata==2024.2            # via pandas

I would probably err on the side of removing -o requirements.txt from the header, actually.

I would probably err on the side of removing -o requirements.txt from the header, actually.

Wouldn't that make it hard to reproduce the file?

Hmm, well what's the value in including it?

So I can copy and paste the command :)

If the aim is to reproduce, then you need to know if --upgrade was called or not...

I don't think so — you'll reproduce it without --upgrade. --upgrade is for mutating the file.

So I can copy and paste the command :)

If the aim is to reproduce, then you need to know if --upgrade was called or not...

I don't think so — you'll reproduce it without --upgrade. --upgrade is for mutating the file. Right?

I'm not sure what you mean, as above you get different results based on the contents of the output file and whether you call --upgrade or not.
If you want to be able to reproduce the same output with the same input, and the output file is an input (which is what I first found confusing about this command), then you need to know if --upgrade was called or not.
I guess the question is, what is the purpose of including the command? Copy and paste helper? Reproducibility? Copy pip-compile API? Or something else?
I do actually have to do a bit of work in my script that calls uv pip compile so the the -o {OUTPUT_PATH} always looks the same, so I would be happy to delete the few lines that do that logic, but I don't care that much.


Tree view

What feature or improvement do you think would benefit Files?
So I just purchased this, in part because of your rolling up of usage by folder. bravo!
But then I found I can't use the left tree view as a tree view of the drive. boggle. All my dev IDEs are that way, explorer is that way... I don't think I'm gonna be able to use this. Very sad.
Requirements
Allow browse hard drives/network drives/and so on with a live tree view.
Files Version
CBD4-8A8F
Windows Version
10.0.19045.3930
Comments
No response

Thank you for your feedback, a tree view is on the todo list and is being tracked in #1928. You can add a comment or subscribe to the issue to be notified of any updates.


Adds a MeasureString method

(sorta-kinda continuation from #1151)
This PR adds a MeasureString(string, font.Face) method next to the Draw() method in ebiten's text package. It should work with any supported font.Face, even "non-standard" faces like those produced by packages like https://github.com/AndreKR/multiface. MeasureString's code was adapted from the Draw method, so it's just as reliable.
I added this method because I needed a reliable way of measuring text to align it and Go's built-in BoundString method isn't that.
MeasureString only returns width and height as integers. The code below shows how to draw boxes that encompass a drawn string, along with the output:
func DrawTextInBox(dst *ebiten.Image, str string, face font.Face, x, y int) (int, int) {
	w, h := text.MeasureString(str, face)
	wf, hf := float64(w), float64(h)

	m := face.Metrics()
	mHeight := float64(m.Height.Round())

	ebitenutil.DrawRect(dst, float64(x), float64(y) - mHeight, wf, hf, color.Black)
	text.Draw(dst, str, face, x, y, color.White)

	return w, h
}

func (s *DebugScreen) Render(image *ebiten.Image) {
	fps := int(math.Round(ebiten.CurrentFPS()))
	w, h := image.Size()

	_ = image.Fill(color.RGBA{R: 127, G: 127, B: 127, A: 255})

	strings := []string{
		s.GetTitle(),
		"    Line 1: Four spaces and Äccéñtş\nalso a newline with Äccéñtş",
		"Line 2 gcdefg\nダミーテキスト",
	}

	strX := 10
	strY := 32

	for _, s := range strings {
		_, boxH := DrawTextInBox(image, s, res.UIFont, strX, strY)
		strY += boxH + 2 // +2 for a bit of margin between boxes
	}

	strY += 2

	for _, s := range strings {
		_, boxH := DrawTextInBox(image, s, res.MonoFont, strX, strY)
		strY += boxH + 2 // +2 for a bit of margin between boxes
	}

	_ = ebitenutil.DebugPrint(image, fmt.Sprintf("%02d FPS | %d×%d", fps, w, h))
}

So the implementation should be similar to the existing font.BoundString, and the difference is how to consider new lines. Is that correct?

Pretty much. MeasureString takes some additional things (like font ascenders) into account though. BoundString doesn't do that.

Please rebase or merge with the master branch.
I'll go to bed soon. I'll re-review your PR tomorrow, and merge this if there are no additional things.


Import LDT Users' Guide

I converted the LDT 7.2 Users' Guide into AsciiDoc.
The users' guide still needs work to bring it up to date with the upcoming LISF 7.3 release.  Please see #185.

Since this is strictly a format change, I will go ahead and accept the pull request.  Further updates will be handled by separate PRs in the future.


Wrong http version for http/2

Environment Details

Helidon Version: 2.5.0
Helidon SE
JDK version: 18.ea.5.lm-open
OS: Ubuntu 18.04.6 LTS

Problem Description
req.version() returns http/1.1 even on http/2 connection
Steps to reproduce
        WebServer.builder(Routing.builder()
                        .get("/test", (req, res) -> res.send("Hi! HTTP version is "+req.version()))
                        .build())
                .experimental(ExperimentalConfiguration.builder()
                        .http2(Http2Configuration.builder()
                                .enable(true)
                                .build())
                        .build())
                .port(8080)
                .host("localhost")
                .build()
                .start()
                .await();

$ curl -vv --http2-prior-knowledge http://localhost:8080/test
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to localhost (<IP_ADDRESS>) port 8080 (#0)
* Using HTTP2, server supports multi-use
* Connection state changed (HTTP/2 confirmed)
* Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
* Using Stream ID: 1 (easy handle 0x55998724f620)
> GET /test HTTP/2
> Host: localhost:8080
> User-Agent: curl/7.58.0
> Accept: */*
>
* Connection state changed (MAX_CONCURRENT_STREAMS updated)!
< HTTP/2 200
< content-type: text/plain
< date: Tue, 31 May 2022 16:16:34 +0200
< x-http2-stream-weight: 16
< content-length: 24
<
* Connection #0 to host localhost left intact
Hi! HTTP version is V1_1

Fixed for master in #4236

Fixed for 2x with #4629


Multiple Domains? Plugin maybe?

I was doing a little research and didn't find anything specific about multiple domains. I have a YOURLS install that's working great load balanced between a few servers and backed by a nice size DB cluster and instead of doing multiple installs, I was wondering if it's possible to support multiple domains with a single install?
I know I can just map multiple hostnames and certificates through my nginx front end, but I'm working if there's anyway to have the short links be sorted and/or create with a different root domain?
For instance, if I create https://link.example.com/abcd, I'm sure I could also access it from https://link.anotherdomain.org/abcd, but all the reporting, share functions, etc, all would point to the original domain when I'm looking at them. Is there any better of sorting and displaying things?

Virtually anything is possible with a plugin.
Regarding multiple domain support, there are MTOWTDI as the Perl monks say, because in the end it really depends on your server config (vhost config, name aliases, directory structure and directory permissions, tweaking things at PHP level or htaccess or nginx file level, etc...)
For starters I think you may dig into the Google search I mentioned above, maybe that plugin, and maybe issue 2306 where someone explains in just 30,000 lines of comments what they did regarding this very specific matter

(and, yes, the correct way to do so, no matter the logic behind, should be a plugin)

I think it cloud be more easy using a Nginx proxy:
server {
	...
	location / {
		proxy_pass https://the,main.domain/;
	}
	...
}

@mashirozx thats how i do it, running a few sites on the same yourls instance. In config.php under user directory you need to do the following for the yourls site listing (makes the config dynamic)
define( 'YOURLS_SITE', 'https://'.$_SERVER['SERVER_NAME'] );

@mashirozx I just tried your tip, but it does not allow admin login from the new domain...


dm4f: M not quite a synonym for Tot

Switching from Tot to M causes 3 of my previous ifc proofs to fail. For instance, the following code works with Tot, but does not work with M:
module Bug

type label =
  | Low
  | High

let ifc (a:Type) = label -> M (option (a * label))

let eq_ifc (a:Type) (f:ifc a) (g:ifc a) =
   forall l. f l == g l

let return_ifc (a:Type) (x:a) : ifc a = fun l -> Some (x, l)
let bind_ifc (a:Type) (b:Type) (f:ifc a) (g: a -> Tot (ifc b)) : ifc b
  = fun l0 -> let fl0 = f l0 in match fl0 with
           | None -> None
           | Some (x, l1) ->
             let gxl1 = g x l1 in match gxl1 with
             | None -> None
             | Some (y, l2) -> Some(y, l2)

val left_unit: a:Type -> b:Type -> x:a -> f:(a -> Tot (ifc b))
            -> Lemma (eq_ifc b (bind_ifc a b (return_ifc a x) f) (f x))
let left_unit a b x f = ()

[hritcu@detained bug-reports]$ fstar.exe bug710.fst
./bug710.fst(22,71-23,26): could not prove post-condition
Error: 1 errors were reported (see above)

@kyoDralliam was looking at this and it seems a problem with the way M is encoded to the SMT solver.

More precisely, M is encoded in the SMT solver query as a non total effect.

Fixed by the introduction of the cps attribute

If this is fixed we should consider moving the monad laws from
https://github.com/FStarLang/FStar/blob/master/examples/dm4free/FStar.DM4F.MonadLaws.fst
to their respective files and make them use M instead of Tot.


SFrame add_column FR

For feature request #1072
add_column() in SFrame now handles non-SArray iterables as input and maps constant into SArray when noniterable passed.

Note that if you put Fixes #1072 in your commit message or PR description, GitHub will automatically close that issue for you when the PR goes into master: https://blog.github.com/2013-01-22-closing-issues-via-commit-messages/

Thank you for the feedback Zach and Toby! I’ll work on that.
I’m having doubts about whether test_add_column_noniterable2(self) which I added should exist. I noticed that passing a noniterable to an empty SFrame does not store the element as a size one SArray:

import turicreate as tc
sf = tc.SFrame()
sf['x']=3
sf
Columns:
x	int

Rows: 0
Data:
[]
Whereas test_add_column_noniterable2 checks if an noniterable is passed to an empty SFrame it is stored as a size 1 SArray.

On Sep 24, 2018, at 4:58 PM, Toby Roseman<EMAIL_ADDRESS>wrote:
@TobyRoseman commented on this pull request.
In src/unity/python/turicreate/data_structures/sframe.py https://github.com/apple/turicreate/pull/1099#discussion_r220024630:

     if not isinstance(data, SArray):

       raise TypeError("Must give column as SArray")

       if isinstance(data, Iterable):

           data = SArray(data)

       else:

           if len(self.column_names()) == 0:

               data = SArray([data])

           else:

               data = SArray([data for _ in xrange(self.shape[0])])

xrange has been removed as a keyword in Python 3. So this code will not work in Python 3. Writing code which works in both Python 2 and Python 3 can be a pain.
I would recommend just doing: data = SArray([data] * self.shape[0])
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/apple/turicreate/pull/1099#pullrequestreview-158337900, or mute the thread https://github.com/notifications/unsubscribe-auth/AF7TBjZAo-IEqnRD2nE0mLeYTsNFRjVWks5ueXG4gaJpZM4W3mqf.

@fareeha Hmm, that actually looks like a bug (sf['x']=3). I am not sure what it should do there, but it definitely shouldn't give you an empty int column. I think there are two things we could do here (not sure which I prefer):

Raise an exception when attempting to assign a non-iterable to an SFrame column, or when attempting to do the equivalent through add_column.
Consistently treat non-iterables as a list of length 1 in both of the above cases.

@hoyt Thank you! Those are very good points. The FR is closed but I’m checking out a branch to address the changes you’ve suggested.

On Sep 25, 2018, at 1:22 PM, Hoyt Koepke<EMAIL_ADDRESS>wrote:
Ahh -- missed the review period here. I think the from_const is an important one to go in -- could we do another PR to address these? Sorry @fareeha https://github.com/fareeha -- I should have got these in earlier.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/apple/turicreate/pull/1099#issuecomment-424487791, or mute the thread https://github.com/notifications/unsubscribe-auth/AF7TBjor_YnXJnZnYXsCmB4PnIf6ebwJks5uepBxgaJpZM4W3mqf.


feat: add cli help text

If any CLI argument is provided (including -h), then the README.md file will be displayed as a form of user guide / help text, as well as the currently configured envar variables, which may aid in troubleshooting.
Note: The README is compiled into the application. You do not have to bundle it with any distribution.
Example output
gh-pilot$ ghp-server -h

# Github pilot server

Make your Github CI processes fly.

Github pilot server enables granular and complex workflows for Github projects that goes beyond what is
possible in Github Actions.

The server process is straightforward and extensible:
1. Github's webhook service makes a POST call to the server `github/webhook` endpoint.
2. The data from the Github event is compared against the set of Github Pilot rules (defined in `rules.yml`).
3. For any rule that _matches_, the corresponding Actions are executed.

## Configuration

The server configuration is carried out completely by environment variables.

|------------------------------------:-------------------------------------------|-----------------|
| Environment variable               |  Description                              | Default         |
|------------------------------------|-------------------------------------------|-----------------|
| GH_PILOT_HOST                      | The address the server listens at         | <IP_ADDRESS>       |
| GH_PILOT_PORT                      | The port the server listens at            | 8330            |
| GH_PILOT_RULESET_PATH              | The file path for the rule set            | rules.yaml      |
|------------------------------------|-------------------------------------------|-----------------|

If a file called `.env` exists in the current directory, the environment variables will be configured from that.

Current environment values:
  GH_PILOT_HOST                       <IP_ADDRESS>
  GH_PILOT_PORT                       8330
  GH_PILOT_RULESET_PATH               Not set

Fixes #79


chore(deps): update common-dev-assets digest to b0e120d

This PR contains the following updates:

Package
Update
Change

common-dev-assets
digest
3d51b48 -> b0e120d

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

:tada: This PR is included in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Build time extremely slow due to the way Meteor LESS compiles

After installing this package and setting up all the semantic-ui LESS files, Upon changing a single line in my app (even unrelated to CSS/LESS code) will cause an EIGHT second delay.  Upon running Meteor Profiler, I saw a line.. "other less plugin" that usually takes 8 seconds or so to compile.
I ran across this thread and it seems like there is something that's being looked at as a potential fix.  https://github.com/meteor/meteor/pull/9983 . Could the maintainer of this repo @jlukic please review that link and see if he can incorporate the fix to this package?  Without this extremely long compile/reload time.. this package would be perfect!  Need to use this for my project.. if someone can look at this and fix this/integrate a fix, that would be amazing to have much faster reload times..

@pagesrichie +1


CAMEL-19749: Introduce variables to Camel

Description

Target

[ ] I checked that the commit is targeting the correct branch (note that Camel 3 uses camel-3.x, whereas Camel 4 uses the main branch)

Tracking

[ ] If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

[ ] I checked that each commit in the pull request has a meaningful subject line and body.

[ ] I have run mvn clean install -DskipTests locally and I have committed all auto-generated changes

This is the initial work to get the basics of variables into Camel. I wanted to get a PR in shape before too much activity happens.
What can come in new PRs is work to make variables easier to be used from a few common EIPs such as from / to / toD and other feedback

A little example at
https://github.com/apache/camel-kamelets-examples/tree/main/jbang/variables


Occasionally, on creation of new resource, 404 is shown momentarily

We may need to wait for the resource to be loaded before navigating to it's events page...

No longer occurring; closing for now.


Add duration in alert components

What problem does this feature solve?
Duration is the very important property of alert component. In user experience showing alert continuously is not good, it must be gone after few times.
What does the proposed API look like?
Right now, alert API not giving any kind of solution to solve this problem.

Thank you very much for your suggestion, adding duration is a good idea, but one of the features of the alert component is that it is always displayed and closed by the user, so we won't consider adding this feature for now.
see https://ng.ant.design/components/alert/en#when-to-use

Thanks for the answer, I understand that but there are two components are confusing, Alert and Message.
As Alert don't have the duration not possible to make floatable, same as Message is floatable and have duration but no position and not entered coloured.
Usually, the alert is same as you have in ng-zorro, with inline placement, but Message should be like Toast, entire coloured with duration. Like ngx-toastr Example: https://ngx-toastr.vercel.app/
I have went through all the components but I haven't found anything similar to toast. Is there any plan for this component?
Thanks
Yougesh


acpi hotpatching

@daliansky , thank you very much for making hackintosh for our laptops.
Can I ask something ?
Would it be possible , when you have the time ,to add a description for every aml file and what is for ?

Hi, daliansky is so busy these days and I have to prepare SAT test. I recommend that you can read https://github.com/RehabMan/OS-X-Clover-Laptop-Config. What you want is all in there.

OK. I understand what you mean. Will do it in a week.

Done.

Great. Thank you.


Pylance error for query_selector of Playwright

 Environment data

Language Server version: 2024.4.1
OS and version: linux x64
Python version (and distribution if applicable, e.g. Anaconda): python3.8 , pip23.2.1
python.analysis.indexing: true
python.analysis.typeCheckingMode: standard

 Code Snippet
from playwright.sync_api import Playwright

@fixture
def get_playwright() -> Generator[Playwright, Any, None]:
    with sync_playwright() as playwright:
        yield playwright

def test_playwright(get_playwright, headless=False):
    playwright1 = get_playwright
    browser = playwright1.chromium.launch(headless=headless)
    context = browser.new_context()
    page = context.new_page()
    base_url = 'https://www.bing.com/?cc=ua'
    page.goto(base_url)
    row = page.query_selector(f'css=tr >> text=""')
    row.query_selector(".deleteBtn").click()
    print('')
    assert 5 != 1

 Repro Steps

XXX

 Expected behavior
No Pylance Errors should be
 Actual behavior
"query_selector" is not a known member of "None"
"click" is not a known member of "None"
 Logs
vscode_log.txt

Requirements

requirements.txt

sounds like duplicate of https://github.com/microsoft/pylance-release/issues/5718
Better support for fixtures that return generatros

Accidentally closed this issue


Tarballs should include tests

It's useful for package management to have tarballs that include the tests. Please include the tests in the tarballs on PyPI. It would also help if the tarballs contained the README and if the README contained information on dependencies (specifically what versions of Python this has been tested against).

+1 from me for openSUSE packaging.

If no one creates a PR before October, ping me and I'll make one for this issue's 10th birthday! ;)
We should probably exclude this project's OAuth credentials from the sdist; downstream testers should create their own on their own accounts because otherwise it eats up this project's rate limits.

We should probably exclude this project's OAuth credentials from the sdist; downstream testers should create their own on their own accounts because otherwise it eats up this project's rate limits.

Why don't you provide the credentials in the repo then? The better way would be to save them as secrets in the CI.
I may create a PR for that issue in the next days.

We should probably exclude this project's OAuth credentials from the sdist; downstream testers should create their own on their own accounts because otherwise it eats up this project's rate limits.

Shouldn’t you have split tests into unit tests and integration tests anyway? The former should use mocked interfaces anyway, so no credentials are needed (and that’s what I would use for testing while packaging for openSUSE, distributions don’t have network access in their build systems anyway) and the latter would be used only by true developers.

Yes, these are great suggestions, PRs welcome!
I can see value for leaving credentials in the repo for forks to use, but mocking the interfaces would be great.


In the event of no recent wind sensor messages, set the wind to 90 deg

It looks like the local/global wind calculation is incorrect, I'll investigate this

Let me know which part of the local/global wind calculation may be incorrect. I thought that too a few months ago, but after some debugging, I concluded it's actually fine. But could you describe the issue with some screenshots and/or diagrams so we can discuss?

Let me know which part of the local/global wind calculation may be incorrect. I thought that too a few months ago, but after some debugging, I concluded it's actually fine. But could you describe the issue with some screenshots and/or diagrams so we can discuss?

PR should be good now, continuing discussion in https://github.com/UBCSailbot/local-pathfinding/issues/176

PR should be good now, continuing discussion in https://github.com/UBCSailbot/local-pathfinding/issues/176

Closing this in place of #183


"xpumcli dump" doesn't report all stats unless you use the --rawdata option

If I run xpumcli dump and start a raw data dump like this:
xpumcli dump --rawdata --start -d 0 -t 0 -m 0,1,2,3,4,5

It writes the requested metrics to the dump file as expected:
Timestamp, DeviceId, TileId, GPU Utilization (%), GPU Power (W), GPU Frequency (MHz), GPU Core Temperature (Celsius Degree), GPU Memory Temperature (Celsius Degree), GPU Memory Utilization (%)
2022-07-13T20:41:44.046Z,0,0,0.00,11.00,1400,31.00,32.00,0.00
2022-07-13T20:41:44.546Z,0,0,0.00,11.00,1400,31.00,32.00,0.00
2022-07-13T20:41:45.046Z,0,0,0.00,11.00,1400,30.00,32.00,0.00
2022-07-13T20:41:45.546Z,0,0,0.00,11.00,1400,31.00,32.00,0.00

If I run xpumcli dump on the command-line to retrieve stats on-demand, most fields are blank:
# ./xpumcli dump -d 0 -m 0,1,2,3,4,5 -n 4
Timestamp, DeviceId, GPU Utilization (%), GPU Power (W), GPU Frequency (MHz), GPU Core Temperature (Celsius Degree), GPU Memory Temperature (Celsius Degree), GPU Memory Utilization (%)
2022-07-13T21:04:48.000Z,    0,     , 44.60,     ,     ,     ,
2022-07-13T21:04:49.000Z,    0,     , 44.60,     ,     ,     ,
2022-07-13T21:04:50.000Z,    0,     , 44.61,     ,     ,     ,
2022-07-13T21:04:51.000Z,    0,     , 44.62,     ,     ,     ,

This is the CentOS build. Tested both in a CentOS 8.4 container, and on bare metal with Rocky 8.5.

If you only have one tile, don't specify -t 0.

Hi @jmechalas , the difference is caused by "-t" option. XPUM has to handle different device models. Some cards have two or more tiles but some not. And some metrics can be derived from both whole-card level or per-tile level. So XPUM add "-t" option to distinguish the source.
With XPUM version 1.0 and earlier, when "-t" is not designated, XPUM would dump only whole-card level data, vice versa. In this case, whole-card level only contains Power data, so XPUM only dumps it.
Since version 1.1, when "-t" is not designated, if whole-card level data is absent, XPUM will aggregate tile-level data and show.

If you only have one tile, don't specify -t 0.

Yes, if you designate tile id on device without a tile/with only one tile, XPUM would dump no data.


Precompiled binary 7.4.5 don't work properly in Xcode 14.x

There is a problem with debugging application using version 7.4.5 with Xcode 14.x
Description
If you are trying to hold your app on breakpoint and print out data to console, you'll get the warning:
warning: Swift error in scratch context: error: compiled module was created by a different version of the compiler; rebuild 'NewRelic' and try again: NewRelic

Steps to Reproduce
Add a breakpoint somewhere in your code using Xcode 14.x and try to run command po <object> in console
Expected Behavior
Properly printed data
Relevant Logs / Console output
warning: Swift error in scratch context: error: compiled module was created by a different version of the compiler; rebuild 'NewRelic' and try again: NewRelic

Your Environment
Xcode 14.3.1
Additional context
I guess the problem exists because it's precompiled binary and it's compiled with Xcode 15.
One of the possible solution is create package wit source code, so then it will compile using proper version of the compiler. Or at least you should add an information to README.md which version of library should be used on which version of Xcode.

The New Relic xcframwork has not been compiled with Xcode 15. There appears to be a a bug in Xcode that is not related to New Relic. take New Relic out of the project and you'll see the lldb error remains. We will investigate this Xcode bug for our next release.

Futhermore, you'll see the issue reported is only a warning with NewRelic, NewRelic is not preventing LLDB from working, that is the Xcode bug.

Yes it's a warning but it preventing to print out anything to console.


is the model retinaface trained on RGB/BGR way?

Hi,
i'd like to know is the model retinaface trained on RGB or BGR? if i applied direct on RGB, will the precision changes a lot?
Thanks for reply!

Related:

https://github.com/ternaus/retinaface/issues/27

@woctezuma Thanks for quick reply!
so in  this repo,the model is trained on RGB without changing the network structure?
Can I apply  the pretrained weights in this repo to facexlib?


Split street and house number

Q
A

issue or Enhancement
issue

Version
2.0.1

A customer entered the following address:
Frau X Y
Eliasstr
8
12345 Z
Deutschland

The street was entered in the street field, the number in the additional address line field.
Actual Behavior
[2017-06-02 09:09:16] plentyconnector.ERROR: Command failed: HandleOrderCommand {"adapterName":"PlentymarketsAdapter","transferObject":"da8808c2-ca85-4aea-9b4c-c26ab567fa92","exception":"[object] (InvalidArgumentException(code: 0): Address 'Eliasstr' could not be splitted into street name and house number at /var/www/web1/htdocs/shopware/custom/plugins/PlentyConnector/vendor/viison/address-splitter/src/AddressSplitter.php:48)"}

Expected Behavior
Do not expect a number in the street field.

That calls for problems in PM, as PM always expects a valid street number, doesn't it?

Hallo franzlst,
as kaspozzo pointed out, pm needs a valid street number. Without the process will fail on a different level, most likely when the connector tries to create/update the customer.
Best regards,
Jochen

I would like to reopen this issue. I think the house number handling should be more robust.
This time, a customer entered the street and number in the additional address field and the company name in the street field. This causes the order not to be transferred, without further notice if using the cronjob.
We really don't have many orders, so this can manually be checked. But I can imagine, for bigger shops, this can really be a problem.
What about try to find a number in the additional address line field, if it cannot be found in the street field? This would have worked in my both cases. Or setting house number to -1/0/1/99999 if it cannot be found?

Hallo Franz,
i am open for feedback on how to create a more robust function, but i do see some limitations in both shopware and plentymarkets which prevent "magic". Also, I would advice against creating orders with a wrong street number. What seems possible is to mark the order in shopware somewhat broken, with a spezial order status maybe, or even send a mail on parsing errors. Both would be possible and extensible for further customisations.
Best regards,
Jochen

It would probably be best to catch wrong input via javascript or browser field validation during the checkout.


Change data_format of  GlobalAveragePooling1D in timeseries_classification

The tutorial timeseries_classification_transformer uses FordA dataset which as per my understanding is actually time series data collected in 500 timestamps for one feature (i.e Noise). So the dataset which is initially of shape (x,500) converted into (x,500,1) and hence it should be of form (batch_size, steps, features).
Even in the Tutorial page under model summary it is mentioned like below.

Our model processes a tensor of shape (batch size, sequence length, features), where sequence length is the number of time steps and features is each input timeseries.

But as per documentation of GlobalAveragePooling1D, data_format="channels_first" means the data should be of shape (batch_size, features, steps)
As per the dataset we are passing to the model, the layer GlobalAveragePooling1D with data_format="channels_last" makes more sense to me.
Fixes #845

Make changes to the latest files here https://keras.io/examples/timeseries/timeseries_classification_transformer/


chore: fix watch mode test with utimes

Summary
It should be seconds, not ms.
(we cannot pass a Date object due to #2549)

Test plan
Green CI

Codecov Report

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

@@           Coverage Diff           @@
##           master    #9967   +/-   ##
=======================================
  Coverage   63.94%   63.94%
=======================================
  Files         293      293
  Lines       12488    12488
  Branches     3081     3079    -2
=======================================
  Hits         7985     7985
  Misses       3859     3859
  Partials      644      644

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 68d12d5...5fd4b8e. Read the comment docs.

error Command failed with exit code<PHONE_NUMBER>

Welp Windows

Node 14 on windows seems subtly broken: https://github.com/nodejs/node/issues/33166