Better Optional Handling

Hey this is just a small PR looking to address the issue of optionals not being handled quite as they should be. I ran into the issue while using the library to generate my types
I noticed there is a PR looking to do a similar thing currently but I do not think there is a need for a flag tbh. I agree with robins comment around the best idea being to aim to be as close as possible to the resulting types from z.infer
The main shortfall I would callout in this PR is that the or type
or: z.number().optional().or(z.string()) which transforms into or?: (number | undefined) | string;
Should actually look like or?: number | undefined | string; but think it is alright leaving that for now as a future improvement
Keen to get something like this in if possible since atm I am probably going to have to resort to using z.infer in a few places instead of my generated types!

This is the same problem that we had in the other PR so I was reluctant to merge it. I guess this can be done for now though. I'll release this later today.
There seems to be a lot of people who want this though so I will take another look at how we can implement this. I think we can use a TS transformer to traverse all the nodes after they are generated.

Is there a functional difference? Or would that just be for prettier output?

Unsure if functionally different, but definitely different than the output of z.infer<T> may or may not lead to type mismatch issues, but don't know without playing around with it. Main reason I raised PR originally was having issues where even though prop: string | undefined is probably equivalent to prop?: string | undefined in most cases i was having TS compiler issues where it was complaining they were different

Ok, thanks for clarifying. I believe they're the same so I'll go ahead and merge this now :+1:

@mordv @RobinTail I've released a new version (1.0.0) with this fix. Does that fix the issues you were having?

@gtflip I believe it may change behavior depending on your tsconfig

@gtflip I believe it may change behavior depending on your tsconfig. Also I'm not too concerned with prettier output at the moment. I think it would actually be difficult to not omit undefined.

I didn't know about that tsconfig option.  Thanks for responding.
I'm using it to document what the types look like for API calls, so that's why I was thinking in terms of it being easier to read.  I can just edit the output, though.


Use docker image with Playwright already installed when running Playwright github workflow

Testing if this will be faster than installing the playwright and the browsers

this doesn't even work so closing this pr. will look into this more if tests become slow


v0.20.23 break "indexer-service"

Network: arbitrum-one
After full js side of the indexer stack upgrade to v0.20.23 indexer-service trow errors and not able to process paid queries.
{
    "level": 50,
    "time":<PHONE_NUMBER>819,
    "err": {
        "type": "IndexerError",
        "message": "Failed to process paid query",
        "stack": "IndexerError: Failed to process paid query\n    at indexerError (/home/some-user/indexer/packages/indexer-common/dist/errors.js:173:12)\n    at /home/some-user/indexer/packages/indexer-service/dist/server/index.js:227:67\n    at Generator.throw (<anonymous>)\n    at rejected (/home/some-user/indexer/packages/indexer-service/dist/server/index.js:6:65)",
        "code": "IE032",
        "explanation": "https://github.com/graphprotocol/indexer/blob/main/docs/errors.md#ie032",
        "cause": {
            "type": "Error",
            "message": "Unable to sign the query response attestation",
            "stack": "Error: Unable to sign the query response attestation\n    at QueryProcessor.<anonymous> (/home/some-user/indexer/packages/indexer-service/dist/queries.js:89:31)\n    at Generator.next (<anonymous>)\n    at fulfilled (/home/some-user/indexer/packages/indexer-service/dist/queries.js:5:58)",
            "status": 500
        }
    },
    "msg": "Failed to handle paid query"
}

additionally:
{
    "level": 40,
    "time":<PHONE_NUMBER>211,
    "name": "IndexerService",
    "component": "AllocationMonitor",
    "allocations": [],
    "err": {
        "type": "IndexerError",
        "message": "Failed to query indexer allocations",
        "stack": "IndexerError: Failed to query indexer allocations\n    at indexerError (/home/some-user/indexer/packages/indexer-common/dist/errors.js:173:12)\n    at /home/some-user/indexer/packages/indexer-service/dist/allocations.js:111:56\n    at Generator.next (<anonymous>)\n    at /home/some-user/indexer/packages/indexer-service/dist/allocations.js:8:71\n    at new Promise (<anonymous>)\n    at __awaiter (/home/some-user/indexer/packages/indexer-service/dist/allocations.js:4:12)\n    at refreshAllocations (/home/some-user/indexer/packages/indexer-service/dist/allocations.js:24:56)\n    at /home/some-user/indexer/node_modules/@graphprotocol/common-ts/dist/eventual/eventual.js:242:33\n    at Generator.next (<anonymous>)\n    at /home/some-user/indexer/node_modules/@graphprotocol/common-ts/dist/eventual/eventual.js:8:71",
        "code": "IE010",
        "cause": {
            "type": "GraphQLError",
            "message": "Syntax Error: Unexpected \"}\".",
            "stack": "GraphQLError: Syntax Error: Unexpected \"}\".\n    at syntaxError (/home/some-user/indexer/node_modules/graphql/error/syntaxError.js:15:10)\n    at Parser.unexpected (/home/some-user/indexer/node_modules/graphql/language/parser.js:1458:41)\n    at Parser.parseDefinition (/home/some-user/indexer/node_modules/graphql/language/parser.js:212:16)\n    at Parser.many (/home/some-user/indexer/node_modules/graphql/language/parser.js:1511:26)\n    at Parser.parseDocument (/home/some-user/indexer/node_modules/graphql/language/parser.js:122:25)\n    at Object.parse (/home/some-user/indexer/node_modules/graphql/language/parser.js:32:17)\n    at parseDocument (/home/some-user/indexer/node_modules/graphql-tag/lib/graphql-tag.umd.js:69:34)\n    at gql (/home/some-user/indexer/node_modules/graphql-tag/lib/graphql-tag.umd.js:98:16)\n    at /home/some-user/indexer/packages/indexer-service/dist/allocations.js:27:102\n    at Generator.next (<anonymous>)",
            "locations": [
                {
                    "line": 7,
                    "column": 9
                }
            ],
            "extensions": {}
        }
    },
    "msg": "Failed to query indexer allocations, keeping existing"
}

ValidationError: The 'X-Forwarded-For' header is set but the Express 'trust proxy' setting is false (default).
This could indicate a misconfiguration which would prevent express-rate-limit from accurately identifying users.
See https://express-rate-limit.github.io/ERR_ERL_UNEXPECTED_X_FORWARDED_FOR/ for more information.
    at Object.xForwardedForHeader (/home/some-user/indexer/node_modules/express-rate-limit/dist/index.cjs:166:13)
    at Object.wrappedValidations.<computed> [as xForwardedForHeader] (/home/some-user/indexer/node_modules/express-rate-limit/dist/index.cjs:324:22)
    at Object.keyGenerator (/home/some-user/indexer/node_modules/express-rate-limit/dist/index.cjs:583:20)
    at /home/some-user/indexer/node_modules/express-rate-limit/dist/index.cjs:633:32
    at async /home/some-user/indexer/node_modules/express-rate-limit/dist/index.cjs:615:5 {
  code: 'ERR_ERL_UNEXPECTED_X_FORWARDED_FOR',
  help: 'https://express-rate-limit.github.io/ERR_ERL_UNEXPECTED_X_FORWARDED_FOR/'
}

After multiple attempts to debug and fix this problem, I decided to revert to v0.20.22 and all problems magically disappered.
There is no issues with agent or anything also, the only indexer-service is affected.

Sharing more comments from Discord:
https://discord.com/channels/438038660412342282/791444480628490290/1169694148702523482

lots of IE10's & 32's.  before and after rolling back to .22 - Vince


Legacy People API

Hi,
Some problems with  People API ? (deprecated ??)
403 Forbidden
Legacy People API has not been used in project ... If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry
In Provider/Google.php file at line 79
replace https://www.googleapis.com/plus/v1/people/me? to https://www.googleapis.com/userinfo/v2/me
worked for me

I'm not sure what you're referring to. The plus endpoint hasn't been used since #65.


fix: use dart.tool.dart2wasm in connect.dart conditional import

Potential fix for https://github.com/simolus3/drift/issues/3381.
Is still unclear to me from the research made what's the "migration" steps from the Dart team given the deprecation discussed in https://github.com/dart-lang/sdk/issues/55266 for these conditional imports.

Thanks for the report and PR! I think instead of adding another condition, it's easier to just match for dart.library.js_interop being available (we don't allow older SDKs without that library, so this also doesn't break existing users).
I've done that in 0f48c51a68f473c1c0e64ca9c0b8c0a9d3d8c7da, I'll publish the version as soon as the CI has passed.


tf.contrib.lookup.string_to_index_table_from_file optimization

System information

OS Platform and Distribution : macOS Catalina 10.15.3

TensorFlow installed from : binary

TensorFlow version : 1.15.x

Python version: 3.7.3

Describe the current behavior
Hi ,
If there any way we can make reading of vocab faster esp for api "tf.contrib.lookup.string_to_index_table_from_file" ?
For token size more than few thousand it take close to 500ms , how can we optimize it ?

@17patelumang,
TensorFlow 1.x is not actively supported. Could you please update TensorFlow to v2.3 and check if you are still facing the same issue. Thanks!

@amahendrakar  thank you for reply , for TF 2.x api is there any way we can optimize it ?

@17patelumang Can you please share a simple standalone code to reproduce any performance related issue? Can you please share as many details as possible about use-case and what you had tried and what is your goal of those optimizations. Thanks!


docs: Add mechanical gripper assembly renders

Can you please compress images with something like https://compresspng.com?

https://github.com/CopterExpress/clover/pull/294


[cfg] Add 'bugprone-suspicious-memory-comparison' to config

The checker landed recently in 3373e845398bfb8fa0e3c81b7ca84cbfedbad3ae 1,
and covers SEI-CERT rules EXP42-C 2 and FLP37-C 3 in the same
implementation.
SEI-CERT classifies EXP42-C as Medium severity with Probable likelihood,
while FLP37-C is of Low severity and Unlikely likelihood.
Due to the fix of the issue being minimal engineering effort (making a
comparison predicate and replacing uses of (std::)memcmp with it), the
MEDIUM severity in our case I believe is justified.
CC: @steakhal

Checker configuration is changed in #3233. Can you please rebase your branch and resolve the merge conflict.  The new configuration files can be found here: https://github.com/Ericsson/codechecker/tree/master/config/labels.

I close this ticket and transfer the changed to the other format: #3413.


Cant deploy first template in example after extractor

Where did you encounter this bug?

[] Extractor

Describe the bug
The Error.
##[error]ResourceNotFound: The Resource 'Microsoft.ApiManagement/service/APIMDEV1' under resource group 'FuncAppApiRg2' was not found
The documentation list the order in which the templates should deployed as follows.

Products.template.json
Tags.template.json
namedValues.template.json
apis.template.json
globalServicePolicy.template.json

** Please note I have 8 files after running extractor.
** The instructions say to deploy the Products.template.json first.  My pipeline failed on this one attempt.
** is the documentatin up to date?
** example yaml pipeline anywhere?
My Yaml

task: AzureResourceGroupDeployment@2
displayName: 'Deploy to new RG'
inputs:
azureSubscription: 'TimKelleyServiceConnection'
resourceGroupName: '${{ parameters.resourceGroup }}'
location: '${{ parameters.location }}'
csmFile: '$(System.ArtifactsDirectory)/APiM/build/apim_templates/APIMTimKelley-products.template.json'
csmParametersFileLink: '$(System.ArtifactsDirectory)/APiM/build/apim_templates/APIMTimKelley-parameters.json'
overrideParameters: '-apimServiceName APIMDEV1'
deploymentMode: Incremental

dotnet --version 6.0.202
Extract settings
{
"sourceApimName": "APIMTimKelley",
"destinationApimName": "APIMTimKelleyDEV",
"resourceGroup": "FuncAppApiRg2",
"fileFolder": "./"
}
What version of the DevOps Resource Kit is being used? latest

Please define "latest" for the DevOps Resource Kit.  We have a beta version and a GA version and they are very different right now.

The error indicates that the APIMDEV1 does not exist.  The current 1.0.0-betas do not create the resource for you - you need to create the resource as a target for the settings.


use without FQDN

I'd like to try starting this service with docker compose, but as I am "inside" a network there will be no DNS resolution (from outside - that means no letsencrypt or something like this)
Is there a possibility to get this running without fully qualified domain names (e.g. without having to use init.sh)?
I tried to start it but it seems nginx is not answering (starting) without having the certificates available.

You can either run the development mode (postgres -> sqlite, apache/gunicorn -> flask dev server, redis -> python thread).
Or substitute the nginx config with https://github.com/AECgeeks/ifc-pipeline/blob/voxels/nginx_http_only/app.conf to disable ssl

Hi I tried to apply app.conf for nginx, which basically works, but redirects to a "buildingsmart" authentication homepage.
And I also tried to set DEVELOPMENT to True which results in a "decode.json" not being found.
Is there an example of an decode.json somewhere or how can I circumvent the authentication to only use it for local purposes?
(not being a FLASK Pro here)

Good point. I think it's sufficient to replace these lines
https://github.com/buildingSMART/validate/blob/release/application/main.py#L132-L143
So that the login_required decorator becomes:
def login_required(f):
    @wraps(f)
    def decorated_function(*args, **kwargs):
        user_data = {'sub': 'my-user-id-0', 'email'<EMAIL_ADDRESS>'name': 'Test User', 'given_name': 'Test', 'family_name': 'User'}
        return f(user_data, *args, **kwargs)
    return decorated_function

Maybe we should restructure things so that it's possible to configure the code to behave like this from the outside. If you have some ideas feel free to send in a Pull Request ;)

thanks a lot for your help! Got it running.
If I find a way to make the "local" installation easier I will surely create a pull request, but I am afraid I have to learn FLASK before that :)
One small thing I noticed: I never knew when uploading an IFC File was finished to start validation. Maybe there is already something, but I did not notice when uploading finished and everything was ready to click on "start validation". Is there a way to better show (or even validate automatically) when the file has finished uploading and is ready?
No diving deeper into it and hopefully can help at some point.

One small thing I noticed: I never knew when uploading an IFC File was finished to start validation. Maybe there is already something, but I did not notice when uploading finished and everything was ready to click on "start validation". Is there a way to better show (or even validate automatically) when the file has finished uploading and is ready?

I think there is a misunderstanding. The [Start validation] button starts the upload and adds the tasks to the queue, so in your case most likely immediately begins processing.

ah ok thanks - it's just when I select a ifc file with the dialog, there is some "movement" on the white bar inside the window here - so I thought that might indicate an "upload". Thanks for clarification.


docs: add template for reporting issues on Soletta

Based on instructions at:
https://github.com/solettaproject/soletta/wiki/How-to-report-an-issue
Signed-off-by: Bruno Dilly<EMAIL_ADDRESS>

:+1:

thanks, merged


Extract k values

Hi there,
Great toolbox!
Is it possible to extract the estimated discount rate at a participant level?

Thanks, hope it's useful.
The first thing I've done is to clarify in SCRIPT.m where the univariate summary information is. If you create a model called hModel as in the demo provided, then summary information at the group and participant level is stored in a structure hModel.analyses.univariate So you can for example get participant level estimates of the slope of the discount rate into a nice table with a command like:
participant_level_m = array2table([hModel.analyses.univariate.m.mode' hModel.analyses.univariate.m.CI95'],...
'VariableNames',{'posteriorMode' 'CI5' 'CI95'});

I'm not sure if this is exactly what you are after? I will soon add a function to automatically generate these tables and export them to a text file.
There is another way to interpret your question however. At the moment we make estimates on m and c which gives you the magnitude effect slope. If you want to simplify this to get a distribution of discount rates k then I will be writing a function to let you do this soon as well.

Following up on the last point. If you want k values then you can now do this. I have added a method to the model class which allows to you calculate group and participant level estimates of discount rate, log(k) for a specified reward magnitude.
Have added some example code into the demo SCRIPT.m which calculates and plots this.
So code like the following will now do this for you
plotFlag=true;
hModel.conditionalDiscountRates(100, plotFlag);

and you get a nice Matlab table of discount rates

And plots of the full posterior (predictive) distributions for group and participant

I think that answers your question? And let me know if I can add anything more.

Hi Benjamin,
This is exactly what I was after (and more)!
Thanks very much.
On Wed, Nov 11, 2015 at 3:40 AM, Benjamin T. Vincent <
<EMAIL_ADDRESS>wrote:

Following up on the last point. If you want k values then you can now do
this. I have added a method to the model class which allows to you
calculate group and participant level estimates of discount rate, log(k)
for a specified reward magnitude.
Have added some example code into the demo SCRIPT.m which calculates and
plots this.
So code like the following will now do this for you
plotFlag=true;
hModel.conditionalDiscountRates(100, plotFlag);
and you get a nice Matlab table of discount rates
[image: screen shot 2015-11-10 at 16 36 13]
https://cloud.githubusercontent.com/assets/6765047/11068435/2d2e1a70-87c9-11e5-9f0a-09a0d69d0047.png
And plots of the full posterior (predictive) distributions for group and
participant
[image: screen shot 2015-11-10 at 16 36 46]
https://cloud.githubusercontent.com/assets/6765047/11068448/4356a722-87c9-11e5-9007-56fa7157d04f.png
I think that answers your question? And let me know if I can add anything
more.
—
Reply to this email directly or view it on GitHub
https://github.com/drbenvincent/delay-discounting-analysis/issues/1#issuecomment-155481117
.


python3Packages.genson: init at 1.2.2

Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

@ofborg build python310Packages.genson
@ofborg build python311Packages.genson

Result of nixpkgs-review pr 237775 run on x86_64-linux 1

4 packages built:

python310Packages.genson
python310Packages.genson.dist
python311Packages.genson
python311Packages.genson.dist

I forgot what I needed this for and didn't manage to build the latest release.


can't load with dev-environment

I'm trying to create a cannon mod for VW but cannot load VW mod  with the develop environment, it causes the game to quit with description:
Exception in thread "main"
Process finished with exit code 1

place normal copy of the mod(*-full.jar) in run/mods

it does not work, the client won't start if i have vw in the mods file and says "Process finished with exit code 1"

OK, now i think this is not a problem with div-environment but a compatibility issue with forge
https://github.com/ValkyrienWarfare/Valkyrien-Warfare-Revamped/issues/159

use the same version of forge and MCP of VW.

OK, now I tried it with the same version of forge, it still cannot load vw. I do think vw needs a div version so that others could make their mods compatible with vw.

Actually OMT group tried to make their mod compatible with vw but they cannot load vw in their div-environment so they temporally give up on that ide.

Fixed in c1031a5fdc9319a9834c880c6c79905fe29313e9


Optimize rewards

PR #40 is adding the withdraw rewards flow (not merged at time of writing), however it is still at proof of concept stage and not optimized at all. It is also not very robust or well tested.
@ethanfrey's comments from the review:

In terms of lazy distribution of tokens, I can recommend the approach we did in wynd dao that does one write on distribution, one on withdrawal, and one extra write each time a staked updates their shares.

I have not looked at the dao-dao distribution logic, but maybe that makes sense as well. However, the wynd dao logic is designed to handle discrete payment events triggered externally, which I think is more fitting here.

The DAO DAO implementation is here: https://github.com/DA0-DA0/dao-contracts/tree/main/contracts/staking/cw20-stake-external-rewards

Here is the wynd link: https://github.com/cosmorama/wynddao/blob/main/contracts/wynd-stake/src/distribution.rs
For some reason the other link doesn't work for me.

The correct link is here https://github.com/cosmorama/wynddao/blob/main/contracts/wynd-stake/src/distribution.rs

Hey guys, im redoing PR #40 to be more performant, its my first try at staking contracts so I would like to run the rewards calculation design by you to see if its correct and make sure I didn't miss anything.
Same design will apply to both withdraw to consumer and withdraw to delegator, the general idea is to calculate the rewards per token per block we need to pay, we take the total rewards divide it by the total staked amount and then divide it by height from last calculation, this gives us rptpb (rewards per token per block).
We can then use this number, to see when and how much consumer/delegator got paid, and only pay the difference.
This will allow us to remove all the bad loops I did, almost similar to DAO DAO Solution, you can see my current code which removes the loops without the calculation here: https://github.com/Art3miX/mesh-security/pull/2 (might be easier to read the code then the PR)
Details, in withdraw from validator (When we receive rewards from validator or from consumer):

last_height = Last rewards update height
old_rptpb = Last rewards_per_token_per_block (how much we need to pay per staked token, per block)
calculate new_rptpb = (new_rewards_amount / total_staked / (curr_height - last_height)) + old_rptpb
new_rptpb is saved per validator, and it basically represents the total amount of rewards this validator got, but factors in the time (height diff) and total staked tokens during withdrawals.
Then on consumer we can save new_rptpb to represent when and how much that consumer got paid.

Then we have update_rewards() function that runs every time consumer stake/unstake or claim rewards, because when the stake changes, we need to also make sure he get rewards based on the new stake in the future:

old_rptpb is saved on the consumer end, to know how much we already paid him before doing new calculation.
blocks_to_pay = curr_height - last_height how much blocks passed since we last paid him.
rptpb_to_pay = new_rptpb - old_rptpb (if 0 we don't have rewards to pay), this is the diff between what we already paid, and what we need to pay since last time paid.
rewards_to_pay = rptpb_to_pay * staked * blocks_to_pay
This function will save the rewards_to_pay in PENDING_REWARDS storage until the consumer withdraws the rewards.
When withdraw_to_consumer is called, we first call update_rewards() to update the amount of rewards, then we take the amount, send it to mesh-consumer and set it to zero.

I think the calculation is correct, and should work, but there is 1 issue, I do not reset rptpb this number increases and never reset, the only way to reset it is to make a loop over all consumers, calculate their rewards, update it and reset this number. N loop with N+1 reads and saves to storage.
Potentially this number can overflow in the future but it should take a while.
Little example:

first withdraw we have rewards 100, staked tokens 10, and last update was 10 blocks away
new_rptpb = 100 / 10 / 10 + 0 = 1
2nd withdraw, 100 rewards, 20 staked, 10 height_diff
new_rptpb = 100 / 20 / 10 + 1 = 1.5
200 rewards, 40 staked, 10 height_diff
new_rptpb = 200 / 40 / 10 + 1.5 = 2

I added the calculation to the PR, you can find the implementation of the calculation design in meta-staking.

The above calculation was wrong, I changed to it be rewards per token, and remove the whole height factor.
Validator calculation: https://github.com/CosmWasm/mesh-security/pull/40/files#diff-525d18d496dfc7f7589e3e5cc521ff82a04622c901787dc68054f9aa9da16352R174
Consumer/delegator calculation: https://github.com/CosmWasm/mesh-security/pull/40/files#diff-525d18d496dfc7f7589e3e5cc521ff82a04622c901787dc68054f9aa9da16352R63
In general we use decimal and only send full tokens, and keep the leftover in pending state.


How can I add a Global Secondary Index to an Existing Table containing data

Which Category is your question related to?
amplify push
Amplify CLI Version
3.9.0
What AWS Services are you utilizing?
Api
Provide additional details e.g. code snippets
schema.graphql
BEFORE
type Industry @model {
  id: ID!
  name: String!
}

AFTER
type Industry @model
  @key(name: "ByName", fields: ["name"], queryField: "industryByName") {
  id: ID!
  name: String!
}

ERROR
Attempting to add a local secondary index to the IndustryTable table in the Industry stack. Local secondary indexes must be created when the table is created.
An error occured during the push operation: Attempting to add a local secondary index to the IndustryTable table in the Industry stack. Local secondary indexes must be created when the table is created.

Hi @christodupreez The schema you have above should create a GSI. Can you try updating to the latest version of the CLI (4.18.0) and trying again?


Add support for not outputting color to terminal

This is required when the output is piped into a file or a program.
Here is a more general approach via an environment variable NO_COLOR https://no-color.org/. I decided to only include a boolean option since this function is exposed for user code and not internal to the package.

Hi @greenfork,
The changelog - added label was added to this pull request; all PRs with a changelog label need to have release notes included as part of the PR. If you haven't added release notes already, please do.
Release notes are added by creating a uniquely named file in the .release-notes directory. We suggest you call the file 44.md to match the number of this pull request.
The basic format of the release notes (using markdown) should be:
## Title

End user description of changes, why it's important,
problems it solves etc.

If a breaking change, make sure to include 1 or more
examples what code would look like prior to this change
and how to update it to work after this change.

Thanks.

I have a slight preference here towards having the option be an affirmative "colorize" that defaults to true and would end up as else "".
@jemc thoughts?

@greenfork i'm going to switch this to a draft until this is finalized (so it can't be accidentally merged). unfortunately due to the holidays, that is going to be a couple weeks for larger feedback.

I like the affirmative boolean too. I'm not in a rush, thanks for telling about it. Happy holidays!
I will proceed and apply your suggestion. I thought about naming it colored but colorize I think is even better.


Key expiry differs in terraform state and in web UI

Describe the bug
We're managing pre-authentication keys via Terraform, and here is the example  of the resource:
resource "tailscale_tailnet_key" "default" {
    ephemeral     = false
    expiry        = 7776000 # 90 days in seconds
    id            = "XX"
    key           = (sensitive value)
    preauthorized = true
    reusable      = true
    tags          = [
        "tag:dev-tailscale-subnet-router",
    ]
}

However, in the console, there is no expiration date for the key:

The key behaves like it actually expires, here is an example of the error we had before:
│ Error: Failed to fetch key
│
│   with module.tailscale_subnet_router.tailscale_tailnet_key.default,
│   on .terraform/modules/tailscale_subnet_router/main.tf line 36, in resource "tailscale_tailnet_key" "default":
│   36: resource "tailscale_tailnet_key" "default" {
│
│ 404 page not found (404)

But the subnet router that used the key from the example above still was connected to the Tailnet, and all was operational.
To Reproduce
Steps to reproduce the behavior:

Create a tailscale_tailnet_key resource by applying Terraform configuration.
Start Tailscale subnet router with the key. Command that we use: sudo tailscale up --advertise-routes=${routes} --authkey=${authkey} --hostname=${hostname}

Compare Terraform state and web console UI information about key expiration.

Expected behaviour
The key expiration date in web console corresponds to the one set in thetailscale_tailnet_key resource.
Desktop (please complete the following information):

OS: macOS
Terraform Version: 1.3.2
Provider Version: 0.13.7

An authkey can be used to authorize a new node to join the tailnet. Authkeys created using the Web UI have a lifetime of 90 days by default. After 90 days, the authkey will not be able to authorize a new node to join the tailnet.
Once a new node has been authorized, it generates a machine key and node key which allow it to connect Wireguard tunnels to other devices. The machine key and node key are not tied to the authkey which created this node. The authkey can expire or be revoked, and nodes which it previously created are unaffected. The authkey expiration only impacts its ability to create new nodes.
Node keys by default expire after 6 months. However, nodes created with tags are almost always servers and it was an unwelcome default to have servers expire six months after creation. So nodes created with tags have their node keys set to never expire by default.

@DentonGentry ah, so the "Key expiry" I see in the web console is for node key, not auth key, correct? Then it all makes sense. Thanks a lot for the detailed answer!

so the "Key expiry" I see in the web console is for node key, not auth key, correct?

Yes.


Some TV Shows are classed as Movies

Pretty sure you're aware of this but couldn't see an issue for it.  If you need any more info let me know!

Will probably get this going quicker if you provide information about your provider and the EPG data they offer!


"Insulation (Continued)" frequent errors from doors

Describe the bug
IMPORTANT: Please first search existing bugs to ensure you are not creating a duplicate bug report.
errors with insulation mod enabled
To Reproduce (VERY IMPORTANT)
Steps to reproduce the behavior:

Load a save
See errors

Error Log
https://gist.github.com/1163af431c358ee45354c634418805a2
Mod List
see log
https://steamcommunity.com/sharedfiles/filedetails/?id=2196454890&searchtext=insulation
Screenshots

NA

Mod author has integrated the fix for the issue


Introduce structured TOML configuration option

This PR introduced an option to use TOML file to configure remote workspace. It also comes with possibility to have a global config that can provide values to workspace configuration it the are not overwritten

@bzzzzzz : could you rebase this PR? Seems like a few changes are going in the reverse direction?

Rebased


Workspace auto execute script

As i'm using vscode since a year now, i have all of the projects configured in each work space, i was searching through docs and not able to get anything about execution of some script on opening workspace.  Please have a look at what i am going to apply for a new feature request, please forgive me this is first time of mine.
In settings.json

We could have an option for auto-execution script default it should be npm start from package.json  It will save time for everytime to open terminal and execute script for every running MEAN app / Node.js Server.

On opening vscode prompt user to execute script.

Accepting prompt should execute script while opening terminal.

It should be able to configure multiple folder in a single workspace i.e if i have an Angular Client with a Node server in different dir.

Happy Coding!!

@Tyriar Do you have any solution to this ?

You can use tasks to run things when you open a folder. Other than that you could always write an extension.
https://code.visualstudio.com/docs/editor/tasks#_run-behavior


Set default JVM memory settings for the build

Will be picked up when building a sub-module
Doesn't work with --file option (MNG-5889)

Looks good. Will merge.


[BUG] Bloxstrap takes 3-5 business days to launch roblox.

Acknowledgement of preliminary instructions

[X] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.
[X] I have thoroughly looked through the available Wiki articles and could not find a solution to my problem.
[X] I am using the latest version of Bloxstrap.
[ ] I did not answer truthfully to all the above checkboxes.

What problem did you encounter?
I don't know if anyone's had this same issue but this is the like fifth time this has happened to me this year. I am going to restart my pc and see if that fixes anything. (It took me 4 minutes to finally launch into a game. Other times its even longer.)
Bloxstrap Log
N/A (No errors)

Restarting my pc fixed it but it is still super annoying.


withRouter error, if used withOUT router

Version
3.0.0
Steps to reproduce
use withRouter without a Router ;) (Rendering stuff in styleguidist)
this.props.router is used only in action handlers
Expected Behavior
The component should at least render.
Actual Behavior
Get an error message:
TypeError: Cannot read property 'params' of undefined
Unfortunately, I am unable to debug in styleguidist quickly, but I think the error is coming from here:
https://github.com/ReactTraining/react-router/blob/6eeb7ad358f987520f5b519e48bdd31f725cbade/modules/withRouter.js#L32
Maybe a quick and dirty fix on Line 31 would be enough:
const router = this.props.router || this.context.router || {}

We should probably just return the wrapped component:
if (!router) return <WrappedComponent {...this.props} />

A PR for this would be appreciated!


Integrate TLA+/PlusCal tree-sitter grammar?

The TLA+ tree-sitter grammar now supports PlusCal: https://github.com/tlaplus-community/tree-sitter-tlaplus/
You can see how to consume the grammar from TypeScript here: https://github.com/tlaplus-community/tlaplus-tool-dev-examples/tree/main/tree-sitter/typescript
There are a few ways the grammar could help:

Much more robust syntax highlighting compared to regex-based methods (however would have to use semantic highlighting API probably)
Code navigation (find all references, go to definition, etc.)

Basically the grammar gives you access to an incrementally-updated error-tolerant queryable syntax tree. Let me know whether you think this would be a useful addition and I will be happy to help with integration.

@edaena, I believe you're familiar with the relevant parts of the extension.  One question to answer is how this integrates with SANY.  For example, tree-sitter rejecting a spec shouldn't prevent users from launching TLC if SANY is happy, and vice versa.  From experience with TLAPS, we know that two parsers disagree in subtle ways (which is why there is an (incomplete) effort to replace the TLAPS parser with SANY).  Related, I'd suggest thinking about integrating with the PlusCal translator, such as users modifying the PlusCal without retranslating before model-checking...
Note that the proposed code navigation already exists.
Related:

https://github.com/tlaplus/vscode-tlaplus/issues/239
https://github.com/tlaplus/vscode-tlaplus/issues/238
https://github.com/tlaplus/vscode-tlaplus/issues/245
https://github.com/tlaplus/vscode-tlaplus/issues/230
https://github.com/tlaplus/vscode-tlaplus/issues/166
https://github.com/tlaplus/vscode-tlaplus/issues/163
https://github.com/tlaplus/vscode-tlaplus/issues/153

Of note, tree-sitter doesn't really reject specs; it will provide as good of a parse as it can get, and end up looking something like (sample taken from different language):
(source_file [0, 0] - [3, 0]
  (class_def [0, 0] - [2, 1]
    (class [0, 0] - [0, 8])
    (class_method_name [1, 3] - [1, 6])
    (function_block [1, 6] - [1, 19]
      (parameter_list [1, 7] - [1, 18]
        (argument [1, 9] - [1, 11]
          name: (identifier [1, 9] - [1, 11]))
        (ERROR [1, 11] - [1, 17]
          (integer [1, 13] - [1, 17]))))))

There is a flag you can check to see whether there are any error nodes in the parse tree, but unless you go hunting for them you won't know they're there.

To clarify: Are you're saying that the list of use-cases is exhaustive s.t. tree-sitter should only replace regex-based syntax highlighting and improve code navigation/completion?  For everything else, however, SANY remains authoritative?  This then sounds reasonable, especially, if syntax highlighting and code navigation continue to work in the presence of parse failures.
By the way, does the tree-sitter parser implement SANY's lookup sequence for extended, instantiated, nested, and re-defined modules (regardless of where they come from)?  If not, a user might end up looking at a different module than what the tools will work with (compare https://github.com/tlaplus/vscode-tlaplus/issues/181 and https://github.com/tlaplus/vscode-tlaplus/issues/218).
In the light of https://github.com/tlaplus/vscode-tlaplus/issues/239, what are the (runtime) dependencies of tree-sitter?

Yes, SANY remains authoritative. Tree-sitter doesn't even have the capability to print error messages or anything, it's purely designed to support language tooling. I don't think my list of use-cases is exhaustive really, there are other possibilities like code folding or code formatting/linting that other people have implemented.
Tree-sitter does not implement any semantic analysis or restrictions whatsoever, it is purely a syntax-level tool against which you can write queries. The lookup logic (outside of a single file) could eventually be implemented by encoding it as stack graph rules, although stack graphs still don't have good developer documentation and are only currently used for code navigation on a handful of languages on github itself.
Tree-sitter grammars are all C and C++ files. The generated grammar is a 32 MB C file (src/parser.c in the repo) and the handwritten context-sensitive parsing logic for junction lists and proofs is in src/scanner.cc. When compiled this is about 3 MB in size, and it links to the tree-sitter library which is a few hundred KB in size. This can all easily be compiled with emscripten into WASM (this is what's running in the web demo I linked up above, see https://github.com/tlaplus-community/tlaplus-community.github.io/tree/main/tree-sitter-tlaplus/js

Related: https://github.com/microsoft/vscode-anycode

Oh hey neat, that must be new! People have been asking for native vs code support for tree-sitter for a while now. Guess this is the compromise.


Add row and cell generator methods

The reason for this change is to allow row-level and cell-level changes in subclasses.
Also: https://github.com/silverstripe/silverstripe-framework/pull/4079/files#diff-c804f1dc153eaf30afb92594fa774456L362

I guess this doesn't really add much rather than refactor existing code. Do you think this is minor enough to fit into 3.1? cc @silverstripe/core-team ?

I would say "style sucks, so minor code cleanup" is safe to merge into a patch release.

I think that it's safe to go in, though I've gotta say all the reformatting makes it hard to review :wink:
Thanks @assertchris!

@willmorgan I'm only 4 months late but you can add ?w=1 to the end of the url to see it without whitespace changes!


Static lifetime elision

This works:
static ELEMENT: &str = "...";

and this works:
#[distributed_slice(MYSLICE)]
static ELEMENT: &str = "...";

but this does not work:
#[distributed_slice]
pub static MYSLICE: [&str] = [..];

error[E0106]: missing lifetime specifier
 --> src/main.rs:5:22
  |
5 | pub static MYSLICE: [&str] = [..];
  |                      ^ expected named lifetime parameter

We should figure out the context in the generated code in which elision is not kicking in, and explicitly insert 'static on all references there.

The generated code for the MYSLICE declaration is as follows. The two extern statics inside the extern "C" block need an explicit 'static added.
pub static MYSLICE: ::linkme::DistributedSlice<[&str]> = {
    #[cfg(any(target_os = "none", target_os = "linux", target_os = "macos", target_os = "ios", target_os = "tvos", target_os = "illumos", target_os = "freebsd"))]
    extern "C" {
        #[link_name = "__start_linkme_MYSLICE"]
        static LINKME_START: <[&str] as ::linkme::private::Slice>::Element;
        #[link_name = "__stop_linkme_MYSLICE"]
        static LINKME_STOP: <[&str] as ::linkme::private::Slice>::Element;
    }
    #[cfg(any(target_os = "none", target_os = "linux", target_os = "illumos", target_os = "freebsd"))]
    #[link_section = "linkme_MYSLICE"]
    #[used]
    static mut LINKME_PLEASE: [<[&str] as ::linkme::private::Slice>::Element; 0] = [];
    assert!(::std::mem::size_of::<<[&str] as ::linkme::private::Slice>::Element>() > 0);
    unsafe {
        ::linkme::DistributedSlice::private_new(&LINKME_START, &LINKME_STOP)
    }
};

error[E0106]: missing lifetime specifier
  --> src/main.rs
   |
   |         static LINKME_START: <[&str] as ::linkme::private::Slice>::Element;
   |                                ^ expected named lifetime parameter

error[E0106]: missing lifetime specifier
  --> src/main.rs
   |
   |         static LINKME_STOP: <[&str] as ::linkme::private::Slice>::Element;
   |                               ^ expected named lifetime parameter

It should be:
-        static LINKME_START: <[&str] as ::linkme::private::Slice>::Element;
+        static LINKME_START: <[&'static str] as ::linkme::private::Slice>::Element;

-        static LINKME_STOP: <[&str] as ::linkme::private::Slice>::Element;
+        static LINKME_STOP: <[&'static str] as ::linkme::private::Slice>::Element;


Grand Theft Auto IV Aldereny disappering randomly

Alderney is disappering randomlu in Grand Theft Auto IV. By that I mean when you go to that part of the map you see the map disappering and reappering but its in low quality and often disappears again. It happens mostly when you alt+tab the game or/and when you are far from Alderney it will happen. But if you load the save and happened to save in the safehouse in Aldereny it wont happen or if you stay in the map for a few minutes and look at the directions it will go away or start a mission there. It happens if you play for a long time and might not always occur. It happened on previous DXVK versions too. Also im using NVCleanstall to remove a few nvidia driver bloatware features. And im sure its DXVK as when i remove it, it wouldnt happen.
Software information
Grand Theft Auto IV
I'm using a texture mod https://www.nexusmods.com/gta4/mods/105 but i have applied community mods like zolikapatch, scripthook and made the game use 4gb ram and commandline
System information

GPU:NVIDIA GeForce GTX 1050 Ti
Driver:522.25
OS:Windows 10 Enterprise LTSC Version 21H2 (OS Build 19044.1889)
DXVK version: 2.0

Log files
GTAIV_d3d9.log
PlayGTAIV_d3d9.log

It happens mostly when you alt+tab the game

Yeah alt tabbing is broken in GTA IV with DXVK.
It's been a known issue for years. No idea how to fix it.

@CarCrasher730 Please try with this PR https://github.com/doitsujin/dxvk/pull/3316. You can find a download of it here https://github.com/doitsujin/dxvk/actions/runs/4537356630

This is hopefully fixed now.


Execute Sounder SIPS workflow as CWL on HySDS cluster

Create a combined CWL workflow that executes 1 SSIPS L1APGE + 20 SSIPS L1B PGEs
Acceptance Criteria

L1A Algorithm CWL run on HySDS Cluster in MCP
L1B Algorithm CWL run on HySDS Cluster in MCP
Demo execution on MCP Dev venue
Demo execution on MCP Test venue

The L1B CWL workflow is working on MCP Test. Will create a new Epic for the L1A workflow for the next U-SPS release


Add and extend form components and showcases.

Added several components that are used in forms: Select, Radios, Input Group, Range. Enhanced Checkbox to also implement switches, and the inline form (multiple checkboxes in a row instead of a column).  The Checkbox was previously actually showing a Radio - but now it is a checkbox and there is a separate Radio function for Radios. Also added a few screens to the showcase application to demonstrate the components.

Thanks!


[SPARK-37600][BUILD] Upgrade to Hadoop 3.3.2

What changes were proposed in this pull request?

Upgrade to Hadoop 3.3.2.
Why are the changes needed?

Does this PR introduce any user-facing change?

How was this patch tested?

Test build #146048 has started for PR 34855 at commit 997590e.

Test build #146048 has finished for PR 34855 at commit 997590e.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/146048/

Test build #146050 has started for PR 34855 at commit be530f0.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/50523/

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/50525/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/50523/

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/50525/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/50523/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/50525/

Test build #146050 has finished for PR 34855 at commit be530f0.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/146050/

hmm somehow YarnClustereSuite started failing after 3.3.2. I'll need to check what caused the issue.

Is there any update, @sunchao ?

It seems to pass locally. Could you re-trigger the test simply, @sunchao ?
[info] YarnClusterSuite:
[info] - run Spark in yarn-client mode (10 seconds, 131 milliseconds)
[info] - run Spark in yarn-cluster mode (9 seconds, 90 milliseconds)
[info] - run Spark in yarn-client mode with unmanaged am (8 seconds, 78 milliseconds)
[info] - run Spark in yarn-client mode with different configurations, ensuring redaction (10 seconds, 102 milliseconds)
[info] - run Spark in yarn-cluster mode with different configurations, ensuring redaction (10 seconds, 96 milliseconds)
[info] - yarn-cluster should respect conf overrides in SparkHadoopUtil (SPARK-16414, SPARK-23630) (9 seconds, 116 milliseconds)
[info] - SPARK-35672: run Spark in yarn-client mode with additional jar using URI scheme 'local' (10 seconds, 111 milliseconds)
[info] - SPARK-35672: run Spark in yarn-cluster mode with additional jar using URI scheme 'local' (9 seconds, 96 milliseconds)
[info] - SPARK-35672: run Spark in yarn-client mode with additional jar using URI scheme 'local' and gateway-replacement path (8 seconds, 79 milliseconds)
[info] - SPARK-35672: run Spark in yarn-cluster mode with additional jar using URI scheme 'local' and gateway-replacement path (9 seconds, 90 milliseconds)
[info] - SPARK-35672: run Spark in yarn-cluster mode with additional jar using URI scheme 'local' and gateway-replacement path containing an environment variable (9 seconds, 100 milliseconds)
...

I manually test with mvn locally, and there will be UT failed:
YarnClusterSuite:
- run Spark in yarn-client mode
- run Spark in yarn-cluster mode
- run Spark in yarn-client mode with unmanaged am
- run Spark in yarn-client mode with different configurations, ensuring redaction
- run Spark in yarn-cluster mode with different configurations, ensuring redaction
- yarn-cluster should respect conf overrides in SparkHadoopUtil (SPARK-16414, SPARK-23630)
- SPARK-35672: run Spark in yarn-client mode with additional jar using URI scheme 'local'
- SPARK-35672: run Spark in yarn-cluster mode with additional jar using URI scheme 'local'
- SPARK-35672: run Spark in yarn-client mode with additional jar using URI scheme 'local' and gateway-replacement path
- SPARK-35672: run Spark in yarn-cluster mode with additional jar using URI scheme 'local' and gateway-replacement path
- SPARK-35672: run Spark in yarn-cluster mode with additional jar using URI scheme 'local' and gateway-replacement path containing an environment variable
- SPARK-35672: run Spark in yarn-client mode with additional jar using URI scheme 'file'
- SPARK-35672: run Spark in yarn-cluster mode with additional jar using URI scheme 'file'
- run Spark in yarn-cluster mode unsuccessfully
- run Spark in yarn-cluster mode failure after sc initialized
- run Python application in yarn-client mode *** FAILED ***
  LOST did not equal FINISHED SLF4J: Class path contains multiple SLF4J bindings.
  SLF4J: Found binding in [jar:file:/Users/xxx/spark-source/assembly/target/scala-2.12/jars/log4j-slf4j-impl-2.17.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
  SLF4J: Found binding in [jar:file:/Users/xxx/.m2/repository/org/apache/logging/log4j/log4j-slf4j-impl/2.17.1/log4j-slf4j-impl-2.17.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
  SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
  SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory] (BaseYarnClusterSuite.scala:233)

Oh...

Ya, your failed test case is already passed in the original GitHub Action run. Maybe you might hit some flaky test case failure which is still in this module.

Thanks for helping to verify this @LuciferYang @dongjoon-hyun ! yea it seems a bit flaky. I tried to look into the YARN logs locally but couldn't find anything interesting. Let me try to re-trigger the GitHub workflow.

Sure @dongjoon-hyun . Just re-triggered the jobs.

I believe this is almost one. Could you review this once more, @viirya , @srowen , @HyukjinKwon , @AngersZhuuuu , @LuciferYang ?

To @sunchao . It seems that it's not re-triggered yet. You may want to add an empty commit.

Re-triggered via empty commit. I did it manually by clicking the "Re-run all jobs" button which wasn't reflected here somehow.

@srowen , do you have any other concerns? Or, the last issue (LICENSE) is resolved and we are good to go?

Thank you, @sunchao , @srowen , @HyukjinKwon , @LuciferYang , @AngersZhuuuu .
Merged to master for Apache Spark 3.3.
Also, cc @MaxGekk since he is the release manager for Apache Spark 3.3.


Display multiple notifications

I want to merge this change because...
fixes #200
Screenshots

Pull Request Checklist

[x] All visible strings are translated with proper context.
[x] All data-formatting is locale-aware (dates, numbers, and so on).
[x] The changes are tested.
[x] The code is documented (docstrings, project documentation).
[x] Changes are mentioned in the changelog.

Please check which stuff is resolved from the comments.


Failure Modes

PATCH without content-length which writes more or less data than upload-offset + upload-length?
Race when two clients send PATCH to same resource with matching upload-offset?
Incompatible or missing rus-resumable header in request?
Invalid content-type header in request?
Invalid content-length header in request?
Invalid defer-upload-length header in request?
Invalid upload-length header in request?
PATCH or POST does not have the correct content-type
content-length doesn't actually match transferred length

Will add more to the list...

You are correct in that both of these cases are currently not covered in the specification.

Race when two clients send PATCH to same resource with matching upload-offset?

As a good starting point you should always avoid having two or more clients uploading to the same upload to avoid conflicts. If you are concerned that this may be an issue for you, the server should implement a locking mechanism to prevent further PATCH requests from modifying the resource. The tusd server has such a feature embedded.

@Acconut: Added another one.

Incompatible or missing rus-resumable header in request?

Already defined:

If the the version specified by the Client is not supported by the Server, it MUST respond with the 412 Precondition Failed status and MUST include the Tus-Version header into the response. In addition, the Server MUST NOT process the request.

Invalid content-length header in request?
Invalid defer-upload-length header in request?
Invalid upload-length header in request?

There's a more general discussion in #79 which proposes stricter rules on how to react when invalid headers are presented. We probably should add a section about this.
Also, @ronag, please do not edit your original list but add a new comment. This will make it easier to follow.

Already defined:

The spec only defines If the the version specified by the Client is not supported by the Server. However, what if no version is specified, is that considered not supported?

What if PATCH or POST does not have the correct content-type?

However, what if no version is specified, is that considered not supported?

Yes, I think it is safe to consider these cases to be equal.

@Acconut: For 1. Would it be appropriate to update the size to match the new one or should it be a 4xx error?

@ronag For 1. Would it be appropriate to update the size to match the new one or should it be a 4xx error?

Once the upload length has been set, it must never be modified. If you want to append data, you can use the Concatenation extension.
tusd handles this case differently. It will only accept as much data as fits into the upload and then ignore the rest. If the client tries to upload the rest afterwards, tusd will return an errors as it is not allowed to upload to an finished upload.

How to handle an unused HTTP method doesn’t seem to covered by the spec - a 405 response seems sane.
Would there be value in distinguishing between methods unused in the spec and those not used because the prerequisite extension is not active? (Eg, DELETE is unused if the terminate extension is not enabled).
One use case for this could be when a extension is no longer used by a server as it would allow the client to differentiate between a client bug and a need to check the servers current extensions.

How to handle an unused HTTP method doesn’t seem to covered by the spec - a 405 response seems sane.

Yes, a 405 response would be the correct response here. However, I don't think we need to add this to the tus specification as this is already covered in the HTTP specification (as far as I know). Since tus builds upon HTTP, the HTTP spec applies for tus server and clients as well. What do you think?


[Doc] fix broken link in external table

Signed-off-by: amber-create<EMAIL_ADDRESS>Why I'm doing: a link to the "Iceberg" folder is invalid, as this folder no longer exists.
What I'm doing: remove that link.
Fixes #issue
What type of PR is this:

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

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

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

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

Bugfix cherry-pick branch check:

[ ] I have checked the version labels which the pr will be auto-backported to the target branch

[ ] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

@mergify backport branch-2.3 branch-2.5 branch-3.0 branch-3.1 branch-3.2


codeunit 12 "Gen. Jnl.-Post Line" - PostGLAcc event alteration request (#24335)

Describe the request
Hello, we would like to change the OnBeforePostGLAcc event at the beginning of the PostGLAcc procedure to include the Sender parameter with it. We need access to this to post additional entries and call additional code.
//Event Change begin
//[IntegrationEvent(false, false)]
[IntegrationEvent(true, false)]
//Event Change end
local procedure OnBeforePostGLAcc(GenJournalLine: Record "Gen. Journal Line"; var GLEntry: Record "G/L Entry"; var GLEntryNo: Integer; var IsHandled: Boolean; var TempGLEntryBuf: Record "G/L Entry" temporary)
begin
end;

Thank you.
Additional context
This was originally requested in #24335, but got lost in the mix somewhere.  If you could please add the Sender option please.  Thank you.
Internal work item: AB#498161

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 15815.


cocomac: Watch itconline.com

cocomac requests the watch of the watch_keyword itconline\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

itconline\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Ollie in Charcoal HQ


How to implement the delay strategy

How to implement the delay strategy, I want to wait for the end of the block, and then send the Action to the chain, I don’t know how to implement it, do you have any suggestions?

Blocks are atomic..? You can't wait for the end of a block.

Hi @greyireland,
I don't know how you want to extract more value when the block is already written in the blockchain. Maybe what you want to make is a Frontrunning and running a PGA?
https://cointelegraph.com/explained/what-is-front-running-in-crypto-and-nft-trading
If this is not what you meant can you please be more detalied on how you can be more profitable when a block is already written?

For example, if I want to do a sandwich strategy, I want to wait until the next block of 11s is about to come out, and send a big meaty package

https://medium.com/coinmonks/defi-sandwich-attack-explain-776f6f43b2fd

I extended the strategy trait with channel, which does not block the asynchronous process


Center widows

Based on this excellent PR https://github.com/flickr/justified-layout/pull/26 by @nioc, we've rolled the concenpt of centering widowed items on the final row into justified-layout. There's also more clear definition around alignment options for the widow row: left | justify | center

@alex-seville @jeremyruppel @jimwhimpey ^^

Coverage decreased (-9.9%) to 90.062% when pulling d8be0e4de9e46a000998d8e9a29161db9c1de8da on superic:center-widows into cf6238db38edd1826255df12a8016e1710773139 on flickr:master.

Shit. 90%. Brb.

I'm on board with the concenpt.
Tests!

Coverage decreased (-8.07%) to 91.925% when pulling 0e806b8e553275f832874aa05cfd586664e6c22b on superic:center-widows into cf6238db38edd1826255df12a8016e1710773139 on flickr:master.

Coverage remained the same at 100.0% when pulling 2978322dc9b837374de4464671232a5b88ff61c9 on superic:center-widows into cf6238db38edd1826255df12a8016e1710773139 on flickr:master.

Okay @alex-seville @jeremyruppel @jimwhimpey ... ?

👍

Coverage remained the same at 100.0% when pulling 9b8ccea6ae4bef599bd44fd0eb3370ad98a424fa on superic:center-widows into cf6238db38edd1826255df12a8016e1710773139 on flickr:master.

Coverage remained the same at 100.0% when pulling 9b8ccea6ae4bef599bd44fd0eb3370ad98a424fa on superic:center-widows into cf6238db38edd1826255df12a8016e1710773139 on flickr:master.

Ship it! 👍

Coverage remained the same at 100.0% when pulling 99661a8b11f821d1423d4e30e17684802b97f01e on superic:center-widows into cf6238db38edd1826255df12a8016e1710773139 on flickr:master.


add school that the email is @ksu.edu.bi

homepage-url: http://ksu.edu.bi/
academic-url: http://ksu.edu.bi/index3.html
I'm sorry I posted it to the wrong url, click this website certifies that @ksu.edu.bi is our official email address

@lovejj1994 I am sorry, the URL that you have mentioned as "wrong" is officially recognized URL of this school. I have to close this request without merging. Please apply with official document at "OFFICIAL DOCUMENT" tab at https://www.jetbrains.com/shop/eform/students.
Thank you for your understanding.

@lovejj1994 I am sorry, the URL that you have mentioned as "wrong" is officially recognized URL of this school. I have to close this request without merging. Please apply with official document at "OFFICIAL DOCUMENT" tab at https://www.jetbrains.com/shop/eform/students.
Thank you for your understanding.


Adding _workspace_id in feature store and bug fixes

Description

Adding _workspace_id in feature store
Fix response type for backfill
Get feature store without offline store information when connection is not found

If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-ai-ml


Consider toggle-article-read arguments in item view

as discussed in #1637
Hopefully me doing this will not create more work than necessary, the change is rather straightforward however.

Coverage decreased (-0.02%) to 58.989% when pulling 4a5e25fd7fcfa6d78b33cf7b2f6629125e8fd29d on ysh16:master into f570c8ac881304a9ac84faefcf0f651257fc306b on newsboat:master.


Added filter for empty/non-empty submissions in submissions table

Motivation and Context

In the submissions table, there's currently no easy way to select all empty/non-empty submissions. Though users can sort by submission time (and blank submission time indicates an empty submissions), if there are a lot then the user has to select them one at a time.
Your Changes

Description: Added a filter in the Submission Date column to select empty/non-empty submissions.
Type of change (select all that apply):

[x] New feature (non-breaking change which adds functionality)

Testing

Tested manually in the UI.
Questions and Comments (if applicable)

This doesn't take into account starter files and whether those have been changed or not.
I haven't updated the result filter modal either, so graders won't be able to automatically skip empty submissions.
(These are both possible future work)
Checklist

[x] I have performed a self-review of my own code.
[ ] I have verified that the pre-commit.ci checks have passed.
[ ] I have verified that the CI tests have passed.
[ ] I have reviewed the test coverage changes reported on Coveralls.
[x] I have updated the Changelog.md file.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 91.781%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
38063

Relevant Lines:
40907

💛  - Coveralls


[Angular2 Webpack]How to load a script in node_modules?

I need to load this in index.html:
<script src="node_modules/zone.js/dist/zone.js"></script>

But it says it's not found.  What is the right way to load it?

You can't just use import 'zone.js/dist/zone'; in your index.html?
If you really want this, you have to map the node_modules dir in your browsersync. The conf looks like: server.routes = {'/node_modules': 'node_modules'};.

I got it working importing 'zone.js/dist/zone' in index.ts


gate exponentiation with float should work

What is the expected enhancement?
Exponentiating a gate using ** should work with floats. It can just call gate.power. For example, it's surprising that the following code raises an error:
from qiskit.circuit.library import iSwapGate

gate = iSwapGate()
gate.power(0.5)
gate**0.5

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-3-9fc21b517202> in <module>
      3 gate = iSwapGate()
      4 gate.power(0.5)
----> 5 gate**0.5

TypeError: unsupported operand type(s) for ** or pow(): 'iSwapGate' and 'float'

HI @kevinsung,
In the above issue, you're trying to invoke ** or exponential function directly on the NumPy array. It doesn't matter even if you pass int, float or bigint it will throw an error.
for example, Below snippet is also throwing an error.

The reason behind that is, gate.power() function is not same as normal exponential **. Hence gate will not allow the combination using **.

Should this be closed?

This can be done by implementing the __pow__ magic method. Ints should be supported too.


Adding session videos using video URL

Actual Behaviour
Currently, If the video is not a youtube video, an external intent is passed which opens up the link on the browser app.
Expected Behaviour
A Web View should be used  instead so that a new app isn't opened and that the video can still play in the session details Activity.
Would you like to work on the issue?
Yes.
Target Milestone to solve the issue
Till which milestone will you be fixing the issue?
https://github.com/fossasia/open-event-android/milestone/32

@the-dagger @mariobehling  @niranjan94 @mananwason Shall I go ahead with this?

@mahikaw Please take a look at #1686
Using VideoView will require you to load the video from the stream first and then show, which I think is beyond the scope of the app. Secondly, the video URL will not necessarily be a stream URL, so you'll have to parse the URL, fetch information about it and apply complex logic to provide a basic solution -> let the pre-existing apps handle the Video Feed by Intent System

please close this issue @mahikaw

@iamareebjamal @arp95 If the link is not a youtube link, it passes an intent to a browser. I think we should insert a Web View instead.

I feel this could be of use https://developers.google.com/youtube/android/player/

If we use a web view, then user can not use other streaming apps he has installed like VLC or MX Player, we should not be substituting for browser IMO
@rohanagarwal94 I think this is beyond the scope of project to show YouTube videos
@the-dagger Please suggest

@iamareebjamal I think it still plays the video on the browser. Doesn't use apps like VLC or MX player, even when they are installed.

@iamareebjamal as far as the size is concerned it wont be much affected if we use proguard. Its there on the website. Besides we could include videos about the event with this in the feed itself too.

@mahikaw @iamareebjamal The current implementation is totally fine, adding a webview for streaming media content makes no sense to me.
This is an event app, not a media browser app in any sense.
Closing this issue.


[REVIEW] Add community guidelines

JOSS requires that there should be clear guidelines on how to contribute:

Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Community guidelines have now been added to the main README.md, please let me know if they need any further explanation or information!

@abhishektha Looks good to me.


remove unneeded bool_filter code

This boolean filter code should actually live in Gravity as the more generic add_filters already handles boolean filters within the Estella context and is tested here.
See artsy/gravity#10754

Coverage increased (+2.7%) to 98.837% when pulling 134b112aa4198a5c98a9c685fab7c211f672df09 on cavvia:dev into 78ebbca6f8580ceb8a9f5383ec5117812530fe4d on artsy:master.


Upgrade to imgui 0.8.0

Upgrades and requires imgui 0.8.0 that was just released

Updated this to be on the official 0.8.0 release of imgui


[AST] Fix test for Swift clang

9890adfbee8f854732d0093bc8b2a32be1be8844 changed the AST for
ObjCCompatibleAliasDecl to record the alias name as its column location
rather than the @compatibility_alias. Update a newly added AST dumping
test accordingly.

CC @compnerd @hyp

CC: @dexonsmith


MacOS: CLI executable is blocked by GateKeeper

Describe the bug
Running epinio on the command line results in the following GateKeeper error:

To Reproduce

download executable
chmod +x ./epnio-darwin-x86_64
./epnio-darwin-x86_64

Expected behavior
GateKeeper should still show a dialog, but identifying the developer and allowing to whitelist the command. Example (from Rancher Desktop):

Logs
None relevant
Cluster (please complete the following information):
Irrelevant
Desktop/CLI (please complete the following information):

OS: MacOS Monterey 12.2.1, Intel
Epinio Version: v0.5.2

Additional context
Recent MacOS versions require notarization of executables - without notarization GateKeeper will prevent execution as per the screenshot above.
Some possible alternatives to address the issue are:

to just notarize executables
as a workaround, at least document users are expected to create a GateKeeper exception to run the non-notarized executable. This can be done by:

attempting and failing to run the executable once
going to System Preferences -> Security immediately afterwards and clicking on "Allow Anyway" from the screen below:

release the binary via a package manager such as brew or macports

Rancher Desktop gets official SUSE signature
Would that be required for unblocking in that case ?

Epinio swiched to Goreleaser to manage the release process.
So we could easily configured it as describe here
The most difficult part is to identify which method to use between certificate,gpg, or cosign.
I guess we need a signing certificate.

HI @moio, we have recently added the latest epinio version to brew (https://github.com/Homebrew/homebrew-core/pull/97204) .
I've tried on my Macbook and I wasn't able to reproduce the problem. Could you give a try and see if that fixes the problem?
brew update
brew install epinio

We are also working on automating the releases. :slightly_smiling_face:


renderBlock returns nothing

renderBlock={(block, activity) =>
{block}
}

What are you trying to achieve?
The divs are rendered, but since the calendar is SVG based it is not expected that the <rect /> block elements are wrapped arbitrarily. In this case nothing will be visible, because the SVG will become invalid:

But you can for example add (valid) children to the blocks:
renderBlock={(block, activity) =>
  cloneElement(block, {
    children: <title>{activity.date}</title>,
  })
}

@grubersjoe I'm trying to add tooltip i tried your approach as well its not working 🙇🏼
renderBlock={(block, activity) =>
  cloneElement(block, {
    children: (
      <Tooltip content={`gm`} placement="top">
        {block}
      </Tooltip>
    )
  })
}

renderBlock={(block, activity) => (
          <Tooltip content={`gm`} placement="top">
            {block}
          </Tooltip>
        )}

this one also not working 🙇🏼

This is the tooltip component https://github.com/lensterxyz/lenster/blob/main/packages/ui/src/Tooltip.tsx
I followed the same as in example https://grubersjoe.github.io/react-activity-calendar/?path=/story/react-activity-calendar--with-tooltips
but it renders nothing 🙇🏼

Any ideas how to fix?

I'm facing a similar issue.
I'm wrapping block with Mantine's Tooltip, but hovering on it doesn't trigger the tooltip.

Any ideas how to fix?

Hey people. I haven't forgotten about this issue but I've realized from your comments that it seems pretty hard to support the whole variety of tooltip libraries since they're all implemented differently. I will try to come up with a better solution, but in general it seems difficult.
Maybe a "headless" approach would be best. Floating UI looks promising for example. react-tooltip also uses it since v5 internally.

Has anyone achieved this using the radix-ui tooltip?
It uses Floating UI under the hood IIRC.

Has anyone achieved this using the radix-ui tooltip? It uses Floating UI under the hood IIRC.

FYI it can work like this:
const CustomTooltip = ({ children, count, date }: { children: React.ReactNode; count: number; date: string }) => (
  <Tooltip.Root>
    <Tooltip.Trigger asChild>{children}</Tooltip.Trigger>
    <Tooltip.Portal>
      <Tooltip.Content sideOffset={10} side="top">

          your tooltip content

        <Tooltip.Arrow />
      </Tooltip.Content>
    </Tooltip.Portal>
  </Tooltip.Root>
)

Usage in ActivityCalendar
<TooltipProvider>
  <ActivityCalendar
    data={data}
    renderBlock={(block, activity) => (
      <CustomTooltip date={activity.date} count={activity.count}>
        {block}
      </CustomTooltip>
    )}
  />
</TooltipProvider>


[Feature] Add LLM examples using KubeRay

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
https://www.anyscale.com/blog/announcing-ray-2-4-0-infrastructure-for-llm-training-tuning-inference-and
Ray 2.4 release awesome support for LLM. We should write some examples to help user run these workloads easily on kuberay.
Use case
No response
Related issues
No response
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

/cc @varungup90


Redundant service registration-Auto service versioning.

What happens if we register multiple times the same service name with different schema?
(currently seems the latest registered schema wins)
Would it be usefull to have the hash of the loaded schema reported for each service?
Is it safe to register services on the fly (without stoping restarting the broker)?
In examples/user.service.js there is a flag latestVersion: true. Any plans to use semantic versioning in order
to implicitly peek a service version (like stable or latest) as default?

Currently the Moleculer is not ready to register a service multiple times on a node. The version of service is implemented. In this case the version will be prefix in action names. E.g. v1.users.list, v2.users.list...etc
You can't register services after broker started, because it won't publish them to the other nodes.
But I plan I will implement a hot-plug mode. It will able to handle the "on the fly" registering and you will able to use it to re-register a service if it changed (hot-reload in development).

Thanks for the repply.
What I like the most in this project is that you try to keep things minimal (Keep It Simple Stupid principle)
FYI  I have developed a similar platform where you submit code for execution on the fly dynamically (function blocks which get evaluated using eval on first execution and then cached).  A key feature is that calls to other functions get yielded allowing to  serialize async code execution like this
function sampleEval Fun(ctx){

     var x1= AWAIT ctx.call('getNumber1'); /*async call which returns a number */

    var x2= AWAIT ctx.call('getNumber2'); /*similar*/

     return x1+x2;
}

so when functions return there are no pendind operations  (https://www.promisejs.org/generators/)

In the new release you can register/unregister services after broker started. https://github.com/ice-services/moleculer/releases/tag/v0.9.0


NullPointerException upon moving to 4.7.6 from 4.7.5

I am getting a NullPointerException apparently from within picocli code when attempting to upgrade to 4.7.6 from 4.7.5 (where the app works AOK).
I get
NullPointerException: Cannot invoke "java.lang.ClassLoader.getResource(String)" because the return value of "java.lang.Class.getClassLoader()" is null while processing argument at or before arg[2] 'foo' in [dumpSchema, -o, foo]: java.lang.NullPointerException: Cannot invoke "java.lang.ClassLoader.getResource(String)" because the return value of "java.lang.Class.getClassLoader()" is null

The related annotations are:
  @CommandLine.Command(name = "dumpSchema", separator = " ", description="...",
                       mixinStandardHelpOptions = true, versionProvider = Main.VersionProvider.class,
                       defaultValueProvider = PropertiesDefaultProvider.class)
  // used from main() via picocli annotations
  private static void dumpSchema(
    @CommandLine.Option(names = "-o", paramLabel="<outputFile>", required = false,
                        description = "...")
    @Nullable Path outputFile)

Setting -Dpicocli.trace, I get loads of INFO messages along these lines.  All without any further stack traces or the like, unfortunately.
With 4.7.5 I get no such messages.
In case it matters this is for an application wrapped up as a single jar and being invoked via java -jar (and built via the com.github.johnrengelman.shadow Gradle plugin).

Thank you for raising this.
Class.getClassLoader() returning null is puzzling, to say the least, but the fact that you don't see this with picocli 4.7.5 suggests that it is related to a recent change.
This may be difficult to investigate without a way to reproduce the issue. Is your application in a public repo somewhere?


[bug] createComponent singleRoot check should not be true when it has v-for

Given this
<Comp v-for="i in 10000" />

Current codegen (the 4th argument true indicates a child component that is also the root of the parent):
return ((_ctx) => {
  const n0 = _createFor(() => (10000), (_ctx0) => {
    const n2 = _createComponent(Comp, null, null, true)
    return n2
  })
  return n0
})()

Expected:
return ((_ctx) => {
  const n0 = _createFor(() => (10000), (_ctx0) => {
-   const n2 = _createComponent(Comp, null, null, true)
+   const n2 = _createComponent(Comp)
    return n2
  })
  return n0
})()

Has it been fixed?


Extra line in code sample

In sample
…

// State should be doors closed, water level low:
Console.WriteLine(canalGate); // <----- likely originates here

…

canalGate.SetLowGate(open: false);
Console.WriteLine($"Close the lower gate:  {canalGate}");
// <----- No Console.WriteLine

canalGate.SetWaterLevel(WaterLevel.High);
Console.WriteLine($"Raise the water level: {canalGate}");
Console.WriteLine(canalGate); // <----- here is extra

canalGate.SetHighGate(open: true);
Console.WriteLine($"Open the higher gate:  {canalGate}");
// <----- No Console.WriteLine

…

there is 1 extra Console.WriteLine(canalGate); line.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: afb14275-1810-ff4d-783f-733e8ea3d858
Version Independent ID: 071e85e4-6fc9-8aff-bbf5-778d5e499f88
Content: Use patterns in objects - C# tutorial
Content Source: docs/csharp/whats-new/tutorials/patterns-objects.md
Product: dotnet-csharp
Technology: csharp-whats-new
GitHub Login: @BillWagner
Microsoft Alias: wiwagn

Thanks for noting this @Uzivatel919
I've added this to our backlog to address, and added the "up for grabs" label if anyone wants to submit a fix for it.


[Docs] Inherited props are not documented

Many components uses EnhancedButton and hence support onTouchTap() attribute (by passing through {...others})
onTouchTap() is crucial to handling click/tap for buttons, however this was not documented in:

Flat Button
Raised Button
Floating Action Button
Icon Button

Same with:

DatePicker

Is this intentional?

Alas, I've just found out that onTouchTap() was provided by zilverline/react-tap-event-plugin.
But now with the move to include it internally (#3079), we should update the doc to state that onTouchTap() is available on all components.

@leesei Yeah honestly I can't think of a good reason why it isn't already documented. It's even documented in other components. Even though we're investigating including it in #3068 and #3079, the react-tap-event-plugin is a prerequisite for material-ui. Feel free to open up a PR to add the prop for us! :smile:
Thanks!

It's because it's one of the props that are forwarded. We really have to document those props that are passed down with {...other}! something like: inherited props.

Oh, you mean to passed to <EnhancedButton />. I see. Yeah I wonder what the best approach to documenting that is. That would be useful information in general.

I would like to know if it is desirable to hide EnhancedButton from the user?
If so we have to copy and paste those interited props to every button.
Otherwise it is better to add EnhancedButton to the doc and specify its props, and refer to it in the users' doc.

@leesei That also works, except that some of the props are intercepted. so not all props are passed down, and not all props are inherited from EnhancedButton. This needs a lots of thought. I have no idea how we can achieve this :sweat_smile: :sweat_smile:

Then it's better to manually trace the props for each class and document what props will eventually be handled.
That's indeed a daunting task.

@leesei That can also work, but exposing internal components scares me O.o Although it might not be a bad idea to have an internal section for this purpose and tell users not to directly use these components O.o
@oliviertassinari @newoga @mbrookes I would like to hear your insight on this too. thanks ^_^

My philosophy too is to hide implementation details. Library users have a tendency to abuse them if there is an easy way to get that info.

True that :sweat_smile: :sweat_smile:

There's a related issue: https://github.com/callemall/material-ui/issues/2940
I don't know the right answer - @alitaheri hit the nail on the head: https://github.com/callemall/material-ui/issues/3172#issuecomment-179748741
So just exposing EnhancedButton in the docs doesn't solve the problem.

If so we have to copy and paste those interited props to every button.

I feel like this is our best option. We should only document our public API, we can't predict how propertyies will be passed down to internal components.

There's a related issue: #2940

That's a really interesting problem. The Date Picker, is special. We are not only exposing DatePicker but also DatePickerDialog. People can built their own DatePicker with this second one component. Same here, I think that we should add the default value of properties to the DatePicker component.

I think what @oliviertassinari is proposing is our best option :+1: :+1:

So also related to #2973 which must be done manually. @heetvachhani has started on that one.
I feel an umbrella issue coming on. :smile:

Include EnhnacedButton containerElement in this. #850 / #2982.

@mbrookes : Have we reached an understanding about not exposing the internal components in the docs?  Can we close this?

We do still need to document inherited props, but it's a manual effort, and hasn't been tackled yet.
We also sort of have the opposite problem, in that we document some event props that bubble up from underlying components / elements, for example onKeyboardFocus, onMouseEnter, onMouseLeave etc.
We typically only document the ones we have intercepted (e.g. to set style related state), and passed up, so the list of props documented on any particular component varies, even though the full list of DOM events should be available.
For Chip, I moved those event prop descriptions out of the main list of properties, into 'Additional properties), so that the main list is less cluttered, with a view to doing the same for other components.
However I'm now wondering if we should be documenting those props at all (it's DOM documentation not MUI documentation), or if so, whether we should just document the most useful ones in one place, and link to that from the props docs.
This would reduce the clutter and repetition across the component prop docs.

It's DOM documentation, not MUI documentation

You raised a good point! I like this idea. What's the point of documenting standard DOM properties?
Regarding the most useful DOM properties, I see three of them:

onClick
style
className
I like the idea of not documenting them at all. Still having them working and tested. We could remove them from the docs site and keep them from the PropTypes if we override them.

It's DOM documentation, not MUI documentation

While the DOM properties fall through to an underlying element much of the time, components don't always apply ...other to the underlying element, and some properties are overridden and not merged with any passed properties at all.  The only way to know for sure is to look at the source code.
Personally, I would prefer that all relevant DOM properties get documented on each component, not just the ones that are intercepted.  Maybe it should be in an "inherited properties" section of the documentation, but showing that a FlatButton or a StepButton takes both onClick and onTouchTap should be part of the documentation.  If there's a reason to not have onClick in the list, than leave it off, but right now they have neither.

The only way to know for sure is to look at the source code.

Obviously if there are inconsistencies, they would either need to be fixed, or, if intentional, documented.

I would prefer that all relevant DOM properties get documented on each component

That would be one crazy big list, you wouldn't be able to see the wood for the trees. (Type window.HTMLDivElement.prototype in your browser console if you're curious.)

IconMenu value prop not documented.

As a total newbie with material-ui (literally day one) I've hit this.
My newbie goal was to create an AppBar with a couple of links in, as a simple test of how easy the components are to work with. Things that surprised me:

The documentation for FlatButton doesn't mention tap or click handlers, either in the Properties list or the prose or the examples. onClick and onTouchTap are mentioned in the installation section, but the main components doc is reference material so should be exhaustive, even if it just refers to another page for inherited props.
FlatButton includes an href property, but most SPAs use something like react-router, which has a Link element for linking to app routes. How do I use FlatButton with Link? It's not mentioned, which is a shame for such a common use case. From issue #850 it seems there's an undocumented containerElement property I can use for this. As it's undocumented, I can't tell if it's considered private and thus dangerous to use.
Slightly off-topic, but AppBar seems pretty limited. I'd like to see some advice on how to implement common use cases like "more than one button on the bar". Right now I've got something working by placing a div inside iconElementRight that contains some FlatButton elements with manual style overrides (colour, positioning). I'm unsure whether this is recommended or discouraged. When I think about implementing an app bar such as the one on materialup.com, I wonder whether I'd be better off growing my own component using flex, or trying to persuade/coerce/subvert AppBar to do it.

Those are my day one observations: I hope they're useful. Thanks!

Why is this closed? Many props that DatePicker can take are not documented still.

This was opened over a year ago, what is holding up documenting your APIs?

@abramz This is an open source project. If you want to help, ask for guidance and get stuck in.
Here's the umbrella issue: https://github.com/callemall/material-ui/issues/3191
Incidentally, core team focus has move to the next branch.

@leesei  In fact, ListItem also.

Any chance the TypeScript definitions could be updated to reflect all this as well?

@atrauzzi As far as I know, they already are on v1-beta.

As I mention in the other ticket, I'm not sure that's of any help until it's out of beta.  For those of us using 0.x, we're stuck with a false error that won't go away.

Yah, it sucks but they have been clear they are not working on 0.x issues
because they trust themselves to fix everything single issue in 1.0 that is
brought up in the meantime...even though they close the issues.
On Sat, Dec 30, 2017, 9:44 PM Alexander Trauzzi<EMAIL_ADDRESS>wrote:

As I mention in the other ticket, I'm not sure that's of any help until
it's out of beta. For those of us using 0.x, we're stuck with a false
error that won't go away.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mui-org/material-ui/issues/3172#issuecomment-354586621,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AD4v2Yn7hERSonRR8QlMTP0-XNdQ1FVAks5tFx86gaJpZM4HTI1Q
.

@atrauzzi You're welcome to submit a PR.
@abramz there is no "they", it's just "us", the MUI community. That includes you. If something isn't working for you, get stuck in and fix it.


how to deply eos at mutil host and each host can produce block???

Document has only Single Host Multi-Node (Private) Testnet, how to depley mutil host and each host can produce block??
thanks!!!

https://github.com/EOSIO/eos/wiki/Tutorial-Bios-Boot-Sequence


New package: VectorFitting v0.1.0

Registering package: VectorFitting
Repository: https://github.com/pedrohnv/VectorFitting.jl
Created by: @pedrohnv
Version: v0.1.0
Commit: d937f65d65d083172470bbfbd2f79a6479e6ee41
Reviewed by: @pedrohnv
Reference: https://github.com/pedrohnv/VectorFitting.jl/commit/d937f65d65d083172470bbfbd2f79a6479e6ee41#commitcomment-147507968
Description: Fast Relaxed Vector-Fitting algorithm in Julia

Hi, congrats on the registration!
For someone who is not in your field, VectorFitting sounds very generic and possibly useful in a lot of different situations. Judging by the papers you cite it seems to be the official name of the algorithm, but is there any way to add one word  or two to the package title?

RationalVectorFitting is perfectly fine! I thought it might be popular in your field, but for me with a machine learning background it smells like interpolation or linear regression for example

Closing in favor of #116531.


Can I send an extrinsic that I don't known sign key of it?

I'm trying to separate the process of construct an extrinsic and sent to chain according to https://github.com/scs/substrate-api-client/blob/master/src/examples/example_compose_extrinsic_offline.rs
What I want is to construct the extrinsic with account A, and send it by account B. I noticed that the nonce value here should be set by myself, and what else should I have to modify? I noticed the send_extrinsic method in API is using "author_submitAndWatchExtrinsic" substrate RPC interface, is it ok to send an extrinsic that is not signed by myself, or should I have to use another substrate RPC interface (such as "author_submitExtrinsic", I can't get the differences between these two RPC interfaces)?

There is no problem, we also do the same, i.e., construct the extrinsic with compose_extrinsic_offline and then send it afterwards. The send_extrinsic method does need the signer to be set. So you don't send it with another account, you just send it.

Thanks for the reply @clangenb , I have tested successfully. It seems like if I maintain the nonce myself, the nonce value must be started at 0, I started at 1 and it failed.


Let's discuss!

@Art
GitHub issues is a great way of discussing things.
The benefits include that you can tag things and that you can close messages so you don't see them anymore after their task is finished. And there's much more.
But the main thing is that it's a great place to have a public discussion. A place where people way after the fact can come in and see how people arrived at a decision.
And I say this, because I think it's very important if you're working on free open-source software to have all the decision-making process be open as well. There's no need for back room discussions here.
Everybody can and should be able to listen in.
This does mean that they are two forums. The first is the Google Group which is for friends and people who should be kept informed of our work. The second form is here in the GitHub issues and that is for development work, technical aspects and all the things that it takes to make this project work.
There are a number of interesting aspects about the issues pages. The first thing is that a lot can be done by email. The second thing is that a special running format called  Markdown is supported which allows you to have links and other things very easily. And you can go back and edit your posts at any time. But enough for now, I can help you learn all the other bits as time goes on.
What do you think?

@Art
Also note that it's usual to add people's names if you want them to comment. Also note that every message can have an emoji link to it. And this is good practice just to add one to indicate that you have read the message.

@theo-armour It's all good


Tests are failing

Issue Report
Tests are failing due to the modifications made during the migration to github.
Expected Behavior

We shouldn't have any tests failling
New tests should be added regarding the ResponsiveProvider

Actual Behavior

Most of the tests are failing
Tests for ResponsiveProvider are outdated

Steps to Reproduce the Issue
Run yarn test

I'll fix this.

Closed by #12


Package should be log-facility agnostic

Currently, the errors, when Error() is used, a log entry is generated. This is not what Error() is supposed to do.

Fixed by #15

Fixed by #15


Added the solution to check if a binary tree is a binary search tree in Java.

Fixes Issue #137
Description
Implemented the solution to check if a binary tree is a Binary Search Tree in Java.
Included algorithmic explanations, sample test cases as well as space and time complexities
This contribution is as a part of GSSOC'21.

@rudrakshi99 @tarun26091999 Kindly review this PR which I opened 4 days back and suggest required changes.

There was some issue with my local branch which caused some unnecessary commits.
Should I close this and open a new pull request ? @tarun26091999
I am sorry for the fault on my part.

There was some issue with my local branch which caused some unnecessary commits.
Should I close this and open a new pull request ? @tarun26091999
I am sorry for the fault on my part.

Hey, if you could merge your commits and delete extra files in this pr, plz do so else if you feel, its a bit complicated and messed up, you could always open a new pr and close this one :)

There was some issue with my local branch which caused some unnecessary commits.
Should I close this and open a new pull request ? @tarun26091999
I am sorry for the fault on my part.

Hey, if you could merge your commits and delete extra files in this pr, plz do so else if you feel, its a bit complicated and messed up, you could always open a new pr and close this one :)

Thanks @raksha009 . I really feel it has got messed up and would prefer opening a new PR.


required: false / prompt option

I have a ejs like this <%= locals['packageName'] || library %> and I'd like to in this case just pass in --library, any way to not require packageName?

not sure about this problem can you provide more detai?