/upsert-file endpoint returns 500 internal server error with "Unsupported file type" or "Unsupported file type: application/octet-stream"

Hi,
I was trying different ways to send requests to /upsert-file api endpoint, but I keep getting 500 errors like Unsupported file type or Unsupported file type: application/octet-stream. I am not sure if there is something wrong with my way of initializing the request. I tried to search for the reasons but currently there are not much information about this project on the Internet.
The following C# snippet results in a "Unsupported file type":
var fileName = Path.GetFileName(filePath);
var content = new MultipartFormDataContent();
var stream = new FileStream(filePath, FileMode.Open);
content.Add(new StreamContent(stream), "file", fileName);
var res = await client.PostAsync(requestUrl, content);

Error:
INFO:     <IP_ADDRESS>:54034 - "POST /upsert-file HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 407, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 78, in __call__
    return await self.app(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/applications.py", line 271, in __call__
    await super().__call__(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/applications.py", line 118, in __call__
    await self.middleware_stack(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/middleware/errors.py", line 184, in __call__
    raise exc
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/middleware/errors.py", line 162, in __call__
    await self.app(scope, receive, _send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 79, in __call__
    raise exc
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 68, in __call__
    await self.app(scope, receive, sender)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 21, in __call__
    raise e
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
    await self.app(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/routing.py", line 706, in __call__
    await route.handle(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/routing.py", line 276, in handle
    await self.app(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/routing.py", line 66, in app
    response = await func(request)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/routing.py", line 237, in app
    raw_response = await run_endpoint_function(
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/routing.py", line 163, in run_endpoint_function
    return await dependant.call(**values)
  File "chatgpt-retrieval-plugin/server/main.py", line 63, in upsert_file
    document = await get_document_from_file(file, metadata_obj)
  File "chatgpt-retrieval-plugin/services/file.py", line 17, in get_document_from_file
    extracted_text = await extract_text_from_form_file(file)
  File "chatgpt-retrieval-plugin/services/file.py", line 112, in extract_text_from_form_file
    raise e
  File "chatgpt-retrieval-plugin/services/file.py", line 108, in extract_text_from_form_file
    extracted_text = extract_text_from_filepath(temp_file_path, mimetype)
  File "chatgpt-retrieval-plugin/services/file.py", line 36, in extract_text_from_filepath
    raise Exception("Unsupported file type")
Exception: Unsupported file type

And the following command results in a "Unsupported file type: application/octet-stream":
curl --location 'localhost:8000/upsert-file' \
--header 'Authorization: Bearer <My Bearer Token>' \
--form 'file=@"<File Path>.md"'

Error:
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 407, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 78, in __call__
    return await self.app(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/applications.py", line 271, in __call__
    await super().__call__(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/applications.py", line 118, in __call__
    await self.middleware_stack(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/middleware/errors.py", line 184, in __call__
    raise exc
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/middleware/errors.py", line 162, in __call__
    await self.app(scope, receive, _send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 79, in __call__
    raise exc
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 68, in __call__
    await self.app(scope, receive, sender)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 21, in __call__
    raise e
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
    await self.app(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/routing.py", line 706, in __call__
    await route.handle(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/routing.py", line 276, in handle
    await self.app(scope, receive, send)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/starlette/routing.py", line 66, in app
    response = await func(request)
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/routing.py", line 237, in app
    raw_response = await run_endpoint_function(
  File "chatgpt-retrieval-plugin/.venv/lib/python3.10/site-packages/fastapi/routing.py", line 163, in run_endpoint_function
    return await dependant.call(**values)
  File "chatgpt-retrieval-plugin/server/main.py", line 63, in upsert_file
    document = await get_document_from_file(file, metadata_obj)
  File "chatgpt-retrieval-plugin/services/file.py", line 17, in get_document_from_file
    extracted_text = await extract_text_from_form_file(file)
  File "chatgpt-retrieval-plugin/services/file.py", line 112, in extract_text_from_form_file
    raise e
  File "chatgpt-retrieval-plugin/services/file.py", line 108, in extract_text_from_form_file
    extracted_text = extract_text_from_filepath(temp_file_path, mimetype)
  File "chatgpt-retrieval-plugin/services/file.py", line 43, in extract_text_from_filepath
    raise e
  File "chatgpt-retrieval-plugin/services/file.py", line 40, in extract_text_from_filepath
    extracted_text = extract_text_from_file(file, mimetype)
  File "chatgpt-retrieval-plugin/services/file.py", line 85, in extract_text_from_file
    raise ValueError("Unsupported file type: {}".format(mimetype))
ValueError: Unsupported file type: application/octet-stream

Let me know if more related details are needed to provide.

I have seen some similar issues, like #153 and #159


fix the issues (#57, #67, #68, #69)

Fix issue #57 that was caused by an issue of the List element, which leads to selected list row remains highlighted
Before:

After:

Fix issue #67 to show indicators of horizontal scrollview.
Before:

After:

Fix issue #68
1 avoid overlap between image and the indicator of scrollview
Before:

After:

2 make the width of backdrop image smaller, then users can identify scroll view easier
Before:

After:

**Fix issue #69 **
Filter duplicates and alphabetically sorted the popular people by their names
Before:

After:

Thanks!


Possible PSR-0 Fixer Bug

If the class is renamed such that it conflicts with an import, then we're going to produce a file with invalid syntax when linted. We should skip such cases.

Good point. For now the only safeguard is to lint file at the end (we already can do it!).
Also, fixer is risky, so...
But yeah, its worth to check in fixer!

ping @GrahamCampbell

we're going to produce a file with invalid syntax when linted.

Not on the new linter, though, the file will still be broken.

The "possible bug" ~report is there for almost a year.
Closing.
If anyone is able and willingly to reproduce/fix it, a PR will be appreciated !

It's not a possible bug, it's a real bug, and one that've reproduced in the way that I described.

maybe provide that in PR form as failing test and if you've time a fix as well?


Update version info in README.md

Codecov Report

Merging #67 (2f87e15) into master (9188a9c) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            master       #67   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines           50        50
=========================================
  Hits            50        50

Continue to review full report at Codecov.

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


Attempts to access non-existent CSRs are reserved

Resolves #1116

If there is an attempt to access a non-existent CSR (or write a
non-existent CSR in the Read-only region) - is there no guarantee even then
that it will get an illegal instruction exception?
Or, it is guaranteed only for implemented CSRs at an insufficient priv
level? (i.e. which has higher priority, insufficient priv or unimplemented)?
I would vote for insufficient priv level here.....
On Sun, Jan 28, 2024 at 7:24 PM Andrew Waterman @.***>
wrote:

Resolves #1116 https://github.com/riscv/riscv-isa-manual/issues/1116
You can view, comment on, or merge this pull request online at:
https://github.com/riscv/riscv-isa-manual/pull/1207
Commit Summary

018a901
https://github.com/riscv/riscv-isa-manual/pull/1207/commits/018a9016a91f1c9342e654672a83ba6d4a05d754
Attempts to access non-existent CSRs are reserved

File Changes
(1 file https://github.com/riscv/riscv-isa-manual/pull/1207/files)

M src/priv-csrs.adoc
https://github.com/riscv/riscv-isa-manual/pull/1207/files#diff-9babc2ac9f6753b391e6584ce856baf203f206cb43bc0d3a8a8d5878ed748b7e
(6)

Patch Links:

https://github.com/riscv/riscv-isa-manual/pull/1207.patch
https://github.com/riscv/riscv-isa-manual/pull/1207.diff

—
Reply to this email directly, view it on GitHub
https://github.com/riscv/riscv-isa-manual/pull/1207, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHPXVJWOKSXH7JMY6CIN6WDYQ4I5BAVCNFSM6AAAAABCOW4BAWVHI2DSMVQWIX3LMV43ASLTON2WKOZSGEYDINJWGAZTSMY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Unimplemented CSRs don’t have a defined privilege level, so they can’t trap on the basis of privilege (The use of bits 9:8 for privilege is just a convention, as is the use of bits 11:10 for writability.)

Hmm; given the description of the regions in the spec, I thought of it as
far more than a convention, but more like a ... spec.
On Sun, Jan 28, 2024 at 10:08 PM Andrew Waterman @.***>
wrote:

Unimplemented CSRs don’t have a defined privilege level, so they can’t
trap on the basis of privilege (The use of bits 9:8 for privilege is just a
convention, as is the use of bits 11:10 for writability.)
—
Reply to this email directly, view it on GitHub
https://github.com/riscv/riscv-isa-manual/pull/1207#issuecomment-1914023493,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHPXVJUJ4FF56TK6HEWCI7TYQ44HDAVCNFSM6AAAAABCOW4BAWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJUGAZDGNBZGM
.
You are receiving this because you commented.Message ID:
@.***>

The title of the section that describes the encoding uses the word "conventions"...

Notably, the ratified debug 0.13 spec did not follow that convention.  The mscontext CSR in debug 1.0 continues to not follow that convention but it's now deprecated and replaced by something that follows the convention.


using transclude to update slick on change

Slick wouldn't change when you update an ng-repeat and this recompiles the transcluded content with the new scope when data changes.

@vasyabigi can you check this out?

@vasyabigi can you take a look at this I just updated it

@vasyabigi are you not maintaining this anymore? I cleaned up the pr for you :)


<EMAIL_ADDRESS>broken in test that use mock-fs

I reported this issue before and it was fixed (https://github.com/bcoe/nyc/issues/205).
But I noticed that in<EMAIL_ADDRESS>the issue comes back. It's fine with<EMAIL_ADDRESS>See build: https://travis-ci.org/MoOx/phenomic/jobs/127717652

@thangngoc89 this should be fixed in<EMAIL_ADDRESS>tldr; we need to figure out a better way to bundle dependencies.

@bcoe Thanks a lot for this. Maybe you can use my test to detect this kind of issue

@thangngoc89 did this fix things for you?

@bcoe yes, it did


Quoted class constructor name is handled incorrectly

See https://github.com/Microsoft/TypeScript/issues/31020.
Probably it would be better to wait for TS to fix it first, because maybe it would be changed in AST (babel for example parses it with the correct kind).

Was resolved in TypeScript 3.6, no changes on our side required.


[GPC] Suite Generator

Summary
The precompiler would separate elements of a feature file into different ones based on a specific tag and its value, i.e., generating suites.
Use cases
Scenarios are marked with @suite(X) tags, where X can be smoke, regression or sanity, indicating in which test suite (by purpose) the scenario is executed. A scenario can have multiple of such tags, but at least one.
To clarify, separate folders might be generated containing feature files and elements matching the given suite tag.
Example
Take the following (example) feature file:
# src/login.feature
Feature: Login

  @suite(sanity) @suite(smoke) @suite(regression)
  Scenario: Login pass
    Given the login page is opened
    When the username is typed
    And the password is typed
    And the login button is clicked
    Then the user should be logged in

  @suite(smoke) @suite(regression)
  Scenario: Login fail
    Given the login page is opened
    When the username is typed
    And the wrong password is typed
    And the login button is clicked
    Then the error should be visible
    And the user should not be logged in

Running the precompiled would result in the following feature files:
# dist/suite-sanity/login.feature
Feature: Login

  @suite(sanity)
  Scenario: Login pass
    Given the login page is opened
    When the username is typed
    And the password is typed
    And the login button is clicked
    Then the user should be logged in

# dist/suite-smoke/login.feature
Feature: Login

  @suite(smoke)
  Scenario: Login pass
    Given the login page is opened
    When the username is typed
    And the password is typed
    And the login button is clicked
    Then the user should be logged in

  @suite(smoke)
  Scenario: Login fail
    Given the login page is opened
    When the username is typed
    And the wrong password is typed
    And the login button is clicked
    Then the error should be visible
    And the user should not be logged in

# dist/suite-regression/login.feature
Feature: Login

  @suite(regression)
  Scenario: Login pass
    Given the login page is opened
    When the username is typed
    And the password is typed
    And the login button is clicked
    Then the user should be logged in

  @suite(regression)
  Scenario: Login fail
    Given the login page is opened
    When the username is typed
    And the wrong password is typed
    And the login button is clicked
    Then the error should be visible
    And the user should not be logged in

Options/Variants

Separating feature files either into folders or feature files.
Keeping/Removing suite tags from the result.
Considering a default tag for an element where it is missing.

Additional context

@gherking/gherking, please review this issue and propose any change/improvement.


Create hal.txt

@hakiyoshi First stage of verification passed, official domain is hal.ac.jp as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@hakiyoshi Pull request merged. Thank you!


Add CODEOWNERS file

The owners will be notified when new PRs are raised.
For details see https://docs.github.com/en/free-pro-team@latest/github/creating-cloning-and-archiving-repositories/about-code-owners.

Thanks Deepankar!


Use random123 throughout azplugins

The old Saru interface is deprecated in HOOMD 2.6.0 in favor of random123. There is also now a clean c++11-like interface for generating random numbers, so this should be preferred to the stl throughout. Specifically, the following files need Saru replaced:

DPDEvaluatorGeneralWeight.h
TwoStepBrownianFlow.h
TwoStepBrownianFlowGPU.cuh
TwoStepLangevinFlow.h
TwoStepLangevinFlowGPU.cuh
These can probably just use the RNGIdentifiers from HOOMD, since they are meant to be used as replacements. Or, we can specify a new one for each. Also, ParticleEvaporator should use random123 rather than the stl.

This task is related to #9.

Resolved by PR #13


firebase_admob-0.9.3+2 - AdRequestBuilderFactory.java uses or overrides a deprecated API

Steps to Reproduce

Build flutter for release with command flutter build appbundle
Command executed successfully but with a Note below

Note: /home/zini/.pub-cache/hosted/pub.dartlang.org/firebase_admob-0.9.3+2/android/src/main/java/io/flutter/plugins/firebaseadmob/AdRequestBuilderFactory.java uses or overrides a deprecated API.

Output file of below command:
flutter doctor -v
flutter doctor -v.txt
flutter run --verbose
flutter run --verbose.txt
pubspec.yml
pubspec.yml.txt
Will this cause my ads to display after uploading app to play store?

Hi @zpaya
for what I can see the issue is related to a FlutterFire plugin,
please open the issue in the dedicated github.
Closing, as this isn't an issue with Flutter itself,
if you disagree please write in the comments and I will reopen it
thank you


Allow CSS Code Hints in PHP

Allow CSS Code Hints in style tags for PHP files. Fixes #11629
CC: @abose

Hi guys, As we will be releasing 1.5 by Thursday, this change has to be pulled in by Tuesday or we could push this to 1.6.

@abose Cool! Will push the changes in a while.

Thanks @sprintr .
Verified, all unit tests passing. Merging :+1:


Add ability to change value with value prop to prevent wrong internal value.

Compares the next value to the current value on state. If they are different than it'll trigger a change in state.
Should handle:
Controlled => Controlled (always having a value externally)
Uncontrolled => Controlled (no value to start, then changing value)
However unsure about this one:
Controlled => Uncontrolled ( start with value, then value is undefined)
I have it so that it destroys the value. Since you went from value => no value I assumed that's how it should work.

LGTM!


AndroidX

When I use implementation "com.commonsware.cwac:saferoom.x:0.5.0" I run into

Warning: Exception while processing task java.io.IOException: Can't write [/Users/hannes/git/DBPrefs/sample/build/intermediates/transforms/proguard/debug/0.jar] (Can't read [/Users/hannes/.gradle/caches/transforms-1/files-1.1/saferoom.x-0.5.0.aar/4d39595e91b080982d88ecf1168b50ce/jars/classes.jar(;;;;;;;**.class)] (Duplicate jar entry [com/a/a/a/a.class]))
Thread(Tasks limiter_2): destruction

Task :sample:transformClassesAndResourcesWithProguardForDebug FAILED

any ideas ?

I have no way of knowing what com/a/a/a/a.class refers to. If you can give me a project that reproduces the problem, I can attempt to research further, but just based on that message, I do not know how to proceed.

Thank you for coming back to me so quick !
It's this repo https://github.com/hannesa2/DbPreferences in branch AndoidX

You have this line in samples/build.gradle:
implementation 'com.commonsware.cwac:saferoom:0.4.4'

You do not need it. Partly, that is because you should be getting SafeRoom from DbPrefs. Partly, that is because you have a different version of that same dependency in DbPrefs. I changed the artifact ID (saferoom.x instead of saferoom), but I did not change the Java package for the classes, given that I don't really support two versions of SafeRoom in the same project at the same time.
So, get rid of that line, and sample builds. You might also get rid of any other dependencies in sample that you really should be getting from your implementation project(':DBPrefs') line.
BTW, to help diagnose this sort of thing, temporarily add -dontobfuscate to your proguard-rules.pro file, so the class name gets reported without obfuscation.


Bad Substitution in nvm.sh

On a fairly fresh Ubuntu 12.04 install I get
gmauer:~/nvm$ sudo ./nvm.sh
./nvm.sh: 10: ./nvm.sh: Bad substitution
./nvm.sh: 75: ./nvm.sh: [[: not found
./nvm.sh: 75: ./nvm.sh: [[: not found
./nvm.sh: 126: ./nvm.sh: [[: not found
gmauer:~/nvm$ -e               N/A
This is both in bash and zsh
not using sudo, as far as I can tell the script just exits immediately with no output.
Any ideas?

I have issuse with this using alpine linux.

@nullvoxpopuli  this is a 4-year-old issue, 2 years stale. Would you mind filing a new issue?


Fuel model usage and migration to ROS 2 launch files

This PR introduces two features:

Fuel Model Integration Examples: We've added comprehensive examples demonstrating how to utilize models from Fuel, making it easier to incorporate these models into your projects.

ROS 2 Launch File Migration: Launch files have been updated to ROS 2, ensuring compatibility with the latest ROS version.

@woensug-choi, I've incorporated your comments into the commit.

Awesome, I like the idea of just using one universal launch file! I have merged the branch after making minor mods.
Any idea why https://github.com/gazebosim/ros_gz/pull/492 didn't work? maybe it's not on release yet?

It seems likely that the pull request isn’t included in the release yet. For now, let's use the hook and revisit this once it becomes available or if I find a way to make it work with Jazzy.


fix(status-page): Status block proven

Are there supposed to be two duplicate deployments? One doesn't seem to be loading anything but a couple of the status indicators.


Nix: False positives in E2E tests

Nix's e2e tests relying on curl SHOULD be already broken at least twice - for example the following PRs successfully passed CI checks, even they changed request body in incompatible way:

https://github.com/cspr-rad/kairos/pull/32
https://github.com/cspr-rad/kairos/pull/53

By default, receiving a 500 Internal Server Error would result in an exit code of 0 (indicating no error in the curl command itself). In order to detect server errors, --fail / --fail-with-body should be provided.
@marijanp already submitted fix in #59.

Fixed in #59.

By default, receiving a 500 Internal Server Error would result in an exit code of 0 (indicating no error in the curl command itself). In order to detect server errors, --fail / --fail-with-body should be provided.
@marijanp already submitted fix in #59.

Curl didn't respond with a 500 error code because our server was beghind an nginx server, which returned a html containing a 301 permamently moved error message. This returns a 0 exit code.

@marijanp You are wrong :roll_eyes:. Here is proof that code 301 is not an error, even if you add --fail-with-body:
$ curl --fail-with-body -v bankier.pl
*   Trying <IP_ADDRESS>:80...
* Connected to bankier.pl (<IP_ADDRESS>) port 80
> GET / HTTP/1.1
> Host: bankier.pl
> User-Agent: curl/8.4.0
> Accept: */*
>
< HTTP/1.1 301 Moved Permanently
< Date: Thu, 04 Apr 2024 12:14:44 GMT
< Transfer-Encoding: chunked
< Connection: keep-alive
< Cache-Control: max-age=3600
< Expires: Thu, 04 Apr 2024 13:14:44 GMT
< Location: https://bankier.pl/
< Server: cloudflare
< CF-RAY: 86f1384afb448869-WAW
<
* Connection #0 to host bankier.pl left intact
$ echo $?
0

Also, I didn't say server returned code 500, but only stated that error checking was done incorrectly:

receiving a 500 Internal Server Error WOULD result in an exit code of 0

@koxu1996 so what is wrong about my statement? I said it returned 0, because curl fetched a 301. A 0 indicates success.

Maybe you are suggesting there is another CI issue?

There were two issues, another one was that I forced SSL in our production config. And I had to override that in the test to get rid of the permament/y moved 301 status code. That's the first reason it didn't error.

So even adding --fail-with-body was not the only problem with it:

https://github.com/cspr-rad/kairos/commit/4e61d681c691809a6010af71ac96583db8e9bc81

Like I said, another CI issue - not related with curl and fixed without context.


Add /.well-known/schema-discovery route for queries from TWINTIP

many exceptions regularly appeared on our applications, we find they were caused by the queries from TWINTIP (https://docs.stups.io/en/latest/components/twintip.html)
we need to create a dummy response of "/.well-known/schema-discovery" for each applications, most of them are using connexion.
so it will be nice if connexion can handle those TWINTIP queries internally, or provide a template or something to users, so that we can easily fill some text and connexion generate the response internally.

Could one add the routes when an API is added using a call to add_api returning the required information from the api?
What happens when one calls add_api multiple times (specifying different .yaml files each time)?

@chutium I think adding (at least allowing "opt-in") the schema-discovery URL is a good idea

For background explanation: the "/.well-known/schema-discovery" URL (https://docs.stups.io/en/latest/components/twintip.html) is our Zalando STUPS way of discovering Swagger API definitions. The STUPS TWINTIP service is regularly scanning all deployed application endpoints to find Swagger API definitions.

FYI: There is also an ongoing discussion about allowing multiple Swagger API definitions per service, see https://github.com/zalando-stups/twintip-crawler/issues/5

@chutium I now see your problem more clearly: I guess the real problem is Connexion logging HTTP 401 (unauthenticated) as "ERROR", we probably should reconsider and use "INFO" log level (as it's a client error and should not spam the server logs)

@chutium see #83

Can we close this issue?

Yes, let's close it.


make GitHubActions also run tests for netstd (updated)

Add a job to build and run tests for netstd. Also upload the binaries as artifact.
This gives basic testing, but leaves including to cross-test for the future.
Most job-steps are copied from the other jobs.
In relation to https://github.com/apache/thrift/pull/2994 it already uses ubuntu-22.04 (ubuntu-20.04 has issues with dotnet-support).
This PR supersedes #2995 to apply straight forward on master.

Test failing with "python_test" for msvc builds - quite sure this does not relate to to the GitHubAction changes here.


Allow images to be stored elsewhere?

Now, image uploading is only allowed to vercel blob storage, exposing a function would be nice.
Thanks!

You can create a api call on /api/upload to store the image where you want. I did something like this to store on supabase:
const reader = req.body?.getReader();

const stream = await reader?.read();

if (!stream?.value) return;

const filename = `${randomUUID()}`;

const uint8Array = new Uint8Array(stream.value);

const blob = new Blob([uint8Array], { type: "image/png" });

const fileBody = new File([blob], filename, {
  type: "image/png",
});

await supabase.storage.from("blog-images").upload(filename, fileBody);

const { data } = await supabase.storage
  .from("blog-images")
  .getPublicUrl(filename);

return NextResponse.json(
  {
    url: data.publicUrl,
  },
  { status: 200 }
);

Hey, thanks for the reply,
but vercel has a limit on the size of the body you can send to /api right?
I was hoping for doing something client side => getting presigned url, then upload it from client

is there was any way to change the api url by sending as a props? because i need a dynamic route.

Hey, thanks for the reply, but vercel has a limit on the size of the body you can send to /api right? I was hoping for doing something client side => getting presigned url, then upload it from client

I've implemented such a solution with supabase as well:

Create an api route for creating the signed upload url (mine is under /api/uploads)

// fix supabase issue with edge functions
export function createEdgeHandlerClient(req: Request) {
  const cookies = new RequestCookies(req.headers) as any;
  return createRouteHandlerClient<Database>({ cookies: () => cookies });
}

export const runtime = "edge";

export async function GET(req: Request) {
  try {
    const supabase = createEdgeHandlerClient(req);
    const {
      data: { user },
    } = await supabase.auth.getUser();

    if (!user) {
      throw new UnauthorizedError();
    }

    const fileId = uuidv4();

    const { data, error } = await supabase.storage
      .from("uploads")
      .createSignedUploadUrl(`users/${userId}/files/${fileId}`);

    if (error) {
      throw error;
    }
    if (!data) {
      throw new ApplicationError("Failed to create signed upload url");
    }

    return new Response(
      JSON.stringify({
        fileId,
        token: data.token,
        path: data.path,
      }),
      {
        status: 200,
        headers: { "Content-Type": "application/json" },
      },
    );
  } catch (error) {
    // handle error
  }
}

Create another api route to get the create a signed url for reading the file (mine is under /api/uploads/[fileId]

export async function GET(
  req: Request,
  {
    params: { fileId },
  }: {
    params: { fileId: string };
  },
) {
  try {
    const supabase = createEdgeHandlerClient(req);
    const {
      data: { user },
    } = await supabase.auth.getUser();

    if (!user) {
      throw new UnauthorizedError();
    }

    const { data, error } = await supabase.storage
      .from("uploads")
      .createSignedUrl(`users/${userId}/files/${fileId}`, 60 * 60 * 24 * 7); // 1 week

    if (error) {
      throw error;
    }
    if (!data) {
      throw new ApplicationError("Failed to create signed url.");
    }

    return new Response(JSON.stringify({ signedUrl: data.signedUrl }), {
      status: 200,
      headers: { "Content-Type": "application/json" },
    });
  } catch (error) {
    // handle error
  }
}

For the frontend part simply first create and return the signed upload url, upload the file and finally return the signed url for reading it:

export function handleImageUpload(file: File, documentId: string) {
  const supabase = createClientComponentClient();

  return new Promise((resolve, reject) => {
    toast.promise(
      async () => {
        let id: string;

        // 1. Create a signed upload url and upload the file
        try {
          // I use ky for fetching the signed upload url
          const data = await ky
            .get(`/api/uploads`)
            .json();

          // And valibot for parsing the response
          const { fileId, token, path } = parse(
            CreatedSignedUploadUrlSchema,
            data,
          );

          const { error } = await supabase.storage
            .from("uploads")
            .uploadToSignedUrl(path, token, file);

          if (error) {
            throw error;
          }

          id = fileId;
        } catch (error) {
          // handle error
          return reject(error);
        }

        // 2. Create a signed url to read the file
        try {
          const data = await ky
            .get(`/api/uploads/${id}`)
            .json();
          const { signedUrl } = parse(CreatedSignedUrlDataSchema, data);

          // Preload the image
          const image = new Image();
          image.src = signedUrl;
          image.onload = () => resolve(signedUrl);
        } catch (error) {
          // handle error
          return reject(error);
        }
      },
      {
        loading: "Uploading image...",
        success: "Image uploaded successfully.",
        error: (error) => error.message,
      },
    );
  });
}

woah, this is really cool. thanks a ton <3

Here is what I did to save the image to my pocketbase server
`
const reader = await request.body?.getReader();
let totalData: Uint8Array | null = null;
let streamChunk;
if (!reader) return;
while (!(streamChunk = await reader.read()).done) {
const chunk = streamChunk.value;
if (chunk) {
  if (!totalData) {
    totalData = chunk;
  } else {
    const newData: Uint8Array = new Uint8Array(
      totalData.length + chunk.length
    );
    newData.set(totalData, 0);
    newData.set(chunk, totalData.length);
    totalData = newData;
  }
}

}
if (!totalData) {
throw new Error("No data received from the stream.");
}
const filename = ${randomUUID()};
const uint8Array = new Uint8Array(totalData);
const blob = new Blob([uint8Array], { type: "image/png" });
const formData = new FormData();
formData.append("file", blob);
formData.append("name", filename);
console.log(JSON.stringify(request.body));
const record = await uploadFile("files", formData);
`
based on @ThiagoMaurat 's code

@arthureberledev how did you modify the editor on the frontend to use details from client side upload? There is no prop to change editor mechanics on the client side as far as I can tell

@arthureberledev how did you modify the editor on the frontend to use details from client side upload? There is no prop to change editor mechanics on the client side as far as I can tell

I am using a fork for this till the editor is more extensible. But it essentially replaces some code of the UploadImagesPlugin which in turn is added here to the extension list. Maybe it works if you add a new extension to the list?


chore(deps): upgrade dev dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-dev-dependencies-1.x" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 1320

Questions ?
Please refer to the Backport tool documentation


Using extern template in source mode.

The gains don't seem impressive enough to make this worth it, in my opinion.

Is there a plan to write a non-template version of Beast, i.e. with more of the storage_ptr style policies instead of template parameters?

Yes: https://github.com/CPPAlliance/http_proto
Although this new library doesn't provide any policies at all (which is another way of solving the problem).


GDPR

please can you add the new consent from Google to use admob for europen users.
thank tou

Hey, thank you for your comment. I am working on this as we speak, hopefully I can push an update out tonight, latest tomorrow. Thanks again.

I will reopen this until I added mediation support.

v9.0 with GDPR mediation support (custom consent form) and other tweaks is now live. Please let me know if there is something missing.


Cannot Install from pip

Hello,
Thanks for writing this code. I want to use it but I'm not able to install it right now. I downloaded the repo. I also installed cython and numpy with pip.
I'm running python version 3.5.2 and pip 19.1.1.
Here is the error I am getting when I run pip install -e . or pip install .
    ERROR: Complete output from command python setup.py egg_info:
    ERROR: Compiling src/tmgen/hmc.pyx because it changed.
    Compiling src/tmgen/models.pyx because it changed.
    Compiling src/tmgen/tm.pyx because it changed.
    [1/3] Cythonizing src/tmgen/hmc.pyx
    [2/3] Cythonizing src/tmgen/models.pyx
    [3/3] Cythonizing src/tmgen/tm.pyx
    /Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/Cython/Compiler/Main.py:367: FutureWarning: Cython directive 'language_level' not set, using 2 for now (Py2). This will change in a later release! File: /Users/TomNason/Dropbox/GreyLambda/GreyLambda_git/scripts/TMgen-master/src/tmgen/hmc.pxd
      tree = Parsing.p_module(s, pxd, full_module_name)
    /Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/Cython/Compiler/Main.py:367: FutureWarning: Cython directive 'language_level' not set, using 2 for now (Py2). This will change in a later release! File: /Users/TomNason/Dropbox/GreyLambda/GreyLambda_git/scripts/TMgen-master/src/tmgen/models.pxd
      tree = Parsing.p_module(s, pxd, full_module_name)
    /Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/Cython/Compiler/Main.py:367: FutureWarning: Cython directive 'language_level' not set, using 2 for now (Py2). This will change in a later release! File: /Users/TomNason/Dropbox/GreyLambda/GreyLambda_git/scripts/TMgen-master/src/tmgen/tm.pxd
      tree = Parsing.p_module(s, pxd, full_module_name)
    Download error on https://pypi.python.org/simple/pytest-runner/: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:645) -- Some packages may not be found!
    Couldn't find index page for 'pytest-runner' (maybe misspelled?)
    Download error on https://pypi.python.org/simple/: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:645) -- Some packages may not be found!
    No local packages or working download links found for pytest-runner
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/Users/TomNason/Dropbox/GreyLambda/GreyLambda_git/scripts/TMgen-master/setup.py", line 74, in <module>
        'Topic :: Software Development :: Libraries :: Python Modules'
      File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/core.py", line 108, in setup
        _setup_distribution = dist = klass(attrs)
      File "/Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/setuptools/dist.py", line 315, in __init__
        self.fetch_build_eggs(attrs['setup_requires'])
      File "/Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/setuptools/dist.py", line 361, in fetch_build_eggs
        replace_conflicting=True,
      File "/Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 850, in resolve
        dist = best[req.key] = env.best_match(req, ws, installer)
      File "/Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1122, in best_match
        return self.obtain(req, installer)
      File "/Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/pkg_resources/__init__.py", line 1134, in obtain
        return installer(requirement)
      File "/Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/setuptools/dist.py", line 429, in fetch_build_egg
        return cmd.easy_install(req)
      File "/Users/TomNason/GreyLambdaEnv/lib/python3.5/site-packages/setuptools/command/easy_install.py", line 659, in easy_install
        raise DistutilsError(msg)
    distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('pytest-runner')
    ----------------------------------------
ERROR: Command "python setup.py egg_info" failed with error code 1 in /Users/TomNason/Dropbox/GreyLambda/GreyLambda_git/scripts/TMgen-master/

You can try to run "pip install pytest-runner" before installing.


[C++] find tzdb without TZDIR when in conda-environments

What changes were proposed in this pull request?

Find tzdb without having to set TZDIR when in a conda-environment (where tzdata has a uniform location of $CONDA_PREFIX/share/zoneinfo across all platforms).
Why are the changes needed?

This is due to issues in arrow (see https://github.com/apache/arrow/issues/36026) that cannot really be fixed there, as it assumes that orc >=2.0 knows how to find the tzdb. Having to set TZDIR in all user environments is an intrusive change that should be avoided, and since the cost here is checking a single environment variable, it's hopefully not too onerous for consideration.
How was this patch tested?

CI here
Was this patch authored or co-authored using generative AI tooling?

No
CC @wgtmac
See also: #1587

If desired, I can test this patch on conda-forge infrastructure (build a patched orc that's published in a separate channel, then run https://github.com/conda-forge/arrow-cpp-feedstock/pull/1086 against that).

Thanks for the fix! Do you have a JIRA account? I can assign this to you.

Would it be possible/acceptable to create a symlink in CI? I believe we could write a test that exercises the branch for CONDA_PREFIX here similar to
https://github.com/apache/orc/blob/b75dcaa060ce4e9cb5bc4600b00bfb8769efc50b/c%2B%2B/test/TestTimezone.cc#L423
but it would need a working tzdb at the end of $CONDA_PREFIX/share/zoneinfo.

Interestingly, I cannot inspect any CI logs here. Unfolding any section just gives a red Error:.

Ah, just found
https://github.com/apache/orc/blob/b75dcaa060ce4e9cb5bc4600b00bfb8769efc50b/cmake_modules/ThirdpartyToolchain.cmake#L340
So I guess it should be there?

That is only used in WIN32 to make test pass on Windows...

That is only used in WIN32 to make test pass on Windows...

Well, then we could still test that the CONDA_PREFIX mechanics work on windows, no? See my last commit, which tries to do this.

OK, so the test I added passed now:
[ RUN      ] TestTimezone.testTzdbFromCondaEnv
[       OK ] TestTimezone.testTzdbFromCondaEnv (0 ms)

but restoring TZDIR still fails:
 unknown file: error: C++ exception with description "Time zone file ������������������������������������������������������������������������������/UTC does not exist.

Since this is copied from testMissingTZDB, I'm surprised the same error doesn't happen there, because that test is saving tzDirBackup in exactly the same way - i.e. just a pointer to an environment variable which then gets deleted. It seems to me that the restoration of that environment variable cannot succeed (without a deepcopy before deleting TZDIR), and so far that test may have only passed due to checking if (tzDirBackup != nullptr), but - potentially - never actually restored the environment variable...? 🤔

Tests are passing on windows now! 🥳

This is all green now and should be ready for closer review. :)

Thank you, @h-vetinari . This patch looks good to me if all comments from @wgtmac are fixed.

Thanks for the reviews! I made the requested changes.

I have a last question - I see that there's some sort of caching for the tzdb going on (or at least, there's a test for it):
https://github.com/apache/orc/blob/695e0f33609adae0114708c3be756bb7b77f4d79/c%2B%2B/test/TestTimezone.cc#L346-L347
Can we delete that cache somehow to rule out that this is what's causing testTzdbFromCondaEnv to pass?

I have a last question - I see that there's some sort of caching for the tzdb going on (or at least, there's a test for it):
https://github.com/apache/orc/blob/695e0f33609adae0114708c3be756bb7b77f4d79/c%2B%2B/test/TestTimezone.cc#L346-L347
Can we delete that cache somehow to rule out that this is what's causing testTzdbFromCondaEnv to pass?

We can either use a different timezone to avoid caching or add a function to invalidate the cache.

Sorry for the force-pushes; I had to figure out the right dates/times (which is a bit harder because we apparently need to specify them in UTC rather than local time; in the latter it would always be around 2/3am).

OK, I think I'm done now from my side. This tests all the things I could think of as relevant.

Thanks a lot for the review and help here @wgtmac! 🙏
Would you consider including this in the 2.0.1 release? I'm probably going to backport this in conda-forge if not, but it would be nicer if it could be included in the release here directly; seeing that it's just about checking a single environment variable, I think the risk here is very low.

Yes, I have already ported it to branch-2.0 and will be released in 2.0.1.

Amazing, thanks a lot! 🤩


humpty is failing with the new version of distlib (0.2.5)

It is fixed when forcing distlib 0.2.4. So one fast solution is to pin required version to 0.2.4, and then re publish on pypi, as the package as installed by pip  will always fail, because always retrieve last version of distlib.

btw this is the traceback
Traceback (most recent call last):
  File "/usr/local/bin/humpty", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python2.7/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python2.7/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/humpty.py", line 620, in main
    EggWriter(wheel).build_egg(dist_dir)
  File "/usr/local/lib/python2.7/site-packages/humpty.py", line 521, in build_egg
    for filename, content in egg_info:
  File "/usr/local/lib/python2.7/site-packages/humpty.py", line 111, in files
    sections = getattr(self, name)
  File "/usr/local/lib/python2.7/site-packages/humpty.py", line 275, in requires
    reqs = list(get_reqs())
  File "/usr/local/lib/python2.7/site-packages/humpty.py", line 268, in get_reqs
    req_, sep, marker = req.rpartition(';')
AttributeError: 'dict' object has no attribute 'rpartition'

I believe that this is fixed in c1b290e (which is included in the just-released humpty 0.2.)


I need a fully-featured Azure Storage copy task for Linux

I feel as though not having a first-party option to interact with Azure Storage from a Linux based build host is something that needs to be addressed with some degree of priority.

I might also additionally suggest an audit of all official Microsoft plugins to ensure they work on Linux.
With full apologies for being so direct, I hope you can appreciate how frustrating this is.  These kinds of surprises are not documented anywhere and leave people to the last moment before they realize Azure Devops has an innate and blocking preference for Windows.
A follow-on concern I have as a result of this is over how long I will have to wait before Azure Devops is able to correct this.  What am I supposed to do in the interim?
( cc. from https://twitter.com/martinwoodward/status/1064604300930887681 - reassuring response from @martinwoodward, but no followup from the team members he pinged. )
I've encountered this scenario enough on Azure Devops times that I think something proactive would make a lot of sense.  The plugin marketplace would be well served by only showing extensions that run on all platforms.  This would give Azure Devops a clear idea of the extent of the issue and start to make inroads on resolving something this recurrent.

@atrauzzi, we have converted most of the Azure tasks to be xPlat, Azure File Copy is on the pending list. To be honest, we haven't had many requests for the same. Since this is a feature ask, I would recommend you to report this on AzureDevOp DeveloperCommunity (Suggest a feature) This will help to prioritize appropriately.


Command + "/"

Issue Type: Feature Request
Command + "/" to comment entire line doesn't work.
Azure Data Studio version: Azure Data Studio 1.4.5 (887f4e8985023602e599cf86bdb44df48bb28569, 2019-02-12T06:09:15.672Z)
OS version: Darwin x64 18.2.0

Hi Eric, you can set a custom keyboard shortcut to comment an entire line.
To modify keyboard shortcuts, go to File, then Preferences, then Keyboard Shortcuts. Search for Add Line Comment and click the pencil to modify to the keyboard shortcut you prefer.

Let us know if this works for you.

@ericdiliu please try Ctrl-K Ctrl-C (or customize as @yualan mentions) for the Comment Line feature.  Thanks!


api/client: close the returned io.ReadCloser

Signed-off-by: Ma Shimiao<EMAIL_ADDRESS>

@Mashimiao nice find.  Thanks!
LGTM

I agree with @runcom. In general, we should do the checks in order:

First we check the error
Second we defer the stream closing.

@calavera Thanks for your comment. Fixed

LGTM

LGTM just waiting for janky

awesome, thank you!


[Feature Request] Return Error Codes on Read/Write

On Read/Write operations there can be other error codes provided by the device giving a hint to the application what's going on (and what the actual problem is). Currently these error code are ignored. The intent is to pass the error codes as a result of a read or write operation.

Hi @chrimaka,
I'm the friendly issue checker.
It seems like (100.00 %) you haven't used our issue template :cry: I think it is very frustrating for the repository owners, if you ignore them.
If you think it's fine to make an exception, just ignore this message.
But if you think it was a mistake to delete the template, please close the issue and create a new one.
Thanks!

I'd like to add
default:
    exception = new Exception($"GattStatus: {(int)status}");
    break;

to Android's GattCallback.cs.
From a design perspective - how should we pass the error back the application? We could pass the error code as a result of the read (or write) operation. This would change the API from protected abstract Task<byte[]> ReadNativeAsync(); to  protected abstract Task<Tuple<int, byte[]>> ReadNativeAsync();. (with the major change to 3.x this would be okay from my perspective). The other option is, the throw a dedicate exception. The question is, if a regular error should result in an exception.
@janusw do you have a though here?

A PR would be very welcome 😉. We haven't released 3.0 yet, so an API change would be acceptable at this stage. Give me a moment to look into the details here.

This is fixed via #669.


Visual studio Community 2022  Project cannot be launched because startup file is not specified

This issue has been moved from a ticket on Developer Community.

[severity:It bothers me. A fix would be nice]
It seems very complicated use visual studio for staring development web project page, even if use  search engine could be found many tutorial but when try with visual studio community could not found project explorer even if check on view menu.
If start with single web project menu by selecting web project new file HTML file  it displayed message “failed to launch project”  (the project can not be launched because startup file is not specified).
Could not understand  whet it refer to startup settings (python???) ever try to set it seems not work.
Have tried on search engine but none works.
<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title></title>
</head>
<body>
    <p> hello </p>
</body>
</html>

Original Comments
Feedback Bot on 3/3/2022, 09:31 PM:
We have directed your feedback to the appropriate engineering team for further evaluation. The team will review the feedback and notify you about the next steps.
Feedback Bot on 3/4/2022, 02:24 AM:
Thank you for sharing your feedback! Our teams prioritize action on product issues with broad customer impact. See details at: https://docs.microsoft.com/en-us/visualstudio/ide/report-a-problem?view=vs-2019#faq. In case you need answers to common questions or need assisted support, be sure to use https://visualstudio.microsoft.com/vs/support/. We’ll keep you posted on any updates to this feedback.

Original Solutions
(no solutions)

Hi there! We do have the Solution Explorer tool window to create & manage your solutions and projects and to view & interact with your code. It can be found in View -> Solution Explorer. In terms of your other questions, can you please provide sample project/screenshot/gif that shows the problem so we can investigate? Thank you!

Going to close this out. If the issue still persists, please reopen with the information requested. Thanks.


Fixed issue where panels in sprite frames editor couldn't be resized

Fixes #55760
https://user-images.githubusercontent.com/25117425/156260973-03a9bd9e-4d60-442a-909d-05392a64bbe3.mp4

Still works
https://user-images.githubusercontent.com/25117425/165197355-5946576e-e3cf-41ef-b16e-1cc192175526.mp4

I know, I wouldn't approve otherwise :v
What I meant in my comment is that I didn't check which commit introduced the regression. It's not that important, but the method was there since the beginning, so it's a bit suspicious that it caused problems just now.

Thanks!


[spi_device,rtl] Handle SRAM integrity error output decisively

Description
https://github.com/lowRISC/opentitan/blob/39f9a9e57286f0d2a72c624bb19b9bd3a4c3bdf0/hw/ip/spi_device/rtl/spid_readsram.sv#L344-L347
e.g.

Update comment to explain decision to leave unconnected
Create an alert from this signal
...

Just a note: If we make this an alert, we'll also need to have firmware completely initialize the accessible regions of the RAM, including "unused" portions of accessible regions, and document this in the programming guide.
Hosts may choose to read unused areas of the SFDP array, for example, and unless those are initialized to a known value, the alert could trigger from innocent behavior.

Given that this is not a security IP, I am not sure this needs to be a fatal alert.
On the bus side, we just send back a tlul bus error in case the parity of a SPI_DEVICE SRAM access is wrong.
We could potentially trigger a regular error + interrupt if this happens.

Discussed with @a-will and we think it is fine to put this in the backlog for now, given that this is not a security IP.


[FEAT]: support semantic scholar searching paper

Description
should not retrieve paper, but search
Additional Information
No response

for the database function api:
the current match function is pure offline, we need to write additional matching function that:

match based on query with semantic scholar api with specific research domain
match based on one person's name and specific research domain

so we should have
def match_online(xxx)
def match_offline(xxx)
def match():
if offline does not work do match_online

more detailed design for api can be discussed during PR reviewing period.


Cyrillic text is not displayed (You and Me and Her)

Hey. I had a problem with the сyrillic text in the game You and Me and Her (Jast Usa release, no Steam) I unpacked the script.npk file, and edited the first script file via NUTEditor, and packed everything back. The game starts normally, but the game itself does not see the text, as if there are empty lines. I would be grateful for any help.
I also enclose a sample script.npk with Russian text inside: script.npk rus.zip

Probabbly the font is missing the characters or you installed the wrong version o the NUTEditor
The ToToNo NUT files uses the UTF8 encoding.
The fonts are inside the fonts.npk.

Probabbly the font is missing the characters or you installed the wrong version o the NUTEditor
The ToToNo NUT files uses the UTF8 encoding.
The fonts are inside the fonts.npk.

No, the fonts support the Cyrillic alphabet, and I installed the correct version of NUTEditor, because with it I was able to change the English text.
The engine itself supports the Cyrillic alphabet. I could find out by decompiling the .nut file, and leaving it like that without compiling it back. Of course, you can decompile all .nut files, and the game will work fine, but not everything is so smooth.
In order to decompile scripts, you first need to remove these first values through the hex editorNo, the fonts support the Cyrillic alphabet, and I installed the correct version of NUTEditor, because with it I was able to change the English text.
The engine itself supports the Cyrillic alphabet. I could find out by decompiling the .nut file, and leaving it like that without compiling it back. Of course, you can decompile all .nut files, and the game will work fine, but not everything is so smooth.
In order to decompile scripts, you first need to remove these first values through the hex editor:

And then use NutCracker to decompile them.
There are no problems with a0001.nut, but there are problems with the rest. The fact is that the rest .nut has Japanese characters, and it looks like NutCracker does not support anything except ANSI, and when decompiling, this happens:

NUTEditor:

Most likely, the Cyrillic alphabet does not work in compiled form, so the only way to make the game work with the Cyrillic alphabet is to use decompiled scripts, but unfortunately, I do not have a normal decompiler :(

Here, here I used the decompiled a0001.nut script

This is strange... send to me the working russian script and the one that isn't working, i will take a look.

Lol, it turned out that it was my mistake. The compiled text works perfectly. Sorry to open this question. Thanks for this utility. :)


How to add custom partial view template?

I see the documentation is only single view
return view('dashboard', ['request' => $request]);
How if i wanna add header & footer in Raw view ?

For example.
<?php include app_path(). '/view/header.html'?>
<div>.....</div>
<?php include app_path(). '/view/footer.html'?>


FluentD - Docker - Prometheus - no patterns matched

Check CONTRIBUTING guideline first and here is the list to help us investigate the problem.

fluentd or td-agent version.
fluentd 1.2.6
Environment information, e.g. OS.
Red Hat Enterprise Linux Server release 7.5 (Maipo)
Your configuration
fluent.conf

<source>
  @type forward
</source>
<source>
  @type prometheus
</source>

<filter docker.**>
  @type prometheus
  <metric>
    name docker_command_log
    type counter
    desc total docker commands
    #key log
  </metric>
</filter>

<match docker.**>
  @type copy
  <store>
    @type stdout
  </store>
</match>

Prometheus plugin version & conf file
fluent-plugin-prometheus-1.1.0
./home/ec2-user/.rvm/gems/ruby-2.5.1/gems/fluent-plugin-prometheus-1.1.0/misc/prometheus.yaml

Prometheus Docker run:
docker run -p 9090:9090 -v /home/ec2-user/prometheus.yaml:/etc/prometheus/prometheus.yaml prom/prometheus
prometheus.yaml config:
# A job to scrape an endpoint of Fluentd running on localhost.
scrape_configs:
- job_name: 'prometheus'
  scrape_interval: 5s
  static_configs:
    - targets:
      - 'localhost:9090'
- job_name: fluentd
  scrape_interval: 5s
  static_configs:
    - targets:
      - 'localhost:24231'
  metrics_path: /metrics

Your problem explanation. If you have an error logs, write it together.
I'm able to start fluentD & I'm able run prometheus in container without any issue. And to test, after running the following docker,
docker run -ti --name test --log-driver=fluentd ubuntu /bin/bash
If I enter something like,

[ec2-user@ip-172-31-10-47 fluent]$ docker run -ti --name test --log-driver=fluentd ubuntu /bin/bash
root@e749786c14f0:/# echo `1`
bash: 1: command not found

root@e749786c14f0:/# echo 1
1
root@e749786c14f0:/# echo test
test
root@e749786c14f0:/#

I'm keep getting,
[ec2-user@ip-172-31-10-47 ~]$ fluentd -c ./fluent/fluent.conf -vv &
[1] 8004
[ec2-user@ip-172-31-10-47 ~]$ 2018-10-29 19:06:55 +0000 [info]: fluent/log.rb:322:info: parsing config file is succeeded path="./fluent/fluent.conf"
2018-10-29 19:06:55 +0000 [trace]: fluent/log.rb:281:trace: registered filter plugin 'record_transformer'
2018-10-29 19:06:55 +0000 [trace]: fluent/log.rb:281:trace: registered filter plugin 'prometheus'
2018-10-29 19:06:55 +0000 [trace]: fluent/log.rb:281:trace: registered output plugin 'copy'
2018-10-29 19:06:55 +0000 [debug]: fluent/log.rb:302:debug: adding store type="stdout"
2018-10-29 19:06:55 +0000 [trace]: fluent/log.rb:281:trace: registered output plugin 'stdout'
2018-10-29 19:06:55 +0000 [trace]: fluent/log.rb:281:trace: registered buffer plugin 'memory'
2018-10-29 19:06:55 +0000 [trace]: fluent/log.rb:281:trace: registered formatter plugin 'stdout'
2018-10-29 19:06:55 +0000 [trace]: fluent/log.rb:281:trace: registered formatter plugin 'json'
2018-10-29 19:06:55 +0000 [trace]: fluent/log.rb:281:trace: registered input plugin 'forward'
2018-10-29 19:06:55 +0000 [trace]: fluent/log.rb:281:trace: registered input plugin 'prometheus'
2018-10-29 19:06:55 +0000 [info]: fluent/log.rb:322:info: using configuration file: <ROOT>
  <source>
    @type forward
  </source>
  <source>
    @type prometheus
  </source>
  <filter *.*>
    @type prometheus
    <metric>
      name docker_command_log
      type counter
      desc total docker commands
    </metric>
  </filter>
  <match *.*>
    @type copy
    <store>
      @type "stdout"
    </store>
  </match>
</ROOT>
2018-10-29 19:06:55 +0000 [info]: fluent/log.rb:322:info: starting fluentd-1.2.6 pid=8004 ruby="2.5.1"
2018-10-29 19:06:55 +0000 [info]: fluent/log.rb:322:info: spawn command to main:  cmdline=["/home/ec2-user/.rvm/rubies/ruby-2.5.1/bin/ruby", "-Eascii-8bit:ascii-8bit", "/home/ec2-user/.rvm/gems/ruby-2.5.1/bin/fluentd", "-c", "./fluent/fluent.conf", "-vv", "--under-supervisor"]
2018-10-29 19:06:56 +0000 [info]: fluent/log.rb:322:info: gem 'fluent-plugin-prometheus' version '1.1.0'
2018-10-29 19:06:56 +0000 [info]: fluent/log.rb:322:info: gem 'fluentd' version '1.2.6'
2018-10-29 19:06:56 +0000 [info]: fluent/log.rb:322:info: adding filter pattern="*.*" type="prometheus"
2018-10-29 19:06:56 +0000 [trace]: #0 fluent/log.rb:281:trace: registered filter plugin 'record_transformer'
2018-10-29 19:06:56 +0000 [trace]: #0 fluent/log.rb:281:trace: registered filter plugin 'prometheus'
2018-10-29 19:06:56 +0000 [info]: fluent/log.rb:322:info: adding match pattern="*.*" type="copy"
2018-10-29 19:06:56 +0000 [trace]: #0 fluent/log.rb:281:trace: registered output plugin 'copy'
2018-10-29 19:06:56 +0000 [debug]: #0 fluent/log.rb:302:debug: adding store type="stdout"
2018-10-29 19:06:56 +0000 [trace]: #0 fluent/log.rb:281:trace: registered output plugin 'stdout'
2018-10-29 19:06:56 +0000 [trace]: #0 fluent/log.rb:281:trace: registered buffer plugin 'memory'
2018-10-29 19:06:56 +0000 [trace]: #0 fluent/log.rb:281:trace: registered formatter plugin 'stdout'
2018-10-29 19:06:56 +0000 [trace]: #0 fluent/log.rb:281:trace: registered formatter plugin 'json'
2018-10-29 19:06:56 +0000 [info]: fluent/log.rb:322:info: adding source type="forward"
2018-10-29 19:06:56 +0000 [trace]: #0 fluent/log.rb:281:trace: registered input plugin 'forward'
2018-10-29 19:06:56 +0000 [info]: fluent/log.rb:322:info: adding source type="prometheus"
2018-10-29 19:06:56 +0000 [trace]: #0 fluent/log.rb:281:trace: registered input plugin 'prometheus'
2018-10-29 19:06:56 +0000 [info]: #0 fluent/log.rb:322:info: starting fluentd worker pid=8008 ppid=8004 worker=0
2018-10-29 19:06:56 +0000 [debug]: #0 fluent/log.rb:302:debug: listening prometheus http server on http://<IP_ADDRESS>:24231//metrics for worker0
2018-10-29 19:06:56 +0000 [debug]: #0 fluent/log.rb:302:debug: WEBrick conf: {:BindAddress=>"<IP_ADDRESS>", :Port=>24231, :MaxClients=>5, :Logger=>#<WEBrick::Log:0x0000000002531c98 @level=1, @log=#<IO:<STDERR>>, @time_format="[%Y-%m-%d %H:%M:%S]">, :AccessLog=>[]}
2018-10-29 19:06:56 +0000 [info]: #0 fluent/log.rb:322:info: listening port port=24224 bind="<IP_ADDRESS>"
2018-10-29 19:06:56 +0000 [info]: #0 fluent/log.rb:322:info: fluentd worker is now running worker=0
2018-10-29 19:06:56.428672505 +0000 fluent.info: {"worker":0,"message":"fluentd worker is now running worker=0"}
2018-10-29 19:09:17 +0000 [trace]: #0 fluent/log.rb:281:trace: connected fluent socket addr="<IP_ADDRESS>" port=49628
2018-10-29 19:09:17 +0000 [trace]: #0 fluent/log.rb:281:trace: accepted fluent socket addr="<IP_ADDRESS>" port=49628
2018-10-29 19:09:17.595620924 +0000 fluent.trace: {"addr":"<IP_ADDRESS>","port":49628,"message":"connected fluent socket addr=\"<IP_ADDRESS>\" port=49628"}
2018-10-29 19:09:17.595822074 +0000 fluent.trace: {"addr":"<IP_ADDRESS>","port":49628,"message":"accepted fluent socket addr=\"<IP_ADDRESS>\" port=49628"}
2018-10-29 19:09:26 +0000 [warn]: #0 fluent/log.rb:342:warn: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:26 +0000 [warn]: #0 fluent/log.rb:342:warn: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:26.158118290 +0000 fluent.warn: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:26.158411176 +0000 fluent.warn: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:36 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:36.065769936 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:36 +0000 [warn]: #0 fluent/log.rb:342:warn: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:36.522755004 +0000 fluent.warn: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:36 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:36.859468440 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:37 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:37.170040717 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:37 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:37.441337812 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:37 +0000 [warn]: #0 fluent/log.rb:342:warn: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:37.674670698 +0000 fluent.warn: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:39 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:39 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:39.938059810 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:39.938237549 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:45 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:45 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:45.891813010 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:45.892026800 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:48 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:48 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:09:48.585466578 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:09:48.585646487 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:11:44 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:11:44 +0000 [warn]: #0 fluent/log.rb:342:warn: no patterns matched tag="f45f19f8c1c0"
2018-10-29 19:11:44.883002045 +0000 fluent.trace: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:11:44.883177995 +0000 fluent.warn: {"tag":"f45f19f8c1c0","message":"no patterns matched tag=\"f45f19f8c1c0\""}
2018-10-29 19:41:10 +0000 [trace]: #0 fluent/log.rb:281:trace: connected fluent socket addr="<IP_ADDRESS>" port=49630
2018-10-29 19:41:10 +0000 [trace]: #0 fluent/log.rb:281:trace: accepted fluent socket addr="<IP_ADDRESS>" port=49630
2018-10-29 19:41:10.788898348 +0000 fluent.trace: {"addr":"<IP_ADDRESS>","port":49630,"message":"connected fluent socket addr=\"<IP_ADDRESS>\" port=49630"}
2018-10-29 19:41:10.789143489 +0000 fluent.trace: {"addr":"<IP_ADDRESS>","port":49630,"message":"accepted fluent socket addr=\"<IP_ADDRESS>\" port=49630"}
2018-10-29 19:41:29 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="e749786c14f0"
2018-10-29 19:41:29 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="e749786c14f0"
2018-10-29 19:41:29 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="e749786c14f0"
2018-10-29 19:41:29.741552019 +0000 fluent.trace: {"tag":"e749786c14f0","message":"no patterns matched tag=\"e749786c14f0\""}
2018-10-29 19:41:29.741972944 +0000 fluent.trace: {"tag":"e749786c14f0","message":"no patterns matched tag=\"e749786c14f0\""}
2018-10-29 19:41:29.742037526 +0000 fluent.trace: {"tag":"e749786c14f0","message":"no patterns matched tag=\"e749786c14f0\""}
2018-10-29 19:41:35 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="e749786c14f0"
2018-10-29 19:41:35 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="e749786c14f0"
**2018-10-29 19:41:35.367856648 +0000 fluent.trace: {"tag":"e749786c14f0","message":"no patterns matched tag=\"e749786c14f0\""}
2018-10-29 19:41:35.368021131 +0000 fluent.trace: {"tag":"e749786c14f0","message":"no patterns matched tag=\"e749786c14f0\""}
2018-10-29 19:41:40 +0000 [trace]: #0 fluent/log.rb:281:trace: no patterns matched tag="e749786c14f0"
2018-10-29 19:41:40 +0000 [trace]: #0 fluent/log.rb:281:trace: **no patterns matched tag="e749786c14f0"**
2018-10-29 19:41:40.670919776 +0000 fluent.trace: {"tag":"e749786c14f0","message":"no patterns matched tag=\"e749786c14f0\""}
2018-10-29 19:41:40.671067502 +0000 fluent.trace: {"tag":"e749786c14f0","message":"no patterns matched tag=\"e749786c14f0\""}

I tried running with out prometheus, just docker config like

type forward
port 24224
bind <IP_ADDRESS>
<match .>
type stdout

This is FAQ.
Could you check document first: https://docs.fluentd.org/v1.0/articles/faq#i-got-“no-patterns-matched”-in-the-log,-why?

You receive 574d48109b44 tag and your configuraton doesn't have match for it.
So your setting is wrong, not fluentd bug. Closed.
BTW, please follow contribution guideline...

2018-11-13 05:34:35 +0000 [warn]: #0 no patterns matched tag="### 7b6b0ab46992"
2018-11-13 05:34:35.824652087 +0000 fluent.warn: {"tag":"### 7b6b0ab46992","message":"no patterns matched tag="7b6b0ab46992""}
weiweishen@admin01:~$ sudo docker ps -a
CONTAINER ID        IMAGE                        COMMAND                  CREATED              STATUS                        PORTS                                                                NAMES
7b6b0ab46992        gitlab/gitlab-ce:latest      "/assets/wrapper"        About a minute ago   Up About a minute (healthy)   <IP_ADDRESS>:2222->22/tcp, <IP_ADDRESS>:18080->80/tcp, <IP_ADDRESS>:1443->443/tcp   gitlab
follow the https://www.fluentd.org/guides/recipes/docker-logging to setup fluentd, but there is no stdout

I ran into this error myself. Here's a solution.
See https://docs.fluentd.org/v1.0/articles/out_null .
Before the match config block, put something like this above it:
<match fluent.{warn,debug,trace}>
  @type null
</match>

FluentD tags events like this: fluent.LOG_LEVEL_GOES_HERE
As it implies, any tag that matches fluent.warn, fluent.debug, fluent.trace, will be dropped. FluentD won't complain that no patterns match because the message is sent to null before the match/Output Plugin is reached for an event.
If FluentD's level is set to INFO, and it has a match defined further along the line (such as <match fluent.{info,error,fatal} docker.**>), then the only FluentD logs that will be sent are INFO and ERROR, and FATAL.
By sending the other 3 possible log levels to null earlier, the error in question should never get triggered.
Additionally, you can set the log level, format, and other global properties with a configuration block like:
<system>
  # prevents printing secrets (debug) in stdout of FluentD
  suppress_config_dump
  log_level info
  <log>
    format json
  </log>
</system>

Further reading: https://docs.fluentd.org/v1.0/articles/logging


[Feature Request] add a cli option to pass nvim path

Could you please add a cli option like --nvim-path to pass path of nvim.exe?
Because sometimes Nvy.exe and nvim.exe are not in same directory.

Hmmm, I'm not sure this makes sense, usually you would add nvim.exe you your PATH environment variable and it will find it without them being in the same directory.

There are some exe file in neovim\bin(like curl.exe, and Windows also have curl.exe itself), I don't want to add them to PATH to avoid some strange problem.

Presumably neovim packages curl.exe in case it is not already bundled with your Windows installation, in that case can't you just delete curl.exe from the neovim\bin folder, and add it to your path?

Thanks for you help, I find a pretty good way, only modify start in in shortcut(.lnk) like this

now it work well

Good to see you found a solution 👍


How to install on Windows env?

Link error,
note: Non-UTF-8 output: LINK : fatal error LNK1181: \x93\xfc\x97\xcd\x83t\x83@\x83C\x83\x8b \'gmp.lib\' \x82\xf0\x8aJ\x82\xaf\x82\xdc\x82\xb9\x82\xf1\x81B\r\n

I find rack of gmp.lib, download from gmp-static-vc-4.1.2.zip and move to C:\Users\home\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib
fatal error LNK1120: 108 \x8c\x8f\x82\xcc\x96\xa2\x89\xf0\x8c\x88\x82\xcc\x8aO\x95\x94\x8eQ\x8f\xc6\r\n

how to solve it?

Hi - this runs just fine on Windows, as I was able to make larger lib depending on this work:) But I built GMP myself and version 6.1.2 Maybe it's an issue of an older version of GMP?

Thank you for comment.
My GMP majar ver is 4, yours is 6, maybe too old? I try to install same version.

DL from gmp-6.1.2-1-mingw32-src.tar.xz
compile by MYSYS way

config with --disable-static --enable-shared, but I cannot fin gmp.lib file.
What I do next? or wrong way?

.a files are static library in Unix format. It's basically the same as  .lib file, though you need to convert it to Windows format. Actually  - I don't quite can tell you how to convert(or even if it's possible at all), but I can tell you that you don't wanna follow that way for sure 👎  In short, you will need to
make your own gmp.lib - follow this link.
I tried option with dumpbin  and lib (the one with 50 upvotes) but you may try answer with implib tool. Actually the links you provided are for MSYS version of GMP - it's a bit different then MSVC I tried. You will need i686-pc-windows-msvc target installed. I just remember I had some issue with converting MSYS .dll to .lib from Windows, so I had to do the other way around - generate .lib file inside MSYS, unfortunately I don't remeber for sure. But I have my copy of gmp.dll and gmp.lib that just passed all curv tests (on x64 Windows 10).
 ```
 Running target\i686-pc-windows-msvc\debug\deps\curv-20a4d04f88163998.exe

 running 12 tests
 test arithmetic::big_gmp::tests::invalid_range_test ... ok
 test arithmetic::big_gmp::tests::sample_below_zero_test ... ok
 test arithmetic::big_gmp::tests::sample_below_test ... ok
 test arithmetic::big_gmp::tests::sample_range_test ... ok
test arithmetic::big_gmp::tests::test_from_hex ... ok
test arithmetic::big_gmp::tests::test_mod_mul ... ok
test arithmetic::big_gmp::tests::strict_sample_test ... ok
test arithmetic::big_gmp::tests::strict_sample_range_test ... ok
test arithmetic::big_gmp::tests::test_mod_pow ... ok
test arithmetic::big_gmp::tests::test_mod_sub_modulo ... ok
test arithmetic::big_gmp::tests::test_mod_sub_negative_modulo ... ok
test arithmetic::big_gmp::tests::test_to_hex ... ok

test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
```

Let me know if you can't make your copy and I will create the repo with binary distro of GMP I compiled (under LGPL) Unfortunately, I can't recreate all steps I performed that nasty day 😄 - there was some black magik before it all worked.  Anyway you wan't compile GMP for 64 bit as it's almost impossible on MSYS - and even if - it will be so unstable you would cry. And 32 bit GMP has huge performance handicap comparing to 64

Thank you for help! I tried

DL from gmp-6.1.2.tar.xz
compile by MYSYS -> make check success
dumpbin, add EXPORTS to top, rename to gmp.def and link.
failed gmp.def(2) : fatal error LNK1118: syntax error in '(R)' statement

Next, implibtool

DL Digital Mars's IMPLIB tool
create gmp.lib -> success?

Digital Mars Import Library Manager Version 7.6B1n
Copyright (C) Digital Mars 2000.  All Rights Reserved.
Input is a Windows NT DLL file 'libgmp-10.dll'.
Output is a Windows NT import library.
Digital Mars Import Library Creator complete.

copy to toolchain folder (gmp.lib, gmp.dll, gmp.dll.a)
failed, this lib is broken?

note: Non-UTF-8 output: C:\\Users\\home\\.rustup\\toolchains\\nightly-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\gmp.lib
fatal error LNK1136: \x83t\x83@\x83C\x83\x8b\x82\xaa\x96\xb3\x8c\xf8\x82\xc5\x82\xa0\x82\xe9\x82\xa9\x81A\x82\xdc\x82\xbd\x82\xcd\x89\xf3\x82\xea\x82\xc4\x82\xa2\x82\xdc\x82\xb7\x81B\r\n

Note
GMP is not good for Winodws, I feel.
I tried replase to pure Rust bignum, but I found deap dependency of KZen-networks's library. I need to check work on Windows/Linux/Raspibian ('ω')

I changed to lib /MACHINE:x64 /def:libgmp-3.dll.def /out:gmp.lib
I maybe success to convert and import on cargo test.
but raise error error: test failed, to rerun pass '--lib'.
I directly exec curv.exe and said cannot find libgmp-3.dll.dll so I renamed gmp.dll to libgmp-3.dll.dll and moved to same folder.
I re-exec and said error 0xc000007b, the option is wrong?

Hmm - pls note that you are still using default target ...\x86_64-pc-windows-msvc\lib\gmp.lib while it should be i686-pc-windows-msvc. Hence maybe your  6. cargo test failed by many errors - may be  actually sign of a good library, because on default target (that is x86_64-pc-windows-msvc in your case) it will complain on x86 library and will give something like '108 unresolved externals...' Also you may want to read more on  #35785
Try with the first way again, but pls do cargo test --target=i686-pc-windows-msvc this time (I thought it's guessable - my fault 😉) Also you don't need gmp.dll.a - well I would say don't copy it, anyway seems like binaries obtained form IMPLIB are corrupted. In the meanwhile you can try my GMP release - but for production you would still be better with your own binaries as I could be a nasty hacker 😈 You never now...

Looked at your log at pastebin - seems like I was correct and you have there localized version of
     warning LNK4272: library machine type 'X86' conflicts with target machine type 'x64'

Seems indeed like all you have to do is use library from  way with dumpbin and with correct target cargo test --target=i686-pc-windows-msvc
BTW - I suggest you to switch your system default language to english;)

Thank you! your binary work fine!

make curv.exe by cargo test --features=ec_secp256k1 --target=i686-pc-windows-msvc
copy gmp.dll to folder with curv.exe

And I can make binary too! I need MinGW-w64 (32bit).
But I will use as Python extension so I need to build by x86_64.
Summary

DL GMP source from gmp-6.1.2.tar.xz
DL MESYS2 from msys2-x86_64-20180531.exe
use MinGW-w64 (32bit) and install toolchain by install
pacman -Syuu, pacman -S base-devel and pacman -S mingw-w64-i686-toolchain JP
build by Install GMP with Windows
in to .lib and lib /def:libgmp-3.dll.def /out:gmp.lib and copy gmp.dll to folder with curv.exe
copy to C:\Users\home\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib\rustlib\i686-pc-windows-msvc\lib
build by cargo test --target=i686-pc-windows-msvc, copy gmp.dll to same folder of curv.exe and renamed to libgmp-3.dll.dll.
test passed

btw - just placing gmp.dll and gmp.lib into target lib folder like from 6.) should be just fine too - then no need to copy dll manually back and forth, and pls close the issue if u r fine now:)

Thank you for support! I solved the problem and go next step.


cherry-pick Patch doris-cloud: version and build script

What problem does this PR solve?
Issue Number: close #xxx
Related PR: #xxx
Problem Summary:
Release note
pick from https://github.com/selectdb/selectdb-core/commit/1985902d
Check List (For Author)

Test

[ ] Regression test
[ ] Unit Test
[ ] Manual test (add detailed scripts or steps below)
[x] No need to test or manual test. Explain why:

[x] This is a refactor/code format and no logic has been changed.
[ ] Previous test can cover this change.
[ ] No code files have been changed.
[ ] Other reason

Behavior changed:

[ ] No.
[x] Yes. add a number as hotfix version

Does this need documentation?

[x] No.
[ ] Yes.

Check List (For Reviewer who merge this PR)

[ ] Confirm the release note
[ ] Confirm test cases
[ ] Confirm document
[ ] Add branch pick label

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.
Please clearly describe your PR:

What problem was fixed (it's best to include specific error reporting information). How it was fixed.
Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
What features were added. Why was this function added?
Which code was refactored and why was this part of the code refactored?
Which functions were optimized and what is the difference before and after the optimization?

run buildall

run buildall

LGTM, better add a regression test

OK, I will post another PR to add a regression test


fixes path problem for projects in sitemap

In our sitemap the paths to projects are incorrect (there is a "pj" in the path instead of "project", cf https://tore.tuhh.de/sitemap?map=0). I believe I have found the problem in the code and have prepared a fix for that with this PR.

I have just added another improvement to the fix: the lastMod elements were missing in the sitemap for entities. I have added them to the sitemap.

@olli-gold As usual good catch! Thank you.


fix etherlime lib imports

Codecov Report

Merging #243 into master will decrease coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #243      +/-   ##
==========================================
- Coverage   97.42%   97.42%   -0.01%
==========================================
  Files          79       79
  Lines        3070     3069       -1
  Branches       18       18
==========================================
- Hits         2991     2990       -1
  Misses         76       76
  Partials        3        3

Impacted Files
Coverage Δ

...ime-ganache-deployer/etherlime-ganache-deployer.ts
100% <ø> (ø)
:arrow_up:

...src/deployed-contract/etherlime-ganache-wrapper.ts
100% <100%> (ø)
:arrow_up:

...etherlime-lib/src/deployed-contract/contract-at.ts
100% <100%> (ø)
:arrow_up:

packages/etherlime-lib/src/deployer/deployer.ts
96% <100%> (ø)
:arrow_up:

...etherlime-lib/src/deployer/private-key-deployer.ts
100% <100%> (ø)
:arrow_up:

...src/deployed-contract/deployed-contract-wrapper.ts
100% <100%> (ø)
:arrow_up:

...r/jsonrpc-deployer/jsonrpc-private-key-deployer.ts
100% <100%> (ø)
:arrow_up:

...yer/infura-deployer/infura-private-key-deployer.ts
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


[iOS] Navigation to Lightbox hangs in the between.

On iOS when image in the message list is clicked, navigations hangs in the between (half screen is pushed & has screen is occupied by chat screen).
Most prob this is due to PhotoView component we are using from react-native-photo-view.

This looks like the issue:
https://github.com/alwx/react-native-photo-view/issues/141

I notice that before the screen hangs, the Lightbox background is black, and afterwards, the photo is shown in the Lightbox.

The delay seems to occur while, in some sense, the image data is being loaded.

i have the same problem


Automated backport of #2423: Fix connection issues with RHEL9 GW nodes

Backport of #2423 on release-0.13.
#2423: Fix connection issues with RHEL9 GW nodes
For details on the backport process, see the backport requests page.

@skitt @dfarrell07 e2e is failing for an unrelated error
 > [builder 3/3] RUN make -C /go/src/github.com/submariner-io/submariner LOCAL_BUILD=1 bin/linux/amd64/submariner-route-agent:
------
executor failed running [/bin/sh -c make -C ${SOURCE} LOCAL_BUILD=1 bin/${TARGETPLATFORM}/submariner-route-agent]: exit code: 2
make[1]: *** [/opt/shipyard/Makefile.images:24: package/.image.submariner-route-agent] Error 1
make: *** [/opt/shipyard/Makefile.inc:139: e2e] Error 2
[18:12:34.453] [submariner]$ make --debug=b e2e
make: *** [Makefile.dapper:45: e2e] Error 2
Error: Process completed with exit code 2.


⚠ Nginx Clusters has degraded performance

In dd99575, Nginx Clusters (https://www.google.com) experienced degraded performance:

HTTP code: 200
Response time: 530 ms

Resolved: Nginx Clusters performance has improved in 725ab51 after 5 minutes.


[Feature] Introduce labeler action

Search before asking

[X] I had searched in the feature and found no similar feature requirement.

Feature Description (功能描述)
Automatically mark which module the modified code belongs to help review the code
refer: https://github.com/actions/labeler and https://github.com/apache/incubator-hugegraph-toolchain/pull/466
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

solved by #42


Fix filesystem test on macOS

It looks like we end up with EEXISTS here on newer versions of macOS.

@swift-ci please test

@neonichu, this will need to be merged back to 5.10 and 5.9 also, otherwise all TSC pulls for those branches fail CI because of the macOS change, as can be seen in #444.

Unlikely release/5.9 will have anything merged into it at this point, @bnbarham can clarify on the matter of 5.10.


add double-backward test for F.inv and F.batch_inv

https://github.com/chainer/chainer/pull/3616#issuecomment-341106863

jenkins, test this please.

Please check flake8.

Thanks, fixed flake8 errors.

LGTM!


[FEATURE] Filter events based on tags

Description
In issue https://github.com/EddieHubCommunity/BioDrop/issues/5832 which is to manage tags for the event. This issue is to filter the events by those tags

Add select dropdown to the top of the Event list page pages/events.js (this should change the url history, so the back button can be used and deep linking)

https://www.biodrop.io/events

Existing tags at the bottom of the Event component, when clicked change the select dropdown

Update Event's API to filter by selected tag pages/api/events.js

Screenshots
No response
Do you want to work on this issue?
No
Additional information
This is dependent on https://github.com/EddieHubCommunity/BioDrop/issues/5832

Explain more in detail

Can you pls explain more about this issue @eddiejaoude

can you assign me this issue

can you assign me this issue ?

@Mumtaz12 this issue is not ready to be worked on as it still has the label status: blocked  - please familiarise yourself with the project's Contributing Guide so that you are aware of the requirements.
Also, we ask new contributors who have not yet worked on this project (aside from creating their Profile) to choose unassigned issues within the Points 1 to 3 range.

Can you pls explain more about this issue eddiejaoude

@jatingodnani please can you let us know what questions you have?

Acc to my understand i this isuuse need to add tag in each component if any tag is clicked value will be changed in menu.
Is am i correct? @SaraJaoude

Acc to my understand i this isuuse need to add tag in each component if any tag is clicked value will be changed in menu.
Is am i correct? SaraJaoude

@jatingodnani what you are saying is already referred to in point 2 of the issue description.  However please read through my comments above - this issue is blocked and please also do not tag a specific maintainer.
I will now be locking this issue to minimise any more noise, until this is ready to be worked on.


does write_to_source work cross database?

e.g. is it able to use postgres as the source and snowflake as the destination?

Hey @mike-seekwell great question! This entirely depends on your dbt project. Fal right now is coupled to your dbt configuration. If you tell us a little bit about your usecase we can walk backwards from there and create a feature request.
It sounds like you are using fal as a standalone script and not at the end of a dbt run? or potentially you are using dbt to transform your postgres tables and want to write to snowflake at the end of a dbt run?

It's running as part of dbt

are using dbt to transform your postgres tables and want to write to snowflake at the end of a dbt run?

Yes

Got it! We actually have spoken to several other people who want to connect to external targets.
I have created an issue for your feature request, https://github.com/fal-ai/fal/issues/115.
One open question we have is where to read the db credentials for the external source, we think dbt profiles.yml is the best place for it but would love to hear what you think?


Factsheet updates

Factsheet reverse
Adds the second page to the factsheet:

Disclaimer
Adds a disclaimer to to reverse side of the factsheet. Users belonging to the "admin" or new "overmorgen" role will see a "Hide disclaimer" button to remove the text. Caveats:

This doesn't persist but it allows temporary removal of the disclaimer prior to printing. If it must persist, we should decide if it persists only for the logged-in user, or for all visitors. The latter should be done only if absolutely necessary since it requires a new database table.
The disclaimer contains temporary text. See below for details.

Normal user
admin / overmorgen user

Quintel logo
Added the QI logo to the header.

Link to factsheet
Removes the "Show graph" and "Scenario report" links from the settings menu, and added a new "Visuals" sidebar item (I don't love the name; we could change it):

Next actions:
Needs Dutch translations please:

Factsheet disclaimer text
"Visuals" sidebar item.
Slide titles.
Slide descriptions: scenario report slide, factsheet slide, "show graph" slide. These could be uploaded to a Gist and added by myself if you don't feel comfortable editing the database migration.

Once the translations are done I'll rebase them into the original commits prior to merging.

Great work @antw!


Ensure a new game is only created once within a validateer set

Games can be created in two ways:

importing & executing a parentchain extrinsic (#8)
importing & executing a sidechain state diff

Only the first validateer to import the parentchain block, which contains the dedicated extrinsic, may create a new game. The validateers that only import this parentchain block due to the sidechain block trigger, must not execute this extrinsic.
As a solution I'd see https://github.com/integritee-network/worker/issues/584, which
a) holds the state diff of a new game and is exectued before the parentchain block is imported. If we go for this solution, the game engine state needs to be queried.
b) holds a flag, basically telling do_not_execute_new_game_even_though_the_parentchain_extrinsic_tells_you_so.

Solution proposal: only execute parentchain block extrinsic ack_game if it's our slot. Do not execute if parentchain block is imported due to sidechain block import.

This issue should be solved upstream: https://github.com/integritee-network/worker/issues/616


[ISSUE #97] Runtime tcp http grpc client impl

Fixes #97
Motivation
runtime tcp http grpc client impl
Modifications
runtime tcp http grpc client impl
Documentation

Does this pull request introduce a new feature? yes

@Lambert-Rao
Do you have any question on the implementation of Operation classes?

This pr has grpc version conflicts.

This pr has grpc version conflicts.

can't resolve?

This pr has grpc version conflicts.

Can it be fixed? Is some major modification required?

I'll try to fix it, but I'm not sure if it can be done because the grpc version between eventmesh-sdk and jetcd is not compatible, I've looked at the various versions of jetcd for the grpc version of the app, and it's not the same as the eventmesh-sdk grpc version, and I'm not sure if upgrading the grp version will make both sides compatible, I'll try to do it that way, otherwise I think we should prioritise securing the runtime client implementation.

We may discard etcd implement by now since nacos is the recommended one.

@Lambert-Rao
Do you have any question on the implementation of Operation classes?

No, they look good to me

@Alonexc It seems that test is blocked because Github Action doesn't have working enviroment.
Please try to exclude these tests, add time limit and use try-catch to avoide the problem.

@Alonexc It seems that test is blocked because Github Action doesn't have working enviroment. Please try to exclude these tests, add time limit and use try-catch to avoide the problem.

Do you mean adding paths-ignore paths in ci?

Added etcd connecttime , but it didn't build successfully, I commented out the test code for etcd and will follow up to fix the problem, local testing of the client test for etcd is fine.

@Alonexc It seems that test is blocked because Github Action doesn't have working enviroment. Please try to exclude these tests, add time limit and use try-catch to avoide the problem.

Do you mean adding paths-ignore paths in ci?

yes

@Alonexc It seems Runtime's grpc version is too old. You can't even download its source code in IDEA. ForwardingChannelBuilder and StreamObservers are deprecated in 1.60.0.


Implement the cache import and export options

Is your feature request related to a problem? Please describe.
In order to use the store and forward options effectively, there needs to be a way of exporting the stored requests that have no response, and importing forwarded responses to those requests.
(The import/export options are already defined but marked as not implemented in #7)
Describe the solution you'd like

Implement the export-file option by finding all the cached activation and deactivation requests without responses (which are those that are auto-forwarded by forward mode of operation), and exporting them to the named separate sqlite database which can be transported to a forwarding proxy.  If the named export database already exists (e.g., from a prior export), then append to it.
Implement the import-file option by importing any activation requests and responses where the responses are newer than (or have different activation keys than) the existing activation requests and responses, and by removing any existing activation requests and responses for which (newer) matching deactivation responses exist in the import database.

Describe alternatives you've considered
There are two open questions about store/forward functionality:

When handling deactivations imported from a forwarding server, should we remove all activation responses from the local server, or just the older activation responses.  The only chance of a difference between the two behaviors comes if the server you are importing into is running in cache rather than store mode, which is arguably an error if you are importing forwarded responses.
If there are newer activation requests for the same keys in the local server than there are in the forwarded responses, should we remove those requests in favor of the requests that were used by the forwarding server, or should we just import the responses and use them against future requests?

Additional context
If you think about how the cache works, you quickly realize that no client of a store server ever gets the response to its original request.  Instead, the stored response from a forwarded request is returned after being "re-id'd" to match the client request.  Thus, there isn't much point in import activation requests from the forwarded server.

The server currently doesn't keep deactivation responses; rather, it deletes any matching activation requests and responses.  This actually doesn't allow for implementation of import, because we need to know the timestamp on the activation response.  So to make this work we will need to keep at least successful deactivation response keys and timestamps, in order to apply them against existing caches.

The server currently doesn't keep deactivation responses; rather, it deletes any matching activation requests and responses.  This actually doesn't allow for implementation of import, because we need to know the timestamp on the activation response.  So to make this work we will need to keep at least successful deactivation response keys and timestamps, in order to apply them against existing caches.