Python Sanic example with 19.12.2 is broken

Hi,
Starting with sanic 19.2.2, the sample code provided here does not work. (older versions work fine)
used:
@now/python and @now/python@canary
python 3.6.9
node 12.16.0
The logs of now dev:
$ now dev
Now CLI 17.0.3 dev (beta) — https://zeit.co/feedback
> Ready! Available at http://localhost:3000
> Building @now/python@canary:index.py
Installing required dependencies...
> Built @now/python@canary:index.py [1m]
Traceback (most recent call last):
  File "/home/remi/.cache/co.zeit.fun/runtimes/python3/../python/bootstrap.py", line 147, in <module>
    lambda_runtime_main()
  File "/home/remi/.cache/co.zeit.fun/runtimes/python3/../python/bootstrap.py", line 127, in lambda_runtime_main
    fn = lambda_runtime_get_handler()
  File "/home/remi/.cache/co.zeit.fun/runtimes/python3/../python/bootstrap.py", line 113, in lambda_runtime_get_handler
    mod = importlib.import_module(module_name)
  File "/home/remi/.pyenv/versions/3.6.9/lib/python3.6/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 994, in _gcd_import
  File "<frozen importlib._bootstrap>", line 971, in _find_and_load
  File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/tmp/zeit-fun-8312f05f7c2c9/now__handler__python.py", line 11, in <module>
    __now_spec.loader.exec_module(__now_module)
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "./index.py", line 8, in <module>
    async def index(request, path=""):
  File "/tmp/zeit-fun-8312f05f7c2c9/sanic/app.py", line 197, in response
    args = list(signature(handler).parameters.keys())
  File "/home/remi/.pyenv/versions/3.6.9/lib/python3.6/inspect.py", line 3065, in signature
    return Signature.from_callable(obj, follow_wrapped=follow_wrapped)
  File "/home/remi/.pyenv/versions/3.6.9/lib/python3.6/inspect.py", line 2815, in from_callable
    follow_wrapper_chains=follow_wrapped)
  File "/home/remi/.pyenv/versions/3.6.9/lib/python3.6/inspect.py", line 2193, in _signature_from_callable
    raise TypeError('{!r} is not a callable object'.format(obj))
TypeError: ([Route(handler=<function index at 0x7fff28ec4ea0>, methods=frozenset({'GET'}), pattern=re.compile('^/([^/].*?)$'), parameters=[Parameter(name='path', cast=<class 'str'>)], name='index', uri='/
<path:path>'), Route(handler=<function index at 0x7fff28ec4ea0>, methods=frozenset({'GET'}), pattern=re.compile('^/([^/].*?)/$'), parameters=[Parameter(name='path', cast=<class 'str'>)], name='index', uri
='/<path:path>/')], <function index at 0x7fff28ec4ea0>) is not a callable object
LambdaError: RequestId: b5ae12a2-1ee1-43ab-9bab-4ad9ed1e5e2a Process exited before completing request
    at Lambda.<anonymous> (/home/remi/.nvm/versions/node/v12.16.0/lib/node_modules/now/dist/index.js:2:3545645)
    at Generator.next (<anonymous>)
    at fulfilled (/home/remi/.nvm/versions/node/v12.16.0/lib/node_modules/now/dist/index.js:2:3543532)
    at processTicksAndRejections (internal/process/task_queues.js:97:5)

Does it work when you deploy to production with now?
Our test fixture is using Sanic 19.6.0 as seen here: https://github.com/zeit/now/blob/0e71ff2df1601fb4c7b697f57848c78d6bc41507/packages/now-python/test/fixtures/11-asgi/Pipfile.lock#L147

Hi, thanks for the response.
Deploying to now results in the same behavior.
I fell back to the last sanic version before 19.12.2 (explicitly: 12.9.0) to make it work for now.
This ticket is just a heads up that now breaks with this new version of sanic.

I was tried deploying multiple versions of Sanic and all of them worked.

19.6.0
19.9.0
19.12.0
19.12.2

Example: https://00-asgi-sanic-kn3216axc.now.sh/api/sanic


theme.palette.mode is wrong in first render

Steps to reproduce
I set up MUI with a <ThemeProvider theme={theme}> where
const theme = createTheme({
  colorSchemes: {
    dark: {...},
    light: {...}
}})

In the child component I tried:
const theme = useTheme();
console.log(theme.palette.mode)

Even though my local storage variable is set to mui-mode=dark this logs light
And I also tried:
useEffect(() => {
    console.log(theme.palette.mode);
  }, [theme.palette.mode]);

Even the effect's first log is light and immediately after dark.
Why can't MUI's ThemeProvider load the mui-mode from localStorage before the first render of its children?
Current behavior
No response
Expected behavior
No response
Context
No response
Your environment
Chromium 129

npx @mui/envinfo
System:
OS: Linux 6.5 Ubuntu 22.04.4 LTS 22.04.4 LTS (Jammy Jellyfish)
Binaries:
Node: 18.12.1 - ~/.nvm/versions/node/v18.12.1/bin/node
npm: 8.19.2 - ~/.nvm/versions/node/v18.12.1/bin/npm
pnpm: Not Found
Browsers:
Chrome: 129.0.6668.58
npmPackages:
@emotion/react: ^11.13.3 => 11.13.3
@emotion/styled: ^11.13.0 => 11.13.0
@mui/base:  5.0.0-beta.58
@mui/core-downloads-tracker:  6.0.2
@mui/icons-material: ^6.0.2 => 6.0.2
@mui/lab: ^6.0.0-beta.9 => 6.0.0-beta.9
@mui/material: ^6.0.2 => 6.0.2
@mui/private-theming:  6.0.2
@mui/styled-engine:  6.0.2
@mui/styles: ^6.0.2 => 6.0.2
@mui/system: ^6.0.2 => 6.0.2
@mui/types:  7.2.16
@mui/utils:  5.16.6
@mui/x-charts: ^7.16.0 => 7.16.0
@mui/x-charts-vendor:  7.16.0
@mui/x-date-pickers: ^7.18.0 => 7.18.0
@mui/x-internals:  7.16.0
@mui/x-tree-view: ^7.16.0 => 7.16.0
@types/react: ^18.3.5 => 18.3.5
react: ^18.3.1 => 18.3.1
react-dom: ^18.3.1 => 18.3.1
typescript: ^5.5.4 => 5.5.4

Search keywords: theme theming

@croraf have you set mode: dark in createTheme? Refer to doc for more info https://mui.com/material-ui/customization/dark-mode/#dark-mode-only

@sai6855 that would make the app use the dark mode as default mode. I don't want that. I want the mode, that the user had after leaving the app in the last session, to be present for current session. This does happen, but the initial render is light.

@croraf Could you make the sandbox public? Thank

I'll try useSyncExternalStore to see if it improves the first calculation of the mode.

As for why it returns null in the first place, it's because of
https://github.com/mui/material-ui/blob/3f851cebcd8b9255d7627344cc2548abe04c4678/docs/src/components/header/ThemeModeToggle.tsx#L44


New proposals

I'm using SQLTools with the SQLite extension in Azure Data Studio because I believe it's the only SQL engine Azure needs to be complete.
The extension works well and does its job, but it would be nice if you could customize where the results will appear. In other applications, the results always appear at the bottom, but in VSCode/Azure Data Studio, it creates the group on the right.
Another idea, related specifically to the SQLite driver, is to simplify the process of creating and managing a connection. You know SQLite works with files, so it's awkward to specify a name, set the default record limit, look up the file path... Just to open a file! I suggest simplifying this process in the case of SQLite, and perhaps creating an association to the extension to make it accessible doulbe-clicking or dropping on the application.
And please, remove the Connection Details step

The extension works well and does its job, but it would be nice if you could customize where the results will appear. In other applications, the results always appear at the bottom, but in VSCode/Azure Data Studio, it creates the group on the right.

This is similar to https://github.com/mtxr/vscode-sqltools/issues/1216 - may be worth adding your voice there


BidiCharacterTest.txt

https://unicode.org/Public/UCD/latest/ucd/BidiCharacterTest.txt

skipping this file for now, happy to come back to it if an application needs it


feat: Add styled as named export

closes https://github.com/styled-components/styled-components/issues/3437
Added to the files listed as inputs here
With exception to:

standalone - it seems intentional there is only one default export and everything else is attached as a name?
macro - this seems like a babel-only file, which is swapped for the real styled-components at build time?

Fixed merge conflicts

Just a bit, running things like import('./dist/styled-components.cjs.js').then(x => console.log(x.default.default === x.styled)) // true locally.
And that worked as expected.
I tried installing the package locally with my current project that was having the related issue and started getting Invalid hook call. Hooks can only be called inside of the body of a function component errors. (This is a NextJS project if relevant)
So I tried using the main branch and ended up getting the same errors. So I don't think the error is related to my changes, but I don't really have great test proof my changes work as expected (generally speaking my changes are small so I expect them to work, but looking for solid proof)
Is this a known/expected issue? What is best way to test locally?

Also I see this project is moving more over to typescript, which is great. But looks like that is still for internal usage for now?
So once this is merged I will followup with a PR to https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/styled-components to declare the named export

Your error that you get, Invalid hook call. Hooks can only be called inside of the body of a function component , happens a lot. Check your hooks and stuff. That’s not a styled components issue.

I only get this issue when installing my local version of styled components though. So I suspect I am installing it wrong, what is the proper way to install it locally?
I think the issue stems from styled-components using its own instance of React (which only exists in a locally-installed dev environment) rather than my version of React. So the overlap causes the issue.

See comments on original issue. Sorry for closing!


TXT for _acme-challenge.example.com is not found by the lambda function during verification

Lupan,
I am working on the configuration as suggested by you. I am in step 4. I am trying to get the letsencrypt.org certs. I can see that it is attempting to verify the challenge in TXT record. But it gives the below error. I believe this is supposed to have been created by the python script. This is the error which I have in cloudwatch logs.
letsencrypt.org DNS problem: NXDOMAIN looking up TXT for _acme-challenge.example.com - check that a DNS record exists for this domain
letsencrypt.org forums say that this record has to be dynamically created by the client script which I believe is in the code. I can see that challenges are being cleared at the end of the script execution. What could be the reason.
Please note that the example.com in this error message is made up. In the actual error message I have a valid domain name registered in Route 53.
Appreciate if you can tell me how to fix this issue.

some more details on the error. Please note that I put example.com in place of the actual domain name.
[DEBUG]	2022-04-20T20:41:08.383Z	9f8da28a-8e83-484e-8686-a50e547353fa	Encountered exception:
Traceback (most recent call last):
File "/var/task/certbot/auth_handler.py", line 82, in handle_authorizations
self._respond(aauthzrs, resp, best_effort)
File "/var/task/certbot/auth_handler.py", line 155, in _respond
self._poll_challenges(aauthzrs, chall_update, best_effort)
File "/var/task/certbot/auth_handler.py", line 226, in _poll_challenges
raise errors.FailedChallenges(all_failed_achalls)
certbot.errors.FailedChallenges: Failed authorization procedure. example.com (dns-01): urn:ietf:params:acme:error:dns :: DNS problem: NXDOMAIN looking up TXT for _acme-challenge.example.com - check that a DNS record exists for this domain

I resolved this issue. when I started the process I did not have the domain name registered. The terraform script requested only the hosted zone name. So I created a hosted zone manually. It did not have a domain name associated. I realized that I need a domain name. once domain name was registered it created another hosted zone with the same name. The script was still hitting the first hosted zone and failed. I deleted the manually created hosted zone while leaving the one created by the registar. So it works now.

@dulshand  Thank you for trying out the solution. I am glad to hear that you have figured it out. I have now added the domain purchase in the prerequisites section in the README file. I realize now that pointing your domain to AWS Nameservers in Route 53 is not covered here but critical for the solution to work.
Thanks again and enjoy your free certs!

Closing issue since problem is resolved after domain was purchased.


Bounds order in web api

It seems the bounds returned in the JSON doesn't match what is displayed on the webpage.   Is this done like this for a reason?  I can swap it in the returned data on my end but just checking to see if it's a bug as well.

Examples?


Improve setuptools capabilities

Hey!
Overview
Using setup.cfg to configure project packaging. functionality introduced by setuptools 30.3.0.
Features

centralize requirements* management
remove packaging configuration from python code
using conf file for handling project configuration
adapted/updated bootstrap
reduce the number of files to maintains
remove duplicate requirements declarations
adding project classifiers

Have fun!

@ross thanks for your comments :) changes done!
Commits
I don't squash my commits to facilitate your proofreading. I can squash commits after if you want.
Changes
In this review I have introduced 3 significant changes.
First, I've splitted the requirements, we have now 3 kinds of requirements:

base requirements (install_requires)
test requirements (coverage, etc...),
dev requirements (at start included in requirements.txt). Do you agree the dev name section?

Users can deal with these like this:
$ pip install octodns # only base
$ pip install octodns[test] # only base + test
$ pip install octodns[dev] # only base + dev
$ pip install octodns[dev,test] # full install

Second, I reverse version management, setup.cfg retrieve information from __init__.py I think it's more elegant way than older version. This change:

remove python code
simplify management
securizing retrieve (package installed or not already installed...)

Third, define a minimal setuptools version 30.3.0.
Security note
This changes can help users to have more confidence to your package.
Often, inside private companies projects, they realize static analyzes of dependencies or inspect code before using it in their projects to make sure it's not a malicious dependencies. A good example of this fact is the typo squatting.
You are welcome!

@ross I've make a mistake when I force users to update setuptools.
Your package is already build and uploaded to pypi so users doesn't have to use setuptools in latest version.
Only you and your contributors have really the constraint to use setuptools on recent version. Also if your users install octodns from sources they have to use an up-to-date version of setuptools because they have to implicitly build the package python setup.py install.
I move setuptools dependencie minimal version to CONTRIBUTING.md instead of README.md

I move setuptools dependencie minimal version to CONTRIBUTING.md instead of README.md

:cool: That was my biggest concern. Otherwise just looked over this and I think it's gtg. Will pull it all down and play around with it when I get a bit of time and :shipit: provided I don't run into anything unexpected.

Do not hesitate to asking help to me if you need :)


Long integer size is not compatible at [...]/Storable.pm line 407, at ./pgbadger line 11433

I have release 9.2 on OpenIndiana (illumos kernel) and running t/ test suite fails in one sub-test on x86-64 with Perl 5.22.4:
$ PATH=/usr/perl5/5.22/bin:/usr/local/bin:/usr/gnu/bin:/usr/bin:/usr/sbin:/sbin /usr/perl5/bin/prove --verbose
t/basics.t .......
[...]
not ok 4 From binary to JSON
# (in test file t/basics.t, line 20)
#   `./pgbadger --outdir $BATS_TMPDIR -o test-out.json \' failed with status 255
# Long integer size is not compatible at /usr/perl5/5.22/lib/i86pc-solaris-64int/Storable.pm line 407, at ./pgbadger line 11433.
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/4 subtests

Perl is 32-bit, JSON::XS is from CPAN. I did the build it via perl Makefile.PL.
What might be the problem? Google suggests 64- vs 32-bit clash.

Commit 62c0d4d might fix this issue.


How to avoid warning: The provided JWT payload does not include a 'zid' property.

We are successfully performing an executeHttpRequest via BTP destination.
executeHttpRequest(
    {
      destinationName: "NAME",
      useCache: true
    },
    requestConfig
)

However, we constantly get the following warning, which fills up our logs:
(jwt): Warning JWT: The provided JWT payload does not include a 'zid' property.
How can we avoid this warning? Is there a way to disable it?

Hey @hosssa, thanks for bringing that up. Does this occur when use disable the cache with useCache: false?
I believe this warning occurs because you are using the cache. By default the cache is isolated by user and tenant. As you don't pass a JWT, there is no tenant information, so that the destination cannot be safely cached with the given isolation. You are probably also seeing a second warning shortly after: Could not build destination cache key. Isolation strategy 'tenant-user' is used, but tenant id or user id is undefined in JWT., right?
I might be wrong though, so let me know if you see the other warning as well. I will take a closer look at this tomorrow.

Hi,
the messages also occurs with useCache: false. Also, there is no second warning after it.

I'm testing locally in BAS with a destination setup in a .env file and without multitenancy.
BR, Nico

Hey @hosssa, I am working on improving the warning, it is quite misleading.
For your other request: The default isolation strategy is "tenant-user" if you pass a token that has a user_id. If you pass no token or a token without user ID, the strategy is tenant. If you don't have multitenancy, you basically have only one tenant - so it is a special case of isolation strategy "tenant".
If you don't pass a JWT, the SDK retrieves the subaccount ID and uses this as the tenant and assumes isolation strategy "tenant" => this is also why you don't see the second error message that I erroneously expected.
Did you have issues with caching or did I just confuse you with my previous message?

Hi @marikaner,
Thanks for the details about the caching mechanism. I assume caching works fine, as the first request throws 2 'zid' warning messages but subsequent requests only one.

I opened a PR to remove the logs alltogether, I currently don't see a good reason to keep them. We will soon release a new version to include this, stay tuned ;)


[BugFix] fix CompoundPredicateOperator equals method

What type of PR is this：

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

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

In memo phase, we use join transform rules to generate more plans. These rules split conjuncts and generate new predicate which may change the order of nodes in compoundPredicate. For a predicate like v1 = v2 and v3 = v4 and v5 = v6, the order of these three eqaul predicates doesn't affect the meaning of the compoundPredicate. For exampe, v3 = v4 and v5 = v6 and v1 = v2 should equal v1 = v2 and v3 = v4 and v5 = v6.
This pr helps to prevent  groupExpression acctually with the same meaning from being repeatedly inserted into the memo.
BTW, a test had been disabled and this pr restored it.
Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

run starrocks_admit_test

run starrocks_fe_unittest

run starrocks_fe_unittest

run starrocks_fe_unittest

run starrocks_fe_unittest

run starrocks_admit_test

run starrocks_fe_unittest

run starrocks_fe_unittest

[FE PR Coverage Check]
:disappointed: fail : 9 / 12 (75.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/optimizer/GroupExpression.java
0
3
00.00%
[311, 312, 313]

:large_blue_circle:
com/starrocks/sql/optimizer/operator/scalar/CompoundPredicateOperator.java
9
9
100.00%
[]

run starrocks_admit_test

run starrocks_admit_test

run starrocks_admit_test

run pr-title-check

run starrocks_admit_test

run starrocks_admit_test


Symbol list inconsistent parsing

There appears to a parsing error with the new use of
 in the definition of code blocks over the previous use of triple back tick q as a code block start.

In particular the definition of code containing ` as a character for the definition of a symbol list or in embedPy for accessing python objects is not being parsed in accordance with expected behaviour for q

The code blocks in this section show this incorrect parsing (this is the only instance observed so far)
https://code.kx.com/q/ml/automl/faq/#keras-models
Namely the definition of i.keraslist should be a list of symbols, and the definition of layer1_nm in customregkeras should also be a symbol list.

The use of pre and code elements is for nesting code blocks inside e.g. definition lists of admonitions – a step too far for Markdown. I do not know why but certain characters inside the code elements then need escaping:
`\$

Possibly also *, can’t recall offhand. Sorry about the inconvenience. As you will have seen, I do everything I can to keep the Markdown source human-readable, and this does not help.


Crash for some reason

Describe your problem here.
Paths.hx (line 352)
BGSprite.hx (line 24)
PlayState.hx (line 559)
flixel/FlxGame.hx (line 637)
flixel/FlxGame.hx (line 724)
flixel/FlxGame.hx (line 677)
flixel/FlxGame.hx (line 545)
openfl/events/EventDispatcher.hx (line 402)
openfl/display/DisplayObject.hx (line 1399)
Uncaught Error: Null Object Reference
it said that after i edited a PNG image and saved it.
Are you modding a build from source or with Lua?
Source
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
no

Missing texture, what version are you using

Be more specific, recent commit or recent release


Feature: Allow to define a port range for custom_services

It would be nice to have :-)
firewalld::custom_services:
xy-application:
short: 'xy-application'
description: 'XY Application'
port:
- port: 5000:5020
protocol: 'tcp'
Then it will detect there is a ":" or "-" in the port variable and create the xml service accordingly.

@gothicx How do you see this working?  A separate entry for each member of the port range?  A quick glance at http://www.firewalld.org/documentation/service/options.html doesn't show any native support for port ranges for custom services, unless I'm not seeing it...

@crayfishx There is no official support, the idea is to have an entry in the port entry that provides a range and then the ruby code will parse that and transform into separated ports at service xml level.
You specify "port: 5000:5020", but in xml it will translate to one port per line. You see?
    <port protocol="tcp" port="5000" />
    <port protocol="tcp" port="5001" />
    <port protocol="tcp" port="5002" />
     ....

The custom_service type already allows you to define multiple ports via a hash, so I guess we're not doing anything that different here, just allowing a short-hand expression in the way they are declared.  This should be fairly easy to engineer.... Based on that, I think we can add this.

Thanks :-)


docs: add drafts of specs for liquidfarming module

Description

closes: #XXXX
Tasks

[ ] add spec docs

References

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Appropriate labels applied
[ ] Targeted PR against correct branch
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards.
[ ] Wrote unit and integration
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added relevant godoc comments.
[ ] Re-reviewed Files changed in the Github PR explorer
[ ] Review Codecov Report in the comment section below once CI passes

@jeonghoyeo7 Can you pull the latest commit from #332 so that broken tests are resolved?

As discussed offline, we will merge this docs PR and continue to update in #332


Add sort command

Fixes #10

Pull Request Test Coverage Report for Build 12

21 of 21 (100.0%) changed or added relevant lines in 6 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.1%) to 91.922%

Totals

Change from base Build 9:
0.1%

Covered Lines:
1502

Relevant Lines:
1634

💛  - Coveralls


proposed fix for LSM negative W and sigmaS

Both snow, σS, and water, W, can become negative in the bucket, if their reserves are depleted and evaporation is nonzero. Simple test - set all fluxes to zero except evaporation. Evaporation should be attenuated by the beta_factor but small negative values of W and σS can still arise if

fluxes are explicit and are calculated based on the state of the previous timestep
when using CombinedStateFluxes, where ocean and land states from the same grid point are combined (this can/will be avoided when using PartitionedStateFluxes)

To ameliorate this, we could do one of the following :

adapt beta - e.g. nonlinear decay to zero before zero W or σS are reached (in the Bucket)
implement a limiter - e.g. something along the lines of the following (in the Bucket / Coupler)

        # crop W and σS for negative values
        @. dY.bucket.W = max(dY.bucket.W, 0)
        @. dY.bucket.σS = max(dY.bucket.σS, 0)

        # collect negative W and σS
        W_res = @. -min(dY.bucket.W, 0)
        σS_res = @. -min(dY.bucket.σS, 0)

        dY.bucket.Ws = @. (
            (
                liquid_precip + snow_melt -
                (1 - snow_cover_fraction) * evaporation
            ) - infiltration - W_res - σS_res
        ) # Equation (5) of the text, snow melt already multipied by snow_cover_fraction

The energy from sigmaS needs to be tracked for conservation (also check F_into_snow - this seems to be unused in the Bucket).

Not sure if this will affect this fix, but the sign convention for precipitation/infiltration in ClimaLSM has changed as of v0.6.0 (see diff here)

@LenkaNovak I like the idea of adapting the beta function, but currently it is only used for W, and not for sublimation of snow. We could introduce a beta function for snow which only damps nonlinearly to zero, though, and tends to 1 otherwise. There could still be issues for large enough timesteps and large enough evaporation rates even with a beta that nonlinearly decays to zero with water content. But, the system would be mathematically well behaved in the limit of W->0.
A limiter would work too. The only complication there is that if we run out of water in the bucket during a timestep due to some evaporation, i.e. W(t) < E(t)*dt, we would have W(t+dt) = 0, and would need to then "condense" water from the atmosphere in the next step (since the atmosphere took the entire E(t)*dt the previous step, but the land did not have that much to give). So something like -(E(t)*dt - W(t))/dt would be added to the vapor flux atmos BC in the next step. I guess this would need to be tracked in the coupler. Im not sure we want the coupler to have to handle things like this, though.
Are the negative values causing things to break? Can we tolerate small negative values in Y since they conserve water exactly, and interpret them as zero water in reality?

(discussed offline to implement beta snow and check that small negative values can be tolerated within the bucket parameterizations, thank you @kmdeck ! )


Dependency warnings on build

After installing a fresh PostgresClientKit using the Swift Package Manager, I received the following warning:
"Invalid exclude '/very/long/path/SourcePackages/checkouts/BlueSocket/Sources/....`: File not found."
There are a total of 8 warnings that have essentially the same message, for both BlueSocket and BlueSSLService.
I see a similar thing happening here, related to renaming the project... but I don't think that applies here. It looks like the old IBM repo was renamed to Kitura.
https://github.com/tid-kijyun/Kanna/pull/249/files
Any ideas?

I see those compile warnings too.  These are coming from the BlueSocket and BlueSSLService dependencies, as you point out.  Despite these warnings, the build appears to succeed and work.
The problems in BlueSocket and BlueSSLService appear to have been fixed.  I changed PostgresClientKit to pick up a new release of the these dependencies, and the warnings no longer appear.  For now, I have committed this to the develop branch of PostgresClientKit (37e2010afbbf576cb9989456407010896c904d7b), if you'd like to try this.
Because this change uptakes new major versions of BlueSocket and BlueSSLService, I'm going to do some more testing before merging to master and releasing.
Thanks for reporting this.

Fixed in v1.4.2.

Excellent. Thank you for the quick turnaround!
On Fri, Mar 18, 2022 at 6:49 PM David Pitfield [dbp] <
@.***> wrote:

Fixed in v1.4.2.
—
Reply to this email directly, view it on GitHub
https://github.com/codewinsdotcom/PostgresClientKit/issues/38#issuecomment-1072891804,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA36A3WDPPOD7HZDBBD4CSTVAUJANANCNFSM5QIJBBTQ
.
You are receiving this because you authored the thread.Message ID:
@.***>


Redirect to latest version when latest version is missing platform 404s

Example page: https://docs.rs/libc/0.1.5/x86_64-pc-windows-gnu/libc/funcs/extra/winsock/index.html, clicking "latest version" will redirect to https://docs.rs/libc/0.2.69/x86_64-pc-windows-gnu/libc/?search=winsock which 404s as 0.2.69 doesn't have docs built for x86_64-pc-windows-gnu.
At this point I guess the choice is to redirect to default-target, or just go to the crate root page.

crate root page

You mean /crate? I'd rather not redirect there from a doc page, most people just see it as an inconvenient step in the way of the docs. Redirecting to the default target sounds fine.

https://docs.rs/libc/0.1.5/x86_64-pc-windows-gnu/libc/funcs/extra/winsock/index.html now links to https://docs.rs/libc/0.2.93/libc/?search=winsock, which exists.


where i can found the database schema file ?

Hi,
the database is setup using the CakePHP Migrations.  You can find the migration files in config/Migrations folder.  If you need to work with a database dump (not recommended), then you can place it in etc/mysql.sql).

hi
its possible to load main menu from the database table ?
the only solution i found is to load from menu,json file

Hi,
yes, it is possible.  Navigate to menu/menus/ and you should see two menus - one for admin and one for main.  If you edit the menu and unset the 'Default' flag, then you'll be able to edit the menu structure via the web interface and it will be stored in the database.


Names of created images

I'm using vagrant-docker-compose to create a set of images within a VM using one Vagrantfile & docker-compose.yml file, bundling that VM and then launching containers within it using another Vagrantfile & docker-compose.yml file.
The original images (which are built) are automatically named as eg vagrant_foo and vagrant_bar based on the name given in the YAML file. These images exist in the VM, eg as per:
$docker images

REPOSITORY                   TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
vagrant_ipynb                latest              1bb94ebe6e38        3 hours ago         3.138 GB
vagrant_mongo                latest              51be69974278        3 hours ago         278 MB
ipython/scipystack           latest              720dc652b731        24 hours ago        2.857 GB

If I set eg image: vagrant_mongo as the name of an image in a new docker-compose.yml file, I get the error Error: image library/vagrant_mongo:latest not found.
If I set the name as ./vagrant_mongo  I get HTTPS endpoint unresponsive and insecure mode isn't enabled..
So how do I address the created images? Is there anyway I can configure vagrant-docker-compose to get names of the form myimage/vagrant_mongo and then try to load those

When rerunning a vagrant script, I keeping getting an error on one of my containers (quite a large one) getting ripped down and replaced:
Recreating vagrant_devpostgresdata_1...
Recreating vagrant_devpostgres_1...
Recreating f9ceb317c4_f9ceb317c4_f9ceb317c4_vagrant_ipynb_1...

Each time I reload the machine, I get another level of nesting on the ipynb container which then causes a Duplicate bind mount /notebooks error, presumably as multiple differently named containers try to mount the /notebooks` directory?
Here's the relevant `Dockerfile':
devpostgresdata:
    command: echo created
    image: busybox
    volumes:
        - /var/lib/postgresql/data

devpostgres:
    environment:
        - POSTGRES_PASSWORD=PGPass
    image: postgres
    ports:
        - "5432:5432"
    volumes_from:
        - devpostgresdata

ipynb:
  image: psychemedia/tm351_scipystacknserver:tm351d3test
  ports:
    - "8888:8888"
  volumes:
    - ./notebooks/:/notebooks/
  links:
    - devpostgres:postgres
    - mongo:mongo
    - openrefine:openrefine
  privileged: true

and the Vagrantfile:
Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/trusty64"
  config.vm.provider :virtualbox do |virtualbox|
  	virtualbox.memory = 1024
  end

  config.vm.network(:forwarded_port, guest: 8888, host: 8351,auto_correct: true)

  #Check that necessary host directories are in place
  config.vm.provision :shell, :inline => <<-SH
    mkdir -p notebooks
  SH

  #If you need to get into a container:
  # vagrant ssh
  # docker exec -it CONTAINERNAME bash

  config.vm.provision :docker_compose, yml: "/vagrant/docker-compose.yml", run: "always"
end

@psychemedia these look like they might be separate issues, lets deal with the first one here. docker-compose will use the image name and the project name to make the container names for the docker images it creates. When you reload the images using your second docker-compose.yml you probably want to make sure you set the project name and image names separately again, rather than including the project name in the image name.
The project name by default will be the directory that docker-compose runs in, and this by default is /vagrant which means the project name is vagrant.
Can you try changing the image names in your second docker-compose.yml to mongo and ipynb so they don't have the project prefix, because the second docker-compose.yml will re-add the project anyway.
Give that a go, there might be other things that docker-compose is doing automatically that might be preventing you from doing what you want to do if it stores intermediary files elsewhere.

@leighmcculloch I was using the simple form of the name (mongo, ipynb) in the second vagrant script. The ipynb container was the only one getting misnamed; it's quite a large container, with a mount on host, also running in privileged mode. It was also the last container mentioned in the yml file. (I've been starting to develop superstitious beliefs about possible causes! Too much late night working...)

I'm not sure what to suggest then, if you were only having issues with one of the containers, but were doing the same thing with both then maybe it was a configuration issue caused by late-night working :). If that's the case would you like to close the issue, retry it not-late-at-night and see if we have a winner?

@psychemedia I'm gong to close, please reopen if you have ideas on how to move forward on this and what was happening.


[Bug] select version() return >1 row

SELECT version() FROM tablename;

if the table had 13 rows of data, then 13 rows with versions are returned instead of one as expected
as if there is some kind of error/bug that the select version works like select *
and it is especially curious that before version 16 it returned one line as expected

I've just tested this in a real Postgres 16.2, and I get one row for each row in the table, which is what I would expect as its essentially falling the version function for each row. I think this may have been a bun in the old PGlite if you previously only received one row in the results.
samwillis=# CREATE TABLE test ( id INT PRIMARY KEY );
samwillis=# INSERT INTO test (id) VALUES (1), (2), (3), (4);
samwillis=# SELECT version() from test;
                                                              version
------------------------------------------------------------------------------------------------------------------------------------
 PostgreSQL 16.2 (Postgres.app) on aarch64-apple-darwin21.6.0, compiled by Apple clang version 14.0.0 (clang-14<IP_ADDRESS>), 64-bit
 PostgreSQL 16.2 (Postgres.app) on aarch64-apple-darwin21.6.0, compiled by Apple clang version 14.0.0 (clang-14<IP_ADDRESS>), 64-bit
 PostgreSQL 16.2 (Postgres.app) on aarch64-apple-darwin21.6.0, compiled by Apple clang version 14.0.0 (clang-14<IP_ADDRESS>), 64-bit
 PostgreSQL 16.2 (Postgres.app) on aarch64-apple-darwin21.6.0, compiled by Apple clang version 14.0.0 (clang-14<IP_ADDRESS>), 64-bit
(4 rows)


Cloning module issues for checkov action (IAC Scan issues)

Hello All,
@tronxd @gruebel @nimrodkor please help guys
Hope you are doing well.
we are getting cloning issues Continuously and its throwing as an error to our prisma scan which we are using for IAC Scan.
https://github.com/bridgecrewio/checkov-action/issues/101 -- Extension to this i couldnt find any solution in this room
Workflow we are using is :-
steps:
  - name: Checkout repo
    uses: actions/checkout@v3
    with:
      GH_TOKEN: ${{ secrets.PRISMA_TOKEN }}
    env:
      GH_TOKEN: ${{ secrets.PRISMA_TOKEN }}

  - name: Git Authentication to the repo
    run: |
      git config --local --remove-section http."https://github.com/"
      # git config remote.origin.url 'https://${{ secrets.PRISMA_TOKEN<EMAIL_ADDRESS>github.repository }}'
      # git config --global url."https://token:${{ secrets.PRISMA_TOKEN<EMAIL_ADDRESS>https://github.com
      git config --global<EMAIL_ADDRESS>https://github.com/
      git config --global user.name zameer712

  - name: Run Prisma Scan - Bridgecrew
    id: Bridgecrew
    uses: bridgecrewio/checkov-action@master
    env:
      PRISMA_API_URL: ${{ secrets.PCC_IAC_URL }}
    with:
      api-key: ${{ format('{0}::{1}', secrets.PCC_USER, secrets.PCC_PASS) }}
      directory: .
      soft_fail: true
      quiet: true
      download_external_modules: true
      log_level: DEBUG
      external-modules-download-path: .external_modules
      github_pat: ${{ env.GH_TOKEN }}
      output_format: sarif

!Error we are facing is as below #125
2023-03-14 16:20:03,593 [MainThread  ] [DEBUG]  AutoInterrupt wait stderr: b"Cloning into '/github/workspace/infrastructure/environments/test/ath_common_service/.external_modules/github.com/namespace/AthenaInfraV1/v1.0.16'...\nfatal: could not read Username for 'https://github.com/': No such device or address\n"
Error: -14 16:20:03,594 [MainThread  ] [ERROR]  failed to get git::https://github.com/namespace/AthenaInfraV1?ref=v1.0.16 because of Cmd('git') failed due to: exit code(128)
cmdline: git clone -v --depth=1 -b v1.0.16 -- https://github.com/namespace/AthenaInfraV1 /github/workspace/infrastructure/environments/test/ath_common_service/.external_modules/github.com/Maersk-Global/AthenaInfraV1/v1.0.16
stderr: 'Cloning into '/github/workspace/infrastructure/environments/test/ath_common_service/.external_modules/github.com/Maersk-Global/AthenaInfraV1/v1.0.16'...
fatal: could not read Username for 'https://github.com/': No such device or address
'

any update on the above issue ? please

hey @zameer712 feel free to check my PR which just adds the docs, but it is already fixed with the latest version.


(CL Test): Add tests for inverse relationship testing between TickToPrice and PriceToTick

Background
Upon implementing https://github.com/osmosis-labs/osmosis/pull/3874(Geometric tick spacing), we have re-implemented TickToPrice function and PriceToTick function.
As we test the inverse relationship for joinPool and exitPool in the gamm module, it would be best if we could add a test for ensuring the inverse calculation between the two methods.
Acceptance Criteria

Added test case using pre-defined test vectors that calls TickToPrice and then using the returned value calling PriceToTick and then checking if we get the same test vectors that we used as inputs

Marked this as "Help wanted" since this test is not on the critical path.

Hi could I work with it @mattverse @p0mvn

@hieuvubk yes please!

Hey @mattverse, I checked the code again and see that the TickToPrice function is not in main branch right now, can you plz check it?

I see that this #4003  had changed TickToPrice  to TicksToSqrtPrice, should we change the name function to keep working on this issue? @mattverse

@ThanhNhann  Yes in this case, lets test inverse relationship between TicksToSqrtPrice and PriceToTick. Im assuming that there would be a little bit of margin of error that would have to be considered when designing the test cases

Thank @mattverse, I have updated the tests


Understanding the refine.variant_summary.json

Hi Adam,
Thanks again for developing this tool! Great work!
I used truvari bench + refine to benchmark 3 SV callers. Here is what I get from "refine.variant_summary.json."

Tool
Type
Filter
TP-base
TP-comp
FP
FN
base cnt
comp cnt
precision
recall
f1

Sniffles
SV
PASS
20,815
18,734
616
1,742
22,557
19,350
96.817%
92.277%
94.492%

Sawfish
SV
PASS
22,489
21,144
720
895
23,384
21,864
96.707%
96.173%
96.439%

CuteSV
SV
PASS
19,770
17,068
452
1,842
21,612
17,520
97.420%
91.477%
94.355%

I used the same benchmarking BED region file for 3 tools.
So, why the base counts are different for 3 tools?
Thank you!

Refine creates a multiple sequence alignment (MSA) between all the haplotypes described by the baseline VCF, comparison VCF, and reference spanned by the bed file regions. The optimal MSA for a locus when including e.g. a Sniffles haplotype vs a Sawfish haplotype may need a different set of mismatches / insertions / deletions if their VCF entries are not describing the exact same sequences. Therefore, a different number of variants between runs is expected because harmonization is relative to the input. While this is expected, I agree it's not optimal and we'd prefer a universal variant count between runs so that they're more directly comparable. However, the nature of variants only existing as a result of an alignment procedure means the only way to enforce constant variant counts would be to prevent any and all alignment ambiguity - which (likely) isn't possible for the highly repetitive sequences around SVs - or enforce variant representation standards beyond simple INS/DEL - which would be a fool's errand. Fortunately, the precision/recall metrics normalize by counts and are therefore more comparable between runs. The precision/recall metrics you're showing are in-line with my expectations for each of these tools, so I think your results are probably valid. And I'll let you know that I'm actively working with GIAB to address at least the prevalence of this 'variant count' issue in the draft v1.1.

If you're feeling adventurous, I just thought up an experiment that might better harmonize the variant representations and counts for comparison between callers.
If you run bcftools merge on the baseline, sniffles, sawfish, and cuteSV VCFs, you should be able to directly run truvari phab on the merged VCF to harmonize all 8 haplotypes together with the reference. You can then run truvari bench -b merged.phab.vcf.gz -c merged.phab.vcf.gz --no-ref a --bSample baseline --cSample sniffles -o bench_result_sniffles (where bSample and cSample correspond to SAMPLE column names in the merged vcf).
This phab -> bench is essentially what refine is doing and by running phab on all haplotypes at once, they'll have more consistent representations across with one another and should all have the same baseline counts. This is experimental and something I've never done before, so I'm not positive it'll work, but I'm fairly confident it will, and might be an interesting result.

The benchmark set I used was indeed the T2T v1.1.
I am trying your proposed experimental way of running it and will update you when I get the result.
Thanks!


Added support for regexp flags

Added support and test for regular expressions as flag/argument values.
I didn't add the RegexList* family of functions since I didn't figure they'd be that useful. Can easily add to  values.json if desired.

I think it would be good to have the List functions as well. I would actually use this PR with list, in gometalinter, for the exclude/include regex filters. Thanks!

Ok, I'll update the PR with the list params too.

Nice, thanks!


Emit a diagnostic when parentheses are omitted in logical expressions with comparisons

E.g. foo and bar == 0 is OK, but foo & bar == 0 is parsed differently due to precedence, and virtually always results in a nasty bug.
It's not completely clear what would be the robust pattern to detect here, but it's the single biggest nMigen footgun, so it's probably better to come up with a less reliable than ideal diagnostic than have nothing at all.
See also #159, which fixes a similar issue. The diagnostic in #159 is only triggered in m.If conditions, which is (now that I think about it) incomplete; it's entirely possible that someone will capture or assign such an expression and get a broken design anyway. Ideally we also need a more robust fix for that.

Very footgun. Much debug.
I'm wondering if just steering people to use a different construct as a best practice would be sufficient. For example, instead of this, which is prone to error:
        with m.If((self._instr_phase == 0) & ~self._execute_trap):

Use:
        with m.If(all(self._instr_phase == 0, ~self._execute_trap)):

or something similar to all, which takes any number of statements and requires each to be 1.

That doesn't actually work, try it.

I mean something like this (which seems to have worked):
def allcond(*args):
    cond = 1
    for arg in args:
        cond &= arg.bool()
    return cond

  with m.If(allcond(self._instr_phase == 0, ~self._execute_trap)):

Could make this all_true and also any_true, all_false, any_false to complete the set. Again, this is just to get people away from using bitwise-& as a boolean operator.

I'm not a fan. This trades off some complexity in the DSL for another kind of complexity that is not clearly better, and in addition, effectively splits the language into two dialects: one that uses & and one that uses thes new operators.

So you'd be able to detect m.If(x == 1 & y) (a possible footgun) versus m.If(x == (1 & y)) (fully unambiguous)? Because wouldn't the parse tree be identical?

Because wouldn't the parse tree be identical?

The footgun exists because it's not identical (the former is parsed as (x == 1) & y).

Er, nevermind, I misread what you wrote.

I think what we can do is warn on
m.If(x == (1 & y)):

where the shape of x isn't unsigned(1), with the suppression being:
m.If(x == (1 & y).bool()):

which is a no-op when 1 & y is intended to be a boolean operation, or else:
m.If(x == (1 & y)[:]):

which is a no-op when 1 & y is intended to be a bit container operation.
Thoughts? The second suppression is kind of ugly, I don't know how often it will fire.


Verifiable PayID Protocol implemention

Is the Verifiable PayID Protocol has been implemented in the current version of the PayID server?
I have a look on the code and found a function of verifiable but it not similar to what mentioned in this RFC.

@wshbair , what was different between the PayID server and the RFC?

For example, this is the return of API of GET request (http://<IP_ADDRESS>:8080/wazen)
{     "addresses": [],     "verifiedAddresses": [         {             "signatures": [                 {                     "name": "testing",                     "protected": "",                     "signature": "d2hhdCBhbSBJIGNvZGluZyB3aGF0IGlzIGxpZmUgcGxlYXNlIGhlbHA="                 }             ],             "payload": "{\"payId\":\"wazen$<IP_ADDRESS>\",\"payIdAddress\":{\"paymentNetwork\":\"XRPL\",\"environment\":\"TESTNET\",\"addressDetailsType\":\"CryptoAddressDetails\",\"addressDetails\":{\"address\":\"TVQWr6BhgBLW2jbFyqqufgq8T9eN7KresB684ZSHKQ3oDth\"}}}"         }     ],     "payId": "wazen$<IP_ADDRESS>" }
While in RFC of verifiable-payid-protocol.txt Section 7.2 the example says the return looks like:
{ "messageType" : "PaymentInformation", "message" :  {    "payId" : "bob$receiver.example.com",    "addresses" :    [      {        "paymentNetwork" : "xrpl",        "environment" : "testnet",        "addressDetailsType" : "CryptoAddressDetails",        "addressDetails" : {           "address" : "XTVQWr6BhgBLW2jbFyqqufgq8T9eN7KresB684ZSHKQ3oDth"         }       }     ],     "memo" : "Additional optional Information",     "identity" : "TBD",  } "signature" : "TBD" }
Thanks in advance for clarification

The Verifiable PayID Protocol is a bit outdated in that we've moved away from SignatureWrapper.
The reference server supports the Self-Sovereign Verifiable PayID format. Note that this is really just a JWS, so the protected and signature keys are base64 encoded, and the payload is stringified. In the PayID RFC they are shown unencoded and unstringified to help understand what is inside those keys.

@aanchal4 , what do you think we should do to avoid confusion here?

Thanks @wshbair for pointing this out.
@hbergren Ideally I would like to update the Verifiable PayID Protocol. In the mean time, the best way to avoid this confusion is to add the following to the respective RFCs.

"Obsoletes Verifiable PayID Protocol" to  Self-Sovereign Verifiable PayID
"Updated by Self-Sovereign Verifiable PayID" to  Verifiable PayID Protocol

Probably this not the ideal way, but would help avoid confusion until I update the Verifiable PayID Protocol draft.
@sappenin What do you think?

@aanchal4 that sounds fine to me. I created some tasks for this that we can track internally.
I'm going to close this issue as it seems to be resolved for purposes of the problem @wshbair was having (@wshbair if there's still a concern here, feel free to re-open).


Update context.xml

Fixing a typo. No changes to the code.
https://expensify.slack.com/archives/C02QSAC6BJ8/p1692121499856619?thread_ts=1690400126.048609&cid=C02QSAC6BJ8

Details

Fixed Issues

$
PROPOSAL:
Tests

[ ] Verify that no errors appear in the JS console

Offline tests

QA Steps

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[ ] I linked the correct issue in the ### Fixed Issues section above
[ ] I wrote clear testing steps that cover the changes made in this PR

[ ] I added steps for local testing in the Tests section
[ ] I added steps for the expected offline behavior in the Offline steps section
[ ] I added steps for Staging and/or Production testing in the QA steps section
[ ] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[ ] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[ ] I included screenshots or videos for tests on all platforms
[ ] I ran the tests on all platforms & verified they passed on:

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I followed proper code patterns (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[ ] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I followed the guidelines as stated in the Review Guidelines
[ ] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] I verified that if a function's arguments changed that all usages have also been updated correctly
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

Merging since it's only a typo fix

🚀 Deployed to staging by https://github.com/marcochavezf in version: 1.3.55-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

I'll leave the comment for Melvin since I was the one that wrote this lil PR. I noticed a misspelling when the search errors out, so I updated the spelling error. I didn't touch any other code, so we felt it would be ok to bypass the QA checklist.

🚀 Deployed to staging by https://github.com/marcochavezf in version: 1.3.56-0 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/roryabraham in version: 1.3.56-24 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

No emergency, reason here https://github.com/Expensify/App/pull/24592#issuecomment-1681515257


Add 'toCompanion' generator for custom row classes

Adds 'toCompanion' extension function generator for custom row classes. This avoids writing boilerplate code for mapping custom row classes to companions. You can control generation with 'generate_to_companion_extension' builder option (defaults to false, of course)

Yes, it would be a better solution. I had a similar PR in the past that wasn't merged. There we talked about turn it on/off in builder option.
I'll change builder option to @UseRowClass then, but the parameter name will be 'generateReverseMapping' as you suggested last time.

Updated, tests passes!

Fix analyze errors

I found a solution: User can use custom getter to match columns. So builder will throw error and give a suggestion for that

Using 'generateToCompanion' assume user wants to use the row class to all operations, without companions (like ORM). Select object -> modify fields -> save (the the whole object). In this way all fields are included in the update query. When user calls 'toCompanion' there is always a complete data object behind where all fields are set and null means null, never means absent.
There is two type of user I think:

Who use companions (the regular way). He always writes updates with companion classes
Who use row classes only (as I) and never use companions.
I think there is no user (or very few) who wants to map all fields to companion and modify before insert. In this case, there is a chance to make unexpected errors with  'nullToAbsent'.

I think better solution to replace 'toCompanion' with 'toInsertable'. It can be used without boilerplate 'extends' and 'toColumns' override in custom row class. To achieve 'before save' event there will be an 'OnInsert' interface. If row class implements it, void onInsert(CompanionClass companion) function will be called when drift calls 'toColumns' on insert.
Would be better name 'beforeInsert' or 'beforeSave'.
Or simply leave 'toCompanion' too, but I think this is "dangerous" a bit.
I know you don't want to make an ORM from Drift, that's why I'm asking you what you think about this.
Sample:
abstract class OnInsert {
  void onInsert(TableWithoutPKCompanion companion);
}

class _$CustomRowClass implements Insertable<CustomRowClass> {
  CustomRowClass object;

  _$CustomRowClass(this.object);

  @override
  Map<String, Expression> toColumns(bool nullToAbsent) {
    final companion = TableWithoutPKCompanion(
      notReallyAnId: Value(object.notReallyAnId),
      someFloat: Value(object.someFloat),
      custom: Value(object.custom),
    );

    if (object is OnInsert) {
      (object as OnInsert).onInsert(companion);
    }

    return companion.toColumns(false);
  }
}

extension CustomRowClassToCompanion on CustomRowClass {
  _$CustomRowClass toInsertable() {
    return _$CustomRowClass(this);
  }
}

Done. I also modified parameter name to 'generateInsertable'


I have a problem

it says invalid login, and im not really sure what i did wrong, since i did all the steps correctly. maybe my token is wrong who knows.

Can you show me exactly what it says?

Oh yeah, no worries actually, I just had a letter missing from my token.
It's fine, bot works good.
On Wed, 8 Sep 2021, 20:49 Aaron Meese, @.***> wrote:

Can you show me exactly what it says?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ajmeese7/spambot/issues/56#issuecomment-915209642,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVQ4ZUOTLCIOSXET52WEJXDUA5LWRANCNFSM5DTSPQDA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Glad to hear that you figured it out, I'm going to go ahead and close out this issue now.
I hope you like the bot, let me know if there's anything else I can do to help :)


fix invalid lane

Fix invalid lane when there's no electricity running mods like "powered belt"
fixes:
https://mods.factorio.com/mod/belt-balancer-performance/discussion/6468cf77ec1c795cdf4aeadd
https://mods.factorio.com/mod/belt-balancer-performance/discussion/639ee50411f3609bf9fa5834

I'm not sure that this is the best way to fix the problem, as this will probably degrade performance because the check will run so frequently. I probably should have mentioned on the mod page that the most recent update should have fixed the issues that other people were running into by listening for more events to remove now-invalid belts, and fixing the lane accounting.
That said, I didn't write a migration to fix all of the existing lanes that may no longer exist, so if you have a save where you used the old version the error can still happen in that save.

It doesn't seem like there's a way to easily detect if powered belts replaces the belt, so this might be the best approach as it presumably also fixes all of the other ways this can happen, but it still has a performance impact around 10%, so it might be preferable to have a different codepath for when powered belts (or similar mods) are enabled.
Before merging this I would also suggest that you change the check to use lane.valid instead of the pcall() as this seems to be slightly faster and is the way suggested by Factorio's docs.


It would be nice to have a way to stop processing records on first error.

think in an scenario using the following code:
await DataStream
	.from(productsStream)
	.setOptions({ maxParallel : 1 })
	.map(doSomething)
	.batch(25)
	.map(doSomethingElse)
	.catch(e => {
		e.stream.end();
	})
	.run();

When any error occurs the streams is closed but for some reason scramjet is still processing data, is there a way to stop processing the data and return/throw/rise the error?

Hi @danielplascencia,
The batch method doesn't pass the the maxParallel settings further, since it does break the chain of transforms. If you push the setOptions code lower, it should stop immediately (mind you it will have an impact on performance).
The reason for this happening is that scramjet runs operations in parallel and because all operations are treated as asynchronous (or more specifically chained promises), a number of those is scheduled in advance.
Sadly I know of some implementations already using the fact that some options are not conveyed and this change would need a major release and since that is supposed to bring a complete rewrite of the framework, that's not going the be happening within weeks...


AssertError:buf should have data from resbuf, shutting down process

Hi, thanks for your sharing.
When I try to replica your demo, I met a error like "AssertError:buf should have data from resbuf, shutting down process", "raise RuntimeError('Get nonzero return code=%d on %s %s' % (ret, cmd, env))".
This error is occured after type the below command:
"python ../../xgboost/dmlc-core/tracker/dmlc-submit --cluster local --num-workers 2 python main.py"
Here is the error detail.

Besides, when I run your demo in single worker model, it works well.
Could you help me to figure out it ? Thanks in advance.

hi @hacql2004, I run the code again by using the command shown above. It works well on my computer and also I didn't meet this error before. Did you set the rabit ?  BTW, I am using python3.6 and I am not sure whether there is incompatibility between 3.6 and 3.7. Thanks :)

@Raymw thanks for your active reply. I've changed my envs into python3.6, while the error continues.  My xgboost was modified and rebuilt  from its newest master branch. I tried to just replace your 'para.h', 'updater_histmaker.cc' directily, but make failed. Thus, I modified the related part of files manually with your instruction. Could u share your xgboost branch edition. or any other recommendation? Thanks.

Hi, I rebuild the xgboost based on release 0.90. It turns to work well. Thanks.

@hacql2004  Welcome to comment or email me if you meet any problem. Thanks !


HttpObjectAggregator does not suppress channelReadComplete() when aggregation is not finished yet

HttpObjectAggregator does not implement channelReadComplete() properly, resulting in seemingly duplicate channelReadComplete() events.  For example, where the pipeline looks like the following:
--> HttpRequestDecoder --> HttpObjectAggregator --> ..

HttpRequestDecoder could trigger the following events:

channelRead(HttpRequest)
channelReadComplete()
channelRead(HttpContent)
channelReadComplete()
channelRead(LastHttpContent)
channelReadComplete()

HttpObjectAggregator should trigger the following events:

channelRead(FullHttpRequest)
channelReadComplete()

However, the current behavior is:

channelReadComplete()
channelReadComplete()
channelRead(FullHttpRequest)
channelReadComplete()

Related pull request: #3263

I like the idea of #3263 and just finished the first round of review.

Fixed by  #3263


deps: upgrade envoy to 1.30.1 (patched)

Description
A few sentences describing the overall goals of the pull request's commits.
Related Issues
List related issues.
Testing
A few sentences describing what testing you've done, e.g., manual tests, automated tests, deployed in production, etc.
Checklist

[ ] Does my change need to be backported to a previous release?

What backport versions were discussed with the Maintainers in the Issue?

[ ] I made sure to update CHANGELOG.md.
Remember, the CHANGELOG needs to mention:

Any new features
Any changes to our included version of Envoy
Any non-backward-compatible changes
Any deprecations

[ ] This is unlikely to impact how Ambassador performs at scale.
Remember, things that might have an impact at scale include:

Any significant changes in memory use that might require adjusting the memory limits
Any significant changes in CPU use that might require adjusting the CPU limits
Anything that might change how many replicas users should use
Changes that impact data-plane latency/scalability

[ ] My change is adequately tested.
Remember when considering testing:

Your change needs to be specifically covered by tests.

Tests need to cover all the states where your change is relevant: for example, if you add a behavior that can be enabled or disabled, you'll need tests that cover the enabled case and tests that cover the disabled case. It's not sufficient just to test with the behavior enabled.

You also need to make sure that the entire area being changed has adequate test coverage.

If existing tests don't actually cover the entire area being changed, add tests.
This applies even for aspects of the area that you're not changing – check the test coverage, and improve it if needed!

We should lean on the bulk of code being covered by unit tests, but...
... an end-to-end test should cover the integration points

[ ] I updated DEVELOPING.md with any any special dev tricks I had to use to work on this code efficiently.

[ ] The changes in this PR have been reviewed for security concerns and adherence to security best practices.

I initially cherry-picked Lance's old 1.28 commits to help since I was running into issues. They aren't needed in this branch anymore, but since they also aren't hurting anything, I was just going to leave them in unless anyone cares since the rebase to drop them would be annoying.


[Bug]: Euphoria Helpers appear to do nothing.

What modules are you seeing the problem on?
ScriptHookVDotNet3.dll (v3 SDK/API)
SHVDN Version
3.6.0
Game Version
1.0.2944.0
Bug Description
Calling Start() on seemingly all CustomHelper derived Euphoria helper classes does nothing, however calling StaggerFall through the Native CREATE_NM_MESSAGE and GIVE_PED_NM_MESSAGE functions correctly, however with no way to configure the Message.
        private void OnKeyDown(object sender, KeyEventArgs key)
        {
            if (key.KeyCode == Keys.Subtract)
            {
                Function.Call(Hash.SET_PED_TO_RAGDOLL, Game.Player.Character, 4000, 5000, 1, 1, 1, 0);
                SendEuphoriaMessage(NaturalMotionMessages.StopAllBehaviors);
                SendEuphoriaMessage(NaturalMotionMessages.StaggerFall); //functions as expected
            }
            else if (key.KeyCode == Keys.Multiply)
            {
                Game.Player.Character.Euphoria.StaggerFall.Start(); //does nothing
            }
        }

Below is the equivalent of calling SendEuphoriaMessage(NaturalMotionMessages.StaggerFall); with the messageId as an int.
Function.Call(Hash.CREATE_NM_MESSAGE, true, 1151);
Function.Call(Hash.GIVE_PED_NM_MESSAGE, Game.Player.Character);

Steps To Reproduce
Call Start() on almost any of Euphoria CustomHelper Classes such as StaggerFall.
Link To Code Example
No response
The Current Behavior
The Character ragdolls and nothing else.
The Expected Behavior
The Euphoria/NaturalMotion Message should be sent to the Character and the action then take place, such as falling over while staggering, instead of flopping to the floor.

I'm somewhat new to this, I'm sorry.
I built from source and it works, however would I have to wait for a new release to be able to upload the files to GTA5 Mods or could I bundle the built files.
I don't exactly want everyone that downloads it to have to complile it themselves every time.

I know what you are concerning. And that is why I'm focusing on only adding methods for  frequently used native functions in ysc scripts that are not well documented in the Native DB and finding design flaws of the new features not shipped in any stable versions.
v3.7.0 should be published within 1 week if I managed to do stuff properly. Your patience would be appreciated, and it might be rewarded.

The only reason I bought it up was because it seems "intuitive" to use Start(int) and I was using another resource, which has since been defunct by the CustomHelpers being broken, and they used Start(int). It doesn't matter too much since the messages only need to last for the duration of the Ragdoll itself and since they don't function when the character is not in Ragdoll, it works out.

Duplicate of #1145
Sorry to bump, but this is just a mark.


Pulse sensor in eclipse c++ supported sensor list

Hi,
Not sure it is the right place to post it but posting anyway. Pulse sensor from seeedstudio is supported in upm but not showing in the eclipse c++ supported sensor option. I checked the upm xml file and found it has incomplete definition

I added this into the xml file but got "sensor data is out of sync please click here to update it" and after updating it get backs to its original file.
   <sensor briefdesc="Pulsensor Pulse Sensor library" category="medical" connection="AIO" detaileddesc="This is a library for a 3-wire pulse sensor sold by several manufacturers. Usually, you can identify the sensor based on the round breakout and the distinctive heart symbol. callback data" flag="upm-pulsensor" id="pulsensor" link="http://iotdk.intel.com/docs/upm/v0.4.0/group__pulsensor.html" manufacturer="Seeedstudio" name="Pulsensor" wiki="http://www.adafruit.com/products/1093"/>
   <header connection="GPIO" link="http://iotdk.intel.com/docs/upm/v0.4.0/pulsensor_8h_source.html" name="pulsensor.h"/>
</sensor>

any solution for it so that this sensor can show in the supported sensor list in eclipse?

The parser used by the Eclipse sensor plugin needs some adjustments. I've notified the responsible party about this.

Fixed with 5e37830bb7851eeb1579ed6466aa447d7ffb0593. The changes will become visible on the next UPM version tag and Eclipse will be able to pull in the sensor info. You should be able to use the sensor as expected once that happens. Thanks for reporting this!

Thanks for the fixed. I updated the libraries in eclipse to the latest version but I am still not able to see the sensor. Any idea why is that?

or if is there any way to add it manually, please guide me.

What version of UPM did you update to with Eclipse?

I am not sure which version it is but I used the update Libraries version and it updated to the latest one. Is there anyway to check the UPM version in eclipse?

I found the preference option and it is using MARAA 0.9.0 and UPM 0.4.1

I run the c++ example given in upm example and now I am getting this error "symbol lookup error: /tmp/PulseSensor: undefined symbol: _ZN3upm9PulsensorC1EPFv9clbk_dataE  logout"

That's expected, the sample was updated to match the new API that was introduced in UPM 0.5.0. If you select custom repository from the options tab and use this link: http://iotdk.intel.com/repos/3.0/intelgalactic/opkg/i586/ it will grab the latest versions and the sample should work.

I used that link and updated the libraries. I also had to update the libraries In Galileo to match with eclipse. The sensor was showing in the sensor support list in eclipse but today when I opened the eclipse today, it disappeared again from the list. I rolled back and install the libraries again but still no success. Is that cache issue now?

Could you tell me how to add the sensor in my project without the clicking the sensor support option?

I think I got what is the issue. Last night I deleted the Eclipse and install the fresh copy. I updated the Marra and upm libraries from the repository link you gave me. Sensor was not listed on the sensor support view. Then I selected the Intel development repository and which rolled back to that repositories. Sensor started listed again in the supported sensor list. Finally I updated again back to the repository through the link which you gave me and it is still the sensor support view. So the problem is somewhere between the updated and eclipse old libraries.

Finally I run the sample code and it is working now. Getting these values
callback data (1)
callback data (0)
callback data (1)
callback data (0)

Sounds like Eclipse handles this by pulling the xml files + drivers when you use the default repository, but only drivers when you use a custom link. Not much you can do about that other than wait for a new Eclipse version to be released which will have the updated links by default. You can add a sensor manually by adding the corresponding #include in your code and the linker flag under Project -> Properties -> C/C++ Build -> Settings -> Cross G++ Linker -> Libraries.
Not sure what you mean by proper pulse values, the driver has several variables used internally to determine when a heart beat happens (like bpm, threshold, so on) but they are not exposed. If you think they should feel free to start a new UPM Issue requesting a driver update with a list of features you would like to see.

This should be no longer an issue with new versions of Intel® System Studio.


Pull

Hello @Aimanfaiz1999
I am closing this PR due to too much noise on the mailing list from hundreds of commits. This PR shows more than a thousand changed file in hundreds of commits which I hope can't be right. Open a new PR when you are ready to have it reviewed.


Make it possible to easilly use with ES6

Make it possible to easilly import modules as following:
import {Maps4News, DummyFlow} from 'maps4news';
import {Color} from 'maps4news/crud/Color';

It is already possible to import using the following syntax for top level exports:
import {Maps4News, DummyFlow} from '@mapcreator/maps4news';


Demo testing cartesian path

Small roadblocks:

Is there an elegant solution to compares list since assertAlmostEqual only takes single values?
A better solution than using the timer as is currently done to stop the subscription. I had tried to leverage assertWaitFor(end of test) however that seems to be a blocking function (even if placed in and if statement)


CMake integration stop working when "CMAKE_TOOLCHAIN_FILE" is replaced with "toolchainFile" (as recommended for presets version 3 or above)

Describe the bug
In VSCODE I get the following message when using "CMAKE_TOOLCHAIN_FILE" in a preset file:
Use "toolchainFile" property instead when using presets version 3 or higher. Tne CMake documentation also states about this option for such presets versions.

However, when I do this, the linkage does not work anymore and it's just like passing an empty string.
Environment

OS: Windows 11
Compiler: MSVC vc143

To Reproduce
In a CMake preset file (version higher than 3) replace:
{
    "version": 6,
    "configurePresets": [
        {
            "name": "x64-release",
            "cacheVariables": {
                "CMAKE_TOOLCHAIN_FILE": "<VCPKG_ROOT>/scripts/buildsystems/vcpkg.cmake",
                "CMAKE_BUILD_TYPE": "Release"
            }
        }
    ]
}

With:
{
    "version": 6,
    "toolchainFile": "<VCPKG_ROOT>/scripts/buildsystems/vcpkg.cmake",
    "configurePresets": [
        {
            "name": "x64-release",
            "cacheVariables": {
                "CMAKE_BUILD_TYPE": "Release"
            }
        }
    ]
}

Expected behavior
The same behavior of "CMAKE_TOOLCHAIN_FILE"'.
Failure logs
Even in debug mode, cmake Log does not show anything related to the tool chain file, but the issue is immediately noticeable from plenty of "not found" errors which does not happens when "CMAKE_TOOLCHAIN_FILE" is used.
Additional context
I'm just ignoring and continuing to use "CMAKE_TOOLCHAIN_FILE", but I wanted to report such issue because there must be a valid reason if they recommend to switch from "CMAKE_TOOLCHAIN_FILE" to "toolchainFile" property.

I think vcpkg is the wrong repository to report this VS Code (CMake plugin?) issue.

I was not sure on where to report this, but I decided here because even without Vs code and its CMake plugin, the issue persists. May be vcpkg has not the required implementation to handle a "toolchainFile" property?

vcpkg itself "handles" none of it. AFAICS it is CMake, and the documentation you linked indicates that toolchainFile is a json property which belongs  to the configurePresets array.
So your example should be (untested):
{
    "version": 6,
    "configurePresets": [
        {
            "name": "x64-release",
            "toolchainFile": "<VCPKG_ROOT>/scripts/buildsystems/vcpkg.cmake",
            "cacheVariables": {
                "CMAKE_BUILD_TYPE": "Release"
            }
        }
    ]
}


Library saves password in clear text

It appears like the CLI automatically saves the username/password in clear text to a local text file.
Abodepy should get out of the business of caching/managing user credentials and instead use or at least offer the use of something like keyring to allow credentials to be saved in a secure location.
I might be able to provide a patch if there's interest in accepting it.

I see this project is abandoned. I'll work on this in jaraco.abode.


Added another dummy test

this should not fire off release.yml until merged.

waited 5 minutes, did not fire.
Merging, see if release.yml is fired off.


LARGE_BANNER request

Could you implement LARGE_BANNER? Thanks

Thank you for the good suggestion, we have implemented it now. You can activate it by setting LARGE_BANNER in the javascript.

I tested, and I can't get it to work just by changing AdSize in the javascript.
I changed  adSize: window.plugins.AdMob.AD_SIZE.SMART_BANNER to
adSize: window.plugins.AdMob.AD_SIZE.LARGE_BANNER, but I got a Smart Banner anyway.
However, it worked when I changed "private AdSize adSize = AdSize.SMART_BANNER;" to "private AdSize adSize = AdSize.LARGE_BANNER;" in /src/android/AdMob.java. But I don't understand why...

Good man! You found a bug. Will fix now and update.

Ok it's fixed now. You can specify LARGE_BANNER from the javascript and it works. Please check the new version.


Language Server reports false positives in Native Notebook

Install VSCode Insiders
Install Jupyter Extension
Install Pylance
Select Python 3.6 as workspace interpreter
Select a different interrpeter as Kernel in Notebook (e.g. Python 3.7 Conda)
Install pandas into the kernel interpreter
Write code in cell and import pandas

Pylance will report errors about missing packages (pandas is reported as not being installed).
This is a false positive, the user has it installed in the python environment used by the kernel.
The problem is pylance doesn't know that the document is using a different interpreter.
This will eventually get even more complicated:

Assume we import a python module from the notebook
I now go to deffinition & land in the python file
Now what Interpreter should the langauge server use when checking pacakges/imports for this file?
Basically it depends on the context, but does the LS know this?

Dupe of #6333


Using istead of third-party signing programs

Some websites implement signing documents using third party tools such as NexU or BISS. For example, these instructions require that NexU be installed.
Can I use web-eid for signing on these pages instead? If so where can I look which are supported, and how to potentially add support for others.

It is not likely. The pages have to add support for Web eID and use it in the back-end as well.
For your reference, instructions how to add Web eID support to a Java web application back-end are here and to the corresponding front-end here. We also provide official support for .NET and PHP applications.


Update fs-extra in scaffolder-backend

Hey, I just made a Pull Request!
Update fs-extra to 10.0.0 to better handle broken symbolic links.
The only breaking changes in the major version upgrade should be
this and the requirement of node v12 or higher which backstage
also requires.
fixes #6456
Signed-off-by: jrusso1020<EMAIL_ADDRESS>
:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

Hmmm - really don't want to do this as this was rolled back because of https://github.com/backstage/backstage/issues/6416
Can you try and do yarn workspace @backstate/plugin-catalog add fetch with this change applied and see if it works?

Knew it was only a matter of time before something caught us out like this. The latest version does depend on 10.x that's published to npm FYI.

Just tried it, looks like it works with this so happy for this to go through.

Thanks @benjdlambert !

@benjdlambert I think yarn workspace @backstate/plugin-catalog add fetch works still with this change because I only updated the scaffolder plugin, whereas there is an issue in the catalog plugin? But that's just a thought

Hmm not sure. Does it work if you change the target to be the scaffolder backend? I think it's more to do with nested dependencies and yarn getting confused with hoisting or something.


Add transcript / captions together with videos

@bebatut is this intended as a feature to link to the text-based components of videos separately from the videos?


How to use postcss-url plugin?

I want to use postcss-url plugin. but not work for me. It`s my config,
scss({
      processor: css => postcss([px2rem({ remUnit: 75, remPrecision: 5 }), url({ url: 'copy', assetsPath: './assets' })]),
      output: 'dist/bundle.css',
    }),

It seams like this plugin always set postcss from is undefinded. and I want to write a postcss plugin to copy file, but not work

Have you tried to set from? What could this plugin do better?
    scss({
      processor: css => postcss([px2rem({ remUnit: 75, remPrecision: 5 }), url({ url: 'copy', assetsPath: './assets' })]),
      output: 'dist/bundle.css',
      from: "somefile"
    }),


Add 3 columns to GUI

GUI has been refactored to show all lists in 3 separate columns.

Codecov Report

Merging #208 into master will decrease coverage by 0.07%.
The diff coverage is 0.00%.

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


Custom config.yml locations

The default behaviour in henry is to create the config.yml file in the current working directory. This could be confusing for some users. It would be great to create a config.yml file in the default install folder and then allow users to override this either globally or on a per-use basis.

Users can specify the path to the config.yml file using the --path option. Requiring the users to place the config file inside the site-packages directory (which is the default target directory of manually built python packages) is not very user friendly since it's not easy to locate at all. Note that I say that it requires users to place it because the config file is not something that can be auto generated as it requires users to put their API3 credentials in.


Add dns_server option.

Problem Description
This has come up a few times now: mitmproxy currently just opens asyncio sockets with the unresolved hostnames. Python's stdlib will then use libc's getaddrinfo, which always includes /etc/hosts. This can be very annoying, see e.g. https://github.com/mitmproxy/mitmproxy/issues/6737. We want a way to teach mitmproxy to use a custom DNS server.
Proposal

Implement an async getaddrinfo method that resolves a hostname using a custom DNS server. This could be done in either Python or Rust in mitmproxy-rs. My first best guess would be to go with https://docs.rs/hickory-resolver/latest/hickory_resolver/ in Rust.
Write an addon that defines dns_server and monkeypatches/replaces the current event loop's getaddrinfo to use our custom implementation if dns_server is set.

Ideally we start with a PR that does just the first part + tests before getting to part two.

Hi @mhils Could I have a bit of explanation on this?

I can help with this! If anyone is currently working on this

anyone have any advice for creating test cases or testing the getaddrinfo method?

Can anyone elaborate more on this!
Has the issue resolved ?


Add Ubuntu 15.04 'Vivid Vervet' to ubuntu/releases

We need vivid in ubuntu/releases so we can start testingbreaking stuff.

pretty please. Looks to be some significant benefits over 14.04 (which has been rock solid for my Samsung 550C)

I can't even get utopic to run right but maybe that's just me...

Agreed, 15.04 has a ton of backend enhancements that bring Ubuntu up to a new level. Also i dont think this issue should have the bug badge, it deserves an enhancement badge.

But it might be a buggy enhancement :)
On Sun, Apr 26, 2015 at 4:10 PM, Justin Willis<EMAIL_ADDRESS>wrote:

Agreed, 15.04 has a ton of backend enhancements that bring Ubuntu up to a
new level. Also i dont think this issue should have the bug badge, it
deserves an enhancement badge.
—
Reply to this email directly or view it on GitHub
https://github.com/dnschneid/crouton/issues/1662#issuecomment-96429580.

--
DennyL@GMail

Haha. I've heard 15.04 is actually pretty stable
On Sun, Apr 26, 2015, 4:33 PM DennisL<EMAIL_ADDRESS>wrote:

But it might be a buggy enhancement :)
On Sun, Apr 26, 2015 at 4:10 PM, Justin Willis<EMAIL_ADDRESS>wrote:

Agreed, 15.04 has a ton of backend enhancements that bring Ubuntu up to a
new level. Also i dont think this issue should have the bug badge, it
deserves an enhancement badge.
—
Reply to this email directly or view it on GitHub
<https://github.com/dnschneid/crouton/issues/1662#issuecomment-96429580
.

--
DennyL@GMail
—
Reply to this email directly or view it on GitHub
https://github.com/dnschneid/crouton/issues/1662#issuecomment-96437082.

I hope it's better than utopic, I've had troubles with it.
On Sun, Apr 26, 2015 at 5:34 PM, Justin Willis<EMAIL_ADDRESS>wrote:

Haha. I've heard 15.04 is actually pretty stable
On Sun, Apr 26, 2015, 4:33 PM DennisL<EMAIL_ADDRESS>wrote:

But it might be a buggy enhancement :)
On Sun, Apr 26, 2015 at 4:10 PM, Justin Willis<EMAIL_ADDRESS>wrote:

Agreed, 15.04 has a ton of backend enhancements that bring Ubuntu up
to a
new level. Also i dont think this issue should have the bug badge, it
deserves an enhancement badge.
—
Reply to this email directly or view it on GitHub
<
https://github.com/dnschneid/crouton/issues/1662#issuecomment-96429580
.

--
DennyL@GMail
—
Reply to this email directly or view it on GitHub
<https://github.com/dnschneid/crouton/issues/1662#issuecomment-96437082
.

—
Reply to this email directly or view it on GitHub
https://github.com/dnschneid/crouton/issues/1662#issuecomment-96437130.

--
DennyL@GMail

so what's involved in making a target? can one rename an existing target to vivid and point the ppas there?

It's not a target, it's a release; they have to add it to releases.
On Sun, Apr 26, 2015 at 5:44 PM, tedm<EMAIL_ADDRESS>wrote:

so what's involved in making a target? can one rename an existing target
to vivid and point the ppas there?
—
Reply to this email directly or view it on GitHub
https://github.com/dnschneid/crouton/issues/1662#issuecomment-96438356.

--
DennyL@GMail

I hesitate to call adding a non-LTS Ubuntu release to crouton an "enhancement" because a lot of stuff will be broken, but I concede your point :)
This isn't a target; it's a release that just needs to be added to installer/ubuntu/releases at first. It'll need to be marked with a * since we haven't made any efforts to test crouton on vivid yet. That can probably be put into a one-line PR, hence the pie label.
After that's done, we need testing on vivid to see where things broke and need fixes, if workarounds from former releases (see the abhorrent workarounds for the unity target) still work, etc. Those should be tracked in separate issues, with names like vivid: unity target needs X fixed.

Thanks Dennis, so can one copy a release from say trusty to vivid and change some stuff? Or if it's harder than that, should the pie flag be attached to this issue?

@smibarber gotcha, so to do a PR for this, do I need to fork the branch here:
https://github.com/dnschneid/crouton/blob/b0a8c8d61e1d367ef9c625835c2e7067ee8e747f/installer/ubuntu/releases
(which would be a first for me)
and then add vivid* ??

Ted, Take a look at installer/ubuntu/releases that Stephen pointed out, it's simply a matter of adding the name 'vivid' to the end of the file with an asterisk and maybe a '| test' label.

@DennisLfromGA I did, I added vivid* |test below utopic, forked a branch, then clicked on Pull Request, but after that, it said I could just merge, so I did that too. I'm guessing anything that is green should be clicked on???

@tedm - Oh wow, you did it now! :/ ( just kidding... ;)

@smibarber Did I do this right? If so, this can be closed.

@DennisLfromGA lol ;) ok, so what else needs fixing 'round here :+1:

Good one ;-)
Take your pick - https://github.com/dnschneid/crouton/issues
On Sun, Apr 26, 2015 at 6:19 PM, tedm<EMAIL_ADDRESS>wrote:

@DennisLfromGA https://github.com/DennisLfromGA lol ;) ok, so what else
needs fixing 'round here [image: :+1:]
—
Reply to this email directly or view it on GitHub
https://github.com/dnschneid/crouton/issues/1662#issuecomment-96440110.

--
DennyL@GMail

@ted - Or start here -

vivid: unity target needs widgetmaker5000 fixed

;-)

@DennisLfromGA lol, I ran this query: https://github.com/dnschneid/crouton/issues?utf8=✓&q=pie and most I've either fixed or am waiting for feedback, or they seem to be Intel cpu problems ;)

You're the man!
On Sun, Apr 26, 2015 at 6:27 PM, tedm<EMAIL_ADDRESS>wrote:

@DennisLfromGA https://github.com/DennisLfromGA lol, I ran this query:
https://github.com/dnschneid/crouton/issues?utf8=✓&q=pie and most
I've either fixed or am waiting for feedback, or they seem to be Intel cpu
problems ;)
—
Reply to this email directly or view it on GitHub
https://github.com/dnschneid/crouton/issues/1662#issuecomment-96440377.

--
DennyL@GMail

@DennisLfromGA no seriously, I need to comprehend what these issues are first, and I'm sure most can probably be seen on the ARM. I think you explained the open issue for xfce in a window, which I just tested, so hopefully the OP will find that as a solution and close.