fix(template): run tests in /build/source instead /build

Previously, the source tree was located inline in /build during tests, this was a mistake because the crates more than often are built in /build/source as per the sourceRoot system.
This can cause issues with test binaries hardcoding /build/source/... as their choice for doing things, causing them to be confused in the test phase which is relocated without rewriting the paths inside test binaries.
We fix that by relocating ourselves in the right hierarchy.
This is a "simple" fix in the sense that more edge cases could exist but they are hard to reason about because they would be crates using custom sourceRoot, i.e. having crate.sourceRoot set and then it becomes a bit hard to reproduce the hierarchy, you need to analyze whether the path is absolute or relative,
If it's relative, you can just reuse it and reproduce that specific hierarchy. If it's absolute, you need to cut the "absolute" meaningless part, e.g. $NIX_BUILD_TOP/ and proceed like it's a relative path IMHO.
Fixes #327.

Added this to our crate2nix package, and building with the newly-generated Cargo.nix does indeed fix the problem!

@kolloch this is running fine. Any reservations against merging it?


disabling negative inputs

Since we don't need negative input, there is no need to enable users to enter them. Therefore, I have disabled negative input by setting the minimum number as 0.

Thank you @Tapesh-1308  for your contribution! but could you please create an issue first describing the problem or feature this PR addresses? Once the issue is created, we can link it to this PR and proceed further.

@sk66641 I have created the issue. Now it can be linked with PR.
Issue number: #28

Ok, but we can still enter a negative input using keyboard i think, i tried it just now

@Tapesh-1308 No worries at all! Closing a pull request when you realize it’s not necessary or relevant is a responsible approach. Keep up the good work! 😊


[Suggestion] Discord community?

Would be great to have a discord community just so that people who have questions, support or want to discuss, do not need to have a Github account, and instant messaging is always better for organization over forum based
Just throwing out the thought!

Could be interesting, I'm just no good at communities haha. I also don't know if the extension is big enough to warrant such a thing. Would like to know what people think!

Looks at the 700+ stars! this is gaining popularity fast if you ask me!

people who have questions, support or want to discuss, do not need to have a Github account

yes, they instead would need a Discord account :facepalm:
and now you added discord moderator to the maintainer's job list
people who are techie enough to follow links on chrome plugin store more than likely already have a github account, or at the very least – fully capable of creating one

Essentially the difference is instant communication and file sharing in a group.
You are incorrectly assuming that people who read the products readmes (either here or any other place this product has been posted) have an GitHub account. Statistically this is improbable in terms of numbers.
Please do not deprive the average user from support if they do not have a GitHub account.
The correct approach is to have as many mediums to communicate. Additional channels are never a bad thing. Discord was just one of many, but I find the best and most used with developer communities.

@alyssaxuu not sure if this is the right place, but can you check your twitter dms?


Added example to show use of forloop.xin a for loop

Was not immediately obvious to me :)

Thanks @iandundas


feat(meta): optimize the complexity of MinOverlappingPicker

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
Background
Although https://github.com/risingwavelabs/risingwave/pull/14036 has optimize the performance of pick trivial move task of MinOverlappingPicker, it is still not enough. Because the PR above only assume that most of files could trivial moved to next level, we do not need to calculate scores for all possible task. But when there are really a large data in hummock, and most of them can not be compacted to next level by trivial-move, hummock will cost a long time to pick one task, and meta-node would hold the mutex for a long time, too.
Solution
In original algorithm, we iterator all possible interval for select-level, and we check whether overlapping files in target level are pending compact for every task. We can see that, there will be many files in target level which are checked many times. The time complexity of MinOverlappingPicker is O(N^2*k), where k represent the overlap size of next level, and N is the number of files in select level.
In new algorithm, we only calculate the overlapping range for every independent file rather than calculate it for all interval. Because we can get the overlapping result of interval by merge the result of each file. So the time complexity of MinOverlappingPicker is O(MAX(N^2, N * M)), where N represents the number of files in select level and M represents the number of files in target level.
Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added test labels as necessary. See details.
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

I update the default configuration to simulate the case has too many files: https://github.com/risingwavelabs/risingwave/commit/1c91bd4661f0e8a22df2a14e64c5a19b94e1c91a

The right is current branch while the left is main. We can see the cpu usage of meta-node downgrade from 8%~12% to 2.2%~4.4%.
But there is another reason which may cost too much CPU, which is l0 picker. I will make a benchmark after refactor l0 compaction.


Adds test against invalid HTTP protocol

fixed by https://github.com/OISF/libhtp/pull/312

Merged through #378, thanks!


Investigate dataloading and data-caching performance

Writing this task more as a quick reminder to myself so I don't come back on Monday having forgotten that I need to look at this stuff

[x] Measure throughput of dataloading with PCQM4Mv2
[x] Investigate alternate methods of caching
[ ] Investigate usage of tools such as PyArrow
[x] Investigate splitting the dataloader so each worker owns a piece of the dataset rather than the whole thing

Many improvements in the Dataloader in PR #312


pass metadata block seq to .file

adds file(name, archiveOptions, seq)

It's not wholly impossible that seq will get reused if you have multiple concurrent writes, is it?

no, it should always be unique

@pfrazee one thing to consider is adding a flag of some sorts that tells you if this is the latest version (i.e. if you are reading a file fx) but maybe we can add that later

Are you sure? What if I did:
archive.append(...)
archive.append(...)

The files have to be processed before the metadata is updated, dont they?

i meant in theory (that should run inside a mutex). there might be bugs!

Is this the only thing that would require us to write in a mutex? Or did we already need to use a mutex?

we already need to

Wait really? Does that need to be done by the API consumer, aka do I need to add mutexes to beaker?

No, there is an internal one. The write streams / .append will simply pause while a single one is being processed

Oh I see. Ok. Let me review again...

Ok how would this work on read() ? Does bisect() get called during open if you're reading?

same as it works now. bisect is called if a block is being replicated and you don't know which file it belongs to

What I'm wondering is, how do we control which version is being read? It looks like metadata.blocks is always being used, which works for writes but not for reads -- except in bisect.
(Not at all to be critical: Im having some trouble groking this code, I think it could use a refactor.)

metadata.blocks is only used for append/writes (it's the latest version - metadata will be stored at that seq). seq just always points to the metadata index the current version is being stored at

you would just write data to filename.{seq} to have unique filenames per version

seq just always points to the metadata index the current version is being stored at

That doesnt seem to be the case though. What's getting passed into file() as seq is the metadata.blocks, which makes sense for the write, but for the read it ought to be the sequence-number of the metadata-entry for that file, right?

How does createFileReadStream() correctly identify the file to read?

the bisect indirectly makes that happen. the metadata.blocks is only passed to writes

we can pass something else there if you think it is confusing. it just indicates the version it will be stored at.

Yeah Im just trying to make sure it's correct. So, when createFileReadStream happens, bisect() is used... wait is bisect a search for the entry? Oh man, it is isnt it

Ok that looks like it should work. We'll need a way to specify the revision later.

We should add some tests to the PR.


Add panning to raudio and update audio_raw_stream example.

@ptarabbia This is a really nice improvement! Thanks!

@ptarabbia thanks for the improvement!


Get Error: XMLHttpRequest error on clean example

Git clone this repo
Run on 9000 port and login admin 123
Got "Error: XMLHttpRequest error."

Looks like we need some settings to accept CORS on the Casdoor server

@pyxiscloud do you run this example in PC web browser? There will be a CORS cross-site issue when your casdoor-flutter-example frontend code calls into Casdoor backend (which is in a different domain).
Casdoor uses the application's Redirect URIs field to allow specific CORS origins to access its API:
https://github.com/casdoor/casdoor/blob/666ff48837016de9c47434dec1aeb8ddbe509fc9/routers/cors_filter.go#L32-L40
Add your localhost:9000 to: https://door.casdoor.com/applications/casbin/app-example

@Wrapping-2000 add the docs

Sorry, but this example still not working,
Tried at localhost: 9000,  localhost: 5000, localhost: 5001
Thought this repo should work out of the box?

@pyxiscloud
I run it successfully locally, please follow the steps below:

Please refer to https://github.com/casdoor/casdoor-flutter-sdk/pull/25/files，add parsePort()

Deploy casdoor locally, and create an application, add a redirection URL to http://localhost:9000/callback.html

your casdoor config just like this:

@pyxiscloud plz use latest master branch code, it should have been fixed

In your example settings you use "localhost" as casdoor server and run flutter frontend on localhost too.
Thats why you don't get the  "Error: XMLHttpRequest error."
I've tried this with your public casdoor server and got  "Error: XMLHttpRequest error." This is latest version.

Please try to run on public domain (serverUrl) and flutter on localhost

@pyxiscloud it's a CORS issue. Here's how to fix:

Pull this repo's code to latests
Use latest Casdoor code, must contain this commit: https://github.com/casdoor/casdoor/commit/bd06996bab5bd467854503d65ba3ac9c0232e1f4

I use docker, does it contains in https://hub.docker.com/layers/casbin/casdoor/v1.363.0/images/sha256-c98cf45f8b5309b3af3ad1eae604460513e40272cfb07fa654206da23bc3d88c?context=explore?

@pyxiscloud Use v1.364.0: https://github.com/casdoor/casdoor/releases/tag/v1.364.0

now works fine, thank you

@pyxiscloud are there any other APIs, so can add them all?

yes, please:

all Session API

all Token API

all User API

all Login API

thank you!

@pyxiscloud those APIs should not be exposed by CORS to frontend. It's big security hole.

@hsluoyz ,
/api/logout - can you add this please?

@pyxiscloud "api/login/oauth/logout" or "/api/logout"?

I need API to logout from Flutter Web application
At swagger doc there is only this method:

Should I use "api/login/oauth/logout"?

@pyxiscloud you should just logout inside Flutter, no need to logout Casdoor. See latest example code: https://github.com/casdoor/casdoor-flutter-example/commit/5b8e39d78884942429af06d9eb7575fc5d5e7d3f

Please check this case:

run flutter and login to app (auto sign in enabled)
logout from flutter app (delete token from storages and memory)
go to "Forgot password" and change password (https://DOMAIN/forget/APPNAME)
now I open app and after click login it auto login without any password asking

think it open new page with casdoor login, then auto login with credentials that stores on casdoor tab (flutter app can't remove saved settings on casdoor tab)

@pyxiscloud if you have enabled Auto Sign in the application of Casdoor, Casdoor will remember your session via cookie. The session doesn't destroy automatically after you changed the password.
You can either disable Auto Sign or manually kick that user off in Sessions page: https://door.casdoor.com/sessions . If you have more questions, plz send GitHub issue to Casdoor's repo, as it has nothing to do with casdoor-flutter-example


Report latency stats in judge implementations

Print information to the console and task logs:
[2024-09-16 09:06:37] 'command-r' used 59768 input tokens and 81 output tokens over 81 requests
[2024-09-16 09:06:37]   * p50 latency: 0.154 seconds
[2024-09-16 09:06:37]   * p90 latency: 0.230 seconds
[2024-09-16 09:06:37]   * p99 latency: 0.336 seconds

Also warn in the console when a given request takes longer than SLOW_THRESHOLD_SECONDS.

Codecov Report
Attention: Patch coverage is 94.28571% with 2 lines in your changes missing coverage. Please review.

Project coverage is 96.94%. Comparing base (805effb) to head (b8c6e3b).
Report is 1 commits behind head on trunk.

Files with missing lines
Patch %
Lines

autoarena/judge/base.py
84.61%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##            trunk      #64      +/-   ##
==========================================
+ Coverage   96.90%   96.94%   +0.03%
==========================================
  Files          30       32       +2
  Lines        1293     1342      +49
==========================================
+ Hits         1253     1301      +48
- Misses         40       41       +1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Squash all of the sidechain drivechain + BMM code (#2)

Add updated SCDB, remove subsidy, add GUI elements

Remove old SCDB files

Remove unused script operator

Update sidechain database

Update validation and miner

Update sidechain page

Update sidechain client

Remove unused

Pushing some initial work on BMM

Removed PoW files
Added BMM files
Added BMM based chain activation code
Modified block header for BMM
h* validation

Update sidechain client

Added validate critical hash (h*) call

Remove unused PoW related rpc calls

Add BMM tab to sidechain page

BMM update

I'm going to rebase on bitcoin upstream and do this again more cleanly but all changes have been combined to make the diff legible for now.
If someone else wants to beat me to it, just rebase on bitcoin upstream and commit the GUI and actual functionality separately and open PR.


Sending "Connection: Close" header when using https proxy with NTLM auth

Summary

My Company is using Squid as an https proxy together with a NTLMv2 authentication. I use px (https://github.com/genotrance/px) to handle the NTLM part. Basicaly, px creates a local proxy responsible for NTLM authentication.
But when I use Bower or Npm which use this "request" module, the connection is closed by the proxy, whereas the same GET request works fine with Firefox (using px as proxy too).
Simplest Example to Reproduce

Use a Squid proxy with NTLM authentication
Install px and set the proxy host in the ini file
launch "px --debug"
try to install something with bower : "bower install jquery"

Expected Behavior

Bower, which uses this request module, should download any package flawlessly
Current Behavior

Bower fail to download packages. Example with jquery :
bower not-cached    https://github.com/jquery/jquery-dist.git#*
bower resolve       https://github.com/jquery/jquery-dist.git#*
bower download      https://github.com/jquery/jquery-dist/archive/3.2.1.tar.gz
bower retry         Download of https://github.com/jquery/jquery-dist/archive/3.2.1.tar.gz failed with ECONNRESET, retrying in 1.5s
Possible Solution

With some analysis of px logs, it seems that the request module send the http header "Connection: Close" while asking the proxy to connect to the target url. So with such a header in the request, the squid proxy simply close the connection as asked.
By forcing the Connection header to "Keep-Alive", the problem disapear.
For example, I added the line "self.headers['Connection'] = 'Keep-Alive'" right after "self.headers = self.headers ? copy(self.headers) : {}" in request.js, Request.prototype.init
But this is quite an ugly fix, and it would be interesting to find out why a connection close is issued.
Context

My company (pretty big) use a proxy with authentication for all HTTP and HTTPS queries. We use Npm and Bower in automated build as well as on our developpement machines.
For now, we did the above modification.
Your Environment

software
version

request
2.67.0

node
6.11.3

npm
3.10.10

Operating System
Windows 8.1 Version 6.3 (Build 9600)

px
0.2.1

I have the same problem using cntlm and squid. Here's some traffic between cntlm and squid dumped using tcpdump:
request:
CONNECT api.vivi.io:443 HTTP/1.1
host: api.vivi.io:443
Connection: close
Proxy-Connection: keep-alive
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABbIIogYABgAkAAAABAAEACAAAABWSVZJU0FNRE9N
Content-Length: 0

HTTP/1.1 407 Proxy Authentication Required
Server: squid/3.5.23
Mime-Version: 1.0
Date: Mon, 30 Oct 2017 11:52:14 GMT
Content-Type: text/html;charset=utf-8
Content-Length: 3655
X-Squid-Error: ERR_CACHE_ACCESS_DENIED 0
Vary: Accept-Language
Content-Language: en
X-Cache: MISS from vivi-mini-ubuntu
X-Cache-Lookup: NONE from vivi-mini-ubuntu:3128
Via: 1.1 vivi-mini-ubuntu (squid/3.5.23)
Connection: close

curl:
CONNECT api.vivi.io:443 HTTP/1.1
Host: api.vivi.io:443
User-Agent: curl/7.38.0
Proxy-Connection: keep-alive
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABbIIogYABgAkAAAABAAEACAAAABWSVZJU0FNRE9N
Content-Length: 0

HTTP/1.1 407 Proxy Authentication Required
Server: squid/3.5.23
Mime-Version: 1.0
Date: Mon, 30 Oct 2017 11:53:54 GMT
Content-Type: text/html;charset=utf-8
Content-Length: 3663
X-Squid-Error: ERR_CACHE_ACCESS_DENIED 0
Vary: Accept-Language
Content-Language: en
Proxy-Authenticate: NTLM TlRMTVNTUAACAAAADAAMADgAAAAFgomiwqg984UkmjMAAAAAAAAAAGwAbABEAAAABgEAAAAAAA9TAEEATQBEAE8ATQACAAwAUwBBAE0ARABPAE0AAQAeAFYASQBWAEkALQBNAEkATgBJAC0AVQBCAFUATgBUAAQAAgAAAAMAIAB2AGkAdgBpAC0AbQBpAG4AaQAtAHUAYgB1AG4AdAB1AAcACAAMIpbCdVHTAQAAAAA=
X-Cache: MISS from vivi-mini-ubuntu
X-Cache-Lookup: NONE from vivi-mini-ubuntu:3128
Via: 1.1 vivi-mini-ubuntu (squid/3.5.23)
Connection: keep-alive

As you can see the only difference is the Connection: close header present from request, and squid responds with no NTLM challenge, closing the connection. Strangely it works if I use basic directly with squid, despite the header, so perhaps this is a bug in squid. I also can't understand why Connection: close would be sent when opening a tunnel though.


Unable to kick or ban people using chat commands if they have unicode names

It might be a good idea to implement Ban/Kick chat commands that take SteamID instead of player name

!users to see all users, it will give you a list of all users username: userid and then you can use !kick or !ban with the user id, the user ID is 3 characters long, and it is also what is in front of all chat messages in the console

Ahh I didnt know that was a thing, perfect, thanks!

anytime!


create_openapi_agent always generating same chain no matter what question

System Info
LangChain version: 0.0.266
Python3.11.4
Sample python snippet:
    raw_api_spec = yaml.load(f, Loader=yaml.Loader)
api_spec = reduce_openapi_spec(raw_api_spec)
requests_wrapper = RequestsWrapper()

from langchain.llms.openai import OpenAI
from langchain.agents.agent_toolkits.openapi import planner

llm = OpenAI(temperature=0.0)

agent = planner.create_openapi_agent(api_spec, requests_wrapper, llm)

while True:
    user_inp_query = input("Ask me anything: ")
    print('user_inp_query: ', user_inp_query)
    user_query = (user_inp_query)
    agent.run(user_query)

The sample API spec contains 3 APIs: count_cars, locate_license_plate, and  timestamps_of_matching_car_configs. However, I notice no matter what question I ask I see the following API planner response:
-----------------------------------------------
user_inp_query:  Tell me the timestamps whenever a green car came

> Entering new AgentExecutor chain...
Action: api_planner
Action Input: I need to find the right API calls to get the timestamps of when a green car came
Observation:  1. POST /count_cars with a query param to search for green cars
2. POST /timestamps_of_matching_car_configs with the query param from the previous call
3. POST /locate_license_plate with the query param from the previous call
Thought: I'm ready to execute the API calls.
Action: api_controller
Action Input: 1. POST /count_cars with a query param to search for green cars
2. POST /timestamps_of_matching_car_configs with the query param from the previous call
3. POST /locate_license_plate with the query param from the previous call

> Entering new AgentExecutor chain...
I need to make a POST request to the /count_cars endpoint with the query params.

openAPI spec definition is as follows:
servers:
- url: http://<IP_ADDRESS>:5001
info:
  title: Car Traffic MetaData Analyzer
  description: REST API service which can be used to fetch details like car's color, car's type [like suv, sedan. coupe etc i.e. type of vehicle body] and car's make [toyota, honda, porche etc i.e. manufacturing company's name]. We also store the license plate of the individual cars for each entry.
  version: 1.0.0
paths:
  /count_cars:
    post:
      summary: This API takes as an input car's color (like red, green etc), car's vehicle body type (like suv, sedan. coupe etc) and car's make (like toyota, honda, porche etc). All the input values are optional. This API then returns a count of total number of cars which are of that certain color/type/make.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/car_attributes'
          # examples:
          #   examples1:
          #     $ref: '#/components/examples/car_attributes_example1'
          #   examples2:
          #     $ref: '#/components/examples/car_attributes_example2'
        required: True
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              examples:
                example1:
                  summary: example 1
                  value:
                    total_count: "15"
                example2:
                  summary: example 2
                  value:
                    total_count: "0"
        '400':
          description: Bad Request
        '404':
          description: Resource Not Found

  /timestamps_of_matching_car_configs:
    post:
      summary: This API takes as an input car's color (like red, green etc), car's type (like suv, sedan. coupe etc) and car's make (like toyota, honda, porche etc). All the input values are optional. This API then returns two values, found and timestamps. When found=true it means that car config in query has been found and the corresponding timestamps key stores a list of all the timestamp at which this car config was found. If found=False, it means that not such car config can be found.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/car_attributes'
        # examples:
        #   examples1:
        #     $ref: '#/components/examples/car_attributes_example1'
        #   examples2:
        #     $ref: '#/components/examples/car_attributes_example2'
        required: True
      responses:
        '200':
          description: Successful response when the API found none or some entries where the car's color, type and make matches with the parameters passed to it.
          content:
            application/json:
              examples:
                example1:
                  summary: When API endpoint found none relevant entries
                  value:
                    found: "False"
                example2:
                  summary: When API endpoint found some relevant entries
                  value:
                    found: "True"
                    timestamps: ["2021-10-04T16:53:11Z", "2021-11-22T06:50:14Z"]
                example3:
                  summary: Another example of when API endpoint found some relevant entries
                  value:
                    found: "True"
                    timestamps: ["2001-10-04T12:23:43Z", "2011-01-29T23:23:29Z", "2001-11-30T00:01:01Z", "2011-01-09T23:59:00Z"]
        '400':
          description: Bad Request
        '404':
          description: Resource Not Found

  /locate_license_plate:
    post:
      summary: This API takes as an input license plate of a car. If the car's license plate is present in the database, it return with found=true, and it also returns that car's color, vehicle body type and make i.e. manufacturing company's name. Else if found=false, it means no such car is found in the database.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/license_plate'
        # examples:
        #   examples1:
        #     $ref: '#/components/examples/license_plate_example1'
        #   examples2:
        #     $ref: '#/components/examples/license_plate_example2'
        required: True
      responses:
        '200':
          description: Successful response from the API. From the response found=False means that the license plate was not found in the databse. If found=True it means that the license plate was found.
          content:
            application/json:
              examples:
                example1:
                  summary: When API endpoint can't find license plate in the databse
                  value:
                    found: "False"
                example2:
                  summary: When API endpoint found license plate, it returns car's color, type and make.
                  value:
                    found: "True"
                    color: "red"
                    type: "suv"
                    make: "honda"
                example3:
                  summary: When API endpoint found license plate, it returns car's color, type and make.
                  value:
                    found: "True"
                    color: "grey"
                    type: "sedan"
                    make: "hyundai"
        '400':
          description: Bad Request
        '404':
          description: Resource Not Found

components:
  schemas:
    car_attributes:
      properties:
        color:
          description: color of the car you want to query for.
          type: string
        type:
          description: style of the vehicle body type on whether the car is one of suv, sedan, convertible, truck etc.
          type: string
        make:
          description: manufacturing company of the car
          type: string
    license_plate:
      properties:
        license_plate:
          description: lincense plate of the car
          type: string
  parameters:
    color:
      name: color
      in: query
      description: color of the car you want to query for.
      schema:
        type: string
      examples:
        red:
          value: red
        green:
          value: green
        blue:
          value: blue
        yellow:
          value: yellow
    type:
      name: type
      in: query
      description: style of the vehicle body type on whether the car is one of suv, sedan, convertible, truck etc.
      schema:
        type: string
      examples:
        suv:
          value: suv
        sedan:
          value: sedan
        convertible:
          value: convertible
        truck:
          value: truck
    make:
      name: make
      in: query
      description: Manufacturing company of the car
      schema:
        type: string
      examples:
          subaru:
            value: subaru
          hyundai:
            value: hyundai
          toyota:
            value: toyota
          porche:
            value: porche
    license_plate:
      name: license_plate
      in: query
      description: Lincense plate of the car
      schema:
        type: string
      examples:
          6FFR593:
            value: 6FFR593
          KVT6282:
            value: KVT6282
          BHT9205:
            value: BHT9205```

### Who can help?

_No response_

### Information

- [ ] The official example notebooks/scripts
- [ ] My own modified scripts

### Related Components

- [ ] LLMs/Chat Models
- [ ] Embedding Models
- [ ] Prompts / Prompt Templates / Prompt Selectors
- [ ] Output Parsers
- [ ] Document Loaders
- [ ] Vector Stores / Retrievers
- [ ] Memory
- [ ] Agents / Agent Executors
- [ ] Tools / Toolkits
- [ ] Chains
- [ ] Callbacks/Tracing
- [ ] Async

### Reproduction

Steps to reproduce:

run the code snippet as it is and point the openapi.yaml to the yaml file provided.

### Expected behavior

The API chain is expected to classify the query into one of these APIs and only run that API instead of calling all the APIs in the same sequence everytime.

As pointed out by @dosu-beta. Changing the language model worked.
Instead of using:
llm = OpenAI(temperature=0.0)
I used gpt-4 with temperature=0.25 and it worked (llm = OpenAI(model_name="gpt-4", temperature=0.25))


Fix AppVeyor

Allows tox to use a new downloaded version of pip, otherwise it uses a
bundled version that is too old

Cool didn't know about that option 👍


Add support for f5 BIG-IP

This is still a little bit wip against #12. I wrote the infoblox piece a while back and just realized that I need to implement the response bodies to get the IP's to pass to f5. So I'll look at that and get it cleaned up soon.
My question for everyone else is how are you managing IP's? At my company we're using Infoblox to implement DNS & IP addresses, but want to make sure it works for everyone.
//cc @bprashanth @chrissnell @vipulsabhaya

This change is

I think all my code should be working now. Do you think I should pull the Infoblox stuff out into it's own container? I chatted with @brendandburns a while back but not sure the thoughts now. I had it all together to make life easier in dev, but it breaks the model a bit of doing just one thing.
I should also update the readme.

@stevesloka can you remove the Infoblox code from the F5 integration and maybe use a sidecar for that?
Have you seen https://github.com/scottdware/go-bigip? (to simplify the code)

@aledbf yup I can do that. Let me get that worked out, will push some changes up soon. Thanks!

recomputing cla status...

I signed it

[APPROVALNOTIFIER] The Following OWNERS Files Need Approval:

service-loadbalancer

We suggest the following people:
cc @bprashanth
You can indicate your approval by writing /approve in a comment
You can cancel your approval by writing /approve cancelin a comment

Any update on this?

@stevesloka Is this done? Any new update?

I don't want to dump on @stevesloka's project but we were also desperately looking for a way to get automatic VIPs for ingress on our baremetal environment with F5s.  We ended up coming up with an alternate solution that's much more flexible:

Set up Traefik running within your K8S cluster, configured to use the Kubernetes API for service discovery.  If you want HTTPS, get a wildcard cert and have Traefik use this
Use a VIP on your F5s to proxy TCP to ports 80 and 443 to Traefik's NodePort
Set up wildcard DNS to point to the VIP from step 2.  You could call it, for example, *.svc.mycompany.com.

With this solution, you get Traefik's auto-discovery of Kube services and auto-provisioning of their VIPs.  The F5s just act as load balancing TCP proxies (you could also use Linux or *BSD boxes for this.

@myf5 @stevesloka @chrissnell
Another option is to use the F5 Container Connector.  This provides a controller (container) that runs in Kubernetes that can monitor for new services and create/update pool/vips on an F5 BIG-IP.  It also has support for Ingress routes as well.  It can route traffic directly to pods under appropriate network conditions (ability to route to the pod).

https://github.com/F5Networks/k8s-bigip-ctlr
http://clouddocs.f5.com/containers/latest/kubernetes
http://clouddocs.f5.com/containers/v1/kubernetes/kctlr-modes.html#kctlr-modes

Thanks @chen23! I stopped work a while back on this when the F5 folks had some better offerings as well as my internal needs changed (e.g. I moved my workloads off-prem to the cloud).


Particles aren't emiting when scale_curve begins from zero

Godot version
v3.6.beta3.official [21ab700f2]
System information
Linux Ubuntu 22.04, GeForce 1060
Issue description
Particles stops emitting when the first point of Scale Curve in Process Material  is zero, like with "Linear preset".
Another fact is that setting flag_disable_z or flag_disable_z cancels this effect (emitting works).
The same setup in Godot_v3.5.2-stable works without problems.
Steps to reproduce
Just any Particles set up as described in Issue description
Minimal reproduction project
N/A

This occurred in 4.x at some point and was resolved by https://github.com/godotengine/godot/pull/78021.

Needs MRP. Please always include MRP, no matter how simple to you, it may take time to reproduce / not reproduce on another machine etc.
I don't think I did any changes directly to Particles for 3.6 (or 3.5 actually, there were no changes to GPUParticles if I remember right, only CPUParticles). 3.6 has changes to CPUParticles2D only.
There were some general changes for interpolation but I don't think this would be likely to cause this.
On the other hand, this could be a regression due to hierarchical culling. This can fail if there is no update to the Particles AABB, try switching it off using project_settings/rendering/2d/options/culling_mode set to Item instead of Node. If this fixes it, please still include MRP so we can fix properly.

Bisected to #53852 . @Calinou buck passed. :grinning:

Needs MRP. Please always include MRP

Sorry, I just thought reproduction steps are very basic and don't require dedicated project.
But ok, will do my best next time.

We should solve this before the next beta. What approach do we want to take? Revert #53852 or is there a way to keep both cases working?

Fixed by #81902.

Strangely I couldn't seem to get this bug to reproduce in master (despite having the same code here), so I've shelved master PR for now.


Enabling dinghy for PRs validation in GH.

I've used documentation specified here: https://docs.armory.io/docs/armory-admin/dinghy-enable/ to enable and configure dinghy in my Spinnaker installation.
It successfully loads code from the PR and runs validation on the dinghyfile but it does not produce any data in the PR.
In the dinghy logs I can see errors like that:
level=error msg="[POST https://api.github.com/repos/MY_ORG/MY_REPO/statuses/SOME_UUID: 404 Not Found []]"
Does the account which is used configured in dinghy need some extra set of privileges to fully work?
As specified in the docs I've configured a webhook to publish push messages and the account has access to the repo in the token settings.
I'm using dinghy docker.io/armory/dinghy:2.23.8.

Solved. My account had read-only access to the repository.


:robot: Triggering CI on branch 'release-next' after synching to openshift/master

/retest

/test 4.5-e2e

OCF Webhook is merging this PR


Travis migration

Migrate Travis CI (.travis.yml) to GitHub Actions, so that we can continue to run golang tests after Travis-CI shuts down on 31st Dec.
The GitHub Action workflow added will be triggered when there is a:

push to master
pull request to master
release created

An example of the workflow output can be found at: https://github.com/SoapHia/ts-bridge/runs/1597974835
You can also compare this with an existing Travis run at: https://travis-ci.org/github/google/ts-bridge/builds/751122865
This PR fixes google/ts-bridge#61

looks like they generate the same results!  Nice work.


ImportError: libcudart.so.9.0: cannot open shared object file: No such file or directory

The whole error log is:
Traceback (most recent call last):
  File "train.py", line 14, in <module>
    from unet import UNet
  File "/data3/yuechen/new/pytorch_unet/unet/__init__.py", line 1, in <module>
    from .unet_model import UNet
  File "/data3/yuechen/new/pytorch_unet/unet/unet_model.py", line 5, in <module>
    from .unet_parts import *
  File "/data3/yuechen/new/pytorch_unet/unet/unet_parts.py", line 7, in <module>
    from inplace_abn import InPlaceABN, InPlaceABNSync
  File "/data3/yuechen/software/anaconda3/envs/unet10/lib/python3.6/site-packages/inplace_abn/__init__.py", line 1, in <module>
    from .abn import ABN, InPlaceABN, InPlaceABNSync
  File "/data3/yuechen/software/anaconda3/envs/unet10/lib/python3.6/site-packages/inplace_abn/abn.py", line 8, in <module>
    from .functions import inplace_abn, inplace_abn_sync
  File "/data3/yuechen/software/anaconda3/envs/unet10/lib/python3.6/site-packages/inplace_abn/functions.py", line 8, in <module>
    from . import _backend
ImportError: libcudart.so.9.0: cannot open shared object file: No such file or directory

CUDA Version 10.0.130
cuDNN Version 7.5.1
torch           1.2.0
torchvision     0.4.0a0+6b959ee
It seems the inplace_abn module still uses cuda 9.0.
I also set CUDA_HOME and LD_LIBRARY_PATH environment, but is doesn't work.

import torch

works ok, but this module wouldn't.

Before compiling and installing inplace-abn, manually set CUDA_HOME, otherwise it will use 9.0 by default. If it is already installed, the method is as follows:
# Uninstall this library
pip uninstall inplace-abn
# Clear pip cache
rm -r ~/.cache/pip
# Set CUDA_HOME
export CUDA_HOME=/usr/local/cuda-10.0
# re-install
pip install inplace-abn


Improve credentials configuration

Considering this issue closed by https://github.com/rilldata/rill/pull/4166


tweak API for memory safe data sharing between different contexts

@homunkulus r+

:pushpin: Commit 25fd812 has been approved by japaric

:hourglass: Testing commit 25fd812 with merge 25fd812...

:sunny: Test successful - status-travis
Approved by: japaric
Pushing 25fd8120b7555cc812500e5e2e9022b7ef6212fb to master...


Ideas for more granular threshold handling

It would be useful to modify the threshold and the action taken when a form submission fails (or passes?) the threshold.
This would help with managing false positives on a day-to-day basis.
I think a model admin with the ability to set some recaptcha rules:

a tag to identify the rule eg. 'lostpassword'
a threshold to set between 0 and 1, when not set the local configuration value is applied
an action to take when the verification fails:  'block', 'allow'
the verification 'action' for analytics
an average score for the tag, to allow threshold modification.

When the RecaptchaV3Field is applied to a form, it can verify the token using the rules based on the tag assigned to the form. The field could automatically determine a tag based on the form class name.
For custom implementations, a form could specify a tag and that tag could be copied or applied from a Dropdown field in the model admin.
If no matching rules exists, there is no change from the current behaviour.

this branch: https://github.com/nswdpc/silverstripe-recaptcha-v3/tree/feat-modeladmin
and this one: https://github.com/nswdpc/silverstripe-recaptcha-v3-userforms/tree/feat-rules
go together


question about LIBSPDM_MAX_REQUSET_INFO_SIZE

Hi, all
I want to know why LIBSPDM_MAX_REQUSET_INFO_SIZE is 0x300?

Ummm. Maybe no need to define LIBSPDM_MAX_REQUSET_INFO_SIZE in libspdm.
It could be defined in the device secret lib as implementation choice.


Route model binding connection

Folio Version
1.1.3
Laravel Version
10.22.0
PHP Version
8.2.3
Description
It seems like the Folio route model binding resolution happens before middlewares are applied 🤔. Thus, in my case, I had a middleware in charge of changing the current database connection dynamically.
I tried using the default routing system in the same project and things started working as expected. Back to Folio, it's no longer working (resolving the suitable database connection).
Steps To Reproduce
Using Folio, create a middleware that sets the default database connection. Route model binding will still use the default.

@nunomaduro any solution or workaround pls ?

@taylorotwell can you help, please?

In traditional Laravel applications, you are able to define your own middleware priority by placing the SubstituteBindings at the end of your middleware stack. However, in Folio, you are not able to do that, and your own middleware will always run after model route binding.
As workaround, I suggest you to not use model route binding, and use regular route parameters.
Going to let @taylorotwell also give his opinion on this.

Agree - don't think this is possible with Folio at the moment. We always place the web middleware before all other user middleware.

in web.php
Route::middleware([
      YOUR_MIDDELWARES,
])->group(function () {
      Folio::route(PATH)
});

in web.php
Route::middleware([
      YOUR_MIDDELWARES,
])->group(function () {
      Folio::route(PATH)
});

I'm using multi-db tenancy and this is working for me, I deleted FolioServiceProvider.php file

Great 👍, thanks. @taylorotwell should we take this one as the suitable way to achieve it? Is there any caution or downside doing it this way?


[flutter roll] Revert "[Re-land] Button padding m3"

Reverts flutter/flutter#118640
Context: https://b.corp.google.com/issues/265937608.
There seems to be a real breakage among the scuba changes introduced.

closing pr. Matas will help provide a g3 fix

reopen pr in case Matas' g3 fix isn't ready

Merging as LUCI checks are green


Pasting LnURL-Auth

Alby works great detecting site logins o my PC with Chrome plugin... but I would like to login from other devices (e.g. Android), by scanning/pasting an LNURL-Auth in "Send".
Is this supposed to work with LnURL-Auth? I am trying with lnmarkets.com or lite.kollider.xyz, and after I paste in, it just fills in fields with "loading..." but does not let me click "Confirm"
I'm connected to Umbrel, but also created an Alby wallet... and that doesn't work either (so I think the issue is on Alby's side)

https://feedback.getalby.com/feature-requests-/posts/lnauth-cannot-be-used-with-other-devices

There is a way to install Alby on android by using the Kiwi browser chrome-clone. Alby appears to run well on it, but the lnauth feature does not work. It will hook into the alby extension, but the "grant access" alby popup does not work.

I didn't know about Kiwi browser. thanks for sharing.
can you explain what you do? which website do you try to login? do you click on some "login link"? when should the popup open?

Im trying to login to stacker.news with the lnauth button via android kiwi browser with alby installed as an extension

we now support copy-pasting the lnurl-auth string in the new release (v1.14.2)


ERR_HTTP2_PROTOCOL_ERROR

import { createHelia } from 'helia';

export const createNftMetadata = async () => {
    const helia = await createHelia()
    // const str: any = strings(helia)
    // const cid = await str.add('hello world')
    // const string = await str.get(cid)

  return createHelia()
  .then(() => {
    console.info('Helia is running')
    console.info('PeerId:', helia.libp2p.peerId.toString())
  });
};

console do navegador : utils.ts:31     GET https://dns.google/resolve?name=_dnsaddr.node-7.ingress.cloudflare-ipfs.com&type=TXT net::ERR_HTTP2_PROTOCOL_ERROR
request @ utils.ts:31
resolveTxt @ index.ts:224
dnsaddrResolver @ index.ts:50
resolve @ index.ts:694
resolveRecord @ utils.ts:45
resolveMultiaddrs @ utils.ts:21
(anonymous) @ dial-queue.ts:313
calculateMultiaddrs @ dial-queue.ts:312
await in calculateMultiaddrs (async)
dial @ dial-queue.ts:184
openConnection @ index.ts:508
queue.add.peerId @ auto-dial.ts:246
(anonymous) @ index.js:111
_PQueue_tryToStartAnother2 @ index.js:285
_PQueue_next2 @ index.js:237
(anonymous) @ index.js:131
await in (anonymous) (async)
_PQueue_tryToStartAnother2 @ index.js:285
_PQueue_next2 @ index.js:237
(anonymous) @ index.js:131
await in (anonymous) (async)
_PQueue_tryToStartAnother2 @ index.js:285
_PQueue_next2 @ index.js:237
(anonymous) @ index.js:131
await in (anonymous) (async)
_PQueue_tryToStartAnother2 @ index.js:285
_PQueue_next2 @ index.js:237
(anonymous) @ index.js:131
await in (anonymous) (async)
_PQueue_tryToStartAnother2 @ index.js:285
_PQueue_next2 @ index.js:237
(anonymous) @ index.js:131
await in (anonymous) (async)
_PQueue_tryToStartAnother2 @ index.js:285
_PQueue_next2 @ index.js:237
(anonymous) @ index.js:131
await in (anonymous) (async)
_PQueue_tryToStartAnother2 @ index.js:285
(anonymous) @ index.js:135
add @ index.js:99
autoDial @ auto-dial.ts:235
await in autoDial (async)
(anonymous) @ auto-dial.ts:260
Show 35 more frames
Show less
utils.ts:31     GET https://dns.google/resolve?name=_dnsaddr.node-7.ingress.cloudflare-ipfs.com&type=TXT net::ERR_HTTP2_PROTOCOL_ERROR

What's happening here is your node is trying to dial a /dnsaddr-style peer, it's trying to resolve the address but Google's DNS server is returning an error.
This sort of error is usually due to a misconfiguration at the remote and is usually transient.  It should be handled by libp2p though.
Is this still happening for you?
Did it crash your process?


runner/execer/os: an execer that actually runs an OS process

This isn't high-quality code yet, and certainly misses lots, but it's a nice first step. Next I'm going to go beef up the test suite and what not, and hook it up in daemon server.

[Current coverage][cc-pull] is 75.36%

Merging [#48][cc-pull] into [master][cc-base-branch] will decrease coverage by 0.14%

@@             master        #48   diff @@
==========================================
  Files            22         23     +1
  Lines           923        950    +27
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            697        716    +19
- Misses          195        202     +7
- Partials         31         32     +1

Powered by Codecov. Last updated by [0db4d8d...effa5bb][cc-compare]
[cc-base-branch]: https://codecov.io/gh/scootdev/scoot/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/scootdev/scoot/compare/0db4d8d8152fe9a9de8bc9c1ef43756aeeacc3dc...effa5bb6da4ea91d431e60866e46751bb8503fec
[cc-pull]: https://codecov.io/gh/scootdev/scoot/pull/48?src=pr

lgtm


Unit entered failed state

Here's what we have in the logs today:
$ sudo journalctl -u loglist
-- Logs begin at Fri 2016-12-02 21:20:01 EST, end at Mon 2016-12-05 10:13:42 EST. --
Dec 04 06:47:54 xmpp1 systemd[1]: loglist.service: Main process exited, code=killed, status=9/KILL
Dec 04 06:47:54 xmpp1 systemd[1]: loglist.service: Unit entered failed state.
Dec 04 06:47:54 xmpp1 systemd[1]: loglist.service: Failed with result 'signal'.

That's all. No idea or logs about what happened.

That's OOM Killer. I think that's not a loglist issue, but the cause is lack of available RAM on our production server. Will fix with systemd configuration.


Correct Browser.touch (and more related changes)

https://github.com/Leaflet/Leaflet/blob/e213469a296ea00e6f9e6e6beb49d081e8d1c4fe/src/core/Browser.js#L98-L104
Leaflet's own code does not correspond to documentation: instead of detecting touch capabilities we detect also pointer capabilities.
We should never deviate any property value from it's 'physical' meaning, otherwise eventually we get code that nobody can understand, and it's hard to fix anything without breaking something else.
And when we really need to check (touch || pointer) - it's easy to do it explicitly.
So I propose:

Ignore pointer capabilities for touch value, except for Windows mobile devices.
Todo: make sure that our code in other places is ready ignore them too.

(in fact not related to this issue's initial subject)
Drop support for legacy touch Firefox versions (<25), because of their insignificant market share.

Stop simulating touch via DomEvent.Pointer.js when native touch events are available.
Close #7077, fix #5745, fix #5969, fix #6632, fix #7394.
May also fix* #6401 (not confirmed yet).

3. Stop simulating touch via DomEvent.Pointer.js when native touch events are available.

For debug purposes we might want to keep previous behavior under some global flag, or other L.Browser.* flag (depends on #7335).

3. Stop simulating touch via DomEvent.Pointer.js when native touch events are available.

For debug purposes we might want to keep previous behavior under some global flag, or other L.Browser.* flag (depends on #7335).

Todo:

[ ] rebase on #7415 and #7027

Todo:

[ ] rebase on #7415 and #7027

The PR is simplified.
Welcome to test and review.
Built version: https://gist.githack.com/johnd0e/3ad393c73b12b24af7e947711a87b7a4/raw/leaflet-src.js
Sample map: https://gist.githack.com/johnd0e/3ad393c73b12b24af7e947711a87b7a4/raw/issue-7476.html


Allow to configure limits and requests for kube-rbac-proxy container in devworkspace-webhook-server pod

Description
Current implementation does not allow to configure limits and requests for kube-rbac-proxy container in devworkspace-webhook-server pod. It leads to violation to security best practices, for example: container CPU and memory limits should be enforced.
Additional context
The similar issue is already solved for another container in this pod via envvars:
        - name: WEBHOOKS_SERVER_MEMORY_LIMIT
          value: 300Mi
        - name: WEBHOOKS_SERVER_MEMORY_REQUEST
          value: 20Mi
        - name: WEBHOOKS_SERVER_CPU_LIMIT
          value: 200m
        - name: WEBHOOKS_SERVER_CPU_REQUEST
          value: 100m

Is it possible to have something like above but for kube-rbac-proxy container?

Please disregard this request. It has been resolved by using a limit range.

@karatkep glad to hear you found a workaround :)


Replace regex attr name parsing with string parsing

When acquiring Fabric geometry, we were previously parsing attribute names with a regex. This costs a median of 244 microseconds. Replacing with string parsing drops the median to 107 microseconds. Stats via Superluminal for the FabricGeometryDefinition constructor:
Regex:

string:

Looks good. Did you re-run the profiler to see how the new implementation performs?

@corybarr once you fix formatting this should be good to go


react-a11y-accessible-headings is missing from recommended_ruleset.js

Bug Report

tslint-microsoft-contrib version: Latest on master

Spinning off of #686 - react-a11y-accessible-headings isn't mentioned in recommended_ruleset.js. Running npm run test re-adds it back in.

I have an impression (may be wrong) that contributors are not sure if they should add/commit changes to automatically generated files (specifically recommended_ruleset.js and tslint-warnings.csv).
It may worth to add information to CONTRIBUTING.md that changes in these files related to new rules should be also commited. And during review check if changes are present and ask to add for example recommended: 'false, // to strict' to rule metadata.
What do you think?

Agreed. I think it'd be good to have a comment on top of recommended_ruleset.js linking to those docs too.


Cannot move only x or y coordinate in Screen session

This affects move_x, move_y, and the location context manager (when only one of x or y is specified). The cause appears to be Screen's terminfo, which does not seem to define entries for "hpa" or "vpa". To test, I did the following:
$ tput -T screen cup > /dev/null; echo $?
0
$ tput -T screen hpa > /dev/null; echo $?
1
$ tput -T screen vpa > /dev/null; echo $?
1

Note that changing the environment variable TERM to xterm fixes the issue.
It would be helpful if Blessings were able to internally workaround this problem transparently. As it stands, I cannot use these functions at all if I want my program to work under either Screen or Tmux (which uses Screen's terminfo).

This issue is resolved in 'blessed-integration' branch by a method of "proxying" terminal capabilities. https://github.com/erikrose/blessings/blob/blessed-integration/blessings/formatters.py#L144-148

This issue is resolved in blessed, which is API compatible with blessings, by a ParameterizingProxyString class, which is provided for missing terminal capabilities, from end of blessed.formatters.resolve_attribute():

and, for special terminals, such as 'screen', provide a Proxy
ParameterizingString for attributes they do not claim to support,
but actually do! (such as 'hpa' and 'vpa').


Don't panic on unsupported exports

It's most likely safe for us to skip exports that we don't yet support.  Doing nothing will at least not hurt in those cases.
This is needed because recent rustc has started exporting a __web_table table (not sure what it's used for though)

Sounds like a good idea to me, thanks!


Clean up subsampled block size and chroma transform size functions

Requesting @ycho for review as the last person who touched this code, but if someone else wants to review please go ahead.
I found the format of the Subsampled_Size table (which is equivalent to ss_size_lookup) to be difficult to read, and there is unnecessary data for subsampling in the vertical but not horizontal direction (which does not correspond to any supported color space). It is replaced here with pattern matching. It is a bit longer than the LUT but more readable in my opinion.
There were also some errors in the ss_size_lookup tables, mostly block sizes that should be invalid that were not marked as such in 4:2:2. I used the specification as reference for this conversion.

Just force-pushed to rebase on top of master.

Coverage decreased (-0.06%) to 82.704% when pulling 371f4ff203ab9676cf752a081e27c71df8672af7 on rzumer:subsampled_size into aa5a03eb019cce06dfa3c88080f0db8f105faec3 on xiph:master.


feat(cache): Stopped generating constant directory level

As described in #18263 FileCache generate directories with permanent names when using key prefix cache

This PR removed \yii\caching\FileCache::$keyPrefix for result of \yii\caching\FileCache::getCacheFile() to avoid generating constant cache directory levels
BREAKING CHANGE: After the Yii upgrade, the storage structure for the file cache will change. It is worth warming up the cache again if there is a logical dependency when working with the file cache.

Q
A

Is bugfix?
✔

New feature?
✔

Breaks BC?
✔

Tests pass?
✔

Fixed issues
#18263

Would be nice if a upgrade message could be add, since OP mentionend

BREAKING CHANGE: After the Yii upgrade, the storage structure for the file cache will change. It is worth warming up the cache again if there is a logical dependency when working with the file cache.

This ^. Please add.

Thank you!


Content size exceeds specified contentLength on formdata upload

=====================================

var formData = new FormData.from({
          "param1": "-1",
          "param2": "-1",
          "param3": "-1",
          "param4": "-1",
          "param5": "-1",
          "music": new UploadFileInfo(new File(fileUrl), "audio.m4a"),
        });

 final response = await _api.post(uploadUrl, data:formData,
        onSendProgress: (sent, total) {
      print("uploadFile ${sent / total}");
    });

fileUrl comes from device storage.
fileUrl is valid, as upload process begins, and it was tested;

Produces this error:
flutter: DioError [DioErrorType.DEFAULT]: HttpException: Content size exceeds specified contentLength. 234777 bytes written while expected 234769. [----dio-boundary-0252882641--]
Can someone help we with this?

Dio version?

I believe this error appears with the dio version 2.1.4

dio: ^2.1.5

Flutter doctor:
[✓] Flutter (Channel stable, v1.5.4-hotfix.2, on Mac OS X 10.14.4 18E226, locale
en-US)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] iOS toolchain - develop for iOS devices (Xcode 10.2)
[✓] Android Studio (version 3.3)
[✓] VS Code (version 1.31.1)
[✓] Connected device (1 available)

@wendux any ideas? if you need more info, let me know how I can help..

@vinters768 The value of Content-length is formData.length. you can test with follow code:
 var t= await formData.asBytesAsync();  // Stream size.
 print(formData.length==t.length);  // Should be `true`

If formData.length is not equal to t.length, please upload the "audio.m4a" and I'll help you to check it.

[final.m4a.zip](https://github.com/flutterchina/dio/files/3222464/final.m4a.zip)

 var fileLenght = file.lengthSync();

        print("fileLenght = $fileLenght");

        var formStreamSize = await formData.asBytesAsync(); // Stream size.

        print("formStreamSize = ${formStreamSize.length}");
        print("formData.length = ${formData.length}");

        print("formData.length == formStreamSize.length ${formData.length == formStreamSize.length}"); // Should be `true`

flutter: fileLenght = 239166
flutter: formStreamSize = 240231
flutter: formData.length = 240223

flutter: DioError [DioErrorType.DEFAULT]: HttpException: Content size exceeds specified contentLength. 240231 bytes written while expected 240223. [----dio-boundary-1735630428--]

@wendux sorry for the trouble, but we are kind waiting on this for production release.. could you please confirm that this isn't a problem on dio side?
thanks again

@vinters768 This is my test code:
import 'dart:io';
import 'package:dio/dio.dart';

main() async {
  var formData = new FormData.from({
    "param1": "-1",
    "param2": "-1",
    "param3": "-1",
    "param4": "-1",
    "param5": "-1",
    "music": new UploadFileInfo(new File("./example/audio.m4a"), "audio.m4a"),
  });
  var t= await formData.asBytesAsync();
  print("formStreamSize = ${t.length}");
  print("formData.length = ${formData.length}"); //
  print(formData.length==t.length);

}

The output is:
formStreamSize = 239748
formData.length = 239748
true

Any other params in formdata ?

@wendux the only difference is that "file" comes from device storage, not flutter project path.. will try v2.1.3 and let you now.

@wendux downgrade worked.. don't know why though.
anyway, thanks again!

this error appears on version 2.1.7 also

same proplem here 2.1.7

Same problem here 2.1.7. The downgrade to 2.1.3 resolved my problem.

fixed in v2.1.8

this error appears on version 2.1.8 also @wendux
Unhandled Exception: DioError [DioErrorType.DEFAULT]: HttpException: Content size exceeds specified contentLength. 282 bytes written while expected 194.

This exception happens to me, either. It only happens when I test my app on Android but not IOS. Wish these details can help.

Same thing happens to me with an audio file.
My dio version is 2.1.13

Same thing happen to me with an audio file.
My dio version is 2.1.13

same

same error for dio: 2.1.16

please update to 3.0.x and try again .
:octocat: From gitme Android

please update to 3.0.x and try again .
:octocat: From gitme Android

Hi @wendux, this is happening in 3.0.3 version too.

Same problem in 3.0.9

Content size exceeds specified contentLength. 418 bytes written while expected 257. in text files

I have the same problem in version 3.0.9    I can't solve

Hi guys, anyone got the answer for this issue yet? still happening on version 3.0.9 with audio file.

@petra-bios It had been a year that this issue isn't solved still its status is closed
and most of us tried but din't get what we want so don't stuck on same problem try alternative for audio files request

Hi @AdnanKazi , I think i found the solution for this (at least for the case i'm facing).
I will leave it here in case other people need it.
what solved mine was:
I use MultipartFile.fromBytes instead of MultipartFile.fromFile
For example :
from this :
final file = await MultipartFile.fromFile(filePath);
to this :
final file = MultipartFile.fromBytes(File(filePath).readAsBytesSync(), filename: filePath.split("/").last);
Thanks and i hope it helps.

@petra-bios Thank you very much for solution i will try it in mean time

@petra-bios awesome save my day!
Follow my solution with mp3:
FormData formData = FormData.fromMap({
      "file": MultipartFile.fromBytes(
          File(recordFilePath).readAsBytesSync(),
          filename: fileName),
    });

Same problem in 3.0.10

Same problem in 3.0.10

If you are using this package https://pub.dev/packages/record
Ensure you wait for the recording to completely stop before you start uploading the file.
Record.stop() is a future, so you need to add await to it
await Record.stop()
// Start uploading


Installer exits after entering Administrator password

I've just come across this fine script. I noticed an issue trying to use this in Ubuntu 22; at the point where you insert the admin user passwords; the script causes Putty/bitvise to exit immediately with no warnings. There are no error messages but it happens after you enter the site name and admin password.
It happens on both:
1.contabo vps
2.local vms

This issue is same as the one referenced below so lets consolidate it and try to resolve it.
https://github.com/flexcomng/erpnext_quick_install/issues/20


fix #4697: made profile picture circular

Fixes #4697
Describe the changes you have made in this PR -
Made the profile picture circular from rectangular by adding this lines of code:
 width: 150px;
 border-radius: 80px;
 height: 150px;

Screenshots of the changes (If any) -
before:

After:

@tanmoysrt  Could you please review this?

Hey maintainers could you please review this PR.


Default locale should not have a prefix

I currently have the following in my next.config.js
module.exports = {
  i18n: {
    locales: ['en'],
    defaultLocale: 'en'
  }
};

and locally the app runs without adding the /en prefix, however once deployed the site can only be accessed using https://xxxxxxxxxx.cloudfront.net/en
Is there any way to prevent this from happening so the site can be accessed without the prefix i.e https://xxxxxxxxxx.cloudfront.net

Hi,
generated routes seem to be correct but I noticed a bug in the proxy component that it doesn't handle the internal rewrite / -> /en correctly.
Will take a look, thanks for reporting!

This is now fixed in the v0.9.1 release.


is:issue is:open Won't let me installMicrosoft Bot Componet Recognizers.CLU Recognizer

Describe the solution you'd like

Describe alternatives you've considered

Additional context

@Butcheva what's the error message shown? Could you provide reproduction steps?

I am also have issue with installing the package

Hi @sijonjas, I have a same issue not let me install the CLU, tried different version of the CLU. This is an error that  I get :
If this problem persists, please file an issue on GitHub
Details
**A problem occured during the install of this Component: Error certificate has expired *** Could not merge components *****
Thank you for your help. I need a fix for this as I am working on my project and deadline is close. Thank you

@sijonjas, @Butcheva please use the nightly release instead of stable. Certificate issue is fixed there

@OEvgeny  , I tried the same, Still getting same error!!!
A problem occured during the install of this Component: Error certificate has expired *** Could not merge components ***

Hi @OEvgeny ,
Thank you for the quick replay ,
I tried with nightly version (2.1.3) as well but , With that the package explored didn't list the package "Microsoft.Bot.Components.Recognizers.CLURecognizer".
I am creating a empty bot using .NET.
One thing i notice that i am getting the same error even i open the package manager


🚀 [Feature Request] - Loading on the Mentor Page

Is your feature request related to a problem ? Please describe. ✍
Adding a loading indicator for mentors Page  enhances user experience, providing a polished and professional feel to the website during data retrieval.
Describe briefly how you would implement this enhancement.
Some steps to implement this enhancement-
1. Locating the Logo Loading Spinner Asset in your code base
2. Using that Asset on the Place of the Current text
3. ready to go

Additional context or screenshots
Screenshot

Are you contributing for a program?
Other
Code of Conduct

[X] I have read and agree to the Contributing Guidelines of this project.

please check dev version.. production is far behind dev!

Ohh Sorry for the Oversight


[$250] Implement offline behavior and error handling for UpdateGroupChatAvatar

We are now able to add a custom Group chat avatar. However, we do not handle the failure case yet.
Let's take whatever we are doing for the Profile + Workspace pages and apply the same error handling here.
In the backend, we currently send exceptions like this:
Onyx::handleException($e, 'AD9240FD-A780-425D-B98D-96DD6E4251C1', OnyxKeys::COLLECTION_REPORT.$reportID, ['errorFields', 'avatar']);

Which will put an error field on the report if updating the avatar fails.
We need that error to lead the user back to the avatar and display an error message back to the user.
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~015da074a9479d6afc
Upwork Job ID:<PHONE_NUMBER>149742080
Last Price Increase: 2024-04-17
Automatic offers:

s77rt | Reviewer | 0

I'd like to work on this

No longer on hold. https://github.com/Expensify/App/pull/39757 is merged. Will look into this asap

Thanks, removed HOLD here.

Not overdue. Focused on QBO. Didn't get a chance to work on this yet

Sounds good! Thanks everyone. Let's goooo 🙇

Not overdue. We have a draft PR

Melvin, you were supposed to update the issue, didn't you used to say that issues have feeling too.

Hi @sonialiap, this was deployed to production a while ago. Can we proceed with payments here ?

@nexarvo thanks for the ping! Looks like automation didn't run here, sorry for the delay 🤖
Payment summary:

@s77rt review $250 - please request in ND (or do I need to pay in upwork because you were hired before 2024-05-24?)
@nexarvo contributor $250 - offer sent in upwork

@sonialiap This one is still via Upwork

@s77rt offer sent in upwork

@sonialiap Accepted! Thanks!

Paid


Option to show all models available from registry/library

Currently, ollama list shows all the installed models. It would be very useful to be able to show all the available models from the registry/model library, which allow us to make model management app to install a model with GUI with one click.

Currently, the Ollama API does not support an endpoint to list all models available in the remote library. We could add a     /models/available endpoint to the API and introduce a --remote flag to the ollama list command in the CLI
I am new to this repo, can I implement this repo @jmorganca

https://github.com/ollama/ollama/issues/7751


ConnectionError: BadStatusLine

InfluxDB version: 1.7.3
InfluxDB-python version: 5.2.1
Python version: 2.7.12
Operating system version: Ubuntu 16.04

Hello, since I've changed our InfluxDB to a HTTPS connection, I'm not able to write two points anymore. The first write attempt is successfully, the second fails.
I'm getting the following exception:

ConnectionError: ('Connection aborted.', BadStatusLine('\x15\x03\x01\x00\x02\x02\x16',))

Snippet of the client connection:
client = InfluxDBClient(host=influxHost, port=influxPort, username=influxUser, password=influxPass, database=sensortype, ssl=True, verify_ssl=True)
Thank you for helping me!

Nervermind, I simply forget to update one InfluxDBClient connection line with the ssl=True and that was causing the error...


DEV Branch: Why is witai-stt English only?

Hello!
I've tested wit.ai STT in French. It works if I comment the code about "Only english restriction" :) (DEV Branch)
Language is configurable on Wit.ai website. So, I suggest to remove this restriction...?
Thanks for your work!

Hi!
Can you please give a detailed guideline on how to implement Jasper with Wit.ai and using another language than english? for instance French? Thanks!!!
I am able to use english, but when I choose another language (I tried 3 at least), Jasper returns the following error:
INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): api.wit.ai
DEBUG:requests.packages.urllib3.connectionpool:"POST /speech?v=20150101 HTTP/1.1" 200 121
Traceback (most recent call last):
File "./jasper.py", line 141, in
app.run()
File "./jasper.py", line 111, in run
conversation.handleForever()
File "/home/pi/jasper/client/conversation.py", line 31, in handleForever
threshold, transcribed = self.mic.passiveListen(self.persona)
File "/home/pi/jasper/client/mic.py", line 179, in passiveListen
transcribed = self.passive_stt_engine.transcribe(f)
File "/home/pi/jasper/client/stt.py", line 613, in transcribe
transcribed = [text.upper()]
AttributeError: 'NoneType' object has no attribute 'upper'
INFO:apscheduler.scheduler:Scheduler has been shut down

wit.ai restriction is changed in dev branch with #507
@ncoletto:
use the "jasper-dev" branch. This version already supports multi-languages in principle. Please note that its a development branch.


feat(bagrollbacker): add message and service

Related Links

TIER IV INTERNAL JIRA
Description
The size of recorded rosbags in the shuttle bus project is increasing.
We are working to retain and persist only the minimal rosbags necessary for analysis to address this issue.
We are implementing a feature to retain rosbags up to an hour ago for example.
APIs must be added to allow operators to access this functionality.

Changes

Request to start/stop rosbag rollback saving

API name: /api/autoware/set/rollback
Type: tier4_external_api_msgs::srv::SetRosbagRollback

Status of rosbag rollback saving

API name: /api/autoware/get/rollback_status
Type: tier4_external_api_msgs::RosbagRollbackStatus

Remarks

none
Pre-Review Checklist for the PR Author
PR Author should check the checkboxes below when creating the PR.

[x] Code is properly formatted
[x] Assign PR to reviewer

Checklist for the PR Reviewer
Reviewers should check the checkboxes below before approval.

[ ] Commits are properly organized and messages are according to the guideline
[ ] Code is properly formatted
[ ] PR title describes the changes

Post-Review Checklist for the PR Author
PR Author should check the checkboxes below before merging.

[ ] All open points are addressed and tracked via issues or tickets
[ ] Write release notes

CI Checks

Build and test for PR: Required to pass before the merge.
Check spelling: NOT required to pass before the merge. It is up to the reviewer(s). See here if you want to add some words to the spell check dictionary.

NOTE:

Related PR: https://github.com/tier4/autoware_logging_suite/pull/76
This message is only meant to be used by logpacker (i.e., bagrollbacker), and not used by Autoware. We should consider moving the similar messages into the https://github.com/tier4/autoware_logging_suite (private) repository.


Doesn't work on latest vscode

Windows 10
Extension Version: 0.4.5
VSCODE:
Version: 1.32.3 (system setup)
Commit: a3db5be9b5c6ba46bb7555ec5d60178ecc2eaae4
Date: 2019-03-14T23:43:35.476Z
Electron: 3.1.6
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Windows_NT x64 10.0.17134

Extension just doesn't work, its not opening any popup or at least it's not showing.

Hi @avionbg, thank you for your report.
Could you give information?
https://github.com/anseki/vscode-color/blob/master/.github/ISSUE_TEMPLATE.md
Also, do you mean that the extension worked on previous version of VS Code?

I already posted all the versions (vscode / extension / node etc.) that I'm using. If you need some other details just let me know exactly which one.
Well unfortunately I didn't know about the extension before, so I cant say for sure if it works on earlier versions of vscode.

You did not write information about NPM and Log.
See: https://github.com/anseki/vscode-color/blob/master/.github/ISSUE_TEMPLATE.md
Please understand that those are important to solve an issue more than you think.

System node/npm version:

node -v
v10.15.1
npm -v
6.4.1

Steps to reproduce:

Install the extension from marketplace
Try to pick the color

Dev tools console log after reloading the window / clearing the log and enabling the extension:
[Extension Host] debugger listening on port 60694
log.ts:161  INFO no standard startup: not a new window
console.ts:134 [Extension Host] [vscode-icons] v8.4.0 activated!
console.ts:134 [Extension Host] Looking for parseable documents...
console.ts:134 [Extension Host] Found all parseable documents.
console.ts:134 [Extension Host] Parsing documents and looking for CSS class definitions...
console.ts:134 [Extension Host] Summary:
console.ts:134 [Extension Host]% 98 parseable documents found
console.ts:134 [Extension Host]% 665 CSS class definitions found
console.ts:134 [Extension Host]% 140 unique CSS class definitions found
console.ts:134 [Extension Host]% 4 failed attempts to parse. List of the documents:
console.ts:134 [Extension Host] /g:/DEV/ICS/aia-sow/src/css/theme.css
/g:/DEV/ICS/aia-sow/node_modules/prettier-stylelint/tests/error-syntax.css
/g:/DEV/ICS/aia-sow/node_modules/prettier-stylelint/tests/test-disable-rules.css
/g:/DEV/ICS/aia-sow/node_modules/postcss-discard-overridden/src/__tests__/fixtures/keyframes.css

3webviewElement.ts:284 [Embedded Page] Refused to apply inline style because it violates the following Content Security Policy directive: "style-src vscode-core-resource:". Either the 'unsafe-inline' keyword, a hash ('sha256-/hrnFLvlRLwUBJOsbTcaSST5mKtDLPuHe9GD9QefPS0='), or a nonce ('nonce-...') is required to enable inline execution.

log.ts:173   ERR Cannot assign to read only property 'user' of object '#<Object>': TypeError: Cannot assign to read only property 'user' of object '#<Object>'
    at c (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:1479:114)
    at Object.t.getDefaultValues (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:1481:319)
    at new d (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:1491:834)
    at M.onDefaultConfigurationChanged (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4117:673)
    at M._register.S.Registry.as.onDidUpdateConfiguration.e (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:4110:639)
    at d.fire (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:73:416)
    at h.registerConfigurations (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:1434:830)
    at g.m.setHandler [as _handler] (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:2987:623)
    at g._handle (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:2980:568)
    at g.acceptUsers (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:2980:475)
    at Function._handleExtensionPoint (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:3261:279)
    at e._rehandleExtensionPoints (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:3251:583)
    at e.<anonymous> (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:3250:905)
    at Generator.next (<anonymous>)
    at r (file:///C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:30:772)```

I see.
Your GPU driver might have a problem.
Specify 1 for colorHelper.disableGpu option.

Yep .. that did the trick. What exactly might be the core problem with GPU driver ? (I'm using latest nvidia drivers and I haven't experienced any issue with it)

That option disables the GPU driver that has a problem.
So, could you close this issue if it was solved?

Yep, closing the issue..


The extensions chat completions operation must have at least one extension

In App.py I realized that the url to i
def conversation_with_data(request_body):
    body, headers = prepare_body_headers_with_data(request)
    base_url = AZURE_OPENAI_ENDPOINT if AZURE_OPENAI_ENDPOINT else f"https://{AZURE_OPENAI_RESOURCE}.openai.azure.com/"
    endpoint = f"{base_url}openai/deployments/{AZURE_OPENAI_MODEL}/extensions/chat/completions?api-version={AZURE_OPENAI_PREVIEW_API_VERSION}"
    history_metadata = request_body.get("history_metadata", {})

I get the following error:
{
    "error": {
        "code": "OperationNotSupported",
        "message": "The extensions chat completions operation must have at least one extension."
    }
}

where I am going wrong please?
.env:
AZURE_OPENAI_MODEL="gpt4-model"
AZURE_OPENAI_MODEL_NAME="gpt-4"
AZURE_OPENAI_PREVIEW_API_VERSION="2023-06-01-preview"
@pamelafox  please.

not an issue. it was a configuration issue.


[core] Fix checkstyle for CommandLine

Relates to #895

Tested with: mvn -pl core -am validate | grep "CommandLine"

@manolama - if you could take a peek at this that would be very much appreciated. I found that adding w=1 as a url parameter hides the whitespace only changes.

Required by #920

Thanks @busbey!


panic: Unable to compute cost, unsupported image format *image.Paletted

Describe the bug
Whenever I try to open an auto-generated collection (my Messenger photos and videos), the app crashes.
Screenshots
Attaching the logs from the crash
2022/09/10 17:38:53 load meta   25% completed,   499 loaded,  1444 pending, 4.50 / sec
2022/09/10 17:38:55 load meta   26% completed,   511 loaded,  1432 pending, 5.66 / sec
2022/09/10 17:38:56 load color    4% completed,   159 loaded,  3751 pending, 1.25 / sec
2022/09/10 17:38:57 load meta   27% completed,   527 loaded,  1416 pending, 7.89 / sec
panic: Unable to compute cost, unsupported image format *image.Paletted
goroutine 38 [running]:
photofield/internal/image.newImageCache.func1({0xcaa940, 0xc01209d770})
/home/runner/work/photofield/photofield/internal/image/cache.go:100 +0x285
github.com/dgraph-io/ristretto.(*Cache).processItems(0xc00023ac00)
/home/runner/go/pkg/mod/github.com/dgraph-io/ristretto@v0.0.2/cache.go:303 +0x109
created by github.com/dgraph-io/ristretto.NewCache
/home/runner/go/pkg/mod/github.com/dgraph-io/ristretto@v0.0.2/cache.go:162 +0x347
Additional context
This particular folder contains some corrupted jpeg files and I know for a fact that some apps have trouble crawling them. I believe Photofield can't handle them and crashes.
Also hey, H_Q_ here.

Hi H_Q_!
It looks like the crash is due to an unexpected/unsupported format, not necessarily due to a corrupt file. I'll take a look when I get the chance!
Thanks for reporting!

v0.5.2 published soon should contain a fix for this 👍


chore: add installation via npm

This PR adds steps for installing $clipboard via NPM, couldn't personally get it to work with node's require so went with import instead.
Closes #3

Thanks @thinkverse, appreciate the contribution!

Thanks @thinkverse, appreciate the contribution!


[Feature request] Sync to multiple host with once saved.

Is this a similar or duplicate feature request?

[ ] I don't know. I will go check it.
[x] No.

Hello , Thank you for the  excellent project.
I will recomment feature support sync to multiple host with onec save.
it very easy for upload to multiple host.
because the profiles feature , can upload only selected profile.
and Multiple Context feature, not work with the same root path
[
  {
    "name": "server1",
    "context": "project/",
    "host": "host1",
    "username": "username",
    "password": "password",
    "remotePath": "/remote/project/"
  },
  {
    "name": "server2",
    "context": "project/",
    "host": "host2",
    "username": "username",
    "password": "password",
    "remotePath": "/remote/project/"
  }
]

Thank you so much.
CJ.
Does this project help you?

[x] Yes. SFTP IS my love!

+1 👍
It would be very useful :)

+1 👍
VERY useful!


True path violations under NON proteinogenic amino acid metabolic process

arginine biosynthetic process via ornithine (GO:0042450)
arginine catabolic process to ornithine (GO:0019547)
L-methionine biosynthetic process from L-homoserine via cystathionine (GO:0019279)
L-methionine biosynthetic process from homoserine via O-acetyl-L-homoserine and cystathionine (GO:0019280)
L-methionine biosynthetic process from homoserine via O-succinyl-L-homoserine and cystathionine (GO:0019281)

You mean they should be under 'proteinogenic'? If that's the case, you reported this 3 weeks ago here:
https://github.com/geneontology/go-ontology/issues/28367
Should we close one as redundant?

doh, in my head i was thinking this was different. I did know some were  not under proteinogenic that should be, but I didn 't realise they were actually in the wong place.

Are we tripping here over the fact that some proteinogenic amino acid biosynthetic pathways include intermediates that are also amino acids, like ornithine, but that are not themselves proteinogenic, so depending on the molecule you look at the process is proteinogenic (arginine) or not (ornithine), which is why (I still think) imposing this distinction at the level of amino acid biosynthesis is dangerous. Impose it instead at the level of the processes that consume arginine or ornithine or glutamate ...

No, the problem is the ph/.3 forms, see the other ticket: https://github.com/geneontology/go-ontology/issues/28367#issuecomment-2203300882

The ph forms is an issue, but I think @deustp01  is correct here. These have a weird parentage and it was on my list to report it.
For example
L-methionine biosynthetic process from L-homoserine via cystathionine (GO:0019279)
has

Some children of  "methionine biosynthetic process" are descendants of the  associated intermediate metabolic process  (which has  a none proteinogenic amino acid parent )  This seems to be the case for all of these examples above.

Isn't the problem  still going to exist  even after the zwitterion issue is resolved, because homoserine is an input ?

Is this the correct way to describe a pathway? I thought MFs have inputs and pathways have starts and ends?


Improve Clojure

Small changes.


"Image" feature

Add the ability to provide an URL of an image instead of a web page : The image will fit correctly on the printed page, avoiding image spread on several pages (in "web page" mode).
Plus, on Android, possibility to choose between fill or fit mode.

+1

@gkorland Project seems to have changed quite a lot since this PR was opened. Sorry, but I have no time at the moment to resolve conflicts and test it. Feel free to submit another (updated) PR based on what I wrote.


Missing AuthResult when login in Android

Hi,

Version 1.0.0 of twitter_login
The Android source isn't a flutterEmbedding v2

Everything works fine on iOS.
I had some problems interacting with the webview in Android. I could solve it adding this to the AndroidManifest.xml:
<intent-filter>
     <action android:name="android.intent.action.VIEW" />
     <category android:name="android.intent.category.DEFAULT" />
     <category android:name="android.intent.category.BROWSABLE" />
     <data android:scheme="twittersdk" android:host="" />
</intent-filter>

The current problem is that after the login() execution, nothing more happens when the Android webview is closed:
final AuthResult result = await twitterLogin.login(); // <-- here the webview is opened

if (result.status == TwitterLoginStatus.error) { // <-- never executed, even if the login flow is well
    return null;
}

Could you help me?

I think adding the intent filters is important step for Android, maybe it should be included in the readme?

@TheMedo
I think so too.

@TheMedo
Added to README about intent filters.
Please let me know if there are any problems.

@0maru amazing job, keep up the good work, this repo is handy!

But app still freezes for me at
final result = await _twitterLogin.login();
Auth flow comes back the app after redirect but further code is not executed.
I have right config for

@0maru
I added this callback URL (deep link) in the login function. I used this code and it didn't print anything, I think this function didn't return any information through deep link.
final twitterLogin = TwitterLogin(
      // Consumer API keys
      apiKey: '59Kpy9PTY8E1yIVImv4dFNiXs',
      // Consumer API Secret keys
      apiSecretKey: 'WuOAgq2nFjWKlEzn5ahzBDlE1tqwCMMx2Fxdwg6arAWvLUaeit',
      // Registered Callback URLs in TwitterApp
      // Android is a deeplink
      // iOS is a URLScheme
      redirectURI: 'https://instaface.page.link/jdF1',
    );
    final authResult = await twitterLogin.login(forceLogin: true);
    print(authResult.user.email); // user email address
    print(authResult.user.thumbnailImage); // user setting picture
    print(authResult.user.name); // user name
    print(authResult.user.screenName); // twitter account id

    switch (authResult.status) {
      case TwitterLoginStatus.loggedIn:
        print("twitter success");
        print(authResult.user.screenName);
        // success
        break;
      case TwitterLoginStatus.cancelledByUser:
        print("twitter cancelled");
        // cancel
        break;
      case TwitterLoginStatus.error:
        print("twitter error");
        print(authResult.errorMessage);
        // error
        break;
    }

This is in AndroidManifest
<intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="https://instaface.page.link/jdF1"/>
            </intent-filter>

@dungnc
Please try the following settings.
<intent-filter>
  <action android:name="android.intent.action.VIEW" />
  <category android:name="android.intent.category.DEFAULT" />
  <category android:name="android.intent.category.BROWSABLE" />
  <data android:scheme="https" android:host="***page.link" android:pathPattern="/jdF1">
</intent-filter>

Great, I can get the information now. Thank you so much.


zilencer: Add new mobile_pushes_requested::day LoggingCountStat.

Adds a new LoggingCountStat - mobile_pushes_requested::day tracking the number of push notifications requested by a remote server.

@timabbott Pushed with requested tweaks, and posted in https://github.com/zulip/zulip/pull/27321#discussion_r1369274607 with more thoughts on the migration commit

We also have this return value at the end of the bouncer endpoint code, right after doing the _forwarded increment:
    return json_success(
        request,
        data={
            "total_android_devices": len(android_devices),
            "total_apple_devices": len(apple_devices),
        },
    )

Since now the send_ function return the android_successfully_delivered and apple_successfully_delivered  values, we could return those instead. That's different this current behavior which just returns the number of devices registered. That probably makes more sense and nothing should currently be relying on that old behavior? So we may be able to do this as a follow-up too.

@timabbott Added the commit with the additional countstat for "successfully delivered notifications", as discussed.
We also have this old return value at the end of the bouncer endpoint code, right after doing the _forwarded increment:
    return json_success(
        request,
        data={
            "total_android_devices": len(android_devices),
            "total_apple_devices": len(apple_devices),
        },
    )

Since now the send_ functions return the android_successfully_delivered and apple_successfully_delivered  values, we could return those instead. That's different from this current behavior which just returns the number of devices registered. That probably makes more sense and nothing should currently be relying on that old behavior? So we may be able to do this as a follow-up too.

Since now the send_ functions return the android_successfully_delivered and apple_successfully_delivered  values, we could return those instead. That's different from this current behavior which just returns the number of devices registered.

This seems like a good follow-up though maybe not one for the next couple weeks -- we may also want to adjust the return values to indicate which devices are rejected by the third-party server more clearly.

This lgtm, merged, thanks @mateuszmandera!

Since now the send_ functions return the android_successfully_delivered and apple_successfully_delivered  values, we could return those instead. That's different from this current behavior which just returns the number of devices registered.

This seems like a good follow-up though maybe not one for the next couple weeks -- we may also want to adjust the return values to indicate which devices are rejected by the third-party server more clearly.

Opened https://github.com/zulip/zulip/issues/27483 to track this


Issues uploading media

I'm having trouble whenever I try to upload any media through the frontend (like changing a project's logo).

From what I can gather, you upload media to an Amazon S3 Bucket, and since I have my own, I'd like to use it, but I can't find anywhere in the config files where to change this. Am I missing something here?

The bucket is configured through the MediaStorage, which is set up using config/storage.yml. The template you'll find in the repo doesn't really explain that too well, here's what we're using in production (AWS client credentials get automatically assigned):
production:
  adapter: aws
  bucket: zooniverse-static
  prefix: panoptes-uploads.zooniverse.org/production/

also see the secion, Setting AWS Credentials in http://docs.aws.amazon.com/sdk-for-ruby/latest/DeveloperGuide/aws-ruby-sdk-getting-started.html
we use env variables in the container running the app, http://docs.aws.amazon.com/sdk-for-ruby/latest/DeveloperGuide/aws-ruby-sdk-getting-started.html#aws-ruby-sdk-credentials-environment

Apparently I managed to set up the config in storage.yml with my credentials, but I'm still getting the same error as before (as seen in the screenshot above). How can I make sure that I actually set everything up correctly? Is it possible that I also need to change something in the front-end code? Thanks for your answers!

Don't put the aws credentials in the storage.yml, put then in to env variables of the session / cmd that runs the api.
As per the docs linked above.

Set the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables.

Use the export command to set these variables on a Unix-based systems, such as Linux or OS X. The following example sets the value of your access key to your_access_key_id and the value of your secret access key to your_secret_access_key.

If running under docker-compose then you can edit the docker-compose env variables for the api here, perhaps something like:
panoptes:
  dockerfile: Dockerfile.dev
  build: ./
  volumes:
    - ./:/rails_app
  ports:
    - "3000:3000"
  environment:
    - "RAILS_ENV=development"
    - "CELLECT_ON=true"
    - "CELLECT_MIN_POOL_SIZE=100"
    - "ATTENTION_REDIS_URL=redis://redis:6379/1"
    - "AWS_ACCESS_KEY_ID=your_access_key_id"
    - "AWS_SECRET_ACCESS_KEY=your_secret_key"
  links:
    - redis:redis
    - postgres:pg

If running manually outside of docker you'll have to start rails with the env vars exported to the session running the process export AWS_ACCESS_KEY_ID=your_key_id or just set the env var at runtime,
AWS_ACCESS_KEY_ID=key_id AWS_SECRET_ACCESS_KEY=secret_key bundle exec puma -C config/puma.rb

Yeah, sorry, I didn't actually put them in storage.yml, poorly worded on my part. It seems like it's working now, although I'm getting some CORS Headers missing thing which I'll fix in a bit. Thanks a lot!

great stuff! closing for now, please open a new ticket for CORS errors if you need.


[docs] Add getInstance and getOrCreateInstance methods to documentation

Prerequisites

[X] I have searched for duplicate or closed feature requests
[X] I have read the contributing guidelines

Proposal
Please add to the doc how to use bootstrap javascript components without jQuery, specially getInstance and getOrCreateInstance static methods.
Motivation and context
I searched documentation about how to use bootstrap javascript components without jQuery, but without luck. So I used new bootstrap.tooltip(ele) and behaviour was weird. Then I searched sources and found createInstance and getOrCreateInstance methods and it solved my problems. So please add it to the docs.

Every component page has a mention of both methods.


warnings and error

"react-native": "0.54.1",
"react-native-af-video-player": "^0.2.0",
OS : windows 10
i am getting these sometimes when full screen pressed sometimes
1)Warning:Failed prop type: Invalid prop color supplied to Icon.
in Icon (at Video.js:316)
2)Warning: Failed prop type: Invalid prop color supplied to Text: [object Object]
Valid color formats are

'#f0f' (#rgb)
'#f0fc' (#rgba)
'#ff00ff' (#rrggbb)
'#ff00ff00' (#rrggbbaa)
'rgb(255, 255, 255)'
'rgba(255, 255, 255, 1.0)'
'hsl(360, 100%, 100%)'
'hsla(360, 100%, 100%, 1.0)'
'transparent'
'red'
0xff00ff00 (0xrrggbbaa)

Bad object: {
"fontSize": 60,
"color": {
"title": "#FFF",
"more": "#FFF",
"center": "#FFF",
"fullscreen": "#FFF",
"volume": "#FFF",
"scrubberThumb": "#FFF",
"scrubberBar": "#FFF",
"seconds": "#FFF",
"duration": "#FFF",
"progress": "#FFF",
"loading": "#FFF"
},
"fontFamily": "MaterialIcons",
"fontWeight": "normal",
"fontStyle": "normal"
}
in Text (at create-icon-set.js:82)
in Icon (at Video.js:316)
3)TypeError: Cannot read property 'seek' of null
This error is located at:
in Video

hey @crzycoder sry for the late replay
do not fix the color="white" as static
i have changed it to
color={this.props.theme,iconColor}  in the <Icons /> in the video.js file in react-native-af-video library
and in your code where you are calling react-native-af-video-player you can do like this
<Video
......
theme={styles.videoTheme} />

where you can pass the theme as declared styles from there it will take iconColor.
you can also pass the color to different views like this
const styles={
  videoTheme :
  {title:'#FFF',
  more: '#FFF',
  center: '#FFF',
  fullscreen: '#FFF',
  volume: '#FFF',
  scrubberThumb: '#FFF',
  scrubberBar: '#FFF',
  seconds: '#FFF',
  duration: '#FFF',
  progress: '#FFF',
  loading: '#FFF',
  iconColor:'#FFF'},
}

Make these two changes:
diff --git a/node_modules/react-native-af-video-player/components/Time.js b/node_modules/react-native-af-video-player/components/Time.js
index 01be913..9e847ac 100644
--- a/node_modules/react-native-af-video-player/components/Time.js
+++ b/node_modules/react-native-af-video-player/components/Time.js
@@ -32,7 +32,7 @@ class Time extends Component {
   render() {
     return (
       <View style={styles.container}>
-        <Text style={{ color: this.props.theme }}>{this.getTime(parseInt(this.props.time, 10))}</Text>
+        <Text style={{ color: this.props.theme.iconColor }}>{this.getTime(parseInt(this.props.time, 10))}</Text>
       </View>
     )
   }
diff --git a/node_modules/react-native-af-video-player/components/Video.js b/node_modules/react-native-af-video-player/components/Video.js
index 258171b..ae7cfd6 100644
--- a/node_modules/react-native-af-video-player/components/Video.js
+++ b/node_modules/react-native-af-video-player/components/Video.js
@@ -318,7 +318,7 @@ class Video extends Component {
         <Icons
           name="replay"
           size={60}
-          color={this.props.theme}
+          color={this.props.theme.iconColor}
           onPress={() => this.setState({ renderError: false })}
         />
       </Animated.View>

And then the theme will work correctly. Im using patch-package. npx patch-package react-native-af-video-player will apply it for you without waiting on this library to be updated.


Soft validate using bash with the exec mixin

Print a cowsay warning (relies on #944) when someone uses bash -c "some command" using the exec mixin and link them to the exec mixin best practice to encourage them to do anything else instead.

This has been released in v0.25.0-beta.1. I had to forgo cowsay for now, it prints in a standard format but who knows what the future holds? 🐮


Error in citation convention for negation elimination

In the explanation of negation elimination, the current version says: "we always cite the sentence first, followed by its negation" (116). But where the rule is presented immediately above this, the negation of the sentence is cited first, followed by the sentence.
(Thanks for the fantastic resource!)

I think we don't care which order they're cited in (e.g. for biconditional rule there's no additional specification of citation order) so we should remove that sentence Jennifer highlights.

Done. The other E rules do in fact specify the order. Of course you're free to not enforce that but some people may want it. I've left it in but fixed it. Thanks for reporting it!

Say hi to Clinton and and Kerry for me.


noarch: python Rule

Some credit goes to @ELundby45 for this idea
I've seen noarch: python -> skip: true # [py<37] as a suggested piece of feedback in several of my PRs lately.
Should we add it as a rule to catch that mistake?

You mean this one? https://github.com/anaconda-distribution/anaconda-linter/blob/main/anaconda_linter/lint/check_build_help.py#L429
If you have noarch packages that the Linter doesn't catch, then there is a bug in the linter.

I just re-ran a test as a sanity check and I guess I found a bug.
In fact, I don't think I've ever seen this rule trigger a warning, so it might be more than one package.

I can reproduce this. I will take a look


Anerdw: Blacklist +1-855-615-3722

Anerdw requests the blacklist of the number +1-855-615-3722. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by Jeff Schaller in Charcoal HQ


use a "fake broker" for travis testing

Fixes: https://github.com/IBM-Bluemix/gp-js-client/issues/39

LGTM