[BUG] terminate_after Parameter Impact on Dropdown List Query Results

Describe the bug
I'm reaching out to report an inconsistency we've observed with the terminate_after parameter in our search queries, which seems to be affecting the functionality of dropdown lists in the frontend.
Issue Description:
The frontend utilizes a query that leverages the terminate_after parameter to calculate dropdown lists. This has been working as expected up to version 2.9. However, upon upgrading to version 2.11, the same query now returns empty results.
Query Example:
GET sensorsdata-*/_search
{
  "timeout": "1000ms",
  "terminate_after": 100000,
  "size": 0,
  "aggs": {
    "termsAgg": {
      "terms": {
        "order": { "_count": "desc" },
        "size": 500,
        "field": "Host.keyword"
      }
    }
  },
  "stored_fields": ["*"],
  "script_fields": {},
  "docvalue_fields": [{
    "field": "TimeStamp",
    "format": "date_time"
  }],
  "_source": { "excludes": [] },
  "query": { "bool": { "must": [], "filter": [], "should": [], "must_not": [] } }
}

Observations:

Setting terminate_after to 0 or increasing the value to 500,000 results in the expected output.
The default value of 100,000 for terminate_after has been a constant for over 4 years, as per our historical code reference here.

Potential Explanations:

The index might contain more than 100,000 documents, but fewer than 500,000. Since terms aggregation requires scanning all documents, partial results are not feasible.
Disabling terminate_after by setting it to 0 allows the query to scan all necessary documents to complete the aggregation.

Related Changes:

In the 2.11 update, we identified a change that might be correlated with this issue, detailed in this pull request.

We need assistance in pinpointing the root cause of this discrepancy. Could you please help us investigate this matter further? Any insights into changes between versions 2.9 and 2.11 that could affect the terminate_after behavior would be invaluable.
Related component
Search:Aggregations
To Reproduce

Construct an index that contains a document count exceeding 100,000 yet remains below 500,000. Ensure each document includes the fields Host.keyword and TimeStamp.
run the following query:

GET sensorsdata-*/_search
{
  "timeout": "1000ms",
  "terminate_after": 100000,
  "size": 0,
  "aggs": {
    "termsAgg": {
      "terms": {
        "order": { "_count": "desc" },
        "size": 500,
        "field": "Host.keyword"
      }
    }
  },
  "stored_fields": ["*"],
  "script_fields": {},
  "docvalue_fields": [{
    "field": "TimeStamp",
    "format": "date_time"
  }],
  "_source": { "excludes": [] },
  "query": { "bool": { "must": [], "filter": [], "should": [], "must_not": [] } }
}

Expected behavior
We expect to see non-empty terms aggregation result.
Additional Details
No response

[Triage - attendees 1 2 3 4]
Thanks for filing, please feel free to submit a pull request.

@reta you mentioned there was a related issue that was resolved [1] could you take a look into this report?

[1] https://github.com/opensearch-project/OpenSearch/issues/10054


Links are not functional on Team Page

All social media links of the team members are not working on the team page.
Can I work on this issue @SahityaRoy ?

I'm a GSSoC'22 contributor.I would like to add the links. Kindly assign this issue to me.


Can't configure project

config.status: executing libtool commands
sed: can't read ./ltmain.sh: No such file or directory
sed: can't read libtoolT: No such file or directory
vova@Qosmio ~/Projects/cld $ stat ltmain.sh
File: «ltmain.sh» -> «/usr/local/Cellar/libtool/2.4.6_1/share/libtool/build-aux/ltmain.sh»
/usr/local/Cellar/libtool/2.4.6_1/share/libtool/build-aux/ltmain.sh    -     No such file

I had this error and I was able to work around it by installing autoconf and libtool with sudo apt-get install autconf libtool, and then running autoreconf -f -i -Wall,no-obsolete. After that, I was able to make && make install.


No title shows in acquire/break lease dialog for one blob container

Storage Explorer Version: 1.11.2
Build: 20191213.1
Branch: hotfix/1.11.2
Platform/OS: Windows 10/ Linux Ubuntu 18.04/macOS High Sierra
Architecture: ia32/x64
Regression From: Previous build(20191212.4)
Steps to reproduce:

Expand one storage account -> Blob Containers.
Create a blob container then right click it -> Click 'Acquire Lease'.
Check the prompt dialog.

Expect Experience:
Show title in the dialog.

Actual Experience:
No title shows in the dialog.

More Info:
No title shows in the break lease dialog for one blob container.

Since the tested build is a hotfix of 1.11.1, this bug is expected to reproduce. It has already been fixed on master though for 1.12.0.


Help: How about the input values of carbon source and oxygen for the in silico growth?

In the reported paper "Reconstruction and analysis of a Kluyveromyces marxianus genome-scale
metabolic model",  the Kluyveromyces marxianus model was calculated. However, only biomass is known as the objective, how about the input values for the uptake source, such as glucose and oxygen?

@wenjuanmo, the growth simulation was done upon minimal (Verduyn) medium. The model in SBML format (kmxGEM.xml) already has the corresponding constraints set, see the reactions r_1723-r_1736 for the exact constrain values.

Thanks very much for the help!
-----原始邮件-----
发件人:"Simonas Marcišauskas"<EMAIL_ADDRESS>发送时间:2020-02-11 05:40:53 (星期二)
收件人: SysBioChalmers/Kluyveromyces_marxianus-GEM<EMAIL_ADDRESS>抄送: wenjuanmo<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>主题: Re: [SysBioChalmers/Kluyveromyces_marxianus-GEM] Help: How about the input values of carbon source and oxygen for the in silico growth? (#6)
@wenjuanmo, the growth simulation was done upon minimal (Verduyn) medium. The model in SBML format (kmxGEM.xml) already has the corresponding constraints set, see the reactions r_1723-r_1736 for the exact constrain values.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

How about the constraints set for the integration of TSS-seq transcriptomic data, since at this time cells grew in YPD medium

@wenjuanmo, please see the condition specific models for 30D, 30DS and 45D conditions as the attachements. These are the exact models which were used in our study.
FYI, the attached files are in RAVEN compatible Excel format. To import these models to MATLAB, you will need to install The RAVEN Toolbox and use importExcelModel function. If you prefer the COBRA toolbox , you can then convert the model from RAVEN model structure to COBRA model structure with ravenCobraWrapper function.
iSM996_30D.xlsx
iSM996_30DS.xlsx
iSM996_45D.xlsx


PersonCompany unmarshalling error

I'm getting this error while unmarshalling a company right now:
json: cannot unmarshal string into Go struct field .estimatedAnnualRevenue of type int

Fixed on master already


Adds onboarding template

Based on feedback from https://github.com/artsy/README/pull/4, adds the onboarding checklist as an issue template.

You'll need to move and rename the existing RFC issue template to make this work properly, I bet.


Slow initial build time due to "skipping target" inefficient hashFiles computation.

Steps to Reproduce

flutter create p1
cd p1
flutter run -d linux
OR flutter run -d windows
OR (I guess mac, anything else)

I won't include logs, just the first lines of "flutter doctor -v"
[✓] Flutter (Channel master, v1.18.0-6.0.pre.82, on Linux, locale en_US.UTF-8)
• Flutter version 1.18.0-6.0.pre.82 at /home/malkia/p/flutter/flutter
• Framework revision f35b673f2b (20 hours ago), 2020-04-19 02:45:01 +0530
• Engine revision a5e0b2f2f2
• Dart version 2.9.0 (build 2.9.0-1.0.dev 5b19445d9c)
I've dig a little, and found out that calling, "flutter run -d linux" (or possibly other platforms) maybe slow due to the "skipping target" step:
https://github.com/flutter/flutter/blob/cb8bafb38df02f63edaea76e0dc7a74380f47ce8/packages/flutter_tools/lib/src/build_system/build_system.dart#L684
calling computeChanges() here:
https://github.com/flutter/flutter/blob/cb8bafb38df02f63edaea76e0dc7a74380f47ce8/packages/flutter_tools/lib/src/build_system/build_system.dart#L907
calling later hashFIles()
https://github.com/flutter/flutter/blob/cb8bafb38df02f63edaea76e0dc7a74380f47ce8/packages/flutter_tools/lib/src/build_system/build_system.dart#L981
calling _hashFile(), which (function just down below):
final Digest digest = md5.convert(await file.readAsBytes());
I believe this is the cause of slowdown, and have put some more findings here:
https://www.reddit.com/r/FlutterDev/comments/g31c2e/what_are_the_common_problems_you_are_facing_while/fnw96ku/?context=3

Reading through the thread, there are a few concerns that need to be balanced.
Relying on external programs to do hash computation means that we either need a fallback in case they are missing or increase the installation cost for users. In the past we've had issues with users installing new versions of common executables on linux platforms, like zip, which had slightly different functionality. This would cause things to blow up on their computers.
Similar to the above would be using dart:ffi functionality to call into native crypto packages. This could break in ways we're not familiar with.
another possibilities would be to spin up multiple isolates at the start of an assemble run, and then farm the hash computations out through those. That might help when the number of files is large, but will also slow down cases that hashed fewer files (because isolate spawning is slow).
Finally, someone could take a look at the hashing code we're using and probably optimize it a bit more. Right now it is reading from files in fairly small chunks and allocating the entire time. It could be restructured to re-use a single buffer and read large chunks.

You might also see if https://github.com/flutter/flutter/pull/53848 improves the speed enough that switching strategies isn't noticable

I tried my hand at a hybrid approach:

use dart for small files (less than X bytes)
shell out to external program (if supported) for greater than X bytes

The thoughts are that we get some additionally concurrency from the external program for large files, while avoiding the overhead when the dart hashing would be fast enough. Also avoid isolates and dart:ffi entirely. Assumes that reading the file size doesn't add measurable overhead.
Here are some numbers building the macOS desktop (after #53848 landed) where I tweaked the number of X bytes
X = 100,000 Bytes
[   +3 ms] ♦ /Users/jonahwilliams/Documents/flutter/bin/flutter --verbose assemble -dTargetPlatform=darwin-x64 -dTargetFile=lib/main.dart -dBuildMode=release -dTreeShakeIcons=false -dDartObfuscation=false -dSplitDebugInfo= --DartDefines= -dExtraFrontEndOptions= --build-inputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterInputs.xcfilelist --build-outputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterOutputs.xcfilelist --output=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral release_macos_bundle_flutter_assets
[   +9 ms] [   +9 ms] "flutter assemble" took 2,520ms.
jonahwilliams-macbookpro2:flutter_gallery jonahwilliams$ flutter build macos --release -v | grep assemble
[   +3 ms] ♦ /Users/jonahwilliams/Documents/flutter/bin/flutter --verbose assemble -dTargetPlatform=darwin-x64 -dTargetFile=lib/main.dart -dBuildMode=release -dTreeShakeIcons=false -dDartObfuscation=false -dSplitDebugInfo= --DartDefines= -dExtraFrontEndOptions= --build-inputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterInputs.xcfilelist --build-outputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterOutputs.xcfilelist --output=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral release_macos_bundle_flutter_assets
[   +9 ms] [   +9 ms] "flutter assemble" took 2,459ms.

No change
[   +2 ms] ♦ /Users/jonahwilliams/Documents/flutter/bin/flutter --verbose assemble -dTargetPlatform=darwin-x64 -dTargetFile=lib/main.dart -dBuildMode=release -dTreeShakeIcons=false -dDartObfuscation=false -dSplitDebugInfo= --DartDefines= -dExtraFrontEndOptions= --build-inputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterInputs.xcfilelist --build-outputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterOutputs.xcfilelist --output=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral release_macos_bundle_flutter_assets
[   +9 ms] [   +9 ms] "flutter assemble" took 2,517ms.
jonahwilliams-macbookpro2:flutter_gallery jonahwilliams$ flutter build macos --release -v | grep assemble
[   +2 ms] ♦ /Users/jonahwilliams/Documents/flutter/bin/flutter --verbose assemble -dTargetPlatform=darwin-x64 -dTargetFile=lib/main.dart -dBuildMode=release -dTreeShakeIcons=false -dDartObfuscation=false -dSplitDebugInfo= --DartDefines= -dExtraFrontEndOptions= --build-inputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterInputs.xcfilelist --build-outputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterOutputs.xcfilelist --output=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral release_macos_bundle_flutter_assets
[   +9 ms] [   +9 ms] "flutter assemble" took 2,528ms.

X = 1 MB
[   +2 ms] ♦ /Users/jonahwilliams/Documents/flutter/bin/flutter --verbose assemble -dTargetPlatform=darwin-x64 -dTargetFile=lib/main.dart -dBuildMode=release -dTreeShakeIcons=false -dDartObfuscation=false -dSplitDebugInfo= --DartDefines= -dExtraFrontEndOptions= --build-inputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterInputs.xcfilelist --build-outputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterOutputs.xcfilelist --output=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral release_macos_bundle_flutter_assets
[  +10 ms] [  +10 ms] "flutter assemble" took 1,406ms.
jonahwilliams-macbookpro2:flutter_gallery jonahwilliams$ rm ../../../bin/cache/flutter_tools.s*

jonahwilliams-macbookpro2:flutter_gallery jonahwilliams$
jonahwilliams-macbookpro2:flutter_gallery jonahwilliams$ flutter build macos --release -v | grep assemble
[   +2 ms] ♦ /Users/jonahwilliams/Documents/flutter/bin/flutter --verbose assemble -dTargetPlatform=darwin-x64 -dTargetFile=lib/main.dart -dBuildMode=release -dTreeShakeIcons=false -dDartObfuscation=false -dSplitDebugInfo= --DartDefines= -dExtraFrontEndOptions= --build-inputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterInputs.xcfilelist --build-outputs=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral/FlutterOutputs.xcfilelist --output=/Users/jonahwilliams/Documents/flutter/dev/integration_tests/flutter_gallery/macos/Flutter/ephemeral release_macos_bundle_flutter_assets
[  +10 ms] [  +10 ms] "flutter assemble" took 1,304ms.

This seems to be an improvement, provided we only use it on the large files

I believe the issue was due to lots of small files (633) in my case that had to be checked for md5 sums. e.g. after say "flutter linux -d linux" you can find them locally, these are just json files with "inputs:" and then lots of files listed. These files are checked for md5, and this is where the slowdown is coming (for me)
./.dart_tool/flutter_build/48b1e69a13fea91d19ffb9e8ed6035c8/unpack_linux_debug.stamp
./.dart_tool/flutter_build/48b1e69a13fea91d19ffb9e8ed6035c8/kernel_snapshot.stamp
./.dart_tool/flutter_build/48b1e69a13fea91d19ffb9e8ed6035c8/debug_bundle_linux_assets.stamp```

for example the first 10 from the "unpack_linux_debug.stamp"

```{"inputs":["/home/malkia/p/flutter/flutter/packages/flutter_tools/lib/src/build_system/targets/linux.dart"
"/home/malkia/p/flutter/flutter/bin/cache/artifacts/engine/linux-x64/libflutter_linux_glfw.so"
"/home/malkia/p/flutter/flutter/bin/cache/artifacts/engine/linux-x64/flutter_export.h"
"/home/malkia/p/flutter/flutter/bin/cache/artifacts/engine/linux-x64/flutter_messenger.h"
"/home/malkia/p/flutter/flutter/bin/cache/artifacts/engine/linux-x64/flutter_plugin_registrar.h"
"/home/malkia/p/flutter/flutter/bin/cache/artifacts/engine/linux-x64/flutter_glfw.h"
"/home/malkia/p/flutter/flutter/bin/cache/artifacts/engine/linux-x64/icudtl.dat"
"/home/malkia/p/flutter/flutter/bin/cache/artifacts/engine/linux-x64/cpp_client_wrapper_glfw/include/flutter/json_method_codec.h"
"/home/malkia/p/flutter/flutter/bin/cache/artifacts/engine/linux-x64/cpp_client_wrapper_glfw/include/flutter/json_message_codec.h"
"/home/malkia/p/flutter/flutter/bin/cache/artifacts/engine/linux-x64/cpp_client_wrapper_glfw/include/flutter/json_type.h"````

In my benchmarks, the small files take almost no time. Additionally we no longer perform hashing on anything in bin/cache


[feature] CHA-Based Virtual Call Navigation

Describe your idea
Description
Implement a feature for navigating virtual call sites using Class Hierarchy Analysis (CHA) for the following sources:
abstract class Foo {
  abstract fun foo(): String
}

class Foo1 : Foo() {
  override fun foo(): String {
    TODO("Not yet implemented")
  }
}

class Foo2 : Foo() {
  override fun foo(): String {
    TODO("Not yet implemented")
  }
}

fun foobar(foo: Foo) {
    foo.foo() // call site
}

Proposed Behavior
When navigating to the call site foo.foo(), instead of a direct jump to Foo.foo(), display a selection menu that includes:

Foo1.foo()
Foo2.foo()
Foo.foo()

This allows users to choose which implementation they want to navigate to, and the same functionality should apply to interface methods as well.

@skylot hi, i think this issues not releated to this project

@MrIkso it is good request and jadx already collect all needed data (used in override analysis).
Although, I think implementation will be slightly different. Using common 'references' window (#1368) will be easier to implement. So instead of jump menu, that 'references' window needs to be opened.
In short: this issue will be implemented as a part of #1368.

@skylot ah, it's related to xrefs, I just didn't understand this issue. Sorry.


Remove<EMAIL_ADDRESS>from optionalDependencies

Is it possbile to remvoe it as<EMAIL_ADDRESS>has security vulnaribility.
 "optionalDependencies": {
    "ws": "1.1.0",

Are you asking to upgrade to a newer version or completely remove it?
If you don't need federation, you can install busmq it without optional dependencies (--no-optional)

@fujifish if it can not be removed, it is better to be upgraded. :)

Upgraded ws to 1.1.5

@fujifish Thanks!


Launching a browser doesn't switch to that application

Hey there, I'm loving this launcher.  I'm trying to set up a button to launch a browser, and the following command successfully launches Edge, but Flex-Launcher still maintains focus after the browser is launched.  Any ideas why this this happening?
Entry1=Browser;.\assets\icons\system.png; "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft Edge.lnk"

Flex Launcher assumes that the launched executable won't return until the user has closed the application. The problem is that the Edge executable doesn't behave the way most programs do. The msedge.exe is really just a launcher. It works by forking a new process for the browser window, and then immediately returns. Chrome and Firefox on Windows also have the same behavior. So when you launch the Edge executable, it will successfully create a browser window, but Flex Launcher will re-grab the window focus almost immediately after, mistakenly thinking that Edge has closed.
As a workaround, you can use the following script to block until Edge has closed. Change the path to the msedge.exe if necessary.
@echo off
start "msedge" "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"

:loop
tasklist /FI "ImageName eq msedge.exe"  | find /i "msedge" > nul || goto :done
timeout /t 2 >nul
goto :loop

:done

It works by checking every 2 seconds to see if there are any Edge processes running, and it won't return until there are none.
Paste it into a .bat file, and then you can structure your menu entry like so:
Entry1=Browser;.\assets\icons\system.png;"C:\path\to\scripts\launch_edge.bat"

Eventually, I will incorporate similar logic into Flex Launcher itself, but you may use this workaround for the time being.

This issue is fixed in the latest release, v1.3. The logic from the above script is now incorporated directly into the launcher. Upon program launch, the launcher will check the image name of the resulting process, and, if it matches chrome.exe, msedge.exe, or firefox.exe, then it will wait until all processes of the same name have terminated before returning to the launcher screen. Launching a web browser via a shortcut to it's .exe is allowable.


Bring back hash-engine

Inspired by https://github.com/engula/engula/issues/221#issuecomment-1008024557 and as https://github.com/engula/engula/pull/269 merged, I'm going to bring back hash-engine.
It's also a blocker for #226.
However, I don't want to act as an assignee, which means you can take it over if it blocks you also. And I think this is a valuable task for anyone who wants to implement their own engine.

hash-engine is mainly for demonstration when it is built. There is no long-term plan to maintain it so far. So I don't suggest bringing it back simply to make something work. However, if someone has a plan to turn hash-engine into something more valuable, I am happy to know.

@huachaohuang a demonstration is enough for contributors understanding how to build an engine. Currently, there's no workable engine which is a user directly talk to.
If you don't think hash-engine valuable and work for connect luna-engine to the kernel, you can remove hash-engine code to reduce confusion.

I don't see the necessity to remove the hash-engine either. Just leave it alone until we really decide to drop it.

For me, it's a cutting point for getting used to Engula's architecture.

If this is the purpose, I suggest that you build an engine outside of the project using the low-level modules. It helps us understand how it is like to build a third-party engine in the current stage :)

Closed as invalid.


Start-Transcript uses lossy ASCII character encoding instead of BOM-less UTF-8 if the target file happens to exist

Note:

Windows PowerShell is not affected - UTF-8 with BOM is used consistently there.
A fix for the closely related #13678 could probably encompass a fix for this issue as well.

When the target file happens to exist and doesn't have a BOM - even without -Append - Start-Transcript mistakenly uses ASCII encoding to write the file.
Without -Append, Start-Transcript shouldn't even look at the existing file - it should simply replace it, and use the default encoding (BOM-less UTF-8). See #13678 for a closely related bug with -Append.
Instead, Start-Transcript apparently looks for a BOM at the start of an existing file and uses ASCII encoding if it doesn't find one.
Steps to reproduce
# To surface the bug, make sure that the target file exists and doesn't have a BOM.
$null > temp:/$PID.txt

$null = Start-Transcript temp:/$PID.txt
'ü' # output a string with a non-ASCII-range character
$null = Stop-Transcript

Select-String -Quiet 'ü' temp:/$PID.txt | Should -BeTrue

Remove-Item temp:/$PID.txt

Expected behavior
The test should succeed.
Actual behavior
The test fails, because ü was transliterated to verbatim ?, suggesting that ASCII encoding was used to write the file.
Environment data
PowerShell Core 7.1.0-preview.7

We get file encoding in the method https://github.com/PowerShell/PowerShell/blob/10237bdeb37718595d475bd0014b005a035b34df/src/System.Management.Automation/engine/Utils.cs#L1395
Last resort there is ASCII. It seems the method is used only in transcript and we could safely change the default.

Thanks, @iSazonov.
What you're describing is the right fix for the closely related #13678, whereas the fix for this issue is to not consider any preexisting file at all.
I suspect both issues can easily be fixed together - not sure how you want to handle that in terms of tagging.

whereas the fix for this issue is to not consider any preexisting file at all.

I don't remember but perhaps we use the same code too and fallback to ASCII.

That's what it looks like; so, to summarize:

This issue should be fixed by always using BOM-less UTF-8, because a preexisting file is simply replaced, so its encoding is irrelevant.

#13678, which applies to -Append, should be fixed by falling back to (by definition BOM-less) UTF-8 rather than ASCII in the absence of a BOM in the preexisting file.

I think we can change ASCII default to UTF8-NoBOM in  GetEncoding() - it is used only in transcript code.

Yes, but additionally we shouldn't even call GetEncoding() unless -Append is specified.

Has work on this issue already started? If not, I'd be interested to try.

@mklement0 I've changed the default encoding to UTF8 No BOM in GetEncoding in the PR #13732. But for not calling GetEncoding if the Append is specified, it's a bit trickier, the call is made in a setter of the Path property which I feel might be the best place for it. I'll take a bit more time to see exactly where the append parameter is specified and if I can move the call of GetEncoding out of the setter, but if you already have an idea about it, tell me.

Thanks for tackling this, @Gimly - I haven't even looked at the original code yet, but @iSazonov has, so perhaps he has thoughts.

@mklement0
It seems I found a root of the bug.
We use System.IO.File.WriteAllText(effectiveFilePath, string.Empty); -  its default is Utf8NoBOM.
https://source.dot.net/#System.IO.FileSystem/System/IO/File.cs,300
https://source.dot.net/#System.Private.CoreLib/StreamWriter.cs,139

Windows PowerShell is not affected - UTF-8 with BOM is used consistently there.

Are you sure? See https://referencesource.microsoft.com/#mscorlib/system/io/file.cs,848
The pattern is seems popular https://stackoverflow.com/questions/4999988/how-can-i-clear-the-content-of-a-file
You could make a warning comment there.
Since the pattern so popular we could ask .Net team to add new System.IO.File.Clear(string Path) to avoid such bugs.
@Gimly I think we could use  WriteAllText(string path, string? contents, Encoding encoding) overload here
https://github.com/PowerShell/PowerShell/blob/e107ecd08d68cc67512cd833a355dca868bd5a03/src/Microsoft.PowerShell.ConsoleHost/host/msh/StartTranscriptCmdlet.cs#L228-L232
For encoding detection in the place I suggest to use
StreamReader(string path, Encoding encoding, bool detectEncodingFromByteOrderMarks)

Are you sure? See https://referencesource.microsoft.com/#mscorlib/system/io/file.cs,848

That's interesting, but in practice Start-Transcript without a preexisting file on Windows PowerShell v5.1.18362.752 on Microsoft Windows 10 Pro (64-bit; Version 1909, OS Build: 18363.1082) creates UTF-8 files with BOM.
Is the reference source outdated?

Also, System.IO.File.WriteAllText(effectiveFilePath, string.Empty) effectively acts like a .Clear() method: given that BOM-less UTF-8 is the default encoding, the file is effectively reset to 0 bytes.

Is the reference source outdated, or is this not the relevant code?

I guess it is outdated (they makes .Net Framework compatible with .Net Core).

Also, System.IO.File.WriteAllText(effectiveFilePath, string.Empty) effectively acts like a .Clear() method: given that BOM-less UTF-8 is the default encoding, the file is effectively reset to 0 bytes (and closed again).

But if source file is in UTF16BOM the method resets it to UTF8NoBOM.

But if source file is in UTF16BOM the method resets it to UTF8NoBOM.

If -Append isn't specified, it doesn't matter what the previously existing file's encoding was.

We call WriteAllText() only in Append scenario.

@iSazonov I'm getting a bit lost on the discussion. If the default for WriteAllTextFile is indeed Utf8NoBOM, then isn't it what we expected it to be? You'd like to call the overload with the encoding with Utf8NoBOM anyway so that's we don't rely only on the default?

@Gimly My expectation is that we don't change an encoding of the transcript file if it exists.

If the file does not exist - create with default encoding. Fix is to change the default from ASCII to Uft8NoBOM.
If file exist:

if no -Append - clear the file but preserve its encoding
if -Append presents - open file with current encoding

To detect encoding it is better follow StreamReader.

@iSazonov
Re 1: agreed
Re 2:

Without -Append: We do not want to preserve any existing coding if the file exists. Just like Set-Content and Out-File quietly replace an existing file('s contents) with their default encoding (unless -Encoding is explicitly used), so should Start-Transcript. The existing file's content simply does not matter.

With -Append: whatever implementation we choose, what matters is: if there's a BOM, respect it; if there's none, use (BOM-less) UTF-8.

Without -Append: We do not want to preserve any existing coding if the file exists.

I have no strong objection.

@mklement0 I've opened a PR that, I think, fixes this issue. It's quite simple as I think the only part that was not working as you described was that the "clear file" that was done when the -Append flag isn't set wasn't fixing a specific encoding, but simply using the one that existed.
Now I've fixed the encoding (using the static readonly instance present in Utils) to UTF8 No Bom, as we had done in the PR #13732.

Thank you, @Gimly.

@iSazonov we can close this


fix(codeql): useless assignment to local variable

Fixing codeql alerts about "Useless assignment to local variable" because it only allocates dead space.
Maintainers will complete the following section

[ ] Commit messages are descriptive enough (hints)
[ ] Code coverage from testing does not decrease and new code is covered
[ ] Controllers diagrams are updated when PR changes controllers code  (if applicable)

fixes:

https://github.com/redhat-appstudio/integration-service/security/code-scanning/12
https://github.com/redhat-appstudio/integration-service/security/code-scanning/5


eclipse: 2023-06 -> 2023-09

Description of changes
As in previous updates (#246202, etc.), someone else will need to test on aarch64.  I've used this for a couple of days at work already and haven't seen any issues.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

cc @rycee @OPNA2608

Thanks! Merged to master 🙂


test(blockifier): add all resource bounds to stateful validator test

This change is

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#1310
#1309
#1308
#1307  👈
#1306
main

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

Join @dorimedini-starkware and the rest of your teammates on  Graphite


shared: Update ExtractConn to detect net.TCPConn

And some other small improvements.

jenkins: test this please


Add the ability to process files in a library

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@64bf7f3). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main       #2   +/-   ##
=======================================
  Coverage        ?   71.99%
=======================================
  Files           ?       11
  Lines           ?      407
  Branches        ?        0
=======================================
  Hits            ?      293
  Misses          ?      114
  Partials        ?        0

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 64bf7f3...58f4c91. Read the comment docs.


A filter console

Instead of hard coded filters, let's add a query language to let the user write their own filters. Simple.

Criticism:

Maybe filtering when typing and only displaying errors in a nonintrusive way unless enter is pressed would be better.
Filter icon looks out of place...
Other than that, the 🌶 is real.


networkPolicy.additionalNetworkPolicys in values.yaml doesn't work properly

Describe the bug
Setting networkPolicy.additionalNetworkPolicys in values.yaml doesn't work.
$ helm upgrade --install -n sonarqube -f values.yaml sonarqube sonarqube/sonarqube

Error: UPGRADE FAILED: YAML parse error on sonarqube/templates/networkpolicy.yaml: error converting YAML to JSON: yaml: line 42: mapping values are not allowed in this context

Indent is set to 4 in templates/networkpolicy.yaml. Should it be 2 to be valid YAML for NetworkPolicy?
Fixing only that indent doesn't fix the issue though but with these additional changes to the template I'm able to get working NetworkPolicy which doesn't overwrite the default ones due to using same name for the NetworkPolicy resource:
diff --git a/charts/sonarqube/templates/networkpolicy.yaml b/charts/sonarqube/templates/networkpolicy.yaml
index 95a7c13..16b11a4 100644
--- a/charts/sonarqube/templates/networkpolicy.yaml
+++ b/charts/sonarqube/templates/networkpolicy.yaml
@@ -96,12 +96,12 @@ spec:
           protocol: UDP
 {{- end }}

-{{- if and .Values.networkPolicy.enabled .Values.networkPolicy.additionalNetworkPolicys -}}
+{{- if and .Values.networkPolicy.enabled .Values.networkPolicy.additionalNetworkPolicys }}
 ---
 kind: NetworkPolicy
 apiVersion: networking.k8s.io/v1
 metadata:
-  name: {{ template "sonarqube.fullname" . }}-network-policy
+  name: {{ template "sonarqube.fullname" . }}-additional-network-policy
   labels:
     app: {{ template "sonarqube.name" . }}
     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
@@ -109,6 +109,6 @@ metadata:
     heritage: {{ .Release.Service }}
 spec:
 {{- with .Values.networkPolicy.additionalNetworkPolicys -}}
-{{ toYaml . | indent 4 }}
+{{ toYaml . | nindent 2 }}
 {{- end }}
{{- end -}}

An example of setting additional network policies in values.yaml documentation would also improve usability of the chart.
Versions used:

Chart Version: 3.0.0+296
SonarQube Version: 9.4.0
Helm Version: 3.8.1
Kubernetes Version: OpenShift 4.9.31 / Kubernetes v1.22.8

Custom Values
Please add a minimal value example to reproduce this error
networkPolicy:
  enabled: true
  additionalNetworkPolicys:
    podSelector:
      matchLabels:
        app: sonarqube
    ingress:
    - ports:
      - protocol: TCP
        port: 9000
      from:
      - namespaceSelector:
          matchLabels:
            network.openshift.io/policy-group: ingress
    policyTypes:
    - Ingress

Expected behavior
Additional network policies to be created without overwriting the default ones.
Screenshots
None.
Additional context
Setting additional network policies is required for OpenShift route to work.
https://docs.openshift.com/container-platform/4.9/networking/network_policy/about-network-policy.html

Hello @Mustaavalkosta
Thanks a lot for your feedback and for the code suggestion!
There is indeed an issue with the additionalNetworkPolicys property, I will create a PR shortly and the issue is tracked here  : https://jira.sonarsource.com/browse/SONAR-16457


About MASLayoutConstraint

If want to use mas_updateConstraints or mas_remakeConstraints methods,they must be MASLayoutConstraint class.Why not NSLayoutConstraint?If it do this,it can update the Xib's Constraints.I editor some code .
    for (NSLayoutConstraint *existingConstraint in self.installedView.constraints.reverseObjectEnumerator) {
        //if (![existingConstraint isKindOfClass:MASLayoutConstraint.class]) continue;
        if (existingConstraint.firstItem != layoutConstraint.firstItem) continue;
        if (existingConstraint.secondItem != layoutConstraint.secondItem) continue;
        if (existingConstraint.firstAttribute != layoutConstraint.firstAttribute) continue;
        if (existingConstraint.secondAttribute != layoutConstraint.secondAttribute) continue;
        if (existingConstraint.relation != layoutConstraint.relation) continue;
        if (existingConstraint.multiplier != layoutConstraint.multiplier) continue;
        if (existingConstraint.priority != layoutConstraint.priority) continue;

        return (id)existingConstraint;
    }
    return nil;

Do you think so ?
(eg:My english is not well ,ignore it please!)

@TheSolitary unfortunately we have no way to know where IB installs their constraints so even if we did use NSLayoutConstraint it wouldn't work.
If you look closely at the method we only compare against constraints in the self.installedView.constraints which are constraints generated explicitly by Masonry.
My best advice would be to set any constraints you need to update/remake from IB as "placeholder" and create them in viewDidLoad with Masonry instead, then you can update/remake them.


Codec AVOption sub_charenc (set input text subtitles character encoding) specified for output file #0

my autoprcess settings:
[MP4]
ffmpeg = D:\ffmpeg\ffmpeg.exe
ffprobe = D:\ffmpeg\ffprobe.exe
threads = 0
output_directory =
copy_to =
move_to =
output_extension = mp4
output_format = mp4
delete_original = True
relocate_moov = True
video-codec = h264,x264,mpeg4,MPEG-4,MPEG-H,h.264
video-bitrate = 3000
video-crf = 22
video-max-width = 1280
video-profile = main
h264-max-level = 3.1
use-qsv-decoder-with-encoder = True
use-hevc-qsv-decoder = False
enable_dxva2_gpu_decode = False
ios-audio = False
ios-first-track-only = False
ios-audio-filter =
ios-move-last = False
max-audio-channels = 6
audio-codec = libfdk_aac
audio-language =
audio-default-language = eng
audio-channel-bitrate = 64
audio-filter =
audio-copy-original = False
audio-first-track-of-language = False
subtitle-codec = mov_text
subtitle-language =
subtitle-default-language = eng
subtitle-encoding = UTF8
fullpathguess = True
convert-mp4 = True
tagfile = True
tag-language = en
download-artwork = Thumbnail
download-subs = False
embed-subs = True
embed-only-internal-subs = True
sub-providers = addic7ed,podnapisi,thesubdb,opensubtitles
permissions = 0777
post-process = False
pix-fmt = yuv420p
aac_adtstoasc = False
postopts = -tune,film,-preset,faster,-maxrate,3M,-bufsize,12M
preopts =
If you have
subtitle-encoding = UTF8
And
video-bitrate =
it will encode fine.
Once you add a value into video-bitrate = 3000 it will not encode and throws error:
Codec AVOption sub_charenc (set input text subtitles character encoding) specified for output file #0 X  is not an encoding option.

Why it is closed ? What is the solution ?

Yeah this was never fixed
504b4ca4a866e0bf0fba655a82a2bdc35524fa18
But that should fix it, the prior implementation was wrong.
Encoding should be UTF-8 not UTF8 as listed above though just for testing. Let me know if that fixes things


Can’t import react from node_modules

The problem is two-fold. First, esbuild doesn’t allow importing CommonJS in our current configuration:
[plugin esbuild] node_modules/react/index.js: ▲ [WARNING] Converting "require" to "esm" is currently not supported [unsupported-require-call]

Second, if you use the commonjs rollup plugin, the module.exports gets erroneously turned into the default export instead of using named exports.
I have to admit I’ve forgotten why we’re using both esbuild as a rollup plugin, instead of either using rollup by itself, or using esbuild by itself. 😕

Fixed in #1229.


Are there any complete task definitions？

Thanks for the awesome datasets!
Currently, I'm working on my project which needs precise task definitions to describe the video, but the task_definitions.csv only has a sheet about the object and the movement, e.g. "toy car" and "Pick and place".
What I want is the entire sentence of the precise description, such as "Pick the toy car and place it on the table". Can you upload the original full description list of the tasks, or provide a method to let me assemble the object and movement to become a full description sentence? Thanks a lot.

Hi cxchhh,
HOI4D only represents a task as a combination of the object category (C) and the action label (T). We recommend to manually define the mapping from the <object category, action label> pair to the sentence.
The <object category, "pick and place"> pair can be transferred to "Pick a  and then place it somewhere.". Other action labels are category-specific and easy to understand and transfer to sentences.

Understood. Thank you very much


Warning about lack of end-to-end encryption and unreviewed code.

If we're going to stick this onto genkey, include a note about haveged also perhaps?


ja: Make docs/reference/access-authn-authz/rbac.md follow v1.19 of the original text

This is a Feature Request

What would you like to be added
Update docs/reference/access-authn-authz/rbac.md to follow v1.19 of the original (English) text.
Why is this needed
content/ja/docs/reference/access-authn-authz/rbac.md is outdated.
Comments
/language ja
/good-first-issue
File to update
https://github.com/kubernetes/website/tree/dev-1.19-ja.2/content/ja/docs/reference/access-authn-authz/rbac.md
Original
https://github.com/kubernetes/website/tree/release-1.19/content/en/docs/reference/access-authn-authz/rbac.md
diff between translated and v1.19
https://gist.github.com/4ad8fe5de8b69b2477349dcd45b523fb
Note
Currently, we use dev-1.19-ja.2 branch. Please open a PR targeting the branch.
ref
https://kubernetes.io/ja/docs/contribute/localization/
If you have a question, feel free to ask us at slack.k8s.io #kubernetes-docs-ja channel

/triage accepted

/assign

/close


Begin adding "admin level" auth to the UI and GraphQL API

Starts to address #197

Adds 2 database roles via a migration: anonymous and mergestat_admin
Updates the local docker-compose setup to make use of the roles and JWT based auth
Adds an API endpoint (in the UI) at /api/admin-auth to authenticate a user who knows the "admin password" - a global shared password that will permit admin access

NOTE: in the current state of this PR, the UI will break as authentication is not handled anywhere. I suggest we keep this PR/branch open (I will keep it up to date) and eventually merge the UI changes we need in here, so that everything may be merged at once.

@patrickdevivo can we please mark this PR as draft since it is not ready to merge.


Peer to Peer Code Review

:clap: You have done really good work on the implementation of the required functionalities. However, You could consider the following suggestions to improve your project;

For best CSS practice, please ensure the body selector in your stylesheet appears at the top.
Kindly consider using the DRY technique for best code practices const ArrayStoredParse = JSON.parse(localStorage.getItem('TaskToday'));

Thank you guys! :+1:


Target OS requirements for apps

Is there any information about the system requirements on Windows and macOS? I saw that the Cryptowatch Desktop is listed in the Mac App Store as macOS 10.11 or later. Does it also work on 10.15 and Big Sur?

@sourcebox Hey! Most likely the system requirements of Cryptowatch Desktop are based on the version of the toolkit it was compiled on (for example, the macOS SDK). The Iced library is easily cross-compiled for Windows, macOS, Linux. The only system requirement for me is the presence of a graphics card (or built-in) that supports Vulkan (since wgpu mainly relies on it)

Thanks for the info. I already found out how to build my app on macOS 10.13 with the ability to run it on macOS 10.11. I think that there is a lack of good documentation on this topic generally - this is not related to iced.
While doing this, I discovered that on macOS 10.11 my app and also all iced examples work but crash on exit. This is likely caused by an underlying framework. I used the glow feature for all my tests, this seems to be the only option for older macs.

@sourcebox If you want to see a proper example, our build workflow leverages GitHub CI to build the todos example and upload the resulting binaries for Windows, macOS, and Linux.


allow to change log file name or path in config file(app.php)

in this way, you can change log file name or path in your projects.
'log_file' => storage_path('logs').'/laravel.log'
or
'log_file' => env('APP_LOG_FILE', storage_path('logs').'/laravel.log')

Holding off on this.


SECRET_KEY is not secret

I could probably be generated if it doesn't already exist in /settings?

SECRET_KEY parameter has been moved into a different file (settings/secret_key.py). If not present it will be generated at the first run.


Fix GetLoadableTypes() extension potentially including null Type instances

As stated in the docs, ReflectionTypeLoadException.could potentially include null types instances in the array, causing TestBrowser to eat a null reference exception as it uses it:
https://github.com/ppy/osu-framework/blob/99a640861a45a4e9f5c2e32c8dffb483c5ecf457/osu.Framework/Testing/TestBrowser.cs#L72 https://github.com/ppy/osu-framework/blob/99a640861a45a4e9f5c2e32c8dffb483c5ecf457/osu.Framework/Testing/TestBrowser.cs#L87
This fixes test browser no longer working for me due to the above.

Also not entirely sure how to handle that ConditionIsAlwaysTrueOrFalse resharper warning, the array is declared as Type[]?, which, if I understand correctly, means it's either a null array, or an array with non-null type elements. But the array indeed had a null Type element sticking inside...

For reference, how did you trigger this in the first place?

For reference, how did you trigger this in the first place?

Had tau ruleset installed, while the test browser was fetching types through assemblies, it attempted to do so on that ruleset's assembly, and for some reason, the ReflectionTypeLoadException passed an array list with a null type inserted.
I'm guessing it's because I had an old unloadable version of that ruleset.

Had tau ruleset installed, while the test browser was fetching types through assemblies, it attempted to do so on that ruleset's assembly, and for some reason, the ReflectionTypeLoadException passed an array list with a null type inserted.
I'm guessing it's because I had an old unloadable version of that ruleset.


Meaning of max_quads for ImplicitFunction

The current explanation "The maximum number of quads to use." on https://docs.manim.community/en/stable/reference/manim.mobject.functions.ImplicitFunction.html is not useful imo.
Also when googling something like "function quads", I found results regarding the quadrizeps-muscle, so I guess it's not THAT easy to find it out yourself.

I think the note there states the practical effect on rendering pretty clearly. Is there anything you would add?


Train My Own Robot

How could I use loco-mujoco training my own robot?I hope you can give me a detailed guidance!

Hi!
Sorry, for the late reply. We don't have such a tutorial right now, but it will be included soon.
I'll keep this open and notify you once it is done.


DownsamplingImageProcessor ambiguous without more context

Hi there,
My code below shows an error in options: [] of the setImage function:
"Type of expression is ambiguous without more context"
This is inside a cellForRowAt.
ImageCache.default.retrieveImage(forKey: listUsers[indexPath.row].cPicture) { result in
                        switch result {
                        case .success(let value):
                            switch value {
                            case .none:
                                print("no cache")
                            case .disk:
                                DispatchQueue.main.async {
                                    cell.iv_picture.kf.setImage(with: value, options: [
                                        .processor(DownsamplingImageProcessor(size: CGSize(width: 50, height: 46)))])
                                }
                            case .memory:
                                DispatchQueue.main.async {
                                    cell.iv_picture.kf.setImage(with: value, options: [
                                        .processor(DownsamplingImageProcessor(size: CGSize(width: 50, height: 46)))])
                                }
                            }
                        case .failure(let error):
                            print(error)
                        }
                    }

What am I doing wrong?
I tried a lot of options in the wiki.
Thanks a lot!

Hi,
What is the type of your value?

The type of value in your code is an ImageCacheResult. I guess you cannot set it as a parameter of kf.setImage, unless you have your own version. I suspect this causes the ambiguous. I believe it would be a good idea to check the error detail to see what exactly causes it.


how to build firefox in pi5 yocto image

Hi all,
sorry to bother you again.
before I used chromium-x11 in pi5 image. my docker build ENV works well.
for some reasons, I want to build firefox.
but after I added  meta-browser/meta-firefox in  bblayers.conf
and added (or not added ) fIMAGE_INSTALL_append = " firefox" in local.cong to build
there is an error output:
ERROR: The following required tools (as specified by HOSTTOOLS) appear to be unavailable in PATH, please install them in order to proceed:
python python2.7
I added python 2.7 in Dockerfile (default python3 I think) , but it was output:
ERROR: The following required tools (as specified by HOSTTOOLS) appear to be unavailable in PATH, please install them in order to proceed:
python
I did not how to add python ？？？？？  I added python in Dockerfile, but can not find the source
I use it  commit 1879cb831f4ea3e532cb5ce9fa0f32be917e8fa3 (HEAD -> master, origin/master, origin/HEAD)
Author: Max Stepanov<EMAIL_ADDRESS>Date:   Thu Mar 21 13:50:55 2024 -0400
I what  to know how to build firefox or can I build firefox in yocto image?

I added RUN ln -s /usr/bin/python3 /usr/bin/python  in Dockerfile to solve the issue.
now It is build firefox, hope it can work well.

can not pass compiling firefox
8 times
2:47.30 error: proc-macro derive panicked.
..
2:49.16 error: could not compile cssparser (lib) due to 14 previous errors
..
ERROR: Task (/home/yocto/yocto/source/layers/meta-browser/meta-firefox/recipes-browser/firefox/firefox_68.9.0esr.bb:do_compile) failed with exit code '1'
any help?

I found the first error output:
1:02.34 /home/yocto/yocto/source/build/tmp/work/cortexa76-poky-linux/firefox/68.9.0esr/firefox-68.9.0/media/libopus/celt/arm/celt_neon_intr.c:208:18: error: call to undeclared function 'celt_inner_prod_neon'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
it looks like  use wrong compiler C version?
how to fix ?
any idea?
Thanks

Take a look at https://github.com/OldManYellsAtCloud/meta-browser if you haven't already found it
Original meta-browser repo hasn't updated Firefox in 4 years. Not sure on compatibility with RPI 5 though

@mihaistoica97  thanks. I did not use firefox. I still use chrome


[language] add missing pieces to bytecode-to-boogie translator

Motivation
I added some of the missing pieces mentioned in my last PR(#434) and fixed some bugs.

Mutable references passed in as arguments to function calls are returned as well because they might have been updated in the callee.
Deep update functions are called after function calls that take in mutable references as arguments.
Type checking for arguments. For example, in logic operations like And we assert is#Boolean(op1) and is#Boolean(op2). And in the main function which we want to verify, I added assume is#TYPE_CONS(arg).
Eq and Neq functions for structs.
Instructions related to gas/transactions/account.
Abort/assert.
LdAddr, LdByteArray and LdStr.

Have you read the Contributing Guidelines on pull requests?
Yes.
Test Plan
cargo run FILE_NAME

Included test cases and how to make them pass Boogie
I added assert statements in some of the test cases and all of the test cases in test_mvir/ behave expectedly. Specifically,

test-arithmetic.mvir, test-control-flow.mvir and test3.mvir produce Boogie code that verify without any modification.
test-func-call.mvir verifies after we inline functions f and g(adding {:inline 1} decorator to TestFuncCall_f and TestFuncCall_g in generated output.bpl).
test-reference.mvir verifies after we inline function mut_b. Without inlining, somehow the SMT-LIB generated by Boogie will cause a seg fault in z3.
test-struct.mvir verifies after we add the following pre conditions to function module_builtins:

requires domain#ResourceStore(rs_TestStruct_T)[a#Address(arg0)];
requires !domain#ResourceStore(rs_TestStruct_T)[a#Address(senderAddress)];

test-special-instr.mvir does not verify because I don't know how to deal with special instructions like CreateAccount.

I will keep testing and fixing any bugs in the code.
Related PR
https://github.com/libra/libra/pull/434

I have a couple of questions:

We're modeling U64s using Int's, but every int value representing a U64 has to have an assumption that the value is in the range 0 to U64_MAX.  Is this implemented?
Arithmetic instructions abort on overflow or underflow, but I don't see the code for that.

Good questions. No I have not handled anything related to integer overflow/underflow. Will work on it.


Move to ddev org

This repo is ready to move to the ddev org.
When you're ready to move it @mkalkbrenner let me know and I'll give you permissions on github.com/ddevl and you can transfer it there, and then I'll transfer it to ddev.
Related:

https://github.com/ddev/ddev/issues/5002

Thanks! We should do so after finishing the configset upload test in #13

I have invited you to the ddevl org as owner; you can move this there and I'll move it from there to the ddev org.

Hoping we can do this soon, all you have to do is transfer it, then I'll transfer it, then it needs a PR to change naming instances.

@mkalkbrenner you can just do the transfer any time. Looks like you accepted the invite OK, so you can just transfer to the ddevl org and I'll immediately transfer to ddev org.

@rfay I have a question before doing the move. I just finished Solr 9 support for Drupal.
It works with ddev by just changing this line:
https://github.com/mkalkbrenner/ddev-solr/blob/ffe1c06c050d8ab46d98da94341822d80c8e445b/docker-compose.solr.yaml#L5
How do we deal with that in official add-ons? Do we need to provide different ones? One for Solr 8 and one for Solr 9? Or should we document to change docker-compose.solr.yaml?

I moved the project

Yay, it's moved. Now please fix it up to change the references to the project, and then do a new release.

And then we have to deprecate ddev-drupal9-solr and clear things up in its docs.

The new add-on works perfectly, thanks @mkalkbrenner and @rfay! I made a PR (#25) to update the install path to use ddev/ddev-solr and the test path as well.
I hope https://github.com/ddev/ddev-drupal9-solr/ won't be removed, since many still use it?

Thanks, closing this. Thanks for the PR @gitressa - is there other cleanup to be done @mkalkbrenner ?
@gitressa can you suggest a good future for ddev-drupal9-solr? I could move it to my user (github redirects work great). We could just put a big USE ddev-solr IF YOU CAN at the top of its readme? If you have a suggestion, please PR it, thanks!


Update EventProcessorHost.cs

Wrong Namespace was used.
Correct is using Microsoft.Azure.Storage;
Related to https://github.com/Azure/azure-sdk-for-net/issues/7305#issuecomment-522127901

Can one of the admins verify this patch?

You need to up the Storge Nuget package version as well.

Close because the problem is related to "Microsoft.Azure.Storage.Blob"


[User Story] - notation plugin extensibility for sign and verify

As a signer, I want to use an extensible plugin to sign the artifacts
As a verifier, I want to use extensible plugin to verify signed artifacts

[ ] https://github.com/notaryproject/notation/issues/230

@dtzar @iamsamirzon @vaninrao10 @gokarnm @priteshbandi  I think this user story is done except the plugin CLI, which is tracked by other user stories. And for rc.1, notation plugin list will be the only command, I can create a PR to address the notation plugin list spec for rc.1

Close as completed.


DAM: Handle duplicated filenames

add dialog for handling duplicated file
in the first version it was possible to change the name of every file before uploading
after consultation with the UI/UX team, the dialog was reduced
now there are only two options:

skip duplicated files
upload as copy

Screencast:
https://user-images.githubusercontent.com/13380047/187226351-7d2118ee-19d5-4f73-850f-3e99f4431083.mov

@johnnyomair I reworked the whole feature. It should be easier to read now.
We can still go through the code together when you have time

@johnnyomair I reworked the whole feature. It should be easier to read now.
We can still go through the code together when you have time

It's far easier to understand now, thanks 🙂


tweak api ux

        let app = Router::new()
            .route("/search", get(search))
            .route("/recent", get(get_by_date_range))
            .layer(CorsLayer::permissive())
            .with_state(app_state);

i think we should remove /recent and make /search have time filters + other stuff
just a powerful search, clean, would be a dream
cc @m13v

yeah, let's focus on making metadata easily searchable

@m13v also was thinking we should have a way to annotate data through api
use case:
have some processing script that annotate rows with a llm for example
"between 8 am and 10 am i was doing work on X project"
"between 9 am and 9.30 am i context switched 30 times"
or idk, bunch of stuff to do

we need to extract entities, and we don't know them until the user confirms
them. E.g. based on the recent screens it looks like you are working on
that or that, what would you call this project, is this a project, etc.
On Sun, Jul 14, 2024 at 11:56 PM Louis Beaumont @.***>
wrote:

@m13v https://github.com/m13v also was thinking we should have a way to
annotate data through api
use case:
have some processing script that annotate rows with a llm for example
"between 8 am and 10 am i was doing work on X project"
"between 9 am and 9.30 am i context switched 30 times"
or idk, bunch of stuff to do
—
Reply to this email directly, view it on GitHub
https://github.com/louis030195/screen-pipe/issues/43#issuecomment-2227812599,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AY62CDEO22TBE44YBRSB5ATZMNXATAVCNFSM6AAAAABKZMULO6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMRXHAYTENJZHE
.
You are receiving this because you were mentioned.Message ID:
@.***>

hm no
AI can extract things without human intervention, that's how LLM works (self supervised learning)


driver / AMI430 handles invalid values incorrectly

The AMI430 driver does not handle invalid target field values correctly. I could only test this with the simulated instrument, but as far as I can see from the source, the real instrument will have the same behaviour.
Steps to reproduce
import numpy as np

import qcodes.instrument.sims as sims
from qcodes.instrument_drivers.american_magnetics.AMI430 import AMI430_3D, AMI430Warning
from qcodes.instrument.ip_to_visa import AMI430_VISA
from qcodes.math.field_vector import FieldVector

field_limit = [
    lambda x, y, z: x == 0 and y == 0 and z < 3,
    lambda x, y, z: np.linalg.norm([x, y, z]) < 2
]

# path to the .yaml file containing the simulated instrument
visalib = sims.__file__.replace('__init__.py', 'AMI430.yaml@sim')

mag_x = AMI430_VISA('x', address='GPIB::1::65535::INSTR', visalib=visalib,
                    terminator='\n', port=1)
mag_y = AMI430_VISA('y', address='GPIB::2::65535::INSTR', visalib=visalib,
                    terminator='\n', port=1)
mag_z = AMI430_VISA('z', address='GPIB::3::65535::INSTR', visalib=visalib,
                    terminator='\n', port=1)

driver = AMI430_3D("AMI430-3D", mag_x, mag_y, mag_z, field_limit)

#######################################################################
# Example starts here

print(f'x is set to {driver.x()}')
try:
    invalid_value = 999
    print(f'Trying to set x to {invalid_value}')
    driver.x(invalid_value)
except ValueError:
    print('Did NOT set x')
print(f'x is set to {driver.x()}')

Expected behaviour
The set point should not update when the value is invalid.
Actual behaviour
The set point does update.
@QCoDeS/core

@sohailc, perhaps it is easiest for you, as the original author, to look into this one?

@WilliamHPNielsen I am on it

https://github.com/sohailc/Qcodes/tree/fix/ami_invalid_field_limits_set

https://github.com/QCoDeS/Qcodes/pull/1162

Fixed by #1162


Keptn Bridge: Download CLI link in user menu

In the Get started section, a link Download Keptn CLI is provided that points to an external URL (e.g., https://github.com/keptn/keptn/releases/tag/0.7.1) that hosts the CLIs for Mac, Windows, Linux.

Task

Show the Download Keptn CLI link in the user menu
The link to the CLI is not hard-coded, but rather configurable by an environment variable

Can we please make the Download Link configurable in the values file of the Helm chart.


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_02x0an26wq/clone/recipe/meta.yaml:15: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_02x0an26wq/clone/recipe/meta.yaml:20: missing_wheel: For pypi packages, wheel should be present in the host section
Errors were found


Add quantum data types

Factored out from #597.

Adds the basic data types under _infra/data_types, with some documentation.
Adds a dtype property to registers. I couldn't find a non-invasive way of shimming dtype into Register: adding a converter for bitsize is problematic because then reg.bitsize would return a QDType. changing the name to reg.dtype would require a huge diff (replacing Register(.., bitsize=n) everywhere).
No type checking or any other features of data types are used. Essentially nothing has changed.

Part 2: deprecate bitsize in register for dtype and add bitsize as a property of Register. Add some interception code for Signature.build as discussed in #597. This will be a big PR. passing an int will work but will raise a warning potentially (although this is probably too annoying in practice). This will lead to some temporary weirdness like reg = Register(dtype=1) which is unfortunate but I don't see a way around it.
Part3: deprecate SelectionRegister in favour of Register(dtype=BoundedQInt(...))
Part 4: A handful of PRs for the registers which actually use numeric types (arithmetic / chemistry, ...). Splits / Joins. Type checking won't be enforced yet.
Part 5:  Totally deprecate integer values for Register.
Part 6: Enforce type checking of registers during _process_soquets. Splits/Joins expect dtypes rather than register sizes.

I couldn't find a non-invasive way of shimming dtype into Register

Is this because of attrs which ties ones hands when trying to do some of this funny business? I was thinking
def __init__(self, name: str, bitsize: Union[int, QDType]):
  if isinstance(bitsize, int):
     self._dtype = QBit() or QAny(bitsize)
  else:
    self._dtype = bitsize

@property
def bitsize(self):
  return self._dtype.num_qubits

@property
def dtype(self):
  return self._dtype

maybe this is wonky to get into attrs. Maybe you can use the fact that attrs will strip leading underscores from attribute names in the constructor
class Register:
  name: str
  _bitsize: Union[...] = field(converter=turn_everything_secretly_to_qdtype)

  @property
  def bitsize(self): ... # ok now

  @property
  def dtype(self): return self._bitsize # not the most readable, but works in a pinch.

right I couldn't figure out how to do it without an init + private. Your solution should work looking through attrs docs again.

I'll skip part 2 as bitsize can stay until the migration is complete.

xref #446


linkedlist prog

hope you will merge my request

Hey @AdarshAddee  can you please assign this issue to me under hacktoberfest2022


Create a dependency graph (debtree / pipdebtree)

https://github.com/itu-devops/lecture_notes/blob/master/sessions/session_02/README_EXERCISE.md#create-a-dependency-graph-of-your-application

The pipdeptree file has been created. Now we must create a graph for the whole system.


S3 multipart upload completion error

I have been trying to run the Multipart upload example against Moto from:
https://docs.aws.amazon.com/AmazonS3/latest/dev/llJavaUploadFile.html
Using the class UploadObjectMPULowLevelAPI.
When calling completeMultipartUpload, I get an error response:
com.amazonaws.services.s3.model.AmazonS3Exception: One or more of the specified parts could not be found. The part might not have been uploaded, or the specified entity tag might not have matched the part's entity tag. (Service: Amazon S3; Status Code: 400; Error Code: InvalidPart; Request ID: null; S3 Extended Request ID: null), S3 Extended Request ID: null
I believe the error is being thrown from the below code:
s3/models.py
def complete(self, body):
    decode_hex = codecs.getdecoder("hex_codec")
    total = bytearray()
    md5s = bytearray()

    last = None
    count = 0
    for pn, etag in body:
        part = self.parts.get(pn)
        if part is None or part.etag != etag:
            raise InvalidPart()

The part.etag appears to contain a string with additional quotes e.g '"7319d066c5e41e4c25f3fc3cef366adb"' They are being removed on line 175, however I think they are causing the prior equality check on line 171 to fail.
The addtional quotes are introduced in FakeKey, line 97: return '"{0}"'.format(self._etag)
https://github.com/spulec/moto/blob/master/moto/s3/models.py#L97
Removing the outer quotes appears to fix the issue e.g return "{0}".format(self._etag)
I'm not sure whether this is an appropriate fix, it would be great it someone could take a look.
Thanks in advance.
Jon

I am also running into this issue. Anyone have any thoughts on this?

I removed the outer quotes as well and everything is working just fine for me.

+1

Can one of your add a minimum failing test case? We have multiple tests that do multipart uploads so it would be helpful to understand what is different.

I just used the multipart upload example from AWS site:
    AmazonS3 s3Client = AmazonS3ClientBuilder.standard()
            .withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration("some-kind-of-endpoint"))
            .withCredentials(new AWSStaticCredentialsProvider(new BasicAWSCredentials("user", "pass")))
            .disableChunkedEncoding()
            .withPathStyleAccessEnabled(true)
            .build();

    // Create a list of UploadPartResponse objects. You get one of these
    // for each part upload.
    List<PartETag> partETags = new ArrayList<PartETag>();

    // Step 1: Initialize.
    InitiateMultipartUploadRequest initRequest = new
            InitiateMultipartUploadRequest("bucket", "key");
    InitiateMultipartUploadResult initResponse =
            s3Client.initiateMultipartUpload(initRequest);

    File file = new File("filepath");
    long contentLength = file.length();
    long partSize = 5242880; // Set part size to 5 MB.

    try {
        // Step 2: Upload parts.
        long filePosition = 0;
        for (int i = 1; filePosition < contentLength; i++) {
            // Last part can be less than 5 MB. Adjust part size.
            partSize = Math.min(partSize, (contentLength - filePosition));

            // Create request to upload a part.
            UploadPartRequest uploadRequest = new UploadPartRequest()
                    .withBucketName("bucket").withKey("key")
                    .withUploadId(initResponse.getUploadId()).withPartNumber(i)
                    .withFileOffset(filePosition)
                    .withFile(file)
                    .withPartSize(partSize);

            // Upload part and add response to our list.
            partETags.add(
                    s3Client.uploadPart(uploadRequest).getPartETag());

            filePosition += partSize;
        }

        // Step 3: Complete.
        CompleteMultipartUploadRequest compRequest = new
                CompleteMultipartUploadRequest(
                "bucket",
                "key",
                initResponse.getUploadId(),
                partETags);

        s3Client.completeMultipartUpload(compRequest);
    } catch (Exception e) {
        s3Client.abortMultipartUpload(new AbortMultipartUploadRequest(
                "bucket", "key", initResponse.getUploadId()));
    }

@spulec is there something expected for this issue to move forward?

I don't remember where I read this, but I believe someone thought this issue was specific to multipart uploads using the Java SDK. Maybe it uses etags without quotes, but the other major SDKs do use quotes?

Provided a fix that works for us in https://github.com/spulec/moto/pull/1651 Our test case as the simple example from Evaporate.JS.

Can someone test this again now that we've merged https://github.com/spulec/moto/pull/1707 and see if we can close this?

AWS ETags have the form "<MD5>" (multipart "<MD5>-<num_parts>") - i.e. the quotes are included, like {..., 'ETag': '"..."'} response.

I have been trying  multipart upload inputstream, because  i can't know the total size;
env:
spring boot 2.0
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-s3</artifactId>
      <version>1.11.336</version>
    </dependency>

code:
step 1.  loop call below method:
public void partUpload(String bucketName,
                           String fileKey,
                           byte[] bytes,
                           int partNumber, boolean isLastPart) {
        ByteArrayInputStream inputStream = new ByteArrayInputStream(bytes);
            InitiateMultipartUploadRequest initRequest = new InitiateMultipartUploadRequest(bucketName, fileKey);
            InitiateMultipartUploadResult initResponse = s3Client.initiateMultipartUpload(initRequest);

 UploadPartRequest uploadRequest = new UploadPartRequest()
                    .withBucketName(bucketName)
                    .withKey(fileKey)
                    .withUploadId(initResponse.getUploadId())
                    .withPartNumber(partNumber)
                    .withInputStream(inputStream)
                    .withLastPart(isLastPart)
                    .withPartSize(bytes.length);
            // Upload the part and add the response's ETag to our list.
            UploadPartResult uploadResult = s3Client.uploadPart(uploadRequest);
            PartETag partETag = uploadResult.getPartETag();
           // .... .use redis  to save the PartETag as a list
}

step 2. when the stream end, call below method

// .......get PartETaglist from redis
CompleteMultipartUploadRequest compRequest =
                        new CompleteMultipartUploadRequest(partUploadDto.getBucketName(), fileKey,
                                partUploadDto.getUploadId(),
                                eTags);
                s3Client.completeMultipartUpload(compRequest);

Q:

when just one PartETag it works success;
where PartETag size is more then one, it will throw exception, as below :
com.amazonaws.services.s3.model.AmazonS3Exception: One or more of the specified parts could not be found.  The part may not have been uploaded, or the specified entity tag may not match the part's entity tag.

i solved it,  because every part , the uploadId is difference , i save the first uploadId with redis, then next part i use the previous uploadId from redis.  then success.

Just to let you guys know, if you add this in your CORS bucket configuration, it might solve your issue. For me, it did:
ETag

i solved it, because every part , the uploadId is difference , i save the first uploadId with redis, then next part i use the previous uploadId from redis. then success.

Could you please pass the code you used to solve the issue, please? I think I have the same problem.

Facing the similar error, could someone shed light here for the fix or how to over come?
com.amazonaws.services.s3.model.AmazonS3Exception: One or more of the specified parts could not be found. The part may not have been uploaded

Hi @sureshavm, can you share your test case?
Which version of Moto are you using?

@bblommers - we are reading the source which has around 200 files and each is approx of 450 MB. the count is 352172008.  After this, we are joining with 2 other tables and store the result in a Dataframe. Dataframe count shows  352172008. But when we are writing dataframe output in the S3 file, records are getting lost and the count is coming approx 335751188. Each time count is varying but mostly close to 335751188.
The job as such doesnt fail but we could see failed tasks in yarn logs and the error message is
Caused by: com.amazon.ws.emr.hadoop.fs.shaded.com.amazonaws.services.s3.model.AmazonS3Exception: One or more of the specified parts could not be found.  The part may not have been uploaded, or the specified entity tag may not match the part's entity tag. (Service: Amazon S3; Status Code: 400; Error Code: InvalidPart; Request ID: C89D6E84D98B1642; S3 Extended Request ID: mqSAvwyerL/xYelXkqfG6uV/8RzwS6iwTsYkuOTi+/NDc6dpZZZLvHfUAjdA4UukjmES7TrvPjQ=), S3 Extended Request ID: mqSAvwyerL/xYelXkqfG6uV/8RzwS6iwTsYkuOTi+/NDc6dpZZZLvHfUAjdA4UukjmES7TrvPjQ=
   at com.amazon.ws.emr.hadoop.fs.shaded.com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleErrorResponse(AmazonHttpClient.java:1712)

Apologies for the delay @KhushbuAgr - this one must have slipped through.
In order to have a look at this, I'd need something reproducible though. If you have an example repro that showcases this issue, that would be ideal.


How do move  Parent Element

Drag the title of a modal but I want this to drag the entire modal

import Draggable from 'react-draggable';

function MyComponent() {
    <Draggable>

 { /* Parrent */ }

Title

    </Draggable>
}

Also, this is for issues and not how tos.

<Draggable handle=".cursor">

 { /* Parrent */ }

Title

</Draggable>

if you drag
 tag, Entire
 will move
You can think that handle=".cursor" attribute mean "What kind of objects will you control?".


idan23 program not ran is its corrputed

idan23 program not ran is its corrputedv

idan23 program not ran is its corrputed


Use pending transaction ETH pool to generate "pending"

The goal:
We need to derive user specific notifications in the ui from block state (or via chain query of some sort or another). Replacing the current local storage based method which is keyed by transaction hash.
Acceptance Criteria:
If the submission of a transaction is coupled to the visibility/dismissal of an alert (whether inline or otherwise) this issue isn't complete.
The plan:

Upon new block (or transaction submission) we query for pending transactions for the current user. (sub-task)
Decode each pending transaction to identify the contract, method and params passed. (sub-task)
Create a transformation function that takes the above as an input and outputs the a "row" for the UI to consume. These will be kept separate and merged into the ui via selector. (sub-task)
Repeat?

A more concrete example:

User clicks to submit an order
Order is submitted by the ui with the following parameters:

function createYesNoMarket(uint256 _endTime, uint256 _feePerCashInAttoCash, uint256 _affiliateFeeDivisor, address _designatedReporterAddress, bytes32 _topic, string memory _extraInfo) public returns (IMarket _newMarket);

Called with...
createYesNoMarket(1234, 1, 1, $SOMEADDRESS$, $SOMETOPIC$, $EXTRAINFO$);

Note: Extra info could have details we want to display in the UI during the pending phase of a transaction.

At some point in the future Augur-SDK will query for pending transactions.
They will will be decoded and sent to the "transformation functions"

function transformOrderEvent(_endTime, _feePerCashInAttoCash, _affiliateFeeDivisor, _designatedReporterAddress, _topic, _extraInfo) {
// This should look like the thing the UI displays.
return {
state: _pending,
...args
}
}

This will be inserted into the pending_orders redux table/key/toplevel thingy.
A selector will merge both the pending_orders and the orders redux tables into one for UI display.
UI is handed a log object on pendingTx (name to change) event. Values on the log are:

contract name
method name
transaction hash
timestamp submitted
arguments on the method in form of [{key: value}]

The individual UI components will be responsible for understanding how to display any "pending" items.
Open question:

How do we handle failed transactions?
How can we notify the user they have a pending transaction to sign someplace? (This is probably another epic but we need to think about it).

Discoveries

solc outputs the hash of the abi which should be all we need to generate the reverse mapping.

ref #2183

Scheduling this Epic work into next sprint.


Merge with original project?

Hello all!
Just wondering here, is it possible to merge this project with the original one?
It would be great if we could use the same library for flutter and native.

Hello!
My first plan was to contribute to the original project to enable de possibility to test flutter apps with AppiumLibrary.
When I starded coding I noticed that I would have to make significantly changes at the project structure to use Flutter Driver, so it wouldn't be worth.


⚠ DesiTorrents has degraded performance

In c792558, DesiTorrents ($DST) experienced degraded performance:

HTTP code: 200
Response time: 2770 ms

Resolved: DesiTorrents performance has improved in 3cdb2ce.


Start versioning API releases

We discussed this in the last community meeting, in the context of now having a release process for obsctl (https://github.com/observatorium/obsctl/pull/26).
There were couple of ideas floating around:

Having versioned releases could encourage higher adoption, i.e. show we're serious about progressing towards stable release
It would keep us as well accountable for moving towards the stable release aim
It could force us to be more mindful about what features we're adding and define what we want to have in a stable release
It could give us easier way to deprecate features (e.g. we still have a /legacy) path: We could indicate this by e.g. saying we'll drop a certain feature in 3 minor releases

To accomplish this we need:

Agree on versioning (most probably semantic versioning) and the starting version (0.1.0?)
Have a release process, release schedule

We have an openapi spec added for metrics and rules/raw - I wonder if it makes sense to expand to the other signals and integrate the api versioning with the specs? Not sure what would be the best practice

Adding log support in openapi spec is planned in https://github.com/observatorium/api/issues/294. Versioning the spec in the same way as the API itself would be nice as people can generate tooling according to versions! :)

Versioning the spec in the same way as the API itself would be nice

Hmm I tend to disagree here. The HTTP API is a contract and the version of that contract should only change when the contract changes. By contrast, the version of the binary can change whenever new features are added or removed. E.g. we remove OPA support from the binary, causing the need for a new major release, but the HTTP API stays exactly the same, so this version stays the same. This is also incidentally how Kube does its versioning: all of the APIs (e.g. apps/v1) are versioned independently from Kube releases (e.g. v1.23.0).

That makes sense and is a better approach than what I suggested!
We haven't been maintaining a versioned spec either so that would also be a task.

Yes. We also need to think carefully about ensuring that the paths that the HTTP API exposes actually conform to the version of the API contract, e.g. the Rules API is currently set to 0.0.2 [0] but most of our HTTP paths say x/v1/y, whereas here it should probably be x/v0/y.
[0] https://github.com/observatorium/api/blob/main/rules/spec.yaml#L4

At the risk of going slightly off topic, what are the plans for the legacy metrics endpoints going forward? Does it need to be maintained?
It would be great to have some sort of roadmap for the project and its intentions to get to a stable release going forward.

@PhilipGough I guess since we don't really have a stable version yet, we could simply deprecate it and eventually remove it after couple of minor releases 🤷

I think that by calling it legacy it is already effectively deprecated, no? I would be in favor of dropping it from main and cutting a new release soon.

AFAIK no one depends on it, I'm totally fine with dropping it straight away; just if we wanted to be more cautious and do it over the course of couple releases, but it seems it's not necessary.

if there are no dependencies to the current legacy endpoints I'd be in favor to dropping it straight away as well :) +1


Push preliminary AWS deployment documentation

This is the first iteration in the creation of a how-to guide describing how you can manually set up an AWS kops-based cluster and use our deployer to manually deploy a new hub on top of it.
More details in the commit message (and in the document itself) :wink:
Draft PR for now!

@choldgraf, your wizard-ish documentation wands are required here 😛  .
A lot of thanks in advance!!
Btw, this one, once it is finished should close #453 and #366 (in cascade).

@choldgraf thanks for all those comments and fixes.
Btw, I have merged some suggestions and replied with answers to your questions.

Sounds good - this looks good for a merge IMO once @yuvipanda's comment is addressed, we can iterate and improve upon the documentation in chunks as more team members follow these steps.

Great, I will address the remaining comments, get the PR out of the draft state for a few hours and merge by tomorrow if I do not hear anything else from any of you.


Js ek pass url for tests

parameterization of urls so we can fake auth in tests

LGTM, where there any tests?


ModuleNotFoundError: No module named 'keras_applications'

I can't seem to find this module

It means that you need to install keras_applications package ver. 1.0.7 or 1.0.8. You problem is not related to the package itself, but to your tensorflow config. I suggest to close this issue.

!pip install keras_applications.
I suggest to close this issue.


log_value sets step to nothing on default

https://github.com/PhilipVinc/TensorBoardLogger.jl/blob/08f57d854ca1b32cc4cfb0a24881d57ec9f5bb1c/src/Loggers/LogValue.jl#L8
Hello, in contrary to the description and probably the expected behavior, the method log_value sets the argument step to nothing on default. As suggested in the description, a more natural default value for the argument would be step(logger). I believe this was intended but somehow accidentally omitted during development.
Cheers,

Hi wattik,
While step is set to nothing instead of the current step, the behaviour is what is documented, as later on in the serialisation chains nothing gets converted to step(logger).
See https://github.com/PhilipVinc/TensorBoardLogger.jl/blob/08f57d854ca1b32cc4cfb0a24881d57ec9f5bb1c/src/event.jl#L10
Indeed our implementation is weird, the code should be cleaned up and the conversion should be moved up to improve the code quality.
I have very little time those days, but if you want to pick this up, I'll be fast in reviewing.


Fusion for general Lua(u) environments

I've noticed over time that there's an increasing demand for using Fusion outside of Roblox. Currently this isn't possible without manually excluding parts of Fusion that deal with Roblox.
In the future, it would be nice to investigate separating out Fusion into a general-purpose 'core library' and a Roblox-specific 'addon library'. These would be packaged together for Wally and rbxm distributions to maintain backwards compatibility, but would enable new ventures for Fusion in other environments such as Love2D.

Related to #40

Darklua looks like a good candidate for solving the problem of require formatting. It may also be an elegant way to do feature flags that we currently model using constants at runtime.

We could tie this into #40 and #254 as a bulk change, since this almost certainly will end up restructuring the project. Perhaps I'll merge these things together.

Merged into #40


Proposal to add Awesome engineering Vlog (youtube, vimeo etc)

I don't know if this is a good idea or not. But i want to see a list of awesome software engineering vlog

I think it is a valid point.It is hard to find useful software engineering vlogs.

I made a curated list on various interesting blogs that solves this. Not an awesome list though.

@nikitavoloboev You might wanna fix the links in the summary.

@DevFlicks Which summary?

@nikitavoloboev Sorry, I had opened #1299 and replied to you instead of replying there. Here's the repo: https://github.com/vinsgo/awesome-ethereum


Needs new maintainer

I haven't been able to do anything with CSSStyleDeclaration for years, it needs someone else to take it over. Below is everyone that has an open PR or commented on an open PR. If one of you would like this, let me know and I'll transfer the repo and add you to the npm package.
@ignacionr
@jakeFeldman
@bpartridge
@jsakas
@lsiu
@EdwardBetts
@andy128k
@piec
@hraban
@Hikariii
@jansiegel
@sairoutine
@terrencewwong
@dadhikari16
@Jarlotee
@dnzhng
@sobotklp
@rylabo

Sure I can do that, unless somebody with more experience in maintaining repos wants to. Thank you for the candid offer, it’s good for the community.

Hey @chad3814
I am willing to take ownership of the repo / package.
This library is used by JSDom which I use heavily. I would like to get some of these outstanding PRs merged and versions on npm promptly.
My npm username is jon.sakas
My npm email is<EMAIL_ADDRESS>Thanks!
Jon

OK I vote for @jsakas ; but please merge my addition for flex. Same issue here with jsdom.

Okay @jsakas you are now a maintainer on npm and I requested transfer of ownership the repo in github, thank you for taking it on. It's a great relief to me that someone will care for it and bring it up to date.


Build bundle for modern browsers and legacy browser separately

Shipping a smaller bundle for modern browsers. Is this something that would make sense to have in Razzle?
See similar issue on Next.js: https://github.com/zeit/next.js/issues/3056

This would be a cool plugin, but probably outside the scope of the core

Hope to see this as a plugin

Not stale

On my radar after 4.0 is out

Closed in favour of https://github.com/jaredpalmer/razzle/issues/1393


🚀 Roadmap

Libraries

Library
Version

[^1]
@sebgroup/green-angular-charts
1.1.0
Storybook

[^2]
@sebgroup/green-angular
1.2.0
Storybook

[^3]
@sebgroup/green-charts
1.1.0
Storybook

[^4]
@sebgroup/chlorophyll
1.5.0
Storybook

[^5]
@sebgroup/extract
1.2.1

[^6]
@sebgroup/green-react-charts
1.0.1
Storybook

[^7]
@sebgroup/green-react
1.3.0
Storybook

Components

Component
Chlorophyll
React
Angular

01
accordion
✅
✅
✅

02
alert-ribbon
✅
✅
❌

03
backdrop
✅
❌
❌

04
badge
✅
✅
✅

05
border
✅
❌
❌

06
brand
✅
❌
❌

07
button
✅
❌
✅

08
card
✅
✅
❌

09
close
✅
❌
❌

10
container
✅
❌
❌

11
datepicker
✅
✅
✅

12
dropdown
✅
✅
✅

13
fonts
✅
❌
❌

14
form
✅
✅
❌

15
grid
✅
❌
❌

16
icon
✅
✅
❌

17
link
✅
✅
❌

18
list
✅
✅
❌

19
modal
✅
✅
✅

20
navbar
✅
✅
❌

21
pagination
✅
❌

22
popover
✅
❌
❌

23
progress-circle
✅
❌
❌

24
reset
✅
❌
❌

25
select
✅
✅
❌

26
skeleton-loader
✅
❌
❌

27
slide-toggle
✅
❌
❌

28
slider
✅
✅
✅

29
table
✅
❌
❌

30
tabs-bar
✅
❌
❌

[^1]: @sebgroup/green-angular-charts (1.1.0) — A charting library for Angular applications, providing a set of customizable and responsive chart components based on the Green design system.
[^2]: @sebgroup/green-angular (1.2.0) — A UI component library for Angular applications, following the Green design system. It includes a collection of reusable components such as buttons, forms, and navigation elements.
[^3]: @sebgroup/green-charts (1.1.0) — A standalone charting library based on the Green design system, suitable for use in any JavaScript project. It provides a collection of responsive and customizable chart components.
[^4]: @sebgroup/chlorophyll (1.5.0) — A CSS framework for building web applications based on the Green design system. It includes a set of pre-built styles, layout utilities, and design tokens for creating consistent user interfaces.
[^5]: @sebgroup/extract (1.2.1) — Extract is where all the business logic of Green components lives so that it can be shared between Angular and React implementations. It is called Extract since the normal way of creating a component is within Angular and React and then extracting the common logic.
[^6]: @sebgroup/green-react-charts (1.0.1) — A charting library for React applications, providing a set of responsive and customizable chart components based on the Green design system.
[^7]: @sebgroup/green-react (1.3.0) — A UI component library for React applications, following the Green design system. It includes a collection of reusable components such as buttons, forms, and navigation elements.

Closing this one for now, since the information has become outdated. I still like the concept, but I feel like it has to be automated to be useful in the long run!
In the mean time, for anyone looking for component statuses, check here: https://designlibrary.sebgroup.com/components-matrix


Generic utility list

@ssomnath @ramav87 I am starting to make a list of domain agnostic tools that should find a home in pycroscopy

Functional fits for spectra
2D Gaussian fitting
Hybrid cross-correlation
Scan drift correction

@dxm447 - Can you see how these would fit into the refactored version of pycroscopy?


Budget Optimization - Predicted target value

Hi team - I am building a MMM model with 8 channels and 2 extra features. It is a geo model at US state level (51 geos). I used the adstock model to fit and did the sanity checks for convergence (prior/posterior distribution, r_hat close to (1-1.01), n_eff > 200). When I am trying to use the budget optimization function, the predicted target value for both pre-optimized and post-optimization are so different from actual values. I have attached the plot from the optimization function which gives values close to 9M while the actual value is around 600k.
Since my extra features are significant, I tried including and excluding the extra features but the results are similar.
The model validation error MAPE is around 10-15% for all geos.
I double-checked my scaler functions as well
Has anyone faced similar issue, looking for suggestions where to investigate?

Following up on the issue,
I am looking into the _objective_function method in the optimize_media.py file. My setup is 51 geos, 8 channels. My understanding is that the following code should divide the given budget for the channels based on the historical data share. Then, it repeats it for the n_time_period. When I try to run the following code individually, I am not getting a repeated array
`media_values = geo_ratio * jnp.expand_dims(media_values, axis=-1)
media_values = jnp.tile(media_values / media_input_shape[0], reps=media_input_shape[0])
Distribute budget of each channels across time.
media_values = jnp.reshape(a=media_values, newshape=media_input_shape)`
When I change the above code to the following code, I am getting spend divided across the channels and repeated across n_time_periods.
media_values = geo_ratio * jnp.expand_dims(media_values, axis=-1)
media_values = jnp.tile(media_values / media_input_shape[0], reps=(media_input_shape[0],1,1))
Now I am getting prediction from optimization in the range of actual values. I am not sure if this is version issue or I am doing something incorrectly.
Any help would be appreciated. Thanks!

Can you share the code used for the optimization? I haven't been able to make it work.

@ar-asur , sorry, I am not able to help you with your question since I am super new to MMM myself. But can you please let me know how you did your sanity checks and how did you learn about them? Any source?

@jorgemadridm19 The code in the example notebooks worked for me for both national and geo-level model. I used them as the starting point. When you say it doesn't work, do you get issues with the code or the results?

@rajat-barve For the sanity check, you can just search for MCMC output analysis/interpretation and use the articles/videos to understand the summary output. Other steps, I did was to compare prior/posterior distribution and check if they are same or model has learnt anything from the data... And for business validation, look at the attribution, lag weight parameter distribution and check if those makes sense.

I did the same thing. I believe it is a bug in this version of lightweightMMM. According to the jnp documentation, reps=media_input_shape[0] will automatically append 1's in front of media_input_shape[0], not after.