ci(devenv): fully build SOLVCON with devenv

The latest devenv begins to support SOLVCON build fully
https://github.com/solvcon/devenv/pull/91 . It means that conda is not
necessary anymore. Thus we can run our CI with devenv fully without
conda.

Since the CI for now will take much longer time if we build many packages with devenv. We may talk about the CI trigger policies of SOLVCON and devenv. For example, after landing this pull request, the next step could be :

trigger devenv launch solvcon CI as daily build and pull request
trigger unittest CI for each code push only
trigger SOLVCON CI with devenv launch solvcon as daily build and pull request
trigger smaller test cases for each code push only

...vise versa.


Add validation enforcing that network subdomain adheres to RFC 1035

Fixes #277
cc @kannon92 what do you think of this? It seems a bit odd that we are validating against 2 different RFC standards for the subdomain name, since it's used as both as the service name and subdomain name, but this may be simpler than finding a new way to derive a service name and validating that?

/hold
target for v0.3.0 release?

/retest

/hold cancel


Add option in matcher to directly accept PIL images or image paths

Adding this feature to the library would benefit users by enabling them to preprocess images before passing them directly to the method.

Very useful feature. Would make things easier when this gets merged : )

Thanks, working.


remove unused parser code

window, windowframe, frameboud are not used

Codecov Report

Merging #5012 into master will increase coverage by 0.24%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #5012      +/-   ##
============================================
+ Coverage     82.02%   82.26%   +0.24%
+ Complexity    10662    10657       -5
============================================
  Files          1294     1291       -3
  Lines         44609    44477     -132
  Branches       5669     5650      -19
============================================
- Hits          36590    36589       -1
+ Misses         5351     5223     -128
+ Partials       2668     2665       -3

Impacted Files
Coverage Δ
Complexity Δ

...ava/io/crate/sql/tree/DefaultTraversalVisitor.java
12.25% <ø> (+1.14%)
9 <0> (ø)
:x:

.../src/main/java/io/crate/sql/parser/AstBuilder.java
93.86% <ø> (+2.17%)
225 <0> (ø)
:x:

...rc/main/java/io/crate/sql/ExpressionFormatter.java
80% <ø> (+10.09%)
2 <0> (ø)
:x:

...er/src/main/java/io/crate/sql/tree/AstVisitor.java
31.35% <ø> (-0.05%)
37 <0> (-1)

...va/io/crate/operation/projectors/DMLProjector.java
77.77% <0%> (-14.82%)
5% <0%> (-1%)

...rc/main/java/io/crate/analyze/UnboundAnalyzer.java
75% <0%> (-10%)
2% <0%> (ø)

...tor/transport/distributed/SingleBucketBuilder.java
66.66% <0%> (-9.53%)
6% <0%> (-1%)

...transport/executionphases/ExecutionPhasesTask.java
83.17% <0%> (-9.35%)
20% <0%> (-3%)

...ate/operation/projectors/SortingTopNProjector.java
90% <0%> (-5%)
13% <0%> (-1%)

...ava/io/crate/jobs/AbstractExecutionSubContext.java
84% <0%> (-4%)
17% <0%> (ø)

... and 26 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 5826e43...2b30ca3. Read the comment docs.


New VSTOR version link

New VSTOR version is released last month, as security update
https://support.microsoft.com/help/5029497
if it is possible to update "Visual Studio 2010 Tools for Office runtime" setup download link to the latest
or better use permalink:
http://go.microsoft.com/fwlink/?linkid=140384 or https://aka.ms/VSTORuntimeDownload
language pack link can also be:
http://go.microsoft.com/fwlink/?LinkId=140386
but make a notice that this latest version is SHA2-signed only (unlike previous version from 2018)
aside from the installer signature, the runtime files are still compatible with Windows XP and later

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

ID: 452374f5-e8d0-37e6-558d-c44c3926fec4
Version Independent ID: 8f3cb5a2-ed9e-3c10-a507-6a9e3bc0588e
Content: How to: Install the Visual Studio Tools for Office Runtime Redistributable
Content Source: docs/vsto/how-to-install-the-visual-studio-tools-for-office-runtime-redistributable.md
Product: visual-studio-windows
Technology: office-development
GitHub Login: @John-Hart
Microsoft Alias: johnhart

@stdin82 thanks for letting us know

this should be fixed soon


IPsec NAT rules not fully disabled

This is related to #369. When disabling a IPsec NAT rule (VPN->IPsec->Tunnels) and clicking "Apply" the pf NAT rules will be not disabled. You'll see that the entry is removed from ipsec.conf, but the pf rule is still enabled:
# pfctl -s nat | grep enc0 | grep 172
No ALTQ support in kernel
ALTQ related functions disabled
binat on enc0 inet from <IP_ADDRESS>/24 to <IP_ADDRESS>/24 -> <IP_ADDRESS>/24

@fraenki maybe we should look at the ipsec nat issue when we're both online, I think you should be able to setup the situation you want using the nat 1:1 option, all needed to nat your ipsec seems to be in there.


Question: data privacy

Hello, I am new to CVAT and I have a question. I am planning to annotate medical data and I have not understood if the images are actually uploaded to a server or they stay locally. I am worried about the privacy of the data. Thanks.

@ntatsisk
Your data will be uploaded to your server (where you will have built CVAT), NOT to the Internet.
In fact if you will have built CVAT on your local PC, data will stay locally.

OK I got it! Thanks for the fast response!

So, the images uploaded to the server will not be accessible to anyone else. And I don't need to worry about the privacy side of the data?


Renaming controller to migration service and other bug fixes/ validations.

Added coming soon message for a no url link.
Renamed the controller to SQL Database migration service.
Surfacing some errors in create migration service dialog.
Added stale tokens error message.

Pull Request Test Coverage Report for Build 658527320

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.004%) to 43.364%

Totals

Change from base Build 658355140:
0.004%

Covered Lines:
25401

Relevant Lines:
53458

💛  - Coveralls

The change in service also broke some other parts of the extension. I have made some changes to handle the errors. Need a re-review.


Support abi types for python 2.x

Currently pex only supports abi types like 'dmu' for python 3: https://github.com/pantsbuild/pex/blob/f5721a98f21dc680a0f541cede1afa724d2a4159/pex/pep425.py#L102
I built a numpy wheel on linux, and it has filename numpy-1.10.4-cp27-cp27mu-linux_x86_64.whl. Because there is no support for abi type mu for python 2.7, pex doesn't think it's a valid package for numpy on linux_x86_64.

confirming this is indeed an issue. repro:
[illuminati zzz]$ find deps -type f
deps/cryptography-1.2.3-cp27-cp27m-macosx_10_10_intel.whl
[illuminati zzz]$ pex --disable-cache --no-pypi -f ./deps cryptography==1.2.3 -v -v -v
pex: crawling link i=0 link=Link('file:///private/tmp/zzz/deps') follow_links=False
Could not satisfy all requirements for cryptography==1.2.3:
    cryptography==1.2.3
[illuminati zzz]$ cp deps/cryptography-1.2.3-cp27-{cp27m,none}-macosx_10_10_intel.whl
[illuminati zzz]$ pex --disable-cache --no-pypi -f ./deps cryptography==1.2.3 -v -v -v
pex: crawling link i=0 link=Link('file:///private/tmp/zzz/deps') follow_links=False
pex: Building pex :: Resolving distributions :: Fetching file:///private/tmp/zzz/deps/cryptography-1.2.3-cp27-none-macospex: Building pex :: Resolving distributions :: Fetching file:///private/tmp/zzz/deps/cryptography-1.2.3-cp27-none-macospex: Building pex :: Resolving distributions :: Translating /private/var/folders/3t/xkwqrkld4xxgklk2s4n41jb80000gn/T/tmpCould not satisfy all requirements for enum34:10_intel.whl into distribution
    enum34(from: cryptography==1.2.3)

I added a PR for this in #214. But not quite sure if the implementation is 100% accurate since I couldn't find much documentation online regarding py2.x ABI tags.

this should now be fixed in master (thanks @ewang!) - I'll get a pypi release cut ~tomorrow for general consumption.
can follow #215 for the release.

Awesome! Thanks for the quick fix!


[DROOLS-7124] remove use of deprecated JDK SecurityManager

JIRA: https://issues.redhat.com/browse/DROOLS-7124
Related PRs:
https://github.com/kiegroup/drools/pull/4809
https://github.com/kiegroup/kogito-runtimes/pull/2607

(tests) - kogito-runtimes job #1447 was: UNSTABLE
Possible explanation: This should be test failures
Please look here: https://eng-jenkins-csb-business-automation.apps.ocp-c1.prod.psi.redhat.com/job/KIE/job/kogito/job/main/job/pullrequest/job/kogito-runtimes.tests.kogito-runtimes/1447/display/redirect
Test results:

PASSED: 3114
FAILED: 1

Those are the test failures:

org.kie.kogito.quarkus.it.openapi.client.ApiWithSecurityContextIT.verifyAuthHeadersOpenApi2_0
java.lang.RuntimeException: java.util.concurrent.CompletionException: java.lang.RuntimeException: Unable to start Quarkus test resource class org.kie.kogito.quarkus.it.openapi.client.mocks.AuthSecurityMockServiceCaused by: java.util.concurrent.CompletionException: java.lang.RuntimeException: Unable to start Quarkus test resource class org.kie.kogito.quarkus.it.openapi.client.mocks.AuthSecurityMockServiceCaused by: java.lang.RuntimeException: Unable to start Quarkus test resource class org.kie.kogito.quarkus.it.openapi.client.mocks.AuthSecurityMockServiceCaused by: com.github.tomakehurst.wiremock.common.FatalStartupException: java.lang.RuntimeException: java.io.IOException: Failed to bind to /<IP_ADDRESS>:57154Caused by: java.lang.RuntimeException: java.io.IOException: Failed to bind to /<IP_ADDRESS>:57154Caused by: java.io.IOException: Failed to bind to /<IP_ADDRESS>:57154Caused by: java.net.BindException: Address already in use

I think this change pertains to jBPM "engine inside of Kogito" e.g. "Kogito process" beyond the scope of DROOLS-7124 hence assigned proper SMEs for the review.


Achieve parity between Array and List lemmas

In order to encourage std4 users to write verifiable code with arrays, we should aim to have a similar set of lemmas for arrays (https://github.com/leanprover/std4/blob/main/Std/Data/Array/Lemmas.lean) as we do for lists (https://github.com/leanprover/std4/blob/main/Std/Data/List/Lemmas.lean).

A trick I learned from @digama0 is to liberally apply Array → List transfer theorems which reduce problems about Arrays to problems about Lists. For example foldl_eq_foldl_data. This works very well because functions on Lists usually have a simple inductive structure whereas functions on Arrays tend not to (using indexed accesses and so on), so the List-based proofs are often simpler. So from this perspective, it is actually better not to have those lemmas and rather encourage applying transfer whenever possible. The lemmas that are still necessary are those for when you really need to reason about something involving indices. For example, foldl_induction.

There may be other ones, but some of the remaining incongruities between the List and Array interfaces:

List
Array
notes

List.replicate
Array.mkArray
Mathlib also defines List.repeat

List.modifyNth
Array.modify

List.insertNth
Array.insertAt(!)
These have sort of a confusing relationship

List.length
Array.size
This seems purposeful, but it may be helpful to document it

List.splitOn/List.splitAt
Array.split
They're different, so I guess the goal is to have splitOn, splitAt and split for both types?

It may be helpful to document the difference (if any) between functions like .elem/.contains and Array.modify/Array.modifyOp as well.
@digama0 if at some point you decide any changes are appropriate, let me know if I can help.

I am doing some "practical program" proving with lean4, and I have found the following lemma really helpful
``
lemma Array.data_injective : Function.Injective (Array.data (α:=α)) := by sorry

If I want to prove some equality of arrays, I use `apply Array.data_injective; simp`  which works pretty well.

However, it still feels like something is missing, because if I have some `List` subexpression in my goal, `simp` will simplify it away no problem, but if I have some `Array` subexpression, it won't.

I need to manually use `conv =>... ; apply Array.data_injective; simp` to manually force it to simplify each`Array` subexpression.  It feels like this could probably be automated some way?

lemma Array.data_injective : Function.Injective (Array.data (α:=α)) := by sorry

That is Array.ext' already defined in the prelude.


Add functionality to filter on valid CITATION.cff

(Spawned from #1)
Choosing cffconvert as the validator probably affects #12. Alternatively, you could pick a language that is able to run docker commands or shell commands.

Notes from @fdiblen and @abelsiqueira

make sure cffconvert is installed locally
to validate, run: cffconvert --validate --url https://github.com/<org>/<repo>

to run cffvonvert in javascript use exec (see below)
store the validity (boolean) for each repo

Exec example taken from  https://stackabuse.com/executing-shell-commands-with-node-js/
const { exec } = require("child_process");

exec("ls -la", (error, stdout, stderr) => {
    if (error) {
        console.log(`error: ${error.message}`);
        return;
    }
    if (stderr) {
        console.log(`stderr: ${stderr}`);
        return;
    }
    console.log(`stdout: ${stdout}`);
});

Jurriaan suggested to use Docker instead of cffconvert as it will be closer to the github action.

Also, specify the branch

PR was merged, closing this one


Use POST for key deletion

(Note that this builds on top of the change for #9, so the intended change here is just the second commit.)

Use a POST request for deleting keys. (077a9e2)
Side-effecting on GET is somewhat hazardous.

I'll re-make this once I have the tests running locally.

Sure
I'll  write a document about running tests soon.
Thanks for the help.


Padder, Slicer, Binner to respect panel origin

Describe your changes
Padder, Slicer, Binner bug fix to respect panel origin.
Previously the geometry was being returned incorrectly for the non-default origin option.
If Padder, Slicer or Binner result in an asymmetric change to the number of pixels from the centre of the detector then the acquisition geometry is not updated correctly. The offset to detector position is updated as if the panel origin was 'bottom-left' (the default).
In the case where the origin is not the default we expect the data to be manipulated in the same way, however the geometry detector position will be offset in the opposite direction.
I've updated the offset calculations for the acquisition geometry for the case where the panel origin is not 'bottom-left' (default).
I've added extensive tests to cover these cases.
Describe any testing you have performed
Please add any demo scripts to CIL-Demos/misc/
Added all relevant unit tests. Testing geometry is returned correctly if the origin is not the default and that the out put of the processor applied to the data meets expectations.
This is all added for padder, slicer and binner.
Link relevant issues
closes #1508
Checklist when you are ready to request a review

[x] I have performed a self-review of my code
[x] I have added docstrings in line with the guidance in the developer guide
[x] I have implemented unit tests that cover any new or modified functionality
[x] CHANGELOG.md has been updated with any functionality change
[x] Request review from all relevant developers
[x] Change pull request label to 'Waiting for review'

Contribution Notes
Please read and adhere to the developer guide and local patterns and conventions.

[x] The content of this Pull Request (the Contribution) is intentionally submitted for inclusion in CIL (the Work) under the terms and conditions of the Apache-2.0 License.
[x] I confirm that the contribution does not violate any intellectual property rights of third parties

After discussion with @paskino I moved the geometry update calculations to framework in the Config class used by AcquisitionGeometry.  def shift_detector_in_plane now shifts the detector by a number of pixels taking in to account the full geometry descriptions.


(chores) camel-kafka: fix a few flaky tests

It looks like some IT tests don't run.
[INFO] Running org.apache.camel.component.kafka.integration.KafkaToDIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 s - in org.apache.camel.component.kafka.integration.KafkaToDIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerWithResumeRouteStrategyIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in org.apache.camel.component.kafka.integration.KafkaConsumerWithResumeRouteStrategyIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerIdempotentWithCustomSerializerIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s - in org.apache.camel.component.kafka.integration.KafkaConsumerIdempotentWithCustomSerializerIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerIdempotentWithProcessorIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in org.apache.camel.component.kafka.integration.KafkaConsumerIdempotentWithProcessorIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerLastRecordHeaderIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in org.apache.camel.component.kafka.integration.KafkaConsumerLastRecordHeaderIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerFullIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in org.apache.camel.component.kafka.integration.KafkaConsumerFullIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaProducerFullIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in org.apache.camel.component.kafka.integration.KafkaProducerFullIT

It looks like some IT tests don't run.
[INFO] Running org.apache.camel.component.kafka.integration.KafkaToDIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 s - in org.apache.camel.component.kafka.integration.KafkaToDIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerWithResumeRouteStrategyIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in org.apache.camel.component.kafka.integration.KafkaConsumerWithResumeRouteStrategyIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerIdempotentWithCustomSerializerIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s - in org.apache.camel.component.kafka.integration.KafkaConsumerIdempotentWithCustomSerializerIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerIdempotentWithProcessorIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in org.apache.camel.component.kafka.integration.KafkaConsumerIdempotentWithProcessorIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerLastRecordHeaderIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in org.apache.camel.component.kafka.integration.KafkaConsumerLastRecordHeaderIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaConsumerFullIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in org.apache.camel.component.kafka.integration.KafkaConsumerFullIT
[INFO] Running org.apache.camel.component.kafka.integration.KafkaProducerFullIT
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 s - in org.apache.camel.component.kafka.integration.KafkaProducerFullIT

Yes. And they have not been running on the Apache CI either.

@orpiske Good job! and I just want to know why some kafka IT tests do not run before?

@orpiske Good job! and I just want to know why some kafka IT tests do not run before?

Thanks. The tests where not running previously because the KafkaConsumerHealthCheckIT was self-managing the lifecycle of the service and that was causing subsequent tests to fail to launch (i.e.: because of changed parameters, properties and addresses that happen whenever you bounce a service in the test-infra).
By isolating it, the other services could proceed executing.
That said, we still have an issue that we need to solve: https://issues.apache.org/jira/browse/CAMEL-18003.


Problems installing package

When running composer require bitbucket/client in an empty directory I get the following error:
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for bitbucket/client ^1.1 -> satisfiable by bitbucket/client[v1.1.0].
    - bitbucket/client v1.1.0 requires php-http/client-implementation ^1.0 -> no matching package found.

My System:
$ php --version

PHP 7.1.16-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Apr  5 2018 08:47:00) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.1.16-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

$ composer --version

Composer version 1.8.0 2018-12-03 10:31:16

Sorry the readme isn't clear. You also need to install a http client implementation, as per the error message:

- bitbucket/client v1.1.0 requires php-http/client-implementation ^1.0 -> no matching package found.

For example, using the Guzzle 6 HTTP client:
$ composer require require bitbucket/client php-http/guzzle6-adapter:^1.1

When you new up a new client, it will automatically search for a client to use, if none is specified:
https://github.com/BitbucketAPI/Client/blob/v1.1.0/src/Client.php#L78
https://github.com/BitbucketAPI/Client/blob/master/src/HttpClient/Builder.php#L85-L100

I did try installing the php-http/guzzle6-adapter but I didn't specify any version. Using ^1.1 does work.
Are you planning on updating the dependencies to support the newer versions?

Are you planning on updating the dependencies to support the newer versions?

The 1.x is pretty standard right now. Nobody else really supports 2.x yet.

It's just a shame composer's require command doesn't get the correct version. It just blindly tries the latest major version.

I've updated the readme to make things clearer.


kan and kanctapp scrapers not working properly

kan and kanctapp scrapers are creating the same request, to an unfiltered page that mixed up both courts, and both published and unpublished opinions.
Due to the order in which scrapers are run, I would expect every opinion to be sent to kan_p.  However, things are mixed up.
We have a bunch of very recent kan_u opinions, when according to the source, the last one should be from 2023

For kanctapp The most recent opinion we have in the DB is from  June 28th, 2024, so, even when fixed, we will have a gap. To fix this, we will need a backscraper, but it will take some time, and its better to stop the mixup with a simple fix
The most recent opinion for kanctapp on its source is from October 18th.
Found via https://github.com/freelawproject/courtlistener/issues/3950

I will have to wait a few days to confirm if the changes applied are working or not; the PR was merged, but the new juriscraper was published only yesterday November 18, so there are no new opinions to see if they are assigned properly

We have new opinions for kan_p, and the scrapers are separating the opinions properly.


fmSetupAssistant: dynamic property values?

Currently target values are static.
It may be useful to be able to define a calculated value, for example, maybe the FileMaker username could be set dynamically:
«Path to FileMaker UserName» = MBS( "System.GetUsername" /* or whatever */ ) & " " & Get ( SystemIPAddress )

Note: There is already a dynamic Warning function, where you can enter a calculation to decide if there is a warning.


Specifications on GPU

Hi there, I'm curious what specific GPU did you use? As I tried out with your code on Nvidia Tesla V100 (32G memory), OOM occurs easily even with 224x224-image-only and batch size 2. In contrast, you seem to allocate 16 entries to each GPU. If this difference is hard to explain, I request release of the training code you actually used.
Thx.

Hi there, I'm curious what specific GPU did you use? As I tried out with your code on Nvidia Tesla V100 (32G memory), OOM occurs easily even with 224x224-image-only and batch size 2. In contrast, you seem to allocate 16 entries to each GPU. If this difference is hard to explain, I request release of the training code you actually used. Thx.

Oh, it's 256 on 4 GPUs for training, even larger batch size, according your NBE paper.

Hi,
You can try mixed precision training. I used four V100, each with 32G memory. Without mixed precision training, each V100 card can store about a batch of 32 samples.

Hi, You can try mixed precision training. I used four V100, each with 32G memory. Without mixed precision training, each V100 card can store a batch of 32 samples.

Turns out I set a dummy variable with high dimension, which incurred OOM during attention calculation. And I'm applying amp, thank you for your kind reply.


Weblogic connector should allow destinations lookup over JNDI

Weblogic connector uses JMS createDestination methods, those are using custom WLS CDI syntax, we should provide JNDI lookup alternatives.

IMO, JNDI should become the standard approach, and the 'createDestination' approach should be deprecated and discouraged - not just for WebLogic but for all JMS vendors:
(1) The JMS specification itself encourages the use of JNDI and discourages the use of the createDestination methods. The following is a quote from the related JMS javadoc:

'The use of provider-specific queue names in an application may render the application non-portable. Portable applications are recommended to not use this method but instead look up an administratively-defined Queue object using JNDI.'

(2) JNDI is the most portable approach. As an example of its portability, JNDI is used by WebLogic's built-in JMS integration tooling to successfully integrate a very wide variety of JMS vendors.
(3) When JMS is in the picture for WebLogic customers, JNDI is the de facto standard approach for accessing both WebLogic JMS and that of other JMS vendors. Almost all WebLogic customers for both connection factory and destination lookups, and the documentation of the rarely used alternative 'create destination' approach is relegated to an appendix.

Side notes:

In my opinion, Helidon would supply a generic adapter/factory for plugging in any arbitrary JMS using JNDI lookups. To be fully generic, it would bootstrap not only destinations, but also JMS connection factories, and would therefore avoid the need to have any code specific to any particular vendor.

Such an adapter should ideally also pool, wrap, and reuse JNDI lookup results, connections, sessions, producers, and consumers - only removing them after an error or if too many end up accumulating in a pool... (This can yield a multi-X speedup - similar in concept to the speedup yielded by using datasource pools...)


Improve collection of configs in test

Slight modification of #1134 that allows us to run the test from any directory, not just the project root.

Looks good, thanks!


Improve the error message for az webapp up runtime auto detection

There are 2 things to fix in this bug:
Improve formating:
Notice the difference between az webapp up error message formatting and the formating for az --versions command.

Multiple lines instead of runoff text make it more readable.
links are color coded to stand out

Here is my proposal:

break the error message into multiple sentences with line breaks
apply link formatting to learn more link

improve the message body
The most common mistake is running this command from he wrong folder, this is covered in the learn more doc, however we should try and surface it a bit more, the suggestion here is to add a hint:
Hint: are you in the right folder?

webapp


i have Problem in the WebEditor.

Today I went to the editor and I see that there is no line for entering rights, I leafed through for a long time, clicked on groups, tried to restart the laptop, server, used other browsers, but there was no line for input anywhere

Seems to be a weird caching issue that's happening since the last deployment I triggered a couple hours ago.
Another person reported the issue here:
https://github.com/lucko/LuckPerms/issues/2035
I'd suggest doing a hard refresh ctrl + shift + r every now and then to try grab the latest files.

Confirmed with @lucko that this is indeed a caching issue with Netlify. Will see if there is anything we can do to prevent it happening again in the future.


Bundler could not find compatible versions for gem "ruby"

Bundler: 1.16.3
Ruby: 2.4.0
Gemfile:
gem "rails", github: "rails/rails", branch: "master"

Seems like Bundler is not yet compatible with the required_ruby_version requirements from gemspecs. It reports an incorrect Ruby version as an incompatible gem which seems like it could be misleading.
Bundler could not find compatible versions for gem "ruby":
  In Gemfile:
    ruby

    rails was resolved to 6.0.0.alpha, which depends on
      ruby (>= 2.4.1)

https://github.com/rails/rails/blob/59c3ed1b3f90db197000e3867f255781a02412e7/rails.gemspec#L12
Would it be worth reporting this differently to clarify that it's a Ruby version incompatibility and not gem-related because the first place to look for a gem issue is usually the Gemfile but not in this case?
I'm guessing this might be trickier than it looks.

It reports an incorrect Ruby version as an incompatible gem which seems like it could be misleading.

Yeah, this is because I kinda hacked in Ruby & RubyGems compatibility by pretending they're gems. Would it be sufficient to remove the gem word ? Or reword ruby/rubygems mismatches to something like "Bundler found conflicting requirements for the ruby version:" ?
@rubymorillo would appreciate your thoughts on this

https://github.com/bundler/bundler/pull/6647 should do that :)

@segiddins would just tweak it slightly to: "Bundler found conflicting requirements for Ruby version: "


Fix bug when generating en nodes.

Hi @aronasorman I a found bug when generating en nodes. This will fix #30

What's the exact bug here?

When I generate xh language pack the en_node.json file is empty because the url variable is not updated with the en lang code.

I mean this variable url = lang_url.format(projection=json.dumps(projection), lang=lang)

@aronasorman I'm done testing on generating language packs. So far these are the list of bug and enhancement that I fix.
Bug:

Generate xh language packs will result of empty en_nodes.json file. Because the url variable is not updated with the new language code.

Enhancement:

Create a reusable en lang code variable.
Check if language code available in dubbed videos mappings.


always dark

Description & motivation 💭
Screenshots (if applicable) 📸
Design Considerations 🎨
Testing 🧪
How was this tested 👻

[ ] Manual testing
[ ] E2E tests added
[ ] Unit tests added

Steps for others to test: 🚶🏽♂🚶🏽♀
Checklists
Draft Checklist
Merge Checklist
Issue(s) closed
Docs
Any docs updates needed?

#8  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @bgerrity and the rest of your teammates on  Graphite


docs: PG Sign off completed for two remaining VM recommendations. Change Impact from Low to Medium for one of those two recommendations as well.

Overview/Summary
PG Sign off completed for two remaining VM recommendations. Change Impact from Low to Medium for one of those two recommendations as well.
Related Issues/Work Items
N/A
Breaking Changes
None
As part of this pull request I have

[x] Read the Contribution Guide and ensured this PR is compliant with the guide
[x] Checked for duplicate Pull Requests
[x] Associated it with relevant GitHub Issues or ADO Work Items (Internal Only)
[x] Ensured my code/branch is up-to-date with the latest changes in the main branch
[ ] Ensured PR tests are passing
[x] Performed testing and provided evidence (e.g. screenshot of output) for any changes associated to ARG queries
[x] Updated relevant and associated documentation (e.g. Contribution Guide, Docs etc.)

LGTM


Correct Aggregate Inclusion metric

Motivation
Due to #4019, Aggregate Inclusion metric dropped. We want to get it back to the previous state.

Description

Call the metric before the chain.seenAggregatedAttestations.isKnown() check, about 70% of AggregateAndProof gossip messages were caught by that

Tested in contabo-8


lsp-auto-guess-root popup is hidden

What did you expect to happen?
With (setq lsp-auto-guess-root nil), I expect to see the LSP project root popup when opening up a new LSP project.
What actually happened?
The popup never appears. However it still blocks on accepting input as if it appeared. So I can press "I" to select the project root.
Additional details:

Include a link to your private config
Include screenshots/casts of your issue
If you mention key sequences, include what commands they're bound to (use SPC h k KEY or C-h h k KEY to inspect keys).
Include any warnings or errors logged to *Messages* (use M-x view-echo-area-messages to see it).

If an error message is involved include a backtrace of it.
How to acquire a backtrace:
https://github.com/hlissner/doom-emacs/blob/develop/docs/getting_started.org#how-to-extract-a-backtrace-from-an-error

Steps to reproduce:

Select these example steps,
Delete them,
And replace them with precise steps to reproduce your issue.
Fill in "system information" below.

System information:

emacs   version    27.0.91
        features   XPM JPEG TIFF GIF PNG RSVG SOUND DBUS GSETTINGS GLIB NOTIFY INOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD JSON PDUMPER GMP
        build      Jun 25, 2020
        buildopts  (--prefix=/nix/store/ml1v43l873j4khjxr6zdz67mi7kmd8yz-emacs-27.0.91 --disable-build-details --with-modules --with-x-toolkit=gtk3 --with-xft CFLAGS=-DMAC_OS_X_VERSION_MAX_ALLOWED=101200)
        windowsys  x
        daemonp    server-running
doom    version    2.0.9
        build      HEAD -> develop 99eea1d3e 2020-06-21 13:53:58 -0400
        dir        ~/.config/doom/
system  type       gnu/linux
        config     x86_64-pc-linux-gnu
        shell      /run/current-system/sw/bin/zsh
        uname      Linux 5.6.18 #1-NixOS SMP Wed Jun 10 18:22:53 UTC 2020 x86_64
        path       (/nix/store/77b1j2kpky9f3kb3yrh95hl5ch8frj5x-kitty-0.16.0/bin/ /nix/store/02px3rrvk2qhcp3kx1an34vzsckcba9m-imagemagick-6.9.10-71/bin/ /nix/store/f8kmpp5vn8d0lh5la81f3nfl5x9j4z1v-xsel-unstable-2019-08-21/bin/ /nix/store/03j792lhxkb358lzq7bmivq0n7bknva0-ncurses-6.1-20190112-dev/bin/ /nix/store/rl0zf16h9f4zmqxzyvbgkj3gkxl8izys-swaybg-1.0/bin/ /run/wrappers/bin/ ~/.config/emacs/bin/ ~/.cache/npm/bin/ ~/go/bin/ ~/.nixfiles/bin/ ~/.nix-profile/bin/ /etc/profiles/per-user/james/bin/ /nix/var/nix/profiles/default/bin/ /run/current-system/sw/bin/ /nix/store/ml1v43l873j4khjxr6zdz67mi7kmd8yz-emacs-27.0.91/libexec/emacs/27.0.91/x86_64-pc-linux-gnu/)
config  envfile    envvar-file
        elc-files  0
        modules    (:completion (company +childframe) (ivy +fuzzy +icons) :ui doom doom-dashboard hl-todo indent-guides modeline nav-flash ophints (popup +all +defaults) (pretty-code +pragmata-pro) treemacs vc-gutter vi-tilde-fringe window-select workspaces zen :editor (evil +everywhere) fold format multiple-cursors rotate-text snippets word-wrap :emacs dired electric vc :term vterm :checkers syntax spell :tools ansible docker direnv editorconfig (eval +overlay) (lookup +docsets +dictionary) (lsp +peek) (magit +forge) make terraform :lang (cc +lsp) (clojure +cider +lsp) common-lisp data emacs-lisp (go +lsp) (java +lsp) (javascript +lsp) markdown nix (org +dragndrop +journal +roam) (python +lsp +pyenv) sh scheme (yaml +lsp) :email mu4e :config literate (default +bindings +smartparens))
        packages   ((atomic-chrome) (org-roam :pin 4af4d2e4d5f18422fe0f90d5d83fe4c10ef1a20f) (org-msg) (org-alert) (caddyfile-mode))
        unpin      (lsp-mode)
        elpa       (vterm)

I cannot reproduce this on vanilla Doom on Emacs 26 or 27, in js2-mode, rustic-mode or python-mode on NixOS or Mojave (VM).

Try deleting ~/.emacs.d/.local/etc/lsp-session manually, or bisecting (or disabling) your private config.

Thanks for looking. I will try to dig further in that case.

Seems to always happen with yaml-mode.

Have the issue too, with clojure-lsp. N.B. the popup appears fine if lsp is run using SPC c l s s, but not with a clean slate (i.e. no .local/etc/lsp-session set up, removed .lsp/sqlite.1.db in the project etc), but fails to show up when opening a file for the first time in the project.

I have also faced this issue when using c++ (clangd). However, it hasn't been regularly failing (i.e, doesn't always fail when opening a new file, but sometimes it does)

Just to update this is still happening in the latest doom. It happens almost every time for golang projects.

Still happening for me. I haven't found a way to reliably reproduce it though :(.

@jsravn i think i solved this locally when i realized i had a .git file (but not a git repo 🤦 ) in my $HOME dir, perhaps worth looking into?


Homebrew formula is not up-to-date

dockutil on Homebrew is the 2.0.5 version, which is more than six years old. At the moment of creating this issue, v3.0.2 is the latest version.

👋 I just read through the relevant backlog trying to figure out what's up. It looks like Homebrew is blocked until #131 is merged so the package can be built.
Unfortunately, there's been no word from @kcrawford since Mar 2022, so Homebrew might have to deprecate the formula.

Why can’t homebrew explode the pkg and extract the binary? Why would you want to build it from source? Binary is signed.

Why would you want to build it from source?

Because that's a requirement to be included in Homebrew. All Homebrew formula are build from source.

Hi @kcrawford - thanks for taking the time to look at this.
If you're open to accepting #131 that should resolve the issue with Homebrew.
If you'd prefer not to accept that PR, Homebrew does have a way of installing binary packages. It calls these packages Casks instead of Formulae. However, the maintainers prefer to have Formula for cli-only open source packages, as suggested by this comment on a past (rejected) attempt to submit dockutil as a Cask. We can try to appeal that decision if you are against the linked PR.
Let me know your thoughts and I'll try and keep the linked Homebrew issues up to date with the news.

I see https://github.com/kcrawford/dockutil/pull/131 has been merged - can we do something with this issue? 🤔🙏

I think homebrew formula maintainers should have what they need now.  (SPM, license, release)

Thank you @kcrawford!

Thank you @kcrawford!

Do we know who is maintaining this Homebrew formula?


Issue #54 - User Story 3.6

Issue #54
This PR adds the functionality to schedule an audit template. When an inventory managers create an audit template, at the bottom they will see a new section named Scheduling. In this section they have the option to  trigger an audit at a scheduled time specified. There are 2 ways to trigger: One time trigger, or at a recurrence time by expanding the recurrence tab and specifying the available option.
On the server end, you can see in the console output when the scheduled audit starts.

Codecov Report

Merging #214 (eff9691) into master (33e495b) will decrease coverage by 2.54%.
The diff coverage is 66.36%.

@@            Coverage Diff             @@
##           master     #214      +/-   ##
==========================================
- Coverage   93.31%   90.76%   -2.55%
==========================================
  Files          35       37       +2
  Lines         942     1040      +98
==========================================
+ Hits          879      944      +65
- Misses         63       96      +33

Impacted Files
Coverage Δ

server/audit/migrations/0001_initial.py
100.00% <ø> (ø)

server/audit_template/migrations/0001_initial.py
100.00% <ø> (ø)

server/inventory_item/migrations/0001_initial.py
100.00% <ø> (ø)

server/organization/migrations/0001_initial.py
100.00% <ø> (ø)

server/user_account/migrations/0001_initial.py
100.00% <ø> (ø)

server/audit/utils.py
20.00% <20.00%> (ø)

server/inventory_item/updater.py
78.31% <73.91%> (+3.31%)
:arrow_up:

server/audit_template/views.py
97.61% <92.85%> (-2.39%)
:arrow_down:

server/audit/migrations/0002_audit_template_id.py
100.00% <100.00%> (ø)

server/audit/models.py
100.00% <100.00%> (ø)

... and 7 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 33e495b...eff9691. Read the comment docs.

Codecov Report

Merging #214 (eff9691) into master (33e495b) will decrease coverage by 2.54%.
The diff coverage is 66.36%.

@@            Coverage Diff             @@
##           master     #214      +/-   ##
==========================================
- Coverage   93.31%   90.76%   -2.55%
==========================================
  Files          35       37       +2
  Lines         942     1040      +98
==========================================
+ Hits          879      944      +65
- Misses         63       96      +33

Impacted Files
Coverage Δ

server/audit/migrations/0001_initial.py
100.00% <ø> (ø)

server/audit_template/migrations/0001_initial.py
100.00% <ø> (ø)

server/inventory_item/migrations/0001_initial.py
100.00% <ø> (ø)

server/organization/migrations/0001_initial.py
100.00% <ø> (ø)

server/user_account/migrations/0001_initial.py
100.00% <ø> (ø)

server/audit/utils.py
20.00% <20.00%> (ø)

server/inventory_item/updater.py
78.31% <73.91%> (+3.31%)
:arrow_up:

server/audit_template/views.py
97.61% <92.85%> (-2.39%)
:arrow_down:

server/audit/migrations/0002_audit_template_id.py
100.00% <100.00%> (ø)

server/audit/models.py
100.00% <100.00%> (ø)

... and 7 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 33e495b...eff9691. Read the comment docs.


Create a zip package containing all required pyansys files for optiSLang users

@mkundu1 This will not be necessary since we are allowed to ship the required modules as a part of optiSLang python as any other OSS


🎮 Game Request
Game logic and basic description
Game Rules!

Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

@kunjgit please review the Game!

@kunjgit please review the Game!

@kunjgit please review the game.

Hey @Anjaliavv51 ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


forge build is generating multiple keys under build-info.output.source

Component
Forge
Have you ensured that all of these are up to date?

[X] Foundry
[X] Foundryup

What version of Foundry are you on?
forge 0.2.0 (d75318c 2024-09-02T00:24:18.763851000Z)
What command(s) is the bug in?
forge build
Operating System
macOS (Apple Silicon)
Describe the bug
running forge build --build-info --skip test/** script/** --force generates multiple keys for the same file:
❯ cat $(find out/build-info/*.json)  | jq '.output.sources | keys' |  grep 'ITransferValidator.sol'   "contracts/interfaces/callbacks/ITransferValidator.sol",   "lib/core-v1/contracts/interfaces/callbacks/ITransferValidator.sol",
ITransferValidator.sol is a file in the submodule of the repo, and the correct path is lib/core-v1/contracts/interfaces/callbacks/ITransferValidator.sol. However, there is an additional key in the sources with this path: contracts/interfaces/callbacks/ITransferValidator.sol, which is the path in the repo that it belongs to.
This is causing issues for when I run slither . --ignore-compile --config-file=slither.config.json --fail-low, which is yielding this error: crytic_compile.platform.exceptions.InvalidCompilation: Unknown file: contracts/interfaces/callbacks/ITransferValidator.sol.
I would expect forge build to only generate one key in the output.sources, could use some insight to pinpoint the issue and what is causing the key generate with the incorrect path. Thank you!
Ref ticket in crytic-compile: https://github.com/crytic/crytic-compile/issues/572

looks like a dupe of https://github.com/foundry-rs/foundry/issues/7591

Marking as duplicate, closing in favor of #7591
Added your bug description in the comments


TypeError in SheetScrollView

When using a modal that adapts to a sheet on 'sm', and the sheet contains a Dialog.Sheet.ScrollView, the console overflows with this TypeError:
Uncaught TypeError: Cannot set properties of undefined (setting 'y')
    at Object.onScroll (SheetScrollView.mjs:58:24)
    at ScrollView.scrollResponderHandleScroll (index.js:92:41)
    at ScrollView._handleScroll (index.js:264:12)
    at handleScrollTick (ScrollViewBase.js:120:7)
    at handleScroll (ScrollViewBase.js:105:11)
    at HTMLUnknownElement.callCallback (react-dom.development.js:4164:14)
    at Object.invokeGuardedCallbackDev (react-dom.development.js:4213:16)
    at invokeGuardedCallback (react-dom.development.js:4277:31)
    at invokeGuardedCallbackAndCatchFirstError (react-dom.development.js:4291:25)
    at executeDispatch (react-dom.development.js:9041:3)
    at processDispatchQueueItemsInOrder (react-dom.development.js:9073:7)
    at processDispatchQueue (react-dom.development.js:9086:5)
    at dispatchEventsForPlugins (react-dom.development.js:9097:3)
    at eval (react-dom.development.js:9288:12)
    at batchedUpdates$1 (react-dom.development.js:26174:12)
    at batchedUpdates (react-dom.development.js:3991:12)
    at dispatchEventForPluginEventSystem (react-dom.development.js:9287:3)
    at dispatchEventWithEnableCapturePhaseSelectiveHydrationWithoutDiscreteEventReplay (react-dom.development.js:6465:5)
    at dispatchEvent (react-dom.development.js:6457:5)
    at dispatchContinuousEvent (react-dom.development.js:6444:5)

the stack trace lead me to this line:
https://github.com/tamagui/tamagui/blob/fe9a4e8317fe826ada4445157be5a44164d89505/code/ui/sheet/src/SheetScrollView.tsx#L85
I can't see anything immediately wrong with that line though.
I'm on:

"tamagui": "1.116.9",
"@tamagui/next-plugin": "1.116.9",
"react": "18.3.1",

What platform? Is there a way to reproduce it easily in one of the starters?

Also the newer Tamagui does loosen react-dom as well, which maybe helps, but I doubt it.

Not sure what you mean with starters. Do you have a codesandbox or similar?


Contributing guide was deleted from PMLB2.0

Contributing.md was removed from PLMB2.0.
Last seen at this commit: f02c7d2122889125f2f34ddd5abdb7d39657c8d9
Seems to have been deleted with this commit: 7793e7e73d94e6ed444d06d5966f30d54e4d039d
@weixuanfu

nevermind, i see now that it was moved


feat: make it possible to play audio through the earpiece speaker

This new functionality allows you to set the audioUsageType and audioContentType for Android, and the iosCategroy and iosCategoryMode for iOS with the updateOptions function. This makes it possible to force the audio to come through the earpiece speaker. This can for example be useful to play an audio message in a chat app. For this to work on Android I also made a pull request in KotlinAudio (https://github.com/doublesymmetry/KotlinAudio/pull/105). I tried but could not get the RNTP example app to use the updated KotlinAudio repo while executing the publishToMavenLocal steps as shown in https://github.com/doublesymmetry/react-native-track-player/tree/main/example.
Example:
TrackPlayer.updateOptions({
iosCategory: IOSCategory.PlayAndRecord,
iosCategoryMode: IOSCategoryMode.VoiceChat,
androidAudioContentType: AndroidAudioContentType.Music,
androidAudioUsageType: AndroidAudioUsageType.VoiceCommunication
})

Hello @jspizziri @dcvz, could you maybe take a look at this pull request? I think it would be a useful feature. If something is wrong with it I could fix it.

Thanks I resolved the documentation and import issues. Have you also noticed I made a pull request here: https://github.com/doublesymmetry/KotlinAudio/pull/105. Those changed are needed for these to work.

@watadarkstar & @Egbert-Jan , it seems that there is some overlap between your two PRs (https://github.com/doublesymmetry/react-native-track-player/pull/2259). Can the two of you evaluate and and if I'm not mistaken, collaborate?

My pull request introduces the same functionality as #2259 for the iOS side. However it also adds the functionality to the Android side.

Just chiming in to say that I really appreciate the contributions on this issue, and I'm rooting for this to get merged! Would be super helpful to update these options on the fly after initialization.


Dispatch conversationId expired from ChatService

Hi, many thanks for the library, it's great!
I am having an issue when I need to do other actions rather than adding a message in ChatService. In particular, I would like to have the chance to dispatch other events from the ChatService to the chat, such as a conversation id expired or others. I am storing the conversation id in the backend and validating it on each message. If it expires, I need to create a new one, and readd former messages to the new conversation. This requires that ChatService can somehow inform the chat that that a new conversation id must be requested and then a new conversation created, etc. before actually sending the message to the server.
I checked that you set other events, but I am not sure how can I use them and how can I listen to them, am I missing something? Thank you very much in advance!

@aledeloss I think you don't need to tell the chat that something has changed, because storage.updateState does that.
When you know in the ChatService that you need to change the message id, just replace the message in the storage and call storage.updateState. The UI will reflect the changes.


Add support for ProgressIndicator widget that shows a spinning progress

Currently we only have the ProgressBar.

+1

:+1:

+1

The Android and iOS client already support such a feature from tabris-remote but we are missing tabris.js API for it.
Here is the code in tabris-remote: https://github.com/eclipsesource/tabris/blob/master/com.eclipsesource.tabris/src/com/eclipsesource/tabris/widgets/enhancement/ProgressBarDecorator.java#L38


Illustrate ATNA configuration and provide simple Recent "N" ATNA message actuator

Illustrate the configuration of ATNA auditing and expose a recent "N" atna message collector "mock"

Adding  recent "20" (configurable) ATNA message actuator, exposed on http://localhost:8081/actuator/atna
Adding IPF's XUA component


Fix invalid code suggested for createVariable codeaction

Purpose

Fix invalid code suggested for createVariable codeaction

Fixes #21949
Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[x] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #22054 into master will not change coverage by %.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #22054   +/-   ##
=======================================
  Coverage   14.59%   14.59%
=======================================
  Files          51       51
  Lines        1411     1411
  Branches      219      219
=======================================
  Hits          206      206
  Misses       1189     1189
  Partials       16       16

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 650e561...3c389a4. Read the comment docs.


fix(pontos): pending blocks indexation issue

Better to keep this simple as you mentioned, this will help evolving with the network too. :+1:


Update vendors.md

Description

Related Issue(s)

Checklist

[ ] I have read the contribution guidelines
[ ] I have considered the performance impact of these changes
[ ] Suitable unit/system level tests have been added and they pass
[ ] Documentation has been updated

Too late, you’ll need a new PR
ZJ van de Weg
CEO, FlowFuse
https://flowfuse.com/
On Mon, 18 Mar 2024 at 19:22, Hasmin-AC @.***> wrote:

@.**** commented on this pull request.
In src/handbook/operations/vendors.md
https://github.com/FlowFuse/website/pull/1811#discussion_r1529047830:

@@ -10,6 +10,8 @@ data.

A list of approved vendors is available interally here{rel="nofollow"}.
⬇ Suggested change
-A list of approved vendors is available interally here{rel="nofollow"}.
+A list of approved vendors is available internally here{rel="nofollow"}.
—
Reply to this email directly, view it on GitHub
https://github.com/FlowFuse/website/pull/1811#pullrequestreview-1943860771,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AATJSO5PYSVZZGTLJHTYCJTYY4WH3AVCNFSM6AAAAABE4DSNMGVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMYTSNBTHA3DANZXGE
.
You are receiving this because you modified the open/close state.Message
ID: @.***>


fixed vulnerabilities arbitrary code execution due to node.js minimist module (CVE-2021-44906)

Descriptions
Node.js Minimist module could allow a remote attacker to execute arbitrary code on the system, caused by a prototype pollution in setKey() function in the index.js script. By sending a specially-crafted request, an attacker could exploit this vulnerability to execute arbitrary code on the system.
CVE-2021-44906
CWE-1321
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

write a little note why.

[x] Targeted PR against correct branch (see CONTRIBUTING.md)
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[x] Code follows the module structure standards.
[x] Wrote unit and integration tests
[x] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[x] Added relevant godoc comments.
[x] Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
[x] Re-reviewed Files changed in the Github PR explorer
[x] Review Codecov Report in the comment section below once CI passes

Thanks for the PR, @defensive-reb0rn, but this is a duplicate of #2570.


Issue with /docs/user-guide/kubectl/: "See Also" returns 404

This is a...

[ ] Feature Request
[x] Bug Report

Problem:

All see also links under http://kubernetes.io/docs/user-guide/kubectl/ are broken (they link to kubectl_xxx.md and should be redirected to /docs/... but is redirected to docs/...)
Many new commands (such as kubectl cp) aren't included in the left nav; some obsolete commands (such as kubectl namespaces) are removed, but not their left nav

cc @kubernetes/sig-docs
Proposed Solution:
Fix left nav and those links
Page to Update:
http://kubernetes.io/docs/user-guide/kubectl/

The links are working now.


States cannot be added in jasmine unit tests

I am trying to test a component that needs some states. However defining them via $stateProvider doesn't seem to work, as it doesn't add any states. here's come code to illustrate the issue:
beforeEach(module(function($stateProvider) {
    // add a bunch of states here
    $stateProvider.state();
}));

it('should do something', function () {
    // if I do $state.get() here, it's empty and the code that depends on it doesn't work
});

Did you do a state.go first?

Yes inside the actual test. But that's when I get Could not resolve 'foobar from state '' because the states don't get added

Ok I'm dumb. In the beforeEach I tried to define to routes for a parent state that didn't exist which means the states never go added. Although this is an error on my side, maybe you guys should think about throwing an exception in this case.


pool.acquire lock  when concurrent

OrientDB Version: 2.2.29
Java Version: 1.8
OS: 2017 x86_64 Linux
TinkerPop3  gremlin 3.2.3
Expected behavior
OrientGraphFactory graphFactory = new OrientGraphFactory(url, userName, password).setLabelAsClassName(true).setupPool(20,50)
OrientGraph orientGraph=graphFactory .getNoTx();
orientGraph.executeSql(script)
Actual behavior
get graph from connection poop locker
Steps to reproduce
Using Jmeter if we run a load test to send more than 2000 requests then this can be reproduced.

Hi @gflp123
do you call the api graph.close when finished?

call api graph.close solve it,
but
GraphTraversal<Vertex, Vertex> accountTraversal = iRepository4OrientDB.getVertexsWrapper(GroupUserLabel.USER_LABEL).has("Id", userId)
.outE(LoginLabel.EDGE_HAS_ACCOUNT)
gremlin lazy object is not used,
any suggest.
thanks

Hi @gflp123
what do you mean by gremlin lazy object is not used ?
Thanks

Function across several layers, including multiple nodes and relationships, when to call graph.close, ,When all functions are not completed, call graph.close
,GraphTraversal<Vertex, Vertex> or Vertex not used.
how to use.


chore(backend): suppression des fichiers testmondata

:tada: This PR is included in version 1.231.6 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Rename TraceCollector

As discussed here: https://github.com/ARM-software/devlib/pull/376, "trace" is not an appropriate term for everything that is being collected by TraceCollector implementation. Thus, the name is misleading and should be changed. CollectorBase, suggested in the same thread, seems reasonable. This will also require corresponding changes to the module name.

Implemented with https://github.com/ARM-software/devlib/pull/454


Improve jsonify.py's output

Run json_repair#repair_json() [1] on each line to fix minor JSON problems, like unescaped chars in JSON strings. This should make the script's output less likely to contain non-legal JSON.
The performance hit for this change, in terms of execution time, is ~13% on my machine, using a ~1GB trace:
orig: 1m56
new: 2m11
[1]: License: MIT

oops - I noticed I got the name wrong, for the json fixer package in the comment at the top- will push a fix


Is there no support for the blue?

According to this page it says bbb is supported.  Does that mean black is included and not Blue?
https://simppru.readthedocs.io/en/latest/

I don't have a blue with me, bbb stands for beaglebone black.
Does it have same pin mux as black, if yes, It is a 2 min job.

I really don't know.  Here's what's produced when I cat:
debian@beaglebone:/var/lib/cloud9$ cat /proc/device-tree/model
TI AM335x BeagleBone Bluedebian@beaglebone:/var/lib/cloud9$

Can you upload the output on something like paste bin?
You can use it to generate binary on any machine, so yes you can generate binary, but the auto pin muxing stuff won't work.

I am a bit confused. only got one line... am I supposed to have more than this?
TI AM335x BeagleBone

I think it should be
 TI AM335x BeagleBone Blue

What country are you in?  I can ask my university's department to send you one.  They might, since they are actively using this device in labs.

I'm in India

That may be tricky.  I'll see if I can get help with beagle.org first before trying to send parts out.   Do you prefer that I close this issue for now?

Actually, this is a gsoc project with beagleboard, I was sent BBBW, BBAI
and Pocketbeagle for testing by them.
You can keep the issue open, not a problem.
From where will you ship? USA?

Shipping into india will be costly, and take a lot of time. You could rather order to my address from Indian stores like these: https://www.robocraze.com/beaglebone-blue?sa=X&ved=0ahUKEwi0xsD69e_rAhXczjgGHQJPDvYQgOUECKUG

@dmalawey I have mailed you, any updates

As an individual I do not have funding for this.  In the last few years I worked at a university where they are using the Blue in lab.  I will pass this on to them.  There's a chance that this will be beneficial enough for the lab that they would send you a blue to get this help.  Please standby.

Sure, I will :)

@dmalawey Wanted to give a update, jason shipped a blue to me, will receive it in about 3 weeks.

@dmalawey #22 Added support for Blue


Pypi-based ReqMgr2 image failing to load the Web UI templates

Impact of the bug
ReqMgr2 (Pypi image)
Describe the bug
ReqMgr2 based on version 2.1.6rc3 fails to load workflows through their web UI (also linked from WMStats). An example url is:
https://cmsweb-test9.cern.ch/reqmgr2/fetch?rid=amaltaro_TC_PY3_ProdPsi_Agent214_Val_221214_222102_4629
and the error in the browser is:
"Template main not known"
Traceback from the component log is available in [1]
How to reproduce it
Open any workflow link in ReqMgr2, using the PyPi-based image (e.g. 2.1.6rc3)
Expected behavior
Templates need to be shipped with the Pypi package and properly available where the configuration expects to find them (see reqmgr2 config.py file).
Additional context and error message
[1]
[16/Dec/2022:13:02:34] reqmgr2-554998ddb8-wsjxl xxxxxx "GET /reqmgr2/data/request?_nostale=true&name=amaltaro_TC_PY3_ProdPsi_Agent214_Val_221214_222102_4629 HTTP/1.1" 200 OK [data: 4603 in 2289 out 61693 us ] [auth: OK "xxx" "" ] [ref: "" "WMCore.Services.Requests/v002" ]
[16/Dec/2022:13:02:35] reqmgr2-554998ddb8-wsjxl xxxx "GET /reqmgr2/data/splitting/amaltaro_TC_PY3_ProdPsi_Agent214_Val_221214_222102_4629 HTTP/1.1" 200 OK [data: 4569 in 800 out 97790 us ] [auth: OK "xxxxxx" "" ] [ref: "" "WMCore.Services.Requests/v002" ]
[16/Dec/2022:13:02:35] TemplatedPage doc not found at /data/srv/current/apps/reqmgr2/data/html/ReqMgr/templates
[16/Dec/2022:13:02:35] TemplatedPage menu not found at /data/srv/current/apps/reqmgr2/data/html/ReqMgr/templates
[16/Dec/2022:13:02:35] TemplatedPage generic not found at /data/srv/current/apps/reqmgr2/data/html/ReqMgr/templates
[16/Dec/2022:13:02:35] TemplatedPage main not found at /data/srv/current/apps/reqmgr2/data/html/ReqMgr/templates

Where the fix should go? I see two routes here:

adjust setup.py to supply required aux files within reqmgr2 package
adjust Dockerfile to get required aux files to build image

Which one do you foresee to use in a fix?

I think the first option would be better, such that the Pypi package has all that we need to run this service.
I haven't started looking into this, but let me know if you plan to work on this such that we don't duplicate work.

@amaltaro , turns out the templates are in pypi image, e.g.
kbash dmwm reqmgr2-554998ddb8-wsjxl

_reqmgr2@reqmgr2-554998ddb8-wsjxl:/data$ ls /usr/local/data/html/ReqMgr/templates/
admin.tmpl    assign.tmpl   confirm.tmpl  error.tmpl        index.tmpl  menu.tmpl      validate.tmpl
apis.tmpl     batch.tmpl    create.tmpl   filter_sort.tmpl  json        requests.tmpl  workflow.tmpl
approve.tmpl  batches.tmpl  doc.tmpl      generic.tmpl      main.tmpl   search.tmpl

They are installed under /usr/local path instead of RPM based /data/srv/current/apps/reqmgr2 area. Therefore, what is required is either:

change config to use proper location of aux files, or
adjust run.sh script to copy or link aux files from /usr/local to /data/srv/current/apps/reqmgr2

Which approach would you like to proceed.

Thanks for checking this, Valentin.
I was going to say to go with the second option (thus copying files over to /data/srv/current...) for backwards compatibility with the RPM model, but it's likely better to go with:

change config to use proper location of aux files, or

such that we don't have to change things again in a month or two from now. What do you think?
If you agree, please provide merge requests to services_config under all the three branches: test, preprod and prod (even though we should merge only the test one right now).

In my view, if you want to test things together, i.e. side-by-side RPM deployment and pypi one, then you need both options since configs will only work one type of deployment, right now they are working for RPM based deployment but do not for pypi. If we change config to use /usr/local location then RPM based deployment will be broken.
So, I suggest to make a soft link in pypi deployment from /usr/local/data to /data/srv/current/data (or whatever) and keep config as they are. When we'll be ready to switch to pypi the config can be changed but it will not break RPM based deployment, and soft link is not a copy and we can keep it around after the switch just in case.

Sounds good to me. Please make sure there is a comment made together with these changes such that we can come back to this in the near future.

You may use this tag pypi-20221219-base which includes changes to run.sh for creating a link. I redeployed it on test9 and here is how reqmgr2 looks like in a browser now:

So, I would assume the issue can be closed.

Can you please, as usual, provide the relevant changes required for this fix? I am going to check services in the test9 cluster.

The changes went to CMSKubernetes repo went into this https://github.com/dmwm/CMSKubernetes/commit/1c713b989bf6d8198453c9e7113d23e82b32b34a . Then, I rebuild the images, built new base tag, applied new base tag to all pypi based packages in this commit: https://github.com/dmwm/CMSKubernetes/commit/7a4ca2dc030b91ad66b8d61caead6094c53efdc6 and pushed all images to registry.

Thanks! I've done further tests and it seems to be all working fine now. With that, we can close this one out.


Incorrect error reporting

If the project directory does not exist or cannot cd into, the step does not throw an error immediately but continues. It makes tracking down incorrect path/filename issues harder.

Fixed
# --- Switch to project's dir
print_and_do_command cd "${XCODE_BUILDER_PROJECT_ROOT_DIR_PATH}"
fail_if_cmd_error "Failed to switch directory to the Project Root Directory"


[BUG] Streaming with LLM node requires stream: true in inputs of LLM node in flow.dag.yaml  for docker deploy. Annoyingly gets deleted whenever you run flow in vscode

Describe the bug
Streaming with an LLM node requires stream: true in inputs of LLM node in flow.dag.yaml . Annoyingly gets deleted whenever you run flow in vscode. So when you deploy to docker, make sure deploy/flow/flow.dag.yaml has it
Example below
  inputs:
    deployment_name: gpt-4-32k
    temperature: 0
    question: ${QueryRewriter.output}
    concat_chunks: ${FormatArticles.output}
    stream: true

How To Reproduce the bug
Steps to reproduce the behavior, how frequent can you experience the bug:

Choose a sample
deploy to docker
use your favorite HTTP call tool (Thunder client is good) with the streaming headers "Accept" : "text/event-stream, application/json"
Notice the data does not come in as chunks
Now using the same sample, modify flow.dag.yaml to have stream: true in the LLM node
deploy to docker
use your favorite HTTP call tool (Thunder client is good) with the streaming headers "Accept" : "text/event-stream, application/json"
Notice the chunks

Bonus: if you set stream:true, run vscode's promptflow, then open the flow.dag.yaml again it disappears. Very hard for users to do this.
Expected behavior
I expect a UI method in vscode to set stream = True or for it to not be deleted in flow.dag.yaml. Or perhaps the docs suggest that an LLM node should stream automatically.
Screenshots

Running Information(please complete the following information):

Promptflow Package Version using pf -v: 1.6.0
Operating System: Docker serving via promptflow
Python Version using python --version:   3.9.16

Additional context

The latest version of the promptflow vscode extension and with promptflow==1.7.0 now doesn't delete stream: true  when a user runs a flow, but it still does not enable streaming by default for an LLM node as the documentation says.

Hi @journeyman-msft , did you deploy your flow following this doc? https://microsoft.github.io/promptflow/how-to-guides/deploy-a-flow/deploy-using-docker.html

@elliotzh to help with the deploy issue.


How to disable resords scan?

Current Terraform and Cloudflare provider version
I've read issue #826 that jump_start flag wasn't working and it will be deprecated on 2022-09-23. How to disable records scanning and adding current records?
Description
Add some flag to disable auto records scan.
Use cases
Add some flag to disable auto records scan.
Potential Terraform configuration
resource "cloudflare_zone" "viaxe_pl" {
  account_id = var.cloudflare_account_id
  zone       = "viaxe.pl"
  plan       = "free"
  jump_start = false # dont remove it
}

References
No response

i wouldn't worry about this tbh; we'll just remove the attribute soon enough as it is being ignored in the remote API anyway.

Yes it was. Still how to disable adding record by Cloudflare? I can't create own records, because after creating zone, they exists.

the records definitely aren't from the jump start. if you delete a zone and recreate the zone within a certain timeframe, it does restore the previous zone as opposed to creating a new one. is that what you're doing here? if not, I'd suggest you paste the output from prefixing TF_LOG=DEBUG to the commands to further dig into this but it's definitely not an enhancement.


Swift 6 compile errors

swift build
Building for debugging...
/Users/***/jpeg/sources/jpeg/encode.swift:219:45: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
 217 |             let limit:SIMD8<Float>  = .init(repeating:
 218 |                 .init(sign: .plus, exponent: precision    , significand: 1)) - 1
 219 |             for (x, y):(Int, Int) in (0, 0) ..< plane.units
     |                                             `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
 220 |             {
 221 |                 let g:Block8x8<Float> = plane.load(x: x, y: y, limit: limit),

/Users/***/jpeg/sources/jpeg/encode.swift:326:45: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
 324 |         return .init(unsafeUninitializedCapacity: 64)
 325 |         {
 326 |             for (k, h):(Int, Int) in (0, 0) ..< (8, 8)
     |                                             `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
 327 |             {
 328 |                 $0[JPEG.Table.Quantization.z(k: k, h: h)] = interpolated[8 * h + k]

/Users/***/jpeg/sources/jpeg/encode.swift:405:45: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
 403 |             let response:(x:Int, y:Int) = (scale.x / factor.x, scale.y / factor.y)
 404 |             let magnitude:Float         = .init(response.x * response.y)
 405 |             for (x, y):(Int, Int) in (0, 0) ..< (8 * units.x, 8 * units.y)
     |                                             `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
 406 |             {
 407 |                 let base:(x:Int, y:Int) =

/Users/***/jpeg/sources/jpeg/encode.swift:1270:51: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1268 |                 )
1269 |                 var predecessor:Int16 = 0
1270 |                 for (mx, my):(Int, Int) in (0, 0) ..< self.blocks
     |                                                   `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1271 |                 {
1272 |                     let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),

/Users/***/jpeg/sources/jpeg/encode.swift:1431:51: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1429 |                 var frequencies:[Int]   = .init(repeating: 0, count: 256)
1430 |                 var predecessor:Int16   = 0
1431 |                 for (mx, my):(Int, Int) in (0, 0) ..< self.blocks
     |                                                   `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1432 |                 {
1433 |                     let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),

/Users/***/jpeg/sources/jpeg/encode.swift:1544:43: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1542 |
1543 |         var bits:JPEG.Bitstream = []
1544 |         for (mx, my):(Int, Int) in (0, 0) ..< self.blocks
     |                                           `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1545 |         {
1546 |             for (p, factor):Descriptor in descriptors
error: emit-module command failed with exit code 1 (use -v to see invocation)
/Users/***/jpeg/sources/jpeg/decode.swift:3245:52: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3243 |                     let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),
3244 |                         end:(x:Int, y:Int)   = (start.x + factor.x, start.y + factor.y)
3245 |                     for (x, y):(Int, Int) in start ..< end
     |                                                    `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3246 |                     {
3247 |                         // dc

/Users/***/jpeg/sources/jpeg/decode.swift:3375:52: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3373 |                     let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),
3374 |                         end:(x:Int, y:Int)   = (start.x + factor.x, start.y + factor.y)
3375 |                     for (x, y):(Int, Int) in start ..< end
     |                                                    `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3376 |                     {
3377 |                         let composite:JPEG.Bitstream.Composite.DC =

/Users/***/jpeg/sources/jpeg/decode.swift:3425:57: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3423 |         let bits:JPEG.Bitstream = .init(data)
3424 |         var b:Int               = 0
3425 |         for (mx, my):(Int, Int) in (0, rows.lowerBound) ..< (self.blocks.x, rows.upperBound)
     |                                                         `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3426 |         {
3427 |             for (p, factor):Descriptor in descriptors

/Users/***/jpeg/sources/jpeg/decode.swift:3431:48: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3429 |                 let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),
3430 |                     end:(x:Int, y:Int)   = (start.x + factor.x, start.y + factor.y)
3431 |                 for (x, y):(Int, Int) in start ..< end
     |                                                `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3432 |                 {
3433 |                     let refinement:Int16 = try bits.refinement(&b)

/Users/***/jpeg/sources/jpeg/encode.swift:1270:51: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1268 |                 )
1269 |                 var predecessor:Int16 = 0
1270 |                 for (mx, my):(Int, Int) in (0, 0) ..< self.blocks
     |                                                   `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1271 |                 {
1272 |                     let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),

/Users/***/jpeg/sources/jpeg/encode.swift:1431:51: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1429 |                 var frequencies:[Int]   = .init(repeating: 0, count: 256)
1430 |                 var predecessor:Int16   = 0
1431 |                 for (mx, my):(Int, Int) in (0, 0) ..< self.blocks
     |                                                   `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1432 |                 {
1433 |                     let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),

/Users/***/jpeg/sources/jpeg/encode.swift:1544:43: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1542 |
1543 |         var bits:JPEG.Bitstream = []
1544 |         for (mx, my):(Int, Int) in (0, 0) ..< self.blocks
     |                                           `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
1545 |         {
1546 |             for (p, factor):Descriptor in descriptors
/Users/***/jpeg/sources/jpeg/decode.swift:332:56: error: cannot convert sequence element type '(offset: Int, element: Int)' to expected type '(Int, Int)'
 330 |         var z:Int      = n
 331 |         // finish validating the tree
 332 |         for (i, leaves):(Int, Int) in levels[8 ..< 16].enumerated()
     |                                                        `- error: cannot convert sequence element type '(offset: Int, element: Int)' to expected type '(Int, Int)'
 333 |         {
 334 |             guard interior > 0

/Users/***/jpeg/sources/jpeg/decode.swift:3013:55: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3011 |         let bits:JPEG.Bitstream = .init(data)
3012 |         var b:Int               = 0
3013 |         for (x, y):(Int, Int) in (0, rows.lowerBound) ..< (self.units.x, rows.upperBound)
     |                                                       `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3014 |         {
3015 |             let refinement:Int16    = try bits.refinement(&b)

/Users/***/jpeg/sources/jpeg/decode.swift:3036:55: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3034 |         var b:Int               = 0,
3035 |             skip:Int            = 0
3036 |         for (x, y):(Int, Int) in (0, rows.lowerBound) ..< (self.units.x, rows.upperBound)
     |                                                       `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3037 |         {
3038 |             var z:Int = band.lowerBound

/Users/***/jpeg/sources/jpeg/decode.swift:3087:55: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3085 |         var b:Int               = 0,
3086 |             skip:Int            = 0
3087 |         for (x, y):(Int, Int) in (0, rows.lowerBound) ..< (self.units.x, rows.upperBound)
     |                                                       `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3088 |         {
3089 |             var z:Int = band.lowerBound

/Users/***/jpeg/sources/jpeg/decode.swift:3245:52: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3243 |                     let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),
3244 |                         end:(x:Int, y:Int)   = (start.x + factor.x, start.y + factor.y)
3245 |                     for (x, y):(Int, Int) in start ..< end
     |                                                    `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3246 |                     {
3247 |                         // dc

/Users/***/jpeg/sources/jpeg/decode.swift:3375:52: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3373 |                     let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),
3374 |                         end:(x:Int, y:Int)   = (start.x + factor.x, start.y + factor.y)
3375 |                     for (x, y):(Int, Int) in start ..< end
     |                                                    `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3376 |                     {
3377 |                         let composite:JPEG.Bitstream.Composite.DC =

/Users/***/jpeg/sources/jpeg/decode.swift:3425:57: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3423 |         let bits:JPEG.Bitstream = .init(data)
3424 |         var b:Int               = 0
3425 |         for (mx, my):(Int, Int) in (0, rows.lowerBound) ..< (self.blocks.x, rows.upperBound)
     |                                                         `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3426 |         {
3427 |             for (p, factor):Descriptor in descriptors

/Users/***/jpeg/sources/jpeg/decode.swift:3431:48: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3429 |                 let start:(x:Int, y:Int) = (     mx * factor.x,      my * factor.y),
3430 |                     end:(x:Int, y:Int)   = (start.x + factor.x, start.y + factor.y)
3431 |                 for (x, y):(Int, Int) in start ..< end
     |                                                `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
3432 |                 {
3433 |                     let refinement:Int16 = try bits.refinement(&b)

/Users/***/jpeg/sources/jpeg/decode.swift:4114:45: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
4112 |             let limit:SIMD8<Float>  = .init(repeating:
4113 |                 .init(sign: .plus, exponent: precision    , significand: 1)) - 1
4114 |             for (x, y):(Int, Int) in (0, 0) ..< self.units
     |                                             `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
4115 |             {
4116 |                 let h:Block8x8<Float> = self.load(x: x, y: y, quanta: q),

/Users/***/jpeg/sources/jpeg/decode.swift:4190:49: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
4188 |             interleaved     = .init(unsafeUninitializedCapacity: count)
4189 |             {
4190 |                 for (x, y):(Int, Int) in (0, 0) ..< self.size
     |                                                 `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
4191 |                 {
4192 |                     $0[y * self.size.x + x] = self[0][x: x, y: y]

/Users/***/jpeg/sources/jpeg/decode.swift:4210:57: error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
4208 |                     {
4209 |                         // fast path
4210 |                         for (x, y):(Int, Int) in (0, 0) ..< self.size
     |                                                         `- error: cannot convert sequence element type '(x: Int, y: Int)' to expected type '(Int, Int)'
4211 |                         {
4212 |                             $0[(y * self.size.x + x) * self.count + p] = plane[x: x, y: y]

this is a known compiler bug that was fixed in May by @xedin in https://github.com/swiftlang/swift/pull/73983 . it did not make the cutoff for the Xcode beta, but should be fixed in Swift 6.

closed with #17


hook- not working -- use DestroyImmediate in edit mode

Windows 10
Unity 5.3.x
calling hook- from the repl causes the following:

and the hook is not removed.

Seems to me we can't avoid some policy on Destroy vs DestroyImmediate, which probably requires solving the old problem of detecting edit vs play mode, in a deployed app vs in the editor. Unless I'm missing something.

I think the ticket is mostly to point out that "(a/hook-)" does nothing while in edit mode.  Your statement still stands, and I do most of my work in play mode now anyway, but maybe its just a matter of a better error message.

Yeah the Destroy/DestroyImmediate thing is such a nightmare and keeps cropping up. I will dig back into it and see if I can get assemble a matrix of situations code can be evaluated in, how to detect that mode, and which destroy to use.

for cmpt- specifically, is there anything wrong with just saying it's Destroy in play mode, DestroyImmediate in edit?

Though part of me wants everything to just be DestroyImmediate

We could try that. As I understand DestroyImmediate sets the object to Unity's fake null immediately, while Destroy does it at the end of the frame (or after a number of seconds elapse if you pass in a second parameter). If destroy mapped to DestroyImmediate and destroy-deferred mapped to Destroy, maybe we'd have a destroy function that Just Works in all contexts?
From what I gather Unity doesn't like people using DestroyImmediate because Destroy lets them batch all Destroys at the end of the frame, but maybe that's ok?

My guess was/is that Unity doesn't like DestroyImmediate in play contexts because it potentially fucks with the ordering logic of the event system. Perhaps it's possible to DestroyImmediate a component which Unity then calls an event on later in the frame, for example. If so that might be a more compelling reason not to use it.
But maybe we don't care?  The options seem to be:

destroy function, which calls Destroy in play mode and DestroyImmediate in editor mode

destroy function, which calls DestroyImmediate in play mode and editor mode, and destroy-deferred function, which calls Destroy in play mode and editor mode
destroy function which calls DestroyImmediate in play mode and editor mode;  destroy-deferred function, which calls Destroy in play mode and editor mode; and destroy-dwim or destroy-adaptive or something function, that calls Destroy in Play mode and DestroyImmediate in EditorMode
2 and 3, except destroy always calls Destroy, and we have another function destroy-now or just destroy-immediate, which calls DestroyImmediate

UnityStatusHelper.cs, introduced in 5aab401ba73d8bed2fe138510ba7f35014b8391b, might help with some of this.

I sort of like 4

I like how explicit 4 is. If we can come up with a better name for the automatic version, I am sold. destroy-auto? destroy-automatic? auto-destroy?

maybe-destroy??

and then have another one called destroy-maybe??? that does something completely different

destroy1 destroy2 destroy-real1

Two of these are just wrappers, which we're trying to veer away from unless there's a really really good reason for inclusion; in this case perhaps there is. The adaptive version is our own thing.
The main reason an adaptive version is desirable is for live programming, which can happen in Edit mode or in Play mode. We want to be able to use the same code in both cases if possible, an adaptive destroy would help with that. So then the next question (so far as naming is concerned) is what the meaning of this function is.
I'm receptive to "automatic", "auto", etc, but I also feel like everything a computer does is automatic on some level, and it doesn't really get us closer to describing the meaning of the function.
I'd say the meaning of the function is that an object leaves the scene at the next convenient moment. One possibility for a name is exit, as in "exit stage left", which works with the scene metaphor, but is a somewhat scary word in a program; one way to mitigate that might be the slightly weirder but even more theatery exists ("Banquo exits stage left"). Another option is retire, which has the benefit of connoting both graceful withdrawal and the Bladerunner euphemism for destruction.

(I like retire)

closed as of 0278756d44a0c1ded87f3a4a0099b9981fee8f8b


Fix Publishing Workflows

TODO:

workflow for staging should create tag with name prefix rc, i.e. rc/v.{version-num}
workflow on push to main, create tag with name prefix release, i.e. release/v.{version-num}
workflow on tag with prefix pattern release/ should publish to pypi and create release based on the received tag


feat: update Traditional Chinese translation

The locale file LGTM.
There are some other files that need to be updated as well. Please check this PR: https://github.com/usememos/memos/pull/879


Omit 'editions is invalid' error message

It doesn't mean anything to the end user, so let's not include it when promoting errors from the guide model.

:+1: