fix(copy): handle multiple references to ArrayBuffers

Looking at #13398 I realized that typed arrays don't put copied ArrayBuffers onto the copy stack. So ArrayBuffers referenced from multiple TypeArrays wouldn't keep those references when copied.

overall, it looks fine, but can you update the PR to reflect the fact that #13641 landed?


Method decreaseApproval in unsafe

Method decreaseApproval in StandardToken.sol is unsafe.  Here is the scenario.

Bob is allowed to transfer zero Alice's tokens
Alice allows Bob to transfer 100 of here tokens via approve or increaseApproval method and transaction is executed successfully
Alice sees that Bob is now allowed to transfer 100 of her tokens
After some time, Alice uses decreaseApproval method to decrease by 100 the number of her tokens Bob is allowed to transfer and transaction is executed successfully and proper Approval event was logged
Alice sees that Bob is allowed to transfer 0 of her tokens
Now Alice may think that once decreaseApproval call was executed successfully, then Bob didn't manage to transfer any of her tokens before the allowance was decreased, but this assumption is wrong.
Actually, Bob may or may not had transferred Alice's tokens before allowance was decreased, and Alice has no easy way to know for sure whether Bob transferred her tokens or not

Method decreaseApproval should fail in case current allowance is lower than requested decrease.

Agreed.

Hi @mikhail-vladimirov, thanks for reporting! (And thanks for the overall thorough review.)
I thought about this and I'm not sure I agree with either the risk or the proposed mitigation. At point 4, once Alice sees her call succeeded, she would be able to see any Transfer events if Bob had managed to make a transfer, and in fact she would see her own reduced balance.
Furthermore, suppose we changed decreaseApproval to fail if allowance was lower than the request decrease. If Alice attempts to decrease Bob's allowance to zero, and Bob manages to transfer half of his allowance before the decrease, the call to decreaseApproval would fail and then Bob would be able to spend the other half! This is in my opinion worse than the current risk. What do you think?

she would be able to see any Transfer events if Bob had managed to make a transfer

If Bob had transferred Alice's tokens to Carol, not to himself. it would be very non-trivial to know that this transfer was done by Bob, not Carol.

Bob would be able to spend the other half!

Bob anyway had a chance to get all the allowed tokens, and he had this ability for a long time, nothing bad if he will be able to do this a little more time.  Bad thing is not that Bob is able to get tokens, this is actually normal, because Alice herself allowed him to do this.  Bad thing is that after changing the allowance, Alice does not know how much of the original allowance was actually used by Bob, and thus does not know how much tokens she owes Bob, or Bob owes her.

If Bob had transferred Alice's tokens to Carol, not to himself. it would be very non-trivial to know that this transfer was done by Bob, not Carol.

This is a different problem that I completely agree with, which is the lack of a spender parameter in Transfer events. We could add a new event that allows to keep track of this, it's a pity that there isn't a standard one.

Bob anyway had a chance to get all the allowed tokens, and he had this ability for a long time, nothing bad if he will be able to do this for little more time.

Suppose "Bob" is a smart contract that is programmed to make a transfer with a certain frequency and you want to stop it immediatey. I agree that approve with zero is the correct thing to do here, but it may not be immediately apparent from the function signatures and someone might use decreaseApproval.
I share some of the concerns but I think most of the risk can be mitigated by logging how much an approved spender has transferred. Do you agree?
I'm open to hearing more opinions though. Have you reported this elsewhere?

There are absolutely no problems with Bob being able to transfer as many tokens as Alice approved to him until Alice revoked the approval.  This is how token contracts are supposed to work.  Regardless of what Bob does, once Alice approves some tokens to Bob, she approved, and it is her fully responsibility to make sure Bob is a good guy before approving anything to him.
The real problems with ERC20 are:

In some cases Bob may transfer MORE Alice's tokens than Alice event intended to approve to him.  For example, Alice approved 100 token, then she wanted to change this to 101.  While Alice never intended to allow Bob to transfer more than 101 of her tokens, Bob may actually transfer 201 which is really bad.
In some cases Bob may transfer as many Alice's tokens as Alice approved to him (which is fine) but may make it look like he didn't transfer them (which is really bad).  Thus Bob may, for example, avoid paying Alice for tokens he actually got from her.

In current form, decreaseApproval addresses the first problem but didn't address the second one which is only slightly less dangerous.

Hi Guys, I've enjoyed reading the discussion. Thx, for pointing out the vulnerability @mikhail-vladimirov!
Currently we have a soft condition requiring that the deduction is lower than allowance or the allowance is reduced to zero. How about making it stronger and requesting that the current allowance is equal to a state known by transaction sender.
function decreaseApproval (address _spender, uint _decreaseFrom, uint _decreaseBy)
...
require(allowed[msg.sender][_spender] == _decreaseFrom);

Using this approach we will make it sure that the operation exactly satisfies the intentions of the sender and the current state of the contract matches state know by the sender. It will also make the whole process of allowance update atomic and prevent race conditions. Actually, the proposed design will be a form of Compare and Swap pattern which is widely used in concurrency programming.

This should work, but in this case you probably need to remove "decrease" from the method name and make it able to change allowance in either direction.

I like @jakub-wojciechowski's proposal because it does make the semantics quite apparent from the function signature. I feel like I've seen the Compare and Swap function proposed before as a solution to the approve race condition.

I'm really glad that you liked it. I'm certainly not the one to take credit for the Compare and Swap pattern as it's one of the most widely used lock-free synchronisation strategy and probably older than me :)
I agree with @mikhail-vladimirov that it'd be better to merge both decreaseApproval and increaseApproval in single method. What's your view on that @frangio ?

Here is an example of compare and set approve function in ERC20 token smart contract: https://github.com/abdk-consulting/icos-token-contract/blob/master/src/sol/ICOSToken.sol#L106

@mikhail-vladimirov this is not ERC20 compliant. https://github.com/OpenZeppelin/zeppelin-solidity/issues/438

that example is not ERC20 compliant

It is compliant with original ERC20.  It does not strictly comply with EIP-20 though, because it was created before EIP-20 was finalized.

it's been a while that approve only took 2 parameters in the draft

Oh, now I see what did you mean when said that contract I referred to is not ERC20 compliant.  Of cause that contract has standard two-argument approve method as well, you probably just didn't noticed it because it is defined in base contract that contract inherits from: https://github.com/abdk-consulting/icos-token-contract/blob/master/src/sol/AbstractToken.sol#L83

I'd go ahead with a CAS function. What should we name it? It's technically possible to call it approve with three parameters but it could be confusing.

since safeApprove is taken, maybe secureApprove?

Interesting topic. I agree that decreaseApproval is currently unsafe, but it seems to me it suffer exactly the same problem of the approve method, so I still think that the safest approach is the set-0,check-balanche,think-how-much-allowance-you-want-to-set,set-allowance-again one.
I don't feel it is complicated to understand what happens to tokens, and in any case I believe that any possible difficulty in understanding what has happened in the past, it is surely to be preferred to the uncertainty of what will happen in the future.
When I send a TX, I pay for that, and I want an effect. On the contrary, with implementation of CAS the spender has the power to completely stop the effect of my TX. Moreover, if the check is implemented with require I pay the maximum of gas because the contract throws an exception.
The CAS approach is an interesting solution in concurrency programming but in the execution of Ethereum transactions there's no concurrency at all, so it think that pattern does not fit very well.

@Neurone

I still think that the safest approach is the set-0,check-balanche,think-how-much-allowance-you-want-to-set,set-allowance-again one.

The problem here is with 'check-balance' step.  If your account is quite busy, tokens are constantly going in and out and you approved transfers from it to many people, then your balance is constantly changing even without your intervention and checking balance will tell you nothing about whether the one whose allowance you just tried to revoke managed to use it in the very last moment or not.

Correct, but the difficulty to understand what is happening on your balance is not related to your intention to modify the allowance at all, that problem is there in any case. To monitor your token balance you need to establish an app that reads all blocks and transactions related to your token contract, and then you can understand who moved the tokens looking at the sender of the transacion.
So, let's say you have implemented an app that monitor your tokens, do you still need a CAS approach? If the answer is no, as I think, then I disagree to define the CAS approach as a best practice for setting allowance.

@Neurone

difficulty to understand what is happening on your balance is not related to your intention to modify the allowance at all

This relation exists and you described it in the schema you suggested as the safest way to change allowance: set-0,check-balance,think-how-much-allowance-you-want-to-set,set-allowance-again
Difficulty to understand what is happening on your balance directly affects you ability to perform check-balance step and thus directly affects your ability to execute the whole procedure.

So, let's say you have implemented an app that monitor your tokens, do you still need a CAS approach? If the answer is no, as I think, then I disagree to define the CAS approach as a best practice for setting allowance.
The answer is yes, you still do. Because the balance could still change between the moment you check your balance on your app and the moment your transaction to set the new allowance is recorded.

I'm not convinced yet :)
I'm thinking about this workflow:

Bob can move my tokens because I allowed him to do so, let's say for 200 tokens
During allowance period Bob moved 20 tokens, so now the remaining allowance is 180 tokens
Now I want to change the allowance to 50, so I send an approve(Bob, 50)
I wait some blocks, monitoring my tokens and Bob's transactions
I understand what happend and I calculate if some tokens was moved, and I have three options:
a) Bob moved more tokens that I wanted him to move with the new limit, let's say 80: sorry, better luck next time. But at least now Bob can't move the remaining 100 tokens anymore
b) Bob moved less tokens then I want him with the new limit, let's say 20 tokens. But now Bob can't move tokens anymore, so I choose the new limit, let's say 30 tokens, and I submit an approve(Bob, 30) transaction
c) Bob don't moved any tokens and now the Bob's allowance is set to 50

At step 3, if I send a decreaseApproval(Bob, 180, 130) transaction with a CAS approach, the differences in the above workflow are at step 4.a and 4.b. In both cases:

My TX is rejected
I pay the maximum gas cost
Bob is still able to move all remaining previously allowed tokens

So, why decreaseApproval(Bob, 180, 130) with CAS should be considered safer then approve(Bob, 0)?

@Neurone

I wait some blocks, monitoring my tokens ...

If your account is busy, tokens are constantly going in and out, and many people are allowed to transfer from it, then monitoring your tokens will not help because your token balance will be changing both ways all the time even without Bob's interventions.

... and Bob's transactions

Assuming that Bob is a contract (reasonable assumption, because approve/transferFrom is often used to send tokens to contracts), you cannot do this using standard tools and Web3 API.  You have to either run modified node that is able to capture internal transactions performed by contracts, or to run sophisticated script inside non-modified node, which script will capture and trace all transactions trying to find internal transactions performed by Bob.  Both ways are too complicated to be recommended as a general way to increase safety of token operations.

Yes, again, I already agreed with you on this point: monitoring tokens movements is difficult (not impossible). This monitoring is difficult in any case, and using decreaseApproval (with or without CAS approach) does not solve the necessity of monitoring.
Another point is this: if you implement a CAS approach inside the decreaseApproval(Bob, 180, 130) function you don't have any security advantages compared to the approve(Bob, 0) function, only drawbacks.

@Neurone

This monitoring is difficult in any case, and using decreaseApproval (with or without CAS approach) does not solve the necessity of monitoring.

CAS approve solves problems mentioned in original article as well as the problem mentioned in original description of this issue.  Could you please describe scenario where monitoring is still needed for safe management of tokens and allowances even if CAS approve would be available?

@Neurone that depends on how you use approve.
In my opinion, you should only approve the exact amount of tokens that should be withdrawn by the other party. Not more.
And the CAS approach, in this case, guarantees that the other party didn't withdraw anything before you change the approved amount.

@mikhail-vladimirov Sorry but I can't :-) basically because I think the CAS approach in the decreaseApproval does not solve the problem mentioned in the original description of this issue, that was step 6:

Now Alice may think that once decreaseApproval call was executed successfully, then Bob didn't manage to transfer any of her tokens before the allowance was decreased, but this assumption is wrong.
Actually, Bob may or may not had transferred Alice's tokens before allowance was decreased, and Alice has no easy way to know for sure whether Bob transferred her tokens or not. Actually, Bob may or may not had transferred Alice's tokens before allowance was decreased, and Alice has no easy way to know for sure whether Bob transferred her tokens or not

I simply don't think is a good approach blocking a TX that want to modify the state, just because I can't easily understand that state.

 I simply don't think is a good approach blocking a TX that want to modify the state, just because I can't easily understand that state.
@Neurone I think it's far better if the approver is a contract.

@SylTi once approved, no subsequent TX can guarantee to block the other party to widthdraw that amount. If CAS approach is implemented, you are enslaving the result of your TX to the behaviour of someone else. You can't control that behaviour, so you don't know if TX will be executed or it will throw an exception. I believe that is not a good approach having this kind of uncertainty when calling a smart contract's function.
@mikhail-vladimirov  @SylTi  Clearly we have different visions about smart contract design. It's not a problem for me, let's have a separated decreaseApproval function with CAS approach, but I'll continue to recommend the approve(Bob,0) one :)

We've got a very interesting discussion in here. There is no silver bullet to solve all of the problems with the approve method. Imho, the best solution is to have 2 separate methods:

The old decreaseApproval with the small improvement of returning (instead of the boolean success flag) the value of the final subtractedValue. That will help to mitigate the original problem when the current approval is less than the intended modification by signalling to the caller what the effective reduction was.  What do you think about it @mikhail-vladimirov ?

The new CAS approach which has the advantage of an atomic update that rigorously checks for entry conditions.

It will be up to the users whether they want their transaction to be effective immediately with the risk of inconsistency with their expectations or to perform the update only under strict preconditions. It slightly reminds me the battle between optimistic and pessimistic locking in relational databases.

@jakub-wojciechowski

of returning (instead of the boolean success flag) the value of the final subtractedValue

It is not possible via standard tools and Web3 API to get return value of contact call executed non-locally (i.e. mined as a transaction), so this will not help a lot.  This probably will be changed in future (https://github.com/ethereum/EIPs/pull/658), but as for now, this is not a solution from my point of view.

Good news. EIP685  was merged in August and it was released few days ago with Geth 1.7.

Thanks for the discussion guys, after some consideration we've decided to go with the original proposal by @3sGgpQ8H.


Adds signal tests

@such3r - you can merge branches in (and delete feature branch) once approved.

Git history is fully preserved for merged branches so we can always recreate if needed.


test(jest): avoid flaky modules test

The modules-* test about dependency detection of react-dom in react-instantsearch-hooks is flaky with regular jest workers, as I believe sometimes the jest mock of a module becomes global and still relevant for the next test.
Ideally we wouldn't need to do such tests when react-dom is exclusively user-provided, but for now hopefully running the tests in band will avoid that test being flaky.
test plan: run the unit tests a couple of times on CI and see it pass consistently

too bad, this doesn't work :(


UPDATE User Friendly Validation Rule Error Msg

Issue 174

thanks for the pull request.  I will integrate this next week or so when i am back from vacation.


Add option to ignore https certificate validation

Hi,
While trying to connect to a web server with self signed certificates, the connection is refused, because the certificates don't validate.
Can an option to ignore the certificate validation be added?
Regards

The canonical (Node.js) way of disabling certificate validation is by setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to 0.
Someone else asked the same question at #16.


Upgrade qBittorrent

In future, please also include the new version number in the commit message.

Sure, sorry about that. Thank you!


Delete outdated files

Many files were renamed between 0.05wip1 and 0.05wip2, but the old versions weren't deleted properly when the project was imported to GitHub.

Yeah I just kinda plopped them into here - since I haven't had the chance to play around with this enough yet (I've been pursuing a job opportunity) I didn't know what belonged and what didn't.


fix(ui): improve loading screen messages

Description:
Add more descriptive loading messages to the Bolt loading screen where possible

Motivation and Context:
fix #1178

How Has This Been Tested?
Manually
Tested connection to a local and remote nodes

Screenshots (if appropriate):

Types of changes:
UX improvement

Checklist:

[x] My code follows the code style of this project.
[x] I have reviewed and updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes where needed.
[x] All new and existing tests passed.
[x] My commits have been squashed into a concise set of changes.

Coverage decreased (-0.1%) to 18.971% when pulling de9076e7b4769d85f7c3dba73b081e23396cf731 on korhaliv:feat/loading-state into 0c04fc432bf5d581bf2e5829a62e834dcd10505d on LN-Zap:next.


Navbar: Toggle button isn't accessible when is in container on iOS

browser bug
When navbar toggle button (button.navbar-toggler) is within container, it has bad accessibility.
Check the video - there are two navbars. The first is "normal" and the second is with div.container. When you are trying to click on toggle button, mostly nothing had happend.
codepen
Reproduced on Safari browser, iPhone 5S, iOS 10.0.1.
On macOS Safari it works well as on first picked Android device.

Dupe of #21590.


fix(rest): add response error payload to Status message

The response payload was read into the spill buffer, but was not being included in creation of the Status value.
Using testing_util::ScopedEnvironment env("GOOGLE_CLOUD_CPP_STORAGE_USE_LEGACY_HTTP", "yes"); on the StreamingWriteFailure test, I modified the checks in the tests to verify the error message the legacy implementation provided. The current implementation with the Rest Library now satisfies those same additional checks.
fixes #9947

This change is

google/cloud/internal/curl_impl.cc line 659 at r2 (raw file):
Previously, scotthart (Scott Hart) wrote…
Good point. There could be data in the user provided buffer as well.

But also in neither.  Maybe you got lucky / unlucky and stopped reading data from libcurl (i.e. when detecting the end of the headers) before a full error message was in the user data and/or the spill buffer.

google/cloud/internal/curl_impl.cc line 659 at r2 (raw file):
Previously, scotthart (Scott Hart) wrote…
So this block of code only executes if curl_closed_ == true. The only places we set curl_closed_ = true is in ~CurlImpl and in CurlImpl::PerformWork after a call to curl_multi_perform sets the number of running_handles to 0 indicating that there are no longer any transfers in progress. Considering that our write callback must handle all bytes libcurl passes to it or libcurl errors, this seems definitive that there is no more data to be read for this request/response.

Granted.  But then maybe a previous call to ReadImpl() consumed part of the response.  This would still return a google::cloud::Status() with a partial payload.
Regardless of whether any of these conditions, we can can make this work correctly by removing code, see #10051.   There is no need to convert an HTTP status code to a google::cloud::Status because we do that at a higher level:
https://github.com/googleapis/google-cloud-cpp/blob/6d3a1c5e7e8b19a80989f4c1faa03814b22d0836/google/cloud/storage/internal/rest_client.cc#L73-L80


✨ chore: Better usability to directly pass domain

Description

Before
After

This PR would make the usage docs example actually work :)
Try now:

Open in Gitpod:

Run:./audit-a11y example.com

Thank you! good catch


Vulkano panics with u64 GLSL extension on OSX

I'm trying to run the following shader on macOS Monterey, Version 12.6, Apple M1 Max, Rust 1.66.0-nightly, Vulkano 0.31.0:
#version 460
#extension GL_ARB_gpu_shader_int64 : enable

layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in;

layout(set = 0, binding = 0) buffer Data {
  uint data[];
} buf;

void main() {
  // creates a 64-bit uint, 'foo', with value 12

  uint64_t test = 0;
  uint idx = gl_GlobalInvocationID.x;
  buf.data[idx] = 1;
}

It panics with the following error:
thread 'main' panicked at 'failed to create shader: SpirvCapabilityNotSupported { capability: Int64, reason: RequirementsNotMet(["feature `shader_int64`"]) }', src/main.rs:78:6

Why isn't the extension supported, if it is available on Metal? I thought the Apple M1 Max had support for 64-bit ints and atomics; is this incorrect? Or should I be using a different extension? Where is that documented?

Have you enabled the shader_int64 feature when creating the device?

I wasn't aware of that. I've tried as in:
  let (device, mut queues) = Device::new(
      physical,
      DeviceCreateInfo {
          enabled_extensions: DeviceExtensions {
            khr_shader_atomic_int64: true,
            ..Default::default()
          },
          queue_create_infos: vec![QueueCreateInfo {
              queue_family_index,
              ..Default::default()
          }],
          ..Default::default()
      },
  )
  .expect("failed to create device");

And now I get a:
failed to create device: ExtensionRestrictionNotMet(ExtensionRestrictionError { extension: "khr_shader_atomic_int64", restriction: NotSupported })

Does that mean M1 Max GPUs aren't capable of doing atomic 64-bit operations, or is it just a matter of Vulkan not recognizing it?

I mean the shader_int64 feature, not the khr_shader_atomic_int64 extension. The former is for 64-bit integers in general, the latter is for atomic operations specifically.

Oh oops, sorry. Yes, you're correct, enabling the shader_int64 does fix the original issue. I do need 64-bit atomics though, so guess I'm still out of luck?

I'm afraid so. When something isn't implemented by a Vulkan drivers, there are multiple reasons why that could be the case. The hardware necessary for implementing it (efficiently, or at all) may be missing, or the hardware may be there but it hasn't been implemented yet in the driver. If you know that the functionality is there in Metal, then it's probably the latter case. You may want to ask the driver writers (MoltenVK?) about it.


Add new BBC [icode] tag for inline code

Title says what it is .... [icode]some thing awesome[/icode]

Codecov Report

Merging #3637 (c99178e) into development (35642c3) will increase coverage by 6.78%.
The diff coverage is 70.00%.

@@                Coverage Diff                @@
##             development    #3637      +/-   ##
=================================================
+ Coverage          30.53%   37.32%   +6.78%
+ Complexity         16028     6958    -9070
=================================================
  Files                429      213     -216
  Lines              74886    37616   -37270
=================================================
- Hits               22870    14039    -8831
+ Misses             52016    23577   -28439

Impacted Files
Coverage Δ

sources/ElkArte/BBC/PreparseCode.php
49.37% <58.33%> (-23.99%)
:arrow_down:

sources/ElkArte/BBC/Codes.php
87.10% <87.50%> (-4.40%)
:arrow_down:

...ElkArte/Mentions/MentionType/CommonConfigTrait.php
0.00% <0.00%> (-100.00%)
:arrow_down:

sources/ElkArte/Cache/CacheMethod/Filebased.php
9.75% <0.00%> (-82.93%)
:arrow_down:

sources/ElkArte/Notifiers/Methods/Notification.php
18.75% <0.00%> (-81.25%)
:arrow_down:

sources/ElkArte/Notifiers/Methods/Email.php
36.36% <0.00%> (-63.64%)
:arrow_down:

sources/ElkArte/BBC/BBCParser.php
11.82% <0.00%> (-63.36%)
:arrow_down:

sources/ElkArte/BBC/HtmlParser.php
11.76% <0.00%> (-62.75%)
:arrow_down:

sources/ElkArte/Cache/CacheMethod/Apc.php
20.00% <0.00%> (-57.15%)
:arrow_down:

sources/ElkArte/Search/API/Standard.php
0.00% <0.00%> (-54.88%)
:arrow_down:

... and 345 more

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 866ff7a...c99178e. Read the comment docs.


VSBuild & MSBuild fails when target is specified

Required Information
Bug, VSBuild@1 & MSBuild@1
Environment
Server: Azure Pipelines
Account: WriteUpp
Project: WriteUpp
Build Number: 20210528.4 onwards
Agent: Hosted
Queue: Azure Pipelines
Image: windows-latest
Issue Description
We have a single solution with multiple web projects and shared libraries. We build and deploy each web project in separate jobs within the same pipeline. We specify a target parameter in the build to ensure that only the required project is built in each job.
This was working until last week. At some point last week the build tasks intermittently failed, until Friday, at which point none would run successfully.
For each project in the solution that isn't the target, the same error is generated:
##[error]X.csproj(0,0): Error MSB4057: The target "Projects\Y" does not exist in the project.

This is an example of one of the tasks. We use VSBuild, but I have confirmed that the same error occurs with MSBuild.
          # MSBuild
          - task: VSBuild@1
            inputs:
              solution: "$(solution)"
              msbuildArgs: '/t:Projects\Desktop /clp:ErrorsOnly /verbosity:m /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactStagingDirectory)"'
              platform: "$(buildPlatform)"
              configuration: "$(buildConfiguration)"
              logFileVerbosity: "minimal"
            displayName: "Build solution"

Running the build command locally runs without error. Running the pipeline tasks without the target parameter works, but obviously builds the whole solution. I also tried rolling back to a previously working build, which now also fails.
Task logs
33.txt

This seems to be related to recent Visual Studio update on images - since there was no changes for pipeline tasks.

That seems to be confirmed by this ticket, https://github.com/actions/virtual-environments/issues/3475.

I can confirm the targets cli parameter is work on VSBuild 1.187.0.


limit "offset_from_center"

limit "offset_from_center" to the maximum actual track width.

to be checked if already implemented

tested with current development branch (commit: d029c1e22b7da561b80f21df946583e6d123a403):
After navigating to one of the outside lanes and pressing the lane change button towards the boarder multiple times, the first press on the lane change button towards the middle of the track caused a lane change towards this direction. Therefore this behaviour is already implemented.

reviewed with @iav-DaBi


[Feature Request] Find with Special Characters

I can't find anywhere were this has been requested before, but the ability to search with special characters would make my life about a 100x easier. I work primarily with PHP, and the fact that I can't include the "$" when searching for a variable in a file makes things a lot more difficult. Are there plans to support searching with characters like "()", "$", "*"?

If you are doing a regex search (i.e. the .* button) then $ is a special character and needs to be escaped as \$. Brackets uses the JS RegExp engine, so you can find all special chars here: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions

The fact that I can just escape them changes my life haha. Thank you.

Glad it helped. Closing.


Scrapping break errors

Dear David,
Thanks to your intervention now the script don't stop anymore at 42 posts, but I’m still having the other problems:
I don’t get the comments' text and neither the correct number of comments of a single post:

click button for loading more
error on clicking - next try (tried: 0)comments:26)
click button for loading more
error on clicking - next try (tried: 1)comments:26)

INFO [2018-11-13 11:25:17] found comments2
ERROR [2018-11-13 11:25:27] ERROR something went wrong getting user_commented
ERROR [2018-11-13 11:25:27] ERROR something went wrong getting comment
ERROR [2018-11-13 11:25:38] ERROR something went wrong getting user_commented
ERROR [2018-11-13 11:25:38] ERROR something went wrong getting comment
INFO [2018-11-13 11:25:38] 0 comments.

I tried with two the different accounts, a bigger one https://www.instagram.com/scottecss/, and also https://www.instagram.com/fibrax/ since it has very few post and comments.
I’m attaching to you the JSON file, the commenters list, and the terminal log of the scottecss account.
scottecss.zip
Thanks for your help,
D.
Originally posted by @davidetroise in https://github.com/timgrossmann/instagram-profilecrawl/issues/103#issuecomment-441128806

I see some errors, such as Unable to locate element: {"method":"tag name","selector":"span"}
Yea there are some problems in this code, such as user_commented is tried to be declared, and then, no matter if try statement succeeds or not, it is used in another code.
So if that try statement fails and brings exception, user_commented is still called and that cause error.
I'm busy now I'll look into it more tomorrow.

I kept on making some tests but I'm still having the same results, the script still gives me the same errors. Have you had a chance to look into this?
Thanks, D.

I fixed this in #133, the problem is that the button is sometimes obscured by a popover (probably the GDPR cookie notice).


Deprecation warning due to Node 16

Node 16 is now deprecated. Because of this, when using this action, you'll see warnings.
Please update the action to Node 20.

Thank you @Piedone for opening the issue, this is in our radar. Will keep the issue posted with progress,

[like]  Vamsi GollapuD reacted to your message:

From: Surender Singh Malik @.>
Sent: Wednesday, October 25, 2023 9:15:05 AM
To: Azure/webapps-deploy @.>
Cc: Vamsi GollapuD @.>; Assign @.>
Subject: Re: [Azure/webapps-deploy] Deprecation warning due to Node 16 (Issue #372)
Assigned #372https://github.com/Azure/webapps-deploy/issues/372 to @sgollapudi77https://github.com/sgollapudi77.
—
Reply to this email directly, view it on GitHubhttps://github.com/Azure/webapps-deploy/issues/372#event-10764535515, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AUM5CMJ2DSXJWRMU6YIHXVDYBDKBTAVCNFSM6AAAAAA6OO2J4GVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJQG43DINJTGU2TCNI.
You are receiving this because you were assigned.Message ID: @.***>

Thank you!

Hi @Piedone ,  can you please paste the screenshots where you see this warning?

This is because this line: https://github.com/Azure/webapps-deploy/blob/e0d17a2aa934d0d1d4a1a2ee8013df2437122cd3/action.yml#L51

Thanks, @Piedone this helps. We'll look into this.

I'm not sure if your team is responsible on the Azure portal side for Node versioning, but it prevents us from using Node 20 there as well:

@nathanchase - The LTS version of Node 20 was launched in October. We’re currently in the process of integrating Node 20 support into App Services. This feature is expected to roll out in the upcoming weeks. Stay tuned for further updates from us.

@nathanchase NODE 20-LTS is available on Linux App Service. In case you are using Windows App Service, it will be available in upcoming weeks. Thank you for your patience and feedback, appreciate it!

Thank you for the update!

Any news here? After not showing them for a while, GitHub now shows the deprecation warning again.

fwiw, #393 should resolve this

v3.0.1 addressed this.


Updating ENB with latest version

ENB is showing out of date information.
https://kerbalstuff.com/mod/411/Enhanced Navball is an out of date version.

Can't really fix this from our site, bug the mod developer to update on KS.

I can't at the moment, I am the mod developer but a 3rd party has uploaded
to KS, which I am trying to sort on there as well.
On 1 March 2015 at 16:56, Alexander Dzhoganov<EMAIL_ADDRESS>wrote:

Reopened #322 https://github.com/KSP-CKAN/CKAN-meta/pull/322.
—
Reply to this email directly or view it on GitHub
https://github.com/KSP-CKAN/CKAN-meta/pull/322#event-243985257.

There is one comma too many after the x_curse line. Please fix that and repush

I've fixed the comma in the next fix, but I have got control on KS and this is now up to date on the latest version, would you prefer a push or wait on KS?

In that case, maybe just close this PR and wait to KS. Automated stuff helps everyone :smiling_imp:


i18n bug on Transactions list page

Occasionally, "xx ago" timer gets Chineese translation:

https://explorer.near.org/transactions

@frol Frol, do you have any clue about how to reproduce this issue? I tried a few times but didn't find a way to reproduce it.

Observed this as well (US west coast). @think-in-universe maybe try using a vpn?

I managed to reproduce it:

Open the dashboard (/)
Click on “View All” next to Blocks

It is reproducible in any browser I have

thanks @bowenwang1996 @frol
I fixed it with #689


Improvement of CONTRIBUTING.md file 📄

Is your documentation request related to a problem? Please describe.
Hey, I'm in GSSOC'23 and I was looking at the CONTRIBUTING.md file and I feel it needs improvement
Describe the documentation you want to improve
For starters we need to have a specific pipeline for the work hence changing the git checkout and git commit statements is required. I can also make other adjustments/changes to improve documentation and make it more beginner-friendly
Additional context
After changes, it will look something like this @akshitagupta15june

Please assign me this task, add the gssoc label to the issue/PR

ok go for it but i can see metadatengine in the commands so please make it according to moksh

Sure I will . That screenshot was just a example


Not getting callback after successfully subscribed to any plan in ios

Version of react-native-iap 4.5.0
Version of react-native 0.62.2
Platforms you faced the error (IOS or Android or both?) IOS
Expected behavior Should get callback after subscribe any plan
Actual behavior Not getting callback from IAP after successfully subscribed any plan
Tested environment (Emulator? Real Device?) device
Steps to reproduce the behavior Just follow the code Integrate the plugin as per document and subscribe any plan in ios device

Might take a while

I have the same issue.  I've done both subscriptions and purchases of consumable products, and never get any callbacks.  I'm on react-native-iap 5.0.0  (tried with 4.6.1 and same issue)

+1

Update listener is called on first time when call this method if you don't clear Transaction then 2nd time it's not being called. Clear Transaction in iOS case when first time update listener is called in purchaseUpdatedListener() like below
purchaseUpdateSubscription = purchaseUpdatedListener(
async (purchase: InAppPurchase | SubscriptionPurchase) => {
      const receipt = purchase.transactionReceipt;

      if (receipt) {

        try {
          if (Platform.OS === 'ios') {
            finishTransactionIOS(purchase.transactionId ?? "");
          } else if (Platform.OS === 'android') {
           If consumable (can be purchased again)
          //   consumePurchaseAndroid(purchase.purchaseToken);
          //   // If not consumable
          //   acknowledgePurchaseAndroid(purchase.purchaseToken);
          }
          const ackResult = await finishTransaction(purchase);
        } catch (ackErr) {
          console.warn('ackErr', ackErr);
        }

      }

    },
  );

Update listener is called on first time when call this method if you don't clear Transaction then 2nd time it's not being called. Clear Transaction in iOS case when first time update listener is called in purchaseUpdatedListener() like below
purchaseUpdateSubscription = purchaseUpdatedListener(
async (purchase: InAppPurchase | SubscriptionPurchase) => {
      const receipt = purchase.transactionReceipt;

      if (receipt) {

        try {
          if (Platform.OS === 'ios') {
            finishTransactionIOS(purchase.transactionId ?? "");
          } else if (Platform.OS === 'android') {
           If consumable (can be purchased again)
          //   consumePurchaseAndroid(purchase.purchaseToken);
          //   // If not consumable
          //   acknowledgePurchaseAndroid(purchase.purchaseToken);
          }
          const ackResult = await finishTransaction(purchase);
        } catch (ackErr) {
          console.warn('ackErr', ackErr);
        }

      }

    },
  );


Add the flexdll race condition to the list of issues

Add the race condition in accesses to the global variables storing the last error in flexdll to the list of issues found (not yet fixed)

Thanks!


feat: add StarkDeFi - [reworked]

#182
@enitrat here's the new PR

one last ask: can you integrate this https://github.com/keep-starknet-strange/unruggable.meme/pull/195 to the starkdefi flow?

one last ask: can you integrate this #195 to the starkdefi flow?

alright 👍

@enitrat  #195 added.


#5538 Urlbuilder Pb in 1.9.X SecureSocketLayer Module

urlbuilder does not accept urls containing port, so removes port from ctor call, also refactors code for better efficiency work item : 5538

Well I changed this name...

Closing until the code is more professional.

What is not professional in this code ?

I believe some of your names are too beatiful: GetPortFomHostNameJoli?

Yes I already noticed some clerical near 'sectaire' approach here. Beware :).
But the code is solving an existing bug, what else should we expect from code ?

Oh we beware alright ;)
You're saying you care about fixing bugs but don't care about code quality, proper naming etc?

Just resubmit it with proper naming.

May be. Let's close this, you are a community. Anybody could solve this bug an write a better code than the existing one. I did it in a way. This is just a facette in the whole thing.

Back on this.
Orchard is so serious.
I 've just found this in TheThemeMachine layout.cshtml
@* as in beer *@
so you some doors opened for initiates...
:) :) :)

Thanks CSurieux for that fix. I had the issue that SSL Redirect always redirected to some 0.0.x.y page right after upgrade a site from 1.8.x to 1.9.x.
With this fix SSL works fine for me again!

You're welcome. :)

Just in case somebody else has this issue:
The fix from CSurieux was not sufficient for me:
Changing from a secured URL, Login, logout and clicking again on an unsecured URL lead to a http://www.somesite.com:443/ call which did not work.
This just happened on a production site where I could not debug. As ugly workound I Changed MakeInsecure method to set port hard-coded to port 80.
private string MakeInsecure(string path)
    {
        var settings = GetSettings();
        if (settings == null) return path;
        var insecureHostName = settings.InsecureHostName;
        int port = 80;
        var builder = new UriBuilder(insecureHostName.Split(':').First().Trim('/') + path)
        {
            Scheme = Uri.UriSchemeHttp,
            Port = 80 //GetPortFomHostNameJoli(insecureHostName, port)
        };
        return builder.Uri.ToString();
    }

This will work when you use Port 80, which is the default implementation.
But with another Binding than 80, you are out.
Have you used the good code for GetPortFomHostNameJoli(insecureHostName, port) ?
private static int GetPortFomHostNameJoli(string hostName, int defaultPort) {
int port = defaultPort;
if (string.IsNullOrWhiteSpace(hostName)) return port;
var splitSecuredHostName = hostName.Split(new[] { ':' }, StringSplitOptions.RemoveEmptyEntries);
if (splitSecuredHostName.Length == 2) {
int.TryParse(splitSecuredHostName[1], NumberStyles.Integer, CultureInfo.InvariantCulture,out port);
}
return port;
}

Yes sure hard-coded port 80 is bad, but for my quickfix for the site good enough.
I have used your GetPortFomHostNameJoli method but it sometimes did not work for me. Don't know why but it just happened.It is not reproducable on my dev machine so at the Moment no Chance to debug it.

@dpomt I don't remember exactly, so not sure it solves all scenarios... Maybe @CSurieux solution is better and needs to be considered...
But, did you try what is already applied to the dev branch (see #5202), but infortunately not applied to 1.9.x...
Best

@jtkech: thanks for the hint. i did not test try that fix but quickly looked at it now. I guess it should work as long as insecure URL runs on port 80? If your insecure port runs on a separate port this will not work?
For now, I will be ok with my fix of  CSurieux+hardcoded port 80.
I have another site on 1.9.x with SSL. I guess I will get back later (January?) on this Topic again.
I am wondering how other guys use SSL with 1.9.x since for me I did not get to work it properly without that fix.
Some fix should definitely go in 1.9.x

@dpomt not sure because you start with port = 80 but, normally, after the SetPort() will set the right port...

@dpomt you must input à full URL in thé SSL settings for this to work...


Docs + Examples

Properties:

[ ] Structured Decomposable (+vtree)
[ ] Decomposable
[ ] Deterministic
[ ] is_smooth

Transformations

[ ] forget
[ ] Smooth a circuit
[ ] Condition a circuit
[ ] Split and Clone

Queries

[ ] Evaluate
[ ] Model Counting
[ ] Equivalence Checking
[ ] Probabilistic Eq checking

Compilation

[ ] Describe what compilation is
[ ] Add small examples in the docs/notebooks.

In the docs, add links to other related libaries:

http://reasoning.cs.ucla.edu/sdd/
https://github.com/ML-KULeuven/LearnSDD
https://github.com/ML-KULeuven/LearnSDD
libra, writted in ocaml, could not find the link, probably misspled the name.

Not sure if relevant to this issue exactly, but one thing that might be helpful for end-users (it would be helpful to me at least) would be to explicitly state the return types of functions (as well as arguments). I often find myself having to look at the code to know exactly what do I have to pass as arguments/receive as returns. Ideally documentation should be more than enough for end-users. Plus the compiler probably could use some type hinting to speed things up. Not sure how you guys feel about this? I'm willing to do this boring refactoring and explicitly write argument and return types.

I'm certainly in favor, especially in the documentation strings.

Yeah this is very nice to have.
On the documentation side, I initially thought there would be an option in documenter.jl to generate the signitures  automatically, but last time I checked seems to be no option for it. I guess easiest option for now is too add them manually in the comments.
I think we have return types set for most functions, it's just they are not being added to the docs by documenter.
We can slowly start adding them, for example any time we modify something we add this type of info to the doc string. I will check to see whats a consistent way to add them nicely in the doc string. I think you can just copy paste the function signitures and add it in the comments as code.


[Feature]: Anchoring and locking windows

Describe the feature
Hi,
one of the reasons I haven't made the switch from AdiBags yet is not being able to anchor and lock the windows. Will/Could this be added?
Describe the implementation
Basically the same as it is in AdiBags. Having an anchor in the bottom right corner (mabye even changeable to the other corners?) and being able to lock the window in place, so the windows "grows" from there.
And in addition having the bank window to position itself next to the bags, so they don't overlap.

Came here asking the same. Now it anchors from the top left and grows downwards. But I have it on the right above a panel, rather than it now growing over the panel, I want it to grow upwards from an anchor at the bottom right please.

thirding this. i would also love to see ability to anchor the bank window relative to the bag window.

i am also +1 to this, I would really like a toggleable anchor


Bootstrap upgrade to v3

(Only https://github.com/cianclarke/fh-api-mapper/commit/354813eaf751d7dee6ce8586dabd2aa10e9452a3 needs review, the other is just removing a bunch of bootstrap and adding a bunch of bootstrap!)
cc

@lfryc Any chance you could review this?

@cianclarke sure, looks good to me.
I believe that there some small design glitches, but we can address them later once we have a big picture.

Running "jshint:all" (jshint) task

   lib/models/request.js
     76 |    return request.save(function(err, saveResult){
                                               ^ 'saveResult' is defined but never used.

>> 1 error in 30 files

(Fixed in https://github.com/cianclarke/fh-api-mapper/pull/5)


Branch delete task

Add delete task command

Include task cases for command and parser
Change test cases to use getAddressBook method in TypicalAddresBook
Change ordering of sample data and also ordering of addressbook in test cases for better testing of sorting command for tasks to be implemented.

closes #98

Codecov Report
Base: 71.68% // Head: 72.44% // Increases project coverage by +0.75% :tada:

Coverage data is based on head (7ff8339) compared to base (543f182).
Patch coverage: 87.87% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff              @@
##             master     #115      +/-   ##
============================================
+ Coverage     71.68%   72.44%   +0.75%
- Complexity      597      616      +19
============================================
  Files            98      101       +3
  Lines          1858     1887      +29
  Branches        226      229       +3
============================================
+ Hits           1332     1367      +35
+ Misses          458      453       -5
+ Partials         68       67       -1

Impacted Files
Coverage Δ

...main/java/seedu/address/commons/core/Messages.java
0.00% <ø> (ø)

.../seedu/address/logic/commands/AddStaffCommand.java
20.68% <ø> (ø)

.../java/seedu/address/model/util/SampleDataUtil.java
11.53% <ø> (ø)

...c/main/java/seedu/address/model/task/TaskMark.java
58.33% <33.33%> (-11.67%)
:arrow_down:

...task/TaskDescriptionContainsKeywordsPredicate.java
75.00% <75.00%> (ø)

...a/seedu/address/logic/commands/AddTaskCommand.java
100.00% <100.00%> (ø)

...eedu/address/logic/commands/DeleteTaskCommand.java
100.00% <100.00%> (ø)

.../seedu/address/logic/parser/AddressBookParser.java
100.00% <100.00%> (ø)

.../address/logic/parser/DeleteTaskCommandParser.java
100.00% <100.00%> (ø)

src/main/java/seedu/address/model/AddressBook.java
85.71% <0.00%> (+4.76%)
:arrow_up:

... and 2 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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


License file is missing

This was fixed in https://github.com/reactjs/prop-types/commit/0a53d3a34283ae1e2d3aa396632b6dc2a2061e6a


Prevent KVO from being triggered twice

When setting the color property, observers get notified twice. We need to explicitly tell Cocoa that we're calling willChangeValueForKey: and didChangeValueForKey: manually to prevent the automatic notification of observers.
I also tried to simply remove the calls to willChangeValueForKey: and didChangeValueForKey: but that triggered KVO even when the color was not actually updated.

Really sorry I’ve been neglecting your pull request! I will sort this out today. Thanks

No sweat! Just wanted to contribute some changes upstream again that seem to work well. 😊


Failed to run in ovos

I didn't try it in mycroftai first.
Just adding it to the skills.list got me the following error:
Collecting git+https://github.com/JarbasSkills/skill-iss-location.git (from -r /home/ovos/.config/mycroft/skills.list (line 3))   Cloning https://github.com/JarbasSkills/skill-iss-location.git to /tmp/pip-req-build-16ei2gf_   Running command git clone --filter=blob:none --quiet https://github.com/JarbasSkills/skill-iss-location.git /tmp/pip-req-build-16ei2gf_   Resolved https://github.com/JarbasSkills/skill-iss-location.git to commit 9497bbae3b9e6f9723f29848ed155807fd5cbf1b ERROR: git+https://github.com/JarbasSkills/skill-iss-location.git (from -r /home/ovos/.config/mycroft/skills.list (line 3)) does not appear to be a Python project: neither 'setup.py' nor 'pyproject.toml' found.

this skill is not yet packaged or updated for OVOS, so it can not be installed the same way as others, it needs to be manually installed mycroft style

one year later, it has been updated


Replace RuboCop Rails with RuboCop Minitest in feature_request.md

This pull request replaces RuboCop Rails with RuboCop Minitest in feature_request.md

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[ ] Squashed related commits together.
[ ] Added tests.
[ ] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[ ] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

Thank you!


Chinese UI designers don't like it. They prefer apple's design.

interesting

Flutter has Cupertino components

You love , or you don't love, it's there

When did you become the representative of the Chinese people?

When did you become the representative of the Chinese people?

难道不是吗？我开发4年多了，好几家公司都是设计的和苹果一样的，UI也是用苹果的，苹果的尺寸，看看国内的app 有几个用MaterialDesign

When did you become the representative of the Chinese people?

难道不是吗？我开发4年多了，好几家公司都是设计的和苹果一样的，UI也是用苹果的，苹果的尺寸，看看国内的app 有几个用MaterialDesign

想想喜欢MD的人，有点同理心。
Think about people who like MD, have some empathy.

你一个狗屎都吃不上的傻逼 还在这指指点点？

  你咋不代表亚洲呢？

That is why the UI/UX Design is so bad in China, because of the people like you.

Please simply close this ticket.

designers in question = dinosaurs

赶紧关了吧  别在这丢人现眼了

傻屌

你并不能代表中国人 别在这给中国人丢脸了

When did you become the representative of the Chinese people?

难道不是吗？我开发4年多了，好几家公司都是设计的和苹果一样的，UI也是用苹果的，苹果的尺寸，看看国内的app 有几个用MaterialDesign

你的眼界太小了吧，是不是在小公司待傻了

人家说了大实话,为什么要喷人家。
国内的现状就是 很多设计师给App的设计稿就是按照苹果的设计风格做的，特别是中小型公司。安卓版本的App也要做的想苹果。
无论你们怎么喷，以后终究会面临用flutter,做苹果风格安卓App。
不如在回复里面 给出解决方案。
软件届的何不食肉糜
english translation
He just tell the truth，why most people diss him and this issue.
Now at China Mainliand,  A designer usually gives out a Apple style desgin paper.
No matter iOS or Android developers, the both use the same desgin paper.
Andriod developer has to develop an Apple styled Android app.
It is better to give some suggest solution  rather than just diss him.

人家说了大实话,为什么要喷人家。
国内的现状就是 很多设计师给App的设计稿就是按照苹果的设计风格做的，特别是中小型公司。安卓版本的App也要做的想苹果。
无论你们怎么喷，以后终究会面临用flutter,做苹果风格安卓App。
不如在回复里面 给出解决方案。
软件届的何不食肉糜
english translation
He just tell the truth，why most people diss him and this issue.
Now at China Mainliand, A designer usually gives out a Apple style desgin paper.
No matter iOS or Android developers, the both use the same desgin paper.
Andriod developer has to develop an Apple styled Android app.
It is better to give some suggest solution rather than just diss him.

He said that Chinese designers don't like this design, but he can't represent all Chinese designers.

你凭什么代表中国人？
Can you represent all the Chinese?

人家说了大实话,为什么要喷人家。
国内的现状就是 很多设计师给App的设计稿就是按照苹果的设计风格做的，特别是中小型公司。安卓版本的App也要做的想苹果。
无论你们怎么喷，以后终究会面临用flutter,做苹果风格安卓App。
不如在回复里面 给出解决方案。
软件届的何不食肉糜
english translation
He just tell the truth，why most people diss him and this issue.
Now at China Mainliand, A designer usually gives out a Apple style desgin paper.
No matter iOS or Android developers, the both use the same desgin paper.
Andriod developer has to develop an Apple styled Android app.
It is better to give some suggest solution rather than just diss him.

He said that Chinese designers don't like this design, but he can't represent all Chinese designers.

So
Chinese UI designers don't like it. They prefer apple's design.  -> wrong
many Chinese UI designers don't like it. They prefer apple's design.  -> right
????
@lam-bun

Good boy. You must knowing that saying "Stay hungry, stay foolish". BUT, I can only see your foolish.
Ignoring the market cap, Google is the most greatest company in the world. You may LIKE Apple, but we LOVE Google veeeeeeeeeery much.
Guys, double click :six: :six: :six:.

人家说了大实话,为什么要喷人家。
国内的现状就是 很多设计师给App的设计稿就是按照苹果的设计风格做的，特别是中小型公司。安卓版本的App也要做的想苹果。
无论你们怎么喷，以后终究会面临用flutter,做苹果风格安卓App。
不如在回复里面 给出解决方案。
软件届的何不食肉糜
english translation
He just tell the truth，why most people diss him and this issue.
Now at China Mainliand, A designer usually gives out a Apple style desgin paper.
No matter iOS or Android developers, the both use the same desgin paper.
Andriod developer has to develop an Apple styled Android app.
It is better to give some suggest solution rather than just diss him.

He said that Chinese designers don't like this design, but he can't represent all Chinese designers.

So
Chinese UI designers don't like it. They prefer apple's design. -> wrong
many Chinese UI designers don't like it. They prefer apple's design. -> right
????
@lam-bun

你用G家的东西，遵循MD规范有什么问题？而且那是设计师的问题，跟flutter有啥关系。还提这样智障的issue，这不是丢脸是什么？

To whoever is watching this, this is totally a joke, shame on @Siomt. Haters can say whatever they want, but they just don't represent any group or community or country!
Please close this issue, this is ridiculous.
Peace & Love.

please close and lock this issue. 🤟

@tao1991123    Google提供了iOS组件[Cupertino(https://flutter.io/docs/development/ui/widgets/cupertino)  ，没有强迫用MD！！！

LOL

人家说了大实话,为什么要喷人家。
国内的现状就是 很多设计师给App的设计稿就是按照苹果的设计风格做的，特别是中小型公司。安卓版本的App也被迫做的像苹果。
各位在大公司的大佬,你们公司有足够多的设计师,甚至还有UED部门。给出两份风格的设计稿完全可以。
无论你们怎么喷，他终究会面临用flutter,做苹果风格安卓App。
有空回复”何不食肉糜“类言论。不如在回复中帮忙给出解决方案。
english translation
He just tell the truth，why most people diss him and this issue.
Now at China Mainland, A designer usually gives out only one Apple style design.
No matter iOS or Android developers, they both use the same design.
Andriod developer has to develop an Apple styled Android app.
It is better to give some suggest solution rather than just diss him.

那只是他个人的审美观点, 不是什么"大实话", issue是用来表达审美风格/设计问题的吗? 即便是，也可以用更充分的观点和论据，随便甩这么一个topic出来，很没有水平也很不尊重别人。

dig for politeness.

与审美无关，这种言论只能显出你眼界狭窄与无比的愚蠢，而且你也没有资格代表中国人
不用谢谢，你不配

When did you become the representative of the Chinese people?

难道不是吗？我开发4年多了，好几家公司都是设计的和苹果一样的，UI也是用苹果的，苹果的尺寸，看看国内的app 有几个用MaterialDesign

请你不要随便代表一个群体，谢谢。
设计师按照两种平台规范去做两套设计是完全没有问题的。问题在于工作中的决策出于什么样的考虑，大厂两个平台统一一套设计，两端一致后期迭代也更加统一。这跟设计师喜不喜欢和适否 prefer 没有任何关系。
在公共场合发表这种言论之前，请你仔细思考一下为什么，而不是把锅甩到设计师头上，何况你不是设计师。

This is ridiculous！‘Chinese UI designers don't like’ is just your opinion. I think maybe the reason why many companies only use apple's design for Android is they don't want to do two different designs for two platform, some of them even don't know what users really want.

there isn't BBS! this isn't issue! you idiot!!!
maybe you are Chinese, but you should't say Chinese!!!

人家说了大实话,为什么要喷人家。
国内的现状就是 很多设计师给App的设计稿就是按照苹果的设计风格做的，特别是中小型公司。安卓版本的App也被迫做的像苹果。
各位在大公司的大佬,你们公司有足够多的设计师,甚至还有UED部门。给出两份风格的设计稿完全可以。
无论你们怎么喷，他终究会面临用flutter,做苹果风格安卓App。
有空回复”何不食肉糜“类言论。不如在回复中帮忙给出解决方案。
english translation
He just tell the truth，why most people diss him and this issue.
Now at China Mainland, A designer usually gives out only one Apple style design.
No matter iOS or Android developers, they both use the same design.
Andriod developer has to develop an Apple styled Android app.
It is better to give some suggest solution rather than just diss him.

他有什么建设性疑问吗？凭什么要给他解决方案？

你们在说什么呢？what are you  talking about？

人家说了大实话,为什么要喷人家。
国内的现状就是 很多设计师给App的设计稿就是按照苹果的设计风格做的，特别是中小型公司。安卓版本的App也被迫做的像苹果。
各位在大公司的大佬,你们公司有足够多的设计师,甚至还有UED部门。给出两份风格的设计稿完全可以。
无论你们怎么喷，他终究会面临用flutter,做苹果风格安卓App。
有空回复”何不食肉糜“类言论。不如在回复中帮忙给出解决方案。
english translation
He just tell the truth，why most people diss him and this issue.
Now at China Mainland, A designer usually gives out only one Apple style design.
No matter iOS or Android developers, they both use the same design.
Andriod developer has to develop an Apple styled Android app.
It is better to give some suggest solution rather than just diss him.

他有什么建设性疑问吗？凭什么要给他解决方案？

麻烦认真看文档，是有iOS 的 widgets 的
https://flutter.io/docs/development/ui/widgets/cupertino
flutter 本质上还是一个跨平台移动应用解决方案， UI 库这种东西，一旦flutter用的人多了，会出现好几百种不同的UI库的，作为不打算这么早吃螃蟹的，选择观望就好了

技术同仁请都记住这个败类，这个厚颜无耻、堂而皇之地羞辱Chinese的败类。
这个败类叫做 周察田
请不要做人生攻击，我只是说了事实

我是不是要改小标题

蹭热度，请不要带上所有中国人，你代表不了。
If you want to be fifteen minutes of fame, please don't take all of Chinese.
You are just youself!

Flutter has Cupertino components

谢谢，这个希望多出现iOS风格的，毕竟都学iOS

想想喜欢MD的人，有点同理心。
Think about people who like MD, have some empathy.
是的，很烦iOS风格，每个都要自定义，什么日历啊，各种弹窗啊，都要自己改成iOS样式的

That is why the UI/UX Design is so bad in China, because of the people like you.

不是我不想写，只是要按设计的做

用不用是一回事，喜不喜欢是另一回事
推广不推广是一回事，用的多和用的少是另一回事
你可以说中国MD用的少，但是你不能说中国开发者不喜欢MD
事情总是有缘由的

用不用是一回事，喜不喜欢是另一回事
推广不推广是一回事，用的多和用的少是另一回事
你可以说中国MD用的少，但是你不能说中国开发者不喜欢MD
事情总是有缘由的，你被喷也不是没有理由的

When did you become the representative of the Chinese people?

难道不是吗？我开发4年多了，好几家公司都是设计的和苹果一样的，UI也是用苹果的，苹果的尺寸，看看国内的app 有几个用MaterialDesign

你所在的公司用一套 UI，那是你所处环境的情况，不评价对错。我想说的是：Google 也不会强制你用 Google 产品的 UI 风格去设计，不会强制你用 MD。系统规范跟 UI 风格是两回事，MD 是一个开源的设计系统，并不会强制任何个人和公司用或不用，Google 以及专业设计师都只会希望自己遵循 Android / iOS 或任何其他所在系统的规范并以符合 UX 的方式做设计而已！

你把 Flutter 跟 Material Design 等同起来，那说明你完全不懂 Flutter 的实现理念以及用途！

既然不了解，就别代表中国的设计师在此发言，你可以发表自己的个人观点！别带上一个群体。

Translate into English for people who don't speak Chinese:

All China's professional designers don't wanna be represented by someone we don't know.
There are still lots of great designers and developers trying to design and implement Android App in Android's way. And we know Android's way doesn't equal to some visual style & components.
This issue just means  the guy hadn't ever known anything about Flutter / Material Design or Android
or even iOS so that commented like this which is completely a bias.

When did you become the representative of the Chinese people?

难道不是吗？我开发4年多了，好几家公司都是设计的和苹果一样的，UI也是用苹果的，苹果的尺寸，看看国内的app 有几个用MaterialDesign

你所在的公司用一套 UI，那是你所处环境的情况，不评价对错。我想说的是：Google 也不会强制你用 Google 产品的 UI 风格去设计，不会强制你用 MD。系统规范跟 UI 风格是两回事，MD 是一个开源的设计系统，并不会强制任何个人和公司用或不用，Google 以及专业设计师都只会希望自己遵循 Android / iOS 或任何其他所在系统的规范并以符合 UX 的方式做设计而已！
你把 Flutter 跟 Material Design 等同起来，那说明你完全不懂 Flutter 的实现理念以及用途！
既然不了解，就别代表中国的设计师在此发言，你可以发表自己的个人观点！别带上一个群体。

Translate into English for people who don't speak Chinese:

All China's professional designers don't wanna be represented by someone we don't know.
There are still lots of great designers and developers trying to design and implement Android App in Android's way. And we know Android's way doesn't equal to some visual style & components.
This issue just means  the guy hadn't ever known anything about Flutter / Material Design or Android or even iOS so that commented like this which is completely a bias.

是的，我不能代表中国的设计师们，没写准确

@tao1991123

人家说了大实话,为什么要喷人家。
国内的现状就是 很多设计师给App的设计稿就是按照苹果的设计风格做的，特别是中小型公司。安卓版本的App也被迫做的像苹果。

各位在大公司的大佬,你们公司有足够多的设计师,甚至还有UED部门。给出两份风格的设计稿完全可以。

无论你们怎么喷，他终究会面临用flutter,做苹果风格安卓App。

flutter完全可以无障碍在安卓上开发ios风格app，甚至两种风格混合也没有问题，没懂楼主到底说了啥大实话？

有空回复”何不食肉糜“类言论。不如在回复中帮忙给出解决方案。

三楼就有回复Flutter has Cupertino components，眼角膜没用就捐出去给有需要的人谢谢

As much as I love Apple products and its UI, this is a Google's project.
Ain't nobody stops from styling widgets.

厉害的狠


Legrand > OCPP client fails to connect to the backend after reboot or power fail

Latest firmware version seems to have fixed that issue. No more tests.

Fixed on latest firmware version.


Blazor output styling is messed up.

The main content is falling behind the sidebar.  This is similar to what is happening with OAT.

In OAT this was caused by the switch to .NET 5.0 and was fixed by creating a new project and bringing the old files into it.


Dotnet App service deployment issue

Does this occur consistently?
Repro steps:

Select generated dotnet publish folder
Deploy app service

Action: appService.Deploy
Error type: 500
Error Message: An error has occurred.
Version: 0.24.9
OS: darwin
OS Release: 22.4.0
Product: Visual Studio Code
Product Version: 1.78.2
Language: en

Call Stack
new RestError extension.bundle.js:2:1709073
extension.bundle.js:2:1696547

Does this issue reproduce if you retry the deployment?

Does this issue reproduce if you retry the deployment?

Correct it is not possible to publish the API (dotnet core 7) to the app service using VS Code. I am using FTP deployments for the moment.

@maosierra, does this issue still produce on version 0.25.0 of the App Service extension?

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


Segmentation fault errors when loading a bad index file

HNSWLib.Index.load_index/3 will fail catastrophically when loading an index file that is either missing or malformed. Checking for a missing file is simple enough, but checking the validity of the saved index is more complicated.
A possible solution would be to frame the index on write such that the file contains both (a) header information to describe the index configuration (i.e. index size, dimensionality, distance, etc...). Provide checksums on frames of index data (i.e. write a checksum on every N-bytes). The checksum can be an optionally configurable parameter (set when saving the index), and stored in the header information.
When reading the index file, if any errors occurred this can be captured and sent back with an {:error, "bad index file"} tuple or something similar.

#2 resolves the failure that occurs when the file is missing. I'll try to find some time to work on the file validation piece a little later in the week.

I'll try to find some time to work on the file validation piece a little later in the week.

That's definitely one way to do it :). But I'm worry about it might be time-consuming to work on file validation.
I think that perhaps it's better to address these segmentation faults in the NIF world, and convert them into error-tuples.

Super excited about this work by the way! Thanks for making the efforts here 👏🏼 👏🏼 👏🏼

Oh, I found the root cause for this issue and #2.
I need to reset the index->val to nullptr after it throws an std::runtime_error, otherwise, index->val will be freed the second time in the destructor of the NIF resource (thus causing a double free issue, which led to the crash). I've updated the PR correspondingly!
/cc @josevalim

Closing in favor of PR!


feature(external LND node): Connect to external LND node for local development

If you are running your own LND node somewhere (for example in a local docker container) and you want to connect Zap to this node, you can set the following environment variables:

LND_HOST_PORT : Hostname and port of the lnd node, for example localhost:10009
LND_TLS_CERT : Path to the tls.cert file. Example: /home/myusername/.lnd/tls.cert
LND_MACAROON : Path to the admin.macaroon file. Example: /home/myusername/.lnd/admin.macaroon

Zap will not start its own lnd process if it detects a value in the environment variable LND_HOST_PORT.

This is very similar to the PR I created in https://github.com/LN-Zap/zap-desktop/pull/327.
I also created a more advanced version that provides a UI for configuration is also available at https://github.com/LN-Zap/zap-desktop/pull/351

I'm going to close this as #351 is now merged


[BUG] package-data in pyproject.toml not honored but same config in setup.py works

setuptools version
61.3.0
Python version
3.9
OS
Windows
Additional environment information
No response
Description
Installing the main branch of https://github.com/nucleic/enaml fails to install the package-data. Moving the package-data specification from pyproject.toml to setup.py however works. This means i.e. removing the section from pyproject.toml and adding the following to setup.py
package_data={
        'enaml.applib': ['*.enaml'],
        'enaml.stdlib': ['*.enaml'],
        'enaml.workbench.core': ['*.enaml'],
        'enaml.workbench.ui': ['*.enaml'],
        'enaml.qt.docking': [
            'dock_images/*.png',
            'dock_images/*.py',
            'enaml_dock_resources.qrc'
        ],
    },

Expected behavior
I would expect both configurations to be fully equivalent.
How to Reproduce
Run pip install git+https://github.com/nucleic/enaml@main
Output
Inspect the installed package in particular enaml stdlib which should contain several .enaml files but does not.

Hi @MatthieuDartiailh, thank you very much for reporting this.
I noticed that you have in the pyproject.toml [tools.setuptools.package-data].
I am under the impression that the following would be required:
- [tools.setuptools.package-data]
+ [tool.setuptools.package-data]

Note the tools => tool differnce.
Does this work for you?

Nice catch...  Thanks for your help and sorry for the noise

No problems @MatthieuDartiailh 😄
(This kind of small confusion happens all the time for everyone)
Glad to know it works now!


xdg does not work on Windows.

config.rs relies on the xdg crate, but it does not work on windows. build.rs currently uses a directories crate that seems to do an identical thing, so swap it over.

directories and dirs are indeed the standard crates for this.


Add option to unload pata_acpi prior to starting leapp upgrade.

For a simpler way to work around this module getting reloaded despite blacklists etc.
I will work up a PR on this.  @scott-vick recently ran into this again, as did I.

Solved by https://github.com/redhat-cop/infra.leapp/pull/168.


chore: bdd-gh-1582851698 to 0.0.1

chore: Promote bdd-gh-1582851698 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Not working on server

When it short cuts to a dungeon it takes a little bit of time and then fails
ive found over 20 dungeons and ive got the end pillar seed cuz i went the the end
Do you guys know how to solve this issue

In paper 1.16 end pillars doesn't work, you should only use dungeons in chunks loaded in 1.16. But it might still not work, I honestly don't know why, the only thing I think is that the servers somehow block it. I'm trying to clarify this here: https://github.com/KaptainWutax/SeedCracker/issues/184

Paper might be stopping all structures from giving away the seed by adding some noise or displacement. (That's just speculation.) Is it possible to crack the seed without structures?

Paper might be stopping all structures from giving away the seed by adding some noise or displacement. (That's just speculation.) Is it possible to crack the seed without structures and decorators?

Doing more research this was not the case with me.  However, if I remember correctly with Spigot you can change the seeds of the structures, in order to make this type of seed cracking useless.  An example is the anarchy server oldfag.org, in this server the seeds of the structures have been changed and if you look online, what you find are only seeds for the terrain generation.  However, this strategy is not very common and can lead to countless generation "bugs" (e.g witch huts in a mesa biome or an ocean monument under a mountain).  Check out the wiki if you are interested in understanding how they handled this server.

I am mostly interested in the terrain generation. I was trying to find only BIOME, but it wasn't collecting any bits.


v0.4.0 Build Fails due to AFL

The new v0.4.0 build fails
The line that fails is 117 of build.zig (not in the error message, but the many std.debug.print("here#\n", .{}) say it is this line 🤣).
https://github.com/kristoff-it/superhtml/blob/4c20f0b2570e99b43bd85783fb306411e775e56e/build.zig#L117
unable to spawn the following command: FileNotFound
llvm-config --version
error: the following build command failed with exit code 1:
/Users/esauder/source/repos/personal/superhtml/.zig-cache/o/d1e56a8d062b567fb6786b74e3e02a26/build /Users/esauder/.zvm/0.13.0/zig /Users/esauder/source/repos/personal/superhtml /Users/esauder/source/repos/personal/superhtml/.zig-cache /Users/esauder/.cache/zig --seed 0xcb9dae9f -Z28ec7a187d155df7

This can also be seen in the ci:

I had time to get my path variable working (I have llvm installed, but bc apple, I normally reference the path directly). Even after getting llvm-config, I get this error when building.

Adding:　pub const version = build_options.version; to the cli.zig file works, though idk if that is what you want with the project.

The overly aggressive dependency on llvm-config has been fixed, let's continue the discussion in #22


Move to composer global package

Padawan.php submodule should be removed in order to use global installed package of padawan.php

Done in https://github.com/mkusher/padawan.vim/commit/6dc0050535d4f7e985402691b8dc01aac77a98e7


Server crash due to enigmatic legacy and connector

Mod Name
Enigmatic Legaсy
Mod Homepage
https://modrinth.com/mod/enigmatic-legacy/versions
Minecraft version
1.20.1 (LTS)
Describe the bug
The player selects storage_crystal (resource storage after death) after which the server freezes and crashes
Steps to reproduce
Logs
crash-2024-12-07_18.51.03-server.txt
Additional context
I want to point out that everything worked fine for all the other players (including the player with this problem). The server is crashing now, so I think the error is related to the item that is in the crystal

A crash occurs when the player picks up a storage_crystal that has a darknest_scroll

The crash occurs when the mind_shielding_plate from the Eidolon mod is located in storage_crystal:Reprised
https://www.curseforge.com/minecraft/mc-mods/eidolon-repraised
https://modrinth.com/mod/eidolonrepraised

As our LTS support target, 1.20.1 now only receives critical fixes related to Connector bugs. Please upgrade to the latest version for mod compatibility support.


Performance issue of VRegValueAnalysis.buff_size

Currently VRegValueAnalysis.buff_size rule is the heaviest rule in term of performance.
souffleprof report for the lifted binary (.bc file size is ~ 80k):
                               |  ID  | Total Time | Non Rec Time | Rec Time | Copy Time | Tuples | Reads | % of Time | % of Tuples | Source
VRegValueAnalysis.buff_size    | R127 | 129s       | 23.6s        | 103s     | 2.04s     | 13.5M  | 399   | 90.9      | 94.4        | value_analysis.dl [265:9-265:18]
VRegAnalysis.modified          | R124 | 12.6s      | 12.6s        | 0        | 0         | 796K   | 6.44K | 8.93      | 5.55        | vreg_analysis.dl [136:9-136:17]
VRegValueAnalysis.get_int_impl | R129 | 0.309s     | 0.008s       | 0.301s   | 366.0µs   | 104    | 64    | 0.219     | 0.001       | value_analysis.dl [76:9-76:21]

Processing time (128 jobs): ~2min
Current performance is weak. Need to find a way to optimise buff_size rule.

The process time now is ~3sec (1 job) for the same lifted binary.


Deploying on kubernetes with Ingress resource

Hello,
I set up the DFM on our Kubernetes cluster using the instructions provided in the docs, then I added a service resource and an ingress resource.
The ingress publishes the DFM under path /dfm. but when I try to access the endpoint I get a white screen on the browser and it seems that the DFM deployment redirects the browser to the root of the URL instead under the path /dfm

Has anyone been able to publish the DFM via ingress? Below is the config for my ingress resources using the Nginx rewrite rule.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/rewrite-target: /$2
  name: dfm
  namespace: durablefunctions
spec:
  tls:
  - hosts:
    - example.dev.dom.com
    secretName: dev-ingress-tls
  rules:
  - host: example.dev.dom.com
    http:
      paths:
      - backend:
          service:
            name: dfm
            port:
              number: 8080
        path: /dfm(/|$)(.*)
        pathType: Prefix

Hi @orenzp , at the moment I can only confirm that this scenario is generally not supported.
Hopefully we'll be able to add support for this in future versions. Will keep this issue open until then.

Thanks for the update on this @scale-tone.
Will be more then happy to help with the testing.

Implemented new DFM_INGRESS_ROUTE_PREFIX setting, which needs to be set to your ingress relative path (dfm in your case).
Here is the PR: https://github.com/microsoft/DurableFunctionsMonitor/pull/61
Pushed the PR branch as scaletone/durablefunctionsmonitor:experimental-ingress-route-prefix-added Docker image.
@orenzp , would appreciate if you try it out.

Implemented in v6.0.
@orenzp , please, validate.


Retry failed transaction on register tasklog 3x

Coverage decreased (-0.03%) to 65.68% when pulling e8c390873d2a13aa0a225dd514b81c0b5265ca85 on guidow:tasklogs_tx_retry into e34c3c705f5448549a89adc04bc82af4771cd423 on pyfarm:master.


Error with ShareDB Usage

I'm noticing an error when using this as a drop-in replacement for the original websockate-json-stream with ShareDB:
Error [ERR_STREAM_DESTROYED]: Cannot call write after a stream was destroyed
    at doWrite (_stream_writable.js:411:19)
    at writeOrBuffer (_stream_writable.js:399:5)
    at WebSocketJSONStream.Writable.write (_stream_writable.js:299:11)
    at Agent.send (/home/curran/repos/sharedb/examples/textarea/node_modules/sharedb/lib/agent.js:165:15)
    at Agent._sendOp (/home/curran/repos/sharedb/examples/textarea/node_modules/sharedb/lib/agent.js:181:8)
    at OpStream.<anonymous> (/home/curran/repos/sharedb/examples/textarea/node_modules/sharedb/lib/agent.js:103:11)
    at OpStream.emit (events.js:197:13)
    at addChunk (_stream_readable.js:288:12)
    at readableAddChunk (_stream_readable.js:269:11)
    at OpStream.Readable.push (_stream_readable.js:224:10)
Emitted 'error' event at:
    at errorOrDestroy (internal/streams/destroy.js:98:12)
    at onwriteError (_stream_writable.js:430:5)
    at onwrite (_stream_writable.js:461:5)
    at doWrite (_stream_writable.js:411:11)
    at writeOrBuffer (_stream_writable.js:399:5)
    [... lines matching original stack trace ...]
    at OpStream.emit (events.js:197:13)

This occurs when you load the page, edit text, load the page again, and edit the text again. It feels like the closing of the WebSocket is somehow not cleaned up properly. This error does not happen with the original websockate-json-stream package.
To reproduce, try changing the dependency to @teamwork/websocket-json-stream in the ShareDB textarea example https://github.com/share/sharedb/tree/master/examples/textarea
The diff looks something like this:
package.json
-    "websocket-json-stream": "^0.0.1",
+    "@teamwork/websocket-json-stream": "^2.0.0",

examples/textarea/server.js
-var WebSocketJSONStream = require('websocket-json-stream');
+var WebSocketJSONStream = require('@teamwork/websocket-json-stream');

Here's a screen capture:

Any ideas what's going on here? Has anyone else observed this error?

Which version of nodejs are you using?
@teamwork/websocket-json-stream#2.0.0 supports node 8+ only. If you need it to work in node 6, then use @teamwork/websocket-json-stream#1.1.1.

I'm using Node v11.9.0.

I submitted a PR against ShareDB with this change, which makes it easier to reproduce quickly https://github.com/share/sharedb/pull/281
I'm also curious about alternative approaches, e.g. SockJS or other libraries, if WebSocket is not 100% reliable for certain networking environments.

Same here.
https://github.com/share/sharedb/issues/282

I think @teamwork/websocket-json-stream works correctly in this case and the issue should be fixed in ShareDB. See https://github.com/share/sharedb/issues/282#issuecomment-480907019 for more details.


Fix peer connection reference in restart method

Minor fix to restart() method: pc is a property of the context object, not a standalone variable.

thank you!


Customise indent guide style

I wish I could change the style of indent guides. By that, I mean change the thickness or the look. I always wanted something like Visual Studio has:

In fact, I really want Visual Studio. The only reason I don't have it is because of administrator rights. Anyways, I'd like to have these indent guides inside of Visual Studio Code, as well as some other styles and custom thickness. I know there's an extension called Guides that does this, but it is a bit slow and it breaks randomly.
Maybe change the indent guide style like this:
"editor.indentGuideStyle": "dashed", // Same as the styles you get from the CSS border-style property
"editor.indentGuideWidth": 1,

For a workaround for the time being using a CSS patcher like Custom CSS and JS Loader or Monkey Patch (the patcher I use because it does not "corrupt" VSCode), I found out about this: .monaco-editor .lines-content .cigr, however, it uses a box shadow.

Here's how you can do it in Monkey Patch:
".monaco-editor .lines-content .cigr": "box-shadow: none !important; border-left: 1px dashed rgba(255, 255, 255, 0.3);",
".monaco-editor .lines-content .cigra": "box-shadow: none !important; border-left: 1px dashed rgba(255, 255, 255, 0.5);"

Can't see them in a light theme, however.


spec: define pod security requirements

The spec needs to touch on what the security requirements are for a pod.
Is any isolation of users required between pods?
What user does each application run under and can this be root (i.e. "real" root in the host)?
This might (but not necessarily) be addressed by #231

I think it can be any user including root. Isolation between pods seems like an executor and configuration and it feels out of scope for the spec.


A little bug in unit toolkit (Tutorial 01)

Original:
[12] from openff.units import unit
It should be:
[12] from openff.evaluator import unit
I guess there is an update in "unit".

Hey @Yu-Tang-Lin - how are you getting this? Are you running the notebooks from the Colab links or directly on your machine?

@mattwthompson
I run this directly on my machine, which actually is a remote computer in the lab. I discussed this with Owen, and he taught me how to fix this.

Hi @Yu-Tang-Lin there have been some updates to how units are handled here, but they haven't made it into a release yet. If you're running the tutorials from a clone of this repo, the master branch reflects changes that are not ready for a release yet.
For a stable experience running the tutorials, I recommend checking out the latest release tag (v0.3.9) and running the tutorials from there, i.e.
$ git fetch --all
$ git checkout upstream/master
Previous HEAD position was 9f6e834 Fix importing full ThermoML archive (#402)
HEAD is now at 1896275 Use units registry provided by `openff.units` (#399)
$ grep -r "from openff.units import unit" docs/tutorials/tutorial03.ipynb
docs/tutorials/tutorial03.ipynb:    "from openff.units import unit\n",
$ git checkout v0.3.9
Previous HEAD position was 1896275 Use units registry provided by `openff.units` (#399)
HEAD is now at 9f6e834 Fix importing full ThermoML archive (#402)
$ grep -r "from openff.evaluator import unit" docs/tutorials/tutorial03.ipynb
docs/tutorials/tutorial03.ipynb:    "from openff.evaluator import unit\n",

In a couple of months, from openff.units import unit will be used but until then you should stick with code that uses from openff.evaluator import unit. Under the hood they are extremely similar and pretty much only differ in name.


Optimisations

This program is pretty fast at the moment, but it could be faster. One thing we could do is compare the size of files and ignore any with a unique size. I believe most operating systems store this information so it should be faster than reading through the whole file.
Any other optimisations could be considered, although I wouldn't want to do anything that would potentially lead to false positives (e.g. only scanning part of the file) even if it is still unlikely.

It's fine


Fix bug applying tags when clicking on color bubble

Added data-tag-name data attribute to set the original tag name/key
Updated event handling to use currentTarget so that the element will always be the same as the element that has the click handler.

@luisamiranda - We should get this change migrated into the vott-react project as well.

@wbreza This file is deleted by the integration PR, so these changes should only be on vott-react, right?

@luisamiranda - Yes, one your PR goes it it will be deleted.  Until that happens I would like to get this bug fixed because it is a poor user experience.


Install binary broken due to missing directory

/cc @thumphries @jystic
The hoogle tests must pass because of the shared home directory :(

:8ball:

weird. Is it the parent directory that's missing? I had no trouble deleting and reinstalling various things locally

@thumphries looks to me like the current version will break on withLock when prefix doesn't exist.

Yeah, the lock file failed for me: .ambiata/mafia/bin/ghcid-0.5/lock: openFd: does not exist (No such file or directory)

aaaack, added that lock too hastily. my bad. :lock:

:+1:


Add a management command to import road marking reals

This PR adds a management command to import road marking real data from csv files.  We added source_name and source_id fields so that we can run imports for the same data repeatedly without introducing duplicate rows in the model.  This PR also refactor the importer tests to extract the mock_open tweak into a utils method.
Refs: LIIK-132

Codecov Report

Merging #96 into master will increase coverage by 0.03%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #96      +/-   ##
==========================================
+ Coverage   97.16%   97.19%   +0.03%
==========================================
  Files          93       96       +3
  Lines        5823     5887      +64
  Branches      225      226       +1
==========================================
+ Hits         5658     5722      +64
  Misses        149      149
  Partials       16       16

Impacted Files
Coverage Δ

traffic_control/tests/test_road_marking_api.py
100.00% <ø> (ø)

...l/management/commands/import_road_marking_reals.py
100.00% <100.00%> (ø)

traffic_control/models/road_marking.py
98.88% <100.00%> (+0.06%)
:arrow_up:

...ts/management/commands/test_import_portal_types.py
100.00% <100.00%> (ø)

...agement/commands/test_import_road_marking_reals.py
100.00% <100.00%> (ø)

...mmands/test_import_traffic_control_device_types.py
100.00% <100.00%> (ø)

traffic_control/tests/management/commands/utils.py
100.00% <100.00%> (ø)

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 eb2bf29...535fbff. Read the comment docs.


Random fixes across the project

Updated to latest source-map, which means Span and SpanWithSource now implement Copy
Minor new features bringing specification tests up to 114
Change build to 'experimental_build'

Couldn't get fuzzing over the line today :(


Roll instance template changes to worker managed instance groups

When a worker managed instance group's (MIG) instance template changes (including worker_type, disk_size, preemptible, or Butane worker_snippets but excluding new AMIs), use Google Cloud's rolling update features to ensure instances match declared state
Ignore new AMIs since Fedora CoreOS and Flatcar Linux nodes already auto-update and reboot themselves
Rolling updates will create surge instances, wait for health checks, then delete old instances (0 unavilable instances)
Instances are replaced to ensure new Ignition/Butane snippets are respected
Add managed instance group autohealing (i.e. health checks) to ensure new instances' Kubelet is running

Renames

Name apiserver and kubelet health checks consistently
Rename MIG from ${var.name}-worker-group to ${var.name}-worker

Rel: https://cloud.google.com/compute/docs/instance-groups/rolling-out-updates-to-managed-instance-groups

May change this to health check kube-proxy instead of Kubelet before release


add support for VS 2017

the version of cmake shipped with VS2017 has a new generator for vs2017, this will probably be the final name as well.
to use this in VS2017 simply add -DCMAKE_TOOLCHAIN_FILE=c:\... to the cmakeCommandArgs option in the json settings file. If it's the first option you MUST add a leading space to the JSON string.

Hi @barcharcraz, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;

Looks great, thanks!


MM-32358 - /incident timeline slash command for mobile

Summary

Show a table of the incident timeline for mobile (and desktop)
I'm making a couple design decisions here.

Display as a table, because it's more space efficient than using slack attachments (which would be pages long for any serious incident)
Display for desktop as well as mobile, because this is what Corey originally wanted, and if you're taking the time to type /incident timeline I imagine you want to see a cut-and-pastable summary of the incident events, rather than a message saying "look in the RHS"

Will ask for Justine's review after dev review

Looks like:

Ticket Link

https://mattermost.atlassian.net/browse/MM-32358

Took @agarciamontoro 's idea, the timestamp is the link now. Notice that the slash commands don't have posts attached:

@justinegeffen Looking for review on the help text and feedback text (most of what is in quotations in the code).

LGTM! Thank you! :D

@cpoile Actually, the timestamp link does not work in mobile apps (native mobile app in both Android and iOS). Should I open a different ticket for this?

@prapti Thank you for the awesome review and new test cases. That looks perfect.
I'm adjusted the list to display the same events as the RHS (no tasks checked/unchecked, assignee changed, or slash commands run).
re: the mobile redirect links will be working in v1.41.0, added by @lieut-data here: https://github.com/mattermost/mattermost-mobile/pull/5136
We /could/ remove the links if the user is on mobile, but I don't like that solution because then v1.41+ users couldn't use them. I think we should keep the links and users of the older versions will get the error (until they upgrade). Is that an okay user experience?

@cpoile Thank you for the update. I quickly tested again to verify the latest changes and they look good.
Regarding the mobile redirect links, if they'll work in 1.41 that'll be fine imo, the only concern is that 1.40 is still pending release, so it might be a little while before 1.41 is out the door. Is there any way the message on mobile could be changed so that it doesn't say "the link belongs to a deleted team or to a team to which you don not have access"? That is quite misleading. If that's not an easy task to do, I'd maybe defer it to @itao's decision depending on how many customers are likely to use the feature.

@prapti, unfortunately there's no way to change the experience in v1.40 of _redirect. But, @cpoile, we /could/ avoid the _redirect semantics altogether and just resolve the team name into the URL (unless it's a DM). Might that reduce the scope?

@prapti Thanks for finding this -- the new commit does what Jesse suggested, it uses the team name for the post link. @lieut-data it does work with DMs. :)

@cpoile, I may have merged this pre-maturely -- not sure if the target branch was correct. Apologies!

@lieut-data hmm, it will collapse the separate (rather large) PRs into a single commit on master -- is that okay? I can reopen and redo it to keep it separate (my preference)


Update for Rails 5: no "Listing" on index

Thanks! is this backwards compatible with rails 4?

@moorage I've updated the code to remain back compatibility for Rails 4 and fix #3. It requires loading your current Rails when running bootscaf. I haven't figure out how to load different versions of Rails in gemspec, so CI will fail (temporarily).

What do you mean "temporarily"?
Did you try spec.add_dependency "rails" ?  Did that fail?

@moorage The purpose of this pull request is to load and test your "current" version of Rails, but spec.add_dependency "rails" without version number in CI will only get the latest rails (4.2.6 for now, and 5.0 in future). CI will pass, but that's not what I want, and not what I mean.


neo-go fails if port is not an integer

Please add support for any format (string, interger) ports in yaml file.

Example? You specify "address:port" now in the config.

Indeed!


[ci:component:github.com/gardener/etcd-druid:v0.12.1->v0.12.3]

Release Notes:
Temporarily fix issue where `PodManagementPolicy` was trying to be updated from `OrderedReady` to `Parallel` for older shoots (created using etcd-druid:v0.8.5 and before), but the statefulset forbids updates to this field.

Temporarily fixes an issue where druid tries to set `spec.ServiceName` to `PeerServiceName` by default, although older single-node etcds would have this field set to `ClientServiceName`, and updation of statefulset `spec.ServiceName` field is forbidden.

/lgtm
/approve


Issue with SPFx as meetingstage within teams

Hello and a good new year 2022
In this article at the end you mention that the in meeting experience is not working in the moment and that this limitation will be fixed in the first half of 2021.

Now I have tested with a small spfx solution and the meetingSidePanel works, but the meetingStage I get an sharepoint issue (I dont find any google results for and I have attached the screenshot for)

Should that meetingStage with SPFx work in the meantime or is that exactly the issue you are talking about?
Thanks
Pascal

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

ID: febc0dc5-5d17-c525-a31d-8f7a08d96dd9
Version Independent ID: bb421dac-410c-4d7e-cb87-d785934b7ba7
Content: Tutorial: Build meeting apps for Microsoft Teams with SPFx
Content Source: docs/spfx/build-for-teams-meeting-app.md
Product: sharepoint
Technology: sharepoint-framework
GitHub Login: @VesaJuvonen
Microsoft Alias: vesaj

Duplicate to this issue


SqlServer: Default Value Generator

Presently for PK with single property, we put Default as value generation strategy.
This Default annotation translates to value generation defined on model or to Identity.
Instead of setting Identity hard coded, we should have some way to define what should be the default value generation strategy.

The idea here is to have the SQL Server conventions annotate the model with the default strategy to use for the model. This is currently Identity, but we are switching to Sequence, so it would probably make sense to do this switch as part of implementing this issue.


Why my result is "usage: moco start [options]"?

In my machine, only "usage: moco start [options]" ?

It should be old version. Try the latest version.


"RAS Emulation Mode" should be "RAS Mode"?

Does RAS Emulation Mode actually emulate anything?  Wouldn't this be better called simply "RAS Mode"?

I'd argue that, when RASEMU=1, the CTR buffer is emulating a return-address stack (RAS).  Returns do not actually use the addresses pushed onto it, so it is not an actual RAS.

Let me know if you disagree John, otherwise I'll close the issue at the end of this week.


Line rotation

I was reading the Python Joy documentation and realized they have line rotation and we are still failing if a line is passed to rotate. So I added functionality that (I think) mirrors Python Joy, with the b point being rotated.

Thanks! Could you fix the build errors, please?

Thanks! Could you fix the build errors, please?

Oop yeah threw that together pretty fast. Fixed !


Documentation for bicep extensibility & kubernetes provider

import keyword
import schema for kubernetes provider
how provider-specific resource types are exposed/accessed
scenario: create AKS cluster and deploy a kubernetes manifest to it (manifest should be converted using bicep tooling)
should be labelled that feature is in preview, subject to change

@mumian - can you put this on your radar? We are planning to do the initial release by end of November. I am happy to walk you through my understanding of the feature. Once v0.12 releases, you should be able to onboard via bicepconfig.json  and as long as you are using a Microsoft tenant subscription, you should be able to use the Kubernetes provider.

@alex-frankel Experimentation is not possible in my own subscription? How to enable this? :)

The Kubernetes provider is not enabled externally yet. We are trying to make it available by end of year, but it may slip into Jan.

Pending feature release.


Invalid Argument Error when mounting volume

If I run dind with a host volume mount it errors out with invalid argument:
docker run -dit --privileged --volume=/Users/rmb938/dindvar:/var/lib/docker --name some-docker docker:dind

Then running docker logs shows:
WARN[0000] /!\
INFO[0000] New containerd process, pid: 20

FATA[0001] Error starting daemon: invalid argument

Yet without the volume mount it works perfectly fine.

Are you on OS X by chance?  (guessing based on /Users/rmb938/dindvar)
If so, mounting via vboxsf with docker-machine will definitely not work here, and I really doubt that the shared file system in Docker for Mac is going to work much better.
Docker's /var/lib/docker directory needs to be able to support a number of things that most of these shared filesystems simply cannot provide, CoW being one of the primary ones (although with VFS it might be possible, although slow enough to make it likely unusable for much).

I am using OSX and that makes sense. I'll figure out something else then.
Thanks :)

:+1:


fix former answer 403 response

Description
Fixes #...
Notes (out of scope, known isues, hints for reviewing code, ...)  (optional)
...
Test cases

[ ] Case 1:

Given I am the usual user
When I go to [this page](branch link)
And I click on ...
Then I see ...
And

[ ] Case 2:

Given I am the usual user
When ...

As template error should not throw error (ngIf should handle correctly error)... I don't think this "fix" is useful... at least as long as I don't understand why.

This solution breaks the formerAnswerError$ which use it and display a proper msg in case of error.