Data availability

Motivation
We want to verify that the ledger (really account db) in our outer account is "available",
that is, people who have a vested interest in what's on the rollup are able to see what's on it even after an update by a third party.
Assume for simplicity that everyone must know everything. This isn't a hard constraint and can be relaxed,
but it makes it more complex to think about.
Assume that our DA layer is an unpermissioned "ledger", i.e., public bulletin board, anyone can post a batch of data to.
Our circuit must somehow verify that the Zeko ledger has been posted to the DA layer,
in such a way that given only the hash of the Zeko ledger and the full(-ish) DA layer content,
you should be able to recover the Zeko ledger itself, possibly along with the commands/actions/events used to build it.
We want the behaviour of the nodes operating the network for the DA layer to be as simple as possible.
The dumbest approach is to make the basic batch unit of the DA layer the commands.
Then you post the command to the DA layer, and prove that the commands that make
up your ledger are on the DA layer.
However, you can't recover the state from this efficiently,
unless you don't allow skipping commands.
The issue is that a user might post an invalid command (we can try to prevent this),
and then we either need a way to prove that the command is invalid,
or we don't, and skip it, but then we can't know what commands have been skipped
and thus can't rebuild the state efficiently.
For N commands in the DA layer you would have to try 2^N combinations naively.
We want a simple protocol for the DA network, i.e. the network of nodes that make up the DA layer.
We can require that the DA layer only accepts valid commands, but this makes it much more complicated,
and isn't a possibly on e.g. Celestia now AFAIK.
We want to use an unpermissioned extremely simple DA layer in such a way that
Zeko can run on top of it.
However, we can try another approach:
The basic batch unit could be made a list of account states that have changed,
along with a link to the predecessor ledger state (which should also be in the DA layer).
In our circuit we then check that there is a batch on the DA layer
such that the batch's output ledger matches the ledger hash we are committing to.
Then as an end-user, to recover the state we start from the beginning of the DA layer,
and build up a tree of ledger hashes and corresponding ledgers,
until we find the ledger hash we're looking for, at which point we terminate,
returning the ledger we recovered for it.
Any invalid batch is discarded and ignored.
The crux of the trick is that we denote what comes after what explicitly,
heavily reducing the combinatorial explosion of possible paths when parsing the DA layer.
Expansion
You can expand upon this model in multiple ways.
The L1 (outer) account could point to not just a ledger hash,
but also the location of the ledger, i.e. where on the DA it is.
Thus, rather than scanning forward, you could scan backwards,
starting from the most recent update to the ledger.
You would also have to make the predecessors location-addressed
rather than content-addressed, i.e. the location on the DA layer
rather than hash of predecessor.
You could allow for multiple predecessors such that multiple people
can cooperate. This, however, requires that the predecessors do not conflict.
We might also want more than just the content of the ledger, we might want the history.
Perhaps we want the actions associated with an account.
We can trivially extend the above model and include along with the ledger changes
the actions posted to each account.
The circuit must then take care to verify that the action state hash matches
the posted actions.
We can go a step further and include the whole command history for all accounts too,
by posting the full command(s) for the ledger update,
and have the circuit verify the receipt chain hash.
Given an L1 (outer) account with some ledger hash, since we know the ledger hash is valid,
we can deduce that all commands included on the DA layer in its history are also
necessarily valid, since with each ledger there is a unique history of commands.
The receipt chain hash enforces this.
However, what if we want to support changes that do not have an associated command?
For example, we might update (or fork) the ledger, and force some change (e.g. change vk,
balance). This still works perfectly in this model. The receipt chain hash is still valid
and enforces that all commands in the history are both valid and the canonical ones
that were used to create the ledger, but you do not know what order forced changes happened
in if you had multiple in a row.
Implementation
How do we implement this in practice then?
There are roughly three options for this approach:

Multisig
Celestia-style DA
Espresso-style DA
Mina events

Multisig
Public bulletin board
Consider a protocol where the multisig participants operate a very simple protocol.
They hold a shared ledger, and sign the hash of data appended to it.
This is enough for the above protocol, since all it needs is a public bulletin board.
In practice, our circuit would verify that the transactions to commit are included in the DA,
along with all their predecessors.
We have some inherent recursion then. We need the "DA proofs" for the previous commits to be efficient.
In a single-sequencer case, this is trivial.
In a multi-sequencer case, the sequencers might be non-cooperative.
We can accept as DA proof the proof for the previous commit (i.e. proof for the account update),
or perhaps even the blockchain/transaction snark for it if it is available.
Pushing circuit logic into DA network
Rather than proving facts about what the DA has signed,
we can instead make the DA sign the ledger hashes directly.
Regardless of what the DA layer signs, we can not commit to an invalid ledger.
The DA layer can lie about the structure of what they're signing, but it doesn't
give them any extra power.
At the end of the day, the only thing they can do is withhold the data in the DA
or prevent the rollup from progressing, neither of which are affected by proving
the internal structure of what the DAC signs.
Hence we can make the DAC simply sign the ledger hash.
Is there any point to the above protocol then?
Yes, it is still quite simple as the DAC would only need the ability
to apply commands. It does not need to verify any proofs, or know the state of the L1.
You can imagine other protocols where they need to know the state of the L1 that
reduce the amount of data the DAC stores, and there is a trade-off between efficiency and simplicity.
Celestia (non-sharded shared unpermissioned ledger)
This is very similar to the public bulleting board multisig case,
since that is essentially what Celestia is, but with a very big and dynamic multisig.
Instead of a simple multisig verification, the circuit would verify a Groth16 proof
of Celestia consensus however.
But care must be taken wrt. accidentally "rolling back" to invalid dishonest forks
in case of leakage of old private keys.
Instead of having a signature for each batch of data posted to the DA,
we instead have a Merkle tree of all of it.
This increases the complexity by a minor amount.
We can optimize and share the Merkle tree opening in case we need to prove
existence of multiple batches too.
Espresso-style (sharded possibly unshared unpermissioned ledger)
Operating a public bulletin board in a sharded manner is possible and there is much literature on this matter.
Consider e.g. Danksharding, this is fundamentally very similar to what we want.
In some sense the only difference between this and Celestia is that,
while both are "blockchains", unpermissioned public ledgers,
this approach has a much bigger multisig than Celestia,
made possible by reducing the amount of data that needs to be sent to each party via error checking codes
(e.g. polynomial sharding).
In the end this is what we want, but it might be the case that Celestia implements it.
Celestia has the benefit that it's shared with other networks, meaning that it's "more secure",
but also possibly slower since there are more participants.
However, the security argument isn't perfect. Consider the case where the value (in terms of e.g. Ether)
stored on all the rollups on Celestia is considerably more than the value of the Celestia market cap.
Rational Celestia nodes would be inclined to disrupt the protocol on purpose and hold the rollups ransom.
To cover this case, we probably want the ability to roll back in case a commit with a valid DA proof is posted
but later found to be malicious.
This doesn't work if the DA layer is Zeko specific and is controlled by the same token though obviously.
Mina events/actions (native L1 DA)
This option is attractive since if consensus is tied to DA, you can possibly cause rollbacks if DA fails,
protecting the rollup from DA failures.
OTOH, you're now restricted by what the L1 offers.
We would again use events like a public bulletin-board the same way we would with Celestia,
in a black box manner.
Preconditions give us a "merkle tree" of everything posted.
That's it.
Unfortunately, currently the throughput for events/actions on Mina is quite low AFAIU, meaning that it isn't a realistic option for now.
In the future you could imagine a change to Mina such that events are shared à la how blobs on Ethereum will (?) be.

I updated issue contents

Instead of having a signature for each batch of data posted to the DA,
we instead have a Merkle tree of all of it.
This increases the complexity by a minor amount.

Complexity might not be an issue, but checking merkle proof of sha256 for each transaction will be a major bottleneck.

We should not forget about the native DA solution of Mina with events. I'm convinced that this should be the way to go. Not only for us, but for everyone using Mina.

indeed, completely agree with DA part. I have communicated this to O1/MF as much as possible, but it isn't realistic in the short term. I should have included it above though.
Wrt. merkle proof checking, I confirmed, and it should be no issue since if you post a single blob of all the transactions you want to commit, they will be split up and put into a merkle tree (leaf size = 512 bytes) such that all the "shares" are adjacent, ergo you can reuse most of the merkle path. It's 2N sha256 hashes for N shares apparently. I don't know how many hashes we can do per circuit but this doesn't seem too bad.

Added some (very, given that it's trivial) short comments about native DA.

In the future you could imagine a change to Mina such that events are shared à la how blobs on Ethereum will (?) be.

AFAIU they are currently shared the same way, why can't we have the same throughput?
I think that just being able to pay for more than 100 events should be already usable DA layer. Later we can think of adding DA sampling for light clients and whatnot, but it should be done in iterative way, same as on ethereum.

will not is. Indeed, we should at the very least try it.
FWIW now that I think about it alternative designs might be better in this case since you could accept only sequenced commands as events, the dumbest way you can think of, like all zkapps do by default.
I’ll try to implement it if it’s easy enough and we can see how it goes.

#149 we already have this issue btw

You can do paying for more by splitting it across more commands.

You can do paying for more by splitting it across more commands.

I think you would run into txn block limit as throughput isn't high enough. But if not, maybe it's worth trying.

One thing to consider wrt. content-addressing vs location-addressing is that the former is trivially compatible with using multiple DA layers at the same time. In the latter setting the location might be different depending on the DA layer, which is an issue if you do a product instead of a sum of DA layers. (For a sum, it would be, the batch is accepted if it is in either layer, for a product, it is accepted if it is in both layers. Of course you could make the location a pair of the locations for each DA layer, but this is more complicated vs simple content-addressing)

We can accept as DA proof the proof for the previous commit (i.e. proof for the account update),
or perhaps even the blockchain/transaction snark for it if it is available.

I don't understand this part, can you elaborate more on what the DA proof is in this case?

Regarding Multisig, do we actually need the shared ledger and consensus at all? Can the DA validator be just a service that stores and signs the batches and sequencer asks each to do so? It would tremendously simplify the architecture.

We don't, each "node" can be its own "DA layer", and we can compose them as I write in https://github.com/zeko-labs/zeko/issues/12#issuecomment-2209604020


Ready For Review

React-based decentralized application (dApp) that interacts with a smart contract on the Stellar blockchain. It allows users to manage and update their "Soroban Vitae" (CV) by submitting personal information such as name, email, skills, experience, and education.

Create smart contract and test
Added auth for smart contract, create new test and update cargo
Modify UI in Deapp and connect with smart contact
Update README.md
Merge pull request
Deploy and fixed cargo cv
Functional UI and Auth for smart contracts
Fixed adress for read the last soroban vitae
Update README.md
Merge pull request
Merge pull request
Added cv typed, fixed error in vercel
Merge pull request

Vercel preview: https://create-soroban-dapp-git-fork-jorgeoehrens-feat-43a886-paltalabs.vercel.app/

The frontend could be enhanced by re-fetching the user's data after each contract method is executed. Additionally, there are too many transactions being signed; this could be consolidated into a single transaction. The init method is unnecessary for this contract and should be removed.
Furthermore, the instructions specified the addition of a whitelist to restrict access to the set_title method, ensuring only authorized users could invoke it. While the smart contract developed here is a good concept, it doesn't fully align with the requirements we outlined.


[stable/oauth2-proxy] add undocumented ingress.{path,annotations,hosts,tls} to README

@miouge1
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

Is it appropriate to bump the chart version for doc only fixes?

eh, ok, it looks like CI fails without a chart version bump even on the README...

/ok-to-test

ping

I've incremented the version dump to 0.12.3 and repushed.

@Miouge1 Ugh, this PR needs the lgtm label again...

/lgtm


The Big_Ol_Pile_Of_Manim_Imports.py and the Minimum tutorials seem to have gotten up and disappeared from the repository

If this is a support request:
Please attempt to solve the problem on your own before opening an issue.
Between old issues, StackOverflow, and Google, you should be able to find
solutions to most of the common problems.
Include at least:

Steps to reproduce the issue (e.g. the command you ran)
The unexpected behavior that occurred (e.g. error messages or screenshots)
The environment (e.g. operating system and version of manim)

If this is a feature request:
Include the motivation for making this change.

You can use from manimlib.imports import * instead of that.
Because big_ol_pile_of_manim_imports.pyonly exist in the old version, andmanimlib/imports.pyhas the same effect.


Concept: After ability roll special messages

This is a proof of concept for how we can accommodate the following effects:

Argent Flight "Raid Formation": Anti-fighter barrage hits in excess of available targets will damage ships with SUSTAIN DAMAGE
Argent Flight "Strike Wing Alpha II": Anti-Fighter Barrage rolls of 9 or 10 each destroy 1x infantry in the space area
University of Jol-Nar Commander "Ta Vern": You may reroll dice for non-combat abilities

Design note: For the automatic tool, reroll all misses. In practice, this may not be desired.

This works by passing additional parameters to the multiroller, which it uses to reroll some dice, and also generate additional lines of text for the report. This is a really basic proof of concept because I can imagine this whole approach being too poor to pursue.
But, if we do choose to use this method we'll need to make further adjustments (beyond polish of code and report messages). The Raid Formation ability counts available targets separately for each ability...this breaks with the Nomad promissory note and any Franken setup with multiple unit types having Anti-Fighter Barrage abilities in the space area.
Possible alternatives: The AutoFill Multiroller Tool can poll for roll results (perhaps using a request ID), and then do needed processing for extra abilities. But this would make reporting very tricky, when we'll be rerolling some of the multiroller's misses (which it would blindly report).

Let me know when you're ready for me to merge it.

Nice example of the combat report with The Cavalry, Jol-Nar's reroll effect, and extra dice from Argent Flight commander added to The Cavalry instead of the destroyer (choosing dynamically injected unit over actual plastic unit).

Merged to my base dev branch; will open PR to upstream repo.


Minor: improve the Deprecation / API health guidelines

Which issue does this PR close?

Related to https://github.com/apache/datafusion/issues/13648

Rationale for this change
While discussing https://github.com/apache/datafusion/issues/13037#issuecomment-2526291502 with @buraksenn I felt the API deprecation policy could be improved to provide more background and rationale
What changes are included in this PR?

Update deprecation / API health policy to be claerer

Are these changes tested?
CI
Are there any user-facing changes?
I my opinion, this PR does not change the policy, it simply makes the current policy clearer

I am merging this PR in and we can iterate / improve the wording more going forward

@alamb thanks for improving this!
can you PTAL https://github.com/apache/datafusion/pull/13701#discussion_r1877921868 ?

@alamb thanks for improving this! can you PTAL #13701 (comment) ?

Sorry about missing that @findepi. I made another PR to address it

https://github.com/apache/datafusion/pull/13701


Bootstrap state network with state data post block 21M

After initial investigation, we concluded that it would take 1200 days for single bridge to gossip the state snapshot for block 21M.
Even with some optimization and parallelization (requiring non-trivial engineering effort), just gossiping the data would take around 1 month.
Plan
To speed up to process, we came up with the following plan:

Spin up 16 (or 32) new machines

Each would generate NodeId, such that they are evenly distributed across domain space

Each machine would have 1TB (or 0.5TB) storage
Each machine would download era2 file corresponding to the block 21M, and initialize portal network database from it

depending on the machine hardware, we can decide if each machine would store entire snapshot in it's portal network database, or just part of it
we can decide to store smaller amount even if we have enough storage just in order to speed up the process

This approach saves us from gossiping 11.2 TB of data across network, only to end up storing ~400 GB worth of data (the remaining 10.8 TB of data are proofs that we don't store).
Downsides
We considered following downsides of this approach:
Wouldn't this create Big vs Small nodes problem (making content not easily discoverable)?
Considering the current size of the network (less than 100 nodes), we don't believe that this is such a big problem. Especially if we go with 32 nodes that are evenly distributed.
Plan is in the future to convert these nodes into "Large radius nodes" (see: ethereum/portal-network-specs/#283), which would completely eliminate this problem.
This content wouldn't be available on other portal network nodes
Couple of reasons why we don't see this as a big issue at the moment:
The state diffs since block 21M would still be gossiped via regular bridges, distributing them to all other nodes on the network. However, they are not enough in order to guarantee that we can execute transactions at the head of the chain (therefore we need snapshot from a block 21M).
We believe that most state data needed to execute transactions at the head of the chain comes from block diffs and not from the snapshot sync, meaning that other nodes will contain most of the useful data.
The capacity of current nodes on the network is not big enough to support this amount of data efficiently. If other clients want to bootstrap their infrastructure enough to contain this data, they can use similar approach as well.

The remaining question is whether to go with 16 or 32 nodes, and how big their storage should be.

Using 1TB storage would make process very simple

All of the following steps are already implemented:

restore trin-execution db from era2 file
extract portal network content key/values from trin-execution db, and write them into portal network db

1TB is probably enough to store entire snapshot in both formats

delete trin-execution db

Steps above would be possible with 0.5TB, but they would require some engineering work (we are talking about 1-2 weeks)

Using 1TB storage would mean that after this initialization phase, we would be left with a lot of unused storage for quite some time
Using 32 nodes would make them much more easily discoverable (e.g. during RecursiveFindContent)

It is important to note we can start with 16 nodes, and add 16 more nodes if we need them in the future.

Goal/Context for this issue
This PR doesn't include our goal/target for this which I think is important context.
We want to have all state available on the Portal State network from block 21 million to latest with a delay of 8-16 blocks by February 1st or so.
We have the code infrastructure to be able to run the Portal State Network with a block delay of 8-16 blocks, because we don't have the infrastructure to handle re-orgs yet, so we can't gossip at the tip of the chain until Trin-Execution has that implemented.
There are potentially a lot of unknowns and pitfalls, which can cause a lot of delays. We won't know until we did it and have it live. So getting this started early is important. So by getting this infrastructure deployed asap, we should hopefully be able to reach our goal of the Portal State Network having State live by February 1st ideally.
If we want to optimize code this can happen after Latest is live. Optimizations shouldn't block getting Portal State live, unless it is required to get Portal State live, which would be highly rare and unlikely.

For the Fluffy State Bridge I was thinking about implementing support for gossiping data into the network using multiple Fluffy instances and load balancing the offers across the instances in order to speed up the process. Our state bridge already supports concurrently gossiping multiple blocks at the same time but all through a single Fluffy instance over JSON-RPC. Since we are using the standard JSON-RPC portal_stateGossip endpoint we can easily spin up multiple portal nodes and then load balance the content through these instances. This should in theory dramatically speed up the gossip speed by effectively horizontally scaling the process.
Using this method the bottleneck would likely become the upload bandwidth limit but running inside AWS or another cloud provider you could get very fast uploads for a cost. For example the AWS egress costs for uploading 11TB is around $1000.
Just sharing as an alternative scaling idea. I'm not sure how well it will perform in practice, but if/when we implement it I'll share the results.


feat: add channel id field for Channel

feat: add channel id field for Channel
Fix: https://github.com/bestchains/fabric-operator/issues/189

@0xff-dev pls work with @dayuy on bc-console/bc-apis changes


Item Tooltip Not working

Just updated to V2.3 and now there is no tooltip dots showing up, worked before updating.

The images used to detect the tooltip have been changed in v2.3.
If you go to settings and update your preset it works again.

Mine is greyed out

You're awesome, thank you


Hello front end

In this Pull Request I:

[ ] Create a new React app called 'hello-react-front-end'
[ ] Create the App component with react-router.
[ ] Create the Greeting component that displays a greeting.
[ ] Create a store, an action and a reducer that connect to you API endpont to get the random greeting.
[ ] Display the random greeting in the Greeting component.
[ ] PR Link for Back-end

@KayLemba done, Thank you very much


Further detail on ray_intersection_loss , and ray_freespace_loss

Great work with the paper, it has been a pleasure to read and test the code. While I was perusing the code I wanted to better understand the loss functions that you used.
Specifically these ( Reference 7 in the paper and ray_intersection_loss , and ray_freespace_loss)

Coping the code below for further reference
def ray_intersection_loss(self,opt,var,level_eps=0.01):
        batch_size = len(var.idx)
        level_in = var.level_all[...,-1:] # [B,HW,1]
        weight = 1/(var.dt_input+1e-8) if opt.impl.importance else None
        if opt.impl.occup:
            loss = self.BCE_loss(level_in,var.mask_input,weight=weight)
        else:
            loss = self.L1_loss((level_in+level_eps).relu_(),weight=weight,mask=var.mask_input.bool()) \
                  +self.L1_loss((-level_in+level_eps).relu_(),weight=weight,mask=~var.mask_input.bool())
        return loss

    def ray_freespace_loss(self,opt,var,level_eps=0.01):
        level_out = var.level_all[...,:-1] # [B,HW,N-1]
        if opt.impl.occup:
            loss = self.BCE_loss(level_out,torch.tensor(0.,device=opt.device))
        else:
            loss = self.L1_loss((-level_out+level_eps).relu_())
        return loss

I am not able to fully understand the comparison with the formula in the paper,

why do you add 1e-8? is it supposed to be the epsilon, I thought it was the level_eps that one?
level_in and level_eps?

If you can expand on this topic it would be great
PS: why some shapes have that kind of wave function? Is it because of the eikonal? why did you use the MSE_loss there?
Thanks again for your help and availability in advance

Sorry for the confusion. The 1e-8 term in the denominator is for numerical stability (avoiding the problem of division by zero). It's common practice so it wasn't explicitly mentioned in the paper. The epsilon in the paper corresponds to level_eps.
level_in is the level set prediction of the last traced step (i.e. the last slice of var.level_all). Basically we want

for those rays that should be hitting the surface, make the level of the last step positive and the rest negative;
for those rays that should not be hitting the surface, the level values of all steps should be negative.

This is the same as

for the last step, the rays hitting the surface should be positive, otherwise negative. This is level_in
for the rest of the steps, everything should be negative. This is level_out

The wavy artifacts is believed to come from the positional encoding component, please see more in #3.
The MSE loss for the eikonal term is just something that tries to bring the gradient norm to 1. I guess other loss functions would serve similar purposes, but MSE loss is usually the default choice unless there are specific reasons not to use it.
Hope these help!

Thanks for the quick and kind reply,
Yes, it confirmed my assumptions, as mention in Siren.
"Further, we show how Sirens can be leveraged to solve challenging boundary value problems, such as particular Eikonal equations (yielding signed distance functions), the Poisson equation, and the Helmholtz and wave equations. Lastly, we combine Sirens with hypernetworks to learn priors over the space of Siren functions."
Thank you so much for pointing to that discussion.
Regarding the MSE I am confused since usually it brings the value to 0. Am I wrong?!

It's basically supervising the prediction with the value 1 using MSE. Please see Equation 10 in the paper and also https://github.com/chenhsuanlin/signed-distance-SRN/blob/main/model/sdf_srn.py#L200 🙂

Thank you for confirming my assumptions, much appreciated.


Chrysler Pacifica Fingerprint

Please provide the dongleID (found in settings on your device) that this was taken from

My Dongle ID: 8a84e5027e568485
Wizard Worxx
Where the magic of software begins.
Robert Tauber
(780) 236-1542tel:(780) 236-1542
www.Facebook.com/WizardWorxx13http://www.Facebook.com/WizardWorxx13
From: @.>
Sent: Monday, May 17, 2021 6:34 PM
To: @.>
Cc: @.>; @.>
Subject: Re: [commaai/openpilot] Update values.py (#20935)
Please provide the dongleID (found in settings on your device) that this was taken from
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/commaai/openpilot/pull/20935#issuecomment-842734369, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFQGAEHPQ5L5VU2FW6AFF53TOGY23ANCNFSM45BNJNNQ.

Can you add the missing values to the existing Pacifica 2020 fingerprint instead of adding a second one?

Changes made and commited
Wizard Worxx
Where the magic of software begins.
Robert Tauber
(780) 236-1542tel:(780) 236-1542
www.Facebook.com/WizardWorxx13http://www.Facebook.com/WizardWorxx13
From: Willem @.>
Sent: Tuesday, May 18, 2021 2:45 AM
To: @.>
Cc: @.>; @.>
Subject: Re: [commaai/openpilot] Chrysler Pacifica Fingerprint (#20935)
Can you add the missing values to the existing Pacifica 2020 fingerprint instead of adding a second one?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/commaai/openpilot/pull/20935#issuecomment-842979824, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFQGAEETFUVC5NPPNM3VQK3TOISKVANCNFSM45BNJNNQ.

You just replaced the original fingerprint with your own, not combined them. Your cas has 352, 362, 516, 517, 524, 526, 536, 656, 776, 1543 as extra values. Please add those.

Sorry I will add in the other numbers now
Wizard Worxx
Where the magic of software begins.
Robert Tauber
(780) 236-1542tel:(780) 236-1542
www.Facebook.com/WizardWorxx13http://www.Facebook.com/WizardWorxx13
From: Willem @.>
Sent: Tuesday, May 18, 2021 9:20 AM
To: @.>
Cc: @.>; @.>
Subject: Re: [commaai/openpilot] Chrysler Pacifica Fingerprint (#20935)
You just replaced the original fingerprint with your own, not combined them. Your cas has 352, 362, 516, 517, 524, 526, 536, 656, 776, 1543 as extra values. Please add those.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/commaai/openpilot/pull/20935#issuecomment-843264237, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFQGAEA6IMDPCFNB33IYM73TOKATPANCNFSM45BNJNNQ.

Fixxed I hope
Wizard Worxx
Where the magic of software begins.
Robert Tauber
(780) 236-1542tel:(780) 236-1542
www.Facebook.com/WizardWorxx13http://www.Facebook.com/WizardWorxx13
From: Willem @.>
Sent: Tuesday, May 18, 2021 9:20 AM
To: @.>
Cc: @.>; @.>
Subject: Re: [commaai/openpilot] Chrysler Pacifica Fingerprint (#20935)
You just replaced the original fingerprint with your own, not combined them. Your cas has 352, 362, 516, 517, 524, 526, 536, 656, 776, 1543 as extra values. Please add those.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/commaai/openpilot/pull/20935#issuecomment-843264237, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFQGAEA6IMDPCFNB33IYM73TOKATPANCNFSM45BNJNNQ.

Several messages were removed. The new fingerprint should be a superset of the old one. Just add your new ones to the existing fingerprint.

That’s what I did on the final one. I think.
Wizard Worxx
Where the magic of software begins.
Robert Tauber
(780) 236-1542tel:(780) 236-1542
www.Facebook.com/WizardWorxx13http://www.Facebook.com/WizardWorxx13
From: Adeeb @.>
Sent: Tuesday, May 18, 2021 10:52 AM
To: @.>
Cc: @.>; @.>
Subject: Re: [commaai/openpilot] Chrysler Pacifica Fingerprint (#20935)
Several messages were removed. The new fingerprint should be a superset of the old one. Just add your new ones to the existing fingerprint.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/commaai/openpilot/pull/20935#issuecomment-843356411, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFQGAEBG3LGPFIC2FGL5DNDTOKLOPANCNFSM45BNJNNQ.

Just checked my branch again and for some reason the values were missing again. Just updated them again
Wizard Worxx
Where the magic of software begins.
Robert Tauber
(780) 236-1542tel:(780) 236-1542
www.Facebook.com/WizardWorxx13http://www.Facebook.com/WizardWorxx13
From: Adeeb @.>
Sent: Tuesday, May 18, 2021 10:52 AM
To: @.>
Cc: @.>; @.>
Subject: Re: [commaai/openpilot] Chrysler Pacifica Fingerprint (#20935)
Several messages were removed. The new fingerprint should be a superset of the old one. Just add your new ones to the existing fingerprint.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/commaai/openpilot/pull/20935#issuecomment-843356411, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFQGAEBG3LGPFIC2FGL5DNDTOKLOPANCNFSM45BNJNNQ.

847: 1 is still missing

Fixed.
Wizard Worxx
Where the magic of software begins.
Robert Tauber
(780) 236-1542tel:(780) 236-1542
www.Facebook.com/WizardWorxx13http://www.facebook.com/WizardWorxx13

From: Adeeb Shihadeh @.>
Sent: Tuesday, May 18, 2021 11:24:30 AM
To: commaai/openpilot @.>
Cc: TheWizard1328 @.>; Author @.>
Subject: Re: [commaai/openpilot] Chrysler Pacifica Fingerprint (#20935)
847: 1 is still missing
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/commaai/openpilot/pull/20935#issuecomment-843379208, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFQGAEANLOXGMC24URYKL43TOKPE5ANCNFSM45BNJNNQ.

This only adds one new message, but based on one of your routes, you'll need several messages added. Try starting over by getting the fingerprint from your current and adding it to the existing one, and ensure the combined one works on your car.

What do you mean.
What steps do I need to do to get these values. I have no idea what it is that you need me to get and where to put it. I only just started using my OP a few days ago and it has been a while since I’ve used C#, and Github and I have never till now used terminal in this way to access data from a device like this.
Please be patient with me I am a noob here for the most part.
Wizard Worxx
Where the magic of software begins.
Robert Tauber
(780) 236-1542tel:(780) 236-1542
www.Facebook.com/WizardWorxx13http://www.Facebook.com/WizardWorxx13
From: Adeeb @.>
Sent: Tuesday, May 18, 2021 11:37 AM
To: @.>
Cc: @.>; @.>
Subject: Re: [commaai/openpilot] Chrysler Pacifica Fingerprint (#20935)
This only adds one new message, but based on one of your routes, you'll need several messages added. Try starting over by getting the fingerprint from your current and adding it to the existing one, and ensure the combined one works on your car.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/commaai/openpilot/pull/20935#issuecomment-843389480, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFQGAEAYBTM6RQFG3IIGFG3TOKQWFANCNFSM45BNJNNQ.

I updated the PR with your missing values. Pull the branch on your device and ensure your car is correctly identified.

Did you confirm that this works?

It does been using it for a few days now.
Wizard Worxx
Where the magic of software begins.
Robert Tauber
(780) 236-1542tel:(780) 236-1542
www.Facebook.com/WizardWorxx13http://www.Facebook.com/WizardWorxx13
From: Adeeb @.>
Sent: Wednesday, May 19, 2021 9:00 PM
To: @.>
Cc: @.>; @.>
Subject: Re: [commaai/openpilot] Chrysler Pacifica Fingerprint (#20935)
If you can confirm this works, we can merge it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/commaai/openpilot/pull/20935#issuecomment-844646590, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFQGAEAGGQR7OIY3MJWVJNDTOR3LVANCNFSM45BNJNNQ.


Schema cannot be downloaded using "schema get -O schema.json 6001"

Using command schema get -O schema.json 6001
gives me error:
UnicodeEncodeError: 'charmap' codec can`t encode character '\u010c' in position 244: character maps to .
File is created, but empty.
System Windows 7, 64-bit, version 1.0.0., user<EMAIL_ADDRESS>

Hello @martinnedopil,
this is an issue with encoding on windows (in Python UTF-8 is used, while windows uses CP-1250). The simplest way how to overcome is to use a flag --ensure-ascii.
Then the schema should be downloaded correctly.
With regards
Krystof

Working properly.

It should work anyway even without the --ensure-ascii flag.

Got error:
UnicodeEncodeError: 'charmap' codec can't encode character '\u010c' in position 244: character maps to
When following command was used:
schema get ID -O schema.json
File was created, but is empty.
Tested on Windows 10 Home, 64-bit, elisctl version 1.1.0, user<EMAIL_ADDRESS>

Just released a patch for that. Please try the new version


arch: xtensa: dts: Move HAS_DTS to arch level

Now that all supported xtensa boards use DTS we can move the Kconfig
setting to the arch level.  Remove HAS_DTS from board Kconfig files.
Signed-off-by: Kumar Gala<EMAIL_ADDRESS>

Codecov Report

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

@@            Coverage Diff            @@
##             master   #12976   +/-   ##
=========================================
  Coverage          ?    54.6%
=========================================
  Files             ?      235
  Lines             ?    26570
  Branches          ?     6374
=========================================
  Hits              ?    14509
  Misses            ?     9404
  Partials          ?     2657

Continue to review full report at Codecov.

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


gps_umd: 1.0.8-1 in 'foxy/distribution.yaml' [bloom]

Increasing version of package(s) in repository gps_umd to 1.0.8-1:

upstream repository: https://github.com/swri-robotics/gps_umd.git
release repository: https://github.com/swri-robotics-gbp/gps_umd-release.git
distro file: foxy/distribution.yaml
bloom version: 0.11.2
previous version for package: 1.0.6-1

Alright, I'll fix it. I had some troubles getting the release tags sorted
out.
On Tue, Apr 4, 2023, 6:13 PM Emerson Knapp @.***> wrote:

@.**** commented on this pull request.
In foxy/distribution.yaml
https://github.com/ros/rosdistro/pull/36703#discussion_r1157853520:

@@ -1747,8 +1747,8 @@ repositories:
- gpsd_client
tags:
release: release/foxy/{package}/{version}

 url: https://github.com/swri-robotics-gbp/gps_umd-release.git

 version: 1.0.6-1

 url: https://github.com/ros2-gbp/gps_umd-release.git

 version: 1.0.8-1

It doesn't look like the new release repository contains this tag 1.0.8-1,
it seems like the latest is 1.0.4
https://github.com/ros2-gbp/gps_umd-release#gps_umd-foxy---104-1, it's
not as up-to-date as
https://github.com/swri-robotics-gbp/gps_umd-release.git which at least
had 1.0.6.
But maybe I'm missing something
—
Reply to this email directly, view it on GitHub
https://github.com/ros/rosdistro/pull/36703#pullrequestreview-1371912402,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABBZWHBABCFMU2R5EYQJRNDW7STJDANCNFSM6AAAAAAWTJRNLE
.
You are receiving this because you authored the thread.Message ID:
@.***>

Is there a way to use bloom to push my tags to the release repo?
On Tue, Apr 4, 2023 at 6:41 PM David Anthony @.***> wrote:

Alright, I'll fix it. I had some troubles getting the release tags sorted
out.
On Tue, Apr 4, 2023, 6:13 PM Emerson Knapp @.***>
wrote:

@.**** commented on this pull request.
In foxy/distribution.yaml
https://github.com/ros/rosdistro/pull/36703#discussion_r1157853520:

@@ -1747,8 +1747,8 @@ repositories:
- gpsd_client
tags:
release: release/foxy/{package}/{version}

 url: https://github.com/swri-robotics-gbp/gps_umd-release.git

 version: 1.0.6-1

 url: https://github.com/ros2-gbp/gps_umd-release.git

 version: 1.0.8-1

It doesn't look like the new release repository contains this tag
1.0.8-1, it seems like the latest is 1.0.4
https://github.com/ros2-gbp/gps_umd-release#gps_umd-foxy---104-1, it's
not as up-to-date as
https://github.com/swri-robotics-gbp/gps_umd-release.git which at least
had 1.0.6.
But maybe I'm missing something
—
Reply to this email directly, view it on GitHub
https://github.com/ros/rosdistro/pull/36703#pullrequestreview-1371912402,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABBZWHBABCFMU2R5EYQJRNDW7STJDANCNFSM6AAAAAAWTJRNLE
.
You are receiving this because you authored the thread.Message ID:
@.***>

Let me retry this another way.


Need some way to identify collision shapes created using CollisionShape node

When using complex 3D setups you basically need to know what part of collision your shape represents. For example, your character can walk, lay on sofa, sit on chair. All these poses (and transitions!) require different collision setups to avoid unwanted behavior. Another example is multi-character animations, where we want to selectively disable collision bodies. Or, entering a car.
To select a body to disable or move you need to identify it. You can loop through bodies in collision object, but you can't identify which is which. Ref do not know about names.
one can set names for shapes in GDScript, but not in C++ for some reason. Or do I do something wrong? This is serious issue, basically a show stopper.

Godot seriously changed since this bug was submitted. Now there is multiple ways to identify collision shape which triggered (with addition of runtime CollisionShape node). There is a lot of improvement possible in this area (store shape id in CollisionShape node?) but is is definitely no longer show stopper. So expressed like this, this issue can be closed, if you want to.

Thanks, closing then, as further improvement discussions would likely get better visibility in a new issue.


Add "count distinct" function, useful for groupby

something like
def dist(x):
       return len(np.unique(x))

len(np.unique(self.dropna())) ?
with a Cython distinct_count_level_1d function?

Maybe this should just be a groupby instance methods-- like Series now has the value_counts method so you can do:
len(s.value_counts())

but in a groupby scenario, you could do:
s.groupby(grouper).agg(lambda x: len(x.value_counts()))

but that's a bit verbose. Maybe like
s.groupby(grouper).nunique()


philadelphia-core: Simplify message header and trailer handling

Use preformatted byte arrays for the BeginString(8), BodyLength(9), and CheckSum(10) tags
When sending a message, instead of formatting the entire message header, only format the BodyLength(9) value
Precompute the checksum for the parts of the message header that do not change

Great, this makes a lot sense. What does the perf tests say?

To stay on topic, I extracted the checksum optimizations outside the scope of this pull request. There is some further work to be done on that front.
In the performance tests, "background radiation" of the test setup currently clouds any conclusions to be made. There is certainly some further work to be done on that front as well. 🙂


Modal cannot open when placed in activate()

I am trying to display a modal by calling
this.loginDialog.open(); in activate but I get
TypeError: Cannot read property 'open' of undefined.
This is to display a login dialog.
In the template I have

Username:

      <input value.bind="auth.username" attach-focus="true" />

Password:

      <input type="password" value.bind="auth.password" attach-focus="false" />

      No Error

      Sign In

Open works in a button callback like in the demos.
Is there a workaround for this ?
Thanks

@glennpierce
Please try TaskQueue in attached() like in this gist:
https://gist.run/?id=47b3007527a735abd3e3edbc5ccd3d58

Yep that works. Thanks.
Why is that necessary? I am reading up on TaskQueue now.

I'm not really sure when the view and the component is attached. If the view is attached after the component then there is nothing to open, yet.
That's a guess, though. :smiley:

Btw. you can use "manual close" to prevent the dialog from closing automatically so you can check credentials in tryLogin() and only close the modal if the user logged in successfully..
Sample: http://aurelia-ui-toolkits.github.io/demo-materialize/#/samples/modals/manual-close
Just remove the modal-close css class and call this.loginDialog.close() from tryLogin().

Seems to work. Thanks


Bump aws provider to v4.4.0

what

Bump aws provider to v4.4.0

why

Prevent people from using an older provider version which would cause issues

references

https://github.com/hashicorp/terraform-provider-aws/releases/tag/v4.4.0
Previous PR https://github.com/cloudposse/terraform-aws-transit-gateway/pull/20

/test all

/test all


MY PROFILE (PriyaChandak24)

add my profile on README.md file.

Added
Thanks for your contribution


Ensure that an artifact is indeed no_std

It would be good if cargo build would have a --nostd option that would ensure that the resulting artifact doesn't indeed link against the std library and fails if this is the case.
To check this, it needs to at least check that rustc is not called with the std feature enabled. A bonus point would be to use nm on Linux and MacOSX (and its equivalent on windows) to check that the artifact does not contain any std symbols.

Is this still relevant?

Yes.

If so, what is blocking it?

Nothing.

For the meantime I built cargo nono to help with this.


How to get/use course overviewfiles/image in the another service

Test code,
require 'moodle-api'
Moodle::Api.configure do|c|
  c.host = 'https://moodle.example.com'
  c.token = 'TOKEN'
end

h = {
	field: "ids",
	value: "1"
}

response = Moodle::Api.core_course_get_courses_by_field(h)

Response,
{"courses"=>
  [{"id"=>1,
    "overviewfiles"=>
     [{"filename"=>"test.png",
       "fileurl"=>"https://moodle.example.com/webservice/pluginfile.php/22/course/overviewfiles/test.png",

We want to use the response["courses"][0]["overviewfiles"][0]["fileurl"]. When we enter the https://moodle.example.com/webservice/pluginfile.php/22/course/overviewfiles/test.png in browser address bar, we get the token error
 {"error":"A required parameter (token) was missing","stacktrace":null,"debuginfo":null,"reproductionlink":null}

When we try to the https://moodle.example.com/webservice/pluginfile.php/22/course/overviewfiles/test.png?token=TOKEN, we get the different error ~same error again~,
{"error":"access control exception","errorcode":"accessexception","stacktrace":null,"debuginfo":null,"reproductionlink":null}

Anonymous user show the course overviewfiles/image in the browser. This url is different from webservice url,

normal: https://moodle.example.com/pluginfile.php/22/course/overviewfiles/test.png
webservice: https://moodle.example.com/webservice/pluginfile.php/22/course/overviewfiles/test.png

So, how to use the course overviewfiles/image in our custom app? I think you can solve with Token. But I don't know how to do it. On the other hand, would it be a security weakness to use the normal url vs werservice url?

When we try to the https://moodle.example.com/webservice/pluginfile.php/22/course/overviewfiles/test.png?token=TOKEN, we get the different error same error again,
{"error":"access control exception", "errorcode":"accessexception","stacktrace":null,"debuginfo":null,"reproductionlink":null}

In the admin/settings.php?section=debugging page, we change to debugging message to developer,
{"error":"access control exception","errorcode":"accessexception","stacktrace":"* line 58 of \/webservice\/pluginfile.php: webservice_access_exception thrown\n","debuginfo":"Web service file downloading must be enabled in external service settings\nError code: accessexception","reproductionlink":"https:\/\/moodle.example.com\/"}

Then in the admin/webservice/service.php?id=2 page, we enable to downloading.
So we get image with the https://moodle.example.com/webservice/pluginfile.php/22/course/overviewfiles/test.png?token=TOKEN url.
But everyone show the our secret/token in the source code. I think it is security problem. How to get rid of this issue?

But everyone show the our secret/token in the source code. I think it is security problem. How to get rid of this issue?

In the admin/settings.php?section=webservicetokens page, we input our client IP in the IP restriction area of form. We can solve this way. But is there any advanced tech/practice/suggestion?
Best regards

It seems like you are on the correct path. It makes sense to enable downloading from web services if it's a requirement you need. Regarding the token, you shouldn't include your token in your source code because it's definitely a security problem.
To overcome this you should leverage something like environment variables. There are many ways to skin this cat, but this seems to be your best option.
Unless I am misunderstanding what you are trying to achieve.

It seems like you are on the correct path. It makes sense to enable downloading from web services if it's a requirement you need. Regarding the token, you shouldn't include your token in your source code because it's definitely a security problem.

I think so.

To overcome this you should leverage something like environment variables. There are many ways to skin this cat, but this seems to be your best option.

I use the environment variables on the another Rails app for internal process. I have to use the token/environment variables at the html of Moodle Rails app as a open form. Even if I use the environment, token will be seen during the GET request, isn't it? How to get rid of this issue? I don't understant your suggestion. Can you clarify it?

Hmm, yes I misunderstood what you were saying. I guess if your app is behind moodle user authentication, you could leverage the users username and password to generate a token specific to them. That way if it's visible to them it doesn't really matter since it is limited for that user.
Moodle::Api.configure({host: 'http://my_moodle_instance.com',
                       service: 'my_external_service', # ensure you include the shortname of the external service
                       username: 'jonsnow',
                       password: 'defendthewall'})

params = { 'criteria[0][key]' => 'firstname', 'criteria[0][value]' => 'Jon' }

Moodle::Api.core_user_get_users(params)

@rumanod do you have any suggestions here?

Hi @ryannealmes. I agree that the best approach would be to generate a user specific token and using moodle authentication on the app.

Closing this, but feel free to ask more questions @seyyah

Thank you @ryannealmes & @rumanod


There are no running agents error

Hey all,
I have couple of questions:

I'm trying to attach the agent to our Tomcat server. Here are the options we use:

  export AGENT_PATH="/home/isos/pinpoint-agent-2.5.3"
  CATALINA_OPTS="$CATALINA_OPTS -javaagent:$AGENT_PATH/pinpoint-bootstrap-2.5.3.jar"
  CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.agentId=10000"
  CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.applicationName=debug-server"
  CATALINA_OPTS="$CATALINA_OPTS -Dprofiler.transport.grpc.collector.ip=<IP_ADDRESS>"
  CATALINA_OPTS="$CATALINA_OPTS -Dprofiler.collector.ip=<IP_ADDRESS>"

However, although I can see the debug-server in the Application List, when I click on the debug-server I get the There are no running agents error. How can I solve or trace this problem?

I'm trying to run the Pinpoint Agent on Wildfly app server. However, when I add the -javaagent JVM parameter, the server doesn't even boot. There is also no log. Is there any support for Wildfly? How can I proceed? You can find details about this problem here: https://github.com/pinpoint-apm/pinpoint-docker/issues/183

Thanks, and regards.

@isos81
Please attach agent log.

@jaehong-kim Thanks. I just realized my catalina.sh had errors. The agent runs fine after I fixed it. However, I can't run the agent on Wildfly (Product Version: 20.0.1.Final and Release Version: 12.0.3.Final). Do you know whether there is Wildfly support? How can I attach the agent to the Wildfly server?


Updates readme instructions / changes execution for Quickstart

…arness

Codecov Report

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

@@            Coverage Diff            @@
##             master     #637   +/-   ##
=========================================
  Coverage     55.84%   55.84%
  Complexity      202      202
=========================================
  Files            74       74
  Lines          2052     2052
  Branches        131      131
=========================================
  Hits           1146     1146
  Misses          874      874
  Partials         32       32

Continue to review full report at Codecov.

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

@jabubake - Thank you for the quick review!
@lesv FYI, the ML Apis team requested we remove the comments on AE standard as they were too prominent in the How-to snippets.


Update instructions

I tried going through the instructions and found a couple of extra/different things.
Here are rough notes of my exact steps to make the minimal example.
Create a vite app
yarn create vite

Choose React.
Choose Typescript.
Install tldraw
yarn add @tldraw/tldraw@alpha

Download some assets
Download all the files from the public folder in this repo.
Place them into your project's public folder.
Download some styles
Download index.css from this repo.
Replace your index.css with it.
Make the app
Put this in App.tsx:
import { Tldraw } from "@tldraw/tldraw";
import<EMAIL_ADDRESS>import<EMAIL_ADDRESS>
export default function () {
  return (
    <div className="tldraw__editor">
      <Tldraw />
    </div>
  );
}

I made a template with the bare minimum setup - will share internally


Follow the official instructions for building BoringCrypto.

Signed-off-by: Piotr Sikora<EMAIL_ADDRESS>

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

Test name
Commit
Details
Required
Rerun command

test_ztunnel
c79beb2843ca8ee75e88e2c849cf64ee3e0fb9aa
link
true
/test test

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


Few questions related with the propagation algorithm

Hello, my name is Erick Nunez I am a physics student at the Industrial University of Santander (Colombia). I am currently doing my major project for Bsc. degree, studying the influence of the number of phase screens on a propagated Gaussian beam. That’s why I am using your wonderful library/software (Wavepy). Therefore, I would like to kindly ask you some questions related with the propagation algorithm you already implement.
Here there are some results i have obtained so far:

QUESTIONS
1. The Phase screens are not always equidistant, I ran a simulation with the following data

And I obtained these positions:

With respect to the distance per screen, no equidistant positions are obtained. Are the screens fixed to be equidistant?
2. Could you please explain if the scintillation index is restricted to the points contained in the pupil? Did you consider if there is some influence on the scintillation index when you are restricted to the pupil? Why not evaluate the result in the whole output?

3. Could you clarify if the beam defined in the simulations is really collimated? Since after verifying the evolution of the intensity distribution with the distance it seems not to be.

500 m Propagation Distance

50000 m Propagation distance:

I will really appreciate you help and comments.
Thanks in advanced
Have a nice day!
Beck, J., Bekins, C., & Bos, J. P. (2016, May). WavePy: A Python package for wave optics. In SPIE Defense+ Security (pp.<PHONE_NUMBER>03). International Society for Optics and Photonics.

Erick: thanks for taking advantage of WavePy. I'll try and answer your questions briefly here. If you have follow ups please email me directly jpbos at Mtu dot edu.

There is a thought (I don't have the references handy) that placing the first and last phase screens half of the inter-screen spacing distance will produce a better result. There is some solid reasoning here. If you are looking to replicate accurate scintillation or differential tilt in an image the effect of the phase screen at the source or receiver can be zero (see works by Jack E. McCrae, Santasri R. Bose-Pillai and others for more detail).

2)In a Wave Optics Simulation (WOS) only the statistics inside the guard band are guaranteed to be accurate. The closer you get to the edges the more likely you are to encounter wrap-around ringing effects. Also, this simulation model started as a program to analyze partially coherent collimated Gaussian beams. (There's still some code included to that effect.) In that case, analyzing scintillation outside of the predicted beam size (with turbulence effects) is unlikely to produce accurate results (it's an SNR issue).

Collimated in this case means a uniform phase front. The beam will still expand because of diffraction. Also, if you are not using the correct sampling there could be additional beam expansion. I don't know that I have double checked that the predicted beam radius matched prediction but it's one of those things that has been done so many times by so many people you take it for granted. Especially at 50 km I would expect the beam size to be relatively large if the original beamwaist was small.

Thank you very much for your help and your time, I have clarified a lot about the operation of the library, in addition to solving several doubts I had. Thanks and have a nice day.


tighten bounds on double-conversion

double-conversion seems to have changed its API - one now uses Data.Double.Conversion.Convertable instead of the old modules.
So formatting needs updated bounds on Hackage!

I've made revisions to all 7.x releases' metadata for formatting, e.g: https://hackage.haskell.org/package/formatting-7.1.3/revisions/, updated formatting.cabal in the repo, and created an issue on double-conversion here: https://github.com/haskell/double-conversion/issues/30


add darkMode as named constructor argument to CupertinoApp

Use case
as developer developing for iOS and Android, I want to be able to set a dark theme, which will, like MaterialApp already supports, automatically apply the dark theme.
Good example for what I want to do can be seen with the darkTheme argument when using MaterialApp
Proposal
I have a code example of what I need for the CupertinoApp:

CC @LongCatIsLooong

This is really required as we are using platform-specific widgets(Material for android & Cupertino for iOS). I am stuck on how to provide a dark theme for CupertinoApp.

Is there any update on this?

https://github.com/flutter/flutter/issues/44273#issuecomment-550439143 -> it seems like the right way to do darkMode in CupertinoApp is using CupertinoDynamicColor: https://master-api.flutter.dev/flutter/cupertino/CupertinoDynamicColor-class.html

We cannot use this solution to define a app wide theme. You have to put the dynamic color in every widget whose theme you wanna change.

any update?


Update OWNERS

Signed-off-by: Gus Parvin<EMAIL_ADDRESS>

/cherry-pick release-2.4

/cherry-pick release-2.5

/cherry-pick release-2.3


FIX: warning_once for raw edf with interpolated chans

@Eric89GXL https://github.com/mne-tools/mne-python/commit/e0cec488bd67451ccfa8c14d9267353472f109ef introduces a warning, which can be overwhelming

I guess we'd need a warning_once in this case.
I actually don't understand what going on, nor why this interpolation is needed.

The warning should be emitted elsewhere in the code (outside of whatever looping is being done). Do you have time to look into it?

The warning should be emitted elsewhere in the code (outside of whatever looping is being done).

What do you mean?

The warning is emitted somewhere inside a loop, as evidenced by how many times it gets printed. It should instead only be emitted once, preferably when the file is initially read from disk with read_raw_edf, at a level outside the loop that it's currently in.


test(anagram): clean up redundant tests

I tried to open this a few months ago during a hiatus. Reopening again 🤞🏽 https://github.com/exercism/r/pull/233
Going through this exercise I notice a fair bit of redundant testing. They loose value when duplicated and make it harder to establish the expected result.
Removed multiple tests for "detects multiple anagrams"
Removed multiple tests for "anagrams must use all letters exactly once"
Removed multiple test for "case insensitive checking"
Clarified test descriptions

I think I'll close this down. It looks like the specification has duplication meaning these tests would need to reflect that.
Test cases are immutable with only description, comments or scenario additions being allowed.

Test cases are immutable, which means that once a test case has been added, it never changes.

So every language track needs to implement redundant tests to align with this problem specification. It makes sense to make them immutable so the many dependant language tracks don't fall out of alignment and aren't routinely having to sync. But the OCD in me has a little eye twitch while reading this specification 😄
Duplicate test example (the candidates input are slightly different but from a test perspective I would call them identical).
{
  "uuid": "a0705568-628c-4b55-9798-82e4acde51ca",
  "description": "words other than themselves can be anagrams",
  "property": "findAnagrams",
  "input": {
    "subject": "LISTEN",
    "candidates": [
      "Listen",
      "Silent",
      "LISTEN"
    ]
  },
  "expected": [
    "Silent"
  ]
},
{
  "uuid": "33d3f67e-fbb9-49d3-a90e-0beb00861da7",
  "reimplements": "a0705568-628c-4b55-9798-82e4acde51ca",
  "description": "words other than themselves can be anagrams",
  "property": "findAnagrams",
  "input": {
    "subject": "LISTEN",
    "candidates": [
      "LISTEN",
      "Silent"
    ]
  },
  "expected": [
    "Silent"
  ]
}

Oh... wait I just noticed the field  reimplements and see the section "Changing Tests".  I'll take a closer look at this specification and see if I can align it.


"EOFError: Ran out of input" when trying to load QAGS_CNN/data.pkl

Hello, thanks for this useful software!
I hit the following error when trying to load the file QAGS_CNN/data.pkl.
If you have a solution I would appreciate it!
>>> import pickle
>>> pickle.load(open('BARTScore/SUM/QAGS_CNN/data.pkl', 'rb'))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
EOFError: Ran out of input

environment

ubuntu:20.04
python3.8.10

Sorry, I cloned it again, and it opened with no errors. I have made some unintentional changes.


Missing SideEffect argument sanitation prevents confirm step

Expected behavior
When creating a SideEffect, it should be ensured that the address parameters are passed as hex, and have the specified length. Other address format (for example ss58) should be rejected.
Actual behavior
With transfer side effects, we can submit in hex or as ss58. When passing the address as hex, everything works as expected.
When submitting in ss58 format, at first everything looks correct (SideEffect event is emitted, parameters in the event are correct, and executor can execute) but there is an underlying issue in the way circuit stores the address. The address is converted into Vec<u8> but uses some encoding that I don't fully understand, which results in different bytes being stored. The confirmation of the correctly executed SideEffect is now not possible, as the address specified in the event and circuit storage mismatch. This results in the funds being sent without the executor being paid (or locked forever on target for escrow).
Steps to reproduce
Using CLI @970e60474fedd0be80804600b52731754e359862 will submit the address as ss58. The side effect will be emitted and everything looks correct. The executor can execute (with a small modification, need to add .toHuman() in gateways/substrate/relayer.ts). When confirming, the to parameter will mismatch and reject the verification.

I'd be curious to know the breadth of this encoding issue. If it is true that storing ss58s is problematic, this issue extends beyond circuit and everywhere we use T::AccountId in a storage item.


Generics Type checking not working on empty class

TypeScript Version<EMAIL_ADDRESS>Code
// A *self-contained* demonstration of the problem follows...
// Test this by running `tsc` on the command-line, rather than through another build tool such as Gulp, Webpack, etc.
class SomeBaseClass {
}

class Test<T> {
    test(e: T) {
    }
}

let t = new Test<SomeBaseClass>();
t.test(13);

Expected behavior:
The last line should show an error, since the parameter passed is of type number, not SomeBaseClass.
Actual behavior:
No error or warning shows. As soon as SomeBaseClass gets attributes or methods (aside from the constructor), an error is actually shown.

Typescript has a structural type system. SomeBaseClass is a Constructor that creates objects that have no properties, thier being {}, a constraint which numbers satisfy. Do not create empty classes, interfaces or types.

I use SomeBaseClass as parent class, so I can pass extended classes to that test method. I think that is a valid use-case.

ok, it seems this has nothing to do with generics.. I've updated the bug description and example code to be even simpler

As @aluanhaddad said, you want nominal typing, which TypeScript doesn't really have.  This is a duplicate of #202; instead of discussing here you might want to go to #202 and give it a 👍, and if you think you have a new use case you can mention it there (although nominal classes is probably well covered).

This is well-covered in the FAQ

OK, thanks for the information.


User research sessions for Call for Records

Title of ticket: User research sessions for Call for Records
Description
Completion of User Walkthrough sessions for Call for Records
DOD

[ ] Jazmin Anderson (Flex team)
[ ] April Houseman (SDPR), Leala Bull
[ ] Pablo Frederick (Generals Flex team)
[ ] Katie Innis (PSSG Personals)

@JHarrietha-AOT Just added this. Please review and edit as needed

@mpilchar Thanks for setting up this issue. I just removed the setup of the session as that was completed in the recruitment ticket

Session 1 Complete - Katie Innis (PSSG Personals) - Mon July 12th
https://bcgov.sharepoint.com/teams/03521/Shared Documents/General/User Research/Sprint 5 - Research - Recordings/Call with Andrews, and 2 others-20210712_130205-Meeting Recording.mp4

Session 2 Complete - Pablo Frederick (Generals Flex team) - Tues July 13th
https://bcgov.sharepoint.com/teams/03521/Shared Documents/General/User Research/Sprint 5 - Research - Recordings/CFR Walkthrough - Flex Team-20210713_140234-Meeting Recording.mp4

Session 3 Complete - April Haussman (SDPR), Leala Bull - Tues July 13th
Note: April did not attend
https://bcgov.sharepoint.com/teams/03521/Shared Documents/General/User Research/Sprint 5 - Research - Recordings/Call with Andrews, and 3 others-20210713_173121-Meeting Recording.mp4

Session 4 Complete - Jazmin Anderson (Flex team) - Wed July 14th
https://bcgov.sharepoint.com/teams/03521/Shared Documents/General/User Research/Sprint 5 - Research - Recordings/CFR Walkthrough - Flex Team-20210714_133441-Meeting Recording.mp4

All sessions have been completed with links to each recording above


Feature/getting started

Ticket Link

Related Links

Description

Steps to Reproduce / Test

GIF's

looks like the pipeline is failing please fix


Suggestion: offer Windows Ink Workspace in LTSC

It is a good function!

I will look into what this would entail to implement.


Problem with redelivery

Hi guys,
I have a problem with redelivering messages. We've never set any mechanism to redeliver, cause usually our messages are short lived. Either it gets processed or it fails and the user needs to initiate a new session.
It worked well for quite a while, failed message was moved to "_error" but for some time now the mechanism doesn't work. Our message, when there is an exception in the middle of processing, gets redelivered and it causes the process and rabbitMQ to consume more and more resources as the message will never be properly processed.
We started fighting it by catching all the exceptions and it usually work. But once in a while we have a situation where one message processing fails in a way we didn't anticipated and it starts the for-ever loop.
We use RabbitMQ cluster on docker, newest masstransit.
Did we miss some configuration on MassTransit side while updating the library? What might have caused the change in behaviour?
Thanks in advance

If you're seeing message being redelivered by RabbitMQ, you likely have either a broker configuration error, or something that is preventing a message from completing. Could be any kind of error by the message consumer so you'd be wise to turn on logging and see what's happening in the consumer.
Because this only happens when MassTransit is unable to ack/nack the message itself.

Weird thing. I think I fixed it but the issue was super weird.
We have a BusinessService that listents on Business queue.
It is waiting for different types of messages, BusinessConfirmed, among others.
It was working fine, but we decided that confirmation should go through HTTP so we removed the consumer for this type of message, but it was still published by other  Service.
The problem was that the message was somehow connected to the queue in rabbit but there were no consumer waiting for it so it was being redelivered and for ever unacked.
I checked and there was Business_Skipped exchange but without any queue bound. I've created the queue and did the binding and all the BusinessConfirmed messages went there and everything seems fine now.
Is it because the queue previously was consuming this type of message that a binding between BusinessConfirmed and Business queue was created ant thus simple publishing was trying to deliver the message to this specific queue? Shouldn't it the binding between BusinessConfirmed and Business queue be removed automatically when BusinessService was restarted?
Or at least shouldn't the Business_Skipped queue be created without my help?
Sorry for so many questions but I'm still quite confused and not sure what to tell clients about the event.
Regards,
Lukasz

The Business_Skipped queue should have been created automatically, but you probably have permissions or something set in a way that it couldn't be created. Which should have shown up in the logs. But the inability to create the _Skipped queue would cause what you saw.
You figured it out though, you should verify in the logs, but I'll close this issue.


chore: add LICENSE file

Checklist

[ ] npm test passes
[ ] tests and/or benchmarks are included
[ ] documentation is changed or added
[ ] commit message follows commit guidelines

Affected core subsystem(s)

Description of change

Codecov Report

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

@@          Coverage Diff          @@
##           master     #4   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           1      1
  Lines           1      1
=====================================
  Hits            1      1

Continue to review full report at Codecov.

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


Revert TableOps.exists() behavior. Closes #768

A bunch of words to try and explain the race conditions to the user

@EdColeman do you think reverting the exists method back to 1.8 behavior is needed?  Or does using the scanner suffice for your use case?

I think the current behavior should be classified as a bug and not something that should only be handled by documentation.
With that, I think the discussion then becomes how serious a bug is it? Would I consider it a blocker for the next 1.9.x or 2.0 release, maybe not, for 2.1, probably. Because there is a work-around for the "forward" case where the table has been created, but not propagated to the cache, instead of checking for a table exits() and relying on the scanner to fail "works", but it seems like it could be an "expensive" why to check. Especially in cases where the table truly did not exist, but people keep trying to scan anyway.
I do not know how to handle the reverse case where you want to make sure a table has been deleted.
Even if there was a method to clear the cache, you could then test and if you didn't think the answer was what you wanted, clear the cache and retry may be a work-around rather that relying on the scanner behavior.
Do you think reverting the behavior would impact performance of applications that have a relatively static configuration?  Are there ways to use the znode timestamps / ids that could be used to determine if the cache is current?

Do you think reverting the behavior would impact performance of applications that have a relatively static configuration?

I believe so.  Applications that took advantage of the performance improvements upgrading to 1.9 (I believe Fluo is one of them) will be impacted by reverting behavior back to 1.8.

Are there ways to use the znode timestamps / ids that could be used to determine if the cache is current?

This may be possible by checking the "mtime" on the tables node, which should indicate when a table ID -> name mapping was updated or table added/dropped.  This would require a bit more work though.
I am thinking we may have put ourselves in a situation where we need to create another exists method.  Revert the behavior of the current method to always check zookeeper.  Than add a new method, something like "existsInCache(String tableName, boolean clearCacheOnFail)".  Which will have better performance and the option to clear cache the cache.  @keith-turner thoughts on this?

There appears to be a race condition with the new cache of the table ID name map.  I will close this PR since it doesn't fix the problem.


com.github.ksoichiro.android.observablescrollview.TouchInterceptionFrameLayout

Error:
Warning: com.github.ksoichiro.android.observablescrollview.TouchInterceptionFrameLayout: can't find referenced method 'FrameLayout(android.content.Context,android.util.AttributeSet,int,int)' in library class android.widget.FrameLayout Warning: there were 1 unresolved references to library class members.
I'v got this error when trying to release my app, the proguard just failed. According the error message, I found the TouchInterceptionFrameLayout added in v1.4.0 has constructor only available after L. I can't change my build version to 21 in my situation(http://proguard.sourceforge.net/manual/troubleshooting.html#unresolvedlibraryclassmember)

Add -dontwarn com.github.ksoichiro.android.observablescrollview.TouchInterceptionFrameLayout can fix the issue


Clean up directories at end of visit

Murfey should ask the user if they want to clean up the directories at the end of the visit, and if they do Murfey should check if all files have successfully transferred and then delete the files from the source directory.

Working as of version 0.9.14


Is pep8 compatibility necessary right now for tensorflow?

On running the pep8 test, I found out around 18k warnings. I think we should strict to some guideline, so that as the project grows, a proper standard is maintained. We can use flake8 for this.
I can work on this and submit a PR, if pep8 compatibility is required.

Thanks for the report -- we'll look into this at some point!  Hopefully our code is at least internally consistent :)

ok, then i work on this later on.

@martinwicke: Do we have a plan in terms of linting and/or pep8 compliance?  Should this be closed?

Plans, yes, time to do it, no. I would like to make much more of the pylint
we're already running, and ideally add cpplint as well.
On Mon, Jun 6, 2016 at 10:30 AM Geoffrey Irving<EMAIL_ADDRESS>wrote:

@martinwicke https://github.com/martinwicke: Do we have a plan in terms
of linting and/or pep8 compliance? Should this be closed?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/217#issuecomment-224028856,
or mute the thread
https://github.com/notifications/unsubscribe/AAjO_VoOya6ZrBTvi7Gs1zoghoDgvTGvks5qJFkvgaJpZM4GiS_S
.

@martinwicke: I'll leave it assigned to you for now, and you can reassign to other testing folk as appropriate.

I can work on this.

@staranjeet: I think we may need to figure out a policy of just how pep8 compliant we want to be first.  For example, I'd hate to give up our 2 space indent paradise.

Definitely not while we still maintain a 80-character hard limit.
On Mon, Jun 6, 2016 at 10:13 PM Geoffrey Irving<EMAIL_ADDRESS>wrote:

@staranjeet https://github.com/staranjeet: I think we may need to
figure out a policy of just how pep8 compliant we want to be first. For
example, I'd hate to give up our 2 space indent paradise.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/217#issuecomment-224179082,
or mute the thread
https://github.com/notifications/unsubscribe/AAjO_TqzEtKeX6LZw0zbNhLTi5PsFRKdks5qJP4OgaJpZM4GiS_S
.

@staranjeet We'd like to ignore some thing (in particular, the 4 space indent), but otherwise, proper linting would be great. We already run pylint as part of the build, but we disabled all but the most terrible errors (syntax errors, unknown names) in order to make it blocking without damaging productivity.
It would be nice to have a stricter pylintrc that we can use for informational purposes. Especially if we can generate statistics on how many lint issues were added (and make that a blocking error).
I haven't used flake8 miself, if it supports both python 2 and python 3 and is sufficiently flexible we could use that as well.

Closing this -- if there are specific violations, or a nicer linter for our tests, I'd love more concrete issues or PRs.

I ran a pep8 test and found that most of the warnings were for spaces as 2
and 80 char limit. As for the spaces, I think that as per the above
conversation we are going with 2 spaces convention. Char limit can be
discussed.
Also let me know if there are any other linters. I was a little busy, will
also look myself today.

We currently use pylint: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/ci_build/ci_sanity.sh
We can talk about changing options to make it more powerful -- it will need some experimentation to get the right balance between false positives (which we have to whitelist) and enforcing the rules.

Ok I will look this into today and update accordingly.
On 11-Jun-2016 11:46 AM, "Martin Wicke"<EMAIL_ADDRESS>wrote:

Reopened #217 https://github.com/tensorflow/tensorflow/issues/217.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/217#event-689325940, or mute
the thread
https://github.com/notifications/unsubscribe/AEGlvNy9GLO8C0ri2ce1P8qi9aOJtYdzks5qKlLAgaJpZM4GiS_S
.

The errors which we are planning to ignore

Error
Error meaning

E501
line too long

E111
indentation is not a multiple of four

E114
indentation is not a multiple of four(comment)

E701
multiple statements on one line (colon)

Now the stats while running pep8(ignoring the above mentioned erros) tests are as follows:

Error
Error meaning
Count

E101
indentation contains mixed spaces and tabs
2

E115
expected an indented block (comment)
4

E116
unexpected indentation (comment)
1

E121
continuation line under-indented for hanging indent
27

E123
closing bracket does not match indentation of opening bracket's line
18

E124
closing bracket does not match visual indentation
15

E125
continuation line with same indent as next logical line
195

E126
continuation line over-indented for hanging indent
22

E127
continuation line over-indented for visual indent
102

E128
continuation line under-indented for visual indent
145

E129
visually indented line with same indent as next logical line
106

E131
continuation line unaligned for hanging indent
7

E201
whitespace after '['
14

E202
whitespace before ']'
1

E203
whitespace before ':'
3

E222
multiple spaces after operator
1

E225
missing whitespace around operator
21

E226
missing whitespace around arithmetic operator
300

E227
missing whitespace around bitwise or shift operator
2

E231
missing whitespace after ','
58

E241
multiple spaces after ','
1

E251
unexpected spaces around keyword / parameter equals
15

E261
at least two spaces before inline comment
6

E262
inline comment should start with '# '
1

E265
block comment should start with '# '
57

E266
too many leading '#' for block comment
78

E271
multiple spaces after keyword
5

E272
multiple spaces before keyword
2

E301
expected 1 blank line, found 0
98

E302
expected 2 blank lines, found 1
55

E303
too many blank lines (2)
7

E304
blank lines found after function decorator
1

E402
module level import not at top of file
43

E502
the backslash is redundant between brackets
3

E704
multiple statements on one line (def)
1

E711
comparison to None should be 'if cond is None:'
4

E731
do not assign a lambda expression, use a def
155

W191
indentation contains tabs
2

W291
trailing whitespace
43

W293
blank line contains whitespace
15

W391
blank line at end of file
15

W503
line break before binary operator
58

I think that these should be removed. Let me know your opinion

E402 has valid uses (conditional imports to avoid breaking on missing soft
dependencies) and we should probably ignore those if they are used for such
a purpose.
E129 is a bit iffy, i have to check how these look.
I'd like to find a way to enforce these going forward (=add a stricter
linter test), but we have to make sure that we don't conflict with our
internal tools. Otherwise I agree, these should be fixed.
On Sun, Jun 12, 2016 at 01:27 Taranjeet Singh<EMAIL_ADDRESS>wrote:

The errors which we are planning to ignore
Error Error meaning
E501 line too long
E111 indentation is not a multiple of four
E114 indentation is not a multiple of four(comment)
E701 multiple statements on one line (colon)
Now the stats while running pep8(ignoring the above mentioned erros) tests
are as follows:
Error Error meaning Count
E101 indentation contains mixed spaces and tabs 2
E115 expected an indented block (comment) 4
E116 unexpected indentation (comment) 1
E121 continuation line under-indented for hanging indent 27
E123 closing bracket does not match indentation of opening bracket's line
18
E124 closing bracket does not match visual indentation 15
E125 continuation line with same indent as next logical line 195
E126 continuation line over-indented for hanging indent 22
E127 continuation line over-indented for visual indent 102
E128 continuation line under-indented for visual indent 145
E129 visually indented line with same indent as next logical line 106
E131 continuation line unaligned for hanging indent 7
E201 whitespace after '[' 14
E202 whitespace before ']' 1
E203 whitespace before ':' 3
E222 multiple spaces after operator 1
E225 missing whitespace around operator 21
E226 missing whitespace around arithmetic operator 300
E227 missing whitespace around bitwise or shift operator 2
E231 missing whitespace after ',' 58
E241 multiple spaces after ',' 1
E251 unexpected spaces around keyword / parameter equals 15
E261 at least two spaces before inline comment 6
E262 inline comment should start with '# ' 1
E265 block comment should start with '# ' 57
E266 too many leading '#' for block comment 78
E271 multiple spaces after keyword 5
E272 multiple spaces before keyword 2
E301 expected 1 blank line, found 0 98
E302 expected 2 blank lines, found 1 55
E303 too many blank lines (2) 7
E304 blank lines found after function decorator 1
E402 module level import not at top of file 43
E502 the backslash is redundant between brackets 3
E704 multiple statements on one line (def) 1
E711 comparison to None should be 'if cond is None:' 4
E731 do not assign a lambda expression, use a def 155
W191 indentation contains tabs 2
W291 trailing whitespace 43
W293 blank line contains whitespace 15
W391 blank line at end of file 15
W503 line break before binary operator 58
I think that these should be removed. Let me know your opinion
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/217#issuecomment-225416784,
or mute the thread
https://github.com/notifications/unsubscribe/AAjO_ZJoZzSpTLcHP507AoFlMlkzJCFBks5qK8L1gaJpZM4GiS_S
.

Actually, we want to enforce line-too-long, but with some exceptions
(import statements for instance can make unavoidably long lines)
On Sun, Jun 12, 2016 at 10:00 Martin Wicke<EMAIL_ADDRESS>wrote:

E402 has valid uses (conditional imports to avoid breaking on missing soft
dependencies) and we should probably ignore those if they are used for such
a purpose.
E129 is a bit iffy, i have to check how these look.
I'd like to find a way to enforce these going forward (=add a stricter
linter test), but we have to make sure that we don't conflict with our
internal tools. Otherwise I agree, these should be fixed.
On Sun, Jun 12, 2016 at 01:27 Taranjeet Singh<EMAIL_ADDRESS>wrote:

The errors which we are planning to ignore
Error Error meaning
E501 line too long
E111 indentation is not a multiple of four
E114 indentation is not a multiple of four(comment)
E701 multiple statements on one line (colon)
Now the stats while running pep8(ignoring the above mentioned erros)
tests are as follows:
Error Error meaning Count
E101 indentation contains mixed spaces and tabs 2
E115 expected an indented block (comment) 4
E116 unexpected indentation (comment) 1
E121 continuation line under-indented for hanging indent 27
E123 closing bracket does not match indentation of opening bracket's line
18
E124 closing bracket does not match visual indentation 15
E125 continuation line with same indent as next logical line 195
E126 continuation line over-indented for hanging indent 22
E127 continuation line over-indented for visual indent 102
E128 continuation line under-indented for visual indent 145
E129 visually indented line with same indent as next logical line 106
E131 continuation line unaligned for hanging indent 7
E201 whitespace after '[' 14
E202 whitespace before ']' 1
E203 whitespace before ':' 3
E222 multiple spaces after operator 1
E225 missing whitespace around operator 21
E226 missing whitespace around arithmetic operator 300
E227 missing whitespace around bitwise or shift operator 2
E231 missing whitespace after ',' 58
E241 multiple spaces after ',' 1
E251 unexpected spaces around keyword / parameter equals 15
E261 at least two spaces before inline comment 6
E262 inline comment should start with '# ' 1
E265 block comment should start with '# ' 57
E266 too many leading '#' for block comment 78
E271 multiple spaces after keyword 5
E272 multiple spaces before keyword 2
E301 expected 1 blank line, found 0 98
E302 expected 2 blank lines, found 1 55
E303 too many blank lines (2) 7
E304 blank lines found after function decorator 1
E402 module level import not at top of file 43
E502 the backslash is redundant between brackets 3
E704 multiple statements on one line (def) 1
E711 comparison to None should be 'if cond is None:' 4
E731 do not assign a lambda expression, use a def 155
W191 indentation contains tabs 2
W291 trailing whitespace 43
W293 blank line contains whitespace 15
W391 blank line at end of file 15
W503 line break before binary operator 58
I think that these should be removed. Let me know your opinion
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/217#issuecomment-225416784,
or mute the thread
https://github.com/notifications/unsubscribe/AAjO_ZJoZzSpTLcHP507AoFlMlkzJCFBks5qK8L1gaJpZM4GiS_S
.

So I should start fixing pep8 warning or add clauses first in existing pylintrc?

We can't really add the clauses until the code is clean, as currently set
up, pylint errors are a test failure blocking a commit.
On Fri, Jun 17, 2016 at 00:32 Taranjeet Singh<EMAIL_ADDRESS>wrote:

So I should start fixing pep8 warning or add clauses first in existing
pylintrc?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/217#issuecomment-226700696,
or mute the thread
https://github.com/notifications/unsubscribe/AAjO_RQmNv_b1B85iA5QO86TrPj3kw9iks5qMk2igaJpZM4GiS_S
.

@staranjeet I don't think we should ignore any pep8 errors, E501,E111,E114,E701.
Every developer should config his/her Python editor with a full PEP8 checker.
Like the coding style of OpenStack, the largest open source project in Python, says,

Step 1: Read pep8
Step 2: Read pep8 again
Step 3: Read on

I know that TensorFlow has made some declaration about E111 in Coding Guide, but, do you want every developer to change his/her Python editor configuration to ignore the PEP8 E111?
TensorFlow's coding style should be corrected, not everyone's PEP8 rules.

You can use a tool autopep8 to fix all of the PEP8 things. Though this may effect the git blame now, it will take a good effect to the future.

So I can start working on this?. What should be the line length that we are following for E501?

@ohmystack @martinwicke : any comments?

@martinwicke any direction here for @TroJan who is excited to work on this.

E501 should be 80 characters. I encourage you to do this, I'm not terribly concerned about git blame per se, it's the nature of things.

Any news on this? We have autopep8 set up now, but it's doing fairly minimal things so far (and @yifeif hacked a version to do 2 space indent).

@martinwicke @yifeif
Though I don't understand why TensorFlow team insists on 2 space indent, which is invalid in both PEP8 and Google Python Style Guide, hacking the autopep8 for 2 space indent is a bad idea.
If the TF uses 2 space indent, which is a special case for most of the Python developers, please add a comment line at the beginning of all the files.
Like this,
#!/usr/bin/env python
# vim: tabstop=2 shiftwidth=2 softtabstop=2

Why? Please see: https://wiki.python.org/moin/Vim

Indentaion is very important for Python scripts as we all known.
Try not to hack the PEP8. Tell it explicitly in code.

Yes, 2 space indent is a bit of an accident, but here we are, and changing it is not a priority (and would invalidate 100% of our git blame, which is too valuable to lose).
I would also prefer an annotation for each file, but I don't believe that linter tools will respect vim comments, and vim will likely not respect pylint directives (which we'd be more likely to use).

I'd like to see this addressed too, my vim goes all red when I open TF code. Either adding a decent flake8 config (like in https://github.com/tensorflow/tensorflow/pull/4511#event-804342012) and vim header or fixing the 2 space thing would be fine with me.
For the time being, I'm just putting a .flake8 file in my local tree, that solves everything being red and I still have some descent linting. Not sure about the vim-config, anyone know how to configure vim to have project based overrides? For example to use the config suggested above, but only when starting vim in a specific directory or set of files?
Also, you should check out: https://www.youtube.com/watch?v=wf-BqAjZb8M (just auto-pepping the entire code-base is not a solution)

@yifeif is working on this. I'll reassign.

I'd like to +1 migrating to the standard 4-space indentation. I've seen quite a few places in the tensorflow codebase with a mix of 2-space and 4-space indentations in the same file. This is really not great.
Also like to +1 the comment above to extend the 80char limit

also on the point about git blame, we can always just use git blame -w which will ignore whitespace only changes. So we can still get the desired information fairly easily
-w
           Ignore whitespace when comparing the parent's version and the child's to find where the lines came from.

In some of these checks, we are bound by google's style. Therefore, I think the amount of enforcement for pep8 we have in place right now will stay.
Closing this issue, please reopen if you think there needs to be more discussion on this.


gopass show -o is ineffective

When you want to really only have the password (e.g. for a script), gopass show has the --password, -o option:
m@x ~ gopass help show | grep only
--password, -o             Display only the password. Takes precedence over all other flags. (default: false)

However, this flag does not do anything, unfortunately. Here is a minimal example:
m@x ~ gopass generate testpassword 31
✅ Password for entry "testpassword" generated
✔ Copied testpassword to clipboard. Will clear in 45 seconds.
2
Copied to clipboard

m@x ~ gopass show testpassword
Secret: testpassword

iEg2h6skkaL74iHCwRm92hbtCOLYmcw

m@x ~ gopass show -o testpassword
Secret: testpassword

iEg2h6skkaL74iHCwRm92hbtCOLYmcw

mcn@x270 ~ gopass show --password testpassword
Secret: testpassword

iEg2h6skkaL74iHCwRm92hbtCOLYmcw

The actual file instead only contains one line with the password:
m@x ~ gpg -qd .local/share/passwordstore/testpassword.gpg
iEg2h6skkaL74iHCwRm92hbtCOLYmcw

This gopass is installed from Arch community repo
m@x ~ gopass --version
gopass 1.12.0 (2021-02-11 21:15:26) go1.15.8 linux amd64

Ah, my bad. This might be my fault.
Should be easy to fix.

thanks for jumping right in! :+1:


dup words in javadoc

There are some occurrences of "for for" in the javadoc for a few classes. Minor issue, obviously. It was picked up as part of a wider cleanup of such errors in the ML9 documentation.
I'll submit a pull req for it if I can sort out the how.

The fixes look good.  I merged them.

Looks good. Thanks.