Make prompt parameter field more flexible

Currently, the default prompt configuration in the model config is called prompt. But, depending on the connector details and/or model interfaces, the field could be called something other than prompt, or in some different format than just string. To support these other use cases easier, we should make the hardcoded logic more generic, but still having sufficient presets available.

Marking as complete for now, abstracted into a constant via #403. Remaining flexibility work will all be dependent on the preset connectors and having a standard pattern, which we do not have for now. When that is standardized, we can revisit if this needs to be updated or more flexible to handle different ways prompts/inputs to LLMs are handled.


speedtest.net sharing does not work.

On speedtest.net, the actual test works fine, but after it's finished, when trying to share the result, it comes up with an ID of 0, which obviously doesn't work.
Tested with current master freshplayerplugin, firefox 32, and ppapi flash from chrome 38.0.2125.77_beta1.
Works fine in same firefox with npapi flash 11.2, and also works fine in chrome where the ppapi flash comes from.

Fixed in<PHONE_NUMBER>c405cf644a661541ca5186a1a99d1f


[unittests] Add a fixture for Sema unit tests

Adds a SemaTest fixture which handles all book-keeping related to setting up
environment and a simple literal binding inference test to demonstrate that
everything works correctly.

@swift-ci please smoke test

@swift-ci please clean smoke test

@swift-ci please clean test Windows platform

@swift-ci please clean test

@swift-ci please test Windows platform

@compnerd Does Windows have <build>/lib/swift directory with built stdlib and other modules or artifacts are placed differently there? I'd hate it if I had to limit this tests to macOS only but I have to way to figure this out on my own...

@swift-ci please test Windows platform

@swift-ci please test Windows platform

@swift-ci please test Windows platform

@swift-ci please test Linux platform

@swift-ci please test macOS platform


parallelize validation pipeline

Wan't prediction, postprocessing and validation all to be blockwise and in parallel.

closed, duplicate of #57

closed, duplicate of #57

duplicate of #57

duplicate of #57


Chore: bumped scarb and starknet version to v2.7.0

I have found and replaced all starknet dependencies and scarb version of 2.7.0-rc.3 to 2.7.0
Closes: https://github.com/cairo-book/cairo-book/issues/900

This change is

CI fails because scarb release is not published yet, should be in the next hour or so

Oh okay thank you very much

Hi @enitrat generating cairo listings is failing, what could be the issue?

fixed that

@enitrat the build is now passing🚀🚀🚀


Bump version

2024.11.0 was not released as the version was not bumped, thus it was trying to publish 2024.2.1 again. Instead of trying 2024.11.0 again, let's make 2024.11.1

It's fine to do 2024.11.0 again IMO, we can just remove the old release from github

Argh right!

It's fine to do 2024.11.0 again IMO, we can just remove the old, non-uploaded, release from github

Fine by me, I just deleted that release. Let's merge this and do a proper release.


disk cache: store a data integrity header for non-CAS blobs

The header is made up of three fields:

Little-endian int32 (4 bytes) representing the REAPIv2
DigestFunction.
Little-endian int64 (8 bytes) representing the number
of bytes in the blob.
The hash bytes from the digest, length determined by
the particular DigestFunction.
(32 for SHA256. 20 for SHA1, 16 for MD5).

Note that we currently only support SHA256, however.
This header is simple to parse, and does not require buffering the
entire blob in memory if you just want the data.
To distinguish blobs with and without this header, we use new
directories for the affected blobs: ac.v2/ instead of ac/ and
similarly for raw/.
We do not use this header to actually verify data yet, and we
still os.File.Sync() after file writes (#67).
This also includes a slightly refactored version of PR #123
(load the items from disk concurrently) by @bdittmer.

@buchgr: any thoughts on this? In particular:

The file format (simple header, manually parsed, room to implement other digests).
The new directory structure (version number in the directory names, to make later changes easier).

The file format (simple header, manually parsed, room to implement other digests).

Is there a good reason to not use protobuf for the header? Did you consider reusing the Digest message from the REAPI?

The new directory structure (version number in the directory names, to make later changes easier).

I think it's a great idea. Thanks!

The file format (simple header, manually parsed, room to implement other digests).

Is there a good reason to not use protobuf for the header?

I didn't want to use a single protobuf for the entire file (header + blob) because it requires reading the entire file into memory in order to unmarshal, and that might be undesirable for large files.
Using a protobuf just for the header with the blob concatenated seems a little complex (but maybe I just know too little about protobuf). We would need to read an unknown (but bounded) number of bytes of the file into a buffer in order to unmarshal the header- I'm unsure if it is safe to unmarshal protobuf messages with arbitrary bytes appended.

Did you consider reusing the Digest message from the REAPI?

The Digest message alone is insufficient if we want to allow other hash functions in the future. But this would make sense if we figure out a good way to use protobuf for the header.

Using a protobuf just for the header with the blob concatenated seems a little complex (but maybe I just know too little about protobuf). We would need to read an unknown (but bounded) number of bytes of the file into a buffer in order to unmarshal the header- I'm unsure if it is safe to unmarshal protobuf messages with arbitrary bytes appended.

There is the delimited protobuf format that's supported at least by the Java implementation in protobuf and recommended in the official docs [1] [2]. It simply prepends the serialized proto with the number of bytes to read. Bazel uses it for the BEP.
[1] https://developers.google.com/protocol-buffers/docs/techniques#streaming
[2] https://github.com/golang/protobuf/issues/779

There is the delimited protobuf format that's supported at least by the Java implementation in protobuf and recommended in the official docs [1] [2]. It simply prepends the serialized proto with the number of bytes to read. Bazel uses it for the BEP.

Interesting, I'll try this out- thanks!

There is the delimited protobuf format that's supported at least by the Java implementation in protobuf and recommended in the official docs [1] [2]. It simply prepends the serialized proto with the number of bytes to read. Bazel uses it for the BEP.

Interesting, I'll try this out- thanks!

As an alternative to storing data as delimited Protobufs there is also riegeli [1], which allows storing metadata in the same file and doesn't require reading the whole file into memory. The kythe project seems to have a Go implementation available [2]. The nice thing about riegeli is that it can also automatically compress the data and save some disc space (although I'm not sure whether the overhead is worth it for non-CAS blobs, even with very fast compression modes like brotli or snappy).
[1] https://github.com/google/riegeli
[2] https://pkg.go.dev/kythe.io/kythe/go/util/riegeli?tab=doc

Thanks @Yannic. The overhead of the header is negligible and there isn't a need for compression. I'd prefer to not pull in another dependency for the header.

I would also prefer not to pull in another dependency for what I hope can be a simple header.
But before ruling it out I wonder if riegeli could also give us the ability to compress the data blobs, re #12 / https://github.com/bazelbuild/bazel/issues/4575 ?

Writing the header proto size, then the message, then the content sounds pretty reasonable to me.
For inspiration, similar code is in: https://github.com/kythe/kythe/blob/master/kythe/go/platform/delimited/delimited.go

But before ruling it out I wonder if riegeli could also give us the ability to compress the data blobs, re #12 / bazelbuild/bazel#4575 ?

The issue #12 talks about making compression part of the caching protocol. It was always my understanding that compression is most interesting for CAS blobs. We do not store protobufs in the CAS. For that zlib sounds more interesting for compression and I believe it is shipped as part of the Go standard library.
Am I missing something?

Which cache operations should do the data verification? Put? Get? Contains?
Have you benchmarked how performance is affected? Especially for HTTP/1.1-without-SSL use cases, where golang’s io.Copy can use linux kernel’s sendfile(2) for transfeering data directly from file to socket, instead of copying data to and from user space. I think that is what today makes bazel-remote on par with heavily optimized http servers like NGINX.

I haven't performed any benchmarks yet, and I haven't figured out when/where to perform the validation. But I suspect that we will either validate data on the first Get or Contains call, and cache the result until the file is rewritten (or the server restarts).


Merge branch 'release/v0.0.4' into develop

The airbnb base uses eslint 3 and this uses 4.0.0 so there may be an issue there.

Hey. The PR is empty, looks like the branches are the wrong way.


Fix dist missing issue for npm package installing

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

24 of 25 (96.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 78.313%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

charon/utils/archive.py
23
24
95.83%

Totals

Change from base Build<PHONE_NUMBER>:
0.2%

Covered Lines:
1495

Relevant Lines:
1909

💛  - Coveralls


How to Format or a way to format Python code to emulate.

Describe your changes
A way or method to insert VEX V5 Python with indents OR a way to format it like the example programs with only one line.
Does this fix any issues? (provide issue numbers)
A lot of confusion.
Checklist

[X] #6

What do you mean by one line? Like all of your code on one line? Why would you want to do this?

Well, with the shipped (default) programs they are all 1 line and have various different parameters. EX:
The above example program works great! I tried to paste in my code from VEX V5 program into it and give it the same file ending "v5.python" that has indents and not on one line but got errors. See:

Here is some of the code:

I may just be putting it in the wrong place, but not sure. Hopefully you can help me out, and thanks for your time!

Can you give me a copy of the code so I can try to reproduce the error?

Can you give me a copy of the code so I can try to reproduce the error?

Yep!
`#region VEXcode Generated Robot Configuration
from vex import *
import urandom
Brain should be defined by default
Robot configuration code
wait for rotation sensor to fully initialize
wait(30, MSEC)
#endregion VEXcode Generated Robot Configuration
------------------------------------------

Project:      VEXcode Project
Author:       VEX
Created:
Description:  VEXcode V5 Python Project

------------------------------------------

Variables

#0 = empty square
#1  = orange, end square
#2 = red, blocked square
#3 = green, start square
path_4 = [
[1, 0, 0, 0, 0],
[2, 0, 0, 0, 0],
[0, 0, 0, 0, 2],
[0, 2, 0, 0, 0],
[0, 0, 0, 0, 3]
]
def logo():
brain.screen.set_pen_width(10)
brain.screen.set_pen_color(Color.ORANGE)
brain.screen.draw_line(30, 10, 30, 230)
brain.screen.draw_line(30, 10, 120, 230)
brain.screen.draw_line(120, 10, 120, 230)
brain.screen.draw_line(190, 10, 190, 230)
brain.screen.draw_rectangle(190, 10, 100, 100)
brain.screen.draw_circle(470, 125, 115)
brain.screen.set_pen_color(Color.BLACK)
brain.screen.draw_rectangle(450, 5, 400, 400)
wait(2, SECONDS)
brain.screen.set_pen_color(Color.WHITE)
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)
def when_started():
logo()`

Oop. Sorry, I meant the .v5python version not just the raw code.

I think that's what I'm tripped on. That's what I was trying to use in the emulator and didn't work. Is there a way to format it to .v5python?

You just need the file that Vex Code generates it's already in the correct format.

Would this work?
https://drive.google.com/file/d/1PCBuec_sDBg6KoKREOMYHSsYJdnGyHh1/view?usp=sharing
Had to upload via drive, Github doesn't allow it to be uploaded in .v5python

Shared.

This should work
{"mode":"Text","textContent":"#region VEXcode Generated Robot Configuration\nfrom vex import *\nimport urandom\n\n# Brain should be defined by default\nbrain=Brain()\n\n# Robot configuration code\n\n\n# wait for rotation sensor to fully initialize\nwait(30, MSEC)\n#endregion VEXcode Generated Robot Configuration\n\n# ------------------------------------------\n# \n# \tProject:      VEXcode Project\n#\tAuthor:       VEX\n#\tCreated:\n#\tDescription:  VEXcode V5 Python Project\n# \n# ------------------------------------------\n\n# Library imports\nfrom vex import *\n\n#\n# Variables\n#\n\n#0 = empty square \n#1  = orange, end square \n#2 = red, blocked square \n#3 = green, start square\n\npath_4 = [\n    [1, 0, 0, 0, 0],\n    [2, 0, 0, 0, 0],\n    [0, 0, 0, 0, 2],\n    [0, 2, 0, 0, 0],\n    [0, 0, 0, 0, 3]\n]\n\ndef logo():\n   brain.screen.set_pen_width(10)\n   brain.screen.set_pen_color(Color.ORANGE)\n   brain.screen.draw_line(30, 10, 30, 230)\n   brain.screen.draw_line(30, 10, 120, 230)\n   brain.screen.draw_line(120, 10, 120, 230)\n   brain.screen.draw_line(190, 10, 190, 230)\n   brain.screen.draw_rectangle(190, 10, 100, 100)\n   brain.screen.draw_circle(470, 125, 115)\n   brain.screen.set_pen_color(Color.BLACK)\n   brain.screen.draw_rectangle(450, 5, 400, 400)\n   wait(2, SECONDS)\n   brain.screen.set_pen_color(Color.WHITE)\n   brain.screen.clear_screen()\n   brain.screen.set_cursor(1, 1)\n\ndef when_started():\n    logo()\n\nprint(\"Logo\")\nlogo()\nprint(\"Logo\")\n","textLanguage":"python","rconfig":[],"slot":1,"platform":"V5","sdkVersion":"202207<IP_ADDRESS>","appVersion":"2.4.0","minVersion":"2.4.0","fileFormat":"1.2.0","icon":"","targetBrainGen":"First","target":"Physical"}

Wow! How did you do that? Like what steps do I need to make my code look like that?

Just edit it using Vex Code and make sure to leave all the auto generated code at the top alone and it should work!


App Crash on the following conditions: v 1.0.5 rc2

-App is crashing when Section button is clicked for .md files.
-App crashes when file (both tsv and md)is selected from Hamburger Menu selection

here's what I get onblur

the onblur issue above is fixed I think

The app no longer on the above mentioned conditions but Section button has some issues which are reported separately in

Tested in tCC tA Test Block Quotes and Sections


Make CosmosDB provider consistent with Blob Storage provider

This change makes CosmosDB, Memory and Azure Blob Storage all throw exceptions when passed nulls for the keys or changes on the Read, Write and Delete methods. Prior to this only Azure Blob Storage was doing this correctly.
fixes #1055

@johnataylor is this fixed in Botbuilder-js?


Prometheus client metrics support

This code provides the option to use Prometheus for collecting statistics in Karapace. The branch is based on karapace-metrics branch.

@jjaakola-aiven @aiven-anton could You review this PR too?

Hello @aiven-anton, I just try answer Your comments:

Hello @libretto,
Sorry for the long wait for a response here. We've convened internally about how to move forward with your contribution, and I'll summarize it here.
There are three issues we that must be addressed for this to be mergable:
* ~Expose the Prometheus exporter under existing server instead of starting a separate one. Remove the configuration options for Prometheus host and port.~ _Let's leave this as-is._

* Incorrect metric semantics. This has been iterated a couple times in review already. This means for instance that `request-size` needs to be changed into two separate metrics: `request_size_total + `request_count`. This applies to other metrics in the PR as well.

The metric semantics applied in this context are determined by the SchemaRegistry product, as detailed in their documentation. To achieve exact compatibility with SchemaRegistry, adherence to their specified metric names is necessary.

* Remove the psutil connection count probing. This should rather be gathered by an OS-level metric, we don't want the application probing the OS for this itself. If the application is to report this, it needs to be based on some application level metric, like some actual internal counter of handled requests, and not by probing the OS for amount of process connections.

Is there a method to determine the number of connections in the Karapace application? I haven't been able to find a way to access the list of connections within our app. Is it possible I overlooked something?

  Since the `psutil` and `schedule` dependencies were brought in for this purpose only, let's also skip adding those.

* Let's skip the updates to README.md, so that we can let these changes be undocumented and subject to change while we're stabilizing it.

Ok

Since the branches have diverged, let's also close the original PR now, and make any future changes to this branch only.

Ok

@libretto

The metric semantics applied in this context are determined by the SchemaRegistry product, as detailed in their documentation. To achieve exact compatibility with SchemaRegistry, adherence to their specified metric names is necessary.

Metrics is not an area where we'll aim for 1-1 compatibility with Confluent Schema Registry.

Is there a method to determine the number of connections in the Karapace application? I haven't been able to find a way to access the list of connections within our app. Is it possible I overlooked something?

It's possible that this would have to be developed. For now, I would I just skip this and address it later. Do note that we have a long-term plan to switch from the homegrown web framework to FastAPI, so any such work might become moot.

Incorrect metric semantics. This has been iterated a couple times in review already. This means for instance that request-size needs to be changed into two separate metrics: request_size_total + request_count`. This applies to other metrics in the PR as well.

@aiven-anton Do You mean it must be coded in the following way?
`
def request(self, size: int) -> None:
self.request_size_total += size
self.request_count += 1
if not self.is_ready or self.stats_client is None:
return
if not isinstance(self.stats_client, StatsClient):
raise RuntimeError("no StatsClient available")
self.stats_client.gauge("request-size-total", self.request_size_total)
self.stats_client.gauge("request-count", self.request_count)
`

@aiven-anton  done. Review please.

BTW. Is the usage of .gauge() and .timing() in the following functions acceptable?
...
def are_we_master(self, is_master: bool) -> None:
if not self.is_ready or self.stats_client is None:
return
if not isinstance(self.stats_client, StatsClient):
raise RuntimeError("no StatsClient available")
self.stats_client.gauge("master-slave-role", int(is_master))
def latency(self, latency_ms: float) -> None:
    if not self.is_ready or self.stats_client is None:
        return
    if not isinstance(self.stats_client, StatsClient):
        raise RuntimeError("no StatsClient available")
    self.stats_client.timing("latency_ms", latency_ms)

...

Can we have some tests?
We can certainly add some tests. However, the current version of Karapace Stats lacks test coverage, so we have no existing framework to guide us. At this point, it seems that only unit tests are feasible. I'm unsure how to implement integration tests for this part task.

Can we have some tests?

We can certainly add some tests. However, the current version of Karapace Stats lacks test coverage, so we have no existing framework to guide us. At this point, it seems that only unit tests are feasible. I'm unsure how to implement integration tests for this part task.

Let's kick off with the unit tests. I'll provide an example soon on how to execute an integration test. It's crucial to have a tangible test that ensures our output its compliant to the standard format.
We need to verify that compliant consumers can effectively utilize and extract the metrics.
Without integration tests, even if the feature is technically sound, we lack a mechanism preventing us from the introduction of code that might break the consumers

I feel this could be simplified by providing only Prometheus support and using integrations when needed which should also be left to the users, i.e. if StatsD metrics are then needed, one could add the related mapping and deploy for themselves a statsd-exporter.
If properly tested and benchmarked, it doesn't hurt to run the WSGI server (stats) as it's own thread, but it doesn't feel right in 2024 to write this much application code just to export some metrics with all the tools available. Prometheus is pull based, and as we already have a webserver running, we need to add an endpoint to scrape the metrics and probably a directory for the prometheus multiprocess registry.

Thoughts:
* The PR description makes mention of only prometheus, it's confusing to see statsd implementations.

* It'd be nice to see also somewhere in the code, all possible metrics and their related tags if any, that way I as a programming would be working based off an interface than just passing string values to the metrics handler.

* I feel this could be simplified by providing only Prometheus support and using integrations when needed which should also be left to the users, i.e. if StatsD metrics are then needed, one could add the related mapping and deploy for themselves a [statsd-exporter](https://github.com/prometheus/statsd_exporter).

* If properly tested and benchmarked, it doesn't hurt to run the WSGI server (stats) as it's own thread, but it doesn't feel right in 2024 to write this much application code just to export some metrics with all the tools available.

* Prometheus is pull based, and as we already have a webserver running, we need to add an endpoint to scrape the metrics and probably a directory for the prometheus multiprocess registry.

I will continue the work by @eliax1996 and try to add a sample metric and also some integration test.

This PR introduces the Metrics class, aiming to implement metrics similar to those found in comparable products. We intend to support both StatsD and Prometheus. Are you suggesting that we should enable the concurrent use of both?

Thoughts:
* The PR description makes mention of only prometheus, it's confusing to see statsd implementations.

* It'd be nice to see also somewhere in the code, all possible metrics and their related tags if any, that way I as a programming would be working based off an interface than just passing string values to the metrics handler.

* I feel this could be simplified by providing only Prometheus support and using integrations when needed which should also be left to the users, i.e. if StatsD metrics are then needed, one could add the related mapping and deploy for themselves a [statsd-exporter](https://github.com/prometheus/statsd_exporter).

* If properly tested and benchmarked, it doesn't hurt to run the WSGI server (stats) as it's own thread, but it doesn't feel right in 2024 to write this much application code just to export some metrics with all the tools available.

* Prometheus is pull based, and as we already have a webserver running, we need to add an endpoint to scrape the metrics and probably a directory for the prometheus multiprocess registry.

I will continue the work by @eliax1996 and try to add a sample metric and also some integration test.

This PR introduces the Metrics class, aiming to implement metrics similar to those found in comparable products. We intend to support both StatsD and Prometheus. Are you suggesting that we should enable the concurrent use of both? I just revised the PR description for better clarity.

I do not think it is necessary to have both StatsD and Prometheus within the application itself, especially if there are tools to integrate one on top of the other.

@libretto I will close this PR once #902 is merged.
In #902 we've introduced the building blocks for instrumenting the service using Prometheus. Following this, we can add more metrics as needed, until it is sufficient enough to provide compatibility with Confluent SR metrics.


unable to use pyodbc with access database

Can you provide some more information?
There are unit tests for access in the tests2 and test3 directories.  They were failing unless you ran with -v.
There are some Python 2.7 failures for very long memos, but everything else seems to work.


1.47 Debug Breakpoints appearing in sourcemap files

VSCode Version: 1.47.2
OS Version: macOS 10.15.5

With the newest debugger, the method used to debug our node app no longer works the same. The breakpoints appear unbound, but the breakpoint gets hit inside the sourcemap file, not the original file like it used to. Replication repo: https://github.com/brandonlee781/vs-code-debugging-issue
Steps to Reproduce:

Run terminal command "npm run dev"
Start the Attach debugger task
Place a breakpoint inside the express route. The breakpoint will appear unbound.
In a browser go to http://localhost:4000
The breakpoint is hit, but it's in the sourcemap file, not the original file.

Does this issue occur when all extensions are disabled?: Yes

This is the same as https://github.com/microsoft/vscode-js-debug/issues/636
/duplicate


⚠ Processors has degraded performance

In 58553b4, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 48 ms

Resolved: Processors performance has improved in 2222768.


Try Lambda Function URL?

https://www.serverless.com/blog/aws-lambda-function-urls-with-serverless-framework
https://medium.com/@lancers/aws-lambda-function-urls-another-way-to-create-http-endpoint-for-a-lambda-function-e991185aa488
Check your bill
Maybe save a bit of $$$
Might want to migrate to domain first #89 in order to potentially reduce downtime
Although Function URL doesn't support custom domains, so could use CloudFront.

It ain't APIG that's costing man Ps


fix: use usePageContext() for error page of all examples

Hi Guys,
AFAIK vike-react doesn't pass any pageContext to any Page component anymore, so no more props in the error Page too.
cmiiw

Good catch 👌


Add console output

Related to #7.
This PR adds console output for install and update commands similar to those displayed by Bower. Currently validate, download and install events are logged.
Example:
> bin/bowerphp install jquery#1.9
bower jquery#1.9              validate 1.9.1 against jquery#1.9
bower jquery#1.9              download
bower jquery#1.9.1             install

> bin/bowerphp update jquery
bower jquery#^1.9             validate 1.12.4 against jquery#^1.9
bower jquery#^1.9             download
bower jquery#^1.9              install

Thanks


Use floats to construct Point in tests and benchmarks

In preparation for switching Point to hyper Point.
I aliased using Point = ExperimentalHyperGeometry::Point<3, float>; and fixed all the resulting errors. This PR, however, does not make the switch itself.
If we used C++20, some of them could have been avoided. For example, (a, b, c) -> {a, b, c} switch and emplace_back would work as C++20 allows parenthesis aggregate initialization.

Getting an error from clang-tidy:
test/tstMinimumSpanningTreeGoldenTest.cpp:55:12: error: use emplace_back instead of push_back [modernize-use-emplace,-warnings-as-errors]
    points.push_back(
           ^~~~~~~~~~
           emplace_back(

But using emplace_back is not possible here.

CUDA builds did not build (could not check out the source). Otherwise good. Ignoring.


Add admin panel for a more convenient data management

Not possible: main database is stored in the repository, but changes can only be made to Heroku's copy, thus restricting any permanent modifications.


pep8-ify the notebook

ran the notebook through autopep8 but it didn't solve the line
length issue.

thats fine, i just did this in a few minutes using autopep8, which i learned is a thing today. feel free to close the PR if you're already working on it.

refer to https://github.com/IBM/dsx-twitter-auto-analysis/pull/10 instead


VS(Pac) Commands not working

We are using Azure Virtual Desktops for development, In visual Studio code while we are running PAC commands (NPM ) also for PCF Development those PAC commands are not working properly. Requesting to please resolve this issue on priority.
We already raised ticket with MS regarding the same they are suggested to raise Git Hub ticket, Please resolve the issue on priority.

There are multiple types of errors on the screenshot you attached. Can you clarify which one of these errors you are talking about specifically?

We are facing slowness issue while running NPM,PAC, .NET Build commands,once we have upgraded to the latest version of VS Code. It is taking  almost 2 hours just to make small change(to build our project and we are stuck with our release for it) @petrochuk Andrew Petrochuk
Could you please help us on priority?


Synchronous PES mode

The PES mode encapsulation supports now the Synchronous mode.
This mode includes PTS marks in the PES packets. However these marks are only useful for external tools. So, don't use this mode except if you need to remux with an external tool that requires to have PTS in Metadata packets. In any other case, it's a waste of space.

Hi @lelegard ,
I'm not sure if the plugin "-P pmt --add-programinfo-id 0xAABBCCDD" is incorrect, but I changed the order in the example as the output is only valid when reversing it.
I hope you test it soon and want to merge it!
Regards.

Hi @lelegard ,
Please review this PR. I'm using it for half a month without troubles.
My first PES implementation lacks the SYNC mode, but it's required in some scenarios (for example for FFMPEG).
And, please consider to comment about the -P pmt --add-programinfo-id 0xAABBCCDD described in #274. In fact, the current command commeted in the documentation for the descriptor of the PES encapsulation doesn't work! We need to add it to the stream, not the program.

Hi @lelegard ,
Another comment:

Decapsulation is not affected. It continues to be transparent. And previously encapsulated streams, continue to work. It only add a "new" mode (PES Sync) that's an enhancement of the previous one.

Regards. :wink:


BC Ukrainian content: Get your BC Services Card

Bullet lists have too many leading spaces

not fixed

Fixed it, leaving two spaces in front of bullets to make the bullets nested under the numbered items. In EN and probably other languages, there are no leading spaced, so the bullets appear at the same horizontal alignment as the numbered items. Let's see which way works better, I think both are acceptable but nested is better.


Automating the test to check NDM Daemonset validation

Fixes https://github.com/openebs/node-disk-manager/issues/30

Runs minikube with this command: sudo minikube start --vm-driver=none --feature-gates=MountPropagation=true
In YAML changes value of image to match with newly built image and imagePullPolicy to IfNotPresent.
Apply the YAML
Check pod description and log.
Runs lsblk and ndm in both inside and outside the pod and match the results.

@avishnu Please review it. I couldn't add you as a reviewer.

The integration framework is being reworked to use Ginkgo. https://github.com/openebs/node-disk-manager/pull/49


Remove comment no longer relevant

Description
Since
https://github.com/rubygems/rubygems/commit/58f74018dfef25704a42f38467094c4c1391e54f
the previous behaviour of gemspec was restored, so the comment is no
longer relevant on recent bundler versions.
This is the same as #11550, but for another Gemfile.
Related Issue
#11150.
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[x] Chore (non-breaking change that does not add functionality or fix an issue)

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] I have run the pre-merge tests locally and they pass.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.
[ ] All commits have been signed-off for the Developer Certificate of Origin.

Thanks @deivid-rodriguez


added autocomplete to presets and devices

Hey Zaid,
there is a jQuery UI autocomplete, which is very usefull.
This code create the autocomplete for some configurations at presets and devices.
At devices you can find some parameter with 'Operating', this parameter have on the other side the 'Supported'. Now if you edit one 'Operating' parameter, it gets the value as a autocomplete select from the 'Supporting' parameter. Also for this insert, I had to delete the previous search method, so the 'list.min.js', and write a new one. Because the previous methode doesn't hide the 'Supporting' parameter, there gone because there not in the container. But I need them for the autocomplete. The new method work the same way, but the 'Supporting' are still there and hidden.
At the Presets, you get a list of the SoftwareVersions of the current devices. When you choose one, you get the ProductClasses of thes SorfwareVersion. If you push 'choose'-button, and get a match, the input-fields in valueConfiguration and addObject are autocompleted with the parameters which belongs in the field. If you choose a boolean parameter, the value input automatically show true and false as a select.
You don't always have to choose the autocomplete, for example if it's just a small change.
The autocomplete function is just a help and should avoid spelling mistakes.
I hope you like the idea, i would like to implement some more autocomplete.
Regards, Igor

Thanks for the PR, and sorry for the delay in getting back to you.
I don't understand the concept behind "Operating" and "Supported" parameters.
Some of the changes in presets page are nice, like the autocomplete in add object configuration. While others, like the hardcoded options for version and product class, not so much.
I see that now jquery-ui (and its related libs) are included as dependencies. That's a lot of dependencies for what can essentially be achieved with a few lines of code.
Though I like where you're going with this, I unfortunately can't merge it due to the issues mentioned above. I'm going to close this, but you're welcome to create another PR with an improved implementation.


webpack build errors

when I using 'npm run build', webpack returns the following error, would someone gie me some hints to solve it???
`ERROR in static/js/vendor.06660da322d4391a4255.js from UglifyJs
Unexpected token: name (Camera) [./node_modules/instascan/src/camera.js:6,0][static/js/vendor.06660da322d4391a4255.js:63577,6]
Build failed with errors.
`
the following is the log file
0 info it worked if it ends with ok
1 verbose cli [ 'C:\Program Files\nodejs\node.exe',
1 verbose cli   'C:\Users\peter\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js',
1 verbose cli   'run',
1 verbose cli   'build' ]
2 info using<EMAIL_ADDRESS>3 info using<EMAIL_ADDRESS>4 verbose run-script [ 'prebuild', 'build', 'postbuild' ]
5 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>6 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>7 verbose lifecycle<EMAIL_ADDRESS>unsafe-perm in lifecycle true
9 verbose lifecycle<EMAIL_ADDRESS>CWD: C:\vue\apps
10 silly lifecycle<EMAIL_ADDRESS>Args: [ '/d /s /c', 'node build/build.js' ]
11 silly lifecycle<EMAIL_ADDRESS>Returned: code: 1  signal: null
12 info lifecycle<EMAIL_ADDRESS>Failed to exec build script
13 verbose stack Error<EMAIL_ADDRESS>build: node build/build.js
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter. (C:\Users\peter\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\index.js:280:16)
13 verbose stack     at emitTwo (events.js:125:13)
13 verbose stack     at EventEmitter.emit (events.js:213:7)
13 verbose stack     at ChildProcess. (C:\Users\peter\AppData\Roaming\npm\node_modules\npm\node_modules\npm-lifecycle\lib\spawn.js:55:14)
13 verbose stack     at emitTwo (events.js:125:13)
13 verbose stack     at ChildProcess.emit (events.js:213:7)
13 verbose stack     at maybeClose (internal/child_process.js:927:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
14 verbose pkgid<EMAIL_ADDRESS>15 verbose cwd C:\vue\apps
16 verbose Windows_NT 6.1.7601
17 verbose argv "C:\Program Files\nodejs\node.exe" "C:\Users\peter\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js" "run" "build"
18 verbose node v8.4.0
19 verbose npm  v5.4.2
20 error code ELIFECYCLE
21 error errno 1
22 error<EMAIL_ADDRESS>build: node build/build.js
22 error Exit status 1
23 error Failed at the<EMAIL_ADDRESS>build script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]

+1

The problem is UglifyJS not expecting ES6 as its input (as I understood). I solved this by letting babel-loader process the instascan files, using the following in my webpack config:
    const path = require('path');
    // [...]
    rules: [
        {
            test: /\.js$/,
            include: [
                path.resolve(__dirname, "yourapp"),
                path.resolve(__dirname, "node_modules", "instascan", "src", "scanner.js"),
                path.resolve(__dirname, "node_modules", "instascan", "src", "camera.js"),
            ],
            use: 'babel-loader',
        }
    ],
    // [...]

thank you so much @sk1p , this all make sense, and helped us in understanding webpack.
This will use babel-loader to process the included files (the specified list) first (hence it turns any ES syntax, whether it's 5,6,7...) into basic supported javascript syntax, this way uglify js won't run into problems (as final artifacts to uglify is already the basic supported javascript syntax)

interesting @sk1p, now i get this error
Uncaught TypeError: Cannot assign to read only property 'exports' of object '#<Object>'
    at Object.eval (scanner.js?f767:373)
    at eval (326:564)
    at Object.<anonymous> (app.js:2837)
    at __webpack_require__ (app.js:689)
    at fn (app.js:110)
    at eval (index.js?9777:5)
    at Object.<anonymous> (app.js:5115)
    at __webpack_require__ (app.js:689)
    at fn (app.js:110)
    at eval (webpack-internal:///338:2)

ok i found the work around to the last issue
https://github.com/webpack/webpack/issues/4039#issuecomment-283501082


msft.info historical data

Good Day,
I recently started using this, and thank you so far. It would seem this could help.
How do I specify the date for historical data required from msft.info?
As an example, how can I get the P/E Ratio or the PEG Ratio from Google 10 years back?
Thank you in advance!
Kind Regards

msftTicker = yf.Ticker("MSFT")
info = msftTicker.info
peRatio = info['trailingPE']
You can use print(info) to see all of the different options.


replacing a built but unpersisted has_one relationship results in improper saving

When replacing a has_one (dependent: :nullify) child that has only been built (not saved) with a newly created child results in the replaced child being improperly saved.
Given:
class A
  include Mongoid::Document
  has_one :b, dependent: :nullify
end

class B
  include Mongoid::Document
  belongs_to :a
end

then doing:
a = A.create!
b1 = a.build_b
b2 = a.create_b

results in b1 being saved:
ruby-1.9.2-p180 :002 > a = A.create!
#<A _id: 4ed00e956c96313839000001, _type: nil>
ruby-1.9.2-p180 :003 > b1 = a.build_b(name: 'b1')
#<B _id: 4ed00e9d6c96313839000002, _type: nil, a_id: BSON::ObjectId('4ed00e956c96313839000001'), name: "b1">
ruby-1.9.2-p180 :004 > b2 = a.create_b(name: 'b2')
#<B _id: 4ed00ea26c96313839000003, _type: nil, a_id: BSON::ObjectId('4ed00e956c96313839000001'), name: "b2">
ruby-1.9.2-p180 :005 > B.all.to_a
MONGODB lowfin_dev['bs'].find({})
[
    [0] #<B _id: 4ed00e9d6c96313839000002, _type: nil, a_id: nil, name: "b1">,
    [1] #<B _id: 4ed00ea26c96313839000003, _type: nil, a_id: BSON::ObjectId('4ed00e956c96313839000001'), name: "b2">
]

The pull request 1449 has specs to cover this case.

Closing after pull request merge.


Multiple flows in useminPrepare and multiple targets in usemin

Hi,
I have the following project organization for an angular application:
app
-- scripts
-- styles
-- views
-- index.html
I sucessfully output two concatenated and uglyfied script file in my dist folder.
What I need now is to also generate a copy of index.html, named index-debug.html that references the concatenated but not uglified script files to be able to debug the javascript code in production.
I want to obtain:
dist
-- scripts
-- scripts-debug
-- styles
-- views
-- index-debug.html
I think that I should use multple flows and targets to succeed.
But I don't know how to define multiple flows in useminPrepare and then use them with multiple targets in usemin.

Duplicate of #456 and #487


(internal) release_patch: build v5.6.2535

Test plan: automated release PR, CI will perform additional checks

:green_circle: Release has been promoted, see tag: https://github.com/sourcegraph/deploy-sourcegraph-k8s/tree/v5.6.2535.
:no_entry: Do not under any circumstance delete the branch holding the tagged commit (i.e. release-v5.6.2535).
:arrow_right: You can safely close the PR and delete its a associated branch.

:green_circle: Internal release is ready for promotion!
:warning: Do not close/merge the pull request or delete the associated branch if you intend to promote it.


The new ditto implemented features include cetane as part of the feature set

Is this intended? When running the limit input feature task for example, cetane is included as one of the possible features.

Would
item_collection.add_attribute(Attribute('CN (Exp)', is_descriptor=False)

work? Right now I'm omitting the is_descriptor argument, and it looks like it defaults to True

Would
item_collection.add_attribute(Attribute('CN (Exp)', is_descriptor=False)

work? Right now I'm omitting the is_descriptor argument, and it looks like it defaults to True

Yes, that would prevent that attribute from being included in any algorithm calculations.

Fixed as of 8fef3d1


FR: Add destroy Fitbit token option

@simonepri I think it would it be useful to add destroy-fitbit-token to the command parameter, so that it can be used to export from multiple Fitbit accounts. What do you think?
If you're too busy, I can fork this repo and try it myself. I am not a python programmer, so I don't know how it works, but if you can point out where in the codebase I can add this, it would be awesome! Thanks!
UPDATE: No worries, I just found out that I can revoke my Fitbit token directly from the Fitbit app dashboard.

think it would it be useful to add destroy-fitbit-token

I agree, it's rather simple to add but in the meantime you simply run rm .cache/.auth from the folder where you decided to export the data to reset authentication.

so that it can be used to export from multiple Fitbit accounts

If you want to export multiple accounts just export them to two separate folders.


Support for [Forza Horizon 5]

Game name: Forza Horizon 5

Game package name: Microsoft.624F8B84B80_8wekyb3d8bbwe

Microsoft.624F8B84B80_8wekyb3d8bbwe.zip

This has now been released: https://github.com/Z1ni/XGP-save-extractor/releases
If you can confirm if the extracted save works, I'll update the readme to mark this as verified.

See https://github.com/Z1ni/XGP-save-extractor/issues/71#issuecomment-1908857982.
It seems that Forza Horizon 4 saves, which seem to use the same format, don't work when moved from the MS Store version to Steam. I suspect that the Horizon 5 saves also won't work, but I can't test that by myself, as I don't have the game.

I exported my Game Pass save from FH5 using the tool, then copied onto my Steam Deck's FH5 (Steam version) under .steam/steam/userdata/[/1551360/. I deleted the original saves then copied the Game Pass saves into the folder. Restarted the Deck into Gaming Mode, loaded FH5 and it magically picked up where my Xbox save left off. I wish they had support for Steam<->Xbox save progression, but I'll take this as a win. :)


Cue Generation and Dataset

Hello,
I am not able to see where the cue generation is being done. In which file is this being done?  Also, I'm not able to access Google Drive for the dataset. It says that the URL does not exist. Could you provide the updated link?

Thanks for bring this to my attention. Please find the new link:
https://drive.google.com/file/d/1URJGJGEp1VgtKVMM3gPkie6x69uuE3eZ/view?usp=share_link

@Finspire13 Hi,
I'm trying to run your code using another dataset but can't manage to generate the clues properly. Could you maybe provide some code or more implementation details for how to generate them?
Thank you.

@swaradgat19 Hi
Have you managed to find the code for cue generation?

@swaradgat19 Hi Have you managed to find the code for cue generation?

Hi, have you found the code for the cue generation?


Send 'ping' event sent by GitHub webhook integration

I've added the functionality to display incoming ping event to Zulip.
Need help with the actual message that needs to be displayed.

Automated message from Dropbox CLA bot
@decached, it looks like you've already signed the Dropbox CLA. Thanks!

@decached great job! One small comment added ;-)

@TomaszKolek. I guess this update should do.

Merged, after fixing the comment message to close the original issue #3994.  Thanks @decached and @TomaszKolek!
We should update out integrations writing guide to mention one should send a confirmation into Zulip when a webhook is successfully configured if the third-party provider gives us this sort of ping event.
I opened #4115 for auditing existing webhook integrations for this issue which would probably be a great next project for you @decached ; does one of you two want to update the integrations guide?


Tracks test case failing on iOS 14.1, not on 14.2

Tracks test cases fail on iOS 12.1. They expect changes from nothing to German, for example, but on 14.1 and intermediate French step occurs (probably because it is the first track).
This does not happen in iOS 14.2 beta, so I recommend we don't change anything and wait. While the UTs fail on iOS 14.1 the result is correct in the end, so it is better we avoid loosening our tests for this version.
Once 14.2 is out we should check this issue again and close it (or decide what to do if UTs fail in the end).

All tests pass successfully on 14.2 final. This issue can be closed.


Elasticsearch / Opensearch issues on Shopping Website

Hello!
I'm having issues with the shopping website where items won't display in search or catalog. From admin panel, I believe this is due to the fact that one of the indexers is invalid, which in turn is due to opensearch / elasticsearch not working.
Testing elasticsearch in the admin panel throws the error "Class "" does not exist" even when localhost is running elasticsearch on 9200, or 'No Alive Nodes Found' when either elasticsearch or opensearch is used. I was thus hoping you could provide more information about how the search feature is configured within visualwebarena, as well as how one might link the two together.

Sorry, we have not encountered this issue before. If you can provide exact instructions to reproduce this we might be able to offer some advice.

I encountered this doing the standard install instructions on the README, and following it up to step 2 of End-to-end evaluation including downloading the OneStopShop website from google drive and running the associated commands. I am hosting OneStopShop on <IP_ADDRESS>.
The only deviations from this would be that I used a conda environment on python 3.11.9 instead of venv. In addition, running the commands from the drive download caused http://<IP_ADDRESS>:7770 to redirect to http://metis.lti.cs.cmu.edu:7770/, though this was fixed after running  docker exec shopping /var/www/magento2/bin/magento setup:store-config:set --base-url="http://<IP_ADDRESS>:7770" again. The issue of catalog and search not showing items on local OneStopShop still persists however.

Associated log file on restart_shopping

I am also facing the above issue. It looks like a version incompatibility b/w java and elasticsearch. Any suggestions on how to resolve this?

Hi @mlin12321, I am running into the same Elasticsearch error. Same log file after running scripts/restart_shopping.sh. Have you found a solution?

@sertial I wasn't able to find out definitively why I had this error, but I resolved the issue by using a different version of Ubuntu (20.04 -> 22.04) on a different server.


Install script fails to download zip

sdkman_install_error.txt
res-4.0.37.zip_but_really_html.txt
curl -s "https://get.sdkman.io" | bash is producing the attached error.  The key part is quoted below.  Looks like what's getting written to the res-4.0.37.zip file is actually some kind of html error page (also attached).
Workaround:
After a bunch of screwing around, I wound up doing curl -s "https://get.sdkman.io" > sdkman_installer.sh, editing that script, and changing SDKMAN_SERVICE="http://api.sdkman.io" to SDKMAN_SERVICE="https://api.sdkman.io".  Running that modified script worked.
This is what the original error message looks like:
Download script archive...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0 89117    0     0  56435      0 --:--:--  0:00:01 --:--:-- 2559k
Extract script archive...
[/opt/sdkman/tmp/res-4.0.37.zip]
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.
unzip:  cannot find zipfile directory in one of /opt/sdkman/tmp/res-4.0.37.zip or
        /opt/sdkman/tmp/res-4.0.37.zip.zip, and cannot find /opt/sdkman/tmp/res-4.0.37.zip.ZIP, period.

Apologies:  Looks like this is related to my employer's proxy.  Even after tricking SDKMAN into installing, I couldn't do sdk list, sdk install, or anything without getting "PROXY DETECTED!" errors.  I finally got sdk install to work by finding internet access outside the office.  But I have to say, this severely limits the usefulness of SDKMAN.
I have a suggestion:  in doing my troubleshooting, I found that, just like with my original issue, curl api.sdkman.io/candidates/groovy won't work behind the proxy, but curl https://api.sdkman.io/candidates/groovy works fine.  (Incidentally, both urls work fine in Chrome, even behind the proxy)
So:  what about making SDKMAN use https all the time?  Or an additional flag in .sdkman/etc/config to choose between http and https?
Or, can anybody out there tell me how to get curl to handle http requests through corporate proxies the same way Chrome does??  Google's doing nothing for me.

SDKMAN now performs all it's calls over https. Could you please let me know if this solved your problem and if so close this issue?

No response so closing this issue.

I am facing the same issue
Looking for a previous installation of SDKMAN...
Looking for unzip...
Looking for zip...
which: no zip in (/c/Program Files/Java/jdk1.8.0_161/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/mingw64/bin:/usr/bin:/c/Program Files/Java/jdk1.8.0_161/bin:/c/ProgramData/Oracle/Java/javapath:/c/Program Files (x86)/Intel/iCLS Client:/c/Program Files/Intel/iCLS Client:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0:/c/Program Files (x86)/NVIDIA Corporation/PhysX/Common:/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/DAL:/c/Program Files/Intel/Intel(R) Management Engine Components/DAL:/c/Program Files (x86)/Intel/Intel(R) Management Engine Components/IPT:/c/Program Files/Intel/Intel(R) Management Engine Components/IPT:/c/Program Files/Intel/WiFi/bin:/c/Program Files/Common Files/Intel/WirelessCommon:/c/Program Files (x86)/Windows Live/Shared:/c/WINDOWS/system32:/c/WINDOWS:/c/WINDOWS/System32/Wbem:/c/WINDOWS/System32/WindowsPowerShell/v1.0:/d/AEM/Curl/src:/cmd:/c/Users/varun/AppData/Local/Microsoft/WindowsApps:/usr/bin/vendor_perl:/usr/bin/core_perl)
Not found.
Please install zip on your system using your favourite package manager.
Restart after installing zip.

@varun9715 nope, what you are seeing is vastly different. Please read what it says and follow the instructions.

@marc0der I have a very similar issue trying to run the installer behind a corporate proxy:
Looking for a previous installation of SDKMAN...
Looking for unzip...
Looking for zip...
Looking for curl...
Looking for sed...
Installing SDKMAN scripts...
Create distribution directories...
Getting available candidates...
Prime the config file...
Download script archive...

curl: (60) Peer's Certificate issuer is not recognized.
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn't adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
 the -k (or --insecure) option.
Downloaded zip archive corrupt. Are you connected to the internet?

If problem persists, please ask for help on https://gitter.im/sdkman/user-issues

I was able to fix the issue by adding '-k' option the the curl that downloads the zip:
echo "Download script archive..."
curl --location --progress-bar "${SDKMAN_SERVICE}/broker/download/sdkman/install/${SDKMAN_VERSION}/${SDKMAN_PLATFORM}" > "$sdkman_zip_file"

echo "Download script archive..."
curl -k --location --progress-bar "${SDKMAN_SERVICE}/broker/download/sdkman/install/${SDKMAN_VERSION}/${SDKMAN_PLATFORM}" > "$sdkman_zip_file"

@varun9715 nope, what you are seeing is vastly different. Please read what it says and follow the instructions.

What "zip" program should be installed?  I received the same error and installed a couple of "zip" programs but I'm still getting the error that says: " Please install zip on your system using your favourite package manager.
Restart after installing zip."

steps to install SDKMAN on windows
Run windows Terminal in Admin rights. open git bash inside. (Ctrl + Shift + 4)
winget install -e --id GnuWin32.Zip
mkdir ~/bin
cp /usr/bin/unzip ~/bin/zip
curl -s "https://beta.sdkman.io" | bash
source "/c/Users/ajink/.sdkman/bin/sdkman-init.sh"
sdk selfupdate force
``

Done ! :)

@steelx The last step isn't required. SDKMAN is 100% up to date when you've just installed it.

I have similar problem but it stop with:
Looking for unzip...
Not found.
Please install unzip using your favorite package manager
Restart after installing unzip
--
How do I fix this?

I have a similar problem but it stops with: Looking for unzip... Not found.
Please install unzip using your favorite package manager Restart after installing unzip
-- How do I fix this?

What operating system are you using? SDKMAN! requires unzip to work properly.

Hey, thanks for your response. I use Windows 10 and I fixed it. Now I have a problem with the next step typing "source "$HOME/.sdkman/bin/sdkman-init.sh" into my terminal. When  type this command in my regular Windows terminal, it says that "source" is an invalid argument. When I type the command in the ubuntu terminal I get no response at all. Do you have any idea how to fix this? Thanks in advance!

I've fixed the problem on my own Windows 11 simply install the zip package: pacman -S zip

I've fixed the problem on my Windows 11 environment simply by installing the zip package: pacman -S zip

I've fixed the problem on my WSL of Windows 11 simply by installing zip package: sudo apt install zip


[TASK] Remove rand library

https://github.com/ingonyama-zk/icicle/blob/08862134e85c0f23443c20e12a11fb2a4c077b2a/Cargo.toml#L38

rand is no longer a dependency in any of our Rust crates


Barba.js in a webpack installation

Has anyone got a basic set up?
I'm trying to use Barba.js in my Webpack setup. When I click to a new page, the .barba-container get's placed right at the bottom of the DOM.
I'm using HtmlWebpackPlugin to generate my html files, which may affect it somehow?
Cheers

Hey @Mellis84 ,
sorry to reply so late.
did you solved this?

Hi @luruke,
That's fine dude, haven't figured it out yet, once I get back to it and find out i'll let you know, but it has to be how my webpack config is set up using the HtmlWebpackPlugin.
Will let you know though man!
Cheers

@Mellis84  @luruke
Hi guys,
Just wondering if you guys found a solution. I am currently building a static site using a es6-webpack-boiler plate and I am trying to get deep linking to work with barba.js. However, when I deep link to a specific url the script tag at the bottom is lost and the page loses all the css and js.
I understand that barba only loads js once and that you can trigger certain functions upon entering a certain container, but do you guys know how this would be done with webpack (since I am using it to generate the index.js) ?

Hey dude!
This is my setup with webpack, hope this helps!
webpack.config.js
I require the path at the top of my file:
const path = require('path');
In my resolve object I create an alias:
alias: {  "barba": path.resolve('node_modules', 'barba.js/dist/barba.min'), }
Index.js
In my main js file I import Barba:
import Barba from 'barba';
I surround my barba code in a DOM ready function:
document.addEventListener("DOMContentLoaded", () => {});
In my html I make sure the barba container element is directly underneath the barba wrapper element, originally I had the container a few dom elements down from the wrapper and it messed things up... :P

@Mellis84  gotcha. will try this out. Thanks homie

This is unrelated to webpack. You just need to have exclusive barba-container and barba-wrapper elements, don't put anything else in it. You can trick it by using html and body as wrapper and container.

Thanks, @Mellis84. That works for me. Just had to change the alias from barba.min to barba.min.js.


Unused APIs

well I went through the code and saw a couple of issues, you've created APIs for login and registration but not using it ig? You are trying to show everyone on the DB except the user himself on the friends list, but I don't see you storing these registered people? Also I don't see any option to add friends too.

well I went through the code and saw a couple of issues, you've created APIs for login and registration but not using it ig? You are trying to show everyone on the DB except the user himself on the friends list, but I don't see you storing these registered people? Also I don't see any option to add friends too.

Yess great observation go ahead and give a contribution. 🤠🤠

man whoever made the recent push, please ignore the node_modules. it has completely messed up my git , I wanted to make a PR  but now I have to fix this..


[feature] reset to DFU mode in software

I would like to initiate reset to DFU without having to flip the keyboard and poke the reset pin. AIUI, booting with the Escape key down enters DFU mode, so I imagined binding a key-combo with Escape to reset the key MCU would do the job.
In https://github.com/hdhoang/anne-key/commit/13c9604c1b0da2c9d9411ea85422d932fed25a6e
I have given the SCB to Keyboard, then tried to write the reset request when processing Action::Reset. Though the set_theme(3) call worked, the keyboard went  on working normally instead of resetting.
Some paths I would like to explore next:

maybe I need to write to AIRCR differently?
maybe I need to move SCB base back to bootloader's position so that the CPU starts there after reset?

Nikkelitous also said people normally reset MCU from the host side instead of requesting it to reset itself :)
Please advise me on how to implement this!

This looks about right to me.
Possibly unsafe { scb.aircr.modify(|v| v | (0x05fa << 16) | 0b100) } has some bits set in v that you might not want, maybe try just  unsafe { scb.aircr.modify(|v| (0x05fa << 16) | 0b100) }?
Register key:

Reads as 0xFA05

On writes, write 0x5FA to VECTKEY, otherwise the write is ignored.```

Thanks for the review. I started out with write(0x05fa_0004), then adapted an SO's answer mask-preserving write into the modify call. Neither had the desired effect.
However there's a difference between overwriting and modifying:

overwrite: the LEDs turn off while the Reset key is held down, and turn back on when released
modify: the first set_theme call runs

I'll try to add some syst.cvr waiting to see further effect.

Sounds like the overwrite method is working.
Not sure what exactly it resets, maybe it just runs user code again?
Maybe put something into main.rs init so you can see? It should now turn on leds on startup.


This is not a CTF framework

You tool is not a CTF framework. This tool just create some empty file and folder, there is no server front-end/back-end, score-board, account registration and login, etc...
You please remove the ctf-framework tag.

This repository comes with inshack-2017 and helps to manage CTF-related files. It creates folders following a template which helps automating deployment and other scripting-related things.
Why this tag appears on this repository ?
I fully agree this is just a tool but it has been made to manage files for ctf-frameworks. The tag does not mean the exact content of a repository but also semantic relationship.
I'm glad you're interested in this repo.

So please add a link to https://github.com/HugoDelval/inshack-2017 in the README. That's not obvious.


[sknpm] Fix build on MacOS

Add test-client make target

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


Core: Retry.init add on_error

IPR: 7951

There are many changes related to StandardSqlDataTypes. I wonder if they could be made into a separate issue/task.

@mf2199 yeah, I was thinking to re-open the PR because of that. They were merged into the master’s branch and uploaded within the automated update script.

As we have both, reached a consensus and an open PR, I'm closing this one.


how to achive variadic options?

Hi thanks for the nice project :)
I'm making an http cli tool and I need to be able to parse commands like this:
post localhost:3000/user/all Authorization:'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6xjM0MjMsInVzZXJJZCI6Im9taWQiLCJzY29wZSI6ImFkbWluIiwiaWF0IjoxNDkwNzgwODQ3fQ.R5dho9wyV80L8e7c_98Ld2VaMbAvKGOwB9yirtS6uQk' AnotherHeader:'blahblahbla' someData='blahBlah'

How can I approach this with vorpal? I tried using variadic arguments, but it didn't help as the headers are also variadic. I also tried to use a variadic option, so that after --header I could add multiple items, but that didn't work either.

Hi @omidfi. Here's an example.
// index.js
var vorpal = require('vorpal')()

vorpal
  .command('post <url>')
  .description('post stuff to url')
  .allowUnknownOptions()
  .action(function(args){
    console.log(args)
  });

vorpal.exec("post localhost:3000/user/all --Authorization 'Bearer long token' --AnotherHeader 'blahblahbla' --someData 'blahBlah'")

$ node index.js
{ options:
   { Authorization: 'Bearer long token',
     AnotherHeader: 'blahblahbla',
     someData: 'blahBlah' },
  url: 'localhost:3000/user/all' }


Add Comment to Autogenerated Files

As discussed in the review of #182, the API documentation of the KITs is generated via the docusaurus gen-api-docs plugin (see this GitHub repository). To prevent misunderstandings, as suggested by @Siegfriedk, a comment should be added to every auto-generated file indicating that it isn't written manually by a human.
One example of such a comment could be:
<!-- ----------------------------------------------------------------------------------------------
    WARNING: THIS FILE IS AUTO-GENERATED!
    Don't edit this page manually. Use docusaurus gen-api-docs to generate it.
----------------------------------------------------------------------------------------------- -->

@mhellmeier we are going through each and every issue right now. Where have you added this warning already? Or is this just an example as a recommendation?


Add ability to register sub-systems that need init/clean-up on reset

Would be nice to have a single function to handle init/reset/clean-up of subsystems on soft reset.

This isn't gonna work since we can't run anything before main


Regen

Final part of https://github.com/gtk-rs/sys/issues/82
also contains string constants generation
cc @GuillaumeGomez
@sdroege please check changes in source.rs:
Pid made non Copy/Clone.
Also no to_glib/from_glib functions.
~Don't builds until https://github.com/gtk-rs/sys/pull/81 merged~

Seems good to me.

I was lucky and this PR actually don't depends on gtk-rs/sys#82 (CI passed without it)
So only need @sdroege confirmation of https://github.com/gtk-rs/glib/pull/296/commits/684936d37700c1ca385628e70748c1e57865125a before PR counts as ready to merge.

:+1:

Thanks!


[mesheryctl] system context switch: Failure to switch when Meshery deployment has been removed

See mesheryctl Command Tracker for current status of commands.
Current Behavior
While switching a context using platform: kubernetes to a context using platform: docker, when Meshery Server and Adapters (when the Helm release) is not running in the Kubernetes platform, mesheryctl system stop logic results in error.
Desired Behavior
The system switch and the system stop should fail forward.
Screenshots/Logs
$ mesheryctl system context switch docker
Meshery deployments will be deleted from your cluster. Are you sure you want to continue [y/n]? y
Stopping Meshery...
Error: Failed to stop Meshery before switching context
See https://docs.meshery.io/reference/mesheryctl/system for usage details
: cannot stop Meshery: uninstall: Release not loaded: meshery: release: not found

Environment

Host OS: Mac
Meshery Server Version: stable-v0.6.0-rc-5g
Meshery Client Version: stable-v0.6.0-rc-5g
Platform: Docker Kubernetes - both

Contributor Resources

mesheryctl Contributing Guide
Beginner's guide to contributing to Meshery and mesheryctl
mesheryctl Command Tracker
Meshery CLI Commands and Documentation
🙋🏾🙋🏼 Questions: Layer5 Discussion Forum and Layer5 Community Slack

Seems to be fixed with https://github.com/meshery/meshery/pull/5429


installer locks up when testing custom editor notepad.exe

Git-2.28.0-64-bit.exe a8ef3311ac0c8747ba2f5aef3e475ad42fbc084ada7e6fb5060481a78c1a9cf2
using Windows 10 Pro version 2004 build 19041.450
select Select other editor as Git's default editor
specify location:
C:\Windows\System32\notepad.exe
click Test Custom Editor

Hey @esaulpaugh
As you can see in the issue template, this repository issue tracker should only be used to report problems found on the git-scm website (https://git-scm.com/).
Git for windows problems should be raised in https://github.com/git-for-windows/git


[SPARK-13340][ML] PolynomialExpansion, Normalizer and ElementwiseProduct should validate input type

Can one of the admins verify this patch?

Jenkins test this please

ok to test

Test build #52079 has started for PR 11218 at commit d45b5e4.

Test build #52079 has finished for PR 11218 at commit d45b5e4.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/52079/
Test PASSed.

Thanks @grzegorz-chilkiewicz. I see ElementwiseProduct also needs validateInputType.
I'm wondering if it makes sense to do the default validation in the abstract class?
Something like the following in UnaryTransformer:
  /**
   * Validates the input type. Throw an exception if it is invalid.
   */
  protected def validateInputType(inputType: DataType): Unit = {
    val inType = classOf[IN].getSimpleName
    require(inputType.isInstanceOf[IN], s"Input type must be $inType but got $inputType.")
  }

@jkbradley @mengxr what do you think about this?

@MLnick We might be able to provide a standard implementation, but we would need to use Catalyst's ScalaReflection methods since inputType is a Catalyst DataType but classOf[IN] is a Scala class.  We also might have to override it in a few cases, such as transformers which should accept all NumericTypes.

@jkbradley ah you're right. I was just thinking it would avoid little issues such as these creeping in.
@grzegorz-chilkiewicz if you'd like to look into a standard impl, let me know. Otherwise, if you can also do this for ElementwiseProduct it looks fine to me to merge.

I've broken here something during making change - please do not review this

Test build #56096 has started for PR 11218 at commit fb3a848.

Test build #56096 has finished for PR 11218 at commit fb3a848.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/56096/
Test PASSed.

Can one of the admins verify this patch?

retest this please

Test build #56694 has started for PR 11218 at commit fb3a848.

Test build #56694 has finished for PR 11218 at commit fb3a848.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/56694/
Test PASSed.

Merged build finished. Test PASSed.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?


How do i remove swelvy BG on android?

Your Question
I really want to get rid of that useless background, it gets in the way of the icons! I cant rename the files or else, uhhhh, UUHHHHH

Disable BetterMenu


picosnitch: 0.12.0 -> 0.14.0

Description of changes

bump version to 0.14.0 https://github.com/elesiuta/picosnitch/releases
added dependency python3Packages.geoip2
upstream changes negate need for patch (removed)

Things done

Built on platform(s)

[ ] 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
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

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

[ ] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/2518


[TW#27605] SPI half-duplex and full-duplex same device

IDF version: v3.1.1-46-gcdd3131f8

Problem Description
It is not possible to use SPI master driver in both half-duplex and full-duplex modes with the same device (spi_device_handle_t). It is needed to remove the device from the bus and it again.
This may be needed when using DIO/QIO transmissions and standard full-duplex transmissions.

Do you have spec for this kind of chip?

@michprev Feel free to reopen this issue if you have any updates. Thanks.


Regarding trained model

The model you have provided can it be used for evaluating naiver stokes equation on 64*64 mesh with different boundary conditions.

And on super resolution when I test my dataset which is 6464 grid with 20 examples and 100 timesteps I get a error at
test_a = test_a.reshape(ntest,S,S,1,T_in).repeat([1,1,1,T,1]) saying shape '[20, 256, 256, 1, 10]' is invalid for input of size 819200
so is there any specification for super resolution code like for say grid 6464 we have to keep indent value this and S and T value this?
And the model you have provided on drive can I evaluate the results on any grid with any boundary conditions for naiver stokes?

Yes, it could be used to model different boundary conditions. If the mesh is still 64*64, the same model should apply.
For super-resolution, assume we train on 64*64 and want to evaluate at 256*256, there are two scenarios: (a) if your input is 256*256, then you may directly apply the same model (that trained on 64*64). (b) if your input is still 64*64, in this case there is actually no much we can do. Since if the boundary/initial conditon of PDE is low-resolution, then the solution is under-determined at higher-resolution. You may use the code below to evaluate at a higher resolution, where the addition parameter 'size' will be 256.

    def forward(self, x, size=None):
        if size==None:
            size = x.size(-1)

        batchsize = x.shape[0]
        #Compute Fourier coeffcients up to factor of e^(- something constant)
        x_ft = torch.fft.rfftn(x, dim=[2,3])

        # Multiply relevant Fourier modes
        out_ft = torch.zeros(batchsize, self.out_channels, size, size//2 + 1, device=x.device, dtype=torch.cfloat)
        out_ft[:, :, :self.modes1, :self.modes2] = \
            compl_mul2d(x_ft[:, :, :self.modes1, :self.modes2], self.weights1)
        out_ft[:, :, -self.modes1:, :self.modes2] = \
            compl_mul2d(x_ft[:, :, -self.modes1:, :self.modes2], self.weights2)

        #Return to physical space
        x = torch.fft.irfftn(out_ft, s=(size, size), dim=[2,3])
        return x

But it's not much different to directly evaluate the solution at 256*256 and do an interpolation.

Sorry for the delayed response! To address boundary we have two methods in mind:

Fourier continuation: the domain is non-perodic, but we can create a large periodic domain that contains the real domain. It is just a few line of code: for example, if my input and output is of the shape (batch, x, y, channels):
x_in = F.pad(x, (0,0,0,5,0,5), "constant", 0) # create a large domain
out = model(x_in).reshape(batch_size,S+5,S+5,channel)
out = out[:,:5,:5,:] # take out the original domain

The times the output by a mask, for example to enforce a zero boundary
x = torch.linspace(0,np.pi,64+1)[:-1]
mask = torch.outer(torch.sin(x),  torch.sin(x))
out = model(x_in) * mask.reshape(1,64,64,1)

Thanks!

For super resolution for 2-D mesh the script mention does not work as it is for 3-d. So what changes should be done in script for getting super resolution for 2-d mesh?

Sorry I am not very sure I understand the issue. What is working and what is not?

So trained a model on 6464 mesh using fourier_2D.py . Wanted to evaluate at 256256 mesh but got error. So what chnages are to be made in super resolution script. As I think the super resolution script is a 3D one.

If the fourier_2d.py or fourier_2d_time.py model works on 64x64, I think you can directly apply it on 256x256. Just to make sure the size parameter s is updated, and your input (u0 / train_a / test_a) are 256x256.


idea: animation

svg animation or js animation
cf. https://github.com/dai-shi/excalidraw-animate

I just noticed, animating path is harder now with https://github.com/steveruizok/perfect-freehand because it has "fill".
cc: @steveruizok

Freehand is a surprisingly fast algorithm. You could try to preserve the original points and animate them instead, recomputing the stroke shape for each frame?

Okay, that should work. Your algorithm works incrementally, nice.
(Actually, the algorithm speed isn't important for svg <animate>. But, it's gonna be huge. I'd probably explore js animation in this app.)


internal/dag: lock in current behaviour for issue 1347

Updates #1347
Signed-off-by: Dave Cheney<EMAIL_ADDRESS>

@alexbrand this is the current behaviour for #1347. Could you please review and let me know it differs from what you expect. Thank you.

My bad @davecheney. It looks like the issue only happens when the certificate exists in the other namespace. I missed that in the reproduction steps.

@alexbrand i believe I have fixed the issue, PTAL.

I believe this will also fix #1348


setHasStableIds(true) method ?

Your lib works fine unless I call  adapter,setHasStableIds(true), in which case my list completely screws up (duplicated items, missing items etc...).
So this is fine for me, I don't call it.
But I am curious about why you call it in you demo activity testdragsortrecycler ?
Is it important. Do I miss something if i don't call it? How to fix the problem if I have to call it?

Hi,
Actually I removed this line (it's commented in the latest version).
It's not required now. If you have it set you need to make sure "public long getItemId(int position) " is implemted in your adapter, and it actually HAS stable Id's (returning position it not correct)
So no, you don't need it set.

Thanks for your prompt answer.


Lecture Request

CKA

Hi @vishalrajeev
I think you're looking for this:
https://www.udemy.com/course/certified-kubernetes-administrator-with-practice-tests/


feat(quant-fi): updated Open API Spec with latest Quant and FI changes

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


Add Minikube instructions

Add Minikube instructions to edit_first_game_server.md

Signed the thing

LGTM! Can we rebase down to a single commit, and I'll give it the stamp of approval and merge!
THANKS!

It's cleaned up and rebased to a single commit.  Next time I will be more careful squashing :)


Update the ReactiveSwift and ReactiveCocoa entries.

Pull Request Description
Add the latest Swift 3.1 release of ReactiveSwift and ReactiveCocoa to the suite.
Note: These releases build with only Swift 3.1 though. Not quite sure if the suite accepts only 3.1 builds that are source compatible with 3.0.
Acceptance Criteria
To be accepted into the Swift source compatibility test suite, a project must:

[x] be an Xcode or swift package manager project
[x] support building on either Linux or macOS
[x] target Linux, macOS, or iOS/tvOS/watchOS device
[x] be contained in a publicly accessible git repository
[x] maintain a project branch that builds against Swift 3.0 compatibility mode
and passes any unit tests
[x] have maintainers who will commit to resolve issues in a timely manner
[x] be compatible with the latest GM/Beta versions of Xcode and swiftpm
[x] add value not already included in the suite
[x] be licensed with one of the following permissive licenses:

MIT

[x] pass ./check script run

@swift-ci test

Thanks!


point to the existing data_file in gd_put hashing

Whoops! Pointed to the wrong file. Thanks to Matt for discovering the issue.

@wdwatkins it's just a one-liner, but could you review and merge anyway for form's sake?


feat: show toc in mobile view

Type of change

[x] New feature (non-breaking change which adds functionality)

Description
I'd like to use the TOC while reading a post from mobile device. Fixes #1664.
Additional context
Key changes (when screen width <= 849px):

Make the top bar sticky so you can access the menu at any time.
Display "Contents" with drop down icon.
Show overlay with TOC on overlay.

TODO

[ ] Initialize overlay when needed only
[ ] After navigating from the TOC, the anchored header is covered by the top bar.

@cotes2020 Please suggest if this option works and if it is worth continuing.

I see many websites out there that used to place the TOC in the left sidebar, so I guess that's the first place users will try to use based on my experience. However, typically there is no mix of main menu navigation and TOC. So your option will work, even if it takes a little getting used to. Personally, I have no preference, I just want to make it accessible in any way possible. It's good to know you already have an idea of how to add it. Thanks for the feedback.

The TOC and navigation are two different concepts, and stacking them on the left side can cause confusion in design logic. Additionally, the left navigation bar is narrower and not suitable for displaying a lot of text horizontally. Therefore, for the current UI layout, using a separate popup window to display the TOC is a more reasonable solution.

Although I think there are better ways, it would require significant changes to the UI, and I currently don't have the energy to redesign it. So for now, let's go with the concept you suggested; at least it can be implemented quickly and added to the project.

To avoid wasting your efforts, I believe it’s essential to submit a mature solution for you as soon as possible. I’ve drafted a basic design and workflow that adds a secondary top bar to the post layout, making the top bar’s logic more reasonable and clear, while also minimizing code modifications.

Note: In step 2, when the top bar scrolls out of view at the top of the screen, the TOC bar becomes fixed and displays the current post's title on the left side.

In order to better express my description, I created another simple animation demonstration.
https://github.com/user-attachments/assets/80d2bff1-918b-4607-8bae-aeb252c173b3

@cotes2020  The solution is ready for first impressions and your feedback.

Hi, I didn't take a close look at the code, but I found some points worth discussing when running the interface locally:

When the screen width is between 850px and 1199px, the post tobar should remain hidden; otherwise, two similar breadcrumb components (the breadcrumb and categories) appear in the top left corner of <main>. (I think you intended to show the TOC button when the TOC panel on the right side of the desktop is hidden.)

The TOC popup can remove the fade-in animation, as this animation is intended to compensate for the delay in loading and running the JS from a desktop view. Therefore, this effect is not necessary on mobile; displaying it every time can cause visual fatigue.

Here's the translation:
I came up with a slightly modified design to solve problem 1 above:

In mobile mode, the TOC bar is not displayed by default; instead, there is a TOC button. The TOC bar will only be shown when the button scrolls out of the screen's top.
https://github.com/user-attachments/assets/57dce22d-edb4-4975-9b23-4abdfa5cd4e9

In tablet landscape mode (850px <= screen width < 1200px), the same button as in mobile mode will be displayed, but to simplify the design, the TOC bar will not be shown even when this button scrolls out of the top.
https://github.com/user-attachments/assets/0095fdd1-2cb7-489f-b24a-d6c28ba0635c

why there is such a difference between mobile and tablet mode?

Reduce your workload. If you think the tablet maintains the same UX as the phone, I support that too.

FYI: The design solution is ready for preview.

In terms of UI design, we also need to pay attention to maintaining the responsive variation of the padding on the left and right sides of the secondary top bar. Currently, this aspect is lacking.
https://github.com/user-attachments/assets/72960706-ebaf-481f-a6d7-b2668f8269bc
Note: In the video above, I used the browser's Developer Tools to keep the secondary top bar always visible to illustrate the situation.

What do you think if we place breadcrumb on the secondary panel? ...

I don't think it's necessary. First, the horizontal space in the top bar on mobile devices is very narrow, so we should leave as much space as possible for the title. Second, in mobile browsers, you can simply swipe left to return to the previous page.

@cotes2020 Thanks for taking care of the styles and TOC generation. Is there anything else you would like to change?

Yes, I am working on fixing the issue with the TOC bar flickering when toggling between show/hide in iOS Safari.

I like the result you achieved. A few things to note though:

Init TOC once only leads to the problem for desktop users that if the browser window is resized or pinned, then the "Contents" button will not trigger the popup / or the TOC will not appear in the sidebar. This could potentially happen on mobile devices when the orientation changes.
Using different icons for buttons that do exactly the same thing may not be the best UX choice.
The scroll bar does not look good on the popup. It may be better not to make the header scrollable, just the TOC.

Init TOC once only leads to the problem for desktop users that if the browser window is resized or pinned, ...

The tocbot plugin has an issue where creating multiple instances causes scrolling tracking to fail. Currently, this bug is known to trigger only on tablets with a screen width > 1200px. The manual solution is to refresh the page to run tocbot.init() again. Requiring users to refresh the page feels a bit silly, and I’m quite troubled by this. So, do you have a better solution?

Using different icons for buttons that do exactly the same thing may not be the best UX choice.

To clarify, the separate TOC solo button is not designed to mimic the appearance of the TOC top bar. The label "Contents" serves the same purpose as the icon on the right side of the TOC bar, while the ">" icon is just a symbol that implies "expansion," indicating that clicking this button will reveal something on the right. I insist on the current design as it is more concise and does not take up too much attention :)

The scroll bar does not look good on the popup. It may be better not to make the header scrollable, just the TOC.

Thank you for bringing up this important issue! I hadn't noticed that forcefully scrolling down on the popup window in mobile browsers also moves the header. I have now corrected it.

The tocbot plugin has an issue where creating multiple instances causes scrolling tracking to fail. Currently, this bug is known to trigger only on tablets with a screen width > 1200px. The manual solution is to refresh the page to run tocbot.init() again. Requiring users to refresh the page feels a bit silly, and I’m quite troubled by this. So, do you have a better solution?

If I understand the problem correctly, the possible solution might be to track window resize and call tocbot.refresh(). I see no tracking problems with the example below.

Code example
 // Make sure to remove `if (window.innerWidth < 1200)` to execute all init functions in `post.js`
 // Handle TOC layout switch from desktop to mobile and vise versa
  const mediaQuery = matchMedia('(max-width: 1200px)');
  function refreshToc(e) {
    if (e.matches) {
      console.log('< 1200');
      tocbot.refresh({
        tocSelector: '#toc-popup-content',
        contentSelector: '.content',
        ignoreSelector: '[data-toc-skip]',
        headingSelector: 'h2, h3, h4',
        orderedList: false,
        scrollSmooth: false,
        collapseDepth: 4,
        headingsOffset: barHeight
      });
    } else {
      console.log('> 1200');
      tocbot.refresh({
        tocSelector: '#toc',
        contentSelector: '.content',
        ignoreSelector: '[data-toc-skip]',
        headingSelector: 'h2, h3, h4',
        orderedList: false,
        scrollSmooth: false,
        headingsOffset: 16 * 2 // 2rem
      });
    }
  }
  mediaQuery.addEventListener('change', refreshToc);


Install torchdata<0.8.0 when using IPEX

The package torchdata 0.8.0 released recently does not work with PyTorch/IPEX version we use, we have to use torchdata<0.8.0.
Fixes #1755.

Successful runs:

Nightly wheels
E2E performance


Irregularities copying FF vs Chrome

I'm using Quill Editor to provide rich text editing into my application.
In mongo when I save off a simple edit session, it looks something like this:

This

text

is

BOLD

Using Meteor Blaze and Handlebars my code to target this html looks like this:

                          {{{message}}}

I also have code to allow me to see what is copied to the clipboard:
  var clipboard = new Clipboard('span[id^="copy-"]');
  clipboard.on('success', function (e) {
    console.info('Action:', e.action);
    console.info('Text:', e.text);
    console.info('Trigger:', e.trigger);
  });

When I copy the text to the clipboard, all I see in this example is this in the console:
Action: copy
messages-detail.js?005609202faf1271a61336d16a44247de0aa130c:30 Text:
This

text

is

BOLD

I don't/can't see the "behind-the-seens" formatting going on in the Text attribute.  So when I copy this text from the clipboard to Word, the word BOLD is bolded, but if I copy this from the clipboard back into Quill editor, all the formatting and any color stays, but I loose the bold in the BOLD text.
Any help see what formatting is going on in the clipboard is appreciated.

After further research. The bold seems to be working in FF but not in Chrome.
I have another example...
When I copy from Chrome rich-text (with embedded HTML) to the Quill Editor with clipboar.js, looking at the binary of the clipboard, the bolded text has this for embedded HTML:

*** Bold Text ***Â

In FF the binary for the text looks like this:
*** Bold Text ***

In Chrome the *** Bold Text *** is not bolded, in FF it is.
This is the mongo field saved from Quill when in Chrome:

*****Bold Text*****

Here, the <b has been replace with a
This is the mongo field saved from Quill when in FF:

*****Bold Text*****

Is this clipboard.js difference between browsers or Quill Editor?

Hey @aadamsx,
You can copy the HTML content by defining a text function, as described in the documentation.
new Clipboard('.btn', {
    text: function() {
        return document.querySelector('body').innerHTML
    }
});

There are no irregularities between Firefox and Chrome. You should fill an issue with Quill Editor if you're having trouble using it.

Right, but the issue is from HTML copied from clipboard, not with Quill right?  I have html text on the screen, I have a target, and when I copy that target and examine with clipboard, there is a difference between FF and Chrome...

Are you sure that Quill doesn't generate a different string for each browser? Can you confirm that all demos from http://zenorocha.github.io/clipboard.js have the same output on Firefox and Chrome?
If you still think that this a problem with clipboard.js, please create a JSFiddle with an isolated code sample so we can fix that.

Ok -- when implementing your solution I get an error:
new Clipboard('span[id^="copy-"]', {
      text: function(trigger) {
        debugger;
        var id = trigger.dataset.id;
        var clip = document.querySelector('#message-' + id).innerHTML;
        console.log('message id: ' + id + ' clip: ' + clip);
        return clip;
      }
  });

With multiple message all with a different Id:

{{{message}}}

And matching targets:

I get this error:
Uncaught Error: Missing required attributes, use either "target" or "text" : clipboard.min.js:7

Again, can you put that on a JSFiddle, JSBin or something?

Yep, fixed this while trying to build a JSFiddle... thanks.
But this code:
new Clipboard('span[id^="copy-"]', {
      text: function(trigger) {
        debugger;
        var id = trigger.dataset.id;
        var clip = document.querySelector('#message-' + id).innerHTML;
        console.log('message id: ' + id + ' clip: ' + clip);
        return clip;
      }
  });

gives me the raw html and not the text with embedded html.

Cool, nice to hear that. Now you need to figure how to grab that info from Quill.

I'm just copying a div with elements and text underneath it, nothing to do with Quill yet.
This code:
new Clipboard('span[id^="copy-"]')

Along with this target on the element:
<span id="copy-{{messageId}}" data-clipboard-target="#message-{{messageId}}" data-id="{{messageId}}"

Will give me Bold text with embedded html that I cannot see on the clipboard, and not the raw html like this
Boldtext

But calling this:
var clip = document.querySelector('#message-' + id).innerHTML;

will give me the raw on the clipboard.

clipboard.js only copies text (strings), not formatted content.

Ah, it's the difference between the target and text attribute on Clipboard.  Thanks.


Multiple minimal save/load functions for the same type

Suppose I have a common load_minimal and save_minimal provided for a type, that is used in 90% of cases. In the other 10% of cases, the string format of the data varies slightly but it ultimately stored in the same object (Time format is a good example; there are many variations of how date/time is stored as a string).
In the 10% of cases, is there a way I can override the normal load_minimal and save_minimal that it would normally find? I can't create 2 versions of each of these in the same namespace because then there is ambiguity. I also can't add these functions to the type being serialized (external library, I have no control over it).
The practical example I'm dealing with here is boost::posix_time::ptime. There are many formats for time data, I need to be able to serialize/deserialize ptime objects but depending on where the data comes from, the format of the time string might be different.
The closest solution I can come up with so far is that the object that owns the ptime member would split out serialize into save and load, however this requires me to then duplicate the serialization code for all of its members, when only 1 of them is different between saving and loading.

If you can make the distinction at compile time the easiest thing to do would be to create a thin wrapper around your class and write serialization functions for each variant you expect to encounter.  Something like:

// this needs a constructor like NameValuePair, with the correct
// logic to figure out the proper type for time (const vs non-const etc)
// see cereal/details/helpers.hpp
struct SimpleStringWrapper
{
  boost::posix_time::ptime time;

  template <class Archive>
  std::string save_minimal( Archive const & ) const
  {
    return to_simple_string(time);
  }

  template <class Archive>
  void load_minimal( Archive const &, std::string const & value )
  {
    time = boost::posix_time::ptime{value};
  }
}

Now when you need your class to serialize stuff...
struct MyStruct
{
  template <class Archive>
  void serialize( Archive & ar )
  {
    ar( data, more_data,
          SimpleStringWrapper( time ),
          SomeOtherWrapper( other_time ) );
  }
}

If you don't know what to expect until runtime, take a look at cereal/adapters.hpp and see if having mutable state associated with your archive would be useful. This could allow you to change the behavior of a serialization function dynamically by checking some variable in the archive.