Adding two new goals (delete and apptasks) and new param to update the id

Refactored DeployMojo#appExists to parent class
Added id parameter to ProcessConfigMojo so the id can be specified
Added AppTasksMojo to translate marathon tasks into maven parameters
Added DeleteMojo to delete an app instance from marathon.
Updated README with new goal examples

@bsneade Instead of waiting for deployment by using heuristic delay property we could use deploymentId from https://mesosphere.github.io/marathon/docs/rest-api.html#put-/v2/apps/{appid} and then use it to monitor https://mesosphere.github.io/marathon/docs/rest-api.html#get-/v2/deployments till the deployment ends (already in DeployMojo - possible when some explicit waitForDeploymentFinished flag is set, and not in AppTasksMojo or any other subsequent goal).
Currently it is not possible due to the fact that the response model containing deploymentId is not exposed yet in the Java API we use for accessing Marathon API - https://github.com/willroden/marathon-client/blob/b6e17ea3e4351ac7f4f2d1f401e6db01f74a80cc/src/main/java/mesosphere/marathon/client/Marathon.java#L38

I see what you are saying, and I'd love to get rid of that nasty empty while loop.  Let me play with it for a bit and I'll submit another pull request.

I've got a commit for this, but it depends on a pull request for marathon-client.
Commit - https://github.com/bsneade/marathon-maven-plugin/commit/4c6ca9582034f303f84a71bb22ce4352829565ca
Marathon-client pull request - https://github.com/willroden/marathon-client/pull/4


BSH Dishwasher operation state issues

Describe the bug
I am having issues trying to read/consume the operation state of my dishwasher washing program, because instead of "Run" is reporting it as "BSH.Common.EnumType.OperationState.Run".
The dishwasher sensor being (in my case):<PHONE_NUMBER>28002257_bsh_common_status_operationstate
For example, I use conditional cards to display the remaining time if it is running, but hide it otherwise. To achieve this, I use this code:
      - entity: sensor.262080629728002257_bsh_common_status_operationstate
        state_not: BSH.Common.EnumType.OperationState.Run

The interesting thing is that when I click on the entity, the history data is shown as "Run" or "Ready":

Version of the custom_component
I am using version 0.6.8 as per HACS.
Configuration
I am not using any special YAML config. Just the integration and displaying the data with the above block of code.
Debug log
Not providing logs, since I do not believe this is a bug, but just the way the information retrieved from the BSH cloud is displayed.
Please correct me if I am wrong.
I'd also like to take the opportunity to thank you, the author, for such amazing integration (much, much better than the official one!). Finally selecting programs via a dropdown, and a button to start the program :clap:
Perfect :pray:

Thanks, I'm glad you like it.
But I don't understand your issue. Are you saying that you have to check for a value of "BSH.Common.EnumType.OperationState.Run" when you expect it to be just "Run"? If so then that is by design. The display value of "Run" which you see in the UI is is just a human readable translation of the internal value. I know it's different than how most HA integrations work but I believe that code shouldn't depend on human language. It shouldn't matter if your language is ENglish or German or Spanish, the code should be the same, which means the internal values should be language independent.
If you really want to change this behavior you can add sensor_value_translation: server to your configuration which will set the sensor values to the actual text.

Thank you for your response @ekutner
I see. I understand you. It's just not very user friendly to write automations with such complex, non-user-friendly values. But thankfully my automation is now finished, so it was a matter of curiosity really.
Thank you again :pray:

I've added a note about it to the README


Use the grobid sentence segmenter

Right now we are using the clearnlp sentence segmenter. We could replace this with the internal grobid sentence segmentation.
We could implement the segmentation also in the quantityparser to reduce the impact of #87 (although we could not guarantee to remove completely this glitch)
This would require the release of grobid 0.6.2

Now grobid-quantities uses OpenNLP sentence segmenter for the quantified object.
Since the segmentation in the quantity parser would requires changes in the training data (from paragraphs to sentence), this will be addressed in the future.


Human readable plugin name and version when downloading via Plugin section

Feature Request
Feature Information:
As far as I know, AMP uses SpiGet to download Spigot plugins via Plugin section.
If you download a plugin with it, you will get plugin named like 3836-v339235.jar and you won't know what that plugin is. (That is NametagEdit plugin though)
In SpiGet API, you can get plugin name with 'Resource Details' and numeric version(like 4.4.10) with 'Resource Version'. Also you can get latest resource ID(I don't know what this is really called, 339235 thing...) with 'Latest Resource Update'.
My suggestion is, when you download Spigot plugin with Plugin section, the downloaded plugin's name would be like NametagEdit-v4.4.10.jar or NametagEdit-v4.4.10-339235.jar. With this, users can know what plugin is installed and its detail better.
Just looking into 'Installed Plugins' isn't enough I think. Sometimes, you might want to know 'What version of this plugin is installed?' or such things...
I confirm:

[x] that I have searched for an existing feature request matching the description.

The name is now appended to the end.


fix: cherry-picked kubert kube-rs upgrade on top of 0.16.1

While adding prometheus support in the clustered operator (which uses the same libraries as this project), I noticed that the pinned dependency https://github.com/olix0r/kubert/pull/163  pointed to a commit that wasn't based on the latest released v0.16.1 and hence didn't have a way to easily enable the prometheus endpoint in the operator.

kubert 0.18.0 already contains this change


Some issues in collision resolving.

Hi!
Characters in my game presented in physics world as a Ball, I call rigidbody.set_linear_velocity() every frame, to control them. And sometimes characters can pass between 2 cuboid walls like this:

For example, there is 2 cuboids, on (-0.5, 0) and (0.5, 0), timestep 1/10 and ball with radius 0.3 on position (0.0, 1.2), setting it linear velocity after every step to (0, -5.0):
Ball: Translation { vector: Matrix { data: [0.0, 1.2] } }
Ball: Translation { vector: Matrix { data: [0.0, 0.70000005] } } // Collision happens on next frame
Ball: Translation { vector: Matrix { data: [0.0, 0.95000005] } } // Collision happens and resolved
Ball: Translation { vector: Matrix { data: [0.0, 0.45000005] } } // Going through cuboids
Ball: Translation { vector: Matrix { data: [0.0, -0.049999952] } } // Going through cuboids
Ball: Translation { vector: Matrix { data: [0.0, -0.54999995] } } // Going through cuboids
Ball: Translation { vector: Matrix { data: [0.0, -1.05] } } // Finally passing through
Ball: Translation { vector: Matrix { data: [0.0, -1.55] } }
If i change a start position of a ball slightly to (0.0, 1.3) - it can't pass through:
Ball: Translation { vector: Matrix { data: [0.0, 1.3] } }
Ball: Translation { vector: Matrix { data: [0.0, 0.79999995] } }
Ball: Translation { vector: Matrix { data: [0.0, 1.05] } }
Ball: Translation { vector: Matrix { data: [0.0, 0.54999995] } }
Ball: Translation { vector: Matrix { data: [0.0, 0.81401926] } }
Ball: Translation { vector: Matrix { data: [0.0, 1.0640192] } }
Also, if move it a little right to (0.01, 1.2) and increase speed to 5.01, ball can't pass too.
I understand that behavior depends on timestep and speed, but it looks like that position can be correctly resolved on this steps of first example:
Ball: Translation { vector: Matrix { data: [0.0, 0.95000005] } } // Resolved
Ball: Translation { vector: Matrix { data: [0.0, 0.45000005] } } // Going through cuboids
Ball: Translation { vector: Matrix { data: [0.0, -0.049999952] } } // Going through cuboids
And in the game, this things can happens on low velocities.
I'm playing with integration parameters (and setting ERP *iterations to max values), and nothing helps.
UPD:
Also, I iterate through all contact events during every frame, and there is a really strange things:
Cuboid(0) - 1.0x1.0 static Cuboid placed on -0.5, 0
Cuboid(1) - 1.0x1.0 static Cuboid placed on 0.5 0
Ball(2) - Ball with radius(0.3) placed on 0.0, 1.2
Default integration parameters, without gravity, timestep - 0.1
Every frame after step linear velocity setted to (0.0, -0.5) on the ball rigidbody
Frame 0- Ball: [0.0, 1.2]
Frame 1- Ball: [0.0, 0.70000005]
Frame 2- Ball: [0.0, 0.95000005] // Collision happens during this frame and have been resolved, but contacts only started and not stopped
Contact between Ball(2) and Cuboid(0): Started
Contact between Ball(2) and Cuboid(1): Started
Frame 3- Ball: [0.0, 0.45000005] // Shapes intersected, but contacts stopped (they must be stopped in previous frame) and not started (?)
Contact between Ball(2) and Cuboid(0): Stopped
Contact between Ball(2) and Cuboid(1): Stopped
Frame 4- Ball: [0.0, -0.049999952] // We are still in collision, but there is no started contacts
Frame 5- Ball: [0.0, -0.54999995] // And we are still in collision
Frame 6- Ball: [0.0, -1.05] // Our ball passing through cuboids and away from them, contacts started just now
Contact between Ball(2) and Cuboid(0): Started
Contact between Ball(2) and Cuboid(1): Started
Frame 7- Ball: [0.0, -1.55]
Contact between Ball(2) and Cuboid(0): Stopped
Contact between Ball(2) and Cuboid(1): Stopped

Hi!

I understand that behavior depends on timestep and speed, but it looks like that position can be correctly resolved on this steps of first example:
Ball: Translation { vector: Matrix { data: [0.0, 0.95000005] } } // Resolved
Ball: Translation { vector: Matrix { data: [0.0, 0.45000005] } } // Going through cuboids
Ball: Translation { vector: Matrix { data: [0.0, -0.049999952] } } // Going through cuboids

This is indeed suspicious. It appears the collision is actually detected but does not prevent the next motion that leads to a penetration. One thing you could try is to increase the number of iterations max_velocity_iterations. The issue may just be due to slow convergence (though that would be surprising given the simplicity of the scenario here).
There might be an actual bug here so I will try to reproduce this behavior to find a better insight on the problem on saturday. Besides the information you already gave, could you tell what collider margin you are using for all your shapes? Also, I guess gravity is not enabled?

@sebcrozet I'm update the post just before you send comment. Looks like there is an issue with contact handling. I try setting max_velocity_iterations to 1000 and it not helps.
Code to reproduce issue: https://gist.github.com/n0uk/61ccdf4caf6a760572413719b46563da

Thank you for the code for reproducing the issue! I've looked at it and I understand the problem now. I don't think there is a bug here, I pretty confident that the solution would be to enable Continuous Collision Detection (CCD) for the ball (though you won't be able to do this since CCD is currently broken on nphysics…)
Here is the explanation. First, note that during a step(), things happen in the following order:

Collision detection (and generation of the contact started/stopped events).
Computation of various forces and contact response.
Integration and update of the positions of all bodies.

This explains why you get the weird outputs when you print the collision events. When you see the Frame 2, the body was moved out of its collision state, but since collision detection taking those new positions into account will only occur at the next frame, there was no stopped contact events. Those events are actually reported at the frame 3. At the end of the frame 3, the ball is moved again into a configuration where there are contacts. Because collision detection will only be performed at the beginning on the next .step(), the contact started events will be reported only at frame 4.
So this weird behavior is actually by-design. But I understand this is very confusing so this will have to be improved in the future.
Now, regarding your issue, it appears that at Frame 2 the ball is moved quite far from the wall because of restitution. Because they are so far apart, the collision detection will not even attempt to detect contacts between the ball and the walls again. Therefore, the ball moves freely at Frame 3 is and now located in a place where penetration is actually impossible to recover correctly (because the ball is half penetrated on one cube side, and has its complete other half on the second cube) so it ends up passing through the wall altogether after some time. The solution to the problem here is to ensure contacts will actually be detected in-between frames 2 and 3, and that's the point of CCD.
As a side note, keep in mind that restitution will almost always play badly with setting the body velocity exactly since the body will always bounce back a little right after you hit a wall.

@sebcrozet Thank you for you explanation! Sorry for another comment, but i can't understand something.
Same code, zero restitution, speed 7.0
Frame 0: Ball: [0, 1.2]
Frame 1: Ball: [0, 0.50000006] // Collision started after frame 1
Frame 2: Ball: [0, -0.19999993] // Collision still here after frame 2, but there is no events
Frame 3: Ball: [0, -0.8999999] // Collision finished
Frame 4: Ball: [0, -1.5999999]
(No contacts generated)
Ball starting overlapping cuboids after frame 1, so collision events/contacts must be generated during frame 2 (ball still overlapping cuboids before and after frame 2 world.step), but there is no contacts?

Mmh, that one is a bug. Probably due to that unhandled case.

@n0uk I've merged to the master branch of ncollide a patch to handle the case I mentioned in my previous comment.


819 add dodal and nexgen versions to release notes

Fixes #819
Link to dodal PR (if required): #N/A
(remember to update setup.cfg with the dodal commit tag if you need it for tests to pass!)
To test:

Perform a release as per the instructions on the wiki https://github.com/DiamondLightSource/hyperion/wiki/Creating-a-release-and-deploying-it
Confirm nexgen and dodal versions appear in release notes along with normal generated release notes
Confirm released version setup.cfg has dependencies correctly pinned.

I created the release at https://github.com/DiamondLightSource/hyperion/releases/tag/untagged-0eb09fe04a1a13594f36 but it had some issues:

Must: The code was pinned to dodal == 1.13.1 but the latest is https://github.com/DiamondLightSource/dodal/releases/tag/1.22.0 (https://pypi.org/project/dls-dodal/)
Could: It would be better if rather than just saying "these were the versions" links were provided to the release notes
Nit: I think the version numbers are less interesting than what's changed so can we put them at the bottom of the release notes?

I created the release at https://github.com/DiamondLightSource/hyperion/releases/tag/untagged-0eb09fe04a1a13594f36 but it had some issues:
* Must: The code was pinned to `dodal == 1.13.1` but the latest is https://github.com/DiamondLightSource/dodal/releases/tag/1.22.0 (https://pypi.org/project/dls-dodal/)

* Could: It would be better if rather than just saying "these were the versions" links were provided to the release notes

* Nit: I think the version numbers are less interesting than what's changed so can we put them at the bottom of the release notes?

Hmm, looking at the logs, it installs the right version of dodal.... then it installs the wrong version on top. Not sure if it's related to the bluesky api conflict but will investigate

Could be, looks like the blueapi pin was wrong, we wanted the pre-release of https://github.com/DiamondLightSource/blueapi/releases/tag/0.4.2-a1.

As discussed, I think the correct answer is that we should have been pinning our blue-api version before the release.

Ok, I think the blue-api versioning issue is another thing to the dodal versioning issue - I think these are the alternative ways of pinning.

We pip install with --pre and explicitly pin all our "stable" dependencies to release versions, don't pin things like dodal, bluesky etc.
We never install with --pre and we only explicitly pin those dependencies where we want to be on the bleeding edge pre-release versions
We explicitly pin everything

I think it's a toss up between 1 and 2 - 1 has more things pinned but we might update less frequently

Agreed that will go for option 2 and pin bluesky, blueapi and ophyd-async


azure-core needs typing updates for mypy version 1.6.1

ACTION NEEDED: This version of mypy will be merged on 2024-01-15. The build will begin to fail for this library if errors are not fixed.
Library name: azure-core
Mypy version: 1.6.1
Mypy errors: Link to build (2023-11-05)
How to fix: Run the next-mypy tox command at the library package-level and resolve the typing errors.

../azure-core>pip install "tox<5"
../azure-core>tox run -e next-mypy -c ../../../eng/tox/tox.ini --root .

See the Typing Guide for more information.

Resolved in https://github.com/Azure/azure-sdk-for-python/pull/33003


RATIS-833. Add metrics for raft log cache count and size in bytes

@bshashikant Could you help review it ? Thank you very much.

Thanks @runzhiwang for working on this. We can potentially large no of closed segments in ratis pipeline lifecycle if log purging is not enabled. I am just thinking if it would be better to maintain the total segment size in memory instead of iterating over all to figure the size every-time to fetch the metric value. What do you think?

@runzhiwang , can you please update the PR?

@bshashikant updated


Backport ShortByteString instances using bytestring-builder

I recently attempted to upgrade my text-show package's test suite to use the new instances for ShortByteString from quickcheck-instances-0.3.17. However, I was dismayed to discover that they were only defined for certain recent versions of bytestring! This led to the Travis failure seen here.
This PR makes these ShortByteString instances defined on all supported versions of GHC by using the bytestring-builder compatibility package.

Thanks, I made #22 to make dependency optional (as it's in aeson e.g.), if it turns green I'll release ASAP

Released http://hackage.haskell.org/package/quickcheck-instances-0.3.18


Set PyBullet timestep

For the moment, the simulation timestep is the same as the timestep of the environment. This may diverge the simulation is the timestep is too big.

The observation of 18 servomotors is limited to approximatively 30 ms period.
Quoting https://github.com/bulletphysics/bullet3/issues/1460#issuecomment-348303154, using a 30 ms simulation timestep might make it diverge. One solution is to do 8 simulation steps in 1 environment step.


Handle "spawn cmd.exe ENOENT"

I specified a custom Java-executable path, however, this package still complains about java not being installed. So i looked at the code and did some logging. The contents of err is spawn cmd.exe ENOENT. After quick googeling says, that you may need to include C:/Windows/System32 for the path-variable. For testing, i added {env: {path: "C:/Windows/System32"}} to the 2nd parameter of exec in BaseMinifier.coffe and js/gcc.coffee and it worked.
So either:

Do the "workaround" i did (requires code for adding the path-variable)
Say that they might need to add C:/Windows/System32 to the PATH-Variable (actually untested).

Hey!
Perhaps I can add a check for Windows installations if there is no C:/Windows/System32 path in PATH variable., so my package adds it automatically.
But I think it's a general problem if this path is missing. On every Windows installation I checked, C:/Windows/System32 is existant. Why there are installations where it's missing? This problems goes further: cmd cannot access applications placed in the system path, e.g. PING.EXE or IPCONFIG.EXE. So again: why is this path missing on some installations?
Perhaps you can help me answering this question?

I actually tested more and came to the conclusion, that this is not your mistake. Sorry. This can be closed and i'll open an issue to the right package, python-tools.
If you are curious and want more information:
process.env.Path is the "real" path-variable on my machine. Now, some other package tries to be clever and wants to add some paths into that variable.. But it uses process.env.PATH (uppercase), which doesn't exists at that point, the package fills in some paths. The "shell" seems to use the PATH over Path, thus it won't find anything (but python).

Yes, you are totally right! Here some more explanation about that: in my sass-autocompile packages I modify the process.env.PATH variable too, but only a copy and not the original one.
environment = Object.create(process.env) # Creates a copy
if typeof searchPath is 'string' and searchPath.length > 1
    environment.PATH += ":#{searchPath}"

exec command, { env: environment }, (error, stdout, stderr) =>
    # ...


Minor Refactoring

Simplifying use statements.

Codecov Report

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

@@            Coverage Diff            @@
##             master     #124   +/-   ##
=========================================
  Coverage     97.38%   97.38%
  Complexity      231      231
=========================================
  Files            55       55
  Lines           574      574
=========================================
  Hits            559      559
  Misses           15       15

Impacted Files
Coverage Δ
Complexity Δ

src/HeyManServiceProvider.php
96.29% <ø> (ø)
10.00 <0.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 44e0a34...0a21946. Read the comment docs.


Bundle dust-api-client types

Description
Take 2 on https://github.com/dust-tt/dust/pull/8111
Changes:

Fix the use_workspace_credentials handling to only accept "true" (and not any truthy value)
Remove the unrelated .husky change.

Risk
The original version created an incident.
Deploy Plan
Test on front edge, deploy prod.

Fix the use_workspace_credentials handling to only accept "true" (and not any truthy value)

Can you add a comment on where the fix is in the code?


Adding a new MC callout to "formatting a CSV"

Description of the change:
Reason for the change:
Link to original source:

Closes #

Hello @Whatthefoxsays,Thanks again for the PR! We appreciate your contribution and look forward to                                              continued collaboration. Thanks!                                             Team SendGrid DX


fixing Few indentation

since this is already deployed in versel , I have simply fix few indentation and merging it .

why dint you merge this changes , atleast i earned some points , My all time waste.


Recommended list of OpenBSD hosting providers

Requirements:

OpenBSD iso support out of the box (or with minimal configurations)
1GB RAM
Static IP + reverse dns configuration
Allows opening email ports
AES-NI (for hardware accelerated cryptography)

NOTE: Also add any known limitations and cons to each network, if it has been generally experienced by users.
Excision Mail uses: https://vultr.com

Vultr

Great list added from caesonia: https://github.com/vedetta-com/caesonia/issues/141

https://openbsd.amsterdam/

https://prgmr.com/xen/

I'm going to start adding those ones from caesonia (redundancy is always helpful)
DigitalOcean: https://www.digitalocean.com/

Hetzner Cloud server https://www.hetzner.com/cloud?country=us

RamNode https://www.ramnode.com

ARP Networks https://www.arpnetworks.com

anyNode https://anynode.net
From caesonia: anyNode not answering IPv6 reverse DNS queries

Hostodo https://hostodo.com
Hostodo has broken IPv6 gateway

Shock Hosting https://shockhosting.net
Notes: VPS plans start at 1GB RAM

Data Center Light https://www.datacenterlight.ch
Notes VM plans start at 1GB RAM

@epsilon-0 It should be noted, DigitalOcean requires you to upload a custom image to your image library to be able to use OpenBSD there. They only officially support FreeBSD.
You can get some unofficial images here or create your own in qcow2 format.
Personally I did it manually following this guide.

It is worth noting that Vultr and DigitalOcean block the port 25 by default (account). According to the docs one can ask the support to unblock it (i'm in the process currently)

https://www.netcup.eu/
I'm running my install there without any issues, only had to upload the install ISO. VNC access per web interface to machine makes the install pretty easy.

Linode
https://linode.com
Note: You have to install OpenBSD via the minoroot.img or standard .img files. A guide to get it going is available here: https://www.linode.com/community/questions/10329/openbsd-on-linode


Feature Request: Select Alternate Cursor Styles

I was looking for a way to simulate a command line style animation and came across this package that looks great, however the cursor uses the standard vertical line style, it would be a very useful addition to be able to specify either a block or underscore cursor as well.
Looking at the code it seems like an update to the cursor prop to accept a specified type instead of a boolean would be the way to go, but I'm not too familiar with Typescript.

Hey,
did you take a look at this section? https://react-type-animation.netlify.app/options#custom-cursor-animation
You could maybe do something like this
.type::after {
  content: '_';
  animation: cursor 1.1s infinite step-start;
}

@keyframes cursor {
  50% {
    opacity: 0;
  }
}

import './yourGlobalCssFile.css';

<TypeAnimation
  cursor={false} // omit the default css typing animation class
  className="type"
  sequence={['One', 800, 'One Two']}
/>;


Incompatible with babel 7

Using this plugin with Babel 7 results in this error:
Cannot read property 'traverse' of null
It seems like path.getFunctionParent()'s behavior has changed for babel 7.

Maybe, It was resolved by https://github.com/Jam3/babel-plugin-static-fs/pull/13

I pushed 2.0.0 of this which upgrades to @babel/ scoped packages, and should work with latest babel7.


Upgrade real-world example to new version of react-router

Do you want to request a feature or report a bug?
Feature
What is the current behavior?
This code is in src/index.js in examples/real-world:
import { browserHistory } from 'react-router'

There is an error when using react-router with version 4 and above.
'react-router' does not contain an export named 'browserHistory'

What is the expected behavior?
I think it's best to update the example to use the newer version of react-router.

@roth1002 Thank you update real-world example.
And a little, would you forgot to delete this file?

examples/real-world/src/routes.js


Virtual/In-Memory Canvas

Is there a way to create a virtual (in-memory) canvas like with NodeJS canvas or do I always need to actually render it and have it in the DOM?

No, you must render it, but can let it be invisible with offscreenCanvas={true}


Extending the control plane model

The control plane model now offers a concise view of the Metastore.
The indexing scheduler query the metastore at all.
This also cleans up the hack the populates the list of indexing task with ingest v2 tasks by mutating the list of tasks
Refactoring:
We rely on SourceUid more broadly in the code.
The unit test were using IndexUid in a broken way in places.
This is now fixed.
This PR introduces a LogicalIndexTask. The idea is to have it hold all
information necessary for us to do the placement.
Right now this means only the max pipeline per index parameter (allowing
us to remove the ugly lookup in the source config map).
We will need to also add information about the desired number of pipeline, possibly the leader/follower for locality, etc.
In the next PR we will most likely also break the 1:1 relationship
between LogicalIndexTask and IndexTask.
The idea would be to have a single logical index task, and possibly break it into several IndexTask.

Simple questions for @fmassot and @guillad:

The logic of the creation of the indexing task was relying heavily on our special source ids.
I change it for a check on the source type. Was there a reason for using source ids?
Can I get confirmation that  INGEST_API_SOURCE_ID=> ingest v1 while INGEST_SOURCE_ID => ingest v2?


Nightly builds failing for the last month

What happened:
Dear authors and/or contributors (cc'ing @norlandrhagen and @maxrjones as you have the two largest contributions), the nightly builds of this cookbook have been failing for about the last month. It seems like a dependency (ModuleNotFoundError) issue.
Could you please have a look at it?
Also, there had been an authentication issue mentioned in #61 but it seems to have been fixed now. You may want to make sure about it as well.
Minimal Complete Verifiable Example:
Latest nightly build as of the creation of this issue.
Anything else we need to know?:
If you think it is due to Pythia infrastructure or something else other than the cookbook itself, please let us know.

Builds are passing again after https://github.com/ProjectPythia/kerchunk-cookbook/pull/70

Thanks!


Black screen - not booting on HP 11 G6 EE

I see someone else has this device working, but with a different model number
I've tried Ubuntu and Debian, MicroSD via two different USB and directly into the slot.
Sequence is:

Turn on
ctrl+u
screen goes black
nothing happens (even if left for hours)

Device: HP Chromebook 11 G6 EE
Model: SNAPPY E23-B4B-L4Y-O3Z-N3Q-A2V

Try just a USB drive (no MicroSD). I have an Acer CB317 that refuses to boot from MicroSD with just a flashing cursor, but will start right up with a USB drive (Flash or SATA SSD with USB 3.x adapter).

This issue has been fixed in the latest commits.


Idea: Tracking Log OpenEdxPublicSignal

This is a placeholder issue to start discussion on this topic. There is a desire to create a single “tracking log” OpenEdxPublicSignal that can be used for all tracking log events to facilitate event handling and transformation. Specifically https://github.com/openedx/wg-data/issues/28 calls for this, but several other xAPI use cases are in various levels of ideation.
The general idea is that once #210 is done we would like to add this new signal, and introduce a few other changes as outlined in the epic above to support configurable an event logs -> xAPI pipeline (as well as other consumers) that operators can tailor to their needs. Given the volume of tracking logs we're hoping that we can filter logs by event name on the producer side as part of this work.

@Ian2012 you've mentioned that you all might take on #210 to facilitate this work? @robrap @rgraber @timmc-edx does this seem like a feasible idea, or am I missing something important? I'm happy to have a quick meeting to discuss once folks have had a moment to think about it.

It seems like this would work. As part of https://github.com/openedx/openedx-events/issues/210, or as a follow-up, you might need to be able to add a function handler to the auto-producing side that enables the filtering before sending to the event bus, or some such idea.

Thanks @robrap , it looks like we'll be moving forward on this sooner rather than later. I'm sure we'll be pinging for reviews, but feel free to share any other thoughts that come up! I imagine an ADR will come out of #210 for review as well.


Freezing at update file

When i try to update a file with this parameters at gdrive-linux-x64;
gdrive update {parentFileId} {localFilePath} -p {parentFolderId} --config {configFilePath}
gdrive is stucking at "Uploading {localFilePath}" message. I think it's global issue.

I got the solution, update command line doesn't support parent folder id parameter.

This should be included in the documentation somewhere, i just had the same issue.


The link "#" should be prevent for one page application.

For one page application, the url "#" part means different route, so use this pagination will take to home page after run callback.
So it should add this code:
       event.preventDefault();
in the PaginationView.prototype.clicked function.

Please submit a PR. Thanks.

Okay, already submit.


Update datadog-agent to 6.0.0-1

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} reports no offenses.
[x] The commit message includes the cask’s name and version.

Thanks for the PR!


Maximum Subarray Sum

Maximum Subarray Sum is the best question for those who are at the beginning or at an intermediate level in solving Arrays Problem.
Describe the solution you'd like
To give a more optimal solution I will use Kadane's Algorithm to solve the problem. The code will be submitted in c++ language with the description of each and every step in the comments.

/assign

The problem is already present here.


simple EC2/ECS helpers for dockprom

Since there were quirks I faced while I configured dockprom on a ECS/EC2 environment with AWS AMI's, I thought this might help anyone encountering similar issues.
Feel free to ignore this if you think this won't contribute much here.

Thanks for your contribution


Easy way to use images/icons instead of text for html-button-press?

Question is self-explanatory I'm wondering if there's a trivial way that allows me to use images instead of text as the inside of the buttons? (Perhaps I'm missing something and this is quite straightfoward to do in pure javascript?). In an ideal case I'd like to have a 2x10 grid for image icon on top and image label on bottom. Example of what I have working so far (with only text) for a labelling/classification task of CIFAR-10 images (Note that the code below is only rendering the user response not rendering the stimuli):
	var button_response = {
		type: "html-button-response",
		stimulus: '
Image Class
',
		choices: ['Airplane','Automobile','Bird','Cat','Deer','Dog','Frog','Horse','Ship','Truck'],
		trial_duration: 5000,
	};

Doing something like this doesn't seem to work:
	var button_response = {
		type: "html-button-response",
		stimulus: '
Image Class
',
		choices: ['Airplane.png','Automobile.png','Bird.png','Cat.png','Deer.png','Dog.png','Frog.png','Horse.png','Ship.png','Truck.png'],
		trial_duration: 5000,
	};

You can customize the html template used to render the button with the button_html parameter:
https://www.jspsych.org/plugins/jspsych-html-button-response/
Related question from Google Group:
https://groups.google.com/d/topic/jspsych/-rZQOC-LsVs/discussion


Version 0.3.0 - Schema no updated

Hi,
I have installed the version 0.3.0 and I don't get the new parameters like refreshExpiresIn
I sure that I do something wrong :(

System information
Operating system: Windows 10
Python version: 3.8.1

wrong project.


A L4-L7 device should be exportable to other tenants

E.g. A L4L7 device is created in common tenant. => I want to export that L4L7 device to other tenants and to use it there.
In the GUI, if we export a device to other tenant it will appear under "Services/L4-L7/Imported Devices".
=> A new aci_rest_managed resource is needed under the module.
An example of API:
method: POST
url: https://apiclab1.netw.telenet.be/api/node/mo/uni/tn-apan.tf/lDevIf-[uni/tn-common/lDevVip-fwvsgate].json
payload{"vnsLDevIf":{"attributes":{"dn":"uni/tn-apan.tf/lDevIf-[uni/tn-common/lDevVip-fwvsgate]","ldev":"uni/tn-common/lDevVip-fwvsgate","status":"created,modified","rn":"lDevIf-[uni/tn-common/lDevVip-fwvsgate]"},"children":[]}}
Example of implementation with Ansible:

name: "Import Logical Device {{ node.logical_device.name }} into tenant {{ tenant }}"
aci_rest:
<<: *aci_login
path: "api/node/mo/uni/tn-{{ tenant }}/lDevIf-[uni/tn-{{ node.logical_device.tenant }}/lDevVip-{{ node.logical_device.name }}].json"
method: post
content:
vnsLDevIf:
attributes:
ldev: "uni/tn-common/lDevVip-{{ node.logical_device.name }}"
loop: "{{ graph_template.nodes }}"
loop_control:
loop_var: node

@danischm I have the exact same issue.  Do you know if there is going to be any update to this module to address this?


fix: fix the typo in TSDB version;

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
269

Relevant Lines:
349

💛  - Coveralls


Use with Lumen

I'd love to use this package with Laravel Lumen. When running the migration I get:
lumen.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: Call to undefined function ScoutEngines\Postgres\resolve() in /Users/marc/development/etnetwork/Kwick/customer/Api/vendor/pmatseykanets/laravel-scout-postgres/src/PostgresEngineServiceProvider.php:12
If i changed to this I got the migrate working:
    $this->app->configure('scout');
    $this->app->singleton(EngineManager::class, function ($app) {
        return (new EngineManager($app))->extend('pgsql', function ($app) {
			return new PostgresEngine($this->app['db'], config('scout.pgsql', []));
        });
    });

Is it possible to use with Lumen?

Thanks for bringing my attention to this. 👍
I just tagged v0.4.1 and updated the readme with the info on how to install and configure the engine in Lumen. Give it a try and let me know if you have any questions.

Hi,
I'm trying to use your engine with lumen 5.7 . but I got the following error:
In Container.php line 779:
  Class path.config does not exist

Any idea what occurs here?
Regards

I believe that you need to add  the following line in bootstrap/app.php
$app->instance('path.config', app()->basePath() . DIRECTORY_SEPARATOR . 'config');


fix: delete already refunded fees from state if some fee cannot be refunded on channel closure

Description

While refunding fees for a packet on channel closure, some fees could be refunded and some not. Those fees that are refunded should be deleted from state, so that there is no possibility of them being refunded again if the packet fee information for a packet is used somehow.
closes: #XXXX

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

[x] Targeted PR against the correct branch (see CONTRIBUTING.md).
[ ] Linked to GitHub issue with discussion and accepted design, OR link to spec that describes this work.
[ ] Code follows the module structure standards and Go style guide.
[ ] Wrote unit and integration tests.
[ ] Updated relevant documentation (docs/).
[ ] Added relevant godoc comments.
[ ] Provide a conventional commit message to follow the repository standards.
[ ] Include a descriptive changelog entry when appropriate. This may be left to the discretion of the PR reviewers. (e.g. chores should be omitted from changelog)
[ ] Re-reviewed Files changed in the GitHub PR explorer.
[ ] Review SonarCloud Report in the comment section below once CI passes.

Summary by CodeRabbit

Refactor

Improved handling of unrefunded fees during channel closures to enhance reliability in fee management.

Bug Fixes

Fixed a bug where refunded fees were not deleted from the state if some fees could not be refunded during channel closure.

Looks good but this makes me wonder if there is a possible denial of service (for channel closure) where a user spams the chain with many packet fees over time so that the gas needed to iterate over the fees is too much.

Maybe we could put a limit on the number of fees that can be escrowed for a single packet?


net/http/httputil: DumpRequest doesn't dump full url when serve as forward proxy.

What version of Go are you using (go version)?
go version go1.4.2 darwin/amd64

What operating system and processor architecture are you using?
darwin/amd64

What did you do?

run this program on local.
package main

import (
	"fmt"
	"net/http"
	"net/http/httputil"
)

func do(w http.ResponseWriter, req *http.Request) {
	b, _ := httputil.DumpRequest(req, false)
	fmt.Println(string(b))
}

func main() {
	http.HandleFunc("/", do)
	http.ListenAndServe(":12306", nil)
}

on another terminal, run:
curl -v 'http://www.qiniu.com/' -x 'http://localhost:12306'
* Hostname was NOT found in DNS cache
*   Trying <IP_ADDRESS>...
* Connected to localhost (<IP_ADDRESS>) port 12306 (#0)
> GET http://www.qiniu.com/ HTTP/1.1
> User-Agent: curl/7.37.1
> Host: www.qiniu.com
> Accept: */*
> Proxy-Connection: Keep-Alive
>
< HTTP/1.1 200 OK
< Date: Tue, 19 May 2015 08:55:41 GMT
< Content-Length: 0
< Content-Type: text/plain; charset=utf-8
<
* Connection #0 to host localhost left intact

What did you expect to see?

I ran sudo tcpdump -i any -A port 12306 and it prints
GET http://www.qiniu.com/ HTTP/1.1
User-Agent: curl/7.37.1
Host: www.qiniu.com
Accept: */*
Proxy-Connection: Keep-Alive

What did you see instead?

GET / HTTP/1.1
Host: www.qiniu.com
Accept: */*
Proxy-Connection: Keep-Alive
User-Agent: curl/7.37.1

CC @bradfitz

CL https://golang.org/cl/17592 mentions this issue.


Task builder icon keeps turning

VSCode Version: 1.4.0
OS Version: 10.11.6

Steps to Reproduce:

Build a typescript project

Expected outcome: once the compilation has finished, the running icon should stop.
Actual outcome: this doesn't always happen. In particular, only the first build stops the icon from running, it seems.
Settings:
tsconfig.json:
{
    "compilerOptions": {
        "module": "commonjs",
        "noImplicitAny": true,
        "removeComments": true,
        "preserveConstEnums": true,
        "sourceMap": true,
        "target": "es6"
    },
    "files": [ bunch of .ts files ]
}

@sandy081 thank you for opening this issue. Below are the steps I have taken in an attempt to reproduce your issue. Can you run through these steps on your machine or clarify where I am in error?

Create a new folder with test.ts (copy and paste code below).
Create tsconfig.json with the code below.
Open the command palatte.
Type "Configure Task Runner"
Choose "TypeScript - tsconfig.json"
Open Quick Open (cmd+p or ctrl+p) and type "task tsc" to compile.

Based on your bug report I expect the task runner to still be running, however, I am not able to reproduce what you are seeing.
test.ts
console.log('hello world');

tsconfig.json
{
    "compilerOptions": {
        "module": "commonjs",
        "noImplicitAny": true,
        "removeComments": true,
        "preserveConstEnums": true,
        "sourceMap": true,
        "target": "es6"
    },
    "files": [ "test.ts"]
}

tasks.json (generated by VS Code)
{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "0.1.0",
    "command": "tsc",
    "isShellCommand": true,
    "args": ["-p", "."],
    "showOutput": "silent",
    "problemMatcher": "$tsc"
}

@waderyan I am not the author of this issue, I just triaged it :)
Pinging the author @FLWrd

Whoops! Sorry about that @sandy081. Mistyped.

Hi,
I cannot perform step 6. "task tsc" is not an option.
I can hit cmd-shift-b (run build task). That executes fine. Then, when I make a change to test.ts and hit cmd-shift-b again, the build icon keeps spinning, as reported before.

@FLWrd please share your tasks.json file.
This is what mine looks like.
{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "0.1.0",
    "command": "tsc",
    "isShellCommand": true,
    "args": ["-p", "."],
    "showOutput": "silent",
    "problemMatcher": "$tsc"
}

My guess is that you configured your task to run in watch mode, which is why the task is still running - its watching.

Sorry for the delay, here it is:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "0.1.0",
"command": "tsc",
"isShellCommand": true,
"args": ["-p", "."],
"showOutput": "silent",
"problemMatcher": "$tsc"
}
I think I copied it from your earlier message. Which attribute would make it watch?

should be fixed with latest task improvements


unable to use server on node.js

When use in browser there is no problem to use client
But when I try to use in node.js, client was not found
What should I do to skip import client that I never use
both node.js 18 and 19
step to reproduce

npm init -y
npm install @passwordless-id/webauthn
change package.json add type: 'module'
create index.js

import { server } from '@passwordless-id/webauthn'
console.log(server)

run node index.js
error occurs

node:internal/errors:490
    ErrorCaptureStackTrace(err);
    ^

Error [ERR_MODULE_NOT_FOUND]: Cannot find module '.\node_modules\@passwordless-id\webauthn\dist\esm\client' imported from<EMAIL_ADDRESS>    at new NodeError (node:internal/errors:399:5)
    at finalizeResolution (node:internal/modules/esm/resolve:231:11)
    at moduleResolve (node:internal/modules/esm/resolve:850:10)
    at defaultResolve (node:internal/modules/esm/resolve:1058:11)
    at nextResolve (node:internal/modules/esm/hooks:654:28)
    at Hooks.resolve (node:internal/modules/esm/hooks:309:30)
    at ESMLoader.resolve (node:internal/modules/esm/loader:312:26)
    at ESMLoader.getModuleJob (node:internal/modules/esm/loader:172:38)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:76:40)
    at link (node:internal/modules/esm/module_job:75:36) {
  code: 'ERR_MODULE_NOT_FOUND'
}

Node.js v19.8.1

I fear I have to split it into different builts :/

I noticed that too... I'd have to change the sources though and verify it doesn't break for typescript/vite/cloudflare workers since I use these "in production" for https://passwordless.id

Can confirm with change of exports to .js that importing client now works with Vite/Svelte Kit using TS.

I already have the problem that the jest tests fail when importing with ".js" extensions:
at Resolver._throwModNotFoundError (node_modules/jest-resolve/build/resolver.js

To sum it up...

half of the tools/environments prefer imports without file extension
the other half with file extensions
from a stackoverflow answer, I read typescript is strongly against "import rewriting" so a double build seems not an option.
....somehow, it feels weird to write "import ...js" to import a "ts" file

It's funny how the js ecosystem is "destandardized", or I'm missing something. Every lib I look at seems to do things slightly differently so I don't know the "right way" to do it.
As far as I could see, imports without file extension seem more widespread... And feels more natural to me.
Checklist for a successful change, it should work with:

browser
node
cloudflare workers
vite
jest tests

Perhaps instead of changing file extensions, it may make sense to split it into separate client and server builts, each minified and bundled... But I think it might negatively affect the size of imported code for partial imports.

Yeah, it's quite a bit to work through.  Also keep in mind that some frameworks will be importing client on the server as part of SSR'ing content out, which means that you will also need checks like if (typeof window === 'undefined') return false; at Line 8 of src/clients.ts as it can't be assumed that window exists either.

Also, you could run the tests on the emitted JS (as mentioned here https://learn.microsoft.com/en-us/visualstudio/javascript/unit-testing-javascript-with-visual-studio?view=vs-2022&tabs=mocha or use something like ts-jest as covered here https://www.testim.io/blog/typescript-unit-testing-101/

Regarding the window thing, it's in a method to detect the browser's capabilities at runtime, so it doesn't make sense to use it for SSR, as stated in #19. The ts-jest lib is already used in this project, and targeting the emitted js wouldn't solve the issue AFAIK.
I digged a bit and it seems an issue that many people faced. Among others https://github.com/evanw/esbuild/issues/622 ...and the workarounds are like the wild west to insert the extension in emitted files.

https://github.com/microsoft/TypeScript/issues/16577 would rather be the curlpit.

I'll try with https://github.com/AyogoHealth/jest-ts-webcompat-resolver later on...


Fix get_app_ids_for_query() from Google interface update

Using BeautifulSoup to grab app ids. The current mappings change depending on the country code. I think this will be a more robust way of capturing the ids and hopefully won't require as many updates.
Right now it relies on looking for "role": "listitem" to grab all the listed apps and then 'store/apps/details?id=' in "href" elements to target links with the app ids.
Need to check that beautiful soup package is installed with the package before merging and releasing. Also want to run some additional tests to see if any other elements are missing elsewhere.

Cool cool cool. Install Beautiful Soup good, but, as I feared, she dies here: https://github.com/digitalmethodsinitiative/google-play-scraper/blob/30718223f2ba33e24dd394798aa15ee95ff74b0d/google_play_scraper/scraper.py#L325

Lots of new mappings. Fixes app details and query.
Still need to work on developer ids.


Main task

Preferable technologies

[x] Java 8+,Gradle (preferable) or Maven
[x] Spring Boot, Spring Data JPA (use Postgres), Liquibase
[ ] Proxy/API Gateway
[ ] Message Brokers
[ ] Swagger (detailed API description for resources)
[x] Unit tests written on Spock Framework (preferable) or JUnit
[ ] Provide detailed deployment instructions for getting your solution up and running
[ ] Create an opportunity to start services using docker compose or minikube
[ ] Feel free to add any additional features and practices so your submission in order to demonstrate your
expertise in writing production grade software

Parcel Delivery App
You’ll be expected to build the back- end of the web app, while the front end will be built by another
developer in the team.
To do this, you are expected to implement a solution that enables the user stories provided. This solution
must be implemented as a micro-service architecture that is deployable using container technology.

[ ] Design a solution architecture diagram for Parcel Delivery APP based on micro-service technologies;
[ ] Implement the micro-services required for Parcel Delivery APP to bring the user stories provided to reality;
[ ] Containerize your micro-service solution to allow for it to be easily tested on other developer computers;

User Stories
User

[x] Can create a user account, log in*
[x] Can create a parcel delivery order**
[x] Can change the destination of a parcel delivery order**
[x] Can cancel a parcel delivery order****
[ ] Can see the details of a delivery
[x] Can see all parcel delivery orders that he/she created

Admin

[x] Can change the status of a parcel delivery order
[ ] Can view all parcel delivery orders
[ ] Can assign parcel delivery order to the courier
[x] Can log in and create a courier account*
[ ] Can track the delivery order by coordinates
[ ]  Can see list of couriers with their statuses

Courier

[x] Can log in
[ ] Can view all parcel delivery orders that
[ ] Can change the status of a parcel delivery order
[ ] Can see the details of a delivery order


install issue

install went grand on MST2_EU_SE_ZR_P0245T but the issue i had was that even though it has supported FEC's for Apple carplay and android auto it only activated Mirror Link, anyone know if i put a text folder in for these FEC's will it work?

If you ee only mirror link, patching was ok, but coding is missing in your unit, if you installed and used toolbox i suppose you have obdeleven or vcds ....
Here's your coding
5F - Adaptation - Vehicle Configuration:

Google_GAL -> ON
Apple_DIO -> ON
Mirror_link -> ON
Smartphone_interface_for_rhmi -> ON


Adding user notificatons in comments with @

I already did a lot of talking you through what I've changed so if you have any questions just ask! The only thing I left out was highlighting users in the parseLabel.js section of markdown.

This addresses issue #59

All that's left is to add clicky links to users in comments through parseLablel.js If you have time before I get to it. Go for it!

Sweet! I'm excited to check it out. I'm happy to do the clicky links work if I get to it before you, but I'll be a little busy for the next few days with two of my friends' wedding in NC.

👍

As you know, I merged this in today. Thanks a ton for your work on this!


Add ASSIMP module

Fix #37

Codecov Report

Merging #70 (4a8b90d) into master (e6b3f09) will decrease coverage by 0.03%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #70      +/-   ##
==========================================
- Coverage   93.32%   93.28%   -0.04%
==========================================
  Files          59       59
  Lines        2997     2980      -17
==========================================
- Hits         2797     2780      -17
  Misses        200      200

Impacted Files
Coverage Δ

src/F3DOptions.h
100.00% <ø> (ø)

src/F3DAnimationManager.cxx
93.61% <100.00%> (-0.14%)
:arrow_down:

src/vtkF3DInteractorStyle.h
66.66% <0.00%> (-16.67%)
:arrow_down:

src/vtkF3DOCCTReader.h
86.66% <0.00%> (-3.81%)
:arrow_down:

src/vtkF3DPolyDataMapper.cxx
85.52% <0.00%> (-0.19%)
:arrow_down:

src/vtkF3DOpenGLGridMapper.cxx
91.48% <0.00%> (-0.09%)
:arrow_down:

src/vtkF3DGenericImporter.cxx
91.66% <0.00%> (-0.05%)
:arrow_down:

src/readers/F3DOBJReader.h
100.00% <0.00%> (+4.34%)
: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 e6b3f09...4a8b90d. Read the comment docs.

you have a failing test

Must add tests:

EmbeddedTextureCodePath (lots of lines to cover here)
mesh->mNumBones > 0 (lots of lines to cover here)
UpdateTimeStep (lots of lines to cover here)

Nice to add tests:

--animation-index=-1
assimp camera test
case aiLightSourceType::aiLightSource_POINT:
case aiLightSourceType::aiLightSource_AMBIENT:
case aiLightSourceType::aiLightSource_SPOT:
case aiLightSourceType::aiLightSource_AREA:
EmbeddedTextureCodePath (lots of lines to cover here)
case aiShadingMode_Flat:
case aiShadingMode_OrenNayar:/case aiShadingMode_CookTorrance:/case aiShadingMode_Fresnel:
case aiShadingMode_Toon:/case aiShadingMode_NoShading:
NormalTexture
AlbedoTexture
EmissiveTexture
HasTangentsAndBitangents
face.mNumIndices == 1
face.mNumIndices == 2

lets improve coverage in the future once we have animation support in assimp


Update README.md: Added info regarding description, usage, and contributions

This pull request adds several subsections to the documentation, including a description, usage, what you can contribute, and how you can contribute sections.

Thank You for your contribution! :star:


Add ability to upload picture of child with thumbnailing capabilities.

Another pull request for remote storage coming up next!

Coverage decreased (-0.09%) to 99.188% when pulling b2edd13c9fe03c95fd2e02a7d69d96fb8893c45a on overshard:master into db4a1b247a6ddd0aed007e09e8a87fc2c23beb19 on cdubz:master.

Coverage decreased (-0.09%) to 99.188% when pulling b2edd13c9fe03c95fd2e02a7d69d96fb8893c45a on overshard:master into db4a1b247a6ddd0aed007e09e8a87fc2c23beb19 on cdubz:master.

Note, I can't seem to generate a pipenv lock / Pipfile.lock so I didn't include that here, you're going to need to generate that.

Coverage decreased (-0.04%) to 99.236% when pulling<PHONE_NUMBER>d1a9a7ff8a3cb6f9c6c57199328c96 on overshard:master into db4a1b247a6ddd0aed007e09e8a87fc2c23beb19 on cdubz:master.


Integrate with IOS Sharing (feature)

Would be nice to have deeper IOS integration.  Here is Apple's guide:
https://developer.apple.com/library/content/documentation/General/Conceptual/ExtensibilityPG/Share.html

Thanks @fmp777, appreciate your feedback.
Would you like to contribute this in the feature idea forum so it can be discussed, upvoted and considered for a ticket accepting pull requests?
Please include a link back to this GitHub Issue. If you're interested in implementing, please say so and we'll prioritize the review.
You get 10 votes in the feature idea forum, and each one influences the future of the project.

Hi @fmp777, we haven't received an update so we'll assume you've opened a request on the feature idea forum.
I'll close this issue off here for now.


DB retry logic

Pull Request Test Coverage Report for Build 741000307

0 of 15 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.06%) to 25.6%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

utils/retry_sleeper.go
0
15
0.0%

Totals

Change from base Build 726794844:
-0.06%

Covered Lines:
1739

Relevant Lines:
6793

💛  - Coveralls


Where's the update button ?

Type: Feature Request
In my version 1.70 i don't have the update button ,soo really i'll reinstall it again?
VS Code version: Code 1.70.0 (da76f93349a72022ca4670c1b84860304616aaa2, 2022-08-04T04:38:16.462Z)
OS version: Windows_NT x64 10.0.19045
Modes:

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.79.0. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

Are you using Run As Administrator when you launch VS Code? Or perhaps running it from an admin-level command window?
Please close all VS Code instances, then launch unelevated. Does the option to check for updates now appear?

I have the same issue running the latest VSCode (1.79.0 atm).
The system installer does not fix the problem, and launching without admin rights (which I have never done) also doesn't. I have tried uninstalling and installing again but nothing again.

@Selfaiz Are you using Run As Administrator when you launch VS Code? Or perhaps running it from an admin-level command window?

Does the button come back if you run it as a non-admin?

Either way, there is no button

Can you show me a screenshot of the full window showing me there is no button?

this when i run as admin

after remove all instance i run it simple way  , the same

Can you show me a screenshot of the full window showing me there is no button?

You're still running as Administrator, as indicated by the window title bar. Please close VS Code, open it as a non-admin and try again.

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!


Emoji rendering with NotoColorEmoji yields an empty image

I might be doing something wrong or naive here, but here's a minimal example:
# Cargo.toml
[package]
name = "cosmic-text-test"
version = "0.1.0"
edition = "2021"

[dependencies]
cosmic-text = "0.12"
fontdb = "0.16"
sys-locale = "0.3"

// src/main.rs
use cosmic_text::{Attrs, Buffer, FontSystem, Metrics, Shaping, SwashCache};
use fontdb::Database;
use std::sync::Arc;

fn main() {
    // Create a custom FontSystem with only an emoji font.
    let emoji_font = Arc::new(include_bytes!("../fonts/NotoColorEmoji-Regular.ttf"));

    let mut font_db = Database::new();
    font_db.load_font_source(fontdb::Source::Binary(emoji_font));

    let locale = sys_locale::get_locale().unwrap_or_else(|| "en-US".to_string());
    let mut font_system = FontSystem::new_with_locale_and_db(locale, font_db);
    let mut swash_cache = SwashCache::new();

    // Shape a buffer
    let mut buffer = Buffer::new_empty(Metrics::relative(32.0, 1.0));
    buffer.set_size(&mut font_system, Some(3000.0), Some(3000.0));

    let default_attrs = Attrs::new();

    buffer.set_text(&mut font_system, "😂", default_attrs, Shaping::Advanced);

    let prune = true;
    buffer.shape_until_scroll(&mut font_system, prune);

    let x = 0.0;
    let y = 0.0;
    let scale = 1.0;

    // Iterate over glyphs
    for run in buffer.layout_runs() {
        dbg!(run.text);

        for glyph in run.glyphs.iter() {
            let physical_glyph = glyph.physical((x, y), scale);
            dbg!(&physical_glyph.cache_key);

            let Some(image) =
                swash_cache.get_image_uncached(&mut font_system, physical_glyph.cache_key)
            else {
                println!("No rasterization needed?");
                continue;
            };

            dbg!(image.source);
            dbg!(image.content);
            dbg!(image.placement);
            dbg!(image.data.len());
        }
    }
}

$ cargo run --release
   Compiling cosmic-text-test v0.1.0 (/Users/brian/projects/cosmic-text-test/cosmic-text-test)
    Finished `release` profile [optimized] target(s) in 1.64s
     Running `target/release/cosmic-text-test`
[src/main.rs:33:9] run.text = "😂"
[src/main.rs:37:13] &physical_glyph.cache_key = CacheKey {
    font_id: ID(
        InnerId(
            1v1,
        ),
    ),
    glyph_id: 2285,
    font_size_bits:<PHONE_NUMBER>,
    x_bin: Zero,
    y_bin: Zero,
    flags: CacheKeyFlags(
        0x0,
    ),
}
[src/main.rs:46:13] image.source = Outline
[src/main.rs:47:13] image.content = Mask
[src/main.rs:48:13] image.placement = Placement {
    left: -1,
    top: 0,
    width: 2,
    height: 0,
}
[src/main.rs:49:13] image.data.len() = 0

I'm using the NotoColorEmoji-Regular.ttf file downloaded from Google Fonts.
Any help would be appreciated, I'm assuming this is not the expected output for shaping a singular emoji in a run of text, with a database which consists of only 1 emoji font.

After more poking around, it seems maybe the TTF I downloaded isn't correct?
I tried substituting in this one and it seems to be rendering correctly now.

Had the exact same experience just now... can confirm that @bschwind 's alternative TTF file works fine.


Chair enter types

Closes #2018
review because i didn't test these functions and i was kinda winging it tbh, My big worry is getting the wrong seat types as i couldn't find the real types for them on the wiki.

Consider testing your code or at least installing a linter 😉

Consider testing your code or at least installing a linter 😉

tbh i was too assed to install a local version of wire and test my changes but from what I've seen here even wire devs do that too so its a human thing lmao


[Snyk] Fix for 2 vulnerabilities

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to fix one or more vulnerable packages in the `maven` dependencies of this project.
Changes included in this PR

Changes to the following files to upgrade the vulnerable dependencies to a fixed version:

commons/pac-batch-commons/pom.xml

Vulnerabilities that will be fixed
With an upgrade:

Severity
Priority Score (*)
Issue
Upgrade
Breaking Change
Exploit Maturity

539/1000  Why? Has a fix available, CVSS 6.5
Directory Traversal SNYK-JAVA-COMAMAZONAWS-2952700
com.amazonaws:aws-java-sdk:  1.12.290 -> 1.12.686
No
No Known Exploit

539/1000  Why? Has a fix available, CVSS 6.5
Denial of Service (DoS) SNYK-JAVA-IONETTY-5725787
com.amazonaws:aws-java-sdk:  1.12.290 -> 1.12.686
No
No Known Exploit

(*) Note that the real score may have changed since the PR was raised.
Vulnerabilities that could not be fixed

Upgrade:

Could not upgrade<EMAIL_ADDRESS>to<EMAIL_ADDRESS>Reason could not apply upgrade, dependency is managed externally ; Location: https://maven-central.storage-download.googleapis.com/maven2/com/amazonaws/aws-java-sdk-pom/1.12.234/aws-java-sdk-pom-1.12.234.pom

Check the changes in this PR to ensure they won't cause issues with your project.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings
📚 Read more about Snyk's upgrade and patch logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Directory Traversal
🦉 Denial of Service (DoS)

Checkmarx One – Scan Summary & Details – fc30fbb8-2d6f-4114-8da2-6e36e70a9eae
New Issues

Severity
Issue
Source File / Package
Checkmarx Insight

CVE-2023-52428
Maven-com.nimbusds:nimbus-jose-jwt-9.8.1
Vulnerable Package

CVE-2024-22243
Maven-org.springframework:spring-web-5.0.8.RELEASE
Vulnerable Package

CVE-2024-22257
Maven-org.springframework.security:spring-security-core-5.0.7.RELEASE
Vulnerable Package

CVE-2024-22259
Maven-org.springframework:spring-web-5.0.8.RELEASE
Vulnerable Package

CVE-2024-23672
Maven-org.apache.tomcat.embed:tomcat-embed-core-8.5.32
Vulnerable Package

CVE-2024-23672
Maven-org.apache.tomcat.embed:tomcat-embed-websocket-8.5.32
Vulnerable Package

CVE-2024-29180
Npm-webpack-dev-middleware-5.3.0
Vulnerable Package


Revert "python311Packages.pathlib-abc: 0.1.1 -> 0.2.0"

Reverts NixOS/nixpkgs#299290
Regresses pathy, it's only reverse dependency, which in turn blocks spacy, textuals and others.

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

26 packages failed to build:

python311Packages.fastai
python311Packages.fastai.dist
python311Packages.spacy
python311Packages.spacy-lookups-data
python311Packages.spacy-lookups-data.dist
python311Packages.spacy-transformers
python311Packages.spacy-transformers.dist
python311Packages.spacy.dist
python311Packages.textacy
python311Packages.textacy.dist
python311Packages.textnets
python311Packages.textnets.dist
python312Packages.fastai
python312Packages.fastai.dist
python312Packages.pathy
python312Packages.pathy.dist
python312Packages.spacy
python312Packages.spacy-lookups-data
python312Packages.spacy-lookups-data.dist
python312Packages.spacy-transformers
python312Packages.spacy-transformers.dist
python312Packages.spacy.dist
python312Packages.textacy
python312Packages.textacy.dist
python312Packages.textnets
python312Packages.textnets.dist

6 packages built:

python311Packages.pathlib-abc
python311Packages.pathlib-abc.dist
python311Packages.pathy
python311Packages.pathy.dist
python312Packages.pathlib-abc
python312Packages.pathlib-abc.dist

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

14 packages failed to build:

python312Packages.fastai
python312Packages.fastai.dist
python312Packages.pathy
python312Packages.pathy.dist
python312Packages.spacy
python312Packages.spacy-lookups-data
python312Packages.spacy-lookups-data.dist
python312Packages.spacy-transformers
python312Packages.spacy-transformers.dist
python312Packages.spacy.dist
python312Packages.textacy
python312Packages.textacy.dist
python312Packages.textnets
python312Packages.textnets.dist

18 packages built:

python311Packages.fastai
python311Packages.fastai.dist
python311Packages.pathlib-abc
python311Packages.pathlib-abc.dist
python311Packages.pathy
python311Packages.pathy.dist
python311Packages.spacy
python311Packages.spacy-lookups-data
python311Packages.spacy-lookups-data.dist
python311Packages.spacy-transformers
python311Packages.spacy-transformers.dist
python311Packages.spacy.dist
python311Packages.textacy
python311Packages.textacy.dist
python311Packages.textnets
python311Packages.textnets.dist
python312Packages.pathlib-abc
python312Packages.pathlib-abc.dist


Is Drawable/DrawParams the right abstraction?

Something that bugs me about the current drawing API is that all Drawable things take in DrawParams - but some params make zero sense for objects, and it's kinda awkward having some of them get silently ignored. The way we use DrawParams in Tetra actually is kinda just to emulate the method overloads on XNA/LibGDX's spritebatch objects - and in those frameworks, you don't have a common Drawable interface, you just pass the spritebatch around and draw textures.
All this is a long winded way of saying - I think Drawable might be a bit of a leaky abstraction, and I might get rid of it for 0.3 in favour of just making the basic graphics API easier to use/compose. In an ideal world, we want NineSlice/Animation/etc to be just as easy to implement out of tree as they are to implement in Tetra.

At the very least, we need to make DrawParams cheaper to construct - a lot of the CPU overhead right now (especially in debug mode) is constructing a load of Vec2s with the default values.

Thinking about it, the only odd one out of the DrawParams is clip - everything else is either a transformation or a color, both of which are supported by basically every Drawable.
Part of me feels like I should add a TextureRegion type like in LibGDX instead? My only worry is that it'll increase the amount of things holding an Rc to the texture, which could get slow.
Alternatively, I could make drawing cropped textures a seperate method...

clip is getting yeeted in 0.6: #236

clip is getting yeeted in 0.6: #236

Screw it, Drawable is getting yeeted in 0.6, for the following reasons:

Not every object has a single reasonable way of drawing (e.g. Texture can be draw with or without a region).
Not every drawable object has the same performance characteristics (e.g. if you have a draw_50000_times function, passing a Texture to that is going to give you very different results to a Mesh).
Having to either import Drawable or use graphics::draw is a pain, and feels inconsistent with how every other type in Tetra works (e.g. to modify a shader, you do shader.set_uniform, not graphics::set_uniform).
In practice, my games tend to want to thread extra state through the update and draw methods, and Drawable can't be extended to support that.

It's felt like a leaky abstraction from day one and I think I need to just rip the band-aid off and get rid of it.

Screw it, Drawable is getting yeeted in 0.6, for the following reasons:

Not every object has a single reasonable way of drawing (e.g. Texture can be draw with or without a region).
Not every drawable object has the same performance characteristics (e.g. if you have a draw_50000_times function, passing a Texture to that is going to give you very different results to a Mesh).
Having to either import Drawable or use graphics::draw is a pain, and feels inconsistent with how every other type in Tetra works (e.g. to modify a shader, you do shader.set_uniform, not graphics::set_uniform).
In practice, my games tend to want to thread extra state through the update and draw methods, and Drawable can't be extended to support that.

It's felt like a leaky abstraction from day one and I think I need to just rip the band-aid off and get rid of it.

Done on the 0.6 branch.

Done on the 0.6 branch.


Device registration fails with firefox (works with Chrome)

As requested here: https://github.com/MasterKale/SimpleWebAuthn/issues/440#issuecomment-1756923797
After updating both packages to their latest version, registration fails but with a different error this time. Chrome keeps working.
Here some debugging info:
Working with Chrome:
{
  request: {
     challenge: 'NkUgPU8KfTEuMF-78rbkr81NIF0SoU9hBhkFRffApI0',
     rp: { name: 'REDACTED', id: 'localhost' },
     user: {
       id: 'REDACTED',
       name: 'REDACTED',
       displayName: 'REDACTED'
     },
     pubKeyCredParams: [ [Object], [Object], [Object] ],
     timeout: 60000,
     attestation: 'indirect',
     excludeCredentials: [],
     authenticatorSelection: {
       residentKey: 'preferred',
       userVerification: 'preferred',
       requireResidentKey: false
     },
     extensions: { credProps: true }
   },
   response: {
     id: 'KEthTlOv7trIQ0g9hvZmvAOxVOmhh-UPa7QotW5nNDUNsJXdIviXylbk5HvEhtfx',
     rawId: 'KEthTlOv7trIQ0g9hvZmvAOxVOmhh-UPa7QotW5nNDUNsJXdIviXylbk5HvEhtfx',
     response: {
       attestationObject: 'o2NmbXRmcGFja2VkZ2F0dFN0bXSjY2FsZyZjc2lnWEYwRAIgaDfm9cLN7bE8fIIT2JwNNjpggnHXClnAiBNZ3WYrNBMCICoDf7lc6Y3eX70TNVWyYTy75BdmPPSmN88lcfQ97eAzY3g1Y4FZAt0wggLZMIIBwaADAgECAgkA4RPwzmmndbYwDQYJKoZIhvcNAQELBQAwLjEsMCoGA1UEAxMjWXViaWNvIFUyRiBSb290IENBIFNlcmlhbCA0NTcyMDA2MzEwIBcNMTQwODAxMDAwMDAwWhgPMjA1MDA5MDQwMDAwMDBaMG8xCzAJBgNVBAYTAlNFMRIwEAYDVQQKDAlZdWJpY28gQUIxIjAgBgNVBAsMGUF1dGhlbnRpY2F0b3IgQXR0ZXN0YXRpb24xKDAmBgNVBAMMH1l1YmljbyBVMkYgRUUgU2VyaWFsIDEzMjQzNTY1NzcwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAS-EvB5JATjjS2-GSN4diiQ48S8kAj5g26rCBkDfZIcQYjKL6qE6gKM39rgzxD1khkn6i1A40ik2wC_8Z_60--qo4GBMH8wEwYKKwYBBAGCxAoNAQQFBAMFBAMwIgYJKwYBBAGCxAoCBBUxLjMuNi4xLjQuMS40MTQ4Mi4xLjEwEwYLKwYBBAGC5RwCAQEEBAMCBDAwIQYLKwYBBAGC5RwBAQQEEgQQpOn8bUy-R1i4ujdZi7W7qjAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQChRXSOMBqLK8u9kS4S3r2Ma7Dz740fXnifG3l8Il57IXCDLH9r3qXAG9-a8cBVTF4MvGOBMK90wB1B8LXlCUM6lRM2sKDYN2c1AxhYB3T4EEmVuxT9dDwumyOOm68aOi2nnGDKtgxelx-71dj-bKvZGN3ToOysx8WKbsnxHnDo1qNOTxyxeEgKKG_AXjxLIAgZHTXaYTrY_h6uGVr96lPzKGD-Im7lVsdWE9Bce7xzRoO62faYWC71xbBiNWU-t53v8QBDi_Ua4zYR0Zm_ULnwRUqHQ4X5MPLzxRw59NBh3JUuVKWC69ByxFqIOlFm56Y_UuLvYo8E3Q_wsPBj1WBraGF1dGhEYXRhWJ9Jlg3liA6MaHQ0Fw9kdmBbj-SuuaKGMseZXPO6gx2XY8UAAAAEpOn8bUy-R1i4ujdZi7W7qgAwKEthTlOv7trIQ0g9hvZmvAOxVOmhh-UPa7QotW5nNDUNsJXdIviXylbk5HvEhtfxpAEBAycgBiFYIChLYU5Tr-7ayENIPYac8k9s8ypXjiqCFkDg_FpuygxpoWtjcmVkUHJvdGVjdAI',
       clientDataJSON: 'eyJ0eXBlIjoid2ViYXV0aG4uY3JlYXRlIiwiY2hhbGxlbmdlIjoiNVFVQml0NjRiZFViQ21faGtFSWN1ZnJkNDY3VVhidjdXa1U3VW5xYlM5OCIsIm9yaWdpbiI6Imh0dHBzOi8vbG9jYWxob3N0OjQyMDAiLCJjcm9zc09yaWdpbiI6ZmFsc2V9',
       transports: [Array],
       publicKeyAlgorithm: -8,
       publicKey: 'MCowBQYDK2VwAyEAKEthTlOv7trIQ0g9hpzyT2zzKleOKoIWQOD8Wm7KDGk',
       authenticatorData: 'SZYN5YgOjGh0NBcPZHZgW4_krrmihjLHmVzzuoMdl2PFAAAABKTp_G1MvkdYuLo3WYu1u6oAMChLYU5Tr-7ayENIPYb2ZrwDsVTpoYflD2u0KLVuZzQ1DbCV3SL4l8pW5OR7xIbX8aQBAQMnIAYhWCAoS2FOU6_u2shDSD2GnPJPbPMqV44qghZA4PxabsoMaaFrY3JlZFByb3RlY3QC'
     },
     type: 'public-key',
     clientExtensionResults: { credProps: [Object] },
     authenticatorAttachment: 'cross-platform'
   },
   expectedChallenge: '5QUBit64bdUbCm_hkEIcufrd467UXbv7WkU7UnqbS98',
   expectedOrigin: 'https://localhost:4200',
   expectedRPID: 'localhost',
   verification: {
     verified: true,
     registrationInfo: {
       fmt: 'packed',
       counter: 4,
       aaguid: 'a4e9fc6d-4cbe-4758-b8ba-37598bb5bbaa',
       credentialID: [Uint8Array],
       credentialPublicKey: [Uint8Array],
       credentialType: 'public-key',
       attestationObject: [Uint8Array],
       userVerified: true,
       credentialDeviceType: 'singleDevice',
       credentialBackedUp: false,
       origin: 'https://localhost:4200',
       rpID: 'localhost',
       authenticatorExtensionResults: [Object]
     }
   }
 }

Failing with Firefox
{
  request: {
     challenge: 'OqmoL2yMQdmwcL4jLL85SkcEq1_6cI0InUDUcO1WE1o',
     rp: { name: 'REDACTED', id: 'localhost' },
     user: {
       id: '63d3d082b7610778c308f25c',
       name: 'REDACTED',
       displayName: 'REDACTED'
     },
     pubKeyCredParams: [ [Object], [Object], [Object] ],
     timeout: 60000,
     attestation: 'indirect',
     excludeCredentials: [],
     authenticatorSelection: {
       residentKey: 'preferred',
       userVerification: 'preferred',
       requireResidentKey: false
     },
     extensions: { credProps: true }
   },
   response: {
     id: '2PvlO37W-pdWdMvEnigOU0BlBZ-PtE4OZSZsxPbRN8bodRw378VPVmaur1Oks6u5',
     rawId: '2PvlO37W-pdWdMvEnigOU0BlBZ-PtE4OZSZsxPbRN8bodRw378VPVmaur1Oks6u5',
     response: {
       attestationObject: 'o2NmbXRmcGFja2VkZ2F0dFN0bXSjY2FsZyZjc2lnWEYwRAIgHcyLYtm1V14B1Y90sNTpZGXpi2OV40za0-8xkyYtTeECICkGdaW-oRAJHrkbUuEetcGVgRXxGXHtAbkZt2fTKS2kY3g1Y4FZAt0wggLZMIIBwaADAgECAgkA4RPwzmmndbYwDQYJKoZIhvcNAQELBQAwLjEsMCoGA1UEAxMjWXViaWNvIFUyRiBSb290IENBIFNlcmlhbCA0NTcyMDA2MzEwIBcNMTQwODAxMDAwMDAwWhgPMjA1MDA5MDQwMDAwMDBaMG8xCzAJBgNVBAYTAlNFMRIwEAYDVQQKDAlZdWJpY28gQUIxIjAgBgNVBAsMGUF1dGhlbnRpY2F0b3IgQXR0ZXN0YXRpb24xKDAmBgNVBAMMH1l1YmljbyBVMkYgRUUgU2VyaWFsIDEzMjQzNTY1NzcwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAS-EvB5JATjjS2-GSN4diiQ48S8kAj5g26rCBkDfZIcQYjKL6qE6gKM39rgzxD1khkn6i1A40ik2wC_8Z_60--qo4GBMH8wEwYKKwYBBAGCxAoNAQQFBAMFBAMwIgYJKwYBBAGCxAoCBBUxLjMuNi4xLjQuMS40MTQ4Mi4xLjEwEwYLKwYBBAGC5RwCAQEEBAMCBDAwIQYLKwYBBAGC5RwBAQQEEgQQpOn8bUy-R1i4ujdZi7W7qjAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQChRXSOMBqLK8u9kS4S3r2Ma7Dz740fXnifG3l8Il57IXCDLH9r3qXAG9-a8cBVTF4MvGOBMK90wB1B8LXlCUM6lRM2sKDYN2c1AxhYB3T4EEmVuxT9dDwumyOOm68aOi2nnGDKtgxelx-71dj-bKvZGN3ToOysx8WKbsnxHnDo1qNOTxyxeEgKKG_AXjxLIAgZHTXaYTrY_h6uGVr96lPzKGD-Im7lVsdWE9Bce7xzRoO62faYWC71xbBiNWU-t53v8QBDi_Ua4zYR0Zm_ULnwRUqHQ4X5MPLzxRw59NBh3JUuVKWC69ByxFqIOlFm56Y_UuLvYo8E3Q_wsPBj1WBraGF1dGhEYXRhWLlJlg3liA6MaHQ0Fw9kdmBbj-SuuaKGMseZXPO6gx2XY0UAAAAEpOn8bUy-R1i4ujdZi7W7qgAw2PvlO37W-pdWdMvEnigOU0BlBZ-PtE4OZSZsxPbRN8bodRw378VPVmaur1Oks6u5owFjT0tQAycgZ0VkMjU1MTkhmCAY2Bj7GOUYOxh-GNYY-hiXGFYYdBjLGMQYnhjCGJYYuRjrGF8Yvhh0GB0YkhhHDhg3GE4YewcYORhPGNAY6A',
       clientDataJSON: 'eyJjaGFsbGVuZ2UiOiJEVHlCRUxQWEx5WHIwZlQ1ZmttaGlzbF9BRU1jMTNld1FUUVMteExDdkNRIiwib3JpZ2luIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NDIwMCIsInR5cGUiOiJ3ZWJhdXRobi5jcmVhdGUifQ'
     },
     type: 'public-key',
     clientExtensionResults: {}
   },
   expectedChallenge: 'DTyBELPXLyXr0fT5fkmhisl_AEMc13ewQTQS-xLCvCQ',
   expectedOrigin: 'https://localhost:4200',
   expectedRPID: 'localhost',
   verification: { verified: false }
 }

The verification key is the result of the method verifyRegistrationResponse

@AntonyChiossi Can you confirm that you're testing this with a security key? I see -8 for an algorithm ID in the Chrome response. And which version of Firefox and which OS again?
Bizarre that the same implementation of SimpleWebAuthn succeeds with responses in Chrome but not in Firefox...

Other users are also running into this issue on another software that uses this module for webauthn where it works fine on chrome/chromium stable but not firefox and chrome dev but also in this case it spits out a certificate error on chrome dev.
See the open issue on the other software: https://github.com/misskey-dev/misskey/issues/12115
Snippet of the error
Error: Certificate not good after "Sun Oct 22 2023 00:43:10 GMT+0000 (Coordinated Universal Time)" (Packed|Full)
    at verifyAttestationPacked (file:///node_modules/.pnpm/@simplewebauthn+server@8.3.2/node_modules/@simplewebauthn/server/esm/registration/verifications/verifyAttestationPacked.js:55:19)
    at verifyRegistrationResponse (file:///node_modules/.pnpm/@simplewebauthn+server@8.3.2/node_modules/@simplewebauthn/server/esm/registration/verifyRegistrationResponse.js:164:26)

@AntonyChiossi After some experimentation tonight it just dawned on me that the "fix" I added to address #440 is going to break security key responses in those versions of Firefox suffering the malformed CBOR issue because I'm flipping a bit in authData. This breaks signature verification for these bad responses because authData is part of the bytes that get signed over:
https://github.com/MasterKale/SimpleWebAuthn/blob/master/packages/server/src/registration/verifications/verifyAttestationPacked.ts#L47
Unfortunately, even when I experimented with flipping the bit back so that authData isn't changed at all, signature verification of that Firefox response is still broken. Part of me wonders if there's not more fallout related to the malformed authData structure in Firefox. For one, the CBOR-encoded credential public key decodes to { kty: "OKP", crv: "Ed25519" } instead of { kty: 1, crv: 6 } like it does in Chrome. Without diving into Firefox 117 and 118 to see how they constructed authData I can only speculate that there's something else going on in these versions of Firefox that's continuing to break signature verification.
Based on all of this I'm inclined to say that this isn't something I can really address in this library. A "fix" for this issue is likely to be to specify only [-7, -257] for supportedAlgorithmIDs when generating registration options, and remove this option (to go back to the default of [-8, -7, -257]) after Firefox 119 comes out with a proper fix.

I'm leaving this issue open for now as I'm going to add in a small change that'll prevent bad CBOR handling from permanently changing authData for the rest of the response verification.

I've released<EMAIL_ADDRESS>that restores authData after handling bad CBOR. That should remove anything SimpleWebAuthn might be doing that would cause the failing signature verification with security key responses only in Firefox...
I'll leave this issue open for a bit in case someone with a bit more expertise around signature verification and CBOR sees something else I'm missing here. Otherwise I'll have to close this out as an issue with Firefox that can't be solved at the library level.

The 0xa4 to 0xa3 thing is definitely a no-no, you're actually losing all the key material when you do that.
"Good": A401634F4B50032720674564323535313921982018D818FB18E5183B187E18D618FA18971856187418CB18C4189E18C2189618B918EB185F18BE1874181D189218470E1837184E187B071839184F18D018E8
{1: "OKP", 3: -8, -1: "Ed25519", -2: [216, 251, 229, 59, 126, 214, 250, 151, 86, 116, 203, 196, 158, 194, 150, 185, 235, 95, 190, 116, 29, 146, 71, 14, 55, 78, 123, 7, 57, 79, 208, 232]}
Bad:
A301634F4B50032720674564323535313921982018D818FB18E5183B187E18D618FA18971856187418CB18C4189E18C2189618B918EB185F18BE1874181D189218470E1837184E187B071839184F18D018E8
{1: "OKP", 3: -8, -1: "Ed25519"}
That "Good" actually looks pretty hosed to me, when did we decide we could use strings instead of int values?  It should look like:
A401010327200621583E18D818FB18E5183B187E18D618FA18971856187418CB18C4189E18C2189618B918EB185F18BE1874181D189218470E1837184E187B071839184F18D018E8
{1: 1, 3: -8, -1: 6, -2: h'18D818FB18E5183B187E18D618FA18971856187418CB18C4189E18C2189618B918EB185F18BE1874181D189218470E1837184E187B071839184F18D018E8'}
I feel like data is getting messed with along the way, which would invalidate the signature of course.

The 0xa4 to 0xa3 thing is definitely a no-no, you're actually losing all the key material when you do that.

Now I'm resetting the 0xa4 back to the 0xa3 it was before, I had to flip 0xa3 to 0xa4 because the bad CBOR encoding from Firefox 117 and Firefox 118 prevented the credential public key from being parsed. See #440 for more context if you want, so far I've been working to support these bad -8 security key responses.
I added the flip back just now because I realized I was invalidating signatures by permanently changing authData, so SimpleWebAuthn should no longer be responsible for the failing signature validation.

But 0xa3 would be 3 pairs, 0xa4 would be 4 pairs which is what we should see for this...

That "Good" actually looks pretty hosed to me, when did we decide we could use strings instead of int values? It should look like:

We didn't, Mozilla goofed and fixed the problem in Firefox 119 mozilla/authenticator-rs#292

This does not surprise me at all, this reminded me of https://bugzilla.mozilla.org/show_bug.cgi?id=1759098.

Hi @MasterKale, thanks for investigating on this issue. Is still open in the lastest version right? if so, is there any workaround I can try?
Is this a good one?

Sorry to leave you hanging @AntonyChiossi, I'd say "yes" to your question about limiting public key credential algorithms to ES256 (-7) and RS256 (-257) in the meantime when calling generateRegistrationOptions() (i.e. setting supportedAlgorithmIDs: [-7, -257].) That should "solve" this problem by sidestepping the use of Ed25519 entirely.
Closing this out as there's not much more to do at the library level.


Activating extension ms-vscode-remote.remote-containers failed due to an error (printenv failed)

Issue Type: Bug
After the last update, no extensions are working in my WSL projects, and I can see this error in the extension host output:
[2021-03-13 17:49:19.811] [exthost] [error] Activating extension ms-vscode-remote.remote-containers failed due to an error:
[2021-03-13 17:49:19.811] [exthost] [error] {"message":"Command failed: printenv ","stdout":{"type":"Buffer","data":[69,0,115,0,32,0,103,0,105,0,98,0,116,0,32,0,107,0,101,0,105,0,110,0,101,0,32,0,86,0,101,0,114,0,116,0,101,0,105,0,108,0,117,0,110,0,103,0,32,0,109,0,105,0,116,0,32,0,100,0,101,0,109,0,32,0,97,0,110,0,103,0,101,0,103,0,101,0,98,0,101,0,110,0,101,0,110,0,32,0,78,0,97,0,109,0,101,0,110,0,46,0,13,0,13,0,10,0]},"stderr":{"type":"Buffer","data":[]},"code":4294967295}

Turning this buffer content into a string gives:
'Es gibt keine Verteilung mit dem angegebenen Namen.\r\r\n'

Literally this would translate to "There is no distribution with the given name." (although "Verteilung" is a very awkward translation here, I'm assuming it's supposed to mean Linux distributions? That shouldn't be translated at all then.)
I know that technically each "remote" mode is an extension but I'm filing this here because it seems something goes wrong before that even, because a WSL project shouldn't be using the "container" remote thingy (it should use WSL), right?
VS Code version: Code - Insiders 1.55.0-insider (04770364fdc1bebeca9d1a257df2cacce06b35d6, 2021-03-05T15:40:03.281Z)
OS version: Windows_NT x64 10.0.19042
Remote OS version: Linux x64 4.4.0-19041-Microsoft
Remote OS version: Linux x64 4.4.0-19041-Microsoft
EDIT: Just realized this verison isn't up to date despite updating today, I checked again and got another update, but it's the same problem there. New version is:
Version: 1.55.0-insider (system setup)
Commit: 06b54543d660353a04cdab6554d1f27266a537fd
Date: 2021-03-12T05:15:35.786Z
Electron: 11.3.0
Chrome: 87.0.4280.141
Node.js: 12.18.3
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19042

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-6600U CPU @ 2.60GHz (4 x 2808)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onprotected_video_decode: unavailable_offrasterization: enabledskia_renderer: enabled_onvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
15.86GB (3.00GB free)

Process Argv
--crash-reporter-id c6356cfd-7a7a-4cee-93f1-a6019521c8bb

Screen Reader
no

VM
0%

Item
Value

Remote
WSL

OS
Linux x64 4.4.0-19041-Microsoft

CPUs
Intel(R) Core(TM) i7-6600U CPU @ 2.60GHz (4 x 2808)

Memory (System)
15.86GB (3.00GB free)

VM
0%

Item
Value

Remote
WSL

OS
Linux x64 4.4.0-19041-Microsoft

CPUs
Intel(R) Core(TM) i7-6600U CPU @ 2.60GHz (4 x 2808)

Memory (System)
15.86GB (3.00GB free)

VM
0%

Extensions (87)

Extension
Author (truncated)
Version

language-x86-64-assembly
13x
3.0.0

Doxygen
bbe
1.0.0

vscode-standardjs-snippets
cap
0.8.15

LogFileHighlighter
emi
2.11.0

vscode-svelte-snippets
fiv
0.5.0

vscode-cloak
joh
0.3.0

Lua
key
0.0.9

vscode-nsis
Kry
0.0.1

VBScript
lug
0.0.2

dotenv
mik
1.0.1

remote-containers
ms-
0.163.2

remote-ssh
ms-
0.65.1

remote-ssh-edit
ms-
0.65.1

remote-ssh-explorer
ms-
0.56.0

remote-wsl
ms-
0.54.3

ejs-language-support
Qas
0.0.1

vscode-autohotkey
sle
0.2.2

rewrap
stk
1.14.0

vscode-todo-highlight
way
1.0.4

rebound-delete
aar
1.1.0

paste-fixer
aar
1.0.0

vscode-color
ans
0.4.5

svelte-intellisense
ard
0.7.1

vscode-intelephense-client
bme
1.6.3

htmltagwrap
bra
0.0.7

vscode-standardjs
che
1.4.0

npm-intellisense
chr
1.3.1

bracket-select
chu
2.0.2

gitignore
cod
0.6.0

compulim-vscode-closetag
Com
1.2.0

insert-use-strict
cri
1.0.2

jshint
dba
0.11.0

vscode-eslint
dba
2.1.17

vscode-new-file
dku
4.0.2

vscode-npm-source
dku
1.0.0

xml
Dot
2.5.1

gitlens
eam
11.3.0

EditorConfig
Edi
0.16.4

vscode-npm-script
eg2
0.3.17

crystal-lang
fau
0.4.0

flow-for-vscode
flo
1.5.0

kaitai-struct-vscode
fud
0.7.0

gc-excelviewer
Gra
3.0.41

rest-client
hum
0.24.4

RelativePath
jak
1.4.0

hungry-delete
jas
1.6.0

join-comment-aware
joh
0.0.3

typings-autoinstaller
jvi
1.2.0

nodejs-repl
los
0.5.15

edge
luo
0.3.2

twig-language-2
mbl
0.9.2

rainbow-csv
mec
1.8.1

ecdc
mit
1.4.0

find-jump
mks
1.2.4

prettify-json
moh
0.0.3

vscode-azureresourcegroups
ms-
0.3.0

vscode-cosmosdb
ms-
0.16.0

python
ms-
2021.2.636928669

jupyter
ms-
2021.4.641214696

azure-account
ms-
0.9.7

cpptools
ms-
1.2.2

powershell
ms-
2021.2.2

node-modules-resolve
nau
1.0.2

prettier-standard-vscode
num
0.8.1

svelte-extractor
pro
0.0.3

quicktype
qui
12.0.46

java
red
0.76.0

vscode-yaml
red
0.16.0

json-organizer
rin
0.0.4

LiveServer
rit
5.6.1

ActiveFileInStatusBar
Ros
1.0.3

vscode-paste-and-indent
Rub
0.0.8

bracket-jumper
sas
1.1.8

trailing-spaces
sha
0.3.1

rewrap
stk
1.14.0

ignore-gitignore
stu
1.0.1

svelte-vscode
sve
104.6.4

sort-lines
Tyr
1.9.0

use-strict-everywhere
vee
0.1.3

bracket-padder
via
0.3.0

codetour
vsl
0.0.46

gitdoc
vsl
0.0.7

quokka-vscode
Wal
1.0.349

change-case
wma
1.0.0

join-lines
wma
0.2.2

FilterText
yhi
0.0.15

html-css-class-completion
Zig
1.20.0

Hm, interestingly, it worked after I opened a new WSL remote window and manually opened the workspace there again. It just doesn't work with the existing entry in the recent projects/workspaces list. I have this issue with all the recent projects/workspaces though, so it seems I need to manually reopen each of them to fix them.

What's in the Dev Containers log? (F1 > Remote-Containers: Show Log after the error occurred.)


Clarify if component method required_packages returns module names or requirements

Rasa version: 1.0.2
Python version: 3.7.3
Operating system (windows, osx, ...): Debian testing
Issue: The doc at http://rasa.com/docs/rasa/api/custom-nlu-components/#rasa.nlu.components.Component.required_packages doesn’t make clear whether the strings returned should be module names (i.e. importable, like sklearn) or requirements (i.e. checked using packaging introspection methods, e.g. scikit-learn).

could you clarify what you mean? it specifies the names of python packages

«package» is ambiguous: is it something you install (requirement, e.g. scikit-learn, maybe with a version specifier) or something you import (Python module, e.g. sklearn)

We'd be happy to accept a PR phrasing this in a clearer way. This is the method that tries to import them fyi: https://github.com/RasaHQ/rasa/blob/master/rasa/nlu/components.py#L14

Yeah I know, are you willing to create a PR for this to make it clearer in the docs?

I found the source of the docs (https://github.com/RasaHQ/rasa/blob/master/rasa/nlu/components.py#L200-L204) but I think more work may be needed to avoid ambiguity here.  For example, the method that checks these required modules may produce an error message that is super unclear about modules vs requirements: https://github.com/RasaHQ/rasa/blob/master/rasa/nlu/components.py#L28

ok before we look into this ourselves would you be willing to submit a PR for that as well? we're always happy about community contributions

ok before we start looking into this, would you be up for working on this as well? We're always happy to accept community contributions

Sure, but maybe not before a few weeks.

I want to work on this

I found the source of the docs (https://github.com/RasaHQ/rasa/blob/master/rasa/nlu/components.py#L200-L204) but I think more work may be needed to avoid ambiguity here.  For example, the method that checks these required modules may produce an error message that is super unclear about modules vs requirements: https://github.com/RasaHQ/rasa/blob/master/rasa/nlu/components.py#L28

@merwok what are the changes that should be made? I don't see how the exception raised by validate_requirements can be unclear.

I don’t know how to explain the same idea differently!
To repeat my initial message:  if import sklearn fails, it is not correct to say you need to run pip install sklearn, because the (importable) module name is not the same as the (installable) package name (here: scikit-learn).

I don’t know how to say the same thing in a different way 🙁
To repeat my initial message:  if import sklearn fails, it is not correct to say you need to run pip install sklearn, because the (importable) module name is not the same as the (installable) package name (here: scikit-learn).

But pip install sklearn  will run and will actually install scikit-learn.
Do you have any other examples?
What do you think of updating the exception message in validate_requirements to something like:
Please install the package that contains the module sklearn
?

Maybe that particular example is not valid anymore :slightly_smiling_face: but the general idea still stands.

So just update the exception message from validate_requirements is sufficient for now?

The exception message and also the doc I linked from my first message.

I guess we can close this issue now since the pull request has been merged.

Thanks for improving the docs! :slightly_smiling_face:


python311Packages.python-gvm: 23.10.1 -> 23.11.0

Diff: https://github.com/greenbone/python-gvm/compare/refs/tags/v23.10.1...v23.11.0
Changelog: https://github.com/greenbone/python-gvm/releases/tag/v23.11.0
Description of changes

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

10 packages built:

faraday-agent-dispatcher
faraday-agent-dispatcher.dist
gvm-tools (python311Packages.gvm-tools)
gvm-tools.dist (python311Packages.gvm-tools.dist)
python310Packages.gvm-tools
python310Packages.gvm-tools.dist
python310Packages.python-gvm
python310Packages.python-gvm.dist
python311Packages.python-gvm
python311Packages.python-gvm.dist


docs: Added database example to services guide

This commit adds an example of standing up a just-in-time database service for unit testing a PHP application to the service containers guide.
Closes #4866

One way to simplify the example would be to use the official drupal:<version>-fpm docker image.

Great suggestion @helderco - thanks! Done.


Remove the root column from referential

Depends on https://github.com/LI3DS/pg_li3ds/pull/17, which needs to be merged first.
Fixes #9.

Now rebased.


Weapon mode not selectable for chinchompas

Tried to equip every color chinchompa. but the "weapon mode" dropdown did not show anything, this means DPS cannot be calculated for chinchompas

This should be much easier now following b0b7375d6807f5893931a6364009860a92e068ce, but hasn't been implemented yet.
Chinchompas will need accuracy calculation based on distance, which requires a new input and UI elements https://oldschool.runescape.wiki/w/Chinchompa#Chinchompa_guide

Reopening until released to plugin hub

Added to runelite/plugin-hub#2795


Support for a rating appearance type

Suggestion to add support for a rating appearance type.

This would be on the integer question type and would be logically similar to likert.
However, the requirement to return an integer and have a range of icons highlighted (as apposed to just the one selected) make this distinct.

+1 for adding this feature.
I wonder if this is perhaps better suited to be implemented as an appearance on the fancy new range type.
An issue would be the flexibility with min, max and step in the range type. Here we always want step to be 1 and probably min to be 0 or 1, right?
If using range, should we deal with these min/step restrictions by just letting the widget refuse to instantiate if the parameters deviate (and show a regular range widget instead)?

Sounds like a good feature and it does indeed seem best connected to range in some way.
Any chance you could both look at this thread and comment on your preferred way to make decisions on these kinds of proposals? With some ideas coming in in the XForms spec repo, others in XLSForm spec, others on the ODK forum and yet others here, I think it's really hard for people who want to be involved in the process to follow and for information about new features to flow to all ODK XForms spec implementers. I really think it would be helpful to have one clear process (although you can feel free to disagree there if you don't think that's the case).

Thanks for the reminder @lognaturel! Sorry, it took so long to respond to that post. I've done that now.

Yes a range appearance makes sense and we would be looking at a min of 0 or 1 and a step of 1.
The widget could deal with parameters outside of acceptable ranges (as you describe @MartijnR), and/or we could perform some form of validation.

Now that range has been added to pyxform in the last release, we can we perhaps close this by agreeing on an appearance name. Shall we use rating or move that discussion to the forum?
One thing to discuss here thing: Do we want pyxform to play a role in enforcing the start and step parameters by showing an error for negative and 0 values for start and a step value that is not 1?
I don't think pyxform does this kind of validation so far, and it would seem fine to me to let ODK/Enketo Validate deal with this.

Agreed that validation can be done by clients. I think this has sat for long enough with the option to comment and is non-controversial enough that we can just move forward with rating.


Move issue tracking to Bitbucket

This will involve writing a script to export the contents of the Trac SQLite database in the format needed for import into Bitbucket.  Cross-references to tickets and changesets will have to be manually checked and updated if necessary.
Imported from Bitbucket issue 177,  created by apdavison on 05-15-2013 at 10:10, last modified: 03-25-2014 at 12:09

Done.
Trac comment by apdavison on 03-25-2014 at 12:09


interface isn't being sent

I am not seeing the interface data that includes the targets (ipados, ipados, macos, tvos, watchos, visionos)

@carson-katri I believe this is not working. Here is what I did this AM:
I edited https://github.com/liveview-native/liveview-client-swiftui/blob/8ff78369b6d2e7f83af97d208a577e6623f715b9/Sources/LiveViewNative/Coordinators/LiveViewCoordinator.swift#L234 to _interface and noticed that no params were coming through. So I put a breakpoint on that LOC in Xcode and reloaded the app. For the dead render LOC 234 is never being hit so the interface is being added to the request. It appears the dead render params are built here: https://github.com/liveview-native/liveview-client-swiftui/blob/main/Sources/LiveViewNative/Coordinators/LiveSessionCoordinator.swift#L512-L525
In addition, I believe we should address: https://github.com/liveview-native/liveview-client-swiftui/blob/main/Sources/LiveViewNative/Coordinators/LiveSessionCoordinator.swift#L586-L604
I'd like to ensure we have a normalized set of names here. Previously I've been working off of a the "official" os names: "ios, ipados, watchos, macos, tvos, visionos". Is there a good argument to be made either way?