chore: bump nuxt version

@clarkdo its so that new users dont ask why i used CNA and i have in package.json 2.0.0 instead of latest one

I prefer sending them to semver site. 😅

thats a point, but there another questions that they ask so its just to minimize it.
Whatever, do as you feel better, its not important issue to discuss it much :)

Agree with @clarkdo here. Better educate the user about NPM constraints and semver instead (maybe directly write a FAQ in the README?)

I`m afraid the user who ask such question dont read readme :)

Could be :man_shrugging: but that should not be part of our scope.

Some suggestion: We may show a message after setup you created a project using latest nuxt x.y.z

I’ll add the message


fix: 0.1.3 version

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Flag
Coverage Δ

unittests
75.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.


Simplify/improve required/optional fields, defaults, errors, and warnings, *_OR_BLANK, cardinalities

As a sender of data, I want a simple understanding of what fields are required, and which are optional, which have defaults, etc.
There's an ongoing discussion on this topic.   see attached file jims-thoughts-on-required-fields.txt

jims-thoughts-on-required-fields.txt

jims-thoughts-on-required-fields.txt

I believe that simplification is possible, but I think the proposal is too simplified. I suggest documententing the use-cases may be a way to reveal our needs.

I believe that simplification is possible, but I think the proposal is too simplified. I suggest documententing the use-cases may be a way to reveal our needs.

@RickHawesUSDS - I think the changes we just discussed about cardinality can just come in other this issue.

@RickHawesUSDS - I think the changes we just discussed about cardinality can just come in other this issue.

Adding in @jimduff-usds' comments directly into the ticket as a comment.
What Rick has in CsvConverter.kt:

Type
Cardinality
no column on input
empty input value
Invalid input value
valid input value

FOO
0..1
mapper -> default -> empty + warning
mapper -> default -> empty + warning
empty + warning
value

FOO
1..1
mapper -> default -> error
mapper -> default -> error
error
value

FOO_OR_BLANK
0..1
mapper -> default -> empty + warning
empty
empty + warning
value

FOO_OR_BLANK
1..1
mapper -> default -> error
empty
error
value

Jim's translation of it, to be a bit more schema-user-friendly:

Desired behaviour for Field
How to set, in schema
Column Missing
Blank Value
Invalid Value

Optional, but warn me
FOO, cardinality: 0..1
Warn only
Warn only
Warn, and zero out

Required always
FOO, cardinality: ONE
Error
Error
Error

Optional, but blank is OK
FOO_OR_BLANK, cardinality: 0..1
Warn only
Silent/OK
Warn, and zero out

Required, but blank is OK
FOO_OR_BLANK, cardinality: ONE
Error
Silent/OK
Error

And here my latest thoughts, now with the addition of default field values:

Desired behaviour for Field
How to set, in schema
Column Missing
Blank Value
Invalid Value

Required always
option: REQUIRED (default)
Error
Error
Error

Required, but blank is OK
option: REQUIRED_BLANK_OK
Error
Replace with blank or default value
Error

Optional
option: OPTIONAL
In all these cases, Warn, and Replace with blank or default value

Note: Warning can be silenced using option=NoWarn in the URL.  Errors cannot be silenced.
Also, errors cannot be masked by a default: <val> for the field.  In all other cases, if a default value is available, it will replace a Blank

Adding in @jimduff-usds' comments directly into the ticket as a comment.
What Rick has in CsvConverter.kt:

Type
Cardinality
no column on input
empty input value
Invalid input value
valid input value

FOO
0..1
mapper -> default -> empty + warning
mapper -> default -> empty + warning
empty + warning
value

FOO
1..1
mapper -> default -> error
mapper -> default -> error
error
value

FOO_OR_BLANK
0..1
mapper -> default -> empty + warning
empty
empty + warning
value

FOO_OR_BLANK
1..1
mapper -> default -> error
empty
error
value

Jim's translation of it, to be a bit more schema-user-friendly:

Desired behaviour for Field
How to set, in schema
Column Missing
Blank Value
Invalid Value

Optional, but warn me
FOO, cardinality: 0..1
Warn only
Warn only
Warn, and zero out

Required always
FOO, cardinality: ONE
Error
Error
Error

Optional, but blank is OK
FOO_OR_BLANK, cardinality: 0..1
Warn only
Silent/OK
Warn, and zero out

Required, but blank is OK
FOO_OR_BLANK, cardinality: ONE
Error
Silent/OK
Error

And here my latest thoughts, now with the addition of default field values:

Desired behaviour for Field
How to set, in schema
Column Missing
Blank Value
Invalid Value

Required always
option: REQUIRED (default)
Error
Error
Error

Required, but blank is OK
option: REQUIRED_BLANK_OK
Error
Replace with blank or default value
Error

Optional
option: OPTIONAL
In all these cases, Warn, and Replace with blank or default value

Note: Warning can be silenced using option=NoWarn in the URL.  Errors cannot be silenced.
Also, errors cannot be masked by a default: <val> for the field.  In all other cases, if a default value is available, it will replace a Blank

Default values are all mixed up in this issue as well.
The covid field processing_mode_code is a typical example of how confusing we have made this.   You can set processing_mode_code defaults in the following places:
-- in the translate section of the receiver settings (at least for redox, you can do this)
-- as a parameter to the POST
-- in the basedOn schema (eg, as a default in the 'covid-19' kitchen sink schema)
-- in the parent schema, which is different from the basedOn schema
-- in your own schema (as in healthtest example in PR #1223)
-- And of course in the actual data, which might also be blank, or missing the column completely.
Yes, this is all quite confusing. I certainly couldn't tell you which gets priority.


Use global canceling build action

For some reason, the build system does not use the standard action (binding on Ctrl+Break) to cancel/stop the build. Instead it suggests using a non-standard action which is only available in the Package Control menu:

Nothing in the package deals with Builds for Sublime.


ARROW-10767: [Rust] Speed up sum with nulls (non-simd)

Speeds up sum kernel with nulls by simplifying mask calculation in inner loop.
sum nulls 512           time:   [227.43 ns 227.73 ns 228.09 ns]
                        change: [-53.623% -53.506% -53.391%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 1 outliers among 100 measurements (1.00%)
  1 (1.00%) high mild

LGTM. I really would have expected the compiler to figure this out and do the optimization itself.

I've rerun the integration CI job, we can merge this after we get confirmation

Looks like an unrelated failure in the CI

Looks like an unrelated failure in the CI

The failure's indeed unrelated, it's something we subsequently fixed, but is still failing because it's not yet rebased in this PR.
@andygrove @alamb @jorgecarleitao may any of you please merge this, I won't be able to merge until my evening time


AtomicPut doesn't compare value

Right now AtomicPut doesn't compare value, just ModRevision. Is it intended or not implemented yet? :)

You're right, probably just an oversight, vacation didn't help 🏖 😅. I'll look into the remaining issues when I'm back.


Full graphic not displaying

I implemented the library and the issue I have is that the graphic doesn't fully display. I can't get to the sun and only half of the buildings are visible, it gets like "stuck". There is a navigation bar and it looks like it doesn't take that into account.

Please send me screenshots from app and your implementation.

Do you have an email I can reach you at? Thanks.

I found that the problem is that my previous viewcontrolelr has the navigationbar hiddden thats why I have to call this line in the tableviewcontroller:
[[self navigationController] setNavigationBarHidden:NO animated:YES];
for some reason the pull to refresh doesn't see that navigation bar

Removed from my app.


Hardcoded paths

Their are paths that are hardcoded in various files, this means if you want to run netbox in a subdirectory on an existing webserver you have to manually edit a lot of files.

To clarify, do you want to allow the root of the API to be specified via config?  So if you set the root as /netbox/, an API call would be something like /netbox/api/ipam/vlans?

@mdlayher The goal would be to be able to run netbox in a subdirectory and also have that subdirectory be named whatever we want. The hardcoded /api/ paths are a good example where this is hardcoded. We are currently doing this and I've included a diff of all the files we had to edit. I've had to edit out some other changes so the diff line numbers are not 100% accurate.
https://gist.github.com/Gelob/0914c3ee5219b70e63d15b2b70b9d9bc
My thought would be to have a variable in configuration.py to specify the path like BASE_URL but there may be better ways to handle this with Django or abstract it out so you don't have to specify.

Seems reasonable to me to have a base path like that prepended to NetBox paths.

The upgrade.sh script should also detect the directory it is in and not hardcode paths

Thanks for updating and linking my issue. I've ignored the API hardcodes as I don't use the API feature yet, but have had a dig around.

Could we maybe get this roadmapped for 1.6? It's only a few variables which need to reference BASE_DN being either / or /netbox or /whatever_I_chose.

Found a few more files with hardcoded paths for the API - the below prevent the 'Mark Connected' buttons from working.
netbox/templates/dcim/device.html:    return toggleConnection($(this), "/api/dcim/console-ports/"); netbox/templates/dcim/device.html:    return toggleConnection($(this), "/api/dcim/power-ports/"); netbox/templates/dcim/device.html:    return toggleConnection($(this), "/api/dcim/interface-connections/");
And also in netbox/templates/_base.html you need to change this
'

'
To this (adjust for your subdirectory as needed)
'

'

833499f introduced BASE_PATH which allows the user to define an arbitrary URL path via which NetBox is accessed.
18a5a96 extended the APISelect widget to use BASE_PATH. This is a bit of a hack but should be sufficient until I get around to overhauling APISelect.


Request for WebSocket probe

to be later graphed on dash.
https://groups.google.com/d/msg/node-red/ryEg1vZ01tM/PyuacES4AgAJ

I think he might have meant literally ws https://www.npmjs.com/package/ws not "web sockets". There are a couple websocket implementations for node, they probably each need their own probes. IIRC ws is used by socket.io, but https://www.npmjs.com/package/faye-websocket and https://www.npmjs.com/package/websocket are also popular, and there might be some others.


Upgrade display component to the latest DEV

This is just a small upgrade so the display component is up to date with the current display component on esphome's DEV branch.
BTW. I did not saw any changes in your display_buffer.c file. Is that correct? When you made some changes there then i need to change that file as well.

BTW. I did not saw any changes in your display_buffer.c file. Is that correct? When you made some changes there then i need to change that file as well.

That's correct, I did not change code in display_buffer.cpp.


"h" format result is incorrect for noon

Date.Format.localFormat Date.Local.englishUS "h" (DateTime(2017,8,8,12,0,0)) produces "0" instead of "12".
I can make a PR with new tests and a fix if you want.

Strange looking at the code it should works...

The problem is here.  mod12 12 produces 0.

Ah I see...
We need to check what .Net generate and align to it. Replacing 0 by 12 feels strange because then you can’t display 0 hours

Hum, according to my quick test if x = 12 || x = 0 then 12 else (x % 12) is the correct solution.

Do you want a PR with some tests?

Yes, would be appreciate :) @Elonon


Large repo size (200 MB)

This repository is quite large with over 200 MB for the few content.
I guess it contains icons etc. from pymodaq due to its common history with the full PyMoDAQ package.
Removing the old part of the history could reduce the repository size.

indeed do you know how to do it?

we could do that:
https://stackoverflow.com/questions/4515580/how-do-i-remove-the-old-history-from-a-git-repository
but then which depth to use... I tried with only 1 and it's still 37 Mb. What would be "acceptable" as a repo size?
(I also removed the documentation as it is only in the pymodaq repo at the moment)

37 MB is better than 200 MB, reducing the size by 80%.
I stumbled upon the size due to noticeable time cloning the repository and thought it might be good to improve cloning time (and space consumption) by focusing on the necessary parts.


I cannot get any results.

I followed all the instructions on the README but after several hours and no errors I am not seeing anything on Twitter.
I even looked for a different twitter library (on more recent) and still nothing happened
Is this the whole code or is this only a small piece?
What do I need to add to make it work?

My forked version works still fine: https://stritti.github.io/bot_sarcoidosis/

My forked version works still fine: https://stritti.github.io/bot_sarcoidosis/

My forked version works still fine: https://stritti.github.io/bot_sarcoidosis/
Have you followed all the detailed steps in the Readme? Please cross-check this.

I have followed it but I'm pretty much 100% new to code so I'm not sure how to run it really to get a result from it.

My forked version works still fine: https://stritti.github.io/bot_sarcoidosis/
Have you followed all the detailed steps in the Readme? Please cross-check this.

I have followed it but I'm pretty much 100% new to code so I'm not sure how to run it really to get a result from it.

Maybe you have not already the notification of Twitter to be allowed to use the App with the API key? In my case it took some days.

Maybe you have not already the notification of Twitter to be allowed to use the App with the API key? In my case it took some days.

Oh no I have it. I've had it for two years.

Oh no I have it. I've had it for two years.

Hm. Then I have no more ideas.
Probably you add some logs to the code to get more information.

Hm. Then I have no more ideas.
Probably you add some logs to the code to get more information.

yeah not running for me either

Apologies for the delayed response, it seems the error message from the library we're using isn't fully exposing the issue. See here: https://github.com/airhadoken/twitter-lib/issues/37
tl;dr - You now need Elevated access for your Project


Cache replicated archetypes for faster iteration

Gives nice speedup according to our benchmarks:
     Running benches/replication.rs (target/release/deps/replication-c5d7769abd7ff06d)
entities send           time:   [63.425 µs 63.526 µs 63.622 µs]
                        change: [-11.110% -10.897% -10.703%] (p = 0.00 < 0.05)
                        Performance has improved.

entities receive        time:   [135.24 µs 135.43 µs 135.67 µs]
                        change: [-2.9535% -2.3766% -1.8401%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 1 outliers among 20 measurements (5.00%)
  1 (5.00%) high mild

entities update send    time:   [62.996 µs 63.392 µs 63.810 µs]
                        change: [-10.514% -8.9546% -7.0856%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 2 outliers among 20 measurements (10.00%)
  1 (5.00%) high mild
  1 (5.00%) high severe

entities update receive time:   [67.951 µs 68.413 µs 68.944 µs]
                        change: [-1.9278% -0.9178% +0.0163%] (p = 0.08 > 0.05)
                        No change in performance detected.
Found 1 outliers among 20 measurements (5.00%)
  1 (5.00%) high severe

But I suspect that it will be a lot faster then the previous approach when there are many archetypes.

@NiseVoid in Discord mentioned it.
It's similar to how QueryState works, but with access-info stripped out. I borrowed the code from it.


More italics

What about more italics?
get
set
function
this
super
const
let
var
Promise
Map
console
__filename
__dirname
class
interface
type
extends
enum
export
export default
module
if
else if
switch
case
return
break
continue
while
for
for...in
for...of
while...do
await
async
try/catch/finally
throw
declare
namespace
arguments

If needed I can create PR.
/cc @sdras

No, if you go through the changelog you can see that I was fairly aggressive with the italics at first but after a lot of feedback and also working with the theme myself, I decided to bring the usage down. If you want, can always customize the theme (instructions in the readme), or another theme might suit you better.

@sdras But just for the curiosity why then you keep some keywords italic? It looks a little bit weird then class is non-italic and extends is italic. But maybe it just for me. And with such amazing font like Dank Mono italic look amazing :smile:


Strategy sorting by ROI on explorer page

Remove the ROI(Ascending) sorting option from the filter&sort menu on the explorer page
Note that ROI(Ascending) sorting option should remain in the filter&sort menu on my strategies page

duplicated with #790


Redirect with query string

1. What version of Caddy are you using (caddy -version)?
Caddy 0.11.0
2. What are you trying to do?
redirect with a query string
3. Caddyfile example to reproduce?
first.site.com {
}

second.site.com {
  redir {scheme}://first.site.com/?query=string
}

Going to second.site.com fails to add the static query string defined in the redir
second.site.com becomes first.site.com
Add a single ? and the static query is succesfully added
second.site.com/? becomes first.site.com/?query=string

Thanks for the issue.
I am unable to reproduce this.  I have tried with latest code and compiled binary both on windows.  In both instances any call to
http://second.site.com

redirects to
http://first.site.com?query=string

I will close this issue, but if you can provide further information to allow it to be reproduced, we can reopen.


Question: How do you manage and install custom plugins?

Hi, we're using puppet-kong to manage our kong deployment, and were having issues loading plugin source code written in lua into kong.
I saw that there was a custom_plugin configuration in puppet to do this. Where would I place the source code of my repo? I've tried setting a lua_path with the source code but restarting the kong service doesn't seem to pick it up.

thanks for triaging. We were able to successfully create a plugin by following the template (https://github.com/Mashape/kong-plugin) on creating a standard plugin and making via luarocks. The lua_path and custom_plugin keywords work as expected.

I was going to answer earlier but then I seemed to recall that the plugin path might have changed in recent versions.


Windows support?

Hello,
are you planning to support Windows platform for the upcoming 1.3 release?

ROCm 1.3 will not support Windows. Also, ROCm support on the Windows operating system has not been announced in any public road map.

Any date for 1.3? Looking forward to it detecting my GTX 1070 instead of saying no nvidia devices.

I think you have install issue @vstallins  Since we run dual config boxes in houses.

I think your talking about HIP since GTX1070 device would never be support by ROCm Driver.
greg
On Oct 22, 2016, at 12:05 PM, vstallins <notifications<EMAIL_ADDRESS>wrote:
Any date for 1.3? Looking forward to it detecting my GTX 1070 instead of saying no nvidia devices.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/RadeonOpenCompute/ROCm/issues/39#issuecomment-255540508, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AD8DuQF7gFqEtiLSKenCw-lXuYo-kuVHks5q2kI9gaJpZM4KdCRA.

What are you looking for on windows,   HIP and HCC.
greg
On Oct 21, 2016, at 9:41 AM, James Edwards <notifications<EMAIL_ADDRESS>wrote:
ROCm 1.3 will not support Windows. Also, ROCm support on the Windows operating system has not been announced in any public road map.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/RadeonOpenCompute/ROCm/issues/39#issuecomment-255395524, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AD8Dud2uUol1Ae03qypAxqion3z0u8dkks5q2M8MgaJpZM4KdCRA.

I'm using Ubuntu 16.04LTS I have HIP and ROCm installed and HCC as well I think. Just trying to figure things out and get into computing with GPUs. I have a GTX 1070 and 12 R9 390s. So if I need to I can put a 390 in with the 1070. Just wanting to learn as I think this area has a bright future.

The HIP layer provides source level compatibility between CUDA and ROCm. That's probably a good place to start reading. Depending on whether you have a CUDA or ROCm enabled system, HIP will compile using either NVCC or HCC (respectively).
Link to the HIP project:
https://github.com/GPUOpen-ProfessionalCompute-Tools/HIP
Btw, HIP is automatically installed with ROCm. So if you plug in one of your 390's it should be detected. If you want to use your GTX 1070, you will need to install NVCC and its dependencies. The HIP FAQ should have more information on this.
If you have further questions you can let us know.

Ok thanks. I have all of that stuff installed already. Just new to all of this and trying to learn. If anyone makes tutorial videos, etc. let me know the links as it would help likely or if anyone has free time and feels like teaching I am open to that as well. I think GPU computing has huge potential especially with the next gen SSD GPUs.

I would need HIP and HCC on Windows, but since its not in the roadmap I can leave it. Thanks for the reply :)

Any chance you can compile a binary with hip with  Nvidia and amd code which can be selected at runtime?

Have you look at the documentation on HIP.
https://github.com/ROCm-Developer-Tools/HIP/blob/master/docs/markdown/hip_porting_guide.md
https://github.com/ROCm-Developer-Tools/HIP/blob/master/docs/markdown/hip_faq.md

Given the FAQ states that the tool does not create a binary for both platform, any ideas around bring around that limitation? Perhaps delay loading different libraries based on detected hardware?

I have one of the lead get back on this

I really hope Windows support will come soon, i think the next graphics card will be an nvidia, because of this. It is really sad how amd cannot serve good support for the current software trends like neuronal networks.
I really hope they will change their focus a little more.


Why not Graph from X-pack

Hello dlumbrer,
Can you tell me a bit more about what made you decide to write your own plugin, instead of using Graph from X-pack, which has almost the same features I suppose?  This plugin was my degree thesis, I think that Open Source is very important in this kind of apps (Kibana). I know that exists X-pack, but for me, is more important the philosophy of Open Source.
When I started developing this plugin, there only exists Kibana 4 and I didn't know anything about Graph (from X-Pack), I've never thought that this plugin could reach so many downloads, and I am really grateful and proud.
Thanks!

@ErikvdVen I would add that...

X-Pack Graph is a tool to discover and explore indirect relationships between entities in a dataset. kbn_network displays explicit relationships.
X-Pack Graph cannot be added to a dashboard, but kbn_network can.
kbn_network is limited to two node types in a single graph. X-Pack graphs allows many more (not sure if there is a hard limit)

In my opinion both provide value that the other can't. I am happy to have both available and use both depending on the problem I am trying to solve.


(PUP-5815) Add strict_environment_mode option

This commit adds a new Puppet option: strict_environment_mode.
This option ensures that the agent-specified environment is considered
authoritative, and fails the run if the environment of the retrieved
catalog does not match.

/cc @joshcooper
A few questions:
First, are we alright with this output?
[root@f6sj4055u18pwdy puppet]# bundle exec puppet agent -t --server=o1ihzvsvenmrgeg.delivery.puppetlabs.net --strict_environment_mode --environment=production --use_cached_catalog
Info: Using cached catalog from environment 'test'
Error: Not using catalog because its environment 'test' does not match agent specified environment 'production' and strict_environment_mode is set

I.e, when we grab the cached catalog, we always say "Info: Using cached catalog from environment 'blah', but in this case that environment doesn't match, so we then fail. Does this seem reasonable, or should that first Info` not happen at all?

@MikaelSmith @joshcooper updated and I'll do some more testing tomorrow. One last behavior question: what should happen under the following conditions?

The agent has a cached catalog with environment 'production' from a previous run
The NC on the server is changed and the agent will now be in environment 'test'
2.5) We run puppet agent --onetime --strict_environment_mode --environment=test
There happens to be a syntax error in one of the manifests in the 'test' environment, thus causing the agent to try to fall back to its cached catalog (while still in strict_environment_mode)
The agent sees that the cached catalog is of the environment production, rather than test.

The way this code stands, the agent will fail this run with Error: Not using catalog because its environment 'production' does not match agent specified environment 'test' and strict_environment_mode is set.
Right now, I think this makes sense. If you're specifying strict_environment_mode and expect to be retrieving a new catalog, it seems surprising to fallback to a cached catalog of a different environment.
I think if you are (for some reason) explicitly specifying --use_cached-catalog along with the new mode, then you probably expect to use your cached catalog, and it's fine to switch environments. Falling back, however, seems surprising. Thoughts?

Pinging @nicklewis for this one. I can see any of 3 options working

strict_environment_mode disables cached catalogs all together
we fall back to cached catalog and accept it's environment
we fail in the manner you outline

I think all are reasonable and comprehensible.

If we consider strict_environment_mode to be a general mode of operation paired with the environment setting, then it seems like option three (fail) makes the most intuitive sense.
Note however that the orchestrator always specifies --no-usecacheonfailure, so the behavior is fairly inconsequential for it either way.

:+1: to strict_environment_mode being a general mode of operation, independent of AO.

This was all making sense to me up until:

I think if you are (for some reason) explicitly specifying --use_cached-catalog along with the new mode, then you probably expect to use your cached catalog, and it's fine to switch environments. Falling back, however, seems surprising. Thoughts?

Wrt that first sentence, specifying --strict_environment_mode and then switching environments is surprising to me.

@kylog that's the case where you're specifying --use_cached_catalog and --strict_environment_mode at the same time. Which option should win?
Earlier we decided that if you explicitly set --use_cached_catalog, then we'd consider the cached catalog's environment authoritative and immediately switch to it. With that being the case, it doesn't make much sense to specify --use_cached_catalog with --strict_environment_mode and --environment=some_env (we even thought about making them mutually exclusive options).
All of that being said, we went the route of saying if you explicitly request a cached catalog, then strict_environment_mode and a specified env are effectively noop, and you're going to use that cached catalog no matter what, regardless of its environment.
Does that make sense? That's just the way I've been thinking about it, but that could be totally flawed :)


All the planets are gone?

I've upgraded from version 1.0.8 to version 1.0.11 and have noticed that there arent any planets to choose in the selection screen.  Even the moon is gone.  I havent been anywhere in space yet as I've been building up resources, etc. and have always been able to see other planets.  Currently, the only one that shows up in the rocket or the planet selector machine is Earth (moons: 0).
Any suggestions?  I can provide whatever you need.  Currently the server is running on Forge version 2239.

FYI, creating a fresh single-player world shows planets in each solar system.
I've also looked at my Satellite Terminal's and each of them show 'No Link'.  They still have the Satellite ID chips in them.

There was a bug introduced in 1.0.11 that broke the planets, I released a fix for 1.7.10 and thought I released the 1.10.2 update but i apparently forgot, I'll have a build up in a minute

Should be up on curse now, just waiting approval.

Thank you!  I'll keep an eye out.

It works!  Thanks again for your prompt response and fix!


Convert params to object doesn't do anything

check out vscode 781e61bf568a5e99756597c21ae2e3d3d293b1a0
open snippetController2.ts, reveal the insert-method
trigger the refactoring on he method or when selecting all except the first args
:bug: nothing happens

found some logs, seems like we are selling a code action that doesn't exist
Info 33450[10:36:18.812] response:
    {"seq":0,"type":"response","command":"quickinfo","request_seq":243,"success":false,"message":"No content available."}
Info 33451[10:36:19.118] request:
    {"seq":244,"type":"request","command":"quickinfo","arguments":{"file":"/Users/jrieken/Code/vscode/src/vs/editor/contrib/snippet/snippetController2.ts","line":67,"offset":45}}
Perf 33452[10:36:19.119] 244::quickinfo: elapsed time (in milliseconds) 1.6281
Info 33453[10:36:19.119] response:
    {"seq":0,"type":"response","command":"quickinfo","request_seq":244,"success":true,"body":{"kind":"parameter","kindModifiers":"","start":{"line":67,"offset":35},"end":{"line":67,"offset":48},"displayString":"(parameter) undoStopAfter: boolean","documentation":"","tags":[]}}
Info 33454[10:36:20.437] request:
    {"seq":245,"type":"request","command":"getApplicableRefactors","arguments":{"file":"/Users/jrieken/Code/vscode/src/vs/editor/contrib/snippet/snippetController2.ts","startLine":66,"startOffset":1,"endLine":68,"endOffset":36}}
Perf 33455[10:36:20.438] 245::getApplicableRefactors: elapsed time (in milliseconds) 0.9113
Info 33456[10:36:20.438] response:
    {"seq":0,"type":"response","command":"getApplicableRefactors","request_seq":245,"success":true,"body":[{"name":"Convert parameters to destructured object","description":"Convert parameters to destructured object","actions":[{"name":"Convert parameters to destructured object","description":"Convert parameters to destructured object"}]}]}
Info 33457[10:38:31.812] request:
    {"seq":246,"type":"request","command":"getApplicableRefactors","arguments":{"file":"/Users/jrieken/Code/vscode/src/vs/editor/contrib/snippet/snippetController2.ts","startLine":61,"startOffset":31,"endLine":61,"endOffset":31}}
Perf 33458[10:38:31.814] 246::getApplicableRefactors: elapsed time (in milliseconds) 2.2116
Info 33459[10:38:31.814] response:
    {"seq":0,"type":"response","command":"getApplicableRefactors","request_seq":246,"success":true,"body":[]}

Does nothing happen or is there an error notification shown?

Yeah, nothing happens (disclaimer: tried in self host web)

Thanks. Opened https://github.com/microsoft/TypeScript/issues/32515 to track root cause upstrea


Implement Leaderboard Design

[x] Implement header
[x] Implement leaderboard
[x] Implement new scoring calculation
[ ] Implement background image

(Not finalized yet)

This is done in "newdesign" branch apart from the background images. Will add this to the followup issue.

Started testing sites for Firefox Quantum Sprint and ended up finding a bug in leader board calculation algorithm :P
it's not detecting duplicate reports, please check.

Please add an option to check submitted reports, when clicked on the number of sites tested. That would be of great help.


RankNTypes issue

Ran into an issue with the following (contrived) example:
(data Nop
  (nop (∀ [a] {a -> a})))
(defn ->nop : (∀ [a] {a -> Nop -> a})
  [[x (nop f)] (f x)])

The equivalent Haskell is:
data Nop = Nop (forall a. a -> a)
toNot :: a -> Nop -> a
toNot x (Nop f) = f x

Hackett complains with:
; a38218: skolem escaped its scope
;   in: a38218
;  /home/milo/Git/hackett/hackett-lib/hackett/private/base.rkt:113:4 simplify/elaborate
;  /home/milo/Git/hackett/hackett-lib/hackett/private/base.rkt:98:2 τs⇔/λ!
;  /home/milo/Git/hackett/hackett-lib/hackett/private/base.rkt:214:2 τ⇔/λ!
;  /home/milo/Git/hackett/hackett-lib/hackett/private/base.rkt:229:2 τ⇔!
;  /home/milo/Git/hackett/hackett-lib/hackett/private/base.rkt:238:2 τ⇐!
;  /home/milo/Git/hackett/hackett-lib/hackett/private/base.rkt:243:2
;  /home/milo/Git/hackett/hackett-lib/hackett/private/base.rkt:368:0
;  /home/milo/Git/hackett/hackett-lib/hackett/private/base.rkt:200:8 for-loop

Removing the outer quantification also throws the same error
(defn int-nop : {Nop -> Integer}
  [[(nop f)] (f 3)])

For some reason, Hackett really doesn't like using quantified types stored within data. The following does work:
(defn int-nop/fn : {(∀ [a] {a -> a}) -> Integer}
  [[f] (f 3)])

I'm going to guess this has something to do with unordered contexts, or maybe is just a small bug in the implementation. I'll take a look when I have some time

I’ve known for a while that way skolems are handled is currently very broken, though I assumed it generally erred on the side of being more permissive. I think the way skolems are added and removed from contexts it probably totally wrong, and I just didn’t put a lot of effort into making them right and coming up with good test cases. That needs to be improved, and the skolem escape error message should also be made more user-friendly when that happens (currently it’s so unreliable that I didn’t even bother).

Digging into this slightly, the issue seems to clearly be in the typechecking for pattern-matching. Currently, this is done with pat⇒! and pat⇐!. When pat⇒! infers the types for a match against a data constructor, it calls pat⇐! to try and ensure subpatterns have the proper types. The trouble is that pat⇐! eventually calls τ<:!, which is wrong—subsumption always instantiates quantifiers.
Currently, it requires that subpatterns’ types by subtypes of data constructors’ types. This is probably the worst possible choice, and flipping that relation makes your example typecheck. However, even flipping the subsumption relation makes pattern-matching instantiate quantifiers too early. When pattern-matching against a nop constructor, you should end up with a polymorphic binding, not a monomorphic one. Subsumption will instantiate the quantifier to a fresh unification variable, which means your binding can be used with any type, but only one (unless you explicitly force generalization by creating a local binding with a polymorphic type signature).
I think the solution is to perform some sort of simpler unification algorithm that doesn’t over-instantiate. But I haven’t taken the time to figure out exactly how that should work.

An immediate solution would be to modify the pat⇐! function to recognize pattern variables rather than just calling into pat⇒!. The previous way is problematic because all pattern variables end up with τ:var^ types, which can't be instantiated to polymorphic types.
However I'm not exactly sure why it would complain about skolems "escaping" either way.


Fix issue with group by combine operator when limit is zero

A query like SELECT Origin, SUM(ArrDelay) FROM mytable GROUP BY Origin LIMIT 0 was resulting in the error:

QueryExecutionError:
java.lang.IllegalArgumentException: Result size should be a non-zero positive integer
    at com.google.common.base.Preconditions.checkArgument(Preconditions.java:145)
    at org.apache.pinot.core.data.table.IndexedTable.<init>(IndexedTable.java:74)
    at org.apache.pinot.core.data.table.ConcurrentIndexedTable.<init>(ConcurrentIndexedTable.java:42)
    at org.apache.pinot.core.data.table.ConcurrentIndexedTable.<init>(ConcurrentIndexedTable.java:37)

This check was added recently in https://github.com/apache/pinot/pull/13514 to ensure that an integer overflow check doesn't become error prone due to negative values (also the negative values don't make sense for result size / trim size / trim threshold).
However, one thing that was missed is that the result size / trim size can be 0 for aggregation queries using group by when the limit is zero - https://github.com/apache/pinot/blob/cf1a0f6b9b44fdb567452b63a34e76ac5c635429/pinot-core/src/main/java/org/apache/pinot/core/operator/streaming/StreamingGroupByCombineOperator.java#L94
This was surfaced by the testGeneratedQueries becoming a flaky test in recent CI runs (see https://github.com/apache/pinot/actions/runs/9834355954/job/27146034854, https://github.com/apache/pinot/actions/runs/9811276363/job/27093161297 for instance). The test can randomly generate group by aggregation queries with zero limits - https://github.com/apache/pinot/blob/cf1a0f6b9b44fdb567452b63a34e76ac5c635429/pinot-integration-test-base/src/test/java/org/apache/pinot/integration/tests/QueryGenerator.java#L862

Codecov Report
Attention: Patch coverage is 0% with 3 lines in your changes missing coverage. Please review.

Project coverage is 0.00%. Comparing base (59551e4) to head (aa4d2cd).
Report is 715 commits behind head on master.

Files
Patch %
Lines

...org/apache/pinot/core/data/table/IndexedTable.java
0.00%
3 Missing :warning:

:exclamation:  There is a different number of reports uploaded between BASE (59551e4) and HEAD (aa4d2cd). Click for more details.
HEAD has 25 uploads less than BASE

Flag
BASE (59551e4)
HEAD (aa4d2cd)

temurin
12
7

java-21
7
5

skip-bytebuffers-true
3
2

skip-bytebuffers-false
7
3

unittests
5
0

unittests1
2
0

java-11
5
2

unittests2
3
0

Additional details and impacted files
@@              Coverage Diff              @@
##             master   #13555       +/-   ##
=============================================
- Coverage     61.75%    0.00%   -61.75%
+ Complexity      207        6      -201
=============================================
  Files          2436     2482       +46
  Lines        133233   137210     +3977
  Branches      20636    21298      +662
=============================================
- Hits          82274        6    -82268
- Misses        44911   137204    +92293
+ Partials       6048        0     -6048

Flag
Coverage Δ

custom-integration1
<0.01% <0.00%> (-0.01%)
:arrow_down:

integration
<0.01% <0.00%> (-0.01%)
:arrow_down:

integration1
<0.01% <0.00%> (-0.01%)
:arrow_down:

integration2
0.00% <0.00%> (ø)

java-11
<0.01% <0.00%> (-61.71%)
:arrow_down:

java-21
<0.01% <0.00%> (-61.63%)
:arrow_down:

skip-bytebuffers-false
<0.01% <0.00%> (-61.75%)
:arrow_down:

skip-bytebuffers-true
<0.01% <0.00%> (-27.73%)
:arrow_down:

temurin
<0.01% <0.00%> (-61.75%)
:arrow_down:

unittests
?

unittests1
?

unittests2
?

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Thanks for fixing this!
Ideally we should short circuit the execution when LIMIT is set to 0, and only return the data schema.
Currently we have 3 places to handle short circuit:

In BaseSingleStageBrokerRequestHandler
In ServerQueryExecutorV1Impl
In SelectionOnlyCombineOperator

Only the third one keeps the proper data schema. I'd suggest creating an issue to track this, and we should properly short circuit the queries that:

Not hitting any segment after pruning
With always false filter
With LIMIT 0


PCM-1795 Code changes

@vrathee Please review

@vrathee Could you please check this now, done the changes that you suggested.

Reviewed!


Remove Option which wraps Row in FilterContext,

There was no use case of Content::Some { row: None, .. } but Option type was unnecessarily being used. Remove Option from Content::Some { row } in FilterContext

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

7 of 7 (100.0%)  changed or added relevant lines in 4 files are covered.
34 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.07%) to 97.877%

Files with Coverage Reduction
New Missed Lines
%

core/src/executor/aggregate/mod.rs
16
89.74%

test-suite/src/tester/mod.rs
18
88.16%

Totals

Change from base Build<PHONE_NUMBER>:
-0.07%

Covered Lines:
37851

Relevant Lines:
38672

💛  - Coveralls


A number of issues with the overlapped I/O code: do we need it?

What was the purpose of having HidDevice.ReadData and WriteData use overlapped I/O, since they block anyway and aren't asynchronous? My understanding is that the overhead of overlapped I/O is worth the throughput only when the thread is freed to do other work instead of blocking.
ReadData: https://github.com/mikeobrien/HidLibrary/blob/master/src/HidLibrary/HidDevice.cs#L619-L672
WriteData: https://github.com/mikeobrien/HidLibrary/blob/master/src/HidLibrary/HidDevice.cs#L560-L594
Issues:

CreateEvent is being called with bManualReset: false even though the docs say over and over that the event must be a manual-reset event and that there are problems with auto-reset events: https://docs.microsoft.com/en-us/windows/win32/sync/synchronization-and-overlapped-input-and-output

CreateEvent is being called with bInitialState: true, so no waiting has ever been happening. This is easy to demonstrate by calling WaitForSingleObject without calling ReadFile and seeing that it returns WAIT_OBJECT_0. This means that even if reads haven't completed, the buffer is read and returned to the caller instantly! (Maybe #112 is related?)

When I fix the previous two points, overlapped reads never return. I'm not sure what's wrong with the code yet.

WaitForSingleObject is being called rather than using the managed WaitHandle.WaitOne method. The problem with this is that the .NET runtime is out of the picture for the entire duration. During managed blocking waits, the runtime is online. I'm fuzzy on what this actually means other than that Thread.Abort won't work during a managed blocking call. I think there might have been implications for garbage collection as well.
Also, I think all the native code can be replaced with the managed ManualResetEvent.

CancelIoEx is being called on the event handle, but it only makes sense to call this method on file handles. I'm guessing that this means the event handle is leaked. CloseHandle should be what is called.

Before putting effort and investigation into it, I wanted to know for sure that there is still an ongoing goal that requires keeping the overlapped I/O.
/cc @amullins83 @mikeobrien

Thanks for taking the time to look into this. I became aware of this project while working on custom software for device my company was making based on a TI chip that presented itself as an HID device.
I ran into problems trying to implement our software with this library, so I eventually figured out how to use the C-based HIDAPI project by Signal11, which was what TI's sample application used. I'm not convinced the issues I had were caused by this library's implementation, because they eventually identified a problem with the device's output code.
I present my story because I feel like you most likely have discovered a root issue that is worth fixing. It's my opinion that we should try to implement these changes as major version update on a feature branch and encourage others to test the new version with all their devices before we merge to master.
I no longer work at the company where I was working on a custom device, but I think I have a Griffin Powermate lying around somewhere to test with. We'll want to at least get people using the other devices for which we have test projects (Honeywell 4000, Logitech Gamepad, and MagTech card reader).

Maybe this gets at the crux of my question: if we secretly ignored the DeviceMode.Overlapped setting and always used non-overlapped I/O, what would the difference be for the users of this library?

I'm not sure. We just need to test everything and track what changes.

Oh! I noticed that the timeout parameter is silently ignored if you don't specify DeviceMode.Overlapped. Maybe the only reason for overlapped I/O was to enabled timeouts, and maybe not. How safe would you say it would be to:

Stop silently ignoring the timeout with DeviceMode.NonOverlapped by using the SetCommTimeouts API
Do everything with non-overlapped I/O now that it has reached parity with overlapped I/O (we think)
Obsolete the DeviceMode enum?

Or should we preserve (and learn how to fix) the use of overlapped I/O just in case there is some difference that we aren't thinking of?

Hans Passant is pretty knowledgeable. On a question involving reading from a serial port (https://stackoverflow.com/a/18220867) he says:

In other words, you have not yet found a good reason to use overlapped I/O. You will get exactly the same outcome by using a synchronous ReadFile() call. It will block, just like your current code does, until the serial port has data available.
So just don't bother with it.

That's not a guarantee that we aren't missing anything, but it does increase my confidence.

Chatting about this a bit at https://discordapp.com/channels/143867839282020352/312132327348240384/760576302121615442 in https://aka.ms/csharp-discord, I'm thinking that SetCommTimeouts would not work for concurrent per-thread, per-operation timeouts with different timeouts. One thread's SetCommTimeouts call could happen between the SetCommTimeouts call and the ReadFile call of another thread for the same handle. So I'm thinking that the use of overlapped I/O must stay.

Impressive research! I haven't heard about SetCommTimeouts before. Is there a way to set a global timeout once for the application before any I/O starts? That way you could avoid any threading weirdness. It seems like just some basic Windows APIs would allow us to set up a kind of "dead man switch" before initiating a blocking I/O call, where the application would automatically ignore the result of the I/O operation unless it completes within a certain time.
That would obviously require some design work, and since Mike and I have both moved onto other things, it might be up to you to figure out which way this library should go.

SetCommTimeouts is great for when you have a single timeout setting per file handle. But the HidDevice.ReadData method takes an int timeout parameter, which means that timeouts can be different between two concurrent calls to ReadData for the same file handle or concurrent calls to ReadData and WriteData. I don't think we can support the int timeout parameter without losing the timeout setting due to race conditions when SetCommTimeouts is called from two different threads concurrently for the same file handle.
Any locking we do to avoid the race condition would prevent ReadData and WriteData from being used concurrently on different threads, because the exclusive section would have to start before SetCommTimeouts and end after the ReadFile call. So really I think the only way to stop using overlapped I/O and still have timeouts is to document that HidDevices and the handles they expose are not thread safe (must only be used from one thread at a time).

Another goal we might have is to replace the code with this (proof of concept seemed to work):
private static FileStream OpenReadHidDevice(string devicePath)
{
    var handle = Kernel32.CreateFile(
        devicePath,
        Kernel32.ACCESS_MASK.GENERIC_READ,
        Kernel32.FILE_SHARE.READ | Kernel32.FILE_SHARE.WRITE,
        lpSecurityAttributes: IntPtr.Zero,
        Kernel32.CreationDisposition.OPEN_EXISTING,
        Kernel32.FILE_FLAG.OVERLAPPED,
        hTemplateFile: IntPtr.Zero);

    if (handle.IsInvalid) throw new Win32Exception();

    // Buffer size doesn't matter because the stream is only used for reading
    return new FileStream(handle, FileAccess.Read, bufferSize: 4096, isAsync: true);
}

Then using the stream, timeouts can be controlled the idiomatic .NET way via cancellationToken:
// (The stream and buffer could be cached between reads)
using var stream = OpenReadHidDevice(device.DevicePath);
var buffer = new byte[device.Capabilities.InputReportByteLength];

var bytesRead = await stream.ReadAsync(buffer, 0, buffer.Length, cancellationToken).ConfigureAwait(false);

// https://github.com/microsoft/Windows-driver-samples/blob/master/hid/hclient/report.c#L48
RuntimeAssert.That(bytesRead == buffer.Length, "ReadFile never returns a partial HID report");

var report = new HidReport(reportSize: buffer.Length, new HidDeviceData(buffer, HidDeviceData.ReadStatus.Success));

Today I discovered https://docs.microsoft.com/en-us/uwp/api/windows.devices.humaninterfacedevice.hiddevice?view=winrt-19041.
(All UWP APIs are available in .NET Framework and .NET Core projects by adding <PackageReference Include="Microsoft.Windows.SDK.Contracts" Version="10.0.19041.0" /> or similar in the csproj.)


In rootless + cgroupsv1, resource limits are an error

However, in some cases (unset limits), we can completely remove the limit and avoid errors. This works around a bug where the Podman frontend is setting a Pids limit of 0 on some rootless systems.
For now, this is only implemented for the PID limit. It can easily be extended to other resource limits, but it is a fair bit of code to do so, so I leave that exercise to someone else.
Fixes #6834

@goochjj This seems to work on my Debian Testing cgroupsv1 machine, but I'd appreciate it if you verify as well.

@mheon YES THANK YOU
Confirmed on Ubuntu 20.04 cgroups v1

I think this should be handled via this PR.
https://github.com/containers/libpod/pull/6842
WDYT?

where are we with this one ?

Dan's proposed alternative is more elegant, but also requires a revendor and is failing tests.

https://github.com/containers/libpod/pull/6860


chore(general): Swap out default hasher in core/parser/validator

General improvements ranging from 8-20%, I'll apply this now to the rest of our validation.
Benchmarking field_selection_merging/1: Collecting 100 samples in estimated 5.0089 s (2
field_selection_merging/1
                        time:   [2.3106 µs 2.3397 µs 2.3702 µs]
                        thrpt:  [421.91 Kelem/s 427.40 Kelem/s 432.78 Kelem/s]
                 change:
                        time:   [-20.254% -16.823% -13.953%] (p = 0.00 < 0.05)
                        thrpt:  [+16.215% +20.226% +25.397%]
                        Performance has improved.

Benchmarking field_selection_merging/2: Collecting 100 samples in estimated 5.0083 s (5
field_selection_merging/2
                        time:   [9.9452 µs 9.9973 µs 10.058 µs]
                        thrpt:  [198.85 Kelem/s 200.05 Kelem/s 201.10 Kelem/s]
                 change:
                        time:   [-16.537% -15.898% -15.308%] (p = 0.00 < 0.05)
                        thrpt:  [+18.075% +18.903% +19.814%]
                        Performance has improved.

Benchmarking field_selection_merging/4: Collecting 100 samples in estimated 5.0198 s (2
field_selection_merging/4
                        time:   [18.670 µs 18.743 µs 18.818 µs]
                        thrpt:  [212.56 Kelem/s 213.41 Kelem/s 214.24 Kelem/s]
                 change:
                        time:   [-13.374% -12.690% -12.086%] (p = 0.00 < 0.05)
                        thrpt:  [+13.748% +14.534% +15.439%]
                        Performance has improved.

Benchmarking field_selection_merging/8: Collecting 100 samples in estimated 5.1048 s (1
field_selection_merging/8
                        time:   [37.476 µs 37.584 µs 37.695 µs]
                        thrpt:  [212.23 Kelem/s 212.86 Kelem/s 213.47 Kelem/s]
                 change:
                        time:   [-11.802% -11.416% -11.041%] (p = 0.00 < 0.05)
                        thrpt:  [+12.411% +12.887% +13.382%]
                        Performance has improved.

Benchmarking field_selection_merging/16: Collecting 100 samples in estimated 5.2224 s (
field_selection_merging/16
                        time:   [74.449 µs 74.684 µs 74.935 µs]
                        thrpt:  [213.52 Kelem/s 214.24 Kelem/s 214.91 Kelem/s]
                 change:
                        time:   [-9.9588% -8.9481% -8.0580%] (p = 0.00 < 0.05)
                        thrpt:  [+8.7642% +9.8274% +11.060%]
                        Performance has improved.

Benchmarking field_selection_merging/32: Collecting 100 samples in estimated 5.1257 s (
field_selection_merging/32
                        time:   [143.27 µs 143.89 µs 144.57 µs]
                        thrpt:  [221.35 Kelem/s 222.39 Kelem/s 223.35 Kelem/s]
                 change:
                        time:   [-8.3642% -7.9132% -7.4810%] (p = 0.00 < 0.05)
                        thrpt:  [+8.0859% +8.5932% +9.1276%]
                        Performance has improved.

Benchmarking field_selection_merging/64: Collecting 100 samples in estimated 5.8019 s (
field_selection_merging/64
                        time:   [288.93 µs 292.61 µs 296.89 µs]
                        thrpt:  [215.57 Kelem/s 218.72 Kelem/s 221.51 Kelem/s]
                 change:
                        time:   [-6.3697% -5.6095% -4.8101%] (p = 0.00 < 0.05)
                        thrpt:  [+5.0532% +5.9428% +6.8030%]
                        Performance has improved.

Benchmarking field_selection_merging/128: Collecting 100 samples in estimated 5.7565 s
field_selection_merging/128
                        time:   [559.57 µs 562.11 µs 565.11 µs]
                        thrpt:  [226.50 Kelem/s 227.72 Kelem/s 228.75 Kelem/s]
                 change:
                        time:   [-9.4958% -8.9954% -8.4677%] (p = 0.00 < 0.05)
                        thrpt:  [+9.2511% +9.8846% +10.492%]
                        Performance has improved.

Was chatting with @adampetro about this and we're wondering how much we should be concerned with using a non-DOS resistant hasher when the keys come from input (in the executable documents). Schema definition we can deem as trusted so using fnv there should be safe and a nice perf win.
Collisions matter but also just the slower perf on larger inputs (I assume slower than the std hasher?). What are your thoughts @JoviDeCroock ?

Hmm, I don't have evidence to back up that this will stay better on larger inputs. The arbitrary input side of things is a valid concern, might have decided a bit too quick on this one 😅 we can def keep it around for the parser schema-definitions but yes maybe not a good shout in terms of executable document/validation.


Modified Native Transform

fix for 5x slowdown of native forward ntt when compiled with clang and NATIVE_OPT=OFF. Fix only applied to transform used in SwitchFormat().
https://docs.google.com/spreadsheets/d/1iO8RK2bDOfCZTkfClyt1BYFUBtUyPDfLYmXqfc8ErgU/edit?usp=sharing

Started CI jobs in clang++ and g++. Will merge once these jobs finish successfully.


idea: allowing harpoon-like configuration with commands referencing task id and swapping task ids

LMK if you have specific requests for an API or questions about how to best accomplish something.

Continuation from discussion in https://github.com/stevearc/overseer.nvim/issues/203#issuecomment-1734841561.
The following does not restart t1 and always just restarts the most upper one, which may lead to a lot accidental time being wasted:
local function get_task_callback(i, action)
  return function()
    local tasks = require("overseer").list_tasks({ recent_first = true })
    local task = tasks[i]
    if task then
      require("overseer").run_action(task, action)
    end
  end
end

for i = 1, 9 do
  vim.keymap.set("n", ";o" .. i, get_task_callback(i, 'open'), { desc = string.format("Open output here task #%d", i) })
  vim.keymap.set("n", ";t" .. i, get_task_callback(i, 'open tab'), { desc = string.format("Open output tab task #%d", i) })
  vim.keymap.set("n", ";e" .. i, get_task_callback(i, 'edit'), { desc = string.format("Edit task #%d", i) })
  vim.keymap.set("n", ";" .. i, get_task_callback(i, 'restart'), { desc = string.format("Restart task #%d", i) })
end

// taskname t1, cmd zig test --test-filter t1 src/test_simple.zig
// taskname t2, cmd zig test --test-filter t2 src/test_simple.zig
// taskname t3, cmd zig test --test-filter t3 src/test_simple.zig
test "t1" {
    return;
    // return error.t1;
}
test "t2" {
    return;
    // return error.t2;
}
test "t3" {
    return;
    // return error.t3;
}

I would prefer having a way to keep the order in the view and ideally having a way to associate t1<->1, t2<->2, .. visually and with keys for restarting things.
These other things make running things like a breeze except for the missing terminal completion (but I can copy things relative fast over from an harpoon terminal except for huge cli args, but there is no solution in [neo]vim for that anyway).
I'm pretty sure task.id would work, but I'm not sure if the plugin might break if the users changes the ids and/or what functionality for swapping task ids would be needed and/or what would be needed to customize the taskbar visualization and/or what would be needed to write my own one (if you want to keep the logic as it is).
Also, again, thanks for the plugin.
I found some minor nits while trying to figure out some solution:

you are using chan_id and job_id interchangeably, but it is not always clear if the chan_id represents a runnable job ie in cleanup_autocmd or all_channels[job_id] (not all channels are job channels), so it is abit hard to follow what is meant
It is not clear to me, why chan_id = self.term.job_id in lua/overseer/strategy/toggleterm.lua is needed
this one:

 ---@param filename string
+---@return boolean
 M.delete_file = function(filename)
   if M.exists(filename) then
     vim.loop.fs_unlink(filename)
     return true
   end
+  return false
 end

From what I understand, this would require 1. some sort of introspection into (id<->index_tasks) and it would 2. be needed to load the tasks with explicit ids instead of using next_id:
---@param opts overseer.TaskDefinition
---@return overseer.Task
function Task.new(opts)
  log:trace("New task: %s", opts)
  local task = Task.new_uninitialized(opts)
  task.id = next_id
  next_id = next_id + 1
  task:dispatch("on_init")
  return task
end

As of now, 3. :OverseerLoadBundle messes up the ids. So even my basic example does not work.
Not reusing ids sounds ok to me, but can be abit annoying, so having 4. a helper function to "left shift tasks to close unused ids", if and/or once no tasks are running (as to not mess up anything) would be nice.
@stevearc  Would you be open for PRs to fix at least problem 3+4?

Sorry for the delay, I don't have as much free time these days and the issue reports get backed up. This is one that I'm going to need a solid, uninterrupted chunk of time to think about and I haven't had that yet. The good news is that this is now towards the top of my backlog, so it should be the next big task I get to.

FYI with harpoon2, harpoon now supports custom lists that can represent whatever you want.
I created a small overseer integration using harpoon2 and I am quite happy with the results. It's very minimal, only supporting shell tasks at the moment, but it seems to me as the most promising way to deliver the ask here.
You can try it out here: https://github.com/itsfrank/overseer-quick-tasks

Thanks @itsfrank, I have not been following harpoon2 development much. Code looks like a good first start.
Semi-related: Does casual buffer assignment, selection and do advanced use cases for shell work again?
Last time I tried it, there was no assignment with index for buffers as API, only appending to list, which makes static key usage assignment non-satisfying and so I stopped trying version 2.
M.bashCmdLogAndExec = function(harpoon_term_nr)
  -- Escape ensures visual mode in vi mode
  harp_term.sendCommand(harpoon_term_nr, '\27')
  -- open cli args in EDITOR (other neovim instance)
  harp_term.sendCommand(harpoon_term_nr, 'v')
  -- send the log lua function exec cmd to other neovim instance
  harp_term.sendCommand(harpoon_term_nr, ":lua local ut=require('my_utils');ut.appDateLog(ut.getCurrLinePlNL())\n")
  -- quit other neovim instance
  harp_term.sendCommand(harpoon_term_nr, ':q\n')
  -- shell will execute command
end

map('n', '<leader>j', [[<cmd>lua require("harpoon.ui").nav_file(1)<CR>]], opts) -- bare means fast navigate
map('n', '<leader>mj', [[<cmd>lua require("harpoon.mark").set_current_at(1)<CR>]], opts) --m means make to 1
map('n', '<leader>cj', [[<cmd>lua require("harpoon.term").gotoTerminal(1)<CR>]], opts) -- c means goto control terminal
map('n', ';sj', [[<cmd>lua require("my_harpoon").bashCmdLogAndExec(1)<CR>]], opts)

Can you recommend any dotfiles to steal copy?

Semi-related: Does casual buffer assignment, selection and do advanced use cases for shell work again?

Full disclosure, I'm not exactly sure what you are referring to, I migrated to harpoon2 ~2 weeks ago and found no regressions from harpoon1. Though it seems like you are a more advanced user than myself, I have never used harpoon for terminal stuff (only used overseer and toggleterm before making oqt above).

Last time I tried it, there was no assignment with index for buffers as API, only appending to list

So I know if you want to replace a specific pre-existing index, you can just change it in-place, something like list("foo"):get(i).value = { ... }. Though insertion at a specific index, or non-incrementing/non-numeric indices, seems to have an open issue where the maintainer is not yet convinced of the use-case's validity: https://github.com/ThePrimeagen/harpoon/issues/436
I'll be playing some more with the harpoon2 api over the coming days, if I misunderstood your question please let me know, I'll provide more info as I find it.

Can you recommend any dotfiles to steal copy?

I have not yet looked at anyone else's harpoon dotfile, mine can be found (here)[https://github.com/itsfrank/dot-nvim/blob/main/lua/plugins/harpoon.lua], though as stated above, I don't do anything fancy


How was 1620 obtained?

The mv dimension of the memory bank in the training code is: [4, 512, 2, 24, 24], and the mv dimension in the test code becomes: [1, 512, 1620]， How was 1620 obtained?

As stated in the code the third dimension is THW

As stated in the code the third dimension is THW

As stated in the code the third dimension is THW

@hkchengrex What are the specific values of T, H and W?

It depends on your code and data! Just do some more print in your code and it should be clear.


Add Theory of Operations and update User Guide to reference it

[x] This contribution adheres to CONTRIBUTING.md.

What does this Pull Request accomplish?
Add Theory of Operations and update User Guide to reference it
Why should this Pull Request be merged?
With the addition of timing channels, VeriStand users have the ability to analyze the per-execution duration of the execution units running inside the custom device. This document should give them enough low-level details of the custom device's implementation to understand the performance impact it will have on their overall system.
What testing has been done?
Viewed the markdown and images on GitHub.

Note to reviewers: this guide is largely copied from the similar document I made for AIM. The easiest way to review will be to look at the second commit's diff. I also added a new section detailing how the Rx Execution Unit works.


[spaceship] get app info categories easier

Motivation and Context
Fixes https://github.com/fastlane/fastlane/issues/16649#issuecomment-653571128 mentioned by @squallstar
Description

Adds relationships for all categories on app info
Adds essential includes when fetching app info to also get categories

Testing Steps
lane :test do
  require 'pp'
  require 'spaceship'

  Spaceship::Tunes.login(email)
  Spaceship::Tunes.select_team(team_name: team_name)

  # Gets app
  app = Spaceship::ConnectAPI::App.find(bundle_id)

  # Gets app info and includes relationships to all categories
  app_info = app.fetch_edit_app_info

  puts "PRIMARY"
  pp app_info.primary_category
  puts "\nPRIMARY SUB 1"
  pp app_info.primary_subcategory_one
  puts "\nPRIMARY SUB 2"
  pp app_info.primary_subcategory_one
  puts "\SECONDARY"
  pp app_info.secondary_category
  puts "\SECONDARY SUB 1"
  pp app_info.secondary_subcategory_one
  puts "\SECONDARY SUB 2"
  pp app_info.secondary_subcategory_one
end

@joshdholtz what about primary_locale_code, available_primary_locale_codes and languages? These were available in the previous version of the library.

I will look after lunch 🙂

@squallstar
lane :test do
  require 'pp'
  require 'spaceship'

  Spaceship::Tunes.login(email)
  Spaceship::Tunes.select_team(team_name: team_name)

  app = Spaceship::ConnectAPI::App.find(bundle_id)
  app_info = app.fetch_edit_app_info

  # App
  puts "\nPRIMARY LOCALE"
  puts app.primary_locale

  # App Info
  puts "\nPRIMARY CATEGORY"
  pp app_info.primary_category
  puts "\nPRIMARY SUBCATEGORY 1"
  pp app_info.primary_subcategory_one
  puts "\nPRIMARY SUBCATEGORY 2"
  pp app_info.primary_subcategory_one
  puts "\SECONDARY CATEGORY"
  pp app_info.secondary_category
  puts "\SECONDARY SUBCATEGORY 1"
  pp app_info.secondary_subcategory_one
  puts "\SECONDARY SUBCATEGORY 2"
  pp app_info.secondary_subcategory_one

  # App Info Localizations
  puts "\nApp Info Localizations"
  app_info_localizations = app_info.get_app_info_localizations
  app_info_localizations.each do |app_info_localization|
    puts "\t#{app_info_localization.locale}"
  end

  # App Store Version
  puts "\Live Version Localizations"
  live_version = app.get_live_app_store_version
  if live_version
    version_localizations = live_version.get_app_store_version_localizations
    version_localizations.each do |version_localization|
      puts "\t#{version_localization.locale}"
    end
  else
    puts "No verson in live"
  end

  # App Store Version
  puts "\nEdit Version Localizations"
  edit_version = app.get_edit_app_store_version
  if edit_version
    version_localizations = edit_version.get_app_store_version_localizations
    version_localizations.each do |version_localization|
      puts "\t#{version_localization.locale}"
    end
  else
    puts "No verson in edit"
  end

I will docs next week explain all of this


Add section referring to an anonymous causer

Documented how to the register activies that don't have a specific causer model by using causedByAnonymous as described in PR #605

https://github.com/spatie/laravel-activitylog/releases/tag/3.9.0


chore: release 2024.10.8

🚀 Features

allow config ls to return JSON by @roele in #2775
allow config ls to return JSON by @roele in #2776
add {MISE_CONFIG_DIR}/config.{MISE_ENV}.local.toml to config lookup by @roele in #2783

🐛 Bug Fixes

trim "v" prefix for ubi backend tools by @jdx in #2765
Use ubi for sentry-cli by @jahands in #2767
reset color of task prefixes by @jdx in #2772
installing from behind a proxy shows git clone errors and does not work by @roele in #2782

📚 Documentation

prettier by @jdx in e0d0f65
add tip for conditional shims using TERM_PROGRAM by @htunnicliff in #2770

🔍 Other Changes

add error context for installs by @jdx in c412b32
Update ubi.md by @jdx in 8fd0685
Update index.md by @jdx in 6e9f810
Update ubi.md by @jdx in b1e54d4
Update ubi.md by @jdx in 309454d

New Contributors

@htunnicliff made their first contribution in #2770

Hi all, sorry to bug you, but do we know when 2024.10.8 will get released?  This is currently blocking us due to the git proxy bug and just need to know for planning purposes.  Thanks!


Intellisense not working as expected

Intellisense not recognising/suggesting for redux store object:

...
Version: 1.45.1
Commit: 5763d909d5f12fe19f215cbfdd29a91c0fa9208a
Date: 2020-05-14T08:33:47.663Z (2 wks ago)
Electron: 7.2.4
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Darwin x64 19.5.0

Please a small complete code example (as text) that reproduces the problem

This is the full code - as it says in the comment, just being run from command line "node redux.js" as a quick experiment to check the redux setup...

// node js cmd line script
const redux = require('redux')
const createStore = redux.createStore
// state
const initialState = { counter: 0 }
// reducer
const rootReducer = (state = initialState, action) => {
if (action.type === 'INC_COUNTER') {
    return { ...state, counter: state.counter + 1 }
}

if (action.type === 'ADD_COUNTER') {
    return { ...state, counter: state.counter + action.value }
}

return state

}
// Store
const store = createStore(rootReducer)
console.log(store.getState())
// Dispatch Action
store.dispatch({ type: 'INC_COUNTER' })
store.dispatch({ type: 'ADD_COUNTER', value: 10 })
console.log(store.getState())
// Subscription
store.subscribe()

... the problem is that as I type, for example 'store.' I'm expecting intellisense to suggest the methods available on a redux 'store' - but it doesn't


width fit-content not working as documented

Summary
In the description of width one of the potential values is the fit-content function. Using it in the code editor as documented does not work
Steps To Reproduce (STR)

Go to width https://developer.mozilla.org/en-US/docs/Web/CSS/width
Go to first code block and enter width: fit-content(5%);

Actual behavior
the field gets yellow border and the example div does not change size.
Expected behavior
normal color border for the currently executing code block and the width to be fitted to 40%
Additional context
the reason why I might expect the expected behavior is the fit-content value is described as
fit-content(<length-percentage>)
Uses the fit-content formula with the available space replaced by the specified argument, i.e. min(max-content, max(min-content, <length-percentage>)).
which implies a function. like this one https://caniuse.com/?search=fit-content()
but i thought that the fit-content value was just a value - fit-content like so
width: fit-content and the formula for that should be fit-content = min(max-content, max(min-content, fill-available)) ?
but that doesn't really matter as fit-content as a value doesn't work either.

From my testing fit-content() as a function doesn't work, but fit-content as a simple value does work (-moz-fit-content on Firefox). So I think perhaps the spec has changed since this page was created, and the descriptions need updating (along with the formal syntax, etc.)
I wasn't able to check the specs, because the site was down.

I admit I'm a little bit confused as to it as well, I know there is  fit-content function that is for grids, I think that fit-content function is supposed to work for normal width at some point also but there is also the fit-content keyword at width
https://www.w3.org/TR/css-sizing-4/#sizing-values
3.2. New Sizing Values: the stretch, fit-content, and contain keywords
stretch
Applies stretch-fit sizing, attempting to match the size of the box’s margin box to the size of its containing block. See § 7.1 Stretch-fit Sizing: filling the containing block.
fit-content
Essentially fit-content(stretch) i.e. min(max-content, max(min-content, stretch)).
So I think in the current applicable spec fit-content keyword is at width, and the fit-content function is the one used in grids
as per
https://developer.mozilla.org/en-US/docs/Web/CSS/fit-content
but I would like someone to clarify because two things with same name can be confusing.

It's defined in sizing 3: https://drafts.csswg.org/css-sizing-3/#valdef-width-fit-content-length-percentage
Sizing 4 defines the value that isn't a function https://www.w3.org/TR/css-sizing-4/#sizing-values but it's a diff spec so my understanding is that the function will be carried over when everything else is.
So I don't think the page is wrong, although it might be worth updating the compat data to be "supported in grid layout", at some point we need to deal with the non-function fit-content I guess.

yeah but the text of the MDN page describes using the fit-content function
in width, for example the following text:
/* Keyword values */width: max-content;width: min-content;width:
fit-content(20em);width: auto;
, if you use the fit-content function in the css demo area for width it
fails. So I mean you can't use the described function in the demo area, so
I think the text should probably be changed or something?
[image: image.png]
On Mon, Oct 5, 2020 at 4:59 PM Rachel Andrew<EMAIL_ADDRESS>wrote:

It's defined in sizing 3:
https://drafts.csswg.org/css-sizing-3/#valdef-width-fit-content-length-percentage
Sizing 4 defines the value that isn't a function
https://www.w3.org/TR/css-sizing-4/#sizing-values but it's a diff spec so
my understanding is that the function will be carried over when everything
else is.
So I don't think the page is wrong, although it might be worth updating
the compat data to be "supported in grid layout", at some point we need to
deal with the non-function fit-content I guess.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mdn/sprints/issues/3723#issuecomment-703688347, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AACMIQD44CQGPXPMYPIEYPDSJHNLLANCNFSM4RZFXY5Q
.

That description is correct, in terms of valid use of the property. The fact it isn't supported in browsers yet needs reflecting in the compat data. There are a lot of things documented but not yet supported, these partial implementations are tricky though.
@chrisdavidmills @ddbeck could we do something similar here to what we did for the gap properties? https://developer.mozilla.org/en-US/docs/Web/CSS/row-gap
It's also defined for flex-basis which takes any valid width, but again not supported anywhere.
I'm also wondering if we need to rename this, given there is a value without the function part in the L4 spec?

That description is correct, in terms of valid use of the property. The
fact it isn't supported in >browsers yet needs reflecting in the compat
data.

exactly, I would just like there to be something that gave a heads up why
it isn't working, since the documentation implies it should. If it is this
is correct, but it is not working right now because of browser
incompatibility, cool. (also because confusing with the keyword and
function)
On Mon, Oct 5, 2020 at 7:10 PM Rachel Andrew<EMAIL_ADDRESS>wrote:

That description is correct, in terms of valid use of the property. The
fact it isn't supported in browsers yet needs reflecting in the compat
data. There are a lot of things documented but not yet supported, these
partial implementations are tricky though.
@chrisdavidmills https://github.com/chrisdavidmills @ddbeck
https://github.com/ddbeck could we do something similar here to what we
did for the gap properties?
https://developer.mozilla.org/en-US/docs/Web/CSS/row-gap
It's also defined for flex-basis which takes any valid width, but again
not supported anywhere.
I'm also wondering if we need to rename this, given there is a value
without the function part in the L4 spec?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mdn/sprints/issues/3723#issuecomment-703766385, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AACMIQAYGH7FUYMWSLDI4YLSJH4ZRANCNFSM4RZFXY5Q
.

@rachelandrew

could we do something similar here to what we did for the gap properties? https://developer.mozilla.org/en-US/docs/Web/CSS/row-gap

I'm sorry, I don't understand the context enough to answer this question better, but I think I'd like to steer us away from gap as a model. The namespaces for different contexts presented some problems for the Stumptown project. I opened https://github.com/mdn/browser-compat-data/issues/6175 to reexamine how we handle that data. If possible, I'd like to direct efforts toward subfeatures rather than building structures above fit-content.

It would be good to understand then how you want to deal with partial implementations? The gap stuff was done because we had the partial implementation issue (gap being supported in grid and multicol but not flex and block layout). I think we have a similar problem here of partial implementation.

OK so I've been looking at this. I think we need two pages, and to disambiguate the BCD data between the level 3 fit-content() function, which is really what the existing page is about and the level 4 fit-content keyword.
That way the function page can show support in grid layout, and support for width etc. for the function.
I therefore think I need to add to BCD for width, fit-content() as a function and make sure the support data is correct for both, I think it's mixed up right now. Then I can show two charts as I have done here https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/fit-content (except at the moment we have this mixture of compat data for width.) cc: @chrisdavidmills @ddbeck

@chrisdavidmills this is an interesting one. I'm trying to remember if we've had a previous need to disambiguate two items, and what we did then. Do you have any suggestions that we could investigate?
One that sprints to mind is opacity property / opacity() function, but that's dealt with like this:

https://developer.mozilla.org/en-US/docs/Web/CSS/opacity
https://developer.mozilla.org/en-US/docs/Web/CSS/filter-function/opacity

If we don't have a previously decided way of doing this, we ought to decide on something. We could deal with this like wikipedia does...

@chrisdavidmills yeah maybe we just have fit-content and fit-content-function and put a note at the top of each page. Likely thing is that people will go to the bare fit-content first so as long as it's clear.
Other CSS functions are listed right under CSS - for example https://developer.mozilla.org/en-US/docs/Web/CSS/calc if this were likely to come up with more functions we could move functions to CSS/functions I guess but I'm not sure this is going to keep coming up.

@chrisdavidmills this issue also relates https://github.com/mdn/sprints/issues/3848

I think the solution is to have two articles in MDN:

https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/fit-content - for fit-content value used by width.
https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/fit-content() - for fit-content() function used by grid-template-rows and grid-template-columns.

Currently MDN has documentation for the function.

@ramiy I think your proposal sounds good, and is consistent with what we've discussed in https://github.com/mdn/sprints/issues/3848.
So in this case, we've got the function documented at /fit-content. This content should be moved to /fit-content(), and then the documentation for the value should be put at /fit-content.
Does this sound OK to you, @rachelandrew ? As I said in the other bug, if we later decide on a different convention, we can easily make that change under Yari.

@chrisdavidmills yep that's great. I can sort that and as I'm going round all the pages to update the grid-gap / gap stuff I can make sure they link to the right incarnation of fit-content() too.

@rachelandrew great stuff, thanks!

@chrisdavidmills hmm ... so I moved fit-content to fit-content() but still can't create a new page at fit-content, I assume that's because there is a redirect now in place? I've got all the content, just can't make the page.

oh, although it said it had been moved (I have the email) it's still redirecting to https://developer.mozilla.org/en-US/docs/Web/CSS/fit-content

@rachelandrew yeah, I was hoping to move the content of /fit-content to /fit-content(), not move the page, as then you get exactly the problem you are now experiencing. I've just tried moving the page back to /fit-content, in the hope that this would un-create the redirect, but it doesn't. /fit-content() now redirects back to /fit-content.
I think we'll need an MDN dev to help put this right.
@escattone , can you help us with this? We need two separate pages, at

https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/fit-content
https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/fit-content()

We have an existing page at the former URL, and the latter URL redirects ot the former. Can you update it so that the latter does not redirect to the former, and we can create a separate page at that URL?

ah I see, I thought I could just move the page, then make a new page. Sorry if I've made a mess.

@rachelandrew no worries at all; it is all pretty confusing and non-obvious. I think we'll be able to get this sorted.

@chrisdavidmills @rachelandrew Done! I removed the content-based redirect command within https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/fit-content(), so now it's basically an empty page, and ready for whatever you'd like to add.

@escattone ah, so the redirects when you move pages are just put in place via content-based redirects? I'll remember that for next time.
@rachelandrew I've now moved the function content to https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/fit-content(), so now https://wiki.developer.mozilla.org/en-US/docs/Web/CSS/fit-content is free for you to add the keyword content to.

@escattone @chrisdavidmills thanks both, I shall try not to make a mess in future! I've added the content, and a note at the top of fit-content about fit-content() as currently a lot of the grid things will point to the keyword not the function (as may external things). I'll go round and fix our stuff as I do these various grid updates.


Required task must be from acceptable bundle

Adds an additional check that a record must exist for a bundle the required task originates from. Meaning that the task is from an acceptable bundle.
reference: EC-254

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (9dfb2ad) 100.00% compared to head (566a47f) 100.00%.

Additional details and impacted files

@@            Coverage Diff            @@
##              main      #849   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           91        91
  Lines         4158      4238   +80
=========================================
+ Hits          4158      4238   +80

Files
Coverage Δ

policy/lib/bundles.rego
100.00% <100.00%> (ø)

policy/lib/bundles_test.rego
100.00% <100.00%> (ø)

policy/pipeline/required_tasks.rego
100.00% <100.00%> (ø)

policy/pipeline/required_tasks_test.rego
100.00% <100.00%> (ø)

policy/release/tasks.rego
100.00% <100.00%> (ø)

policy/release/tasks_test.rego
100.00% <100.00%> (ø)

Do we need another rule that says "required task used, but not from an acceptable bundle"? In this case the user should get a violation from the acceptable bundles policy, but will the solution be obvious? And what if the acceptable bundle policy is excluded?

We got two approvals here. I'm going to merge it now as I want to submit a PR that touches some of these files as well.


Using 'task_err' event

There is not so much documentation about using 'task_err' event that user can call like this
task.emit('task_err', err)
At first I thought that it is undocumented inner feature, but the code doesn't enit it itself. It is possible to make a situation with task_err clearer?

I don't understand what the question is here.  This doesn't seem to be related to run-sequence.

When I am trying to interrupt whole sequence in the process of execution then task.emit('task_err', err) is only one possible way, as I understand. It works and I think that this method can be useful for others and I would like to see this method in the docs.
Or may be there is another way to interrupt sequence of task in the process of execution?

I don't know why you'd want to interrupt a sequence—it should automatically stop if any task throws an error, which is a gulp or node issue.

I'm using the gulp-less plugin with run-sequence. gulp-less is running into an error with invalid less, but the sequence keeps on running. It's not clear if gulp-less plugin is not behaving properly, or if run-quence isn't stopping the sequence as expected.

My issues with gulp-less and run-sequence turned out to be a general design  issue with how gulp handles errors, not any one particular plugin. This issue from gulp-typescript discusses it more:
https://github.com/ivogabe/gulp-typescript/issues/295


npx dbos config removes top comments

If we run npx dbos configure, it overwrites the config file without the top comments:
# To enable auto-completion and validation for this file in VSCode, install the RedHat YAML extension
# https://marketplace.visualstudio.com/items?itemName=redhat.vscode-yaml

# yaml-language-server: $schema=https://raw.githubusercontent.com/dbos-inc/dbos-transact/main/dbos-config.schema.json

We might want to preserve those comments so IntelliSense can auto complete.

Fixed


chore: remove old state events, in favor of newState event

What does it do?
After https://github.com/ethereum/grid-ui/pull/89 is merged, this PR will be safe to merge to remove the old individual state event emits.
@PhilippLgh do any of your apps use these old state events that I should PR to update to using .on('newState' ...) before this is merged in? Thx

Closes https://github.com/ethereum/grid/issues/279

why should we remove those state change events? being able to selectively listen to only interesting events makes sense. performance wise and for cleaner code. the alternative would be to replace 'newState' with a * event and implement the necessary logic in an EventEmitter subclass. thereby we don't fire events twice and keep the ability to listen to all or only select events.

@PhilippLgh I found in developing both the rpc and clef apps that it was much easier to listen to a plugin's newState event to see where its state has changed, see: https://github.com/ryanio/grid-rpc-app/blob/0486752c9b24ef577dff13c8adf3f7daf8862f7e/src/App.js#L99
It also really simplifies the UI code, see: https://github.com/ethereum/grid-ui/pull/89/files#diff-2310c53625c08a90c730864e59892a77L55
With the above two cases, it just makes more sense to me to remove the individual events. I was the one who created them in the first place, and am finding it's too verbose for no real practical benefit. And in the case of just caring about one event in particular, I don't think it is too cumbersome to use this pattern:
plugin.on('newState', newState => {
  if (newState === 'starting') {
    console.log('do something just for starting')
  }
});

What do you think?

Just a naming suggestion: state is a heavily overloaded term, especially after introducing Redux into the equation. I like @evertonfraga 's suggestion of "statusChange" instead of "newState", for being more descriptive and distinct.


more strigent test needed with test connection for bad token

Fixes https://github.com/openshift/jenkins-plugin/issues/136
@bparees @oatmealraisin fyi / ptal

lgtm pending agreement from @liggitt or @deads2k about the use of that endpoint.

@liggitt suggested use of /apis in the issue a few moments ago ... I'll circle back and switch to that.
Going to let the current merge job complete first, just to see if other items pop up.


result of .find() is -1 when not found

The error I'm fixing is this exceptions in some cases that the user is not found:


Orchestration is always showing as cattle in telemetry

Rancher Version: master 11/11
Steps to Reproduce:

Create a cattle, mesos, k8s, and swarm environments
Run telemetry report
View telemetry report

Results: In environment section all are going under cattle in the orch section.
Expected: Should recognize that they are not cattle and report accordingly

https://github.com/rancher/telemetry/pull/8

Version - v1.2.0-pre4-rc8
Verified fixed


Timeout should be configurable as StorageOption

There is no way to configure the timeout for a storage call.
In 2.5 the StorageOptions object that is passed as parameter on a new Storage() does not have any field for that.
In the python documentation there is urlfetch_timeout for this.
It would be great to have the same option in the nodejs library as well.

@AVaksman this appears to have been addressed in https://github.com/googleapis/nodejs-common/pull/455. Is more work required, or is this feature live for new Storage downloads?

Ping @AVaksman for clarity!

Work in progress to expose timeouts to user on a high level.

Any updates for this issue?
Does any way to define the timeout for the storage request?
Thanks


Externally provided scenes

Hue has the ability to export its own scenes to HomeKit so that HomeKit can activate them. Would it be possible to add this kind of external scene support to Homebridge so that a plugin like homebridge-mqtt could tell, for example, a Node-Red flow to set a particular scene?
To illustrate further, I might have a node-red flow that switches everything off last thing at night, which I already access in various ways. I don't want to have to duplicate the scene in HomeKit, so I "import" the scene using homebridge & homebridge-mqtt, giving me Siri support and enabling me to set this external scene through the HomeKit apps.

The reason Hue can do it is because the app on the phone has access to your HomeKit database. If an iPhone app were written to interact with your HomeKit database on your phone then it would be possible. The Hesperus app was written to interact with Homebridge but I don’t think it supports anything like this.


add: linux-longterm-6.6-headers-modular-deb

Continuation of these requests (#6586)

It still got errors when I made a change. Should I close it as unplanned and re-commit with new branch or keep it be?

What’s with the -modular naming? It is confusing and does not match the standard of other kernels we package

modular means it's primary headers for all architecture, it's located on amd64 and if you see the sources, there's one primary headers and second headers which it's generic.

What’s with the -modular naming? It is confusing and does not match the standard of other kernels we package

modular means it's primary headers for all architecture, it's located on amd64 and if you see the sources, there's one primary headers and second headers which it's generic.

See https://github.com/pacstall/pacstall-programs/pull/6619#discussion_r184097586, we have a standard naming practice for these

What’s with the -modular naming? It is confusing and does not match the standard of other kernels we package

modular means it's primary headers for all architecture, it's located on amd64 and if you see the sources, there's one primary headers and second headers which it's generic.

See #6619 (comment), we have a standard naming practice for these

Alright, I follow what you'd mean. So, should I fix the modules and this merged commit in next commit yeah ?