Get anchors for my dataset

I have 2 question.

I label for my data into .xml file on annotations folder. So how i can generate for my anchor for yolov2 without using default anchors ?
I label for about 2500 cat's images like this.

I train for 2500 images to detect face's cat. But, my train got loss = 0.09 in only 4/100 epochs.
When my train finish. it detect incorrectly. How can i fix it ?

Thank you so much.

You can generate the anchors for your dataset with this script
https://github.com/experiencor/keras-yolo2/blob/master/gen_anchors.py
In most of situations, default anchors are just fine. Meaning that your problem is very likely NOT related to anchors. By the way in the sample image you uploaded you only put cat's face in the bounding box, not the whole cat. Not sure if it's your intent.
2)Can you share a)your config file b)whole training history graph(.jpg picture found in project's folder) c)how many images are in the validation dataset?

Thank you for your reply,
I also had get my anchor from
https://github.com/experiencor/keras-yolo2/blob/master/gen_anchors.py 2
days ago.
My config.json is below.
And the picture is my train result.
[image: YOLO_best_mAP.jpg]
But when I test on my K210 dan dock,  I seem not good. like this.
So how I can improve my model to detect on K210 dan dock. I use about 2500
images to train and 500 images in val_images folder.
Thank you so much.
Vào Th 2, 10 thg 8, 2020 vào lúc 10:28 AIWintermuteAI <
<EMAIL_ADDRESS>đã viết:

You can generate the anchors for your dataset with this script
https://github.com/experiencor/keras-yolo2/blob/master/gen_anchors.py
In most of situations, default anchors are just fine. Meaning that
your problem is very likely NOT related to anchors. By the way in the
sample image you uploaded you only put cat's face in the bounding box, not
the whole cat. Not sure if it's your intent.
2)Can you share a)your config file b)whole training history graph(.jpg
picture found in project's folder) c)how many images are in the validation
dataset?

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AIWintermuteAI/aXeleRate/issues/22#issuecomment-671147167,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFNNTY5KPMJPJBLG6EU4YTR75SMRANCNFSM4PWWV2RQ
.

config = {
"model":{
"type":                 "Detector",
"architecture":         "MobileNet1_0",
"input_size":           224,
"anchors":              [1.03,1.29, 1.79,2.22, 2.80,3.09, 3.37,4.45, 4.87,5.25],
"labels":               ["cat"],
"coord_scale" : 		1.0,
"class_scale" : 		1.0,
"object_scale" : 		5.0,
"no_object_scale" : 	1.0
},
"weights" : {
"full":   				"",
"backend":   		    "imagenet"
},
"train" : {
"actual_epoch":         100,
"train_image_folder":   "dataset/imgs",
"train_annot_folder":   "dataset/anns",
"train_times":          1,
"valid_image_folder":   "dataset/imgs_validation",
"valid_annot_folder":   "dataset/anns_validation",
"valid_times":          1,
"valid_metric":         "mAP",
"batch_size":           16,
"learning_rate":        1e-4,
"saved_folder":   		F"/content/drive/My Drive/cat",
"first_trainable_layer": "reshape_1",
"augumentation":				False,
"is_only_detect" : 		False
},
"converter" : {
"type":   				["k210","tflite"]
}
}

The pictures are not showing in your post

I am sorry, I will send some pictures.
My model I trained is only to detect cat's face. But when I test, it detect
dog's, raccoon's face.
And if cat's is more, I have only one big bounding box around them.
Vào Th 2, 10 thg 8, 2020 vào lúc 12:49 AIWintermuteAI <
<EMAIL_ADDRESS>đã viết:

The pictures are not showing in your post
[image: image]
https://user-images.githubusercontent.com/32562299/89754934-36964980-db10-11ea-8fed-21926ec866dc.png
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AIWintermuteAI/aXeleRate/issues/22#issuecomment-671172952,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFNNTZANE4UQYDNPUOFY3LR76C5RANCNFSM4PWWV2RQ
.

I also have one question is:
My kmodel has 3.18M, so I only run python to k210 via terminal (with
minimal firmware). So how I can run my code python on k210 alltime.
With full firmware, I trying copying kmodel into sdcard, then  try using
kpu.load but I also got the error: out of memmory.
I am looking forward to hearing from you soon.
Thank you.
Vào 15:25, T.2, 10 Th8, 2020 Anh Nguyễn<EMAIL_ADDRESS>đã viết:

I am sorry, I will send some pictures.
My model I trained is only to detect cat's face. But when I test, it
detect dog's, raccoon's face.
And if cat's is more, I have only one big bounding box around them.
Vào Th 2, 10 thg 8, 2020 vào lúc 12:49 AIWintermuteAI <
<EMAIL_ADDRESS>đã viết:

The pictures are not showing in your post
[image: image]
https://user-images.githubusercontent.com/32562299/89754934-36964980-db10-11ea-8fed-21926ec866dc.png
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AIWintermuteAI/aXeleRate/issues/22#issuecomment-671172952,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFNNTZANE4UQYDNPUOFY3LR76C5RANCNFSM4PWWV2RQ
.

Yes, full firmware cannot run MobileNet alpha = 1.0 models, they're too big to fit in the memory with all the extra stuff full version of firmware has.
You can burn your model to K210 flash memory and load it from there. To have your code start on boot, you need to copy your code to boot.py (there is an option to do that in MaixPy IDE).
Concerning your cat head problem, I'm still waiting for picture of training graph. Additional question is - how does the Keras model perform? You can check it's performance using
https://github.com/AIWintermuteAI/aXeleRate/blob/master/axelerate/infer.py
or if you're running in Colab, after training run
setup_inference(config, model_path)
If you're only doing this project as hobby and not concerned about NDA, then sharing dataset would help greatly to hone on the problem.

Thank you for your reply,
I attached some pictures.(picture of training graph, my test, infer).
I am very happy to share my dataset with you. This is my dataset to detect
cat's face. Iam also increasing images to 4000images to train again.
https://drive.google.com/file/d/1ZRTPkM2zRr__dwFVNZjF8B_1Aoe6Qrp8/view?usp=sharing
According to your answer, MobileNet alpha = 1.0 will generate models 3.16M
(It can run on full firmware) and  MobileNet alpha = 0.75  will generate
models 1.81M(It can run on full firmware) ? Can I use sdcard to save model
3.16M to run because I new  alpha = 1.0  > alpha = 0.75 ?
So can you give me some advice to improve my model ?
And, My K210 using Camera 2MP can I replace it with another camera which
has higher MP to improve my detect.
Thank you so much.
Vào Th 5, 13 thg 8, 2020 vào lúc 16:57 AIWintermuteAI <
<EMAIL_ADDRESS>đã viết:

Yes, full firmware cannot run MobileNet alpha = 1.0 models, they're too
big to fit in the memory with all the extra stuff full version of firmware
has.
You can burn your model to K210 flash memory and load it from there. To
have your code start on boot, you need to copy your code to boot.py (there
is an option to do that in MaixPy IDE).
Concerning your cat head problem, I'm still waiting for picture of
training graph. Additional question is - how does the Keras model perform?
You can check it's performance using
https://github.com/AIWintermuteAI/aXeleRate/blob/master/axelerate/infer.py
or if you're running in Colab, after training run
setup_inference(config, model_path)
If you're only doing this project as hobby and not concerned about NDA,
then sharing dataset would help greatly to hone on the problem.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AIWintermuteAI/aXeleRate/issues/22#issuecomment-673383781,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFNNTY5QEXQT4EC2XU77LDSAO2HPANCNFSM4PWWV2RQ
.

Thank you for your reply,
I attached some pictures.(picture of training graph, my test, infer). This
folder inference_results :
https://drive.google.com/drive/folders/1-UJBXCjj7NB-LSbC1riwCfXFiXtC5C0n?usp=sharing
I am very happy to share my dataset with you. This is my dataset to detect
cat's face. Iam also increasing images to 4000images to train again.
https://drive.google.com/file/d/1ZRTPkM2zRr__dwFVNZjF8B_1Aoe6Qrp8/view?usp=sharing

According to your answer, MobileNet alpha = 1.0 will generate models
3.16M (Can it run on mini firmware ? ) and  MobileNet alpha = 0.75  will
generate models 1.81M(Can it run on full firmware ?) ?
Can I use sd-card to save model 3.16M to run on k210 dan dock ? because
I know architecture MobileNet has  alpha = 1.0  better than alpha = 0.75,
is that right ?
So can you give me some advice to improve my model, please ?
And, My K210 using Camera 2MP can I replace it with another camera which
has higher MP to improve my detection ?
Thank you so much.

Vào Th 5, 13 thg 8, 2020 vào lúc 16:57 AIWintermuteAI <
<EMAIL_ADDRESS>đã viết:

Yes, full firmware cannot run MobileNet alpha = 1.0 models, they're too
big to fit in the memory with all the extra stuff full version of firmware
has.
You can burn your model to K210 flash memory and load it from there. To
have your code start on boot, you need to copy your code to boot.py (there
is an option to do that in MaixPy IDE).
Concerning your cat head problem, I'm still waiting for picture of
training graph. Additional question is - how does the Keras model perform?
You can check it's performance using
https://github.com/AIWintermuteAI/aXeleRate/blob/master/axelerate/infer.py
or if you're running in Colab, after training run
setup_inference(config, model_path)
If you're only doing this project as hobby and not concerned about NDA,
then sharing dataset would help greatly to hone on the problem.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AIWintermuteAI/aXeleRate/issues/22#issuecomment-673383781,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFNNTY5QEXQT4EC2XU77LDSAO2HPANCNFSM4PWWV2RQ
.

Hi, I've tried training MobileNet alpha = 0.75 with your dataset yesterday, trained with the following config on Google Colab
config = {
        "model":{
            "type":                 "Detector",
            "architecture":         "MobileNet7_5",
            "input_size":           224,
            "anchors":              [0.57273, 0.677385, 1.87446, 2.06253, 3.33843, 5.47434, 7.88282, 3.52778, 9.77052, 9.16828],
            "labels":               ["cat"],
            "coord_scale" : 		1.0,
            "class_scale" : 		1.0,
            "object_scale" : 		5.0,
            "no_object_scale" : 	1.0
        },
        "weights" : {
            "full":   				"",
            "backend":   		    "imagenet"
        },
        "train" : {
            "actual_epoch":         50,
            "train_image_folder":   "dataset/images",
            "train_annot_folder":   "dataset/annotations",
            "train_times":          1,
            "valid_image_folder":   "dataset/val_images",
            "valid_annot_folder":   "dataset/val_annotations",
            "valid_times":          1,
            "valid_metric":         "mAP",
            "batch_size":           32,
            "learning_rate":        1e-3,
            "saved_folder":   		F"/content/drive/My Drive/cats",
            "first_trainable_layer": "",
            "augumentation":				True,
            "is_only_detect" : 		False
        },
        "converter" : {
            "type":   				["k210"]
        }
    }

The best mAP was 0.5(or 50 percent), which is not stellar, but not bad. A lot of inference results looked good, but then there is also a visible false positives problem, which is something that you mentioned before and it can be seen in your inference results as well.

Tweaking these two parameters influences how much network is penalized(in loss function) for false positives and false negatives.
"object_scale" : 		5.0,
"no_object_scale" : 	1.0
object_scale determines how much to penalize wrong prediction of confidence of object predictors
no_object_scale determines how much to penalize wrong prediction of confidence of non-object predictors
coord_scale determines how much to penalize wrong position and size predictions (x, y, w, h)
class_scale determines how much to penalize wrong class prediction
So raising no_object_scale will penalize network more for predicting cat face when there is in fact no cat face. It will lead to lower detection rate overall though.

According to your answer, MobileNet alpha = 1.0 will generate models
3.16M (Can it run on mini firmware ? ) and  MobileNet alpha = 0.75  will
generate models 1.81M(Can it run on full firmware ?) ?
Yes. Yes. But for firmware questions it is better to go to MaixPy Github - their software development team can provide better answers. Also keep in mind that you can configure and compile firmware yourself pretty easily to pick only the things you need -
https://github.com/sipeed/MaixPy/blob/master/build.md

Can I use sd-card to save model 3.16M to run on k210 dan dock ? because
I know architecture MobileNet has  alpha = 1.0  better than alpha = 0.75,
is that right ?
Well, larger network is not necessarily better. Does alpha 1.0 produces better better results(better mAP, less false positives)? In theory yes, it should be possible to run the model from SD card if it possible to run it from flash - however if you are getting out of memory errors, it means some part of memory is being used for reading files from SD card. This question is definitely better asked on MaixPy repository.

So can you give me some advice to improve my model, please ?
I think your main problem at this point is false positives. See my comment above. You can also try two-stage training, I already mentioned it before in issues:
One advanced technique that showed the improvements for some of my projects was to train the classifier first, and then use feature extractor from that classifier as backend weights for detector.
For example your end goal is to train dog detector - then you could train a cat-dog classifier first(with "save_bottleneck_weights" parameter enabled) and then use bottleneck_weights.h5 file as backend_weights for when training a dog detector.

And, My K210 using Camera 2MP can I replace it with another camera which
has higher MP to improve my detection ?
The model still will take much smaller image than 2MP. So I don't think changing camera will make too much difference.

Thank you so much. Uhmmm, I'm modifying no_object_scale, and train again. And :
1.Can you give me a full firmware which can I model 1.81M ? MobileNet alpha = 0.75 will generate models 1.81M. I looked a lot but I can run my model(1.81M) on full firmwares.
2. Can you guide me more about training classifier pre-train .h5 for my project(cat's face). (change config file, my dataset folder,...

Can you give me a full firmware which can I model 1.81M ? MobileNet alpha = 0.75 will generate models 1.81M. I looked a lot but I can run my model(1.81M) on full firmwares.

sorry, I don't understand your issue. you can download full firmware from MaixPy downloads website, I myself don't have it.

Can you guide me more about training classifier pre-train .h5 for my project(cat's face). (change config file, my dataset folder,...

Basically you just need to train a classifer first and set
https://github.com/AIWintermuteAI/aXeleRate/blob/7cec5e510b422c8f63ca29e31c92569e365ce6e4/configs/classifier.json#L13
option to True
When training session is finished, the script will also save feature extractor(or "backend")  as bottleneck_weights.h5 in the project folder. You then use this bottleneck_weights.h5 file as weights for detector network backend by specifying them in this line of config
https://github.com/AIWintermuteAI/aXeleRate/blob/7cec5e510b422c8f63ca29e31c92569e365ce6e4/configs/detector.json#L15
so instead of imagenet it will be the path to your bottleneck_weights file.

oh, I trained model with architecture mobilenet7_5 and it generate 1.81M
kmodel, I flash kmodel at 0x200000, but I only run code via terminal with
minimal firmware, full firmware does not, so code does not save when board
reset.
So how i can save code on board to load that model when power on.
Vào 12:41, T.5, 20 Th8, 2020 AIWintermuteAI<EMAIL_ADDRESS>đã
viết:

Can you give me a full firmware which can I model 1.81M ? MobileNet alpha
= 0.75 will generate models 1.81M. I looked a lot but I can run my
model(1.81M) on full firmwares.
sorry, I don't understand your issue. you can download full firmware from
MaixPy downloads website, I myself don't have it.
Can you guide me more about training classifier pre-train .h5 for my
project(cat's face). (change config file, my dataset folder,...
Basically you just need to train a classifer first and set
https://github.com/AIWintermuteAI/aXeleRate/blob/7cec5e510b422c8f63ca29e31c92569e365ce6e4/configs/classifier.json#L13
option to True
When training session is finished, the script will also save feature
extractor(or "backend") as bottleneck_weights.h5 in the project folder. You
then use this bottleneck_weights.h5 file as weights for detector network
backend by specifying them in this line of config
https://github.com/AIWintermuteAI/aXeleRate/blob/7cec5e510b422c8f63ca29e31c92569e365ce6e4/configs/detector.json#L15
so instead of imagenet it will be the path to your bottleneck_weights file.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AIWintermuteAI/aXeleRate/issues/22#issuecomment-677174309,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFNNTYYXZXE3ICIJDOHWR3SBSZSLANCNFSM4PWWV2RQ
.

maixpy_v0.5.0_123_g859098d_minimum_with_ide_support.bin
Use the firmware with tag minimum_with_ide_support or build one yourself configured to use IDE, but not other modules following the instructions here
https://github.com/sipeed/MaixPy/blob/master/build.md
To have your code start on boot, you need to copy your code to boot.py (there is an option to do that in MaixPy IDE).

Thank you, but when I run code to load kmodel 1.81 with this firmware I got
error : ValueError: [MAIXPY]kpu: load error:2002, ERR_KMODEL_VERSION: only
support kmodel V3.
I know that nncase 0.1.0-rc5 will convert kmodel v3, nncase 0.2.0-beta will
convert kmodel v4, is that right ?
Following your instructions, You use nncase 0.2.0-beta  to convert. I try
to change the link in convert.py, and run it but nothing happens. Perhaps,
Your srouce code is block.
Can I replace it to convert tflife to k210 ( kmode V3) to run with "minimal
firmware with IDE" you shared with me?
(
https://github.com/kendryte/nncase/releases/download/v0.1.0-rc5/ncc-linux-x86_64.tar.xz
)
Vào Th 5, 20 thg 8, 2020 vào lúc 14:16 AIWintermuteAI <
<EMAIL_ADDRESS>đã viết:

maixpy_v0.5.0_123_g859098d_minimum_with_ide_support.bin
Use the firmware with tag minimum_with_ide_support or build one yourself
configured to use IDE, but not other modules following the instructions here
https://github.com/sipeed/MaixPy/blob/master/build.md
To have your code start on boot, you need to copy your code to boot.py
(there is an option to do that in MaixPy IDE).
https://dl.sipeed.com/MAIX/MaixPy/release/master/maixpy_v0.5.0_123_g859098d
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/AIWintermuteAI/aXeleRate/issues/22#issuecomment-677401284,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALFNNT6ZG2TOWDD6CU2I5TLSBTEUHANCNFSM4PWWV2RQ
.

Oh, right, they switch to build firmware with kmodel v4 support turned off by default... Not sure why really.
0.1.0-rc5 and 0.2.0-beta are two very different converters, they use different command line arguments - so just changing the link will not work, if you want kmodel v3 you might be better off just converting the model manually.
What I would suggest still is that you build the firmware with both kmodel v4 and IDE support enabled. Or use this one I built just now.
maixpy.zip


Add ethereum config

Coverage increased (+0.05%) to 33.858% when pulling 3cd648cb2a5a362d31d2b7f40f9b71e23f7bb204 on amangale:ethconfig into e4141ef7377425a109be51aeaf932eb3451a3f2b on OpenBazaar:multiwallet.

Reopening as merging multiwallet (which this PR was targetted at) was resolved without this PR.


Add useatom

What changed in this PR:
Introduce a useAtom hook. Documentation: https://melody-js.gitbook.io/docs/melody-hooks-api/useatom

@malte-wessel Could you take a look at this?


 Rasterio can read the image, but it seems localtileserver can't render it.
import rasterio
from rasterio.session import AWSSession
from ipyleaflet import Map
from localtileserver import TileClient, get_leaflet_tile_layer

aws_session = AWSSession(
    aws_access_key_id='***',
    aws_secret_access_key='***',
    requester_pays=True
)

s3_path = 's3://naip-analytic/tn/2021/60cm/rgbir_cog/34084/m_3408401_ne_16_060_20210404.tif'
# s3_path = 's3://maxar-opendata/events/Kahramanmaras-turkey-earthquake-23/ard/36/120022103023/2023-02-21/104001008314FC00-ms.tif'
with rasterio.Env(session=aws_session):

    src = rasterio.open(s3_path)
    print(src.meta)

    client = TileClient(src)
    t = get_leaflet_tile_layer(client, band=[1, 2, 3])
    m = Map(center=client.center(), zoom=client.default_zoom)
    m.add_layer(t)

m

The with rasterio.Env(session=aws_session): context likely won't work (at this time) since localtileserver launches a new thread for the tile server (not passing the context).
If you set these AWS env params in the environment of the host, it should work without issue.
I'm still trying to massively refactor localtileserver and will try to account for this usage scenario better

This is definitely doable, but I'm trying to come up with the best/safest approach here.
One thing I just realized is the os.environ seems to be shared across the threads:
import rasterio
from rasterio.session import AWSSession
from fastapi import FastAPI
from server_thread import ServerThread
import requests
import os
import json

app = FastAPI()
@app.get("/")
def root():
    # this is where we would do all our tileserving magic and need access to the Env
    return json.loads(os.environ["LOCALTILESERVER_ENV"])

aws_session = AWSSession(
    aws_unsigned=True
)

with rasterio.Env(session=aws_session):
    os.environ["LOCALTILESERVER_ENV"] = json.dumps(rasterio.env.getenv())
    server = ServerThread(app)
    response = requests.get(f"http://{server.host}:{server.port}/")

respons.json()

But this doesn't feel right to me... and I'm pretty sure would conflict if multiple Envs are set in one session.

Just came accross the rio-tiler-pds package. Seems relevant to the issue here.

https://github.com/developmentseed/titiler/issues/186 might be of interest

@banesullivan @vincentsarago Thank you both for the pointers. I was able to make it work by setting the environment variables.
import os
from ipyleaflet import Map
from localtileserver import TileClient, get_leaflet_tile_layer

os.environ["AWS_ACCESS_KEY_ID"] = "YOUR-KEY"
os.environ["AWS_SECRET_ACCESS_KEY"] = "YOUR-TOKEN"
os.environ["AWS_REQUEST_PAYER"] = "requester"

src = 's3://naip-analytic/tn/2021/60cm/rgbir_cog/34084/m_3408401_ne_16_060_20210404.tif'
client = TileClient(src)
t = get_leaflet_tile_layer(client, indexes=[1, 2, 3])
m = Map(center=client.center(), zoom=client.default_zoom)
m.add_layer(t)
m


error 0xC0000022

i dont know what to do, i tried everything but it still doesnt work, sitll when i try to inject it shows me the same error

same here


[5.8] Add back -no-toolchain-stdlib-rpath when installing sourcekit-lsp on linux

Cherrypick of #715
Explanation: Pull #597 incorrectly removed this, as it's still needed on ELF platforms.
This was fine in 5.7.3, but will regress in 5.8 without this pull:
> readelf -d swift-5.*-ubuntu20.04/usr/bin/sourcekit-lsp |ag "File:|runpath"
File: swift-5.7.3-RELEASE-ubuntu20.04/usr/bin/sourcekit-lsp
 0x000000000000001d (RUNPATH)            Library runpath: [$ORIGIN:$ORIGIN/../lib/swift/linux]
File: swift-5.8-DEVELOPMENT-SNAPSHOT-2023-03-07-a-ubuntu20.04/usr/bin/sourcekit-lsp
 0x000000000000001d (RUNPATH)            Library runpath: [/home/build-user/swift-nightly-install/usr/lib/swift/linux:$ORIGIN:$ORIGIN/../lib/swift/linux]

Note the incorrect /home/build-user/... runpath in the 5.8 snapshot, which could be a security issue.
Scope: Only affects the runpath for the sourcekit-lsp executable on linux
SR Issue: None
Risk: None, simply lowers security risk
Testing: The CI was run when this was merged into trunk, including a full toolchain build.
Reviewer: @ahoppen
@airspeedswift, would be good to get this regression corrected before the 5.8 release. I will add an integration test in the coming weeks so that these runpath regressions don't happen again.

Ping @airspeedswift, too late to get this into 5.8? Would like to get it into the next patch release if so.

@swift-ci Please test

Glad to see this in.


Link checker: Qiskit legacy release notes in a single FileBatch

The legacy release notes of qiskit were generated from qiskit 0.45 and we need to check them loading those docs. This PR groups together all the legacy release notes in a FileBatch to avoid loading the same docs multiple times.
We define a legacy version to be prior to qiskit 0.45. In order to compare which version is newer or older than 0.45, this PR introduces a new function named compareReleaseNotes. We can't use simple comparisons like +version < 0.45 as we do in the other scripts because the comparison between version 0.5 and 0.45 will be incorrect.

PR description is out of date btw


E0611:No name 'urlresolvers' in module 'django.core'

in your tutorial I get an error when I get to the test for the views at the end.
linter gives this error.
E0611:No name 'urlresolvers' in module 'django.core'

What version of Django are you using? It appears that Django 2.0 removed the django.core.urlresolvers module, which was moved to django.urlsin version 1.9. You should change any import to use django.urls instead.
Note that Django 2.0 removes some features that previously were in django.core.urlresolvers, so you might have to make some more changes before your code works.
Jee Githinji Gikera / Andela.com
Whimsical Software Engineer /<PHONE_NUMBER> / @Andela
"The startup that's harder to get into than Harvard" - CNN
See what The Wall Street Journal has to say.
On 9 Dec 2017, 05:19 +0300, wrote:

No name 'urlresolvers' in module 'django.core'

I just found the release notes on version 2.0. It looks like they moved the urlresolvers namespace under django.urls.
Updating the include to the new location makes the tests move onto the next error.
There is an error in the test can update a bucket list, this is minor and I think i got it figured out.
Thanks for the help.

Much obliged @cgoss  :-)
Jee Githinji Gikera / Andela.com
Whimsical Software Engineer /<PHONE_NUMBER> / @Andela
"The startup that's harder to get into than Harvard" - CNN
See what The Wall Street Journal has to say.
On 11 Dec 2017, 03:16 +0300, cgoss<EMAIL_ADDRESS>wrote:

I just found the release notes on version 2.0. It looks like they moved the urlresolvers namespace under django.urls.
Updating the include to the new location makes the tests move onto the next error.
There is an error in the test can update a bucket list, this is minor and I think i got it figured out.
Thanks for the help.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.


FI/DK RTX 3090 FE API ID is incorrect, constant false positives

Description
Using STORES nvidia-api , COUNTRY finland (supposedly denmark too) the snatcher is constantly making false positives. The API link directs to this site which is for the FI/DK 3090 NVLink bridge. That product is in stock, thus the positive alerts.
Possible solution
Change the ID to a correct one. Unfortunately I'm not a software engineer or developer, so I don't have the knowhow to find the ID myself. If someone knows how to find it, please help me out.

Thanks for reporting this @AssiveMass, unfortunately I was not able to find an id for the 3090. I've created a pull request to remove the incorrect ids to remove the false positives in #361; if you come across the correct id please let us know!

@andrewmackrodt Hi! Seems that Nvidia/Digital River added the 3090 FE to FI/DK api. Here's the link


master isn't building via maven

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building TestNG 6.9.11-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for org.apache.maven.plugins:maven-jar-plugin:jar:3.0.0-SNAPSHOT is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.747 s
[INFO] Finished at: 2016-01-04T12:10:08+05:30
[INFO] Final Memory: 8M/156M
[INFO] ------------------------------------------------------------------------
[ERROR] Plugin org.apache.maven.plugins:maven-jar-plugin:3.0.0-SNAPSHOT or one of its dependencies could not be resolved: Could not find artifact org.apache.maven.plugins:maven-jar-plugin:jar:3.0.0-SNAPSHOT -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginResolutionException

org.apache.maven.plugins:maven-jar-plugin:jar:3.0.0-SNAPSHOT isn't publicly available.

It's building with gradle and kobalt, I haven't used mvn to build TestNG in a while...

As https://github.com/nhojpatrick/testng/commit/570aeb9d1cbb5089122e2a4407b18660323d307e only changes pom.xml breaks maven build.

just a thought

if we have three builds then all should run symmetric (same dependences and options)
else we should deprecate and delete what we deem legacy.
just gives more clarity to the forker.

Yes, I should probably delete pom.xml since it’s really not used at all any
more.

Cédric
On Mon, Jan 4, 2016 at 8:19 PM, Nitin Verma<EMAIL_ADDRESS>wrote:

just a thought

if we have three builds then all should run symmetric (same dependences
and options)
else we should deprecate and delete what we deem legacy.
just gives more clarity to the forker.

—
Reply to this email directly or view it on GitHub
https://github.com/cbeust/testng/issues/947#issuecomment-168721823.

:+1:

off-topic: can kobalt be used for android builds? flavors/build-types/progaurd/dependency{jar,aar}

I should probably delete pom.xml since it’s really not used at all any more.

I cant' remember why, but @missedone asked it some times ago.

The pull request was merged in too soon.
I submitted a pull request for maven-jar-plugin, if that is accepted and goes into the current release then that will be 3.0.0-SNAPSHOT. If testng only accepts non SNAPSHOT versions then it should also wait till 3.0.0 is released and I would update the pull request with those changes.

@nitinverma Yes, Kobalt builds android apps. See for example u2020 (which I forked to build with kobalt):
https://github.com/cbeust/u2020/blob/build-with-kobalt/kobalt/src/Build.kt
The plug-in is now in its own project:
https://github.com/cbeust/kobalt-android
Note: there's a regression right now and u2020 doesn't see to run once deployed on the device, will look into it soon, but the bottom line is that pretty much everything is supported by kobalt-android:

resource and manifest merging
predex and dex
product flavors and build types
retrolambda
(proguard not yet)

Nice, Thanx... Build.kt seems easy to read. Will have to see how to use fabric.io plugin with kobalt.

i was used to import testng into eclipse as maven project, and build it with maven.
i am ok to remove pom.xml (and maven build script) since we can off load the support/maintain effort on maven build.
thanks

We can close this. Maven build is back in business after the revert.

Fixed by #948


question about cover metric

Can anyone give some insights into cover metric?
Just don't find any information about this one.

This is the sum of the second order gradient in the branch, mainly can be viewed as how many training instances goes into this branch


manual release: 2.2.0

release draft: https://github.com/adobe/asset-compute-sdk/releases/tag/untagged-4e2887a8e04b25e06806

Note that 27.1.0 was an erroneous release. It was unpublished.


fix: improve resilience of comment searching

Summary
This PR aims to improve the stability of problematic comment searching
Fixes: #33 and #37
Requirements (place an x in each [ ])

[x] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.

@filmaj good point I've added the test and these change do resolve #37


nixos/ssh: add services.openssh.package

Motivation: Allow the sshd package to be built differently to the ssh package (programs.ssh.package). For example, build sshd(1) without OpenSSL, but built ssh(1) with OpenSSL support.
Set the default to be programs.ssh.package, to preserve compatibility.
Description of changes

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/how-to-override-openssh-package-used-in-services-openssh/48235/3


Use try_select as try_select_biased

Greetings!
Any way to use try_select with left future priority? I see futures have select_biased, but no try_select_biased.

try_select is already in-order. see also https://github.com/rust-lang/futures-rs/issues/2135


could not pass craft event

RPG_Item_Light_Helmet:
type: item
material: i@leather_helmet
display name: <&f>Mining Helmet
lore:
- 'This is Mining Helmet'
recipe:
- i@leather|i@leather|i@leather
- i@leather|i@air|i@leather
- i@air|i@air|i@air
http://one.denizenscript.com/paste/39847
I craft custom item, this error caused
mc version 1.8

Should be fixed in build dev-129.


Not able to set the oauth2 loginUrl in a dynamic way

Hi,
I am trying to sign in using oauth2, I would want to have the option between going to either
https://test.salesforce.com OR https://login.salesforce.com
My oauth2 object looks like this:
let oauth2 = new jsforce.OAuth2({
  loginUrl: null,
  clientId: process.env.CLIENT_ID,
  clientSecret: process.env.CLIENT_SECRET,
  redirectUri: process.env.REDIRECT_URI
});

It seems using it like this without having a defined loginURL will cause it to crash the server.
In my application I have something like this code snippet for both sandbox and production environment and this is how i set the url for the loginURL.
router.post("/salesforce-sandbox", (req, res, next) => {
  if (req.session.currentUser) {
    res.redirect("/dashboard");
  } else {
    oauth2.loginUrl = "https://test.salesforce.com";
    console.log(oauth2);
    res.redirect("/auth");
  }
});

the console.log prints out the following information, it would lead me to think that I've set the loginUrl correctly for the oauth2 object. Any idea how I can do this without the server crashing?
{
  loginUrl: 'https://test.salesforce.com',
  authzServiceUrl: 'https://test.salesforce.com/services/oauth2/authorize',
  tokenServiceUrl: 'https://test.salesforce.com/services/oauth2/token',
  revokeServiceUrl: 'https://test.salesforce.com/services/oauth2/revoke',
  clientId: 'clientid here',
  clientSecret: 'secret here',
  redirectUri: 'http://localhost:3000/auth/token',
  _transport: {}
}

it seems to crash when it reaches this code snippet:
router.get("/", (req, res, next) => {
  if (req.session.currentUser) {
    res.redirect("/dashboard");
  } else {
    res.redirect(
      oauth2.getAuthorizationUrl({ scope: "api id web refresh_token" })
    );
  }
});

Your best option here would be to create two different conn objects - one for prod and another for test instead of trying to change the URL on the fly.
For authorization,
I have an app where every user is using a different org on any SFDC environment they might wish to use.
To authenticate when a user wants to connect a new org, I do something like this:
const oauth2 = new jsforce.OAuth2({
    loginUrl: loginUrl,
    clientId: process.env.clientId,
    clientSecret: process.env.clientSecret,
    redirectUri: process.env.redirectUri,
  })
const conn = new jsforce.Connection({ oauth2 });

conn.authorize(code, function(err, userInfo) {
...
});

Then, in the future when a new request comes in, I create a new conn instance just for the request which can be garbage collected once the request is done - I do this in middleware (Express):
Note: I tried to re-use a conn object across users but I ran into lots of issues and I would strongly discourage sharing conn across users
   // This could be pulled from a DB or the client could store and send to you etc..
    const authInfo = {
      loginUrl: req.get('loginUrl'),
      instanceUrl: req.get('instanceUrl'),
      accessToken: req.get('accessToken'),
      refreshToken: req.get('refreshToken'),
    };
  const connData = {
    oauth2: getOAth2(null, authInfo.loginUrl),
    instanceUrl: authInfo.instanceUrl,
    accessToken: authInfo.accessToken,
    refreshToken: authInfo.refreshToken,
    version, // I omitted where this is coming from
  };

req['sfdcConnection'] = new jsforce.Connection(connData);

Your best option here would be to create two different conn objects - one for prod and another for test instead of trying to change the URL on the fly.
For authorization,
I have an app where every user is using a different org on any SFDC environment they might wish to use.
To authenticate when a user wants to connect a new org, I do something like this:
const oauth2 = new jsforce.OAuth2({
    loginUrl: loginUrl,
    clientId: process.env.clientId,
    clientSecret: process.env.clientSecret,
    redirectUri: process.env.redirectUri,
  })
const conn = new jsforce.Connection({ oauth2 });

conn.authorize(code, function(err, userInfo) {
...
});

Then, in the future when a new request comes in, I create a new conn instance just for the request which can be garbage collected once the request is done - I do this in middleware (Express):
Note: I tried to re-use a conn object across users but I ran into lots of issues and I would strongly discourage sharing conn across users
   // This could be pulled from a DB or the client could store and send to you etc..
    const authInfo = {
      loginUrl: req.get('loginUrl'),
      instanceUrl: req.get('instanceUrl'),
      accessToken: req.get('accessToken'),
      refreshToken: req.get('refreshToken'),
    };
  const connData = {
    oauth2: getOAth2(null, authInfo.loginUrl),
    instanceUrl: authInfo.instanceUrl,
    accessToken: authInfo.accessToken,
    refreshToken: authInfo.refreshToken,
    version, // I omitted where this is coming from
  };

req['sfdcConnection'] = new jsforce.Connection(connData);

Thanks for the reply, got it fixed (I think, at least it works locally).


Undefined offset: 1 error while launching?

I just setup the latest version of this API using composer on my CentOS System running PHP 7.2. It works fine on my Windows machine but my Linux machine posts the following errors when I try loading any page with the autoload required.
Notice: Undefined offset: 1 in /var/www/html/vendor/jwilsson/spotify-web-api-php/src/Request.php on line 237
Fatal error: Uncaught SpotifyWebAPI\SpotifyWebAPIException: An unknown error occurred. in /var/www/html/vendor/jwilsson/spotify-web-api-php/src/Request.php:57 Stack trace: #0 /var/www/html/vendor/jwilsson/spotify-web-api-php/src/Request.php(254): SpotifyWebAPI\Request->parseBody(NULL, 0) #1 /var/www/html/vendor/jwilsson/spotify-web-api-php/src/Request.php(104): SpotifyWebAPI\Request->send('POST', 'https://account...', 'grant_type=clie...', Array) ....
Any help?
Update: Doing some more investigation it looks like my curl_exec is returning with a false Boolean value.

Managed to fix it, SELinux for some reason was preventing my curl requests from going out. Solved 👍


⚠ Cioos Pacific CKAN Sitemap has degraded performance

In c5e36b0, Cioos Pacific CKAN Sitemap (https://catalogue.cioospacific.ca/sitemap/sitemap-1.xml) experienced degraded performance:

HTTP code: 200
Response time: 10371 ms

Resolved: Cioos Pacific CKAN Sitemap performance has improved in 303124d after 37 minutes.


Fix Helm Chart: Whitespace in Deployment.yaml

Extra whitespace is being removed while templating serviceAccountName in file charts/kafka-lag-exporter/templates/040-Deployment.yaml
This leads to the following error when templating/installing the helm chart with watchers.strimzi or serviceAccount.create enabled:
Error: UPGRADE FAILED: YAML parse error on kafka-lag-exporter/templates/040-Deployment.yaml: error converting YAML to JSON: yaml: line 21: mapping values are not allowed in this context

This happens because it is being templated as:
spec: serviceAccountName: {{ include "kafka-lag-exporter.fullname" . }}-serviceaccount

instead of
spec:
  serviceAccountName: {{ include "kafka-lag-exporter.fullname" . }}-serviceaccount

Hi @abhishekjiitr,
Thank you for your contribution! We really value the time you've taken to put this together.
Before we proceed with reviewing this pull request, please sign the Lightbend Contributors License Agreement:
http://www.lightbend.com/contribute/cla

Thank you @abhishekjiitr .  I've spotted another regression issue with strimzi auto discovery as well.  I'm working on a fix for that and then I'll merge both and cut a new release.

@abhishekjiitr I've released 0.5.3.  LMK if you have any issues with it.

Thanks @seglo  ! Is there any official channel / community for kafka-lag-exporter, where these things can be discussed? It will be really helpful for the people using it.

@abhishekjiitr There's no other community support channel other than GitHub issues at this time.

Anything could work, just a place where people can discuss stuff, I personally prefer Slack / Gitter Channel.


Don't mention (outdated) RabbitMQ version in catalog description

Merged into develop. Will go into master branch after CI. Thanks Michael.
@avade: Please create a new story if you decide to put in an actual version number.


Consultation on modifying all unit costs

a) Hello, since BioSTEAM does not have Chinese investment_site_factors (https://biosteam.readthedocs.io/en/latest/API/TEA.html#:~:text=investment_site_factors%3A dict[str%2C float] %3D {'India'%3A 0.85%2C 'Japan'%3A 1.15%2C 'Mexico'%3A 0.95%2C 'Pacific Rim'%3A 1.0%2C 'U.S. Gulf Coast'%3A 1.0%2C 'U.S. Midwest'%3A 1.15%2C 'U.S. Northwest'%3A 1.1%2C 'U.S. Southwest'%3A 0.95%2C 'U.S. West Coast'%3A 1.25%2C 'Western Europe'%3A 1.2}), may I ask you how to call investment_site_factors when executing TEA and how to call Chinese investment_site_factors (0.83) when executing TEA ? Because I didn't find any tutorials for investment_site_factors.
b) Or I can modify the unit cost according to the tutorial in TAL model (https://github.com/agvaughan/Bioindustrial-Park/blob/8ce1740633fac93821137019eaec11be0f5d94a2/biorefineries/TAL/analyses/models_ethyl_esters.py#L194-L200), but I can only change the cost of some units through the following code (only the unit with cost_items), could I consult you how to modify the cost of all units in the system?
from biorefineries import TAL
import biosteam as bst
bst.nbtutorial()
TAL.load_TAL_model('A')
TAL.system.diagram('thorough', format='png', number=True)
for unit in TAL.system.units:
    if hasattr(unit, 'cost_items'):
        print(unit)

Hello, could someone help look at this problem.

@yoelcortes, @yalinli2, @sarangbhagwat Hello, could you help look at this problem.

I try to use tea.FCI *= 0.83, but AttributeError: can't set attribute 'FCI' was reported.

FCI is automatically calculated once the TEA._FCI method is set, if you want to update how FCI is calculated.
I think you should be able to directly update the investment_site_factors dict to include additional factors you want to use.

@yalinli2 Thank you for your answer. I try to call investment_site_factors with TEA.investment_site_factors, but I get the following result.
{'U.S. Gulf Coast': 1.0,
 'U.S. Southwest': 0.95,
 'U.S. Northwest': 1.1,
 'U.S. Midwest': 1.15,
 'U.S. West Coast': 1.25,
 'Western Europe': 1.2,
 'Mexico': 0.95,
 'Japan': 1.15,
 'Pacific Rim': 1.0,
 'India': 0.85}

If I want to set the investment_site_factors of the process to 0.83 and the country is China, may I ask you how to set it? After setting, could I consult you how to call investment_site_factors to 0.83? Because investment_site_factors now seems to default to 1, and I do not know how to modify it to 0.83.

@yalinli2 I did not find the use of investment_site_factors in the relevant tutorials or code in https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park and https://github.com/BioSTEAMDevelopmentGroup/biosteam. So could I consult you how to set investment_site_factors.

I'm not sure if there's a better way to do it, but I imagine you can just make a new TEA class, then set
TEA.investment_site_factors['China'] = 0.83

Then set the _DPI function as here: https://github.com/BioSTEAMDevelopmentGroup/BLocS/blob/d9983a1f67de9e8b5d7eebb033d0c3582c0e225f/blocs/incentives/incentives_tea.py#L395
(I think F_investment is similar to the investment factor)

Thanks for your advice, I have created the following code, but there are still errors TypeError: TEA.__init__() got an unexpected keyword argument 'system'.
The code is as follows.
class TEA(CellulosicEthanolTEA):
    def __init__(self, investment_site_factors=0.83):
        CellulosicEthanolTEA.__init__(self)
        self.investment_site_factors = investment_site_factors
    def _DPI(self, installed_equipment_cost):
        return self.investment_site_factors * installed_equipment_cost

def create_new_tea(sys, OSBL_units=None, cls=None):
    if OSBL_units is None: OSBL_units = bst.get_OSBL(sys.cost_units)
    try:
        BT = tmo.utils.get_instance(OSBL_units, (bst.BoilerTurbogenerator, bst.Boiler))
    except:
        BT = None
    if cls is None: cls = TEA
    tea = cls(
        system=sys,
        IRR=0.10,
        duration=(2016, 2046),
        depreciation='MACRS10',
        income_tax=0.35,
        operating_days=0.9*365,
        lang_factor=None,
        construction_schedule=(0.08, 0.60, 0.32),
        startup_months=3,
        startup_FOCfrac=1,
        startup_salesfrac=0.5,
        startup_VOCfrac=0.75,
        WC_over_FCI=0.05,
        finance_interest=0.08,
        finance_years=10,
        finance_fraction=0.6,
        OSBL_units=OSBL_units,
        warehouse=0.04,
        site_development=0.09,
        additional_piping=0.045,
        proratable_costs=0.10,
        field_expenses=0.10,
        construction=0.20,
        contingency=0.10,
        other_indirect_costs=0.10,
        labor_cost=1000000,
        labor_burden=0.30,
        property_insurance=0.007,
        maintenance=0.03,
        steam_power_depreciation='MACRS10',
        boiler_turbogenerator=BT)
    return tea
tea = create_new_tea(sys)

@yalinli2 I try to use the following code. The code can run well. But when I check the ratio of the FCI after multiplying the location factor to the FCI before multiplying the location factor, it's not 0.83, it's 0.78, which doesn't seem right.
class TEA(CellulosicEthanolTEA):
    _TCI_ratio_cached = 1
    def _FCI(self, FCI):
        return 0.83 * FCI

def create_new_tea(sys, OSBL_units=None, cls=None):
    if OSBL_units is None: OSBL_units = bst.get_OSBL(sys.cost_units)
    try:
        BT = tmo.utils.get_instance(OSBL_units, (bst.BoilerTurbogenerator, bst.Boiler))
    except:
        BT = None
    if cls is None: cls = TEA
    tea = cls(
        system=sys,
        IRR=0.10,
        duration=(2016, 2046),
        depreciation='MACRS10',
        income_tax=0.35,
        operating_days=0.9*365,
        lang_factor=None,
        construction_schedule=(0.08, 0.60, 0.32),
        startup_months=3,
        startup_FOCfrac=1,
        startup_salesfrac=0.5,
        startup_VOCfrac=0.75,
        WC_over_FCI=0.05,
        finance_interest=0.08,
        finance_years=10,
        finance_fraction=0.6,
        OSBL_units=OSBL_units,
        warehouse=0.04,
        site_development=0.09,
        additional_piping=0.045,
        proratable_costs=0.10,
        field_expenses=0.10,
        construction=0.20,
        contingency=0.10,
        other_indirect_costs=0.10,
        labor_cost=1000000,
        labor_burden=0.30,
        property_insurance=0.007,
        maintenance=0.03,
        steam_power_depreciation='MACRS10',
        boiler_turbogenerator=BT)
    return tea
tea = create_new_tea(sys)

_FCI shouldn't be calculating FCI based on FCI, it should be calculating FCI based on TDC
https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/blob/3a639670c9673e0b354e3aef36a35f728f6038d9/biorefineries/tea/conventional_ethanol_tea.py#L92
you probably want to look into each step of the calculation and figure out where the discrepancy was

Thank you for your suggestion. According to the code for calculating FCI (https://github.com/BioSTEAMDevelopmentGroup/Bioindustrial-Park/blob/master/biorefineries/tea/cellulosic_ethanol_tea.py#L150-L152), I have changed the code to the following code. And I check the ratio of the FCI after multiplying the location factor to the FCI before multiplying the location factor, it's 0.83. Could I confirm with you that the following code is correct.
class TEA(CellulosicEthanolTEA):
    _TCI_ratio_cached = 1
    def _FCI(self, TDC):
        self._FCI_cached = FCI = TDC + self._nondepreciable_indirect_costs(self._DPI_cached)
        return 0.83 * FCI
def create_new_tea(sys, OSBL_units=None, cls=None):
    if OSBL_units is None: OSBL_units = bst.get_OSBL(sys.cost_units)
    try:
        BT = tmo.utils.get_instance(OSBL_units, (bst.BoilerTurbogenerator, bst.Boiler))
    except:
        BT = None
    if cls is None: cls = TEA
    tea = cls(
        system=sys,
        IRR=0.10,
        duration=(2016, 2046),
        depreciation='MACRS10',
        income_tax=0.35,
        operating_days=0.9*365,
        lang_factor=None,
        construction_schedule=(0.08, 0.60, 0.32),
        startup_months=3,
        startup_FOCfrac=1,
        startup_salesfrac=0.5,
        startup_VOCfrac=0.75,
        WC_over_FCI=0.05,
        finance_interest=0.08,
        finance_years=10,
        finance_fraction=0.6,
        OSBL_units=OSBL_units,
        warehouse=0.04,
        site_development=0.09,
        additional_piping=0.045,
        proratable_costs=0.10,
        field_expenses=0.10,
        construction=0.20,
        contingency=0.10,
        other_indirect_costs=0.10,
        labor_cost=1000000,
        labor_burden=0.30,
        property_insurance=0.007,
        maintenance=0.03,
        steam_power_depreciation='MACRS10',
        boiler_turbogenerator=BT)
    return tea
tea = create_new_tea(sys)


Add new "Quick Translate" command to "Google Translate" extension

Description
Google Translate extension had two commands, "Translate" and "Translate Form". Using "Translate", we can define multiple language sets to translate from/to. With "Translate Form", we can select single language set (from/to) and directly translate a text.
With this new "Quick Translate" command, the users are not restricted to language sets, and can quickly translate from the selected language to multiple languages at the same time. #8844
By default, auto-detect is used as source language, primary & secondary languages are used as target languages. Users are allowed to add as many target languages as they want.
Apart from the new command, I changed preference titles like following:

First Language -> Primary Language
Second Language -> Secondary Language

In my opinion, it's better to replace the original "Translate" command with this one instead of adding this as a new command because I think this is easier to use compared to language set approach. Take a look at the command and its ux, if you agree with me, request changes for the pr and I'll gladly replace the original one with this implementation.
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

How do you guys feel about giving users the option to disable autofill input like below? Translate commands always try to get the selected text and sometimes make that annoying 'ding' sound when they fail. Personally, I'd keep it disabled.

If the default behavior is the same as today, then I don't see a problem, do you @gebeto

Yep, I agree with @pernielsentikaer , if it will be checked by default, so it will not affect old users UX and don't force them to go to the settings and change settings, we can do it

okay, working on it

done, can you check if you're able to use it as is and the option is enabled by default?

Yep, according to the api we can set default value for the preference: https://developers.raycast.com/information/manifest#preference-properties

one sec, I'll check it

@rasitayaz can you please add this latest change to the Changelog?

done, can you check if you're able to use it as is and the option is enabled by default?

yep, it works!

@rasitayaz can you please add this latest change to the Changelog?

updated


allowedCommonJsDependencies does not silence errors coming from the style-loader package

Which @angular/* package(s) are the source of the bug?
Don't known / other
Is this a regression?
No
Description
Stripped angular.json and angular2-uuid works
{
  "projects": {
    "app": {
      "architect": {
        "build": {
          "builder": "@angular-builders/custom-webpack:browser",
          "options": {
            "allowedCommonJsDependencies": [
              "angular2-uuid",
              "style-loader"
            ]
          }
        }
      }
    }
  }
}

Console output
Warning: path-to-project/src/styles.scss depends on '!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js'. CommonJS or AMD dependencies can cause optimization bailouts.
For more info see: https://angular.io/guide/build#configuring-commonjs-dependencies

Warning: path-to-project/src/styles.scss depends on '!../node_modules/style-loader/dist/runtime/insertBySelector.js'. CommonJS or AMD dependencies can cause optimization bailouts.
For more info see: https://angular.io/guide/build#configuring-commonjs-dependencies

Warning: path-to-project/src/styles.scss depends on '!../node_modules/style-loader/dist/runtime/insertStyleElement.js'. CommonJS or AMD dependencies can cause optimization bailouts.
For more info see: https://angular.io/guide/build#configuring-commonjs-dependencies

Warning: path-to-project/src/styles.scss depends on '!../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js'. CommonJS or AMD dependencies can cause optimization bailouts.
For more info see: https://angular.io/guide/build#configuring-commonjs-dependencies

Warning: path-to-project/src/styles.scss depends on '!../node_modules/style-loader/dist/runtime/styleDomAPI.js'. CommonJS or AMD dependencies can cause optimization bailouts.
For more info see: https://angular.io/guide/build#configuring-commonjs-dependencies

Warning: path-to-project/src/styles.scss depends on '!../node_modules/style-loader/dist/runtime/styleTagTransform.js'. CommonJS or AMD dependencies can cause optimization bailouts.
For more info see: https://angular.io/guide/build#configuring-commonjs-dependencies

Please provide a link to a minimal reproduction of the bug
No response
Please provide the exception or error you saw
No response
Please provide the environment you discovered this bug in (run ng version)
Angular CLI: 14.2.5
Node: 16.17.1
Package Manager: npm 8.15.0
OS: darwin x64

Angular: 14.2.5
... animations, cli, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router

Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1402.5
@angular-devkit/build-angular   14.2.5
@angular-devkit/core            14.2.5
@angular-devkit/schematics      14.2.5
@schematics/angular             14.2.5
rxjs                            7.5.7
typescript                      4.6.4

Anything else?
No response

This seems like a bug but we'll need to look at a reproduction to find and fix the problem. Can you setup a minimal repro please?
You can read here why this is needed. A good way to make a minimal repro is to create a new app via ng new repro-app and adding the minimum possible code to show the problem. Then you can push this repository to github and link it here.
This might be related to your directory structure so its really important to get an accurate repro to diagnose this.

The Angular CLI does not internally use style-loader. It looks like you are using a 3rd party builder @angular-builders/custom-webpack:browser to extend the Webpack configuration. While this is allowed the Angular team does not support custom Webpack configurations or issues caused by such extension.


Date mentioned in the "Updates" section is non-intuitive

Describe the bug
Update section has a date mentioned. Does it mean that all the updates are for that date?
If that is the case, there could be confusion in the news card below, because the time in that seems to be for next day?

Also, unsure when that date will change.
Expected behavior

Mention something like "Updates for 8th Apr" ?
Or, we can only show the updates that are part of the date shown above?
Hijacking this issue to request one more feature : Can we make add a slowly blinking beacon 🔵to make the updates more responsive? (However, slow enough so that it doesn't look like an Web1.0 site :) )

Why not remove the date field itself.
Just show "Updates" and below that the card with relative time.

Why not remove the date field itself.
Just show "Updates" and below that the card with relative time.

Agrees with @JunaidBabu . Moreover it should come on the top for better readability, mentioned in #777

Why not remove the date field itself.
Just show "Updates" and below that the card with relative time.

Or we could date with time, something like updates till 8 April 11:00 am IST
So that if someone keeps tab through the day they are viewing an old instance of data.
For better visibility we could add time and in small text size besides of Updates.

@BhaveshSGupta @sudevschiz  as individual update log times we can see, in that case time besides date will be over information. Rather than, showing in each and every log like, "about four hours ago", we can show the original timings of update log.

@sudevschiz
Will this below one be ok?

@userhasnoname0 No. I would prefer Updates to be in its current location.
About the Date field, I echo with @JunaidBabu ,we should just remove that date and keep a relative time on the cards.
Opening this issue for that behaviour.

@sudevschiz Can you assign this to me? I can take this.

Patched.


RPM/DEB to install

It would be great to have deb/rpm's available to install prm.

Fixed in 1.0.0


packer: update goss and awscli - 20200708

Run goss for different distros

Instead of removing goss privisioner, let's run goss with different config files for Flatcar and non-Flatcar.
Ideally we should be able to make use of templates as described in goss README.
However, it is not possible to do so, because packer-provisioner-goss does not take env variables as input parameters that can be used for such a distinction.
Instead, simply create different configs for Flatcar and non-Flatcar. Check for cloud-init package only in case of non-Flatcar.

Install awscli for different distros

Since awscli cannot be installed via python3, make bootstrap-flatcar.sh install also pypy2, and set the default python version to 2.
Then install awscli from the ansible part.
To do that, we need to introduce an ansible parameter python_path, which allows users to specify Flatcar-specific python libs path. Also creates python virtualenv /opt/bin/builder-env, where the python libraries are installed.

largely LGTM

Merged to https://github.com/kubernetes-sigs/image-builder/pull/248


Installing on Melodic fails

Hello, I am trying to install the package on a Melodic system. I have followed your tutorial, with the exception of changing "gazebo11" to "gazebo9" and "noetic" to "melodic" in all the command lines.
When making the packing, i get the following error:
[ 26%] Built target Hydrodynamics
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j8 -l8" failed

I am assuming it's the compatibility with Melodic which is the issue. Is there a somewhat easy fix, or do I need to upgrade my entire system?
Br Anton

We officially only support Noetic. However, it is possible to install on Melodic, and there is a working example using the Docker-based install path, and we test that the code builds on both Noetic and Melodic. The dependencies are slightly different, though.
A few things that would help:

I think you are saying you've followed this tutorial, using Option A: https://github.com/osrf/vrx/wiki/system_setup_tutorials Is that right?
Could you post a longer snippet of your output so we can see the cause of the failure?
Can you try the Docker-based install? This would allow you to run the Noetic environment without upgrading your host OS.

Thanks for taking the time to reply. When looking through the error message again this morning, I found that the build failed earlier, because of an outdated version of numpy. Installing it with python3 -m pip install numpy fixed the error in my issue.
Thanks again, and sorry!


feat: update signin, signup, otp and new password pages

Description
This PR includes updates to several pages: /signin, /signup, /new-password, /otp, and /forgot.
TODO:

[ ] Background animations for form state transitions will be updated in a future iteration.

Key Changes

UI Update: Redesigned and updated the user interface for the specified pages.

Component Relocation:

input-otp and card components were moved from canary.
Floating1ColumnLayout was moved from view.

Access to Previous Versions

Previous UI versions of these pages remain accessible at /v1/[page].

Notes
Feel free to provide feedback or highlight areas for improvement. Your input is greatly appreciated!
Design
![image](https://github.com/user-attachments/assets/f041f375-e6ad-4ef4-87f0-b3153195c4ea)

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


path to your audio file

/**
* Provide path to your audio file.
*
* @return
*/
@Override
protected String getFileName() {
return "path to your audio file";
}
What is the need to fill in the audio file path here? Please give an example? I filled in /storage/emulated/0/Download/test.wav and still can't find the file (provided this path has this file)

need add permission in AndroidManifest.xml

@override
protected String getFileName() {
return "/storage/emulated/0/Download/test.wav";
}

Did you asked for permissions in any activity?
if not than use given code in mainActivity -
private final int SettingCode = 111;
private final int RequestPermission = 1;

call this method in onCreate() method
hasPermission();

and create this method:
private void hasPermission() {
    if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
        final String[] s = new String[]{Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE};
        if (ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED ||
                ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {

            PermissionsDialog(s);      // call this method if permission is not granted
        } else {
            setData();        // code for next task if permission is granted
        }
    } else {
        setData();           //  if device is below version marshmello
    }
}

than paste this code
private void PermissionsDialog(final String[] s) {
    ActivityCompat.requestPermissions(MainActivity.this, s, RequestPermission);
}

Now call this method which is called when any permission is granted or denied
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
    super.onRequestPermissionsResult(requestCode, permissions, grantResults);
    if (requestCode == RequestPermission) {
        if (grantResults.length > 0) {
            for (int grantResult : grantResults) {
                if (grantResult != PackageManager.PERMISSION_GRANTED) {
                    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
                            !ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this, permissions[0])) {
                        startActivityForResult(new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS,
                                Uri.parse("package:" + BuildConfig.APPLICATION_ID)), SettingCode);
                    } else {
                        hasPermission();
                    }
                } else {
                    setData();
                }
            }
        }
    }
}

and also use this method
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == SettingCode) {
        hasPermission();
    }
}

If this also not worked than try to show error log which specifies the error.


KOGITO-6949: Upgrade chromedriver and selenium-webdriver

See https://issues.redhat.com/browse/KOGITO-6946

Closing this one in favor of https://github.com/kiegroup/kie-tools/pull/923

@caponetto hello, please are you aware this PR upgrades two more dependencies?
- "@types/selenium-webdriver": "^4.0.18"
- "selenium-webdriver": "^4.1.1",

@jomarko That is right. Let's keep this PR then.
"selenium-webdriver": "^4.1.1" is still missing.

@caponetto yes, thank you, I updated the PR to reflect your recent changes


Dealing with maps

I'm probably working with the weirdest payload ever, but it's a legacy API, so bear with me...
The beast looks something like this:
{
  "messages": [{
    "id": 1,
    "body": "A message",
    "attachments": [{
      "id": 1,
      "type": "images",
      ...
    }]
  }],
  "replies": {
    "1": [{
      "id": 2,
      "body": "First reply",
      "attachments": [{
        "id": 2,
        "type": "images",
        ...
      }, {
        "id": 3,
        "type": "videos",
        ...
      }]
    }]
  }
}

So messages is an array of thread starters / OPs, and replies is a hash where the keys are message IDs, and the values are arrays of replies to the corresponding message.
I'd like to normalize both messages and replies as message entities, but I don't have a way of traversing the replies hash.
I was thinking of implementing a mapOf operator that would visit the values of a hash. The solution to my problem would then look like:
var message = new Schema('messages')
var attachment = {
  images: new Schema('images'),
  videos: new Schema('videos')
}

message.define({
  attachments: arrayOf(attachment, {schemaAttribute: 'type'})
})

normalize(json, {
  messages: arrayOf(message),
  replies: mapOf(arrayOf(message)),
}

Does that sound useful?

I'm OK with adding this, let's call it valuesOf().

:+1:
I'll work on a PR.

I was thinking that mapOf/valuesOf would return a hash, so the keys would be maintained:
    input = {
      one: {
        id: 1,
        title: 'Some Article'
      },
      two: {
        id: 2,
        title: 'Other Article'
      }
    };

  output = {
      result: {
        one: 1,
        two: 2
      },
      entities: {
        articles: {
          1: {
            id: 1,
            title: 'Some Article'
          },
          2: {
            id: 2,
            title: 'Other Article'
          }
        }
      }
    });

Does it make sense to name it valuesOf? You are not just keeping the values...

Maybe I'm missing your point. I'm suggesting valuesOf as in “values of this object are of type X”. Is this the wrong interpretation?

Ah, if you read it like that then valuesOf makes sense. Ok, I'll work on the PR.

Thanks. I gave you push access (but please don't commit to master).

Sure. Thank you.


F-Droid version cannot fetch data

The title basically says it all, I have internet connectivity, I'm in California, I tried both by GPS and by entering a zip code and in both cases the app says that it cannot download data.
If you can't reproduce, let me know if there's additional information I can provide.

@xenotropic I have just tried with the zip code from your screenshot and got the weather forecast. Are you still experiencing the same issue?

@xenotropic Please try the latest version 4.0.1. I believe that the previous version had some problems with connection retries. Unless you still can't fetch the weather data, I will close this issue.


Added compiler AST caching (#2580)

Pull request opened by the merge tool on behalf of #2580

Merged into branches iso4 in d94ab5af89a8fac0e285a05c6bb15803182075b1


Generate skip hidden dirs

We're running into an issue with hidden directories being detected as buildable go modules which fail to build.  This adds an example to the test repository and includes the fix in a subsequent commit.

@Tatskaari or @peterebden when I run plz test --profile=noremote with the above changes I get the following errors that aren't very clear. Can you provide any guidance on how to overcome these errors?
https://pastebin.com/eTT44iiQ


Http fake method does not overwrite if another fake method is used in the same test case.

Laravel Version
10.17.0
PHP Version
8.2
Database Driver & Version
No response
Description
I need to fake HTTP response of one URL multiple times in a single test flow. These are faked with different data each time.
Calling the fake method second time in the test case does not work. It gives the response set by the first fake method. It does not overwrite the response with the new fake data. The first fake call is always taking the precedence.
This is happening because https://github.com/laravel/framework/pull/47915 has added HttpFactory as a singleton.
It solves the issue raised at https://github.com/laravel/framework/issues/47738
Singleton is refreshed for each request, so it works fine for production. But this breaks in testing.
Similar issue being faced by other folks at: https://laracasts.com/discuss/channels/laravel/overwrite-fake-response-in-http-client?page=1&replyId=762080
The solution suggested in the above forum (swap) - it used to work until this PR got merged. That solution broke with this PR.
Steps To Reproduce
<?php

use Illuminate\Support\Facades\Http;

Route::get('/', function (){
  Http::fake([
    'https://laravel.com' => Http::response('OK', 200)
  ]);

  dump(Http::get('https://laravel.com')->body());

  Http::fake([
    'https://laravel.com' => Http::response('Internal Server Error', 500)
  ]);

  dump(Http::get('https://laravel.com')->body());
});

Laravel Playground: https://laravelplayground.com/#/snippets/0f8268bf-57d5-4709-ac54-e24965ec4c22

Tagging @timacdonald since the PR was raised by him. If possible, can we revert the merge for now, please? Unable to upgrade to the latest Laravel version because of this.

Hi @StSarc,
I've created the following test which I've run in a fresh Laravel application using the latest version and also 10.16.1, which was the version that change was tagged in.
The last assertion fails in both applications.
<?php

namespace Tests\Feature;

use Illuminate\Http\Client\Factory;
use Illuminate\Support\Facades\Facade;
use Illuminate\Support\Facades\Http;
use Tests\TestCase;

class ExampleTest extends TestCase
{
    public function test_the_http_factory(): void
    {
        // Make sure the HTTP factory starts as a singleton, as expected...
        // This assertion passes on the latest, but fails in version `10.16.1`
        $this->assertSame($this->app[Factory::class], $this->app[Factory::class]);

        // Rebind the Http factory so that it is no longer a singleton...
        $this->app->bind(Factory::class, fn () => new Factory($this->app['events']));
        $this->assertNotSame($this->app[Factory::class], $this->app[Factory::class]);
        // Clear any resolved instances, to make sure the HTTP facade gets a fresh instance...
        Facade::clearResolvedInstances();

        Http::fake([
            'https://laravel.com' => Http::response('OK', 200)
        ]);
        $body = Http::get('https://laravel.com')->body();
        $this->assertSame('OK', $body);

        Http::fake([
            'https://laravel.com' => Http::response('Internal Server Error', 500)
        ]);
        $body = Http::get('https://laravel.com')->body();
        // This assertion fails on the latest and `10.16.1`
        $this->assertSame('Internal Server Error', $body);
    }
}

This is because of the way the HTTP client stores "fakes". It builds up a list and checks them one-by-one, meaning this behaviour is expected (even if not ideal).
Instead, I would recommend taking a look at the docs on how to handle a sequence of HTTP requests to the same URL: https://laravel.com/docs/10.x/http-client#faking-specific-urls
<?php

namespace Tests\Feature;

use Illuminate\Http\Client\Factory;
use Illuminate\Support\Facades\Facade;
use Illuminate\Support\Facades\Http;
use Tests\TestCase;

class ExampleTest extends TestCase
{
    public function test_the_http_factory(): void
    {
        Http::fake([
            'https://laravel.com' => Http::sequence()
                ->push('OK', 200)
                ->push('Internal Server Error', 500),
        ]);

        $body = Http::get('https://laravel.com')->body();
        $this->assertSame('OK', $body);

        $body = Http::get('https://laravel.com')->body();
        $this->assertSame('Internal Server Error', $body);
    }
}

Hey @timacdonald, thanks for the quick response! Replying to the comments below. Please do have a look.

I've created the following test which I've run in a fresh Laravel application using the latest version and also 10.16.1, which was the version that change was tagged in.
It's tagged in 10.17.0 and not in 10.16.1. Please refer to https://github.com/laravel/framework/releases/tag/v10.17.0
It works in 10.16.1. This is the version that we are using currently. I am able to swap out the facade successfully here with a new Http facade. The moment I switch to 10.17.0, it breaks.

The last assertion fails in both applications.
If we swap out the Facade instance with a fresh one, it doesn't fail in 10.16.1. But, it fails in 10.17.0
Please run the following code on 10.16.1 and 10.17.0 to check the same

<?php

namespace Tests\Feature;

use Illuminate\Http\Client\Factory;
use Illuminate\Support\Facades\Facade;
use Illuminate\Support\Facades\Http;
use Tests\TestCase;

class ExampleTest extends TestCase
{
    public function test_the_http_factory(): void
    {
        // Make sure the HTTP factory starts as a singleton, as expected...
        // This assertion passes on the latest, but fails in version `10.16.1`
        // ST_SARC: Commenting this out because it'll fail in 10.16.1 (rightly so).
        // $this->assertSame($this->app[Factory::class], $this->app[Factory::class]);

        // Rebind the Http factory so that it is no longer a singleton...
        // ST_SARC: Commenting these out as well because no singleton in 10.16.1 and hence not required
        // $this->app->bind(Factory::class, fn () => new Factory($this->app['events']));
        // $this->assertNotSame($this->app[Factory::class], $this->app[Factory::class]);
        // Clear any resolved instances, to make sure the HTTP facade gets a fresh instance...
        // Facade::clearResolvedInstances();
        // ST_SARC: Adding this to get and store a fresh instance of Http
        $freshHttp = $this->app[Factory::class];

        Http::fake([
            'https://laravel.com' => Http::response('OK', 200)
        ]);
        $body = Http::get('https://laravel.com')->body();
        $this->assertSame('OK', $body);

        // ST_SARC: Swapping the facade with the fresh instance created earlier
        Http::swap($freshHttp);

        Http::fake([
            'https://laravel.com' => Http::response('Internal Server Error', 500)
        ]);
        $body = Http::get('https://laravel.com')->body();
        // This assertion fails on the latest and `10.16.1`
        // ST_SARC: This assertion does not fail now.
        $this->assertSame('Internal Server Error', $body);
    }
}

Instead, I would recommend taking a look at the docs on how to handle a sequence of HTTP requests to the same URL
I have tried this and it doesn't work for my use case because:

I have a base test case faking the HTTP request X with Data A.
I have multiple other test cases which extend this base test case. These test cases also fake the HTTP request X but with different Data (B, C, D).
The reason I cannot use sequences is because this faking first happens in a base test case (that other multiple test cases use in their own test flows) and then in the subsequent various test cases.

Now, I can use
$this->app->bind(Factory::class, fn () => new Factory($this->app['events']));

to ensure it's not longer a singleton in test cases. But, ideally would want to avoid having a hack like this in test cases. Is there anything that you can suggest for this? Singletons are very messy to deal with usually. I am assuming this was also the reason why there are no other singletons registered at all in FoundationServiceProvider except for Vite.

@StSarc because we have features built on top of this class being a singleton, I don't think we will revert the change. The only thing I could recommend is, after resolving the class, you could tell the container to forget the instance.
$freshHttp = $this->app[Factory::class];
$this->app->forgetInstance(Factory::class);

Alternatively, reworking how you handle the sequence faking in your testsuite is also an option. I can't comment on the best approach there as it will depend on your setup.

What if we could just add the following in Illuminate\Http\Client\Factory?
public function refreshRequestData()
{
        $this->stubCallbacks = collect();
}

I can raise a PR for this. Do you think it might be okay? We would then not have to use any workarounds / hacks. After the first request, we can just call the refreshRequestData if needed and it would work seamlessly.

You could certainly try a PR for this.
Perhaps Http::flushFakes() or something like that?

Hey @timacdonald! I raised a PR to add the flushFakes method at https://github.com/laravel/framework/pull/49463
I have added a test case too. It fails without the flushFakes method.

Hey @timacdonald ! This got closed. Do you think there's anything I can add in the description so that it gets approved?

If you wanted to try again I would recommend adding some code snippets to illustrate the issue.


Fix edge case where opcache in stash caused a fatal

See https://github.com/tedious/Stash/issues/350 for more info
Lines 51 through 59 are my own, the rest is straight from stash.

Can we get this upstreamed?

https://github.com/tedious/Stash/pull/351

Lets wait a while and see if that gets merged in, if its not merged in by the time we want to do the next release, we should merge this.

IMO we should keep our custom adapter regardless of whether they merge or not. Otherwise we'll need to set our minimum stash version to only allow the very latest

Does the potential next version of Stash have a higher PHP minimum than the current version we use? if it doesn't then requiring a higher minimum version of Stash doesn't matter as we include it in the core.

@Mnkras no, but if we up that requirement, we restrict the composer potential compatibility in composer since some projects may require earlier versions.

That is true, but I think that to be unlikely to happen at the moment.

We're taking a lot of steps to be composer compatible. Once 8.2 lands, I will install using composer 100% of the time.


fix reconfigure-kubelet doc err

NOTE: After opening the PR, please un-check and re-check the "Allow edits from maintainers" box so that maintainers can work on your patch and speed up the review process. This is a temporary workaround to address a known issue with GitHub.>
Please delete this note before submitting the pull request.

This change is

/lgtm
Thanks!

/assign @mtaufen

/approve
/lgtm


fix: make document symbols request deterministic

And maybe fix other bugs resulting from parseAhead. As we now have other requests like semantic highlighting that also have to wait for the entire file, this special case probably doesn't make any sense anymore.

VS Code still doesn't support it though, no?


Update create-release-and-publish.yml

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


Use official elasticsearch docker image.

Elasticsearch image from docker hub is DEPRECATED.
https://hub.docker.com/_/elasticsearch/
The official image is available at https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html
Also, elasticsearch latest version is not compatible with elasticpress plugin I think we should use 5.3.x version/tag until the plugin is updated ( https://github.com/10up/ElasticPress/issues/925 )

+1 for this


Update for 22.1 (lite) and 22.3 (pro)

First links to documentation pages:
https://www.intel.com/content/www/us/en/programmable/quartushelp/22.1/index.htm#hdl/vlog/vlog_list_sys_vlog.htm
https://www.intel.com/content/www/us/en/programmable/quartushelp/22.3/index.htm#hdl/vlog/vlog_list_sys_vlog.htm
I tested with 22.1 Lite edition, and compared it with 21.1 (previous Lite edition), what I looked for:
Whether genvar can be defined inside the for loop?
Still an error about reserved keyword.
Union type
I have a packed union defining all RISC-V instruction encoding types.
https://github.com/jeras/rp32/blob/master/hdl/rtl/riscv/riscv_isa_i_pkg.sv#L124-L135
Although clearly stated to be supported:
https://www.intel.com/content/www/us/en/programmable/quartushelp/22.1/index.htm#hdl/vlog/vlog_list_sys_vlog_d1627e428.htm
It is not true, since i get:
Error (10835): SystemVerilog error at riscv_isa_i_pkg.sv(129): no support for unions

Hi, sorry, I just noticed the issue you sent. First, thank you for the feedback. It's always nice to see that my writeup was helpful for someone :slightly_smiling_face:
Regarding the issue, do you suggest including the information about the new versions in the document? If yes, confirming if all other sections are still relevant after those four years would be great. I didn't have much contact with Quartus during this time, so (I hope) some things might have gained support.
For the union type, could you prepare a description similar to other sections, i.e., Quartus documentation, IEEE standard excerpt, Unsupported features and Example with links to base and patched repos? Otherwise, I would need to put it together by myself, and at the moment, I don't have much spare time to update this document.


Race condition while using skipIfLocked = true

Jenkins and plugins versions report

Environment

two built-in nodesPaste the output here

What Operating System are you using (both controller, and any agents involved in the problem)?
Any / Latest
Reproduction steps
Unable to reliably reproduce due to the nature of the race condition, but it's obvious in the code.
Expected Results
When using lock(..., skipIfLocked: true) when resource is already locked, the above should not wait for the lock to be freed, but it does, under certain cercumstances.
Actual Results
lock(..., skipIfLocked: true) waits for the lock to be freed
Anything else?

Two built-in nodes
Ephemeral resource
Single-count resource
The resource is being created on both nodes (contributing/causing race condition?)

Both nodes started at the same time. Node 1 waits until Node 2 completes to capture the lock
Log:
Node 1
Trying to acquire lock on [ca3266b5e1919272b77636f15244cb8fbdcf823b_flowlogix-org-repo/flowlogix/PR-132]
Resource [ca3266b5e1919272b77636f15244cb8fbdcf823b_flowlogix-org-repo/flowlogix/PR-132] did not exist. Created.
Lock acquired on [ca3266b5e1919272b77636f15244cb8fbdcf823b_flowlogix-org-repo/flowlogix/PR-132]

Node 2
Trying to acquire lock on [ca3266b5e1919272b77636f15244cb8fbdcf823b_flowlogix-org-repo/flowlogix/PR-132]
Resource [ca3266b5e1919272b77636f15244cb8fbdcf823b_flowlogix-org-repo/flowlogix/PR-132] did not exist. Created.
Lock acquired on [ca3266b5e1919272b77636f15244cb8fbdcf823b_flowlogix-org-repo/flowlogix/PR-132]

NVM. I think there is another issue


API for bcy.net

Is it possible if you can make API for bcy.net?

Is it possible if you can make API for bcy.net?

Thank you for your suggestions. Can your provide any open source projects for reference?
Unfortunately, I possibly don't have enough time to deal with this feature.
Anyway, Contributions is always welcomed, If you have any further idea, please feel free to reply, so please leave this issue open.

Is it possible if you can make API for bcy.net?

Thank you for your suggestions. Can you provide any open source projects for reference?
Unfortunately, I possibly don't have enough time to deal with this feature. Anyway, Contributions are always welcomed, If you have any further idea, please feel free to reply, so please leave this issue open.

Can't really provide any open source project since I planned to use a CMS like Wordpress, Drupal, Joomla. I think you can use https://github.com/journey-ad/pixiv-viewer as reference. All it need is to swap the api and edit the url structure since pixiv & bcy are similar sites

Perhaps these endpoints can provide some information:
Rank endpoints:

https://bcy.net/apiv3/rank/list/itemInfo?p=2&ttype=novel&sub_type=lastday&date=20211123
https://bcy.net/apiv3/rank/list/itemInfo?p=2&ttype=illust&sub_type=week&date=20211121
https://bcy.net/apiv3/rank/list/itemInfo?p=3&ttype=cos&sub_type=newPeople&date=20211123

Feed / Recommend endpoints:

https://bcy.net/apiv3/common/getFeeds?refer=feed&direction=loadmore
https://bcy.net/apiv3/common/getFeeds?refer=channel&direction=loadmore&cid=6618800650505421059
https://bcy.net/apiv3/common/getFeeds?refer=channel&direction=loadmore&cid=6618800694038102275
https://bcy.net/apiv3/common/getFeeds?refer=channel&direction=loadmore&cid=6618800677680316675

Search endpoint:

https://bcy.net/apiv3/search/getContent?query=a cute cat&from=1&size=12&searchId=4bdbe019-3dc5-43ec-9a87-0495e8173c5c

But for Search endpoint, the result returned is a mix of illust, novel, cos, and Q&A, and the filter switch is not found.

@Pretty9 do you need the endpoints for user profile?

@Pretty9 do you know the endpoints for user profile?

This endpoint contains the user's posts：

https://bcy.net/apiv3/user/selfPosts?uid=1091195447018196&since=0

bcy.net have shut down


Whether or not to set up StyleCI

Want your feedback here.  I was looking into setting up StyleCI to maintain a consistent code style throughout the app. In your opinion, would this make it more difficult for you guys creating pull requests, or would this be a good thing to make sure it's got the same format every time you touch it? Not a wrong answer here, just want to get some feedback before implementing something that would essentially set the standard for commits/merges.

Seems like a good idea. They even have a Laravel preset ready to go 🎉

:+1:  It sounds like a very good idea! I think that when a project begins to grow fast, it's time to keep a certain order and clear rules order to ensure a good future.

Thanks for the insight guys! Either of you have experience in setting it up at all? @RDelorier @fergthh

Got it set. Thanks again guys for the input, here's to clean coding!


glusterblock-provisioner with arbiter volume support?

The file storage version of gluster has support for enabling arbiter volumes via the volumeoptions StorageClass option, but it doesn't look like this is the case for block storage. This is currently possible via heketi-cli:
sh# heketi-cli volume create --name=block-test --gluster-volume-options="user.heketi.arbiter true" --size=1 --block

sh# heketi-cli volume list --server=https://heketi-storage.glusterfs.svc:8443 -I
Id:2ecbbe172090a9fa5bfbf9df5028f49a    Cluster:d1b667140f3314d0a6f6f507cd06e10f    Name:block-test [block]

Is there a reason why glusterblock doesn't support that parameter?

/cc @humblec

@rezie by arch, block volumes are created on top of file volume and we call it as "block hosting volume" , its kind of a one time creation with a size like "512G" or so and next block hosting volume will only be created only when block hosting volume is full with block volumes. The options on block hosting volume is also controlled via a group profile in general while heketi create block hosting volume.  iic, if you create a block volume by heketi-cli commmand as shown above, arbiter feature looks to be a no-op for me, I will crosscheck and come back..
Thanks @wongma7 for assigning this issue :)

I have another customer that would like to see arbiter support for block hosting. We tried a command similar to the one in the first comment above, but got an error message in stead...
So it is not working.
Is it possible to create the volume by hand in a different way?


Why does the Claim class have an items attribute?

Claim has items, getItems() and setItems(). The items are never actually set, though. Should they be in the class?

They should not be there.

I can zap 'em.

Closed in 53e546b7ff.


Fix transmute mess

Part of gtk-rs/gir#902
cc @EPashkin @sdroege

@GuillaumeGomez All green except for the usual macos


Function Overloading

Windows Terminal version
No response
Windows build number
No response
Other Software
No response
Steps to reproduce
#include <iostream>
int c(const char (&a1)[3])
{
	return 1;
}
int c(const char *a1)
{
	return 3;
}
int main()
{
	char arr[] = "hi";
	std::cout << c(arr) << std::endl;
	return 0;
}

Expected Behavior
No response
Actual Behavior
https://learn.microsoft.com/en-us/cpp/cpp/function-overloading?view=msvc-170
int c(const char (&a1)[3]);           char[3]          const char [3]           const char (&)[3]

int c(const char *a1);                char[3]          char*                         const char*

I don't understand why int c(const char (&a1)[3]); Matching has a higher priority.Sequences of trivial conversions are classified as exact matches.I really don't understand.How to match the priorities after many conversions?

Maybe this is the conversion?
int c(const char (&a1)[3]);           char[3]          const char [3]           const char (&)[3]

int c(const char *a1);                char[3]          const char [3]               const char*

How is this sequence decided?Why is conversion to reference higher than conversion to pointer?

Hi there! You may have better luck asking this question on Stack Overflow. This repository is for discussing issues in the Windows Terminal application and the Windows Console subsystem. We are not very good at giving generic C++ advice :)

I understand now. Thank you very much.


Suggestion: Install via Chocolately support

I've come to really like the ease with which I can install software with Chocolately and I really like Color Cop too! However, the version that is currently available seems to have not been approved and is approaching 3 years old (according to the timestamp).
Could that be updated with a current version and approved via the chocolately maintainers?

I contacted the maintainer of the colorcop package on the Chocolately site.  We just need to release a new version and they will support it?

I'm not sure how packages on Chocolately are submitted and approved unfortunately. Perhaps the maintainer knows?

Looks like there is a problem with the Chocolatey install package:
https://gist.github.com/choco-bot/92e5e11c0842ac68d4c1

I resubmitted the package for verification:
https://community.chocolatey.org/packages/colorcop
It looks like some people have been installing it using chocolatey.  We'll see what they respond with.


Button loading indicator could be improved/refurbished

Using 1.16.0
Right now the loading indicator looks dotted/jagged and sometimes it doesn't form a proper half-circle when it is small:

Maybe it would be better to switch to a SVG based solution?

@VyMajoris is this screenshot from Firefox?

@VyMajoris is this screenshot from Firefox?

No, that was on Edge. Here is a comparison:

It's subtle, but you can see that on Edge and on Chrome there are some "dots" where the white color is faded. I believe this is caused because the browser is not interlacing the rounded border to a sufficient degree. So when you make it small it seems that some parts gets "phased out".

not sure if changing the defult spin icon to a radial one is an option, that will make the aliasing unnoticeable.

The current spinner spins sooooo slooowwwlllyyy it kinda makes the UI feel slow. I'm looking to speed it up! Easy to do with custom CSS but I figured I'd mention here that I would personally prefer a faster default animation closer to .5s or .3s rather than the 2s default.

The current spinner spins sooooo slooowwwlllyyy it kinda makes the UI feel slow. I'm looking to speed it up! Easy to do with custom CSS but I figured I'd mention here that I would personally prefer a faster default animation closer to .5s or .3s rather than the 2s default.

That button loading class is going to change in daisyUI 3.0
But for now you can change the speed using custom CSS or using an ugly class like [&.btn:before]:[animation-duration:.3s]: https://play.tailwindcss.com/DlrGGnPgW1


Create sanaliL.md

📝 Description
Add a brief description.
💣 Is this a breaking change (Yes/No):

[ ] Yes
[x] No

🚧 How to migrate?
Don't need.
📝 Additional Information
lol

Dear @LosathiKK , please attach the link of your AI Agent or ILLA App


Improving README file

The project now support V5.

Thank you, great attention to details!

Coverage remained the same at 69.714% when pulling 860f2c374fdde6d681974cffc70cf1896486b736 on RoySegall:patch-1 into b795ddc7cdc0209c78e128cecb0ee1c8a7134d81 on meanjs:master.

Should we replace it with Node 6 not being supported?

@codydaig good point, although I think node v4 is the mainstream now and also the LTS version so possibly this is just an overflow of information to the user in the README.

@lirantal Fair enough


Enable changes to the InputListener in the VisualizationPanel

Currently, the InputListener in the VisualizationPanel is completely fixed and cannot be replaced. The InputListener handles the mouse move, mouse click, mouse wheel event, keystroke, etc. For some purposes, the behavior should be different than the standard behavior. There is, however, just one InputListener class that handles all.
The intent is to make the input listeners for the VisualizationPanel more fine grained, replaceable, and removable.

A method called addInputListener is added, which can be overridden in a subclass of the VisualizationPanel class. Currently, the addInputListener method is called in the constructor and has the following content:
    /**
     * Method to add listeners in the constructor. Can be overridden
     * in a subclass in case another type of input listener is
     * needed to handle mouse and keyboard events.
     */
    public void addListeners()
    {
        InputListener listener = new InputListener(this);
        this.addMouseListener(listener);
        this.addMouseMotionListener(listener);
        this.addMouseWheelListener(listener);
        this.addKeyListener(listener);
    }

It is now possible to add other listeners and handle the mouse events or keyboard events differently.