Potential bug for 8 layers LD-MRS vertical angle correction?

Hi,
From src/devices/LuxBase.cpp, line 1881:
// Calculate the effective mirror tilt as a function of the beam tilt at 0 degree horizontally and the current horizontal angle
const double effMirrorTilt = m_beamTiltAngle / 2.0 * M_SQRT2 * std::sin(0.5 * hAngle - M_PI_4);

Can you explain where this formula comes from? It seems not documented in any document.
We figured out when plotting the 3D point cloud of an 8 layers SICK sensor in RTMaps that the vertical spread of the points was not symmetrical against the lidar front axis. This seems to come from the here-above formula where the PI/4 factor introduces a strange offset to the hAngle to a sine:
hAngle should be 0 at the center of the scan range (towards laser front), and in such case the vertical angle correction takes a sin(-PI/4) factor, which seems weird.
Then at -45°, the correction factor si sin( -3PI/8)
while at +45°, the correction factor is sin (-PI/8)
-> correction factor is not the same on both sides of the scanning range.
Is it normal?
We have 2 laser scanners mounted approximately at the same place on a vehicle, one pointing 45° left, the other pointing 45° right.
Attached are two screenshots where both pointclouds from the two lasers are overlaid on the video and also displayed in a 3D view:

Here, with your v angle correction formula: the vertical spread of the scans to not correspond on the right border of the left sensor and the left border of the right sensor.

When applying std::cos(0.5hAngle) or std::sin(0.5hAngle - M_PI_2) (which are opposite anyways), it looks better.
Any idea?
Thanks a lot,
Nicolas.

The code is from the example driver provided by SICK. I didn't find a new version, maybe you got one with your scanner and could check the diff?
Anyway, your change sounds reasonable, can you provide a pull request with the change?

Thanks for the rapid feedback.
We did not get any code from SICK, just figured out that this line introduced a strange behaviour in the vertical angle correction. However I cannot tell where this formula comes from and what is the right one in case this one is indeed incorrect... is it cos(0.5 hAngle) or sin(0.5 hAngle - PI/2) or anything else...?

I don't have access to the hardware anymore, can you check with the manual or compare with the Sick software?

The SICK software seems to reproduce the same weird behavior.
We did not find any documentation in manuals where this formula is explained.
We sent a support message to SICK with no answer so far (it was a few days ago, so maybe do they need some additional time).

You should check with SICK, but as far as I know the formula is correct. The SICK LD-MRS with 4 layers don't have any vertical angle correction, only the 8-layer LD-MRS has, because to get 8 layers, the mirror is mounted asymmetrically. In the 8-layer LD-MRS, the layers are bunched up closely together vertically at the left end of the scanning range and diverge towards the right, so the distance between the layers is greatest at the right side of the scan and smallest at the left side.

hAngle should be 0 at the center of the scan range (towards laser front), and in such case the vertical angle correction takes a sin(-PI/4) factor, which seems weird.

It isn't 0 at the center.

Then at -45°, the correction factor is sin( -3PI/8)
while at +45°, the correction factor is sin (-PI/8)
-> correction factor is not the same on both sides of the scanning range.
Is it normal?

Yes, it isn't symmetrical. If you want symmetrical scans from your two LD-MRS, you have to flip one on its head.

You can also verify this behavior yourself: Slowly move an object downwards in the area where the two scanners overlap. If the formula is correct, it should first appear in the topmost layer of the left scanner and last in the bottommost layer of the left scanner.

Thanks for the hint. That can make sense. We will double check.

Hi again, we have investigated a little further.
We are ok on the fact that the mirror tilt effet introduces an asymmetric correction depending on the horizontal angle, and the -PI/4 offset to the angle in the sine is correct.
However the SICK viewer software does not seem to produce the right vertical spread when a sensor is mounted upside down:

when mounted normally, the vertical spread is high on the right side of the sensor (start of scan), medium at the center, and low on the left side
when mounted upside down, it should be high on the left side, medium at the center, and low on the left side. But it seems it is not (still hight on the right and low on the left).

Our assumption is that the code misses a factor -1 on the hAngle variable in the sin when the sensor is mounted upside down.
When mounted normally, and when looking at the incoming stream from the sensor, angle ticks go from +1000 to -1500 approximately, scanning right to left and layers index sequence are 0, 1, 2, 3, 0, 1, 2, 3.
When mounted upside down, angle ticks come from the sensor from -1000 to +1500, and layers index sequence are 3, 2, 1, 0, 3, 2, 1, 0.
Assuming that the sensor mechanics did not change (that the motor is not inverted, mirrors are not moved inside the sensor, etc.), the sensor is now scanning from left to right, and what was the upper layer (index 0) is not the lower layer (index 3) and so on. That means that the sensor firmware adds a -1 factor on the angle ticks, and changes layers indices so that 0 is still the upper layer and 3 the bottom layer. Changing the layers indices allows to keep the same code and beam tilt offsets. Changing the ticks sign preserves the orientation convention, but this change should be reflected in the vertical angle correction:
// Calculate the effective mirror tilt as a function of the beam tilt at 0 degree horizontally and the current horizontal angle
double hAngleFactor = 1.0;
if (m_upsideDownActive == true)
{
    hAngleFactor = -1.0;
}
const double effMirrorTilt = m_beamTiltAngle / 2.0 * M_SQRT2 * std::sin(0.5 * hAngleFactor * hAngle - M_PI_4);

Would that work? It seems to provide correct results.
Thank you for you help.

In my opinion, this "upside down" parameter shouldn't be used at all. When we talked to the SICK people 3 years ago, they mentioned that they were going to remove it completely.
The scanner should always output the same data, no matter how it is mounted. The point cloud is in the scanner frame, after all. Then you should use external methods to transform the data into whatever frame you want. For example, if you're using ROS, you would typically specify the mounting positions of your scanners using URDF and then transform between them using TF.

That's indeed one way to solve the issue, depending on how much CPU you want to save. The interest of the upside down mode is the possibility indeed to spare 3D transforms on the point cloud even though it won't kill a core i7 from far.
We don't use ROS but indeed there are ways to apply such 3D transforms as well in RTMaps.
In the above-mentioned case, we apply some 3D transforms anyways to place all sensors data in the same reference si it would not change much indeed.
Thanks for your hints and rapid feedback on this topic.
All the best,


makes login case insensitive

Fixes #184

@chloealee By using LIKE does that also allow for logins where the email/mobile are different lengths than what they should be?
Like, if my account is<EMAIL_ADDRESS>would this change also allow me to login with<EMAIL_ADDRESS>

@jonuy nope - it shouldn't! Should just account for case.

you might also just be able to strtolower()before running =

@angaither should I use strtolower() instead of of LIKE?

@chloealee yeah, I think @jonuy is right, it does pattern matching and it would allow non-matches to pass.

ah got it! I tried to test with the example that @jonuy provided above and it threw the error when i typed in<EMAIL_ADDRESS>but didn't when I did a mix of upper case and lower case for<EMAIL_ADDRESS>so thought that could be the solution. I can do more digging though to make sure.
@jonuy and I were chatting yesterday and he said he wanted to avoid converting all to lowercase before searching because some emails might not be stored in the database as such.

It looks like LIKE is essentially doing a regex query. So yea, maybe this does work. But then this seems like it'd open the door for someone to input regex in place of a phone or number and possible wreak some havoc?
Doing a regex query also negates any benefits we'd have from indexing on the email or mobile field. So maybe what we do actually end up doing is a strtolower before executing a query? Which would mean either lowercasing the values before putting them in the db, or holding a lowercased version in a separate field explicitly for querying against, and also running a script through the db that modifies any docs that don't have lowercased values.
@angaither @chloealee what do you think we should do?

I think it would be a pretty simple validation rule to lowercase them before we save them & run a script to update any thing we have in caps currently.
I really don't think the regex query is a good idea for saftey/indexing

Great that makes sense! Would the script be a separate issue to create?

Found this on lines 63-70 in the User model - does this mean that emails are already being stored in lowercase?
    /**
     * Email address mutator that converts the email value to lowercase
     *
     */
    public function setEmailAttribute($value)
    {
        $this->attributes['email'] = strtolower($value);
    }

yeah! awesome, I thought so, but wasn't sure ;)

great, thanks for confirming, @angaither ! I'll push the changes I made now then for review :)

:+1:


Alibaba Cloud Provider: introducing imageregistry types

Summary: This PR adds the additional fields necessary to provide support for Alibaba imageregistry.

Updated the descriptions
updated the kubebuilder fields
cleaned up comments on the fields
cleaned up the constant / enumerable types to match OpenShift patterns.

This PR replaces the previous #1009.
cc @menglingwei

/lgtm
/approve
/hold
Please test in a real cluster and verify that it behaves as it should.

@sttts Thanks for the help. I'll get a test cluster going now.

Fixed typo in description and nothing else.

/test verify

Verify had a few of these. Wondering if something wrong with the CI.
W1214 01:48:40.137749   14982 clientconn.go:1223] grpc: addrConn.createTransport failed to connect to {http://<IP_ADDRESS>:2379  <nil> 0 <nil>}. Err :connection error: desc = "transport: Error while dialing dial tcp <IP_ADDRESS>:2379: connect: connection refused". Reconnecting...

/test verify

@dmage @sttts In order to correctly apply the kubebuilder/openAPI patch to the CRD I had to rename the 00-crd.yaml to 00-imageregistry.crd.yaml. I have noticed that this CRD no longer gets deployed when testing this latest pull request.
Does this require an openshift/client-go and an openshift/library-go update?

I have updated the 00- and 01- CRD files to have a meaningful name 00_imageregistry.crd.yaml as well as 01_imagepruner.crd.yaml. This allows the patch to be applied.
Testing these changes now.

/lgtm /approve
/hold Please test in a real cluster and verify that it behaves as it should.

@kwoodson @sttts please take a look at those tests: https://github.com/openshift/cluster-image-registry-operator/pull/724#issuecomment-993834233
It's working as expected, but I left some comments regarding the naming conventions of those fields, considering the Console/UI. Please let me know wdyt.

/hold
I have submitted #1086 to fix the test verify that has been failing.

Rebased to clean up commits from the #1086 merge.

/hold cancel

/lgtm


Issue while upserting with mysql records manager

Hi i am upserting data on pinecone with mysql record manager and it throws UUID and namespace error, unable to get what is the issue any suggestions?

@HenryHengZJ  any suggestions please?

@HenryHengZJ

Moving to: https://github.com/FlowiseAI/Flowise/issues/3354


EthStorage Devs Meeting #105 Agenda

Meeting Info

Nov 26, 2024, 11:00 UTC+8
Duration: 60 minutes
Meeting link
Anyone can comment on the agenda where they would like this to be discussed.

Agenda

Protocol/App/Research progress
BD/Marketing progress

Goal:

Prepare WSC L2 testnet launch

Updates:

opup:

Add default values for ES in .envrc and intent.toml
Use justfile to manage lifecycle commands.

writing cast test flow:

almost done, but needs to figure out how to know l2 block number submitted(previously L2OutputOracle .latestBlockNumber()) now that L2OutputOracle is replaced with DisputeGameFactory.

TODO:

Think about e2e test flow.
Prepare a tool to handle scalar: https://github.com/ethstorage/optimism/issues/93
Investigate https://github.com/ethstorage/optimism/issues/82

Walrus: https://docs.google.com/document/d/18h3-s_j9c7Zg1ybU92EdsvX3hwxPkxnE/edit

EthStorage x Taiko:

[x] investigation: read docs and go through the taiko codes (Merge the latest code)
[x] integration test
[ ] Run on Holesky chain (Under test)

Test the airdrop of Soul Gas Token and use real data (412w addresses) for distribution.
Problems encountered:

Concurrently send transactions, each transaction is distributed to 1000 addresses at a time, and the gas usage reaches 26000000, which makes the gas price increase too fast. Soon the gas cost of the transaction exceeds 1 QKC, and the sending fails.
Network, RPC and other abnormalities cause the sending to fail. The last sending address needs to be recorded. The accuracy of the database method is not accurate. Instead, obtain the latest address records on the chain to judge.

Goal:

E2E test of 4-ary dispute game

Updates:

feat(MSFDG): support attackV2 & stepV2 for MSFDG
https://github.com/ethstorage/optimism/pull/94

TODO:

Fix PR suggestion

Goal:
E2E test of 4-ary dispute game
Updates:

E2E test
Review Bill' pr and fix bugs

TODO:

devnet test

Merge code - L1 blob
"inbox transaction failed"

add msg.value for batch tx

test op-node sync with es archive service
demo

Prepare for for super world computer layer2 launch

pr agency contract and narrative
update social media accounts info

To do

Eigenda follow up
kol campaign


Custom component in column header

Hello!
Is there any way to add a custom component to a column header?
For example, allow to put a name and a button with an Icon?

Hi,
on version CE, you can use HTML in header of column, and add button
example :
var myTable = jspreadsheet(DOMElement, {
        columns: [
            {title:"Column <br> <button onclick='myFunction()'>Click me</button>", type:"text"}
        ],
        stripHTML: false,
});

function myFunction() {
   alert('Hello world!');
}

Awesome! Thanks

@GBonnaire I have one last question. Is it possible to use JSX instead of HTML? As I'm working with React, I tried something like this:
 stripHTML: false,     columns: [       {         type: 'text',         title: <button onClick={() => alert('ok')}>Click me</button>,         width: 134,       },
But the output was: [object Object].
Thanks for the help!

No only string value in titre with quote (simple or double) or « ` »

Good morning, I understand the idea and I will apply it, but I would like to know how I can make the default add column already come with this button, it would be a default ...
How can I do it ...

Good morning, I understand the idea and I will apply it, but I would like to know how I can make the default add column already come with this button, it would be a default ...
How can I do it ...

Hello,
You can use event oninsertcolumn and modify header on insert column programmaticaly or manually 😊
oninsertcolumn: function(el, columnNumber, numOfColumns, historyRecords, insertBefore) {
      var obj = el.jspreadsheet;
      for(var ite_col=0; ite_col < numOfColumns; ite_col++) {
           var column = +columnNumber+ite_col;
           if(obj.headers[column]) {
                   // Change header here
                   obj.headers[column].innerHTML ="My New title"; // You can use append with HTMLElement
                    // Keep the title property
                    obj.headers[column].setAttribute('title', obj.headers[column].innerText); // Title without HTML
                    // Update title
                    obj.options.columns[column].title = obj.headers[column].innerHTML;
           }
      }
},

Perfectt but my problem is html not hender, only change text, html not render...

Sorry, i don't understand your problem, can you make a jsfiddle ?

I actually wanted to understand how you do it to be able to render the html

Actually, MyTable.headers is an array (container) of DOMElement of all header. By this way, you modify directly HTMLElement (DOM) and the render is automaticaly
in MyTable.options.columns contains all properties for generate DOM, but in your case, you want user can insert column and add this for all columns added. With onbeforeinsertcolumn you can't modify properties, with MyTable.setHeader() you can insert HTML in header, well, i use directly DOM container and modify directly HTML.

Got it, thank you very much, would you know how I can do the same but for the line number?
Thanks

Hi,
You have same object for row :
MyTable.rows
For Header (DOM) of specifics row
MyTable.rows[RowIndex].children[0]
And you have same event :
Event : oninsertrow: function(el, rowNumber, numOfRows, rowRecords, insertBefore) { /* ... */ }
You not have properties in options for row used in initialization, you should change all rows in onload event
Event : onload: function(el, obj) { /* ... */ }
Good luck 😉


Support for nested objects.

It would be nice if there was support for nested objects.
var obj = {
    name: 'tobi',
    last: 'holowaychuk',
    email<EMAIL_ADDRESS>    _id: '12345',
    info: {
        logged_at: "2016-08-05T14:48:52Z",
        updated_at: "2016-08-05T14:48:52Z"
    }
};

Hi @LeonardoCardoso,
this issue is quite old and it seems that @tj couldn't put much attention to it, but I believe the reason for that is that it would break the single responsibility principle, which makes this module small, simple and easily maintainable.
You can always create a package that would use only to filter nested objects, as well as arrays, etc.

@LeonardoCardoso @joelwallis see: http://github.com/jeffhuys/ronly


TestTwoHostsMultipleTenantsMixVlanVxlan_regress fails

The failure is due to a loop that get's created as a side-effect of adding the Host data-interface (eth2 in case of vagrant vm based setups) to all vlans. Since vxlan implementation also internally uses a vlan-tag for local forwarding. As a result the incoming vxlan packets also get put back on the Host interface resulting in a loop.
A possible fix is to add host interface only to the vlans created for vlan-based networks.
Below are the test logs of the failure:
++++++++++++++
=== RUN TestTwoHostsMultipleTenantsMixVlanVxlan_regress
2015/04/06 11:25:07 ovs-vsctl on node netplugin-node2:
2bfd5ce9-a922-48b3-9a76-65e929639b9d
Manager "ptcp:6640"
is_connected: true
Bridge contivBridge
Port "port4"
tag: 1
Interface "port4"
type: internal
Port "port2"
tag: 200
Interface "port2"
type: internal
Port "port1"
Interface "eth2"
Port "vxifpurple192168210"
tag: 1
Interface "vxifpurple192168210"
type: vxlan
options: {key="10001", remote_ip="<IP_ADDRESS>"}
ovs_version: "2.0.2"
--- FAIL: TestTwoHostsMultipleTenantsMixVlanVxlan_regress (89.42s)
docker.go:51: Error 'exit status 1' launching container 'myContainer4', Output:
PING <IP_ADDRESS> (<IP_ADDRESS>) 56(84) bytes of data.
From <IP_ADDRESS> icmp_seq=3 Destination Host Unreachable
From <IP_ADDRESS> icmp_seq=4 Destination Host Unreachable
From <IP_ADDRESS> icmp_seq=5 Destination Host Unreachable
            --- <IP_ADDRESS> ping statistics ---
            5 packets transmitted, 0 received, +3 errors, 100% packet loss, time 4013ms
            pipe 3

This test has been deprecated


Bug: BazelDependencies invoked without any output groups set.

Hi, build buddy folks,
Thank you so much for the amazing tool that you are building!
I'm evaluating the possibility of incremental migration to bazel by using rules_xcodeproj, so I'm trying different ways of injecting Bazel-generated xcodeproj into the existing project hierarchy.
I found the use case that looks like a bug and would like to share it with you. Sorry if It already was discussed and I missed it somewhere.
Describe the bug
I created the repository with a minimal example to reproduce the problem: https://github.com/i-pavlov/bazel-showcase.
Problem: BazelDependencies invoked without any output groups set.
The problem can be reproduced with the main branch of the repo.

I generated the TestLibraryProj.pbxproj project for the TestLibrary library in build with Bazel mode.
I opened generated pbxproj and manually added the CreatedByXcode swift static library. Configured TestLibrary  as a dependency of CreatedByXcode + linked it. (Added fInal state of a pbxproj to the repo).

After that, I'm trying to compile it.

Compiled TestLibrary target. -- OK
Compiled CreatedByXcode target for iPhoneSimulator --- OK
Cleared build forder by cmd + shift + K.
Try to compile CreatedByXcode for iPhoneSimulator again. --- FAIL

BazelDependencies target fails with this error:
PhaseScriptExecution Bazel\ Build /Users/ipavlov/Library/Developer/Xcode/DerivedData/TestLibraryProj-cvqpnvxrtlvoggbdmzezjtqobhxy/Build/Intermediates.noindex/TestLibraryProj.build/rules_xcodeproj/BazelDependencies/Script-E8D57D94F21E7818DF296078.sh (in target 'BazelDependencies' from project 'TestLibraryProj')
    cd /Users/ipavlov/Developer/bazel-showcase
    /bin/sh -c /Users/ipavlov/Library/Developer/Xcode/DerivedData/TestLibraryProj-cvqpnvxrtlvoggbdmzezjtqobhxy/Build/Intermediates.noindex/TestLibraryProj.build/rules_xcodeproj/BazelDependencies/Script-E8D57D94F21E7818DF296078.sh

error: BazelDependencies invoked without any output groups set. Please file a bug report here: https://github.com/buildbuddy-io/rules_xcodeproj/issues/new?template=bug.md.

The same error happens every time I build the CreatedByXcode target. Clearing derived data helps to reset the state, but the problem happens again if re-run steps (1) - (4).
The same thing happens not only with swift_library but also with ios_framework targets
Expected behavior
I'd expect to have consistent behavior before/after cleaning the build folder. Would be great if it will be possible to use targets from  Bazel-generated projects as a dependency in other .xcodeproj.
Versions

Bazel: 5.2.0
rules_xcodeproj: 0.7.0
rules_apple: 1.0.1
rules_swift: 1.0.0
Xcode: 13.2.1 and 13.4.1

rules_xcodeproj currently requires specially crafted schemes that have pre-build actions that provide information to the BazelDependencies target. That's what the error is referring to.
We've recently made progress on not needing that, as we can now tell which targets are being built, but it currently doesn't know which variant of a target is being built (e.g. device versus simulator).
This might be solved with Build with Bazel via Proxy, or we might solve it before then... but it's not a high priority for the 1.0 release.
I hadn't seriously considered how the project would interact with other projects in an xcworkspace. I'll have to think on that more.
An issue you might run into though is that not all Bazel targets will exist as Xcode targets. A big thing that rules_xcodeproj does is interopting with Bazel built things. Manually creating targets will most likely never work, as the project generator does a lot of work creating each target. - The general assumption is that your entire build graph can be built with Bazel. I think a tool that helps you migrate entirely to Bazel first, and using rules_xcodeproj's Build with Xcode mode, is a better incremental migration approach. I personally don't think one that uses Bazel for only part of the build graph is going to be easy to pull off.

Thanks a lot for the detailed explanation!
XCode mode looks promising for my scenario, will try it out

I'm going to close as "not planned" for now.


Develop

Codecov Report

Merging #18 into master will decrease coverage by 1.1%.
The diff coverage is 6.38%.

@@             Coverage Diff              @@
##             master      #18      +/-   ##
============================================
- Coverage     26.18%   25.07%   -1.11%
- Complexity      115      121       +6
============================================
  Files            10       10
  Lines           317      335      +18
============================================
+ Hits             83       84       +1
- Misses          234      251      +17

Impacted Files
Coverage Δ
Complexity Δ

src/Util/Executable.php
0% <0%> (ø)
9 <0> (ø)
:arrow_down:

src/Console/InitCommand.php
0% <0%> (ø)
44 <10> (+5)
:arrow_up:

src/Generator/TwigGenerator.php
91.11% <100%> (+0.2%)
17 <0> (+1)
:arrow_up:

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 d29eb1c...a7ce732. Read the comment docs.


feat: Add option to print logs of prepublishOnly script

Affected Packages
cli
Problem
Can not get the logs of prepublishOnly script while executing changeset publish
The script failed with error code: 1 command failed without any useful informattion. it's not easy to debug.
Example
info Publishing "@my/package" at "1.0.0"
error an error occurred while publishing @my/package
error sh -c npm run build:lib && npm run release:artifact
error npm ERR! code 1
error npm ERR! path /var/lib/workspace/package_main/packages/packgae1
error npm ERR! command failed
error npm ERR! command sh -c npm run build:lib && npm run release:artifact
error {
error   "error": {
error     "code": 1,
error     "summary": "command failed",
error     "detail": "sh -c npm run build:lib && npm run release:artifact"
error   }
error }
error
error npm ERR! A complete log of this run can be found in:
error npm ERR!     /root/.npm/_logs/2022-07-23T19_57_36_484Z-debug.log
error
error packages failed to publish<EMAIL_ADDRESS>
Proposed solution
changeset publish --logs
changeset publish --verbose

Yes, this would be immensely helpful! 🙏


Create Character “gerald-stumpton”

Automatically generated by Netlify CMS

👷 Deploy Preview for dynamic-cheesecake-5fbd8b processing.

Name
Link

🔨 Latest commit
db9ef9e823d7fa0a2f7064871a19a0fe7eb46f27

🔍 Latest deploy log
https://app.netlify.com/sites/dynamic-cheesecake-5fbd8b/deploys/62ffe8a2bdbafe00087314f7


bump LLVM

Sorry to just unilaterally merge this but it isn't clear who's going to review and the changes seem minor and uncontroversial.

Sorry for the delay, I usually can respond in 1-2 days.

No problem Raimondas, I know you're really busy!


PSR-4 autoloading

Directory structure with PSR-4 can be flatter. I think that it's easier to maintain.

Thank you!


Update go post submits

Issue #, if available:
Description of changes:
update the Go release post-submits to use a script as the entry rathe rthan a make target; this way we can set up the credentials needed ahead of time
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

depends on https://github.com/aws/eks-distro-build-tooling/pull/550

https://github.com/aws/eks-distro-internal/issues/241

/approve


security warning of sentencepiece

@skottmckay @edgchen1 , any more comment?
We need to merge this PR ASAP to fix the ci pipeline which is broken now.


spnego feature in curl crate

Shouldn't there be a spnego feature in the base curl crate rather than just in curl-sys? I now need to include curl-sys with spnego in my project.

Seems reasonable to me to reexport it!


IMU framerate and timestamping issues

Hello,
as mentioned here #60 , i have a similar problem regarding multiple sensor usage. i modified the streamrecorder app to also have 3 separate threads to obtain IMU_MAG, IMU_ACCEL and IMU_GYRO sensor information and these are written to .txt files and bundled
in a .tar file at the end just like how the PV camera data is bundled in tar. If I want to record the data by only using the IMUs, the framerate suffers from fluctuations, albeit not too much. however, if i want to access PV and IMU at the same time, the fluctuations are so much that HL IMU data does not match what i am doing in the real world at one instance in time.

When using the SensorVisualizationApp and printing the IMU data to the debug screen, the accelerometer publishes at about 12Hz and Gyroscope at about 20Hz. These seems to be not affected by fluctuations.

Obtaining IMU sensor information and recording it in Hololens storage leads to moderate fluctuations in data output rate when only the IMU is accessed. If RM cameras or the PV camera are accessed, the fluctuations are severe.

I am using the same method that is used for PV to obtain the timestamp for the IMU and i extended it to include other time variables as well. this extension can be found below (in this particular case, for the accelerometer):

     //time related data is created here
    float                     gettime                        = m_timer.GetTime();
    static unsigned long long getsystemrelativetime          = m_timer.GetSystemRelativeTime();
    static double             getsystemrelativetimeinseconds = m_timer.GetSystemRelativeTimeInSeconds();
    static unsigned long long getfiletime                    = m_timer.GetFileTime();

    //timerconverter related data
    HundredsOfNanoseconds timestamp             = m_converter.RelativeTicksToAbsoluteTicks(HundredsOfNanoseconds((long long)m_prevTimestamp));
    HundredsOfNanoseconds universalstamp        = m_converter.UniversalToUnixTime(fileTime);
    HundredsOfNanoseconds filetimetoabsticks    = m_converter.FileTimeToAbsoluteTicks(fileTime);
    HundredsOfNanoseconds reltoabsticksoffset   = m_converter.CalculateRelativeToAbsoluteTicksOffset();

    sprintf_s(printString, "####Accel: % 3.6f % 3.6f % 3.6f %f %I64d %I64d %I64d %f %llu %f %llu %I64d %I64d\n",
        sample.x,
        sample.y,
        sample.z,
        sqrt(sample.x * sample.x + sample.y * sample.y + sample.z * sample.z),
        (lastSocTickDelta * 1000) / timeStamp.HostTicksPerSecond,
        timestamp.count(),
        universalstamp.count(),
        gettime,
        getsystemrelativetime,
        getsystemrelativetimeinseconds,
        getfiletime,
        filetimetoabsticks.count(),
        reltoabsticksoffset.count()
    );

here i am using the Timer.h and the TimeConverter.h headers to obtain time related values.

Timestamping is directly affected from the sensor outputrate in the sense that the timestamps of the IMU drift into the future whereas the timestamps of the PV camera reflects the correct time in the real world.

With that said, I would like to know if it is possible to obtain correct timestamp information for each particular IMU frame or will it be always affected by the sensor publish rate fluctutations? This problem makes it hard to compare HL IMU with high grade imus because of the drift in timestamps and sever fluctuations in refresh rates.
thank you in advance,

I would like to update my question as I have found out that the app still records data even the stop button is pressed for some indefinite time. I have come to this conclusion because after I compare the IMU data with my correctly timestamped high-grade IMU data, their movements match up. The camera quits recording data after I press the stop button and I can verify this with the last timestamp that I obtained from the images. To work around this issue, I am cutting the IMU information from my recorded data after the camera turns off properly.
Additionally, I have found out that the IMU data drifts significantly as time goes on, have a look at the attached matlab figure for visualization where I compare the data with the high grade XSENS IMU (in this particular case z-axis of the gyroscope) I have marked the peaks so that you can see the increasing time drift of the IMU from the beginning of the capture till the end.

Is this unavoidable? The average accelerometer rate becomes 10Hz and the average gyroscope rate becomes 13Hz with this case, albeit the time difference between consequtive data points is fluctuating severely, have a look at the following images.

I would appreciate some insight on this matter,
thank you in advance.

Hello everybody,
i would like to close the issue, since i found out that this delayed "behavior" was because of incorrect plotting against the samples. if we plot against time, the movement patterns are synching up nicely. on the other hand, irregular sampling rates can be worked around with the implementation of interpolation algorithms.


Staking not working with RPC

Hello,
I try to enable staking with walletpassphrase command but it doesn't work. It worked good before the last big update.
The command output is fine but stake is never activated. The command I'm using is something like this one:
walletpassphrase XXXX YYYYYYYY true
Thanks in advance.

Try staking with v3.3.4 we made some improvements and bug fixes. You can git pull our v3.4 branch before we officially release it.

Okay, I'm going to try

It worked! Thanks 👍


Resolve #1813 NTR suprabasal keratinocyte

Addresses  #1813 NTR suprabasal keratinocyte

See inline comments.
Recommend removing redundant subclass.

Thank you for the review, all comments have been addressed.


Gracefully degrade features when missing certain permissions

What would you like to be added:
Continue to function as far as possible in scenarios where the user lacks certain permission. For example, when the user has a specific Kubernetes namespace in mind, but lacks permission to get, list, or describe namespaces.
Why is this needed:
So that users are able to enjoy Lens in more business environments.
Environment you are Lens application on:

Kubernetes distribution: [EKS, AKS, GKE, Rancher, ...] EKS
Desktop OS:  macOS

If you already know the name of the namespace that you have access to but cannot list namespaces then you can hardcode that namespace under cluster settings. The heading should be "Accessible Namespaces".


Windows: Adds binaries for v3.0.0

@xzyfer, here we go! :sunglasses:

Before merging this, should we lock down v3.0.0-beta.7 tag in this repo?

Hmm I'm going to assume the 3.0.0-beta.6 Windows and Linux binaries work fine for 3.0.0-beta.7 since we've had no issues. Will tag 3.0.0-beta.7 now.

Done https://github.com/sass/node-sass-binaries/releases/tag/v3.0.0-beta.7

Great thanks! :+1:
Looking forward for v3.0 stable. :sunglasses:


Gradle 4.x hangs when using composite builds and a plugin project

Gradle hangs indefinitely when the included build is substituted in the classpath of the buildscript.
Expected Behavior
Gradle does not hang.
Current Behavior
Gradle hangs while resolving the compile classpath.  This happens reliably with a given project.
Context
It appears to be related to the number of direct dependencies in the build script, the number of workers and the order the substituted project appears.
e.g., The build that hangs looks something like this (but I haven't been able to reproduce it):
buildscript {
   dependencies {
     classpath 'org:pluginA:1.0'
     classpath 'org:pluginB:1.0'
     classpath 'org:pluginC:1.0'
     classpath 'org:pluginD:1.0'
     classpath 'org:pluginE:1.0'
  }
}

With --max-workers=4, running gradle tasks --include-build=../path/to/pluginE will cause a hang.
Reordering the dependencies fixes the problem.  The substituted plugin just needs to be within the first 'max workers' number of dependencies.  I can provide more context privately with information about the complexity of the given plugin projects.
Your Environment
This was reproducible with 4.0-4.2.

I believe that I've run into this issue as well on gradle 4.5. It's a particularly nasty failure case as it gives very little indication as to what is causing the hang and can be impossible to reproduce locally since environmental factors such as cpu count are at involved.

Is this still an issue? There have been a bunch of deadlock fixes since 4.2 (and some new ones added, no doubt).

@adammurdoch I just ran into this issue with 5.1.1, or at least I believe it's the same issue.
Downstream build uses a plugin of an included build.
When executing gradlew idea for the downstream build, it is forever stuck in:
> :xxx:ideaModule > Resolve dependencies of :xxx:compileClasspath
> :yyy:ideaModule > Resolve dependencies of :yyy:compileClasspath

Debug output is an endless loop of:
02:48:49.775 [DEBUG] [org.gradle.launcher.daemon.server.Daemon] DaemonExpirationPeriodicCheck running
02:48:49.776 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry.
02:48:49.776 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.
02:48:49.776 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
02:48:49.777 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry.
02:48:49.777 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.
02:48:49.777 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
02:48:50.909 [DEBUG] [sun.rmi.transport.tcp] RMI TCP Connection(11)-<IP_ADDRESS>: (port 53133) connection closed
02:48:50.909 [DEBUG] [sun.rmi.transport.tcp] RMI TCP Connection(11)-<IP_ADDRESS>: close connection
02:48:52.378 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting OS memory status event {Total:<PHONE_NUMBER>8, Free:<PHONE_NUMBER>6}
02:48:52.378 [DEBUG] [org.gradle.launcher.daemon.server.health.LowMemoryDaemonExpirationStrategy] Received memory status update: {Total:<PHONE_NUMBER>8, Free:<PHONE_NUMBER>6}
02:48:52.378 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting JVM memory status event {Maximum: 514850816, Committed: 479199232}
02:48:55.424 [DEBUG] [sun.rmi.transport.tcp] RMI TCP Connection(12)-<IP_ADDRESS>: (port 53133) connection closed
02:48:55.424 [DEBUG] [sun.rmi.transport.tcp] RMI TCP Connection(12)-<IP_ADDRESS>: close connection
02:48:57.375 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting OS memory status event {Total:<PHONE_NUMBER>8, Free:<PHONE_NUMBER>2}
02:48:57.375 [DEBUG] [org.gradle.launcher.daemon.server.health.LowMemoryDaemonExpirationStrategy] Received memory status update: {Total:<PHONE_NUMBER>8, Free:<PHONE_NUMBER>2}
02:48:57.376 [DEBUG] [org.gradle.process.internal.health.memory.MemoryManager] Emitting JVM memory status event {Maximum: 514850816, Committed: 479199232}
02:48:59.775 [DEBUG] [org.gradle.launcher.daemon.server.Daemon] DaemonExpirationPeriodicCheck running

Setting org.gradle.parallel=true for the downstream build immediately solves the issue.
The issue appeared out of nowhere; I still don't know what triggered it and desperately tried to fix it for hours until I found this issue.

When executing gradlew idea for the downstream build, it is forever stuck in:

Setting org.gradle.parallel=true for the downstream build immediately solves the issue.

Exactly the same experience with the idea plugin on gradle 5.5.1. Parallel workaround works, e.g., gradle --parallel idea.

Instead of using gradlew idea, the import features of the latest IDEA version should be used directly. If there is still an issue as the one described here with Gradle 6.7+, please open a new issue with a reproducer.


Performance of reading result files

The performance of reading result files could be considerably improved.
Here are two examples of reading files on my machine (16 GB of RAM, 4 cores 2.7 GHz, Samsung MZVLW512HMJP drive):

A ~1.1 GB network result file with ~58000 times series and ~4300 time steps currently takes the following time:

Load data into ResultData object takes ~20 seconds and ~1.1 GB of memory
Reading in memory from ResultData to data frame takes ~220 seconds and ~2.2 GB of memory

A ~1.5 GB catchment result file with ~27000 time series and ~15000 time steps currently takes the following time:

Load data into ResultData object takes ~12 seconds and ~1.5 GB of memory
Reading in memory from ResultData to data frame takes ~210s and ~3.0 GB of memory

I think the ii. step should be at least a factor of 10 faster, because it deals with copying data in memory. I suspect there is a problem with Python to C# interop.

The upcoming pull request has the following performance increases for step ii.:

Network result file: ~10 seconds and 1.1 GB of memory
Catchment result file: ~6 seconds and 1.5 GB of memory


RAD Analog read validation

Completed in https://github.com/MacRover/maxwell/tree/validation/RAD/firmware/RAD/elec_validation/STM32-ADC


auth: using deviceId instead of deviceName to identify a device

I am in favour of the device name not having to be unique. In my application, I generate the device name from device information from UAParser. This can often lead to name collisions (same device type, same operating system).
I have noticed that when I remove a device, all devices with the same name are removed. I therefore suggest to always use the deviceId and not the deviceName to identify a device.

Hi @michaelkamphausen  - good catch, thanks!
I've written a test confirming the fix - can you set this PR to allow edits by maintainers?
Thanks!


NIX Sigma 3.0rc2 hangs up (again)

Debug log below.
Issue:
Started wallet. Ghosted 5000 Nix. After confirmation unghosted successfully 4000 Nix. After that tried to unghost 50 Nix --> wallet hangs up.
After restarting wallet the Ghost Vault shows 0 ghosted Nix (showing 1000 ghosted Nix would be correct).
W10 x64

Debug log:
nix debug 2.log

Duplicate of #33


Apps in space summary do not contain route paths

When querying for a space summary, it contains a list of all apps in the space. The apps will also contain all their routes (i.e. see https://apidocs.cloudfoundry.org/230/spaces/get_space_summary.html).
However, the routes do not contain the recently introduced path field, and the urls field also does not contain the path in the listed URLs.
Here is an example of what I get and what I expect:
Actual:
  "apps": [
    {
      "guid": "34a994d9-4c34-402a-975a-6ebf7680ce63",
      "urls": [ "host-1.domain-1.example.com" ],
      "routes": [
        {
          "guid": "f5f4bdf9-9616-4f2b-902c-81115a15584d",
          "host": "host-1",
          "domain": {
            "guid": "ac6abb36-f28f-4aa6-ac5b-5e50a1107dc4",
            "name": "domain-1.example.com"
          }
        }
      ],
      ...
    }
  ]

Expected:
  "apps": [
    {
      "guid": "34a994d9-4c34-402a-975a-6ebf7680ce63",
      "urls": [ "host-1.domain-1.example.com/some/path" ],
      "routes": [
        {
          "guid": "f5f4bdf9-9616-4f2b-902c-81115a15584d",
          "host": "host-1",
          "path": "/some/path",
          "domain": {
            "guid": "ac6abb36-f28f-4aa6-ac5b-5e50a1107dc4",
            "name": "domain-1.example.com"
          }
        }
      ],
      ...
    }
  ]

@MrWolfZ This should be addressed in the next cf-release that includes https://github.com/cloudfoundry/cloud_controller_ng/commit/09afe2453ddbee8f2b76e1c5dd25db07e4adfe74


[Bug] Cannot install mvn project

Actual behavior

[x] Unable to compile a Page Object

[ ] Invalid generated code

[ ] Runtime error

What is your expected behavior?

There should be no errors in the maven install, either in the terminal or in eclipse.
Steps to reproduce

Just follow the initial setup of the readme.md:
git clone https://github.com/salesforce/utam-java-recipes.git
cd utam-java-recipes
mvn clean install
Environment

Apache Maven 3.8.2
java 11.0.12 2021-07-20 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.12+8-LTS-237)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.12+8-LTS-237, mixed mode)
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
Additional context

Eclipse importing issue:

@anidem210 This looks like an issue with the UTAM Java compiler. Thank you for bringing it to our attention. We'll try to get it figured out and fixed as soon as we can.

@anidem210 We have identified the issue in the UTAM Java compiler and it is fixed in version 1.0.5 of the same. A PR has been opened to update to the fixed version of the compiler, and once merged, this issue should be resolved.


Is it necessary to change the name for mod.rs?

There is mod.rs every where. I can't know this mod.rs is belong to which crate, I have to see it path. Every time i want to open som crate's mod.rs, i can't locate it by file name immediately, I should find the exactly path in the editor browser.
Is it necessary to change the name for mod.rs? like mod_dir_name.rs or just dir_name.rs?

Please read The Rust Programming Language — Alternate File Paths


Go to definition error for svelte components

Description
When trying to goto definition using "vim.lsp.buf.definition()" on a Svelte component in a JS file, I get this error:
Error executing vim.schedule lua callback: ...vim/HEAD-e27377e/share/nvim/runtime/lua/vim/lsp/util.lua:1207: Cursor position outside buffer
stack traceback:
        [C]: in function 'nvim_win_set_cursor'
        ...vim/HEAD-e27377e/share/nvim/runtime/lua/vim/lsp/util.lua:1207: in function 'jump_to_location'
        ...HEAD-e27377e/share/nvim/runtime/lua/vim/lsp/handlers.lua:410: in function 'handler'
        ...r/neovim/HEAD-e27377e/share/nvim/runtime/lua/vim/lsp.lua:1515: in function 'cb'
        vim/_editor.lua:324: in function <vim/_editor.lua:323>

However, it does jump to the definition once I hit continue which is very annoying.
https://github.com/neovim/nvim-lspconfig/assets/29102582/0ffc521e-6197-41a5-8692-2b21abddf939
Neovim version
NVIM v0.10.0-dev-551+ge27377e33-Homebrew
Build type: Release
LuaJIT 2.1.0-beta3
Nvim-lspconfig version
No response
Operating system and version
macOS 12.6.6
Affected language servers
tsserver
Steps to reproduce

npm i svelte typescript-svelte-plugin
Crate a jsconfig to reference the TS svelte plugin.
Create a JS file and svelte component and import the component.
Goto definition of component from the JS file.

Actual behavior
An error saying the cursor is out of position appears. Once continue is pressed, the definition is opened normally.
Expected behavior
No response
Minimal config
I can add this later if necessary.

LSP log
N/A

update your neovim version

I've tried the same test using the latest nightly release and I get the exact same error.


[VS Code] [Audio] Request startOrJoinCall failed unexpectedly without providing any details.

Error:
Request startOrJoinCall failed unexpectedly without providing any details.
Steps to Reproduce:
1.
2.

Version Data

extensionName
VSLS-Audio

extensionVersion
0.1.91

applicationName
VSCode

applicationVersion
1.52.1

platformName
MacOS

platformVersion
19.6.0

Thank you for your feedback.
Do you have any logs we can use to identify what might have happened in your scenario?

Thank you for your feedback.
Do you have any logs we can use to identify what might have happened in your scenario?

Closing due to inactivity.

Closing due to inactivity.


Add release/build jobs to adapters' repositories

closed due to the adapters' deprecation in favor of collectors


Document variables

Codecov Report

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

@@           Coverage Diff           @@
##           master      #49   +/-   ##
=======================================
  Coverage   99.11%   99.11%
=======================================
  Files          19       19
  Lines         225      225
=======================================
  Hits          223      223
  Misses          2        2

Impacted Files
Coverage Δ

src/components/dropdown/Dropdown.js
100% <ø> (ø)
:arrow_up:

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 61365db...865ea95. Read the comment docs.


missing abilities

I think the repository is missing some files.  When I try to run smash_and_grap.rbw I get the following error:
mrwerewolf@Argentarius ~/projects/smash_and_grab $ ruby bin/smash_and_grab.rbw
/home/mrwerewolf/projects/smash_and_grab/lib/objects/entity.rb:3:in `require_relative': cannot load such file -- /home/mrwerewolf/projects/smash_and_grab/lib/abilities/ability (LoadError)
	from /home/mrwerewolf/projects/smash_and_grab/lib/objects/entity.rb:3:in `<top (required)>'
	from /home/mrwerewolf/projects/smash_and_grab/lib/main.rb:8:in `require_relative'
	from /home/mrwerewolf/projects/smash_and_grab/lib/main.rb:8:in `block in require_folder'
	from /home/mrwerewolf/projects/smash_and_grab/lib/main.rb:4:in `each'
	from /home/mrwerewolf/projects/smash_and_grab/lib/main.rb:4:in `require_folder'
	from /home/mrwerewolf/projects/smash_and_grab/lib/main.rb:62:in `<top (required)>'
	from bin/smash_and_grab.rbw:98:in `require_relative'
	from bin/smash_and_grab.rbw:98:in `<main>'

Oh, very sorry! The game is in early alpha and isn't really worth playing (and as you found out, doesn't work). I'm in the middle of a big refactor to make superpowers entirely generic, and I have several new files not under source control yet, although I kept adding/fixing unrelated stuff and I must have committed something incompletely. Anyway, shouldn't have pushed to the master branch where I am (or whatever lame excuse I can think of :D).
Sorry for wasting your time. Really the game isn't playable yet; you get nearly all the information about it just by looking at the two screenshots. My other 4 games should work properly though (http://spooner.github.com/games).

Hey no problem!  I'm not really planning on "playing" Smash and Grab in it's unfinished state.  I'm trying to get into game programming and I really like the work you did with Wrath.
I'm trying to make an old school turn-based strategy game with a few of my friends so I'm trying to pick apart your approach in Smash and Grab to help get me started.  I hope you don't mind.

Yeah, that is fine. I'd recommend you try the Gosu IRC channel (irc.freenode.net #gosu), which is a good place to discuss the finer points of making games with Gosu (and sometimes, my older code is not as good as it could be if I wrote it now from scratch and often has been pushed into new projects without being improved, so copying old code isn't always the most efficient way). And yes, feel free to peer at and copy all you want and ask if anything is a bit odd.

Thank you, I really appreciate it.

This has been fixed now. Sorry the repos was a bit messed up for a while!

Awesome. I look forward to seeing what you've got so far.


Feature/menu and tests

In this pull request, I have done the following:

[x] Created a navigation menu that allows users to open all of the pages you created.
[x] Added test files

Thank you @andrianarivo, I truly appreciate your time and efforts in reviewing


[BUG] test_exporting_backing_image_from_volume failed in HDD test

Describe the bug
Using longhorn v1.2.5-rc1, the automated test case test_backing_image.test_exporting_backing_image_from_volume sometimes (>50%) failed in HDD regression test.
To Reproduce
Steps to reproduce the behavior:

setup k8s cluster with 1 control plane and 3 workers in AWS, and attach an extra HDD volume with volume type "st1" in each worker
install longhorn v1.2.5-rc1
use HDD volumes as longhorn disks instead of the default SSD one
run automated test by editing test.yaml:

    args: [
           "-k", "test_exporting_backing_image_from_volume",
          ]

during the test running, the longhorn volume will stuck in attaching state, but it expects to be attached
check the disk status in backing image page, the status will never become ready, but stuck in in progress -> 100% -> failed loop, and the failed message says: failed to finish file /data/tmp/test-bi2-28cd0cc7.tmp and /data/tmp/test-bi2-28cd0cc7 processing: timeout executing: qemu-img [convert -f raw -O qcow2 /data/tmp/test-bi2-28cd0cc7.tmp /data/tmp/test-bi2-28cd0cc7.tmp.qcow2tmp], output , stderr, , error <nil>

Expected behavior
test case passed
Log or Support bundle
If applicable, add the Longhorn managers' log or support bundle when the issue happens.
You can generate a Support Bundle using the link at the footer of the Longhorn UI.
Environment

Longhorn version: v1.2.5-rc1
Installation method (e.g. Rancher Catalog App/Helm/Kubectl): kubectl
Kubernetes distro (e.g. RKE/K3s/EKS/OpenShift) and version: v1.23.7+k3s1

Number of management node in the cluster: 1
Number of worker node in the cluster: 3

Node config

OS type and version:
CPU per node:
Memory per node:
Disk type(e.g. SSD/NVMe): aws ebs volume type "st1" 160GB
Network bandwidth between the nodes:

Underlying Infrastructure (e.g. on AWS/GCE, EKS/GKE, VMWare/KVM, Baremetal): AWS
Number of Longhorn volumes in the cluster:

Additional context
Add any other context about the problem here.

This will be tackled in later releases 1.3.x.

Discussed with @roger-ryao
We haven't seen this issue in daily regression after v1.3.x
Closing the issue

After triggering the HDD test on the master-head and confirming that the test has passed, we can close this issue.
https://ci.longhorn.io/job/private/job/longhorn-tests-regression/5135/testReport/tests/test_backing_image/


samples: Use immediate logging mode in watchdog related samples

Starting with commit b9b43a0eb772a464bba13833d11e3a31fbf4e09e, printk() messages are handled by the logging subsystem. This can make troubles in watchdog related samples if the deferred logging mode is used (and currently it is by default), because those samples are ended by a reset and some messages may not get a chance to be outputted. Since the same problem concerns also the ordinary logging messages that may be produced during execution of the samples, this commit fixes it by switching to the immediate logging mode, not by just disabling the LOG_PRINTK option.
Fixes #52707.
Fixes #52708.

cc @nordic-piks


Cassandra NoHostAvailableException connection time out

We are using mesos/marathon to manage our docker containers, zipkin ran fine for 15 mins or less -> then heath check starts failing.
we found a bunch of errors in our service log : cannot load service names: Request processing failed; nested exception is com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /xxxxx:9042 (com.datastax.driver.core.exceptions.TransportException: [/1xxxx:9042] Connection has been closed),/(com.datastax.driver.core.exceptions.TransportException: [xyz/<IP_ADDRESS>:9042] Connection has been closed))
at com.datastax.driver.core.exceptions.NoHostAvailableException.copy(NoHostAvailableException.java:84) ~[cassandra-driver-core-3.5.0-shaded.jar!/:?]
at com.datastax.driver.core.exceptions.NoHostAvailableException.copy(NoHostAvailableException.java:37) ~[cassandra-driver-core-3.5.0-shaded.jar!/:?]
at com.datastax.driver.core.DriverThrowables.propagateCause(DriverThrowables.java:37) ~[cassandra-driver-core-3.5.0-shaded.jar!/:?]
at com.datastax.driver.core.DefaultResultSetFuture.getUninterruptibly(DefaultResultSetFuture.java:245) ~[cassandra-driver-core-3.5.0-shaded.jar!/:?]
at zipkin2.storage.cassandra.internal.call.ResultSetFutureCall.getUninterruptibly(ResultSetFutureCall.java:74) ~[zipkin-storage-cassandra-2.9.1.jar!/:?]
at at zipkin2.storage.cassandra.internal.call.ResultSetFutureCall.getUninterruptibly(ResultSetFutureCall.java:74) ~[zipkin-storage-cassandra-2.9.1.jar!/:?]
at zipkin2.storage.cassandra.internal.call.ResultSetFutureCall$1CallbackListener.run(ResultSetFutureCall.java:50) [zipkin-storage-cassandra-2.9.1.jar!/:?]
at zipkin2.storage.cassandra.internal.call.DirectExecutor.execute(DirectExecutor.java:23) [zipkin-storage-cassandra-2.9.1.jar!/:?]````

I thought is better to open an issue, we are investigating on our side as well.
I did also notice zipkin cassandra is using SASI index and per datastax doc?  SASI indexes in DSE are experimental. DataStax does not support SASI indexes for production https://docs.datastax.com/en/dse/5.1/cql/cql/cql_using/useSASIIndex.html.

how many service names do you have? how many spans do you have per day?
This might help someone help answer

@adriancole Just saw your message, Not even able to access our c* nodes this morning.. I see a bunch of errors in c* logs
Can't open index file at /cassandra/data/zipkin2/span-15bb5b006e7111e8a8d2af46ca93ec1b/mc-2673-big-SI_span_l_service_idx.db, skipping. org.apache.cassandra.io.FSReadError: java.io.EOFException at org.apache.cassandra.index.sasi.disk.OnDiskIndex.<init>(OnDiskIndex.java:164) ~[apache-cassandra-3.9.0.jar:3.9.0] at org.apache.cassandra.index.sasi.SSTableIndex.<init>(SSTableIndex.java:68) ~[apache-cassandra-
ERROR [Reference-Reaper:1] 2018-06-14 14:46:11,044 Ref.java:224 - LEAK DETECTED: a reference (org.apache.cassandra.utils.concurrent.Ref$State@74bce35c) to class org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier@2054886331:/cassandra/data/zipkin2/span-15bb5b006e7111e8a8d2af46ca93ec1b/mc-2673-big was not released before the reference was garbage collected

as of now we don't have much service names I see only 292 distinct service in the table
total records are 404118
select count(*) from span_by_service;
count
404118

I'm no expert but it looks like you are using cassandra 3.9 which is likely
to not work well. We use 3.11 and in fact the 3.11.3 will give the best
results when released (which is shortly).

@alseddnm are you able to try with more recent versions to see if things work better?

same issue even with official cassandra docker image latest one


BASE_URL env variable (reverse proxy support)

When behind a reverse proxy URL's are generated with the internal domain rather than the external one. Which breaks features like the Last.fm connect callback.
Configure your external domain here and it will work as expected.

Isn't this something to configure at a proxy/webserver level instead?

There's two alternatives that one could normally use for these situations:

The X-Forwarded-For header
Rewriting URLs as the body passes through the proxy

Both approaches are attempted by my apache reverse proxy.
The problem with this is:

X-Forwarded-For is blissfully ignored by Laravel and reading their documentation is about as useful as slapping yourself across the face with a mouldy sock.
Rewriting URLs seems to work only when they are actually at the root of the URL.
For example http://<IP_ADDRESS>/somepath gets translated to http://somedomain.org/somepath. But the issue I noticed was the Last.fm connect URL. Which has https://last.fm/stuff?callback=http://<IP_ADDRESS>/api/things and this does not get rewritten.

The fix I suggest here is one that makes the assumption that the person writing the .env is smarter than the usual automagic approach and has a reason to configure this. While the default to leave it blank will keep the previous behavior as-is.
Besides that it's also a lot more performant than scanning your content at the proxy level to replace strings in them.
As an addition to my current code, you might also choose to check the contents of the X-Forwarded-For header too, this can give a better zero-config experience for new proxy setups, but may give weird situations for people upgrading an existing proxy setup.

I see what you mean, but still this shouldn't be handled at the app level I believe. I personally am on a shared host (Webfaction) with nginx proxying Apache, and for all of my Laravel/Lumen apps, this issue doesn't happen, which leads me to believing this has something to do with server configuration instead.

Searching further on this issue, it seems that this is handled by Symphony's request class.
http://symfony.com/doc/current/components/http_foundation/trusting_proxies.html
And a Laravel middleware exists to configure this neatly.
https://github.com/fideloper/TrustedProxy
This will allow the X-Forwarded-* headers to be used. I will test that instead.
On the proxy vs app responsibility, I disagree @phanan. The proxy in my opinion should be completely oblivious to application logic such as how to determine what URLs should be generated. A crude solution like find-replacing certain content on the proxy should be avoided if possible. Having the proxy append some X-Forwarded-* headers is intended exactly for that purpose. To let the application figure this out itself.

#165 is a better solution, it works well for my current reverse proxy setup.


Some url can't work on  it

https://www.chegg.com/homework-help/questions-and-answers/babies-birth-weights-normally-distributed-mean-120-ounces-standard-deviation-20-ounces-low-q21343037
https://www.chegg.com/homework-help/questions-and-answers/4-consider-gambler-s-ruin-problem-p-04-n-6-starting-state-3-determine-expected-amount-time-q40590496
https://www.chegg.com/homework-help/questions-and-answers/suppose-swing-ball-mass-m-vertical-circle-string-length-l--probably-know-experience-minimu-q2979048

Can you share the raw Html for these questions from logs: scraper.log
Don't upload the whole scraper.log, it logs cookie

qestion.txt
I have got the same problem. Can you please look at it?

and what's the error message.

line 16, in main file_saved_path = chegg.url_to_html(url=question_url, file_name_format=default_save_file_format),
line 521, in url_to_html headers, heading, question_div, answers__, question_uuid = self._parse(html_text=html_res_text,
line 455, in _parse answers_div = self._parse_answer(soup, questionUuid, html_text, url, chapter_type=chapter_type),
line 369, in _parse_answer return self.render_chapter_type_html(res_data),
line 122, in render_chapter_type_html solutionV2 = problem_d['solutionV2'][0]
IndexError: list index out of range
These are the errors.

Ohh, that question is not solved

Ohh, I see. Thanks, buddy!


Add seccomp include file for building

Signed-off-by: yangshukui<EMAIL_ADDRESS>when build deb/rpm, we install libseccomp.a only and miss seccomp.h. it maybe lead to fail of docker binary' s seccomp feature.
eg .
docker run --rm -it --security-opt seccomp:/root/test/seccomp/profile.json ubuntu ls /
conditional filtering requires libseccomp version >= 2.2.1

ping @jfrazelle @tianon :-)

This is incorrect the header files are in libseccomp

thanks for your reviews,but what'wrong about the header file ? if the header file is incorrect, we should correct it  rather than ignore it . the header file(./include/seccomp.h) that libseccomp.a use and the file(/usr/include/seccomp.h) that libseccomp-golang use should be the same.

can you see the comment here: this is why we do it this way
https://github.com/docker/docker/pull/18930/files#diff-3c674bcf0637f53705078bf2485e3a09L107
On Mon, Dec 28, 2015 at 5:18 PM, keloyang<EMAIL_ADDRESS>wrote:

thanks for your reviews,but what'wrong about the header file ? if the
header file is incorrect, we should correct it rather than ignore it . the
header file(./include/seccomp.h) that libseccomp.a use and the
file(/usr/include/seccomp.h) that libseccomp-golang use should be the same.
—
Reply to this email directly or view it on GitHub
https://github.com/docker/docker/pull/18930#issuecomment-167689754.

@jfrazelle Does this problem fixed by https://github.com/docker/docker/pull/18949 ?

yes


Move prepass layout definition to mesh_bindings

Objective
We could re-use the bind group definitions from mesh_bindings for the prepass view layout.
Solution

Create a PrepassLayouts struct and define it similarly to MeshLayouts.

Open questions
There has been many other suggested solutions to the bind group declaration verbosity. I think this solution is a pretty poor one, since one needs to create two new functions per possible bind groups. But I don't recall any concrete steps. This re-uses something that already exists, so it's least likely to be controversial.
mesh_bindings.rs probably needs to be renamed since PrepassLayouts is not related to mesh.

Migration Guide

PrepassViewBindGroup -> PrepassViewBindGroups (plural)
PrepassPipeline's view_layout_[no_]motion_vectors fields are
now perpass_layouts.[no_]motion_vectors

Actually closing this. Since as I said I think it's not a good solution & it's clear mesh_bindings.rs is actually a tarpit, not a solution from the animated motion vectors PR.


Add or upgrade packages to requirements

A diff with the Luftqualitaet_Sachsen-Projekt and reelport-Repository has given the following results.

Bitbucket: https://bitbucket.org/transcode/transcode-django-project/issue/14
Originally reported by: Rene Muhl
Originally created at: 2014-10-24T14:04:34.950

From Markus Zapke-Gründemann on 2014-10-24 12:11:04+00:00
I don't think we need any of the additional packages used by CodeforLeipzig/luftqualitaet_sachsen. They use most of them for scraping.
But of course we can update the packages we use already.

From Max Brauer on 2015-01-06 08:50:09+00:00
I updated...

Django to 1.7.2
Jinja2 to 2.7.3
Pygments to 2.0.1
Werkzeug to 0.9.6
bumpversion to 0.5.1
cov-core to 1.15.0
django-debug-toolbar to 1.2.2
django-grappelli to 2.6.3
docutils to 0.12
enum34 to 1.0.4
envdir to 0.7
freezegun to 0.2.8
ipaddress to 1.0.7
ipython to 2.3.1
isort to 3.9.4
natsort to 3.5.1
pep8 to 1.5.7
pies to 2.6.3
pies2overrides to 2.6.3
psycopg2 to 2.5.4
py to 1.4.26
pytest to 2.6.4
pytest-cov to 1.8.1
pytest-django to 2.7.0
pytz to 2014.10
six to 1.9.0
sqlparse to 0.1.14
tox to 1.8.1
virtualenv to 12.0.5
wheel to 0.24.0


HOSTEDCP-1156: Add defaulting webhook to installation and notes

What this PR does / why we need it:
Adds the enable-defaulting-webhook flag to the hypershift install and a note about the flag only being available for OCP versions greater than or equal to 4.14.
Adds note to create cluster command that either the release-image or release-stream flag is needed when the enable-defaulting-webhook is not available.
Which issue(s) this PR fixes:
Fixes HOSTEDCP-1156
Checklist

[x] Subject and description added to both, commit and PR.
[x] Relevant issues have been referenced.
[x] This change includes docs.
[ ] This change includes unit tests.

Adds documentation requested in https://github.com/openshift/hypershift/pull/2892#issuecomment-1673193901

/lgtm

/approve
/lgtm


Request: Add support to bind to localhost only

By default Wetty listens globally on <IP_ADDRESS>. It would be nice for those of us using Wetty behind Nginx or Apache to have it only bind to localhost.

I have a pull request #65 that fixes this.


Question: how to run keywriter

Hi! Super novice beginner question, but I was wondering how to run the keywriter package that I installed through toltec?
I hear a lot of stuff around installing various GUI layers to manage apps etc, do I need to do that? I thought it might be as simple as calling it from ssh but that didn't do anything 🤔
$: ~/ keywriter
EPD platform plugin loaded!
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
qrc:/main.qml:114:5: QML Rectangle: Cannot anchor a vertical edge to a horizontal edge.
XMLHttpRequest: Using GET on a local file is dangerous and will be disabled by default in a future Qt version.Set QML_XHR_ALLOW_FILE_READ to 1 if you wish to continue using this feature.
Creating window
qrc:/main.qml:240:44: Unable to assign QString to QQuickAnchorLine
qrc:/main.qml:240:22: Unable to assign QString to QQuickAnchorLine
Framebuffer has wrong id: "mxcfb"
Framebuffer initialized: QImage(QSize(1404, 1872),format=QImage::Format_RGB16,depth=16,devicePixelRatio=1,bytesPerLine=2808,sizeInBytes=5256576) 5256576

Hi @ayroblu, it seems that your question was answered on Discord?

Sorry, yes!


lcov code coverage output is incorrect for TypeScript

Since Jest 20, ts-jest no longer does code coverage mapping for TypeScript projects. Instead, it's recommended to use Jest's mapCoverage option.
Given Razzle does not currently support passing mapCoverage to Jest, code coverage output can be incorrect for TypeScript projects.
Example:

The simplest solution I can see is to just add mapCoverage to supportedKeys in createJestConfig, unless that would cause some other issue, but it appears to work just fine.
After editing createJestConfig to allow mapCoverage: true:

That’s fine

It's probably worth closing this issue. :)

Quite right!


Prevent getJSON failing to retrieve data from setting a non-zero exit code

This issue is a continuation of https://github.com/gohugoio/hugo/issues/5076.
While https://github.com/gohugoio/hugo/pull/5199 prevented hugo from immediately exiting, the end results are still the same as before because the hugo build step still exits with an error code.
I talk about this in https://github.com/gohugoio/hugo/pull/5199#issuecomment-420310515. Below is copy/paste from there for convenience:

The whole point of that issue I opened was to build sites like normal even if getJSON failed to retrieve anything from the URL.
With the latest master, running hugo gives me:
Building sites … ERROR 2018/09/11 11:12:57 Failed to get JSON resource https://gitlab.com/api/v5/projects/kaushalmodi%2Fkaushalmodi.gitlab.io/repository/commits?path=content-org&ref_name=master: Failed to retrieve remote file: Unauthorized
ERROR 2018/09/11 11:12:58 Failed to get JSON resource https://gitlab.com/api/v4/projects/foo%2Fkaushalmodi.gitlab.io/repository/commits?path=content-org&ref_name=master: Failed to retrieve remote file: Not Found
Total in 1794 ms
Error: Error building site: logged 2 error(s)

This functionally just like before because Makefile/Netlify would not proceed on seeing that error code (even if the public/ gets populated after this commit).

You are free to ignore the exit code if you want.

I cannot also unconditionally mask errors else I will reach the deploy step for real errors too.

Probably making that "Failed to get JSON resource .." ERROR a WARNING fixes this issue? Or not letting getJSON return an error on getJSON failure?

I thought, doing this change would work.. but it doesn't; with this, the build finishes fine, but no warning is printed.. why is that?
diff --git a/tpl/data/data.go b/tpl/data/data.go
index 14a4975a..06fd7f87 100644
--- a/tpl/data/data.go
+++ b/tpl/data/data.go
@@ -111,7 +111,7 @@ func (ns *Namespace) GetJSON(urlParts ...string) (v interface{}, err error) {
 		var c []byte
 		c, err = ns.getResource(req)
 		if err != nil {
-			ns.deps.Log.ERROR.Printf("Failed to get JSON resource %s: %s", url, err)
+			ns.deps.Log.WARN.Printf("Failed to get JSON resource %s: %s", url, err)
 			return nil, nil
 		}

You can create a binary wrapper around Hugo that "swallows" the exit code.
So, whether this is an ERROR or not, is contextual. We cannot make it into a WARNING just make you happy. Many people use this getJSON to fetch ... important stuff.
We could consider adding an "ERROR threshold" (i.e. only fail the build if more than n errors).

a binary wrapper around Hugo that "swallows" the exit code.

As I mentioned earlier, I cannot ignore all exit codes. For example, I don't want to ignore error when unmarshalling a JSON in:
		err = json.Unmarshal(c, &v)
		if err != nil {
			ns.deps.Log.WARN.Printf("Cannot read JSON from resource %s: %s", url, err)
			ns.deps.Log.WARN.Printf("Retry #%d for %s and sleeping for %s", i, url, resSleep)
			time.Sleep(resSleep)
			deleteCache(url, ns.deps.Fs.Source, ns.deps.Cfg)
			continue
		}

Many people use this getJSON to fetch ... important stuff.

Right, but with the current state of getJSON returning nil, it shouldn't matter if it's an error or a warning. Anyone using this would then handle the nil-return case too.

We could consider adding an "ERROR threshold" (i.e. only fail the build if more than n errors).

It's not the number of errors.. it's this specific error I'd like to ignore.

I don't mind committing a patch to my personal hugo build.. but on quick testing, replacing ERROR with WARN in the above diff didn't seem to work. With that, I don't get the warning printed at all.

@bep In this commit https://github.com/gohugoio/hugo/commit/d1661b823af25c50d3bbe5366ea40a3cdd52e237#diff-a13cdf5921982a729b6429e57b95fdfb, you moved away from using the ns.deps.Log.ERROR. ... I was hoping that you will switch that to ns.deps.Log.WARN. .. at some point. But that commit is now doing 	return nil, _errors.Wrapf ...
Can you consider making that JSON fetch a warning?

Is there a practical difference between the earlier ERROR log and the now ... delayed ERROR log?

This issue comes up a lot both here and in the forums. In the many threads that I've read, it seems like every commenter would prefer not to abort the site build when there's a failure in getJSON, whereas @bep takes a position like  "An ERROR is an ERROR and should be treated as such." (Excuse me if I've misstated that.) I'm sure there are some folks out there who agree with @bep but either they haven't cared to comment or I've missed their comments.
Both positions have merit. As a compromise, what about using a config variable to decide if a getJSON failure should be handled as an ERROR or a WARNING?
If we want to get fancy, this could even be a regex (e.g. a WARNING for /twitter\.com/) but a boolean would be better than nothing.
Thoughts?


[SPARK-25676][SQL][TEST] Improve BenchmarkWideTable: use main method and automation

What changes were proposed in this pull request?
Improve BenchmarkWideTable:

use main method as per SPARK-25475
automation via test configuration spark.testing.codegen.splitThreshold

Generate benchmark result:
SPARK_GENERATE_BENCHMARK_FILES=1 build/sbt "sql/test:runMain org.apache.spark.sql.execution.benchmark.WideTableBenchmark"

How was this patch tested?
manual tests

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Test build #98013 has started for PR 22823 at commit f8bce47.

Test build #98013 has finished for PR 22823 at commit f8bce47.

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

Merged build finished. Test PASSed.

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

Test build #98018 has started for PR 22823 at commit b00396f.

Thanks @wangyum for good suggestion!

Test build #98022 has started for PR 22823 at commit d2da3a0.

Test build #98018 has finished for PR 22823 at commit b00396f.

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

Merged build finished. Test PASSed.

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

Test build #98208 has started for PR 22823 at commit 0cfac24.

Test build #98208 has finished for PR 22823 at commit 0cfac24.

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

Merged build finished. Test FAILed.

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

Hi, @yucai .
Since https://github.com/apache/spark/pull/22847 is merged, could you rebase this to the master gain? Thanks!

Test build #98501 has started for PR 22823 at commit f714cc8.

Thank you, @yucai . Could you update the title because we are renaming it? Maybe, [SPARK-25676][SQL][TEST] Rename and refactor BenchmarkWideTable to use main method?

Test build #98501 has finished for PR 22823 at commit f714cc8.

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

Merged build finished. Test PASSed.

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

Could you review and merge https://github.com/yucai/spark/pull/7, @yucai ?

Test build #98509 has started for PR 22823 at commit a755039.

Test build #98509 has finished for PR 22823 at commit a755039.

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

Merged build finished. Test PASSed.

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

Test build #98519 has finished for PR 22823 at commit 610fc31.

This patch fails PySpark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

retest this please

Test build #98522 has started for PR 22823 at commit 610fc31.

Test build #98522 has finished for PR 22823 at commit 610fc31.

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

Merged build finished. Test PASSed.

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

Merged to master.


Drag & Drop

I'd love to know what the ideal way to implement drag&drop of blocks, like the latex component in the tex example, would be. I see that the facebook notes editor does not provide such a feature for images. Any info on that?

Is there even a way to include images with the current editor?

No, I'd really hope for a few more examples, but I think it shouldn't be too much of a problem using custom components.

See http://facebook.github.io/draft-js/docs/advanced-topics-block-components.html

Correct, inline images can be rendered with custom block components.
I've experimented with drag&drop for photos with the Notes editor, but haven't shipped anything. I wasn't using regular HTML drag/drop since I was aiming for a design that animated blocks around my mouse movement, using rebound.js. (Absolute positioning for every block set via blockProps, etc.) It worked, but it was a low-pri feature for us and I didn't pursue it further.
I'd love to see an example that uses the normal drag/drop events, and I'd be happy to help support it if changes are needed. I haven't implemented it myself, though.

Okay, I'm currently playing around with HTML drag/drop.
Here is what I've come up with, quick and dirty

Here the script: https://gist.github.com/bkniffler/f50b3d58401556c5b0ae
Just put it into an example/drag-drop folder of draftJS.
A helper method on blocks to get the blocks range would be cool.
contentBlock.getRange();
// or something like that
ContentBlock.getRangeAsSelection();

// It would be an easy function, but helpful
function getRange(){
     return new SelectionState({
                        anchorKey: blockKey,
                        anchorOffset: 0,
                        focusKey: blockKey,
                        focusOffset: block.getLength(),
                    });
}

Also helper functions for adding/removing blocks would be great.
For some reason, onDragOver, onDrop, onDragEnter are not fired if put on the Editor, thats why I bound the event to the wrapping div.

A helper method on blocks to get the blocks range would be cool.

Sounds useful. I think there are a few places within the repo (and in FB use cases) that would benefit. How about:
class SelectionState ... {
  static function fromBlock(block: ContentBlock): SelectionState {
    const blockKey = block.getKey();
    // your implementation above, plus `isBackward: false`
  }
  ...
}

To remove a block, you can use Modifier.removeRange with the target set to the block you want to remove.
I'm going to give your drag/drop example a try now. :)

Ok, I played around with this a bit. I think a couple of things would be useful additions to the API:

A prop function on Editor to expose drops.

handleDrop?: (e: SyntheticDragEvent, target: SelectionState) => boolean

A Modifier method that encapsulates moving an entire block within the ContentState. It requires a bit of moving, deleting, and block-type setting, and if block component drag/drop is going to be more widespread, a common method would probably be useful.

Here's a gist with some of the changes I made to try to get it working: https://gist.github.com/hellendag/6cd425613caabb7f238d
Right now it's copying the block for the drag rather than moving it entirely, so I'm sure I missed something.
I think this has potential to be a really useful example for the repo! Thanks for getting it started.

I have been messing around with https://github.com/gaearon/react-dnd and draft, but so far I am finding it  hard to understand what happens with block components under the hood

@nelix I think react-dnd is not the right way to go (in this specific case), as it would require to change the way draft-js works.
@hellendag Thanks for the effort, I'll take a closer look your changes later. Yesterday I've extended my code to work a bit better and for block resizing. I uploaded it a few moments ago on github and heroku, you can check it out here:
Heroku: http://draft-drag-drop.herokuapp.com/
Github: https://github.com/bkniffler/draft-js-drag-drop
The modifier method you talked about would be extremely helpful, along with a few more helpers like

fromBlock you posted
addBlock(type, selection, props) (maybe a bit like here https://github.com/bkniffler/draft-js-drag-drop/blob/master/js/components/draft.js#L153),  without the clutter of course
removeBlock(key)
selection helpers to get start or end of document (https://github.com/bkniffler/draft-js-drag-drop/blob/master/js/components/draft.js#L170)

Currently it is not too easy to implement moving a block (add a copy of the block, deleting; though I'm having trouble completely removing it, so using this workaround https://github.com/bkniffler/draft-js-drag-drop/blob/master/js/components/draft.js#L133).
I know its kinda outside the scope of this issue, but I've also been playing with toolbars on text (https://github.com/bkniffler/draft-js-drag-drop/blob/master/js/components/draft.js#L64 + https://github.com/bkniffler/draft-js-drag-drop/blob/master/js/components/draft.js#L144), but I've found it hard to get the current selection in DOM to attach a toolbox at its location.

@hellendag I tried to run your code, but it will throw an error after drop
Uncaught Invariant Violation: Unknown node in selection range.

btw Do you have a slack channel or some other discussion platform?

Great suggestion! I've just created a Slack team for this: https://draftjs.slack.com

I tried to run your code, but it will throw an error after drop

Ha not surprised, I was hacking around with it and probably broke a few things. I'll play around with it a bit more.

@hellendag Thanks for creating the slack, though I think you should enable email signup to make it easier to join in :)

I'd love to join too.

Ah sorry, I'm a Slack noob.
It looks like I can only enable certain domains for the Slack team, or invite by email, unless there's another option I'm missing. If so, it seems like the simplest thing for me to do right now is to keep invite-by-email and post details in the Readme to help people join. If you want to send me your email address at<EMAIL_ADDRESS>I'll send you an invite.

For slack you can use https://github.com/rauchg/slackin to automate the process

Actually I did a working d&d with react-dnd in myproject. It's not problem to break draft-js, because we can not do any edit  action when dragging a block. Only a small change to DraftEditorContents to open a prop  for reorder elements.

@jan4984 cool! could you provide code examples?

@jan4984 亲，提供个示例可以否？就找到这么一个靠谱的方案

@kozhuhds @leejaen I'm busy in my project now. I will have some time one month later, I will publish a working demo then.

@kozhuhds @leejaen please check the demo project.

Amazing job! 1000 Thanks!


Add Javascript Fetch API snippet

Fetch API is supported by most browsers and it is an easy way to request resources.
Additionally, some people is interested in this snippet for insomnia.

Hello, seems like travis is having troubles to build branches. Any idea how to make it work?

Closing this in favor of #128. Feel free to comment there for code review since it was brought over from #98


[stable/owncloud] Support tls termination and existingClaim

Support tls termination for Ingress
Support existingClaim for apache and owncloud PVC

I think both changes are small, obvious and no problem at all. However, it may be better in the future to make it two separate PRs.

/ok-to-test

Sorry for late reply.
@timstoop Thanks your suggestion! I'll do at my later PR.
@unguiculus Done!

/lgtm


feat!: encode and decode calldata from contracts

What I did
fixes: #947
Fixes APE-317
Fixes APE-242
NOTE: See .md changes for more thorough usage example and notes about the feature to help with Testing and review!
How I did it
Create a mixin ContractMethodHandler that both ContractCallHandler and ContractTransactionHandler inherit from.
This mixin class contains two new methods in addition to other already-shared coded:

encode_calldata() looks at the args, select the ABI, and encode the calldata.
decode_calldata() takes bytes, checks the selector, and gives you a tuple with both the string selector and a dict mapping input names to values. If you don't give it a selector prefix, it will do its best (copying from Brownie).

Then, creates another mixin ContractTypeWrapper that both ContractInstance and ContractContainer inherit from. It contains already-existing shared code as well as two new methods:

encode_calldata() that looks at the args count and finds the method with the same number of inputs, if it exists. Otherwise, it fails. Note: Not sure about this approach, copied it from brownie.. seems like I would not recommend banking on succeed here.
decode_calldata() that checks for a prefix to find the right ABI, if it exists. If it didn't find anything, it will attempt a brute-force check. Note, it can only return in any case if there is only 1 result, else it is too ambivalent to know I think.

Also had to refactor ape.utils.trace to move some of that logic to the ecosystem, and have it be share-able with other parts of the code-base and override-able at the same time. Thanks @Ninjagod1251 for beginning that work.
How to verify it
project.MyContract.decode_calldata(bytes)
project.MyContract.encode_calldata(*args)
project.MyContract.method.decode_calldata(bytes)
project.MyCntract.method.encode_calldata(*args)

Checklist

[ ] All changes are completed
[ ] New test cases have been added
[ ] Documentation has been updated

would this work with ape-starknet out of the box?

would this work with ape-starknet out of the box?

No, ape-starknet would have to implement a few methods in its EcosystemAPI implementation. I don't think it would be too difficult though!

would this work with ape-starknet out of the box?

No, ape-starknet would have to implement a few methods in its EcosystemAPI implementation. I don't think it would be too difficult though!

which ones?

which ones?

See the changes in src/ape/api/networks.py::EcosystemAPI. There are 3 new abstract methos:
def decode_calldata():
def encode_calldata():
def get_method_selector

NOTE: These are changes are still in draft + code review so this could change!
Second NOTE: These changes wouldn't be released until the Ape 0.6 range because of its breaking changes.

CI failure is something new, seems like actions/checkout@v2 is unable to fetch https repos. Try upgrading to v4


object extraction fails with const

Describe the bug:
object extraction of a const variable errors at runtime
Config and Small code sample
Config:
{
  compact: true,
  identifierGenerator: 'randomized',
  objectExtraction: true,
  target: 'browser',
}

Code:
const obj = {prop: 0};
obj.prop = 1;
console.log(obj.prop);

Expected behavior
The program should output 1
Actual behavior
TypeError: Assignment to constant variable.
obfuscated code:
const obj_prop=0;!(obj_prop=1,console['log'](obj_prop))

Additional context
an easy fix would probably be to convert the declaration to let or var

Great find, will fix this for next release.

just found an edge case: const can only be safely converted to let instead of var because of closures:
for (let i = 0; i < 3; i++) {
  const obj = { prop: i };

  setTimeout(() => {
    console.log(obj.prop); // outputs 0, 1, 2
  }, 100);
}

after obfuscation: 2, 2, 2

I will get to work on this


update k8s version validator for alias minor version

This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[x] My extension description/summary conforms to the Extension Summary Guidelines.

About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your PR is merged into master branch, a new PR will be created to update src/index.json automatically.
The precondition is to put your code inside this repo and upgrade the version in the PR but do not modify src/index.json.

@zjpjack OK, if this PR is ready for merge, please let me know

@zhoxing-ms @FumingZhang I updated the release version and this PR is ready to be merged


File paths for sourcing in pmcmcTutorial.Rmd are wrong

R/ is prepended in the two source() calls but the referenced files are in the repository's root.

Thanks for pointing out, now fixed.


NTR: regulation terms for sterol biosynthetic process

Hello,
Could I please have all the regulation terms for GO:0016126 sterol biosynthetic process.
For PMID:16459310.
Please add the references:
GOC:rph
GOC:BHF
GOC:BHF_miRNA
Thanks.

GO:0106118 regulation term
GO:0106119 neg reg term
GO:0106120 pos reg term


Calling writeFile not working twice.

I am trying to append to a file.
hdfs.writeFile('/loginput/log.txt', "XYZ", true, function(err) {
    if(err) {
        console.log("ERROR");
        console.log(err);
    }
});

hdfs.writeFile('/loginput/log.txt', "PQR", true, function(err) {
    if(err) {
        console.log("ERROR");
        console.log(err);
    }
});

I was expecting XYZPQRXYZPQR... but getting only XYZXYZ.
The issue seems to because of the pipe being open after the write is complete. I tried creating a new client to the same HDFS, still the same result.

@atoztoa can you provide me a full example of your code?

@atoztoa also HDFS doesn't support concurrent writes.
http://stackoverflow.com/questions/6389594/is-it-possible-to-append-to-hdfs-file-from-multiple-clients-in-parallel


Update os.java

Perfectly indented some of the errors that might be popping up from time to time.

Hi there! It looks like this PR might be dead, so we're closing it for now. Feel free to re-open it if you'd like to continue, or think about directing your efforts to https://github.com/beeware/briefcase or https://github.com/beeware/toga. Both of these have more active development right now. 😄