Change decay to reach cost reduction specified by 2100 (instead of 2110) tools.costs

Small fix to the cost decay in tools.costs to reach the reduction rate specified by 2100
Currently, the decay is applied so that the cost reduction rate is reached by Config.final_year, which is 2110 -- but this should really be 2100. So if the cost reduction rate is 10%, that 10% reduction (relative to the base year) is reached in 2110, not 2100. Therefore the 2100 value is maybe around 9% less than the base year value (or something like that).
Further down the line, the tool also takes the 2100 value and repeats it until Config.final_year (since 2110 isn't really a model year), so essentially the cost projections never officially reach the cost reduction rate specified (it gets very close).
This branch is derived off of the costs/reconfigure-modules branch, so PR #221 should be merged before this one goes through review.
How to review
For @khaeru and/or @glatterf42 : Read the diff and note that the CI checks all pass.
PR checklist

[ ] Continuous integration checks all ✅
[x] Update doc/whatsnew.

(since 2110 isn't really a model year),

I don't understand this. In year/B.yaml, which I understand to be the default set and consistent with the current MESSAGEix-GLOBIOM global models, we have: https://github.com/iiasa/message-ix-models/blob/32cb2fd884afec2cf95878d9051cf4b33dd5af2c/message_ix_models/data/year/B.yaml#L63-L64
Does that remark mean this isn't the case?

(since 2110 isn't really a model year),

I don't understand this. In year/B.yaml, which I understand to be the default set and consistent with the current MESSAGEix-GLOBIOM global models, we have:
https://github.com/iiasa/message-ix-models/blob/32cb2fd884afec2cf95878d9051cf4b33dd5af2c/message_ix_models/data/year/B.yaml#L63-L64
Does that remark mean this isn't the case?

Sorry, my wording was confusing and/or understanding of this concept is incorrect -- I meant more in the context of this tool, we're not projecting costs past 2100, but the year 2110 is still needed as an input into MESSAGEix so that's why the cost from 2100 is repeated for the 2110 time period.

I think another way of framing this is that values are projected for 2110: via an assumption that values in 2110 will be identical to values in 2100. These values enter MESSAGE and will affect the model solution. That is a methodological choice that should be mentioned in the documentation.
Currently the Config class has the following attributes:

Y
base_year
convergence_year
final_year
seq_years
y0

I am not sure whether 2100, now hard-coded in some places, is the same as any of these, or sometimes/always distinct. I also wouldn't be confident explaining the difference between these to a user. Is it possible to have a diagram showing which means what under various possible combinations of settings?

Thanks Paul, excellent points. All the year-based attributes are indeed confusing 😅 I can try to make a diagram or schematic showing the differences.
In this case, 2100 is technically none of those above (but it is part of Config.Y and Config.seq_years as those are sequences of years). Right now, 2100 is both (a) the year that the cost in the reference region needs to reach the reduction rate specified and (b) the final year of cost change projection (whereas Config.final_year is final projection year -- 2110).
While in our current use-case both (a) and (b) are the same, there is of course the possibility that they might be different, such as:

user wants a technology's cost to reach 0.5 by the year 2050
user wants a technology's cost to reach 0.5 beyond the model horizon (such as in the year 2130)

I thought about this yesterday as I was making this PR: whether to change 2100 from being hardcoded to a parameter (or perhaps even two parameters). Not sure what would be better in this case.

There is of course the possibility that they might be different, such as:

user wants a technology's cost to reach 0.5 by the year 2050
user wants a technology's cost to reach 0.5 beyond the model horizon (such as in the year 2130)

I thought about this yesterday as I was making this PR: whether to change 2100 from being hardcoded to a parameter (or perhaps even two parameters). Not sure what would be better in this case.

To me, this would be easier to explain. One could say:

Every target cost ratio value for a particular (technology, [node?], …) is associated with a target year. If not given explicitly, Config.final_year [or whichever setting] is used.

If this target year is before last period in the model horizon (Config.Y), then all subsequent periods will have flat/identical costs per the target.
If this target year is after the last period in the model horizon, the target cost ratio is not reached within the model horizon.

IOW have a configurable default/fallback value (e.g. 2100) while allowing the user to selectively input other values.

would you recommend I add to this PR to address these concerns (and if so, in the form of additional functionality, added docs, etc)?

I think at least in the function where 2100 is newly hard-coded, the docstring should describe the function behaviour so there is no surprise lurking for users.
Further simplification of the configuration handling is fine to defer for another PR.

I think at least in the function where 2100 is newly hard-coded, the docstring should describe the function behaviour so there is no surprise lurking for users.
Further simplification of the configuration handling is fine to defer for another PR.

Sounds good! I've added a short blurb in the function docstrings about this -- let me know if you think additional information is needed.
https://github.com/iiasa/message-ix-models/blob/2dbdec67e094d4c70735a55c5ed977118fb991a1/message_ix_models/tools/costs/decay.py#L281-L285


Documentation : wrong label in image?

Regarding the image http://www.angusj.com/clipper2/Images/endtypes2.png, is the right-most incorrectly labelled? It seems to be declared the same way as the middle illustration, but the result is quite different. I'm wondering if this right-most should be 'etClosedButt' or is the starting condition different? It's just not clear (perhaps the start line and end result need to be better differentiated in terms of color)?

Thanks for the feedback again Phil.
The image is labelled correctly, and yes, the starting position is different in the rightmost image.
If you look closely at the top left corner of that image you'll see it can't be a (properly drawn) closed path.
But I agree this image is confusing and needs to be redone.

Marvelous - thanks! Now that image has me wondering about a RoundButt (which sounds all kinds of wrong).


{AKS} Refactor 3rd part of the update sub-command in acs module

Description

refactor attach & detach acr.

Unit Test Results:

"covered_lines": 1279,
"num_statements": 1300,
"percent_covered": 98.38461538461539,
"missing_lines": 21,
"excluded_lines": 0

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.

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

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

AKS


Question about the time to start tracking

In your code, both coarse mapper and mapper can change the value "mapping_first_frame", which is a signal to start tracking.
But since you tracker need color decoder, how can you ensure the mapper first change "mapping_first_frame" rather than coarse mapper?
In your code, it is possible that when coarse mapper make mapping_first_frame=1 first, and tracker start tracking frame 0,1. When in frame 1, it is possible that the mapper is still not finish mapping frame 0, which may destroy the tracking. I can't find any code that prevents this situation.
Please check for this, I 'm not sure if I was wrong.
Thks

Hi,
in my previous runs it is not affected, but to ensure a "if not self.coarse_mapper:" statement can be added here https://github.com/cvg/nice-slam/blob/7af15cc33729aa5a8ca052908d96f495e34ab34c/src/Mapper.py#L624
Thanks!


Autofill inputs the table names in quotes

Description
Autofill started to input names as  "DATABASE"."SCHEMA"."TABLE" instead of the previous behavior DATABASE.SCHEMA.TABLE.
All seems to be working well except when backspace is used to delete the last ". Then it is not finding the match. Not sure if this is the intended behavior.
DBeaver Version
Community Edition <IP_ADDRESS>306251800
Operating System
Windows 11
Database and driver
Snowflake
Steps to reproduce
No response
Additional context
No response

Good thinking in doing this but maybe even better if there is a setting to turn this off if not wanted/needed?

This came from #20189
https://github.com/dbeaver/dbeaver/pull/20189/files
To me, it is not functioning as expected because quotes should only be required if there are spaces, not Latin characters/underscore or $ in the identifier
https://docs.snowflake.com/en/sql-reference/identifiers-syntax
In the example below, COLUMN_ONE and COLUMNTWO should not require quotes

Thank you for bug report and investigation.

Hi,
I think this has been corrected in a new release. Suggest that you do an upgrade, which should solve your problem.
Br
Torgny
From: ChrisV-Newsday @.>
Sent: den 21 augusti 2023 17:09
To: dbeaver/dbeaver @.>
Cc: Torgny Elwmar @.>; Mention @.>
Subject: Re: [dbeaver/dbeaver] Autofill inputs the table names in quotes (Issue #20391)
How do I disable the autocomplete double quotes?
—
Reply to this email directly, view it on GitHubhttps://github.com/dbeaver/dbeaver/issues/20391#issuecomment-1686512617, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AQSRF5QLOWOWTRFREFKV44DXWN2XVANCNFSM6AAAAAAZUSMLZI.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

I did upgrade to the early release v<IP_ADDRESS>308210819 and it still adds the double quotes.

That is strange, I use the same version: <IP_ADDRESS>308201919 (almost at least). Please check settings for editor if that is a possible way.
Br,
Torgny
From: ChrisV-Newsday @.>
Sent: den 21 augusti 2023 17:54
To: dbeaver/dbeaver @.>
Cc: Torgny Elwmar @.>; Mention @.>
Subject: Re: [dbeaver/dbeaver] Autofill inputs the table names in quotes (Issue #20391)
I did upgrade to the early release v<IP_ADDRESS>308210819 and it still adds the double quotes.
—
Reply to this email directly, view it on GitHubhttps://github.com/dbeaver/dbeaver/issues/20391#issuecomment-1686590478, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AQSRF5RAUEU4TIQTP2EH7T3XWN775ANCNFSM6AAAAAAZUSMLZI.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>


Negative Airspeed readings

It seems as though the differential pressure sensor can return outliers for the pressure reading. This causes the airspeed to go negative for a second. We should probably do some outlier rejection on this.

Does anyone want to implement this?  (It would be best in the sensors.cpp file of the firmware)

This was fixed a long time ago!  Thanks @drinkdhmo


Document Docker on k8s specifics

Context
There are too many things to consider when deploying a PHP Docker setup in Kubernetes, many of them related to good practices and others due to how PHP is designed, the intent of this issue is to list all of them and match whether we have both solved the issue and documented it.
THE list

Starting with Docker best practices

[ ] Package a single app per container
[ ] Properly handle PID 1, signal handling, and zombie processes

[ ] PHP Cli doesn't come with pcntl by default.
Which means SIGTERM and SIGINT will be ignored and the process will die non gracefully, also the application must know how to deal with the signal
[ ] PHP-FPM doesn't adhere to the standard posix signals IPC, where it'll terminate immediately upon SIGTERM and SIGINT

[ ] Optimize for the Docker build cache
[ ] Remove unnecessary tools
[ ] Build the smallest image possible
[ ] Properly tag your images
[ ] Use vulnerability scanning in Container Registry

[ ] How to patch those images?
[ ] Patch older versions of the image

[ ] Carefully consider whether to use a public image

Nginx and PHP-FPM, after handling signals correctly, let's understand the relationship of those components.

[ ] Does the Nginx process finishes before the PHP-FPM one?
[ ] Does Nginx need access to the code?
How do they communicate, advantages and disavantages of:

[ ] Via TCP connection
[ ] Via socket while running both in the same container
[ ] Via socket while running in different containers

[ ] Test the relationship between the services

On the best practices for operating containers, probing:

[ ] Should you warm up the cache of the application? I.e.: Opcode cache as file
[ ] Readiness probe for a non-interactive (CLI) container
[ ] Liveness probe for a non-interactive (CLI) container
[ ] Readiness probe for a PHP-FPM container
[ ] Liveness probe for a PHP-FPM container

Observability, logging and monitoring

[ ] Logging to stdout and stderr
[ ] Log format
[ ] PHP-FPM prefixes all stdout with WARNING: [pool www] child 12 said into stdout :.
7.3 has a fix for that, but what to do with 7.2? https://www.php.net/manual/en/migration73.new-features.php#migration73.new-features.fpm
[ ] Produce metrics
[ ] Make it possible to scrape or push metrics, is it non-blocking?

Containers

[ ] Avoid privileged containers
[ ] Avoid running as root
[ ] Stateless

Best practices for writing Dockerfiles

[ ] Lint the Dockerfile

Regarding the communication between containers, perhaps also note that Unix socket communication does not need to be bound to the filesystem on Linux (search for "abstract" in http://man7.org/linux/man-pages/man7/unix.7.html). Sharing a volume between containers with a socket file is actually unnecessary for this case.
Also, contrasting "socket" with TCP here is misleading, as TCP sockets are also sockets. The appropriate terminology is "Unix domain socket", or just "Unix socket" for short.

/cc @tomoki1337


Generate .env per job and use release keys for release jobs

We want to use different API keys in our publicly distributed builds.
To accomplish this we override the required ENV_VARS from .env.example with our release keys.

Production Contentful needs work before this can be merged


Fix/603/arch deps

First stab at resolving issues reported in https://github.com/advancedtelematic/meta-updater/issues/603.

I've pushed another commit that should fix the problem with aktualizr's dependency on MACHINE (hopefully)

I cannot figure out what in the do_install step of aktualizr-device-prov-creds depends on MACHINE.

There is a reference to ${DEPLOY_DIR_IMAGE} in the install step which is defined as ${DEPLOY_DIR}/images/${MACHINE}.


Add missing unmanaged wrappers related to attributes

This adds some missing unmanaged wrappers for attributes. Will try and follow up with working on the managed wrappers.
Related to https://github.com/dotnet/LLVMSharp/issues/217.

What's the status of this repo in terms of maintenance?
I'm finding a lot of missing apis (even unmanaged ones, not using the managed wrapper at all yet), in addition to the samples being extremely outdated.
Would like to know as I'm wondering if I should put in the work to contribute these and wait for PR reviews and merges, or just fork the project and do some ad-hoc patching instead to be honest so I can continue with what I'm doing.

What's the status of this repo in terms of maintenance?

Sorry for the delay, I'm normally fairly pro-active on getting PRs reviewed/merged. But we're currently locking down the .NET 8 release (I'm on the .NET Libraries team) and so I've been a bit pre-occupied.
I should be able to get to this shortly.

I'm finding a lot of missing apis (even unmanaged ones, not using the managed wrapper at all yet), in addition to the samples being extremely outdated.

All unmanaged APIs should be exposed, they are generated directly from the header files. Do you have an example of an unmanaged API that is missing?
Higher level abstractions (that is the safe wrappers exposed as instance methods or the OOP surface that more closely mirrors LLVM C++ API) may not all be there yet and are a WIP.

Thanks for replying! And very understood.

All unmanaged APIs should be exposed, they are generated directly from the header files. Do you have an example of an unmanaged API that is missing?

I wasn't clear enough, I meant in the unmanaged *Ref structs. (which this PR applies to)
Yes the bindings themselves are all there as far as I can tell. I am able to at least use the bindings directly, but mentioned this since even without the managed wrappers, the *Ref structs are still much less awkward to work with than the bindings.
I did a skim of the managed wrappers, and indeed only the very beginning is there. I have some code in progress relating to these as well that I'll try and send patches for later if that's ok. (I can see there are some work done in managed wrappers, but even the central wrappers such as Module/Context are missing lots of important parts too)

I wasn't clear enough, I meant in the unmanaged *Ref structs. (which this PR applies to)

Ah, I see. Yes, these are still lacking.
ClangSharp has "everything" here and is basically where I want to get LLVMSharp. I just ended up being particularly busy in .NET 7/8 with Generic Math and then AVX-512 support being added and so haven't had nearly as much time as I've desired to finish the support out.

I have some code in progress relating to these as well that I'll try and send patches for later if that's ok.

Sounds great to me. Contributions are more than welcome and will help get the repo to where we want it to be 😄


Features are not seen on some computers

Something very strange happens. On my computer I am seeing a map (openlayers 6.3.1) with more than 3,000 features correctly. In both Chrome, Edge and Firefox, however, when other users access the map, they see the features for a moment, and then hide them from them. If they move the map ... they will be seen again ... but they disappear again. Zooming in is the same. I have tested several users ... and there is no common pattern. Some have the same version of the browser as I do and it gives them the error ... others have an older version and have no problems ... some have a 16gb Ram computer and give them the error ... others with 8bg of ram do not have that problem ... has the same thing happened to someone?

I've found where the problem is, but I don't know how to fix it. When I create the VectorLayers that contain the features, I create them like this: new VectorLayer ({visible: false}) ;. When a button is pressed, some layers are made visible with setVisible (true).
    map.getLayers().getArray().forEach((layer) => {
      if (layer instanceof VectorLayer) {
        if (condition) {
            layer.setVisible(true);
        }
      }
    });

This proves that on some computers, the features blink and the icons are not visible, but if I move the map or zoom, the icons appear and disappear again.


Fix problems with generating images

I use every project like simlink to /var/www. This PR solve problem with different path to wwwDir and baseDir. I'm not sure, if it will work properly in every other use cases, but I dont know, why shouldn't.
It also fix problem with creating a directory with 777 permission: http://stackoverflow.com/questions/3997641/why-cant-php-create-a-directory-with-777-permissions

Can you please split it to 2 commits (relativeUrl & umask)?

Imho, using umask() in 3rd party library is a bad practice. @Olicek You can set umask in your application.

I split it (hope properly, i'm noob with git).
@milo  Why it is bad practice? It's equivalent to 777 permission, isn't it? Everything what i read about it was connected with 777 permission. Is there any problem hidden for me? thanks.

@Olicek umask 000 means that a file will be created with 777 permissions. Whether that's good or bad is too broad to answer, however as a general rule of thumb: when you set your file ownership well 777 should not be needed.
Having said that, I believe @milo's point was about not calling umask() in that particular place.

@milo :+1:

@Olicek Personally I don't want that some library creates files with 777 mask automatically. With umask() in library, you lost control. Libraries should respect system's umask and don't change it. As an application programmer, you can call umask() in your application bootstrap. The effect is the same, library stays clean.

Merged without umask.

/cc @vvanscherpenseel @milo Can that creation of directory be somehow improved regarding to permissions?

@vojtech-dobes I don't think so. Maybe let umask() configurable.

@milo thanks for the explanation.
 I want 777 just for img folders. I would be for configurable umask(). Can I prepare PR?

Okay, lets make it that flexible. By default it should be off. Configuration can look like this:
webimages:
    umask: 0777


Unexpected istanbul code coverage

Describe the bug
For v1.4.0, istanbul shows exported string constants as not covered. This is a deviation from v0.34.6 where it correctly skips string constants in code coverage.
Is this an expected change in behavior? Or a bug?
Reproduction
See terminal for coverage results:

v1.4.0 https://stackblitz.com/edit/vitest-dev-vitest-dy65uu
v0.34.6 https://stackblitz.com/edit/vitest-dev-vitest-sxb7gh

System Info
System:
    OS: Linux 5.0 undefined
    CPU: (3) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 0 Bytes / 0 Bytes
    Shell: 1.0 - /bin/jsh
  Binaries:
    Node: 18.18.0 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 10.2.3 - /usr/local/bin/npm
    pnpm: 8.15.3 - /usr/local/bin/pnpm
  npmPackages:
    @vitest/coverage-istanbul: 0.34.6 => 0.34.6
    vite: ^5 => 5.2.6
    vitest: 0.34.6 => 0.34.6

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

In Vitest v1 we enabled coverage.all by default:

github.com/vitest-dev/vitest/pull/4265

Add this option in your v0.34.6 and you should see the same results. Or disable it in the v1.4.0 reproduction.

I see. Thanks for the info! Will close this issue.
However, is it valid for coverage to be collected for an exported string constant (or an exported number or boolean)? Would the recommendation be to write a test that checks if the value is as expected 🤔? I just wanted to export a public constant from my package and it feels weird to write a test to check its value.

However, is it valid for coverage to be collected for an exported string constant (or an exported number or boolean)?

Looks like Istanbul does add a statement counter there: https://evanw.github.io/source-map-visualization/#MTMzOQB....
You can use ignore hints or coverage.exclude for this. Personally I think I would add test case for the file that actually imports this file. Then it would become covered automatically.


debug statements in the API path

we have a sesscheck deadlock somewhere, maybe this can help us narrow it down...

r? @patrickxb

LGTM

there's no way this broke C/I, so I'm going to go ahead with it.


fix: fixed linter/prettier setups and updated targets

Fixes #1835
Signed-off-by: Anton Biriukov<EMAIL_ADDRESS>

@birtony - This PR has conflicts

@birtony - This PR has conflicts

@rolsonquadras resolved

Looks ok to me, but would recommend you have someone look at it who's more familiar with this project as well!


[META] Frontend completeness

We want the frontend of hax to be complete, that is:

all Rust constructs should be handled;
the frontend shall not crash.

Currently the main pain with frontend is traits: we implement our own logic for finding implementations for traits. This part is the only "smart" part of the frontend, I would say.
This trait implementation resolver is the only part of the frontend where we (1) go deep down rustc's AST (2) reconstruct some complicated data and ask Rust something. Here "reconstruct some complicated data" involves binders: we have a hard time reconstructing binders correctly, thus we break invariants and rustc crashes.
List of bugs:

https://github.com/hacspec/hax/issues/747
https://github.com/hacspec/hax/issues/686
https://github.com/hacspec/hax/issues/684
https://github.com/hacspec/hax/issues/604
https://github.com/hacspec/hax/issues/310
https://github.com/hacspec/hax/issues/875

Ccing @R1kM @Nadrieril @sonmarcho who are probably interested
Action items

[ ] Catch those failures and print nice warnings
[ ] Add item-wise catches? to improve UX
[ ] #944
[ ] How long would that take?

Relevant:

#977

We fixed all the issues here, the only one left is https://github.com/hacspec/hax/issues/1046, which is related to GATs
The plan is for the engine to move to @Nadrieril's great new enum FullDef, which gets rid of HIR construct, which is a bit of a technical debt. https://github.com/hacspec/hax/issues/1072 tracks that.


Update icon-set.less - fix styletile docs, rename progress-icon

The Styletile Docs have been updated to correctly indicate the names of certain icons.
Also the icon with the name icon--brogress-1 has been renamed to icon--progress-1 while preserving a copy of brogress for backwards-compatibility.

Hello,
thank you for creating this pull request.
I have opened an issue on our Issue Tracker for you. See the issue link: https://issues.shopware.com/#/issues/SW-15099.
Please use this issue to track the state of your pull request.

Good catch, thanks! Merged with c3fabf9bb548a778169f3429b23d5a8703f22954.


Quaternion rotation of vector modifies object instance

I'm using pyquaternion to generate unit tests for some C code which performs various quaternion and vector operations such as the quaternion Hamilton product, rotation a vector with a quaternion, etc.
I noticed that the results from my C code was not matching the pyquaternion result, and then I noticed that when using basic numpy arrays I get matching answers, but not when using the Quaternion class.
Digging further into it, I found that it was related to the fact that I was calling q.rotate(v) to rotate a vector with a quaternion, and that the rotate method is normalizing q and that modifies the object thereafter, so methods later in my code that used the same quaternion were working with a different quaternion.
This short snippet shows the behaviour:
from pyquaternion.quaternion import Quaternion
import numpy as np

a = Quaternion(0.0875, -0.8330, 0.2902, -0.4629)
b = Quaternion(-0.4156, 0.8189, -0.3817, 0.1043)
v = [1.0000, 1.0000, 1.0000]

print([np.float32(i) for i in a * b])
a.rotate(v)
print([np.float32(i) for i in a * b])

Prints
[0.8048285, 0.27142748, -0.44619277, 0.2818188]
[0.8048133, 0.27142236, -0.44618437, 0.2818135]

The first answer (before the quaternion was normalized) matches my C code and also WolframAlpha.
While I think the case could be made either way, I think the least surprising thing for the user would be to create a temporary quaternion object from the parameter, normalize that, and return the result of the rotation. This way the input quaternion remains the same and the result is unchanged.

I suspect this must be due to some normalisation step. For example, if you run the following code:
import numpy as np
from pyquaternion import Quaternion

a = Quaternion(0.0875, -0.8330, 0.2902, -0.4629)
b = Quaternion(-0.4156, 0.8189, -0.3817, 0.1043)
v = [1.0000, 1.0000, 1.0000]

a = a.normalised
b = b.normalised
print([np.float32(i) for i in a * b])
for i in range(100):
    a.rotate(v)
print([np.float32(i) for i in a * b])

You will get:
[0.804856, 0.27143675, -0.44620803, 0.28182843]
[0.804856, 0.27143675, -0.44620803, 0.28182843]

Yes, there is an implicit normalisation. This is resolved in
https://github.com/KieranWynn/pyquaternion/pull/47
On Mon, 5 Oct 2020 at 9:21 am, Pantelis Sopasakis<EMAIL_ADDRESS>wrote:

I suspect this must be due to some normalisation step. For example, if you
run the following code:
import numpy as np
from pyquaternion import Quaternion
a = Quaternion(0.0875, -0.8330, 0.2902, -0.4629)
b = Quaternion(-0.4156, 0.8189, -0.3817, 0.1043)
v = [1.0000, 1.0000, 1.0000]
a = a.normalised
b = b.normalised
print([np.float32(i) for i in a * b])
for i in range(100):
a.rotate(v)

print([np.float32(i) for i in a * b])
You will get:
[0.804856, 0.27143675, -0.44620803, 0.28182843]
[0.804856, 0.27143675, -0.44620803, 0.28182843]
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/KieranWynn/pyquaternion/issues/55#issuecomment-703324283,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABNB5GW7EXR65LKORXM2XJ3SJDYPFANCNFSM4KT5KSYQ
.

@KieranWynn Is #47 expected to be merged?

It's a breaking change, so will be part of 1.0 release. Can't give you a timeline on this just yet, unfortunately.


fix(angular): removed stray setIndex debug code (nolimits4web#5006)

Removed the offending code as discussed in #5006

Merged, thanks!


Use "and" instead of comma in Bibtex citation

What does this PR do?
Use "and" instead of comma, otherwise you get
Too many commas in name 1 of "Sylvain Gugger, Lysandre Debut, Thomas Wolf, Philipp Schmid, Zachary Mueller, Sourab Mangrulkar, Marc Sun, Benjamin Bossan" for entry sylvain_gugger2022accelerate

Before submitting

[x] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[x] Did you read the contributor guideline,
Pull Request section?
[ ] Was this discussed/approved via a Github issue or the forum? Please add a link
to it if that's the case.
[x] Did you make sure to update the documentation with your changes? Here are the
documentation guidelines, and
here are tips on formatting docstrings.
[ ] Did you write any new necessary tests?

Who can review?
@muellerzr

Thanks! Found an explanation for why:
Don't use , (comma) as the separator between authors in the author field. Instead, use the keyword and:

author = {A. Dhooge and W. Govaerts and Yu. A. Kuznetsov and
          W. Mestrom and A. M. Riet and B. Sautois},

In the author field, the comma is to be used only if you want to change the ordering of given names and surnames. For instance, one could rewrite the preceding example as

author = {Dhooge, A. and Govaerts, W. and Kuznetsov, Yu. A. and
          Mestrom, W. and Riet, A. M. and Sautois, B},

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


cannot find module 'ejs'

What is the motivation for adding/enhancing this feature?
To fix ejs module dependency required by the NUXT-theme-module
What are the acceptance criteria

Resolve the "can not find ejs module" error

[ ] ...

Version of Vue Storefront

[ ] Vue Storefront
[x] Vue Storefront Next

Can you complete this feature request by yourself?

[X ] YES
[ ] NO

Additional information

Resolved: Add devDependencies for ejs
"devDependencies": {
"@nuxt/typescript-build": "^2.0.0",
"@nuxt/types": "^0.7.9",
"@vue/test-utils": "^1.0.0-beta.27",
"babel-jest": "^24.1.0",
"jest": "^24.1.0",
"ejs": "^3.0.2",
"vue-jest": "^4.0.0-0"
}


markdown

Describe the bug
I try to pass the table in the letter, but just the text comes. I tried to change the parameters, but there is no result. if you insert a direct into the chat, then the table is beautiful, otherwise the text. As I understand mail2most inserts extra empty lines, because of this mattermost does not understand. I ask for help. Thank you in advance.
StripHTML = false\true
ConvertToMarkdown = false\true

https://docs.mattermost.com/channels/format-messages.html#tables
Expected behavior
A clear and concise description of what you expected to happen.

reality

Release version
1.11.5
Architecture
linux 64bit

Hello @nixbedman thanks for reporting this, we will take a look into it.


[3.0] Rejig the repository structure

Summary of the PR
Uses a better repository directory convention.
Related issues, Discord discussions, or proposals
https://discord.com/channels/521092042781229087/587346162802229298/1271834629275389962 and the preceding convo
Further Comments
As discussed in Discord.
Dependencies

#2207

Dependents

#2288

#2234
#2278

This is ready for review after #2207. It is expected that build issues shall be resolved in a future PR.

This has now been rebased (:C) following the merge of #2207

@curin This is now ready for review.


socks5 support

is it possible to use socks5 protocol?

Dart does not have native support for SOCKS5.
A package exists for low-level connections, but it does not implement Socket, and cannot easily be used with HTTP.
It may be possible to make a Socket implementation that uses the SOCKS5 package. The package would have to be made null-safe first.
This is a priority for me, but I won't get much of a chance to work on it in the foreseeable future. PRs are welcome.


Derive Clone and Copy for Allocation

Thanks a bunch for the useful crate!
It looks like Allocation was both Clone and Copy after #25, but the derives were removed in 869e532ca0ec70a99e3463141c354759d99e1e74 when Allocation was changed to a type alias.

Thanks for reporting this!
I'm ok with making Allocation Clone and Copy again, but this should be largely unnecessary imo. You shouldn't have to clone or copy it anywhere else as it would lead to double safe.
Feel free to open a PR and elaborate on why you think it should be Clone and Copy.

Allocator::free_memory is already unsafe, so I don't think double-free is an important consideration here. Besides, you could already easily double-free just by calling free_memory twice.
Allocation is ultimately just a pointer, so it should be treated like one. This empowers developers to build whatever abstractions they'd like on top of it. This also aligns with the precedent set by ash's types; i.e. vk::Buffer is Clone and Copy, so it seems reasonable that (vk::Buffer, vk_mem::Allocation) should be Clone and Copy too.
Up to this point, I've been using std::ptr::read to clone Allocation, but there's no workaround for Copy. If you're really adamant about not supporting this, I'd at least appreciate if Allocation were marked #[repr(transparent)] so I can make my own Allocation type that derives Clone and Copy and cast it back and forth with this crate's Allocation type as necessary.

Sounds good. Feel free to open a PR and make it Clone and Copy if needed.

Thank you, but this is already that PR.

Oh my bad. Thought this is an issue.
Merged. Thanks!


Update WhatsApp_Spammer.js

THANK YOU SO MUCH FOR CHANGING THAT SMALLEST THING, WHICH I REALLY IGNORED
THANK YOU SO MUCH BROTHER


python310Packages.jupyter_console: 6.4.0 -> 6.4.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.jupyter_console is: "Jupyter terminal console"
meta.homepage for python310Packages.jupyter_console is: "https://jupyter.org/"
meta.changelog for python310Packages.jupyter_console is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
Warning: a test defined in passthru.tests did not pass
Warning: no invocation of /nix/store/nvcvm43nszd76rirvr7fa9kgj1xycw07-python3.10-jupyter_console-6.4.2/bin/.jupyter-console-wrapped had a zero exit code or showed the expected version
Warning: no invocation of /nix/store/nvcvm43nszd76rirvr7fa9kgj1xycw07-python3.10-jupyter_console-6.4.2/bin/jupyter-console had a zero exit code or showed the expected version
0 of 2 passed binary check by having a zero exit code.
0 of 2 passed binary check by having the new version present in output.
found 6.4.2 with grep in /nix/store/nvcvm43nszd76rirvr7fa9kgj1xycw07-python3.10-jupyter_console-6.4.2
found 6.4.2 in filename of file in /nix/store/nvcvm43nszd76rirvr7fa9kgj1xycw07-python3.10-jupyter_console-6.4.2

Rebuild report (if merged into master) (click to expand)

33 total rebuild path(s)

17 package rebuild(s)

17 x86_64-linux rebuild(s)
16 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
ihaskell
python310Packages.ansible-kernel
python310Packages.ilua
python310Packages.jupyter
python310Packages.jupyter_console
python310Packages.skein
python310Packages.vega
python39Packages.ansible-kernel
python39Packages.augmax
python39Packages.einops
python39Packages.elegy
python39Packages.ilua
python39Packages.jupyter
python39Packages.jupyter_console
python39Packages.skein
python39Packages.treex
python39Packages.vega

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/nvcvm43nszd76rirvr7fa9kgj1xycw07-python3.10-jupyter_console-6.4.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.jupyter_console https://github.com/r-ryantm/nixpkgs/archive/f958de55baee84d78cad3d63d5e5f6b0ecdf023d.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/nvcvm43nszd76rirvr7fa9kgj1xycw07-python3.10-jupyter_console-6.4.2
ls -la /nix/store/nvcvm43nszd76rirvr7fa9kgj1xycw07-python3.10-jupyter_console-6.4.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
nixpkgs-review took longer than 45m and timed out

Maintainer pings

There is an already updated version #163528


feat: add GGUFHeader::read

Hello!
I needed a way to only read headers of .gguf files for performance reasons.
So I forked the repo and added what I needed to make it work.
cf https://github.com/McPatate/gguf-jinja-analysis if you're curious of what I used it for 😉
This PR does:

add GGUFHeader::read as a public method
add Clone to GGUFMetadataArrayValue & GGUFMetadataValue
re-order dependencies in Cargo.toml (sorry OCD, can revert if you don't care for the change)

You can disregard this PR if it's not of any use.

FYI, out of the 116k .gguf files I analysed, about 300-350 files' header failed to be parsed successfully. My intuition is that it is because some files have the .gguf extension when in fact they aren't, but there may be legit cases where the parser simply fails. Lmk if you want me to take a second look and gather more info on this.


Fix type definition of CustomEvent constructor

Like #1837, I think CustomEvent constructor needs parameters.
The followings are links I checked.
https://dom.spec.whatwg.org/#interface-customevent
https://developer.mozilla.org/en/docs/Web/API/CustomEvent
http://html5index.org/DOM - EventInit.html
http://html5index.org/DOM - CustomEventInit.html

Hi @takeohman, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;

thanks for the PR. As i mentioned in #1837 this file is auto generated from the IE definition files. this makes it easy for us to get an almost accurate DOM definitions without having to update them manually. We plan on updating how the dom typings are generated but for now, we can not make hand edits to this file. If you can log a separate issue, i can get it fixed in our script and update the file.

Can you file an issue to track the change

mhegazy,
Thank you for your comment.
I made a new issue #2029 regarding this PR.
I hope what I did is OK.


Clickable steps

Hello,
How can I make the steps clickable? Do you intend to add support for this in the near future?
I've also been wandering if the bullet inside (the current step indicator can be remove/replaced by an selector at the bottom of the circle - like on the TabLayout.Tab current tab indicator)

Hi,
for the clickable step feature, it should be quite easy to implement, just have to set click listener and test event position and compare with each step circle position (which should be stored already in a field so easy).
For the bullet part, don't plan on working that anytime soon sorry :)

Hello,
Thanks for the reply. I've made some changes to your project and I've added the support for click events for the steps already. I'll make a pull request the following days if you want to integrate it.
I am also working on adding support for replacing the bullets with number indicators and adding another way for current step indicator (as the bullet doesn't work for that flow anymore :D). I'll make a separate pull request for that if you want to add it to the project.
Thank you and have a good day.

Awesome!
I'll merge the click events support,
for the "replacing the bullet with number indicator", it'll depend on the implementation, if we can easily switch from one to the other, it should be ok :)

I've created an pull request for the steps click event support:
https://github.com/badoualy/stepper-indicator/pull/12

Great, I'll check that ASAP

Clickable steps done in 1.0.4 :)

Thank you.
I'm working on the other customization now, I hope today to have that ready also :D

Hello,
I've made an pull request for the other changes: https://github.com/badoualy/stepper-indicator/pull/14. Please have a look at it when you have time :D
Thanks.


net: ip: Fix packet flood in 802.15.4 promiscuous mode

When 802.15.4 driver working in promiscuous mode and neighbor
cache enabled, we should drop our own packets, received back after
retransmission
Fixes #26919
Signed-off-by: Eug Krashtan<EMAIL_ADDRESS>

Need to develop another way to fix this.


metadata docker --start with non standard /tmp dir

I currently trying out your work and stumble upon the metadata docker --start requiring a /tmp directory.
from ingestion/src/metadata/cmd.py line 200ff:
...
                open("/tmp/docker-compose.yml", "wb").write(r.content)
                start_time = time.time()
                subprocess.run(
                    f"docker compose -f /tmp/docker-compose.yml up -d", shell=True
                )
...

My systems are a) linux with no /tmp directory at that static location, b) a windows system with its temp folder also not at that location. But the python tempfile module finds the correct location thru its magic either way:
import tempfile
tempfile.gettempdir()

Please consider to make the code in cmd.py more flexible by not using a static folder location for temp files.
Cheers
Carsten

Hey @cons0l3, let me know if you are interested in contributing the effort in any way - code, test, or comment. Thank you for creating this issue.

I will fork and submit a PR, after work ;-).

Yeah, no worries, Thanks🙂


presync feedback loop - subcommand indexing status

Description
After sending UpgradeIntentMessage, a developer can periodically check the indexing status of the new subgraph deployment at the public APIs of the indexers who actively allocates on the current version of the subgraph.
Same arguments here can be used as the argument for UpgradeIntentMessage.
Example usage
cargo run indexing-status --subgraph-id "0x00000444e5a1a667663b0adfd853e8efa0470698-0" --new-hash QmfDJFYaDX7BdwT6rYa8Bx71vPjTueUVDN99pdwFgysDiZ

Expected output

Issue link (if applicable)
Resolves #8
Checklist

[x] Are tests up-to-date with the new changes?
[x] Are docs up-to-date with the new changes? (Open PR on docs repo if necessary)

rebased to latest dev


bug: Text input loses focus when selected

Type: bug
Platform: all
I am actually using Ionic v1.1.1 (the latest) and I found really an annoying issue with text inputs. When I tap on a input to focus it, whole view is scrolled up to accommodate keyboard. The problem is - once a view is moved up, selected input loses focus immediately (and keyboard is still shown) and any words that I type is NOT SEEN in text input.
This is happening in my desktop environment (chrome) as well as in iOS too. This doesn't happen in previous versions of Ionic. (at least v1.0.1)

Yes, I confirm that.

Could you post some code reproducing the issue for you please? Also what version of iOS are you seeing this on?

Hi @tlancina, thank you for your attentions. I already had a fix by disabling all the code lines inside cloneFocusedInput() from ionic.bundle.js... this issue was gone :) It seems this issue is actual across all versions of iOS.

@chriseen, could you share your fix?  Does this happen with the latest version of Ionic?
Thanks,
Dan

In my case even removing the contents of the clonefocusedInput() didn't worked. Please help

Hello,
This is still appearing to be an issue for us. For us its happening with a textarea. The textarea is within a modal.
<ion-modal-view>     <ion-header-bar class="bar-positive">         Comment     </ion-header-bar>     <ion-content>         <textarea             ng-model="text"             ng-readonly="!(isEditing &&                 isAllowEdit)"/>
             <button class="button button-calm button-block"                 ng-show="isAllowEdit && isEditing"                 ng-disabled="isWorking"                 ng-click="onSaveComment($event, selectedComment)">                 okBtn             </button>             <button class="button button-stable button-block"                 ng-disabled="isWorking"                 ng-click="onCloseComment()">                 cancelBtn             </button>
     </ion-content> </ion-modal-view>


Slash Command duplicate and wont change name

So i tried to made a slash command
code:
#Slash Command

slash=SlashClient(Tango())

@slash.command(
    name="echo",
	description="Echo word that you specified",
    options=[
        Option("word", "Specify a word that will get send", Type.STRING, required=True)
    ]
)
async def echo(inter, *,word):
	await inter.reply(word, allowed_mentions=discord.AllowedMentions(everyone=False, users=False, roles=False, replied_user=True))

and it work but, i may found or cause a bug. The slash command name is echo and basically echo an argument but, i accidentally duplicate the command. The echo command and its duplicate work fine but if i remove the command, both name still registered in the bot data and the slash command wont change name if i change the function name, and of course cause errors, one of them is "This interaction failed" and "Invalid interaction application command". My question is, how did the command duplicate and how do i remove it from the bot data?

also i use the latest version of dislash

Try kicking the bot and adding it again. This seems to occur when you're registering a command locally for testing, then registering them again globally.

Try kicking the bot and adding it again. This seems to occur when you're registering a command locally for testing, then registering them again globally.

Alright that work, thanks a lot!


BAU: Fix code smells and improve test coverage

Fix code smells and improve test coverage

Replace public test classes with package-private (default) visibility
Use explicit scoping instead of the default package-private
Remove unused constants and imports
Improve test structure and readability in mapper tests
Add null checks and use Objects.requireNonNull()
Remove empty constructor or add explanatory comment
Use 'final' for variables where appropriate
Simplify test methods by extracting common setup into helper methods

Sonar code smells addressed:

Classes should be defined in named packages
Utility classes should not have public constructors
Unused private fields should be removed
Tests should include assertions
"public" classes and methods should be documented
Variables should not be self-assigned

Type of change

[x] Bug fix

Pull request checklist

[x] I have added unit tests for new code that I have added
[x] I have added/updated functional tests where appropriate
[x] The code follows our coding standards

An exhaustive list of peer review checks can be read here

CI: Security warnings found!

CI: Security warnings found!


Add more armor specialization automation

Skeletal group resistance applied on Armor Expertise and Armor Specialist
Hellknight Dedication special resistance, triggered by

missing-but-implied toggle to indicate character is wearing hellknight plate

Copied base armor specialization REs to Unshaken in Iron with extra predicates to detect armor proficiency. However this does not attempt to handle the extra bonuses from Tenacious Stance yet.

If you rebase your branch, Hellknight Dedication can be done without a toggle by predicating on "armor:slug:hellknight-plate"

Will do!


Native ice phishing - NIP-4 and NIP-7

Hi there,
We have recently been working on a Binance analysis to see how scammers are interacting with the exchange. The process was basically matching scammers labeled by the scam detector with addresses that have received native tokens from binance for mainnet.
When querying those addresses we found some cases that I would like to discuss all were labeled either by the NIP-4 or NIP-7:

0x0e58e8993100f1cbe45376c410f97f4893d9bfcd
0x1a6a80a836b3b7dee660fbc7a5ea1ded367f2d24
0xfe2ffe10ee4f87e191a7d32043296fe023ce5366

These all have same patterns as victims are sending ETH to not only the potential scammer but also to other addresses. IMHO (although the logic seems to be working fine) I don't believe these should be catalogued as scammers, as many txs are too big and as I mentioned these victim are sending eth to multiple addresses. Moreover, I have not seen that these were labeled by any entity or security team.
To conclude, just an observation, these are hard to analyze considering the only thing that I can see is a transfer, impossible to know if these were scam transfers or normal ones (seems like a similar case to PKC). What could we do here? should we think of dismiss native transfer, should we tweak the bot?

After discussing, we have removed NIP-4 and NIP-7 passthrough alerts from the Scam Detector.


Autocomplete: Add feature flags to disable network cache and request recycling

This adds two feature flags to control the request manager behavior:

cody-autocomplete-disable-network-cache: When set, it won't cache completion requests anymore. My theory here is that this optimization is no longer necessary and when the first line of cache (the last candidate logic) does not hit, we actually want a new completion to be generated. This also makes it so that manual completions (which bypass the lastCandidate check) will now cycle through different completions instead of resolving with the same one. Note that this can still return the same completion from the backend in which case our ID deduplication logic will still work.

cody-autocomplete-disable-recycling-of-previous-requests: When set, it will not try to complete inflight requests base on the result of previous network requests. Instead, it will abort requests when they are no longer relevent. This was initially added as a mechanism to save latency but there are a few flaws here:

The context for the previous request might be incorrect: E.g. a single-line request is used to respond to a multi-line reuqest.
This prevents requests from being aborted which increases costs
This adds quiete a bit of complexity
The actual impact of this change was never measured as an A/B test

My theory is that this is still relevant to improve UX and should probably receive fixes for i), however, I want to test if this hypothesis is true and it does indeed meaningfully improve the UX (CAR, Latency)

Test plan
Using the keyboard shortcut to trigger a completion will return one from cache:

With cody-autocomplete-disable-network-cache on, it will do a request:

Writing function bubbleSort( slowly will create a recycled result:

With cody-autocomplete-disable-recycling-of-previous-requests on,  the request will take longer and will not be recycled

@valerybugakov Yeah, I agree!


CommunityPartsTitles

What is wrong there?

Looks like it was caused by a byte order mark:
NetKAN/CommunityPartsTitles.netkan:1:0: Warning: JSON document was prefixed by a BOM (Byte Order Mark): '\xef\xbb\xbf'
   |  At line 1, column 0, offset 0 (AT-START)

Removing the character before the open brace seems to have fixed it.
Thanks for the submission! Merging...


Alter workspace tags

Fixes deprecation error warning:
keymaps/ask-stack.cson
Use the atom-workspace tag instead of the workspace class.

Will release v0.1.1 with this soon.


Fix exception: post_build hook takes the region as the 3rd arg

python doesn't like it when you pass 3 args and 4 are required :)

Thanks!


Multiple Extended Stats aggregations are not parsed correctly in ISearchResponse object

I have a use case where I need to do aggregation on multiple columns using C#. I am using NEST libraries for this and I am facing the following issue
Query C# :
var searchRequest = new SearchRequest
{
SearchType = SearchType.Count,
Query = query,
Aggregations = new Dictionary<string, IAggregationContainer>
{
{ "a", new AggregationContainer
{
ExtendedStats = new ExtendedStatsAggregator()
{
Field = "a"
}
}
},
{ "b", new AggregationContainer
{
ExtendedStats = new ExtendedStatsAggregator()
{
Field = "b"
}
}
}
}
};
When I receive response from NEST, however I am getting only result for one aggregation. I am looking at SearchResult.Agg dictionary but it has only one entry for one aggregation field instead of two. Let me know if I am missing soemthing or is it some issue with NEST libraries
When I print the SearchResponse.ConnectionStatus I can see that both the aggregations are returned. The problem I am facing is that my SearchResults.Aggs.ExtendendStats() has only details of first aggregation.
Some how the deserialization in NEST is dropping the second aggregation though the response correctly came from ES

@riksteiner thanks for reporting this!  I just pushed a fix.


请问PAD模块是被分散到rpn中了吗？我看了proposal_generator,并没有找到和advisor相关的代码，是我漏看了哪一部分吗

The PAD module is implemented in ./detectron2/modeling/roi_heads/roi_heads.py


Peek Activation Shortcut

Description of the new feature / enhancement
At this moment, all tools in PowerToys require a keys combination, and that is generally fine. However, sometimes one key should do, and it won't cause any conflicts.
Consider this: a file is selected (in Explorer) and the user is pressing Space. What else can happen? Nothing. the Space key doesn't interact in any other way in that context, but it could work great as a preview shortcut.
Moreover, there could be an option in Peek settings, to close the window when Space is released.
Scenario when this would be used?
The feature would be extremely useful when navigating a lot of files, let's say images, but it would work equally good for documents, or other kind of files, and there is a need to quickly check the content of the file, without spending much time on it. Images do have thumbnails, but at times a larger quick view may be needed. And whilst the current configuration of Peek works acceptably, there is no absolute reason why a Key Combination is necessary for the Activation.
KISS (Keep It Simple, Stupid)
Supporting information
The feature is working great for macOS. I see no reason why windows users would be stubborn and refuse to implement great UX/UI features.

Duplicate of #26581 . I totally agree that Space should be allowed in the context of Explorer and maybe even the Desktop. It would improve usability immensely (at least for me) after having used QuickLook for so long.

/dup #26143


function type in union type not work?

type fn = (param: number) => string

// works
type t1 = string | fn

// not works, why？
type t2 = string | (param: number) => string

But this is OK(with brackets()):
type fn = (param: number) => string

// works
type t1 = string | fn

// It's OK
type t2 = string | ((param: number) => string)

This maybe confused, the same code express different meanings.
type t2_maybe_1 = string
    | (param: number) => string
    | number

type t2_maybe_2 = string
    | (param: number) => string | number

Concerns over visual ambiguity.
type Foo = () => string | () => number;

could be parsed as
type Foo = () => (string | () => number);

which isn't always what people want.
It doesn't protect against all the cases, but it's what we felt we could cover.
The fact that you don't get a good error message - now that's a terrible experience...

Check out https://github.com/microsoft/TypeScript/issues/39548 to track making the error UX better here.

You should now get a nicer error message thanks to #39570 by @uhyo.

@DanielRosenwasser Nice work, thx~


Could not initialize class ai.djl.onnxruntime.engine.0rtNDManager

i ues djl in k8s.And Sometimes startup will report this error：Could not initialize class ai.djl.onnxruntime.engine.0rtNDManager.I've asked you to develop it before and comment out pytorch in maven and use this code : System.setProperty("ai.djl.onnx.disable_alternative","true");.And report this error:java.lang.UnsupportedOperationException: This NDArray implementation does not currently support this operation.

When you usine on K8s, are you using DJLServing? We have kserve integration for DJLServing.
If you set ai.djl.onnx.disable_alternative, you should not use use OnnxRuntime engine to do any NDArray operations for pre/post processing. See: https://docs.djl.ai/docs/hybrid_engine.html
Can you provide more detail about use case, configuration and any code that can reproduce your error?

I found that the other way doesn't report this error, when k8s starts the service, if the network is open, it will download the following:
2024-02-20 17:50:31.784  INFO 7 --- [9:8816-thread-2] ai.djl.pytorch.jni.LibUtils              : Downloading https://publish.djl.ai/pytorch/1.13.1/cpu/linux-x86_64/native/lib/libc10.so.gz ...
2024-02-20 17:50:33.111  INFO 7 --- [9:8816-thread-2] ai.djl.pytorch.jni.LibUtils              : Downloading https://publish.djl.ai/pytorch/1.13.1/cpu/linux-x86_64/native/lib/libtorch_cpu.so.gz ...
2024-02-20 17:51:52.903  INFO 7 --- [9:8816-thread-2] ai.djl.pytorch.jni.LibUtils              : Downloading https://publish.djl.ai/pytorch/1.13.1/cpu/linux-x86_64/native/lib/libtorch.so.gz ...
2024-02-20 17:51:53.157  INFO 7 --- [9:8816-thread-2] ai.djl.pytorch.jni.LibUtils              : Downloading https://publish.djl.ai/pytorch/1.13.1/cpu/linux-x86_64/native/lib/libgomp-52f2fd74.so.1.gz ...
2024-02-20 17:51:53.871  INFO 7 --- [9:8816-thread-2] ai.djl.pytorch.jni.LibUtils              : Downloading jni https://publish.djl.ai/pytorch/1.13.1/jnilib/0.23.0/linux-x86_64/cpu/libdjl_torch.so to cache ...
. But I'm in a network-free environment right now,  so it will occurred this error:
java.lang.NoClassDefFoundError: Could not initialize class ai.djl.onnxruntime.engine.OrtNDManager
and I want to put these LibUtils packages into the jar package, Or do you have a better way?

When you usine on K8s, are you using DJLServing? We have kserve integration for DJLServing.
If you set ai.djl.onnx.disable_alternative, you should not use use OnnxRuntime engine to do any NDArray operations for pre/post processing. See: https://docs.djl.ai/docs/hybrid_engine.html
Can you provide more detail about use case, configuration and any code that can reproduce your error?

You need use offline PyTorch library in your project. See: https://docs.djl.ai/engines/pytorch/pytorch-engine/index.html#linux-cpu
You can also consider create a fatjar, you can follow this example: https://github.com/deepjavalibrary/djl-demo/tree/master/development/fatjar#how-to-distribute-djl-application

ok thank you ，i will try after


reshape_param { shape { dim: [-1, 1, 3, 101] } }

Hello, @yjxiong @wanglimin
I have a question.
In line 790 of ucf101/tsn_bn_inception_rgb_train_val.prototxt:
layer { name: "reshape_fc" type: "Reshape" bottom: "fc" top: "reshape_fc" reshape_param { shape { dim: [-1, 1, 3, 101] } } }
here, the 3 means 3 axis of RGB?
thank you.

No. This is for the 3 segments.

Thank you very much.
I got it.

Closing this. Please feel free to reopen it if you meet any further problem.


Facade proxy support

This PR ships in laravel facade static call magic support.
Facade::setContainer($rade = new Container());

$rade['service'] = new Service();
$rade['service.one_factory'] = new ServiceTwo();

$facadeProxy = new FacadeProxy($rade);
$facadeProxy->proxy('service', 'service.one_factory');

// Access by calling
$servie = Facade::service();
$serviceTwo = Facade::serviceOneFactory();

Codecov Report

Merging #19 (3f1e780) into master (c50edf5) will increase coverage by 5.37%.
The diff coverage is 87.27%.

@@             Coverage Diff              @@
##             master      #19      +/-   ##
============================================
+ Coverage     61.61%   66.99%   +5.37%
- Complexity      423      442      +19
============================================
  Files            17       20       +3
  Lines           865      906      +41
============================================
+ Hits            533      607      +74
+ Misses          332      299      -33

Impacted Files
Coverage Δ
Complexity Δ

src/ContainerBuilder.php
20.00% <0.00%> (+20.00%)
50.00 <0.00> (-2.00)
:arrow_up:

src/Facade/Facade.php
75.00% <75.00%> (ø)
4.00 <4.00> (?)

src/Builder/CodePrinter.php
85.71% <85.71%> (ø)
6.00 <6.00> (?)

src/Facade/FacadeProxy.php
96.77% <96.77%> (ø)
11.00 <11.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 c50edf5...3f1e780. Read the comment docs.


Buy-page added

Buy-page UI & integration working...

Context for Bonding Curve:
openBuyOrder is used to initiate the buy process.
claimBuyOrder is used to initiate the buy claim once the waiting period is over.
openSellOrder is used to initiate the sell process.
claimSellOrder is used to initiate the sell claim once the waiting period is over.
You can see the contract here: https://github.com/Sovryn-Origins/bootstrap-continuous-tokens/blob/master/contracts/MarketMaker.sol

And pls remove the compile warnings like unused variables as much as possible.


Create prompt_injection_scanner.py

Direct injection attempts
Indirect/social engineering attempts
Delimiter-based attacks
Encoded/obfuscated attacks
System prompt leakage attempts

closes #7


Flow router support

Can you please provide support for flow router?
Thanks

Hey, I'm not sure how much sense this makes... how would you envision such support working?


chore: add codesandbox ci

ref: https://github.com/poteboy/kuma-ui/issues/208#issuecomment-1633409968

🎉


SigPloit install requirements.txt failed

Hi there, i have a Problem with installing SigPloit requirements.txt.
the Output and error message is:
~/SigPloit# sudo pip2 install -r requirements.txt
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Requirement already satisfied: colorama>=0.3.9 in /usr/local/lib/python2.7/dist-packages (from -r requirements.txt (line 1)) (0.4.1)
Requirement already satisfied: pyfiglet>=0.7.5 in /usr/local/lib/python2.7/dist-packages (from -r requirements.txt (line 2)) (0.8.post1)
Requirement already satisfied: termcolor>=1.1.0 in /usr/local/lib/python2.7/dist-packages (from -r requirements.txt (line 3)) (1.1.0)
Requirement already satisfied: configobj>=5.0.6 in /usr/lib/python2.7/dist-packages (from -r requirements.txt (line 4)) (5.0.6)
Requirement already satisfied: IPy>=0.83 in /usr/lib/python2.7/dist-packages (from -r requirements.txt (line 5)) (0.83)
Collecting pysctp>=0.6 (from -r requirements.txt (line 6))
Using cached https://files.pythonhosted.org/packages/68/4f/8a11fd73939cb9a453aca3a11e88bc042656dc4b3865661da5121ba4bef0/pysctp-0.6.tar.gz
Building wheels for collected packages: pysctp
Building wheel for pysctp (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-Bg4ZzO/pysctp/setup.py'"'"'; file='"'"'/tmp/pip-install-Bg4ZzO/pysctp/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-tRVIF_ --python-tag cp27
cwd: /tmp/pip-install-Bg4ZzO/pysctp/
Complete output (15 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
copying sctp.py -> build/lib.linux-x86_64-2.7
running build_ext
building '_sctp' extension
creating build/temp.linux-x86_64-2.7
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-Ra3Yar/python2.7-2.7.16=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I. -I/usr/include -I/usr/include/python2.7 -c _sctp.c -o build/temp.linux-x86_64-2.7/_sctp.o
_sctp.c:11:10: fatal error: netinet/sctp.h: No such file or directory
#include <netinet/sctp.h>
^~~~~~~~~~~~~~~~
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
ERROR: Failed building wheel for pysctp
Running setup.py clean for pysctp
Failed to build pysctp
Installing collected packages: pysctp
Running setup.py install for pysctp ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-Bg4ZzO/pysctp/setup.py'"'"'; file='"'"'/tmp/pip-install-Bg4ZzO/pysctp/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record /tmp/pip-record-Tu4fKg/install-record.txt --single-version-externally-managed --compile
cwd: /tmp/pip-install-Bg4ZzO/pysctp/
Complete output (15 lines):
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
copying sctp.py -> build/lib.linux-x86_64-2.7
running build_ext
building '_sctp' extension
creating build/temp.linux-x86_64-2.7
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-Ra3Yar/python2.7-2.7.16=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I. -I/usr/include -I/usr/include/python2.7 -c _sctp.c -o build/temp.linux-x86_64-2.7/_sctp.o
_sctp.c:11:10: fatal error: netinet/sctp.h: No such file or directory
#include <netinet/sctp.h>
^~~~~~~~~~~~~~~~
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-Bg4ZzO/pysctp/setup.py'"'"'; file='"'"'/tmp/pip-install-Bg4ZzO/pysctp/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record /tmp/pip-record-Tu4fKg/install-record.txt --single-version-externally-managed --compile Check the logs for full command output.
Can anybody tell me what i do wrong?
Thx in advance!

Não necessariamente você precisa instalar, se sua máquina já tem python é só você executar " python sigploit.py "

Try this command: sudo apt-get install libsctp-dev
Then try to run compilation again: sudo pip2 install -r requirements.txt
Let me know if that works for you

Yes Man, that works!
Thank you


Fix block quote marker seen as adornment

This fixes an edge case where a blockquote marker on a line just after a
paragraph is seen as an adornment and thus lead to a section being seen.
I found a couple of case in a few library with this.
I think a better fix would be to look back at the title length (is it
possible ? ), or maybe even to require titles to be at least 3 in length
?

Hi, thanks for  the PR! I think you are trying to fix https://github.com/stsewd/tree-sitter-rst/issues/27?
I think we may need to check other things other than just the length of the adornment, some examples (parsed using docutils):
On
::
   Block

On
::

   Block

Those are interpreted as a title followed by blockquote (as currently parsed), this is also true if the length of the adornment is greater than 2 or if the length of the title is 1.
But, things get interesting when the title is greater than 2

This errors (test.rst:3: (ERROR/3) Unexpected indentation)

One
::
   Block

This is interpreted as a paragraph with literal block

One
::

   Block

which is the same as writing
One ::

   Block

This is also invalid (test.rst:4: (WARNING/2) Literal block expected; none found)
One
::

Block

So, looks like we need to check if the length of the title is greater than 2 and the length of the adornment is two (::).

Hi, thanks for the PR! I think you are trying to fix #27?

Yes, that is correct. And yes I couldn't really figure out how to compare the title length to the adornment length.
I believe the adornment are supposed to be as long as, if not longer than the title, and ai think docutils have some leeway on that, and of course if your title is 2 chars or less things can become ambiguous.


UI Decor

Summary
Currently, the leadership page is just a series of tiles that represent each officer on the homepage. We'd like to make this look a little bit nicer by adding some elements to the website to give it a more complete appearance.
Task List

[ ] Add navbar
[ ] Add header
[ ] Add footer & some padding at the bottom
[ ] Tidy up tiles so that they look more uniform
[ ] Add a search bar in the navbar
[ ] Add dark mode
[ ] Include an about section, a learn more section, a leaders section & a principles section in the navbar, fill out with some good content

Additional Context
Most of these changes are for aesthetic purposes, we want our leadership site to look really nice.

What would be on the navbar other than the search bar?

@NickBurnett See the list of bullet points (the last one)


suggestion: concrete5 CMS

https://www.concrete5.org/help/legal/logo_usage/

Added 0e0da699bc1350f1dcb1317eaf1771ef3f7c9b01


Adds exercises-doobie library

This PR adds a new section that contains exercises for doobie library.
@raulraja @dialelo Could you take a look please? Thanks

LGTM @MaureenElsberry We are merging this soon after the FPis exercises. Can you coordinate with @jorgegalindocruces for posts and other announcements? thanks.


Better capturing of Ctrl+C behavior

Details about the quacc environment
N/A
What is the issue?
When running a sample recipe (e.g. TBLite's relax_job), doing Ctrl+C doesn't escape the entire process.
How can we easily reproduce the issue?
N/A

This was an upstream issue with tblite.


[multistage] [enhancement] Split row data block when row size is too large

Split data block when the size is too large (exceeds grpc limit).
Set the limit to 4M for now.
The size is estimated from row size in bytes.
Columnar block split is not supported for now.

Codecov Report

Merging #9485 (649a4b2) into master (189fa18) will decrease coverage by 1.44%.
The diff coverage is 67.08%.

@@             Coverage Diff              @@
##             master    #9485      +/-   ##
============================================
- Coverage     68.72%   67.28%   -1.45%
- Complexity     4860     5015     +155
============================================
  Files          1924     1425     -499
  Lines        102425    74466   -27959
  Branches      15542    11886    -3656
============================================
- Hits          70392    50101   -20291
+ Misses        26994    20748    -6246
+ Partials       5039     3617    -1422

Flag
Coverage Δ

integration1
?

unittests1
67.28% <67.08%> (+<0.01%)
:arrow_up:

unittests2
?

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

Impacted Files
Coverage Δ

...perator/dociditerators/ScanBasedDocIdIterator.java
0.00% <0.00%> (ø)

.../predicate/NotEqualsPredicateEvaluatorFactory.java
54.46% <0.00%> (-25.35%)
:arrow_down:

...lter/predicate/NotInPredicateEvaluatorFactory.java
63.38% <0.00%> (-14.98%)
:arrow_down:

.../operator/filter/predicate/PredicateEvaluator.java
0.00% <0.00%> (-25.00%)
:arrow_down:

...ocal/segment/index/datasource/EmptyDataSource.java
0.00% <0.00%> (ø)

...nt/local/startree/v2/store/StarTreeDataSource.java
37.50% <0.00%> (-2.50%)
:arrow_down:

...not/segment/spi/datasource/DataSourceMetadata.java
100.00% <ø> (ø)

...va/org/apache/pinot/spi/utils/CommonConstants.java
24.65% <0.00%> (-0.35%)
:arrow_down:

...ter/predicate/EqualsPredicateEvaluatorFactory.java
78.57% <12.50%> (-5.88%)
:arrow_down:

.../filter/predicate/InPredicateEvaluatorFactory.java
69.92% <12.50%> (-12.48%)
:arrow_down:

... and 744 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

May be add a TODO to split columnar block as well in future

To confirm - metadata block / error block / eos block are not split right ?

Confirmed offline. Only Row data block at this point


How do I transform from Day to firestore.timestamp or Date?

Use  date.toDate() method to covert timestamp into date

Use date.toDate() method to convert timestamp to date


Translate into other languages

Here is the list of languages we would like to support at this stage:

[x] English
[ ] German

This issue is blocked by all other content related issues though as translating a non-finished text is kinda pointless 😄


Corrected Linguist README

Hey, I just made a Pull Request!
In PR #14718 that added the Linguist plugin we decided to remove the refresh feature to be added back at a later time. Unfortunately the frontend README was not updated. This PR corrects this.
:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[x] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

Hi @Rugvip, any chance you can give this a quick approval and merge? Just some documentation updates to reflect the current state, don't want people looking for a feature that isn't in place yet. Thanks in advance! 🚀


Update pyproject.toml

Codecov Report

Merging #6 (9dfe638) into main (ca650df) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main       #6   +/-   ##
=======================================
  Coverage   99.63%   99.63%
=======================================
  Files          14       14
  Lines         819      819
=======================================
  Hits          816      816
  Misses          3        3

Flag
Coverage Δ

pytest
99.63% <ø> (ø)

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

Continue to review full report at Codecov.

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


REST API Depricated ???

what does it mean ??

How to download the latest REST API

/needsMoreInfo

There is no REST api for vscode. Please update this issue with actionable information. Thanks


Open in Browser Tamer should show the choose browser windows

Installed Browser Tamer (default = Chrome)
Installed in Chrome the extension
What i expected what would happen that the icon "Open in Browser Tamer" or right-menu on a link> "Open in Browser Tamer" would open the browser chooser?
Did i set this up correctly or can i modify the extension to work like this?

Chrome extension simply sends the link to Browser Tamer, and it handles the link depending on configuration you have created.
If your default browser is Chrome and there are no rules configured, it will just open the link in Chrome, which is what is happening anyway from my understanding?
You can configure BT to always show browser picker, or when certain keys are held (which is the default). More about this here: https://aloneguid.github.io/bt/picker.html

I want to push the picker to come up and choose a different profile. So no rule but manually. Is this a big modification?

i can modify the extension to add a second menuitem and modify:
const destUrl = BtProtoPrefix + url
to
const destUrl = BtProtoPrefix + '?' + url
but have no knowledge of c++

From what I understand, you just need to set Browser Picker Mode to "always ask":

sadly that only works from windows or apps in windows. From the browser we are missing the option to start the browser picker mode..

I have just tried and it works as advertised. Remember that BT can only intercept links if you click browser toolbar button or right-click a link and press "open with browser tamer". At least at the moment.


Add Queue using circular array

🚀 Feature
Have you read the Contributing Guidelines on Pull Requests?
Yes
Motivation
It is a linear data structure which follows a particular order (First in First out) and used almost everywhere .
Pitch
Queue is used to solve many real life problem. Some of its best applications are ticketing system. synchronization between slow and fast device and many more.

I would like to work on this issue in C

I wuould like to work on this issue in java.. kindly assign me..

I would like to work on this issue in C++ as a part of Hackin Codes 2020


Consider adding https://wiby.me/ https://mwmbl.org/

via https://syllabusproject.org/syllabus-for-taking-an-internet-walk/

Merging with #24


unittest: switch to using top dir since test ids are relative to it

fixes https://github.com/microsoft/vscode-python/issues/21267

going to wait until after we return from vacation to merge this to limit potential bugs over the break.


chore: adds toolchain.toml for nightly channel

Describe the problem or feature in addition to a link to the issues.
Adds a toolchain.toml file to specify the requirement on the nightly toolchain to build the source. Resolves #8
Before submitting this PR, please make sure:

[x] You have added a few sentences describing the PR here.
[x] You have added yourself or the appropriate individual as the assignee.
[x] You have added at least one relevant code reviewer to the PR.
[x] Your code builds clean without any errors or warnings.
[ ] You have added tests (when appropriate).
[ ] You have updated the README or other documentation to account for these changes (when appropriate).

Looks good, thank you so much!


net/http/pprof: missing documentation of the "seconds" parameter

cc @aalexand
$ go version
Go 1.21-dev

What did you do?
Navigate to https://pkg.go.dev/net/http/pprof and read.
What did you expect to see?
I expected to see a mention of the "seconds" parameter for all profiles types that implement delta profiling:
https://github.com/golang/go/blob/508f445a28b08ed8c881572652c47139e669c19d/src/net/http/pprof/pprof.go#L341-L348
What did you see instead?
No mention. This feature was first worked on in https://github.com/golang/go/issues/23401 AFAICT. It's been in Go for a while.

CC @golang/runtime
The current owners are Cherry and Russ, but should probably just be a compiler/runtime team-owned package, since it has much more to do with runtime/pprof than net/http.

Actually, the "seconds" parameter is mentioned in a few places, e.g. https://pkg.go.dev/net/http/pprof#Trace. It's also mentioned in examples. What else should change? Is it just that it's missing on some of them? Profile also mentions it.
Maybe what you're suggesting is better clarity? Like a full list of endpoints (not examples) and their parameters?

It would be good to have a way for a reader to know what profiles accept what parameters. For example, the "seconds" parameter was not respected by the mutex handler in the past, and then it was added. It would be good to have this reflected in the docs.


Question about ch7

Hi Praveen,
I have a basic question about the Ch7. I am interested to collect some observations and actions in CARLA similar to the gym environment. To achieve that goal, one can use the following simple code. But running this leads to following error:
 File "environment/carla_gym/envs/carla_env.py", line 326, in step_env
action = DISCRETE_ACTIONS[int(action)]
TypeError: only size-1 arrays can be converted to Python scalars
from environment import carla_gym
env = gym.make("Carla-v0")
def pick_random_action(t, current_action):
#     a = env.action_space.sample()
#     return a
    if t < 60:
        return np.array([0,1,0])

    if t % 5 > 0:
        return current_action

    rn = random.randint(0,9)
    if rn in [0]:
        return np.array([0,0,0])
    if rn in [1,2,3,4]:
        return np.array([0,1,0])
    if rn in [5,6,7]:
        return np.array([-1,0,0])
    if rn in [8]:
        return np.array([1,0,0])
    if rn in [9]:
        return np.array([0,0,1])

action = np.array([0,1,0])
for i_episode in range(500):
    print('-----')
    observation = env.reset()
    #env.render()
    t = 0
    done = False
    obs_sequence = []
    action_sequence = []
    while t < 300:
        t = t + 1
        action = pick_random_action(t, action)

        observation = observation.astype('float32') / 255.

        obs_sequence.append(observation)
        action_sequence.append(action)

        observation, reward, done, info = env.step(action)

    obs_data.append(obs_sequence)
    action_data.append(action_sequence)

    print("Episode {} finished after {} timesteps".format(i_episode, t+1))
    print("Dataset contains {} observations".format(sum(map(len, obs_data))))

Do you know how can I fix it?

Hi Ali,
The error is because in your code snipped, action is a 3 dimensional array instead of an integer.
As documented here , when "discrete_actions" is set to true (the default), the action space of the Carla-v0 environment is Discrete(9).
Therefore, you can simplify your pick action function something like below:
def pick_random_discrete_action(t, current_action):
#     a = env.action_space.sample()
#     return a
    if t < 60:
        return np.array(3)  # Go forward

    if t % 5 > 0:
        return current_action

    rn = random.randint(0,9)
   return rn

To see what each discrete action means, please refer to the table here.
If you want to use the continuous action space, you can set the "discrete_actions": False here:
https://github.com/PacktPublishing/Hands-On-Intelligent-Agents-with-OpenAI-Gym/blob/df9ab3984237b3a02998e2c3d3df482f557945f9/ch7/carla-gym/carla_gym/envs/carla_env.py#L70-L72
and then provide a 2 dimensional action (example: np.array([0, 1]) ) to the env.step(...) function. The definitions for the continuous action space is listed here.
Hope that helps.

Hi Praveen,
Do you have some thoughts for the last tread?
Thanks.

@AliBaheri: Is your question answered?

Author provided the solution. Reopen if you want to continue discussion.


Unable to use RegExp object to define routes

I'm trying to use:
router.ws(new RegExp('^/([0-9]{6})$'), function (ws, req) {
// do stuff
});

But it's throwing an error on line 18 of websocket-url.js because it's always assuming a string:
/* The following fixes HenningM/express-ws#17, correctly. */
function websocketUrl(url) {
  if (url.indexOf('?') !== -1) {
    var _url$split = url.split('?');

    var _url$split2 = _slicedToArray(_url$split, 2);

    var baseUrl = _url$split2[0];
    var query = _url$split2[1];

    return (0, _trailingSlash2.default)(baseUrl) + '.websocket?' + query;
  }
  return (0, _trailingSlash2.default)(url) + '.websocket';
}

Hmm, this is actually a non-trivial thing to fix.
The problem is that to integrate with Express, express-ws will create a 'fake' suffixed GET route that applies all the specified middleware, before actually doing anything with the WebSocket. To create this fake route, it must add a suffix like .websocket at the end, to make sure it doesn't conflict with existing routes.
However, in the case of a regular expression, you can't just "add a string at the end". While it might be possible to implement this, it would involve a very carefully written regex-aware implementation of the suffixing code.
This is complicated by the fact that Express has multiple route formats, not all of which are documented, including a string-based regex-containing one.
I might take a crack at this in the future when I can find the time, but for now the easiest workaround would be to just use string-based route parameters, and handle 'validation' of the parameters within the route itself.

I agree @joepie91 and that's what I've done for now. I did consider updating the code and issuing a pull request, but like you, I realized it was going to be quite a bit of work and a few unit tests.
Likewise, if I find some free time I'll take a look at it - I'll let you know first of course.


[9.4.x] ISPN-9809 Added version.component.console

To avoid patch conflicts with downstream every time console gets updated!

https://issues.jboss.org/browse/ISPN-9809

@pruivo Are you going to create this for master as well?

@ryanemerson yes :)


Feature request: Choke groups for MultiPlayer

Humble feature request:
It might be a nice addition to be able to specify choke groups, making the playback of certain buffers in a MultiPlayer mutually exclusive.
The most common use case would be choking an open hi-hat with a closed-hat and vice versa.
I could also see the argument for leaving this as the responsibility of the client to implement around the MultiPlayer.

@tambien I might give this one a whack if no one else has scooped it up. Been looking for a good excuse to contribute lately.

Thanks for your offer @k23Burke but i've decided to deprecate MultiPlayers in favor of a new class called Tone.Players which hopefully fixes a lot of the API issues that people were having with MultiPlayers. I wouldn't want you to waste your time implementing a feature on a deprecated class, but i am curious about what sort of API both of you were imagining to deal with choke groups, maybe this is something that can make it's way into Tone.Players

After thinking about this a bit more, I feel like it makes more sense to leave this to the client. I feel like it might be a weird addition to a fairly generic class like Tone.Players.

Yeah, I started playing around with the MultiPlayer class and noticed some bugs concerning the stopAll and state functionality.  I'll throw a PR into the dev branch in case you want to pull it in.
My original thought for implementing choke groups was to allow the choke index to be passed on instantiation of the new object.
var drumMachine = new Tone.Players({
  'kick': {
    'url': '...',
  },
  ...
  'closed-hi-hat': {
    'url': '...',
    'chokeGroup': 0,
  },
  'open-hi-hat': {
    'url': '...',
    'chokeGroup': 0,
  },

However, if you are hoping to create buffers similar to MultiPlayer it might not be as smooth. If we forgo including it in the instantiation we could still use the below method to add/edit/remove chokes.
A buffers chokeIndex can be updated via a method, drumMachine.updateChoke('kick', 0), potentially with a null value representing a buffer that will not be choked. Internally there would have to be both a way to look up the chokeIndex of a buffer as well as a way to provide the other buffers at that index. It gets tricky when you think about scheduling sounds in the future and how to choke each buffer appropriately.
i.e. drumMachine.start('closed-hi-hat', 300).start('open-hi-hat', 250) feels like it would output "closed-hi-hat start playing at 300, open-hi-hat stop at 300, open-hi-hat start at 250, and closed-hi-hat stop at 250" which seems alright given this instance but could get hairy when there are several items in a single chokeGroup. It could lead to multiple "stop playing" call on buffers that are not active.

MultiPlayer has been deprecated in r11 so i am going to close this.
Interesting feature request tho. We can continue the discussion and try to find an intuitive API for it that we can fit into another class.


Added option to ignore case for enum values. Fixed failing to write t…

…o stream bug

@ahismaeel Can you add some tests for enum case insensitivity? Also, how can the "failing to write to stream" bug be reproduced? Can you write some tests for that?

Looks good, thanks!

Thanks for the pull request! This has been published to nuget - version 0.3.3.


Feature Request: set which input field has the focus

Hi Bart, I don't know if this is possible, but I've had a request to apply the focus to a specific input field in a dialog when it appears. Specifically, in this example, the first field (username) is pre-filled, though overwritable when necessary, and ideally the second field (password) would have the cursor ready in it for input.

Fine if it's not possible, I'm just passing on the message :-)

I've played with this for a bit and it will require swiftDialog to drop support for macOS 11.
That's not something I want to do at this time, at least it's not something I'm planning for the next release. This will have to wait until then.

Totally fair enough. macOS 11 support is pretty essential for erase-install anyway. Thanks for looking into it!


Bugfix/home page typo

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: ssipola sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


MeshOutline that works with depth sorting

Describe the problem
It would be really neat to be able to use properly sorted depth with a mesh outline, in order to render hands using a nice outline, like so:

However, it gets wonky when other objects are involved:

Describe the solution you'd like
Out-of-the-box support for mesh outlines that respect depth.
Describe alternatives you've considered
A depth pre-pass/multi-pass shader should be able to do this.

You might be able to solve the issue in the bottom screenshot by rendering the hand at the end of the frame (in the overlay  queue or manually with a URP render object feature).
But I agree this should work better out-of-the-box. We'll see if we can come up with a solution!

Related issue: https://github.com/microsoft/MixedRealityToolkit-Unity/issues/9630

Current plan is to add a checkbox to the inspector to automatically enable stencil based workflows.

To mention one important architectural requirement as discussed:
The solution should work without restricting the design of the scene, specifically it should not add requirements to
the materials used in the scene.
One way to achieve this may to move the stencil testing functionality shown in the above screenshot on left-hand side (on Gray material) could be moved to a tertiary invisible materials, added by MeshOutline. The primary material of the body could then be untouched whatever it may be.

Totally agree @NorbertNemec, we'll make sure to add an option for a third material in charge of stencil writing.


Fix test failure under windows

could you elaborate a bit more, why this is actually an issue and why this fixes it. Actually it would be best to have a Karaf Jira issue with it :-)

Hi,
On my Win7 box the jmx bean name "java.lang:type=OperatingSystem" only returns 15 entries in the map instead of the asserted 17 or more.
{FreePhysicalMemorySize=4748345344, FreeSwapSpaceSize=11558137856, AvailableProcessors=2, ProcessCpuLoad=-1.0, TotalSwap
SpaceSize=17109192704, type=jmx, ProcessCpuTime=904805800, Arch=amd64, Name=Windows 7, SystemLoadAverage=-1.0, TotalPhys
icalMemorySize=8555536384, CommittedVirtualMemorySize=268853248, ObjectName=java.lang:type=OperatingSystem, Version=6.1,
 SystemCpuLoad=1.0}


Swift 2.3 supports

Fixed some code that's not compatible with Swift 2.3

Wo~ Thanks~ I forgot Swift 2.3...


Added reconnect_backoff_max_ms option to set maximum reconnection time...

...to exponential reconnection backoff

Seen it after but I moved reconnect_backoff_ms option datatype from string to number for coherence with reconnect_backoff_max_ms option.
To avoid two major version changes, it may be better to merge this after: https://github.com/logstash-plugins/logstash-input-kafka/pull/309  because it correct all misleading options datatypes.