Review language in Authoring stacks

Review the Authoring stacks guide for language compliance.

JIRA: https://issues.redhat.com/browse/RHDEVDOCS-2565

JIRA: https://issues.redhat.com/browse/RHDEVDOCS-2565


Captive Portal: save database on /root/var when /var is in memory to keep sessions on reboot

Hello,
I've experienced some unexpected behavior with Captive Portal when using /var in memory.
On restart, all sessions are lost.
It's not a huge problem for the moment, because I don't use vouchers yet. But I plan to use them and I would like to have persistent sessions upon reboot.
I need to have /var in memory as I'm using an SSD that I don't want to ruin...
I thing that it will just require to add the /var/captiveportal/captiveportal.sqlite here:
https://github.com/opnsense/core/blob/ce32fb747b124b0efaa96187db39ac47728efe5c/src/etc/rc#L168
If you want me to test some commit just contact me !
Thanks,
Quentin Canel

Hi Quentin,
/var MFS is a trade-off between backup frequency and still writing the SD card for the backups... Nowadays you can set /tmp MFS and skip /var MFS. /tmp is where the most writes are, if you're not running an IPS at the same time. ;)
We could also add backup helpers for the captive portal session database, though we've also seen database corruptions stemming from backing up partial sqlite databases during write operations.
What do you think?
Cheers,
Franco

Hi @fichtner ,
First of all, thanks for your quick reply !
To be quite honest, I'm not sure that my opinion is really relevant. I'm not an expert of FreeBSD, and no more of storage weakness.
Of course, right now I've just selected /tmp MFS, and it works perfectly !
But I'm thinking about writes likes log files that can write a huge amount of data to /var, and I'm gone to the conclusion that it would be preferable to use /var MFS too.
Anyway, aside from my case, I thing that Captive Portal sessions should be saved in some persistent storage. One solution is to link the sqlite database to /root/var (as for other part of /var that are persistent when using MFS), or another solution is to change the Captive Portal script to let it look elsewhere for its database.
Thanks,
Quentin

So let's try it. I'll add the scripts soon and let you know to give it a test run, ok?

Thanks ! I'd be glad to do that !

@fichtner to avoid sqlite db corruptions, you could use the sqlite3 command with .backup in order to do a proper backup.

sqlite3 /file/path/database.file ".backup /backup/path/database.file"

@djGrrr nice, does this lock the db and copy it without meddling with the applications that use the database normally?

Other applications will be able to read from the db as normal while the backup operation is in progress, I am not totally sure about writing, but I do know that it won't lock out writing, at worst it will delay the writes until the backup is finished.

I could be wrong about the writes:
http://www.sqlite.org/backup.html
Either way, reading is allowed during the backup, and I doubt that a write-lock would be much of an issue, I would expect the size of the Captive Portal db to be relatively small?

@QuentinC @djGrrr how about this? applies on top of 17.1.2:
# opnsense-patch 156f8d4

I've just applied the patch.
I currently have one device connected. I've set the configuration option on "1 hour".
I will wait and come back to you after some system reboots !
Thanks,
Quentin

Hello Franco,
The first cron was missed. The error is that the file "/usr/local/etc/rc.backup_captiveportal" wasn't set to be executable.
I've changed the chmod and launched it by hand.
After the reboot, sessions were lost. But the backup were correct.
After restoring by hand (cp /conf/captiveportal.sqlite /var/captiveportal/captiveportal.sqlite), sessions were back.
I will try to investigate on it if I can find some time !
Thanks,
Quentin

Hi Quentin,
Oh, I didn't know opnsense-patch doesn't take care of the executable flag but that's obviously problematic. Sorry and nice catch!
The backup also triggers on a GUI-triggered reboot or shutdown. The cron job is only additional to guard against unexpected power loss.
Cheers,
Franco

Hi Franco !
You are missing mkdir /var/captiveportal/ before doing the cp of the backup file when restoring !
Here is my file:
#!/bin/sh

BACKUPFILE="/conf/captiveportal.sqlite"
BACKUPDB="/var/captiveportal/captiveportal.sqlite"

if [ "${1}" = "restore" ]; then
        if [ -f "${BACKUPFILE}" ]; then
                mkdir /var/captiveportal/
                cp "${BACKUPFILE}" "${BACKUPDB}"
        fi
else
        if [ -f "${BACKUPDB}" ]; then
                sqlite3 "${BACKUPDB}" ".backup ${BACKUPFILE}"
        fi
fi

Right thanks. Slightly different approach for later reuse went in as 052745d3b67f,

@QuentinC do you think we can close this and merge into 17.1.3?

Yes absolutely. It has been working perfectly for me since your patch !
My sessions survived several restart without any issue !
Thanks !

Thank you for idea + testing! I'm closing this and merge to 17.1.3.


[native_assets_cli] Deprecate metadata

We might not address this issue fully before stable.

https://github.com/dart-lang/native/issues/1251

But we're quite sure to remove the current metadata API, so deprecate it.

coverage: 92.037%. remained the same
when pulling 86bee4a9a28f40db602f8dcf9274a77afe5aa6ff on deprecate-metadata
into 3bc5454d84dd50c540617440ba1a50173bfe5444 on main.


Build process fails when an exercise use a NodeJS module

A nice way to add dependencies to some exercises would be to add those to the package.json file.
If a new dependency is added, and an individual exercise uses that dependency in the specs file (i.e.: tests need to use an external library), running tests inside the exercise folder works. But the build process (make command) fails.
Find a way to use package.json dependencies in specs files when running the make command.

I think we could address this by adding the dependency to the main package.json file and running npm install as part of the makefile.

Is there any specific case that we would need specific packages for an exercise? I understand that students should have an easy way to test their solutions, but we solved a similar problem on exercism/xjavascript by using a global installation of Jasmine.
Since Exercism is supposed to teach a programming language and not libraries, platforms and/or tools, why not use a simpler approach?

I tried that with the old system (gulp-cli, babel and the like). I don't remember exactly what was the problem. It probably was too slow to run all the tests, because of npm install on each one.
Or, during the build process with make, the working directory is not the same as the working dir when one works on a single exercise. I think I didn't dig deep in the build process with make.
Probably now, with Jest as the test runner, there is no need for a transpilation step, and adding dependencies to package.json will work. But that has a drawback, a single dependency for just one exercise will be spread among all exercises.
Maybe, this is an interesting issue to work. Any ideas?

@rchavarria I'm thinking a smarter makefile is the solution for this, but I also think this is somewhat dependent on #235 .
If we want to get rid of per-exercise package.json files, then we lose that functionality.
Since npm install is the de facto way to install JavaScript dependencies, I would feel better about closing #235 as "will not fix" and implementing this instead, rather than, for example, changing the makefile somehow to install modules where needed.  It would be better to stick to an approach that is likely to serve the users IRL.
Thoughts?

Yep. I agree we should make user's live as easy as possible.
I know it's a bit tedious to run npm install on each exercise. But having independent exercises is a key point of exercism. So, I'll close #235 with won't fix and we can have some ideas about how to make Makefile smarter.

Shaw we really consider this issue wontfix?

Or even close it. It's very old.
In fact, something improved when running tests with Jest. If we feel something need to be fixed, we can create a new issue and fix it then.


feat: pre-queued waited FlowMod batching on flow_manager

This is for supporting a pre-queued waited FlowMod batching. mef_eline initially implemented in the client level, later on of_multi_table, and now telemetry_int is also implementing it, since flow_manager already manages this, it should be the one centralizing it, reuse the code, and most importantly facilitate when it comes to ensuring that these flows won't be lost if the controller restarts while flows are being batched (especially if the client is doing it async and has already deleted the high level resource like an EVC). flow_manager saves the flows before sending them, which is typically fast, so it can also re-send via consistency check later on if any unexpected major disruption happens during this process.
Here's how the feature should behave:

If {"batch_interval": <int>, "batch_size": <int>}, is set in the payload, either via request or event, then it should batch accordingly, if should be compatible with how the NApps using these two values in their settings values, but then they'll parametrize in the request/event. If batch_size is 0 or not set then it shouldn't batch. It should also follow the force: True flag, meaning, if force: False, it should not block the request.

The API spec will not be updated to v2, although it should, but it's not breaking compatibility, so let's still support this on v2, since we know that in the future, once more validations are addressed/implemented we'll bump v3, so let's leave to tag v3 in the future only.

Once this feature is available, new issues will be mapped for mef_eline, of_multi_table, telemetry_int

cc'ing @Alopalao, @Ktmi to be aware since I'll ask you guys to help with especifically with mef_eline and of_multi_table. We'll need this on 2023.2, although the priority is lower. I'll take care of this issue here on flow_manager and telemetry_int.

Closing this in favor of https://github.com/kytos-ng/kytos/pull/412.


📖  Updated the community links

Please check if the PR fulfills these requirements

[ ] Tests for the changes have been added (for bug fixes/features)
[x] PR title follows the guidelines defined in  https://github.com/ossf/scorecard/blob/main/CONTRIBUTING.md#pr-process

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

What is the current behavior? (You can also link to an open issue here)

What is the new behavior (if this is a feature change)?
Updated the community links to be more accessible. Took the idea from https://github.com/tektoncd/community/blob/main/working-groups.md#chains

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)

Other information:

LGTM. Will leave it to @olivekl for the final approval.

Thanks!

@laurentsimon  I included your name in this. I completely forgot to get your approval. Can you please review it?

My only concern would be including the Zoom link, which Laurent mentioned as well. Otherwise, everything LGTM. Thanks for these improvements!

My only concern would be including the Zoom link, which Laurent mentioned as well. Otherwise, everything LGTM. Thanks for these improvements!

I updated the Zoom link title not to have the actual link. Thanks

My only concern would be including the Zoom link, which Laurent mentioned as well. Otherwise, everything LGTM. Thanks for these improvements!

I updated the Zoom link title not to have the actual link. Thanks

Maybe we could say "See calendar invite below"


Need help with the window that the grid within

I am new to ImGUI, but it has been pretty easy to figure out. What I am not figuring out is changing the size of the window that the grid is rendered in. Or in setting its position.  Before calling the ImNodeFlow::update(), I have the following to maximize the window:
const ImGuiViewport* MainViewport = ImGui::GetMainViewport();
ImGui::SetNextWindowPos(ImVec2(0, 0), ImGuiCond_FirstUseEver);
ImGui::SetNextWindowSize(MainViewport->Size, ImGuiCond_FirstUseEver);
But the ImGUI window for ImNodeFlow never matches the size of main viewport. What am I doing wrong? Thank you.

ImNodeFlow::update() does not call ImGui::Begin(). You must create a window yourself and inside that call the update function, and then by default it will occupy as much space as possible

Ah, thank you. That explains my confusion. Thank you for the quick response.


Type redefinition errors on latest Arduino IDE master

First: compliments for the excellent work to reduce the memory footprint for BLE!
Today I updated my ESP32 Arduino IDE to the latest master, and I got compilation errors (type redefinition errors). The cause was in NimbleAddress.h:
typedef enum {
    BLE_ADDR_TYPE_PUBLIC        = 0x00,
    BLE_ADDR_TYPE_RANDOM        = 0x01,
    BLE_ADDR_TYPE_RPA_PUBLIC    = 0x02,
    BLE_ADDR_TYPE_RPA_RANDOM    = 0x03,
} esp_nimble_addr_type_t;

typedef uint8_t esp_nimble_addr_type_t ;

I changed it to:
typedef enum {
    NIMBLE_ADDR_TYPE_PUBLIC        = 0x00,
    NIMBLE_ADDR_TYPE_RANDOM        = 0x01,
    NIMBLE_ADDR_TYPE_RPA_PUBLIC    = 0x02,
    NIMBLE_ADDR_TYPE_RPA_RANDOM    = 0x03,
} esp_nimble_addr_type_t;

//typedef uint8_t esp_nimble_addr_type_t ;

Now I also had to change NimBLEClient.h into:
bool                                       connect(NimBLEAddress address, esp_nimble_addr_type_t type = NIMBLE_ADDR_TYPE_PUBLIC, bool refreshServices = true);   // Connect to the remote BLE Server
and NimBLEClient.cpp:
bool NimBLEClient::connect(NimBLEAddress address, esp_nimble_addr_type_t type, bool refreshServices) {
and lastly in this file:
    return connect(address, (esp_nimble_addr_type_t)type, refreshServices);

Thanks for reporting this I'll have a look at it soon. Those typedefs only exist for compatibility and I'm not even sure they are necessary, with any luck they can be removed completely as I'd prefer not to use esp specific code at all if possible.

Had a quick look into this and I don't see any issue unless `#include "esp_bt_defs.h" is included in your sketch. So unless there is some need for that include, you can remove it,  I will put a guard on the defines later.

Had a quick look into this and I don't see any issue unless `#include "esp_bt_defs.h" is included in your sketch. So unless there is some need for that include, you can remove it, I will put a guard on the defines later.

I think the issue is that this file seemingly gets included by default when including the WiFi/HTTPClient clients:
In file included from /Users/jbeeler/.platformio/packages/framework-arduinoespressif32/tools/sdk/include/bt/esp_gap_ble_api.h:22:0,
                 from /Users/jbeeler/.platformio/packages/framework-arduinoespressif32/tools/sdk/include/protocomm/protocomm_ble.h:17,
                 from /Users/jbeeler/.platformio/packages/framework-arduinoespressif32/tools/sdk/include/wifi_provisioning/wifi_provisioning/scheme_ble.h:18,
                 from /Users/jbeeler/.platformio/packages/framework-arduinoespressif32/libraries/WiFi/src/WiFiProv.h:21,
                 from /Users/jbeeler/.platformio/packages/framework-arduinoespressif32/libraries/WiFi/src/WiFi.h:40,
                 from /Users/jbeeler/.platformio/packages/framework-arduinoespressif32/libraries/WiFiClientSecure/src/WiFiClientSecure.h:25,
                 from /Users/jbeeler/.platformio/packages/framework-arduinoespressif32/libraries/HTTPClient/src/HTTPClient.h:35,
                 from src/SecureWithRedirects.h:8,
                 from src/SecureWithRedirects.cpp:6:
/Users/jbeeler/.platformio/packages/framework-arduinoespressif32/tools/sdk/include/bt/esp_bt_defs.h:109:35: error: redeclaration of 'BLE_ADDR_TYPE_PUBLIC'

The errors appear if I #include <Arduino.h> or #include <WiFi.h>. I do not #include "esp_bt_defs.h

Thanks, good to know, I'll try to get this fixed today.

A fix is available on the branch GitHub linked above (renaming the defines as @Jeroen88 suggested) if you want to pull it and be done with it, though I can't comment as to whether it's the right fix... :)

@thorrak Thanks, the reason these are there is for backward compatibility if someone used them in their sketch from the old Library so I needed to keep the names the same. I'm thinking of just eliminating them instead and just directing users to use the NimBLE types.

Fixed in commit ff99200.

Fixed by PR


API package

siad is now just two files. The siad testing has moved to api. Functionality should be unaffected.
I consider the api package to be incomplete as of now. I'd like to make it more useful to siac, but I haven't yet hit upon the best way of accomplishing that.

server_test.go:151: GET /server/stop returned error 404: 404 page not found

Some smaller comments.
I also thought the api was going to be in the modules folder.

I could see arguments for both sides. My first thought was, "well, none of the other modules import the API server." But that's also true of the host and hostdb. So it isn't 100% clear.
It seems like the modules folder is eating all the other packages, so I think down the line we may wind up moving all the modules stuff up a directory.

Even if we move all the modules up a layer, we still need an explicit modules package.

Are you sure? Why is it required?

The modules need to import eachother's interfaces without actually importing eachother. This prevents import cycles when doing testing. Otherwise the tpool would be importing a miner (which has a wallet) to help with testing, but the miner imports the tpool.
Using the modules package + interfaces, we can have testing scenarios where the tpool uses a miner but avoids import loops.

Sure, so all you do is move the interface definitions to a top-level file, or maybe to the types package.


refactor: rename empty dir functions

refactor isEmpty & emptyDir for reading

Description

Additional context

What is the purpose of this pull request?

[ ] Bug fix
[ ] New Feature
[ ] Documentation update
[x] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the Commit Convention.
[ ] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[ ] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

You need to prefix your PR with refactor:  (or another option from the list) in order to get all the checks passing

@benmccann thx！


KDirection computation

It is a question. I do not know if it is a bug or a feature :)
What are the steps to reproduce this issue?
Use the method setGeometryAsParametricSplittedPillarNodes on an ParametricGrid
What does happen?
The KDirection is automatically computed using the control points.
The computation takes into account the control points of pillars that are not defined (with pillarKind == -1). In my case these pillars have an inverted z coordinate. It results to a 'not monotonic'. So, my input and output grids do not have the same KDirection even the output one is just a subset of the input one (by removing some k layers).
What were you expecting to happen?
My grid should be in KDirection down state.
Any logs, error output, etc?
Any other comments?
What versions of fesapi are you using?

Thanks Lionel,
I think this is a Fesapi bug.
I'll look at it in next commit

Is it possible to have computeKDirection as a public member function and a parameter of type gsoap_resqml2_0_1::resqml2__KDirection for the function setGeometryAsParametricSplittedPillarNodes ?

I think yes to first question even if I don't really understand the need.
I think no to second question. I want to avoid some possible invalid situations even if it has a performance impact.

The idea is to let the user decide between keeping the KDirection of another grid (avoid recomputing it) or compute it (using the function) at the a save stage. I understand that it could create invalid situations if not used correctly.

Computing the K direction is in my opinion not time consuming even if huge grids regarding the other things to write. I think it is non significant regarding the global export of a grid.
So, I would prefer not even allow this optimization to be honest which could allow inconsistencies. I wuld even like to commute K Direction everytime longer term (but it is harder, more time consuming in non parametric case).
If I am wrong, i.e. if you observed some significant performance penalties, I could change my mind.


aarch64/lib/liblocalization_msf.so : input file(s) do not exist

System information

OS Platform and Distribution (e.g., Linux Ubuntu 18.04): 18.04
Apollo installed from (source or binary): source
Apollo version (3.5, 5.0, 5.5, 6.0): master
Output of apollo.sh config if on master branch:

Steps to reproduce the issue:

** during apollo building of master branch, i had that error " /apollo/third_party/localization_msf/BUILD:8:11: //third_party/localization_msf:localization_msf: missing input file '//third_party/localization_msf:aarch64/lib/liblocalization_msf.so'
(10:28:28) ERROR: /apollo/third_party/localization_msf/BUILD:8:11 1 input file(s) do not exist"
_** I can't find aarch64 folder in localization_msf????
Some one can help me thank you!!!!!!!!!!!!!!

Supporting materials (screenshots, command lines, code/script snippets):

Some one can help me thank you!!!!!!!!!!!!!!

This package does not implement the code or dynamic library of aarch64 architecture. If it is not necessary, please use version 6.0.0.

Hi again, I need this library to build localization module (liblocalization_msf.so)

This is a third-party code library, which may not be necessary. For you, you can delete this library without compiling, so as to eliminate this error. For the function of location service, use the official one. A third-party code library is convenient for you to realize functions, but it is not necessary. But I guess the official source code should be available, but it hasn't been released for some reasons. I hope it can help you.

sorry but MY PROBLEM : i can't find this library, so how can I delete it? should i change the BUILD file?

Yes, remove aarch64 related compilation options.

hi, thank you, but I have an another error  related to library (libmsf_localization_component.so), do have any idea about that?

I suggest you change the 6.0.0 code. I told you at the beginning, but you stick to the "master" version. Version 6.0.0. that does not have this library and still works well.


Finastra - File name change

Description of Task
The naming convention for the PT eCert SEND file and the PT eCert FEEDBACK file need to be confirmed. Specifically, need to confirm that file names produced by SIMS are not identical to those produced by SFAS.
Context:
Currently, SFAS produces a PT eCert SEND file with naming convention: TPBC.EDU.PTCERTS.Dyyyyjjj.001
Currently, SIMS is expecting a PT eCert FEEDBACK file with naming convention: ____?
Currently, SFAS is expecting a PT eCert FEEDBACK file with naming convention:  TEDU.PBC.ECERTSFB.PT.yyyymmdd.001
Acceptance Criteria:

[ ] Change the PT eCert SEND file naming convention to: TPBC.EDU.NEW.PTCERTS.Dyyyyjjj.001 (once in production, the 'T' from the beginning will be dropped)
[ ] Change the PT eCert FEEDBACK file process to expect naming convention of: TEDU.PBC.NEW.ECERTSFB.PT.yyyymmdd.001  (once in production, the 'T' from the beginning will be dropped)

@HRAGANBC the feedback files were adjusted in the last ticket to include the "NEW".
I did not get why we need the temporary "T" for the e-Cert if also contains the "NEW". We can leave this for a grooming also.
Is the T the same that indicates the environment for other ESDC integrations?

@andrewsignori-aot
The 'T' is used to distinguish TEST files from PRODUCTION files, since the SFTP servers which are used to relay these Test files are the same servers/folders containing all the real production files, and they need to make sure they're clearly marked.
I can't comment on ESDC integrations since I've never been exposed to those processes, but my gut instinct is yes, the T is common usage to indicate TEST files.
OK if the Feedback file name is already adjusted then the First AC is done, I jsut wasnt sure if that was still outstanding.

@HRAGANBC ESDC integrations are e-Cert, Feedback, SIN Validation, and others. They already use different letters for different environments, so we should be good.
If the ticketed is ready it can be moved to the appropriate lane, anything but "new issues".


Fix torchvision version error

Per this issue https://modalbetatesters.slack.com/archives/C031Z7H15DG/p1674169099238619
The dreambooth_app.py error with the message
ERROR: Could not find a version that satisfies the requirement torchvision (from versions: 0.1.6, 0.1.7, 0.1.8, 0.1.9, 0.2.0, 0.2.1, 0.2.2, 0.2.2.post2, 0.2.2.post3)

Adding python version contraint fixes that.

Thanks!


Error when running bash run.sh after downloading pre-trained weights

Hello,
I downloaded the pre-trained model weights in ZIP format, but I did not extract the files because the file extension is lost upon extraction. Instead, I created a folder named ckpts and placed the ZIP file inside this folder. After completing the setup, I ran the bash run.sh script, but encountered the following error:
(s2d) reza@reza-virtual-machine:~/S2D-main$ bash run.sh
cp: cannot stat 'ft_dfew.sh': No such file or directory
./saved/model/finetuning/dfew/affectnet7/ckpts/Pretrain-AffectNet-7.pth/split01_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain ckpts/Pretrain-AffectNet-7.pth
cp: cannot stat 'ft_dfew.sh': No such file or directory
./saved/model/finetuning/dfew/affectnet7/ckpts/Pretrain-AffectNet-7.pth/split02_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain ckpts/Pretrain-AffectNet-7.pth
cp: cannot stat 'ft_dfew.sh': No such file or directory
./saved/model/finetuning/dfew/affectnet7/ckpts/Pretrain-AffectNet-7.pth/split03_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain ckpts/Pretrain-AffectNet-7.pth
cp: cannot stat 'ft_dfew.sh': No such file or directory
./saved/model/finetuning/dfew/affectnet7/ckpts/Pretrain-AffectNet-7.pth/split04_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain ckpts/Pretrain-AffectNet-7.pth
cp: cannot stat 'ft_dfew.sh': No such file or directory
./saved/model/finetuning/dfew/affectnet7/ckpts/Pretrain-AffectNet-7.pth/split05_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain ckpts/Pretrain-AffectNet-7.pth
done!
cp: cannot stat 'ft_ferv39k.sh': No such file or directory
./saved/model/finetuning/ferv39k/affectnet7+VoxCeleb2/ckpts/Pretrain-AffectNet-7.pth/eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain ckpts/Pretrain-AffectNet-7.pth
done!
ckpts/Pretrain-AffectNet-7.pth ./saved/model/finetuning/mafw/affectnet7+VoxCeleb2/ckpts/Pretrain-AffectNet-7.pth/split01_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain 1
Done!
ckpts/Pretrain-AffectNet-7.pth ./saved/model/finetuning/mafw/affectnet7+VoxCeleb2/ckpts/Pretrain-AffectNet-7.pth/split02_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain 2
Done!
ckpts/Pretrain-AffectNet-7.pth ./saved/model/finetuning/mafw/affectnet7+VoxCeleb2/ckpts/Pretrain-AffectNet-7.pth/split03_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain 3
Done!
ckpts/Pretrain-AffectNet-7.pth ./saved/model/finetuning/mafw/affectnet7+VoxCeleb2/ckpts/Pretrain-AffectNet-7.pth/split04_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain 4
Done!
ckpts/Pretrain-AffectNet-7.pth ./saved/model/finetuning/mafw/affectnet7+VoxCeleb2/ckpts/Pretrain-AffectNet-7.pth/split05_eval_lr_1e-5_epoch_100_Augment_size224_sr1#tag#affectnet_pretrain 5
Done!
I am running this on an Ubuntu 64-bit virtual machine. Could you please assist me with troubleshooting this issue? Specifically, I would like to know if the pre-trained weights need to be extracted or if there are any other steps I need to follow.
Thank you!

Please check the output file  and provide more outputs.
You can download the pre-trained model with .pth extension directly.

Please check the nohup.out file in the 'saved' directory

The issue has been resolved by replacing the following two phrases in the ft_dfew.sh file:
Original Phrase: cp "$(basename "$0")" $OUTPUT_DIR/
new phrase:    cp "$(dirname "${BASH_SOURCE[0]}")/$(basename "$0")" $OUTPUT_DIR/


added support for modulo where queries

Not 100% sure about my implementation- should I have gone for a ModuloWhereFragment rather than re-appropriating the standard WhereFragment?
Would rather do it right- don't hesitate to say this sucks :)
Also, I've got autocrlf = false on my git config.  If so, let me know, I'll fix it.

 Can I catch up with you early next week on this?

Cool, just let me know when. In the mean time I'll fix the line ending issue and take another stub at it, as I can see there are conflicts...

btw- if it's easier for you, feel free to drop a few lines here whenever you've got the time, and I'll take it from there. No rush.


Check if testing slices are actually needed in the code

Testing slices are asked for in the train_model function, where they are actually not even used at all (it is not used in RandomForestClassifier).
Maybe this is a remnant from an older version of the code, like when confusion matrices were actually produced (e.g. like the functions not used anymore here and here). Let's check if they are actually used. If not, let's remove it.
Still, that does not mean we shouldn't ask users to have extra slices to test/cross-validate the predictions. Personally, I would rather suggest drawing a lot of slices for one scan, test that scan to see how many training slices should be used (incl. cross-validation on the labelled slices not used as we did in the methods paper). That way, users can focus on doing a very good test on one stack, and then using those settings on the other stacks (and not draw slices that are not really of use).

I have stopped using them for the segmentations that are done in our group. Should be removed in future major update of the code. Maybe with the integration of the ubiquitousTraits branch.


Improve error handling

Currently we only log error in the noble-winrt package as noble has a rather bad error handling story (https://github.com/noble/noble/issues/830). The problem is that it only emits a warning if e.g. a peripheral is not found and there is no way for bindings to return an error.
A proper solution would be to add a error argument in the bindings interface and the noble interface to let bindings error bubble up to the user.
Noble.prototype.onDisconnect = function(peripheralUuid, error) {
  var peripheral = this._peripherals[peripheralUuid];
  if (peripheral) {
    peripheral.emit('disconnect', error);
  } else {
    this.emit('warning', 'unknown peripheral ' + peripheralUuid + ' disconnected!');
  }
};

Wondering what the status is on this issue.
I'm working with a series of devices that I need to request info from in a couple of steps:
*connect
*log in
*sent request for a log
*retrieve the log
*request specific value
*request specific value
*disconnect.
Often this works, but sometimes the device just disconnects halfway through (which I think is the peripheral's fault). I can add 'check if connected and reconnect if needed' function between each of my steps, but this doesn't work if the connection dropped while in the middle of reading something. Instead of returning an error (and letting me reconnect and retry) the script just hangs.
My solution for now is to set a timeout that gets fired if any of the steps takes too long, reconnects and retries the step.


BUG: The Contact Us Page is Not Responsive

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug
Hey @Trisha-tech
Currently, our Contact Us Page is not responsive, which affects its usability across different devices and screen sizes. This issue needs to be addressed to ensure a consistent user experience across all platforms.

Expected behavior
The Contact Us Page should display and function properly on mobile devices.
Add ScreenShots
No response
On which device are you experiencing this bug?
No response
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

Is there an existing issue for this?

[x]  I have searched the existing issues

Describe the bug
Hey @Trisha-tech
Currently, our Contact Us Page is not responsive, which affects its usability across different devices and screen sizes. This issue needs to be addressed to ensure a consistent user experience across all platforms.

Expected behavior
The Contact Us Page should display and function properly on mobile devices.
Add ScreenShots
No response
On which device are you experiencing this bug?
No response
Record

[x]  I have read the Contributing Guidelines
[x]  I'm a GSSOC'24 contributor
[x]  I have starred the repository

Hello @RadhikaMalpani1702 , Go for it
All the Best


Is it possible to use vue-grid-layout with TypeScript?

As I see, no types declaration are provided. Could you please give some tips how to use this plugin in project with typescript?
Thanks in advance.

I don't know typescript, so can't really help you on that, sorry.

I'm using it in a typescript project and it works just fine. Since this is packaged and deployed as a vue component, there's not much need for types. Most of the things you'll want to do are configured with vue binding properties and templates.
Additionally, the base library used by this project, interactjs, does have types if you need to work with that directly you can.

I'm using it in a typescript project and it works just fine. Since this is packaged and deployed as a vue component, there's not much need for types. Most of the things you'll want to do are configured with vue binding properties and templates.

I'm importing vue-grid-layout as it's shown in example:
import VueGridLayout from 'vue-grid-layout';
...
components: {
  GridLayout: VueGridLayout.GridLayout,
  GridItem: VueGridLayout.GridItem
},
And then I have an error:
Property 'GridLayout' does not exist on type 'typeof import("vue-grid-layout")'.
I'm not really experienced in typescript so I just can't figure out how to deal with components in this case. It would be great if you could share your experience!

I was wrong in my original statement! Its been a while since it was setup in my project, so the details had long left my memory. When you posted the error I checked how I'm doing it and I realized I ran across the same thing.
I had to change the import to an implicit any, note my own comment directly contradicts my above statement. Oops.
// @ts-ignore -- this doesn't have typings so implicit 'any' will have to be ok.
import * as VueGridLayout from 'vue-grid-layout';
...
@Component({  components: {
    GridLayout: VueGridLayout.GridLayout,
    GridItem: VueGridLayout.GridItem,
  },
})

Funny how once you get something working, the details become fuzzy and all you can remember is that it works for you now. Sorry for the confusion. I hope this helps.

@fuzzzerd thank you for reply, I think I'll use @ts-ignore too, it's the simplest way for now.

I disagree that this doesn't need typing. Specifically when defining the GridItem data list. This vue-grid-item.d.ts should cover most use cases, if not all:
declare module 'vue-grid-layout' {
  import Vue from 'vue';

  export class GridLayout extends Vue {}

  export class GridItem extends Vue {}

  export interface GridItemData {
    x: number;
    y: number;
    w: number;
    h: number;
    i: string;
  }
}

then you get full type support, even for custom data sets:
import { GridLayout, GridItem, GridItemData } from 'vue-grid-layout';

interface CustomData extends GridItemData {
  label: string;
}

const layoutData: CustomData[] = [
  { x: 0, y: 0, h: 2, w: 2, i: "0", label: "My First Item" }
];
...

@tommyo
Excuse me, could you give me an example of how to use it? Or maybe somewhere there is a whole project using this?

Excuse me for digging up this issue but for the next ones who like me will come across this post, with Vue 3, there are small modifications to be made to @fuzzzerd's solution :
declare module 'vue-grid-layout' {
    import type { DefineComponent } from 'vue';

    // Define GridLayout and GridItem as components
    export const GridLayout: DefineComponent<{}, {}, any>;
    export const GridItem: DefineComponent<{}, {}, any>;

    export interface GridItemData {
      x: number;
      y: number;
      w: number;
      h: number;
      i: string;
    }
}


couldn't find file '../vis/module/header'

Hi! I install the gem but it throws me this error
couldn't find file '../vis/module/header' under '~/.rvm/gems/ruby-2.1.0/gems/vis-rails-2.0.0/vendor/assets/javascripts' with type 'application/javascript'

To solve it, I went into the gems code and use //= require_relative insted of //= require. I'm using Rails 4.1.5. Regards.

Thank you,
A new vis-rails-2.0.1.gem published with your changes.
Tell me if everything is OK with it.
But this gem needs an update to the latest https://github.com/almende/vis version...


How do I validate CNPJ?

Is there a way to validate CNPJ? Or can I implement a custom validator that does more than only check if matches the regex pattern?

Actually there isn't a CNPJ validation available by default. You can implement your own validation as well. Feel free to contribute a reopen this issue it's certainly a really good enhancement.


Update ASF-STM.user.js

wrapped game names into label tag improving UX with filters; added a check that fixes script's crash if there was an error retrieving profile data

Thank you for your contribution! 🏆


Update HA example code for scrutiny readmes

Using the original examples, you only get 1 sensor in Home Assistant that has a hard-coded value of OK with all of the JSON data listed as attributes on that single sensor. I split these out to be individual sensors in HA that each have the correct value(s). I also attempted to annotate the special sensors like SMART status and temperature with the correct properties in HA.

You're the best thanks!


Option to disable group display in BaseLayerPicker

In Cesium 1.45 the layout of BaseLayerPicker was changed. Now the enduser see always a group "Cesium Ion" and "Other" - but the user has no idea where the difference is. For me this groups are just interesting as dev. So it would be nice to have an option to disable this and get layout like before Cesium 1.45.

@SunBlack I wrote up #6572 to address this (sorry I originally thought this was a forum post and ended up writing up a duplicate issue).
As a reminder, the initial list in the base layer picker is provided for demo/development purposes.  You should always be providing a custom list of layers for your own apps, and you can simply leave off the category option on those layers.

@SunBlack this was fixed in #6574 and will be in 1.46 release on June 1st.


Issue when debugging extension

rejected promise not handled within 1 second: Error: command 'extension.js-debug.clearAutoAttachVariables' not found
/home/shadycuz/.vscode-server/bin/379476f0e13988d90fab105c5c19e7abc8b1dea8/out/bootstrap-fork.js:5
stack trace: Error: command 'extension.js-debug.clearAutoAttachVariables' not found
    at g._tryExecuteCommand (vscode-file://vscode-app/c:/Users/work/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:1525:3364)
    at vscode-file://vscode-app/c:/Users/work/AppData/Local/Programs/Microsoft%20VS%20Code/resources/app/out/vs/workbench/workbench.desktop.main.js:1525:3245

This was for the first option 1, a TS extension.
I'm not sure how to retrieve the version of vscode-generator-code that is installed.

/needsMoreInfo


Card Array button error

 The margin between the button and the body text is incorrect
Detailed description

The margin between the button and the body text above needs to be 32px. Currently it's set to a minimum margin of 32px. The minimum margin above the body text should be set to 32px, but that shouldn't be a fixed margin.

Is this a feature request (new component, new icon), a bug, or a general
issue?

Is this issue related to a specific component? Card Array

What browser are you working in? Chrome, Firefox, Safari

The 32px margin above the button should be fixed

This bug was fixed on the latest commit.


feat: add User Search

Description

wip

[x] boilerplate SearchDialog Component
[x] add SearchInfo and SearchError sub-components
[x] add SearchDialogTrigger Component
[x] integrate Trigger component to TopNav component
[x] boilerplate SearchResult component with demo search functionality (till api is ready)
[x] add keyboard shortcut to SearchDialogTrigger
[ ] add keyboard control to SearchDialog results list

What type of PR is this? (check all applicable)

[ ] 🍕 Feature
[ ] 🐛 Bug Fix
[ ] 📝 Documentation Update
[ ] 🎨 Style
[ ] 🧑💻 Code Refactor
[ ] 🔥 Performance Improvements
[ ] ✅ Test
[ ] 🤖 Build
[ ] 🔁 CI
[ ] 📦 Chore (Release)
[ ] ⏩ Revert

Related Tickets & Documents

Fixes #1647
Mobile & Desktop Screenshots/Recordings

Added tests?

[ ] 👍 yes
[ ] 🙅 no, because they aren't needed
[ ] 🙋 no, because I need help

Added to documentation?

[ ] 📜 README.md
[ ] 📓 docs.opensauced.pizza
[ ] 🍕 dev.to/opensauced
[ ] 📕 storybook
[ ] 🙅 no documentation needed

[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?

Hey @babblebey, The API for this is ready here FYI 👍

Hey babblebey, The API for this is ready here FYI 👍

Great stuff, thanks @OgDev-01

@babblebey  Can we do something like this where we only show the search icon?

How is this coming along @babblebey. Are you blocked?

Oh my apologies! @bdougie
I'm working on it, No blockers!
Was a little occupied, conclusion shortly 🙏🏾🙏🏾

@babblebey looks great! The modal doesn't close when I click on a user from the search results though

babblebey looks great! The modal doesn't close when I click on a user from the search results though

Oh wow! 🤦🏾♂
I can't believe I skipped that, and I considered that in my ***KeyboardCtrls onClick Enter key.
I will address it, thanks for pointing this to me @brandonroberts

Took a look on mobile and the logged out view is not quite there.

I also confirmed that I cannot select any users in the list. OnClick doesn't work but when I long press on iOS I can open via the peak screen.

Took a look on mobile and the logged out view is not quite there.

Yea yea! The Arrangement on that TopNav component really needs some refactoring!
I had the SearchTrigger seat inside of one of the components specifically AuthSection to hold it in the flex there.
I'll appropriate.

I also confirmed that I cannot select any users in the list. OnClick doesn't work but when I long press on iOS I can open via the peak screen.

It actually does work! It navigates to the User's profile behind the Modal!
But, the Modal's openSearch state is still set to true 😅, exactly what @brandonroberts talked about

New Changes

Fix Top Nav: I refactored the TopNav component extracting the nav element that wraps the menu items into a Separate component, and reused in a separate div optimized for mobile.
Move openSearch state: I moved the openSearch state to the GlobalState's store, this because the component is getting drilled down too many components within the SearchDialog and becoming uneasy to manage.
Implement Routing in UserResultCard: I implemented routing into the UserResultCard in place of default anchor navigation action; I found that a click on the anchor element's navigation to the required route/page is noticeably slower than routing; this causes the SearchDialog to close (via onClick action first) but page still waits before loading the required route/page (I guess the speed varies depending on user's network connection). The usage of routing proves faster as its the functionality already implemented with selection via KeyboardCtrls.

const handleClick: React.UIEventHandler<HTMLAnchorElement> = (e) => {
  e.preventDefault(); // <- Stops Original anchor/Link navigation action ❌
  router.push(e.currentTarget.href); // <- Uses Routing instead 🍕🍕🍕
  setOpenSearch(false); // <- Close SearchDialog afterwards
};

<Link
  href={`/user/${login}`}
  ....
  onClick={handleClick}
>
  <Avatar size="sm" className="!rounded-full flex-none" avatarURL={getAvatarByUsername(login)} />
  <div className="flex items-center gap-2 overflow-hidden">
    .....
  </div>
</Link>

🍕

🍕


Disable gcCollector for pypy

We use gc.get_stats to provide metrics at gcColector . Pypy gc have the same method but they are very different. (https://github.com/prometheus/client_python/issues/378 http://doc.pypy.org/en/latest/gc_info.html#gc-get-stats)
I think it is better just to not provide gc metrics with pypy.

Thanks!

Any chance of a release? This seems to be breaking prometheus-async's test suite on both PyPys:
______________________ ERROR collecting tests/test_aio.py ______________________
tests/test_aio.py:24: in <module>
    from prometheus_client import Counter
.tox/pypy3/site-packages/prometheus_client/__init__.py:5: in <module>
    from . import gc_collector
.tox/pypy3/site-packages/prometheus_client/gc_collector.py:46: in <module>
    GC_COLLECTOR = GCCollector()
.tox/pypy3/site-packages/prometheus_client/gc_collector.py:17: in __init__
    registry.register(self)
.tox/pypy3/site-packages/prometheus_client/registry.py:24: in register
    names = self._get_names(collector)
.tox/pypy3/site-packages/prometheus_client/registry.py:64: in _get_names
    for metric in desc_func():
.tox/pypy3/site-packages/prometheus_client/gc_collector.py:37: in collect
    for generation, stat in enumerate(gc.get_stats()):
E   TypeError: 'GcStats' object is not iterable

It's on my todo list. I'm expecting some OpenMetrics draft spec changes next week that I also want to include, so it should happen then.


Implement multi-lang font support for ImGui

Summary of feature
Add smth like GlyphRange property to ImGuiFontConfig to use non-English languages.
In ImGui exists function AddFontFromFileTTF, that works like this:
ImGuiIO& io = ImGui::GetIO();
io.Fonts->AddFontFromFileTTF("NotoSansCJKjp-Medium.otf", 20.0f, NULL, io.Fonts->GetGlyphRangesJapanese());

Comments
I think implementation may look like that:
using System;

// <...>

{
    public readonly struct ImGuiFontConfig
    {
        public ImGuiFontConfig(string fontPath, int fontSize)
        {
            // <...>
        }

        public ImGuiFontConfig(string fontPath, int fontSize, IntPtr glyphRange)
        {
            // <...>
            GlyphRange = glyphRange;
        }

        public string FontPath { get; }
        public int FontSize { get; }
        public IntPtr GlyphRange { get; } = IntPtr.Zero;
    }
}

So the using of AddFontFromFileTTF in ImGuiController, if  imGuiFontConfig.Value.GlyphRange != IntPtr.Zero, can be like that:
io.Fonts.AddFontFromFileTTF(
    imGuiFontConfig.Value.FontPath,
    imGuiFontConfig.Value.FontSize,
    null,
    imGuiFontConfig.Value.GlyphRange
);

I tried to implement it by myself, but I'm C# noob :-(
Does this have a proposal?
ImGui shows just "???? ??????" instead of "всем привет". I can't use any language other than English in simple scenario like:
ImGuiFontConfig config = new ImGuiFontConfig(source, fontSize, io.Fonts.GetGlyphRangesCyrillic());
_controller = new ImGuiController(_gl, _window, _input);

And I don't find the way to bind config to controller, I think is doesn't exist.

This seems like a deeper problem with the font implementation. No glyph beyond 0x00ff (ANSI range) will be shown on any element. Just try to show any letters > 0x000FF.
Silk.NET.OpenGL.Extensions.ImGui.ImGuiFontConfig fontConfDefault = new("ui-font.ttf", 16);
    _Controller = new ImGuiController(
    _Gl = _Window.CreateOpenGL(),
    _Window,
    _InputContext = _Window.CreateInput(),
    fontConfDefault
;
...
ImGuiNET.ImGui.Text("\u0166"); // Ŧ (T-Bar symbol) from unicode.

Shuws up as ? on UI.

This seems to be a deeper problem with the font implementation. No glyph beyond 0x00ff (ANSI range) will be shown on any element. Just try to show any letters > 0x000FF.
Silk.NET.OpenGL.Extensions.ImGui.ImGuiFontConfig fontConfDefault = new("ui-font.ttf", 16);
_Controller = new ImGuiController(
    _Gl = _Window.CreateOpenGL(),
    _Window,
    _InputContext = _Window.CreateInput(),
    fontConfDefault
;
...
ImGuiNET.ImGui.Text("\u0166"); // Ŧ (T-Bar symbol) from unicode.

Shows up as ? on UI. Worth mentioning: the regular ImGUI.NET library can show these characters just fine.

As stated within the original issue message, this is due to a lack of user-definable glyph range support, also 'Worth mentioning: the regular ImGUI.NET library can show these characters just fine.' doesnt make too much sense, since ImGui.NET doesnt display anything on its own, it needs a controller, and our controller does not have user-definable glyph ranges


UI Issues with environment details page

Rancher Version: master 8/11
Steps to Reproduce:

[x] Access box is too high

[x] Lots of white space below Name and below grey line?

[x] Description is too far to left and seems to floating

Version - master 9/8
Verified fixed


Update README to include Gradle dependencies block

The example for Gradle is incomplete, having not defined the pgv-java-stub dependency.

Hey @robzienert thanks for the PR! Would you mind fixing the DCO sign-off on your commit and rebasing off of, or merging, master?

Crap, now I've just complicated things further. I'm going to close this PR, but @robzienert if you want to make a new one applying the same changes at master, I'd be happy to approve it.


Nesting Horizontal ScrollView Inside TabView

Is there any way to give precedence to a ScrollView nested inside a ScrollableTabView? Whenever I swipe within the ScrollView, the tab begins to change, so I would like to lock the ScrollableTabView when someone scrolls within the ScrollView horizontally.
For example,
<ScrollableTabView>
  <View>
    <Text>Page 1</Text>
  </View>
  <View>
    <Text>Main Page</Text>
    <ScrollView>
      Recognize touch event that occurs here, and lock the scrollable tab view accordingly
    </ScrollView>
  </View>
  <View>
    <Text>Page 3</Text>
  </View>
</ScrollableTabView>

try locked property. zIndex may help. Try to find on stackoverflow how to hanle scroll inside scroll.


[WFLY-951] adjustment of the fix for expiry scanner definition

https://issues.jboss.org/browse/WFLY-12255 (follow-up to https://issues.jboss.org/browse/WFLY-951)
By Narayana functionality the expiry scanner class name can be defined with shortened version of the property name or with property qualified with full class name.

Retesting locally. I run the single test and the whole fleet of clustering tests as well and all passed. I updated the PR with master and pushed to check the CI.

@ochaloup I see "RecoveryEnvironmentBean.expiryScannerClassNames shows up in the testsuite. Does it make sense to do a similar test for com.arjuna.ats.arjuna.common.RecoveryEnvironmentBean.expiryScannerClassNames?
https://issues.jboss.org/browse/WFLY-951 is very old, I think you should create a new issue following up on that one

@kabir thanks for your points. I created a new jira and changed the commit description.
But I'm not sure about the testsuite. It's a Narayana specific feature which is tested in the Narayana testsuite. There is no test in WildFly testsuite that would touch this functionality. There is only one place where I can see the name and that's under {{iiop}} testsuite module but that configuration value has no influence on any test there.
If you don't mind I would leave this as functionality for Narayana unit testing. But if you think differently, please, let me know and I will create some.

@chengfang @tadamski Does the failure in https://ci.wildfly.org/viewLog.html?buildId=156858&buildTypeId=WF_PullRequest_LinuxSm indicate a problem in the EJB timer service handling? The stack trace looks like the code trying to persist the timer is failing.
I'm not sure why that only fails intermittently. Started failing on June 10.
https://ci.wildfly.org/project.html?projectId=WF_PullRequest&buildTypeId=&tab=testDetails&testNameId=-2932164008050579664&order=TEST_STATUS_DESC&branch_WF_PullRequest=__all_branches__&itemsCount=50
Not related to this PR.

@bstansberry the failure doesn't look like from ejb timer processing.  It's failure to get timer db connection, which was in turn casued by security permission check. I guess it will pass if running without security manager.  Not sure if it always fails with sm on.  I'll create a separate issue to track it.

@kabir just by interest, is there something more to provide for this could be merged?


ARTEMIS-1002 Use default PooledBufferAllocator in ActiveMQBuffers

I'd like feedback from @willr3 before this is merged as @willr3 did the original work around the perf gains and I don't want to reverse that good work.

@mtaylor Currently the only place we use the DEFAULT is on AMQP Converter.
I would also change https://github.com/apache/activemq-artemis/blob/master/artemis-core-client/src/main/java/org/apache/activemq/artemis/core/remoting/impl/netty/PartialPooledByteBufAllocator.java#L31 to use the DEFAULT here. I looked at the implementation and it wouldn't change any semantics. Highly recommended IMO.

@clebertsuconic The difference is that the DEFAULT pooled is platform specific on whether to use direct buffers or not.  We specifically switch this to false in the PartialPooledByteBufAllocator.  Could this be an issue here?

@mtaylor I didn't think it would be an issue, because the defaultPooled is only used on getBuffer method. the explicit methods that we use (directbyteBuffer, heapBuffer are not affected by that parameter).
I would also change the PartialPooledbytebufferAllocator on the client. We will endup actually saving bytes if we do this.

@clebertsuconic When you say client I suppose you mean the AMQP test client right?  i.e. activemq-artemis/tests/artemis-test-support/src/main/java/org/apache/activemq/transport/amqp/client/transport/PartialPooledByteBufAllocator.java

@mtaylor Oh.. right... I actually read it org.apache.activemq.core.client.. something like that...
that's the one class I saw it.. but I confused the usage.. my bad!

I'm running the whole testsuite before we can merge this.. just in case.

@clebertsuconic Good idea.  Cheers.


Removing redditp.com which is a slideshow creator for reddit.

redditp.com is a safe slideshow creator for reddit.com. Since this list is about sites that impersonate official sites, redditp.com is wrong to be included.
cc: @ubershmekel

Thank you @jeffjose !

Removed. Thank you for your report.


Add beats accessories

b0508

b0509 (we have 509 but it might be 508 and mislabled. figure it out

B0521

B0523

B0525

B0528

These were all added earlier, closing issue


feat(logo): NO-JIRA gradient update

DP Logo Gradient update.

:hammer_and_wrench: Type Of Change

[ ] Fix
[x] Feature
[ ] Performance Improvement
[ ] Refactor

:book: Description
Update from magenta/purple to gold/magenta/purple.
:pencil: Checklist
For all PRs:

[x] I have ensured no private Dialpad links or info are in the code or pull request description (Dialtone is a public repo!).
[x] I have reviewed my changes.
[x] I have added all relevant documentation.
[x] I have considered the performance impact of my change.

Are this asset updates ok? I cannot see some of them.

It's because they are always meant to be white.

Are this asset updates ok? I cannot see some of them.

It's because they are always meant to be white.

And some are always black. And some have fill="var(--dt-color...)" depending on their use. Toggle the theme on https://dialtone.dialpad.com/deploy-previews/pr-372/design/brand/ to see it in action.


GUVNOR-2250: removing unnecessary types

+1 to merge - I know this was added back by mistake with the migration to BS3. That test took ages to get working!

master: ffa8fde21a238d42d5ad859116fcddf093b13684


feat/files-api

WIP:

[x] missing only the write test, contingent on https://github.com/ipfs/go-ipfs/issues/1828
[ ] list all of the options that can be passed in all the files commands

This only works with IPFS 0.4.0
To run the tests with your local node (instead of a disposable one) do npm run test-usn

@diasdavid this needs some updating I think ;)

Yeah, I need to rebase, but it works quite nicely, ipfs-blob-store uses it :) Can't wait for 0.4.0 to be released for this to be part of the global set

Now with all the latest and greatest fancy sparkles from 2.9.3 :)

@whyrusleeping, ipfs add -r is not returning the root folder hash
repro:

git clone ...
npm i
cp $GOPATH/bin/ipfs node_modules/go-ipfs/bin/ipfs
npm test

note, use latest dev0.4.0

woot! so we have files-api using latest 0.4.0 + https://github.com/ipfs/go-ipfs/pull/2046
@nginnever just pushed also a new dist so you can use it on the browser :)

[ ] update .add API https://github.com/ipfs/js-ipfs-api/issues/178

Chya! Danke! Now I don't have to learn webpack today :)

Just rebased master onto this branch so that I can use latests features for ipfs-blob-store, note:

[ ] ipfs object patch has a different behaviour in 0.4.0, js-ipfs-api impl needs to be updated
[ ] ls is timing out with 0.4.0, @whyrusleeping any thoughts why?
[ ] refs is timing out with 0.4.0, @whyrusleeping any thoughts why?

wooooo it's green! :D

//cc @haadcode @harlantwood @dignifiedquire @nginnever @RichardLitt @xicombd @VictorBjelkholm and all the people that have contributed or looked for this version for quite some time, it is here! Thank you :)

Wooo!


shutting down cluster running on baremetal k8s does not delete the service

I'm running dask on a baremetal Kubernetes cluster this way:
import dask
from dask.distributed import Client
from dask_kubernetes import KubeCluster

dask.config.config["kubernetes"]["scheduler-service-type"] = "LoadBalancer"
dask.config.config["kubernetes"]["namespace"] = "dask"
dask.config.set(scheduler="distributed")
cluster = KubeCluster.from_yaml("worker-spec.yml", deploy_mode="remote")
cluster.scale_up(4)

client = Client(my_cluster_ip)

if I run cluster.close() then the service get removed, if I run client.shutdown() then it does not

Thanks for reporting @giordyb!  Client.shutdown should call the close method, so that's an odd discrepancy.  Which version of distributed are you running?

Hi @gforsyth ! No problem, I'm glad I'm able to contribute!
Both dask and distributed are 2.13.0

Ok, great.  I realize I also misread your initial report -- can you see if changing client = Client(my_cluster_ip) to client = Client(cluster) makes client.shutdown() kill your service?

I can confirm that passing the cluster object instead of the "ipaddress:port" string to Client() successfully deleted the service.

Ok, great!  Are you ok with closing this issue ?

Shouldn't it work anyways without using the cluster object though?
Sometimes one might need to close the python session that started the cluster (it may crash, the computer might lose power, etc) and reconnect from another one using the ipaddress:port string instead of passing the cluster object (which I may no longer have access to if I'm working from a new python session).
I would expect to be able to cleanly shut the cluster down even if the original cluster object is not available.

The cluster object is your only way to scale up and scale down the number of workers (and interact with the cluster).  In your case, if you lose that object you can still interact with the scheduler but you've lost the ability to control it any further (other than shutting it down).
The scheduler is agnostic to where it is running (and there's nothing that inherently prevents you having workers running on a bare instance connect to a scheduler running on k8s) so without a cluster-level object there's a lot of unreliable guesswork that would go into doing the "right thing" if you only have a scheduler address.
You can shut down the scheduler cleanly, but things like k8s services need to be handled by something that is aware of k8s, which in this case is dask-kubernetes.
dask-gateway may provide some of the functionality I think you're looking for (specifically being able to reconnect to running clusters and control them from separate sessions).  There should be a new release cut in the coming weeks (things are still coalescing after a major refactor)

Your explanation makes total sense, I was not aware of Dask-gateway, I'll definitely look into it. Thanks!


_posts/0000-01-02-nethun5919.md.

This pull request add's nethun5919 to un-slide folder

had to correct the error

had to correct a error


[BUG] Verbose server banner in API response

Describe the bug
Verbose server information should be removed from all HTTP responses. This can be performed by modifying the server's configuration files or through the use and configuration of a web application firewall.
Reference:

https://owasp.org/www-project-web-security-testing-guide/latest/4-Web_Application_Security_Testing/01-Information_Gathering/02-Fingerprint_Web_Server

I think you want to rename this to "Add option to turn off version in server banner." However, a lot of clients depend on that :(

@sachinpkale Is this a feature request like what dB said above? Can you provide more clarity here?


feature: add context to lock&pubsub API

Signed-off-by: seachen<EMAIL_ADDRESS>

After this PR is merged, all building blocks have the context feature.

Please check, all certification tests are failing for "Check that go mod tidy is up to date"

Please check, all certification tests are failing for "Check that go mod tidy is up to date"

Thanks.
cd .build-tools; go run . gen-component-schema > ../component-metadata-schema.json

I manually executed these few instructions. I don't quite know how I deleted this file, it seems that I didn't take the initiative to delete it

cc @berndverst @ItalyPaleAle

cc @berndverst @ItalyPaleAle

@1046102779 Please understand most of the people you've tagged are in the US and it was the weekend. Just give us a bit of time, we'll review this and no need for multiple pings :)

/ok-to-test


DSA 3.2.10 Greedy Algorithms - Prim's MST

Description
Description
Explain and implement Prim's Minimum Spanning Tree Algorithm.
Do not use ASSIGN command
Task

[ ] Documentation

Note

While requesting the issue to be assigned, please mention your NAME & BATCH NUMBER.
Mention the type of contribution you want to make.
Kindly refer to the Issue Guidelines.
Do not use the assign command for this issue. Follow the above procedure.
In case you see that the issue has already been assigned, try to request a different task within the same issue.
Changes should be made inside the DSA/directory & DSA branch.
Name of the file should be the same as the issue.
This issue is only for 'GWOC' contributors of the 'DSA' Domain.

Domain
DSA
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

@goelesha I would like to work on this issue.
DSA batch - 2
Dhruti Gandhi

I would like to work on this issue
Nikki Priya
DSA Batch-2
Documentation

/assign


Improve grammar in website/docs

Description
Improve grammar on the documentation website.
Checklist

[x] I have reviewed my own code

Thanks for looking at it @futursolo, I added your changes to a commit.


Grammar change and readability of example

[x ] I have read freeCodeCamp's contribution guidelines.
[ x] My pull request has a descriptive title (not a vague title like Update index.md)
[ x] My pull request targets the master branch of freeCodeCamp.
[ x] None of my changes are plagiarized from another source without proper attribution.
[ x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

LGTM

Thank you @chelseamariehicks for your contribution and congratulations on your first PR merge to this repo! 🎉
Hope to see more contributions from you in the future.


Added a useful link

Have added a useful link about the decision tree & graph from the scaler topics.
Description

Related Issues

Thanks!🙏🏻


feat: added isRetry in context.run

fixes #154

Added isRetry in context.run object
Added migration for isRetry column for EventRecord and JobRun tables
Setting isRetry as true when it is reRunService.call() is executed

/claim #154

Can you add a changeset for a "patch" update to the @trigger.dev/sdk package and include it in this PR? Everything else looks good to go!


Padded Array buffer

HI.
I a using and have bin using jsmpeg for a while now, it is brilliant.
now i an in the midst of upgrading my video server to an .NET application, the problem is that my new video encoder only can give me a padded array as output stream.
is there a way to make jsmpeg work properly with a padded arraybuffer.

Not applicable to the current version. If you can stream an MPEG-TS now, maybe that already fixes the problem?


Aeriel got stuck on-screen

Running Aeriel 1.2 in MacBook Pro (Retina, 13-inch, Early 2015) with two external monitors (Dell). Using macOS 10.12.2. There is only one Aerial and it's in home/Library/Screen Savers folder. All videos are cached (unless there was new ones since last time).
Rebooted laptop and waited for existing apps and windows to relaunch, didn't really pay attention to what was going on. Saw that Aerial screensaver was running and thought everything is ready and laptop is ready to be used. However Aeriel would not go away.
I pressed and swiped trackpad, I tapped laptop keyboard randomly, moved (visible) mouse cursor to everywhere and especially to all monitor corners. Nothing helped, Aerial would not close and let me see the "real" desktops. Finally rebooted again via Power button and made sure I didn't let Aerial to start.
Now tested that Aeriel will start from hot corner and go away as it should. Never seen this before, no ideas what would have changed since last install. Just reporting as random non-reproducable bug.

Someone else reported a similar issue recently.
#293
But without the issue being reproducible I'm not really sure what anyone can do.


Format basic script as installable R package

local dev was initially supposed to be a simple script... haha whoops. It got complicated, and it needs a venue for release anyway, so it needs to get cleaned up, commented, modularized and testable, that sort of thing.

this is all but done, but I'll wait until things are locked at v1 before closing.

Done let's goooooooo


[FIX] unordered list formatting in BEP018

it currently looks like this:

see: https://bids-specification.readthedocs.io/en/stable/04-modality-specific-files/08-genetic-descriptor.html
I wonder why the linter did not catch this :shrug:

after merging this PR, it'll look like this:

see https://2239-150465237-gh.circle-artifacts.com/0/site/04-modality-specific-files/08-genetic-descriptor.html#genetic-information


TypeError: init() got an unexpected keyword argument 'title'

Describe the bug
This is a wonderful project!
I am writing down an example and running it but it failed.
import tukaan

app = tukaan.App(title = "My Window", width = 345, height = 567)

app.run()

Expected behavior
Expected a window.
But

Operating system
Windows 10
Extra details about your system
/

Version:tukaan==0.2.1
It won't happened on tukaan==0.1.3

nevermind, the example was too old.

Whoaaa! Thanks for trying out Tukaan!
If you have any more issues or ideas, feel free to open a issue or a discussion, I'd love to hear some feedback ❣
So. You're only creating an app context, which isn't enough in Tukaan, you also need to create the main window.
import tukaan

app = tukaan.App(name="My first app")

window = tukaan.MainWindow(title="Hello World!")

greeting_label = tukaan.Label(window, text="Hello World!")
greeting_label.grid()

app.run()

You can see some stuff at https://tukaan.github.io/, although it indeed isn't much, and might be outdated.

Whoaaa! Thanks for trying out Tukaan! If you have any more issues or ideas, feel free to open a issue or a discussion, I'd love to hear some feedback ❣
So. You're only creating an app context, which isn't enough in Tukaan, you also need to create the main window.
import tukaan

app = tukaan.App(name="My first app")

window = tukaan.MainWindow(title="Hello World!")

greeting_label = tukaan.Label(window, text="Hello World!")
greeting_label.grid()

app.run()

You can see some stuff at https://tukaan.github.io/, although it indeed isn't much, and might be outdated.

Thank you, I will try it!

BTW, how can I use blur?
Sorry for interrupting you so much.

You can use this:
from tukaan.enums import WindowBackdropType

window.set_backdrop_effect(WindowBackdropType.Acrylic, dark=True)

However, this functionality will be remove in the next release, and will be moved to a separate package.

Thank you


@EnableFeignClients - NullPointerException: logger

I'm having a hard time getting @EnableFeignClients to work in my existing spring cloud app.
I've got a spring authentication server which is now going to integrate against another micro service.
the app looks like this
@SpringBootApplication
@EnableAuthorizationServer
@EnableDiscoveryClient
@EnableFeignClients
public class AccountsApplication {
    public static void main(String[] args) {
        SpringApplication.run(AccountsApplication.class, args);
    }
}

and my build.gradle is a bit more complex
buildscript {
    ext {
        springBootVersion = '1.2.1.RELEASE'
    }
    repositories {
        mavenCentral()
        maven { url 'https://repos.zeroturnaround.com/nexus/content/groups/zt-public/' }
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        classpath('org.zeroturnaround:gradle-jrebel-plugin:1.1.2')
    }
}

apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'spring-boot'
apply plugin: 'rebel'

jar {
    baseName = 'accounts'
    version = '1.0.0'
}

jar.dependsOn(generateRebel)

sourceCompatibility = 1.8
targetCompatibility = 1.8

idea {
    project {
        jdkName = '1.8'
        languageLevel = '1.8'
        vcs = 'Git'
    }
}

repositories {
    mavenCentral()
    maven { url 'http://repo.spring.io/snapshot' }
    maven { url 'http://repo.spring.io/milestone' }
    maven { url 'http://repo.spring.io/release' }
}

dependencies {
    // Connect to config server
    compile('org.springframework.cloud:spring-cloud-starter:1.0.0.RC3')

    // Rest
    compile('org.springframework.cloud:spring-cloud-starter-feign:1.0.0.RC3')

    // Authorization Server
    compile('org.springframework.boot:spring-boot-starter-security')
    compile('org.springframework.security.oauth:spring-security-oauth2:2.0.6.RELEASE')
    compile('org.springframework.security:spring-security-jwt')

    // Social Security
    compile('org.springframework.social:spring-social-security')
    compile('org.springframework.boot:spring-boot-starter-social-linkedin')
    //compile('org.springframework.boot:spring-boot-starter-social-facebook')
    // Google doesn't exist as a starter
    compile('org.springframework.social:spring-social-google:1.0.0.RELEASE')

    compile('org.springframework.boot:spring-boot-starter-actuator')
    compile('org.springframework.boot:spring-boot-starter-web')
    compile('org.springframework.boot:spring-boot-starter-mail')
    compile('org.springframework.boot:spring-boot-starter-integration')

    // Templating
    compile('org.springframework.boot:spring-boot-starter-thymeleaf')
    compile('org.thymeleaf.extras:thymeleaf-extras-springsecurity3:2.1.1.RELEASE')

    // Data
    compile('org.springframework.boot:spring-boot-starter-data-jpa')
    compile('org.springframework.boot:spring-boot-starter-data-rest')

    // Sql Server Drivers don't exist in maven
    compile files('./src/main/resources/lib/sqljdbc41.jar')

    // Testing
    testCompile('org.springframework.boot:spring-boot-starter-test')
    testCompile('org.apache.httpcomponents:httpclient')
}

task wrapper(type: Wrapper) {
    gradleVersion = '2.3'
}

And a dead simple controller to test it out
@Controller
@RequestMapping("/integration/crm")
public class CRMImportController {

	@Autowired
	protected CrmClient crmClient;

	@RequestMapping("/")
	public List<Customer> customers() {
		return crmClient.getCustomers();
	}

}

This compiles, but when I start it up it complains that logger is null.
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'crmClient': FactoryBean threw exception on object creation; nested exception is java.lang.NullPointerException: logger
	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:175)
	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:103)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1517)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGAbstractBeanFactory.java:251)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1127)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1051)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:949)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:533)
	... 18 more
Caused by: java.lang.NullPointerException: logger
	at feign.Util.checkNotNull(Util.java:93)
	at feign.SynchronousMethodHandler$Factory.<init>(SynchronousMethodHandler.java:50)
	at feign.SynchronousMethodHandler$Factory$$InjectAdapter.get(SynchronousMethodHandler$Factory$$InjectAdapter.java:64)
	at feign.SynchronousMethodHandler$Factory$$InjectAdapter.get(SynchronousMethodHandler$Factory$$InjectAdapter.java:19)
	at feign.ReflectiveFeign$ParseHandlersByName$$InjectAdapter.get(ReflectiveFeign$ParseHandlersByName$$InjectAdapter.java:67)
	at feign.ReflectiveFeign$ParseHandlersByName$$InjectAdapter.get(ReflectiveFeign$ParseHandlersByName$$InjectAdapter.java:19)
	at feign.ReflectiveFeign$$InjectAdapter.get(ReflectiveFeign$$InjectAdapter.java:62)
	at feign.ReflectiveFeign$$InjectAdapter.get(ReflectiveFeign$$InjectAdapter.java:23)
	at feign.ReflectiveFeign$Module$$ModuleAdapter$ProvideFeignProvidesAdapter.get(ReflectiveFeign$Module$$ModuleAdapter.java:114)
	at feign.ReflectiveFeign$Module$$ModuleAdapter$ProvideFeignProvidesAdapter.get(ReflectiveFeign$Module$$ModuleAdapter.java:78)
	at dagger.ObjectGraph$DaggerObjectGraph.get(ObjectGraph.java:272)
	at feign.Feign$Builder.target(Feign.java:265)
	at feign.Feign$Builder.target(Feign.java:261)
	at org.springframework.cloud.netflix.feign.FeignClientFactoryBean.getObject(FeignClientFean.java:141)
	at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:168)
	... 26 more

This is where it gets strange. If I now comment out the controller it all starts up great.
and If i check the activator /beans endpoint I can see all the right components
{
"bean": "feignEncoder",
"scope": "singleton",
"type": "org.springframework.cloud.netflix.feign.support.SpringEncoder",
"resource": "class org.springframework.cloud.netflix.feign.FeignClientsConfiguration",
"dependencies": []
},
{
"bean": "feignLogger",
"scope": "singleton",
"type": "feign.slf4j.Slf4jLogger",
"resource": "class org.springframework.cloud.netflix.feign.FeignClientsConfiguration",
"dependencies": []
},
{
"bean": "feignContract",
"scope": "singleton",
"type": "org.springframework.cloud.netflix.feign.support.SpringMvcContract",
"resource": "class org.springframework.cloud.netflix.feign.FeignClientsConfiguration",
"dependencies": []
},
{
"bean": "feignDecoder",
"scope": "singleton",
"type": "org.springframework.cloud.netflix.feign.support.SpringDecoder",
"resource": "class org.springframework.cloud.netflix.feign.FeignClientsConfiguration",
"dependencies": []
},
{
"bean": "crmClient",
"scope": "singleton",
"type": "se.cadcraft.accounts.integration.crm.CrmClient",
"resource": "null",
"dependencies": []
},

What am I doing wrong?

How do you define your @FeignClient? What's happening in CrmClient (I assume that's the thing that is precipitating the error)?

Do you have a bean of type Slf4jLogger?  is com.netflix.feign:feign-slf4j in your dependency tree?

This is the client
@FeignClient(url = "https://myservice.mydomain.com")
public interface CrmClient {

	@RequestMapping(method = RequestMethod.GET, value = "/customers")
	public List<Customer> getCustomers();

}

And yes feign-slf4j is included

and the Slf4jLogger bean?

Hmm that's strange, that's not there.
But isn't that included with spring boot?

it's a feign class

Is #212 related to this one?

It's there, as I showed above
{
"bean": "feignLogger",
"scope": "singleton",
"type": "feign.slf4j.Slf4jLogger",
"resource": "class org.springframework.cloud.netflix.feign.FeignClientsConfiguration",
"dependencies": []
},
```

It could be related to #212 since both are defined in FeignClientsConfiguration.

looks similar.  Dagger (used as DI in feign) can't find an instance.  Dagger will be removed in a future version of feign.

@leon sorry, I missed it when I glanced at it.

hah, the logger isn't added to the builder

Does that mean that you found a fix? :)

no, I spoke too soon

Looks like a race condition. What is triggering your feign client to be used?

It's used by a @Autowired in a spring mvc @Controller

So CrmClient is a @FeignClient interface?

yes

Which seems to be generated properly, but as soon as I try to inject it intro the controller it says it cannot find the logger.
But I'm guessing that the client isn't initialized until it is injected.

It would be a bean definition, so it would be initialized at some point, whether you injected it or not. It seems something you did forced it to happen too early. Can you share a minimal project?

I tried to reproduce the problem in a minimal project earlier today, but was unable to reproduce the error.
An interesting fact is that even though I don't add the @EnableFeignClients the beans defined in FeignClientsConfiguration are loaded.
It's far fetched but could a AutoConfiguration be interfering with @EnableFeignClients?
since there seems to be one defined that load's the same @Configuration if the Feign.class is available?
I Know this is standard spring boot stuff. but maybe together with dagger it's causing problems?

I can have another go tomorrow creating a minimal app that has the error, if we cannot come up with something today.
Could it be something with duplicate configs.
I found this in the feign starter
https://github.com/spring-cloud/spring-cloud-starters/blob/master/spring-cloud-starter-feign/src/main/resources/META-INF/spring.provides
It refers to that it provides the eureka-client. is this correct?

FeignAutoConfiguration has @EnableFeignClients.  Maybe having it twice is a problem?

Can't see how that would be a problem. Maybe it should be optional though (so users can add an explicit base package)?

The strange this is that, since I'm including the feign starter and that includes the FeignAutoConfiguration, that in turn include the @EnableFeignClients, shouldn't that be enough?
If I remove the @EnableFeignClients everything compiles and runs but then it says that it cannot find CrmClient.
So it seems to be needed anyways!?

So it seems to be needed anyways!?

Yes, it needs to know a base package to scan (so I think the one in FeignAutoConfiguration is redundant).

I can try to remove it and see if anything changes.
I'm at home at the moment (CET) so tomorrow morning I'll give it a go.
Or maybe if you have the possibility to release a snapshot that would be great :)

I don't expect there is any change, but did the new snapshots help at all? If not can you try and boil it down to a simple project that reproduces the problem?

If we add the starter which includes Feign the autoconfiguration kicks in.
https://github.com/spring-cloud/spring-cloud-netflix/blob/master/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/feign/FeignAutoConfiguration.java#L34
and then we add the @EnableFeignClients to know what package to go through.
Shouldn't we also remove the @Import of FeignClientsConfiguration.class since it will already be included by the AutoConfigure?
https://github.com/spring-cloud/spring-cloud-netflix/blob/6dc0bd5f5e121d89b4fa0926517ec42744e8388e/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/feign/EnableFeignClients.java#L40

Forgot to say that the new snapshot did not work :(

Shouldn't we also remove the @Import

I actually do that on purpose, so you can use autoconfig without @FeignClient and vice versa if you should need to (although I don't see any immediate need).

Since we cannot use @FeignClient without knowing where to look for them, we might as well remove the import from the @EnableFeignClients
It might be that the autoconfig is first creating the loggers / converters and then when we @Import the same config once more, it overwrites the beans causing the old references to be dropped = null pointer.
But I don't know how springs DI / autoconfig works when it comes to importing the same config multiple times. do you?

It's not a problem to import the same config twice. Spring only registers one instance. The problem is more likely to be something in your app, forcing factory beans to instantiate early. If you put a break point in the FeignClientFactoryBean.getObject() it would be interesting to see the stack, just before it crashes.

The FeignClientFactoryBean looks like this when the getObject() is called
FeignClientFactoryBean(
	type=interface se.cadcraft.accounts.integration.crm.CrmClient,
	name=,
	url=https://myservice.mydomain.com,
	decoder=null,
	encoder=null,
	logger=null,
	contract=null,
	logLevel=null,
	retryer=null,
	errorDecoder=null,
	options=null,
	ribbonClient=null,
	requestInterceptors=null
)

And I've placed brake points in the FeignClientsConfiguration, but they never get called, so either they don't get called at all, or the crash is happening before they have a chance to get instantiated.

It could be that the FeignClientFactoryBean is involved in a circular dependency.
In the documentation for the FactoryBean interface it says:

If this FactoryBean is not fully initialized yet at the time of the call (for example because it is involved in a circular reference), throw a corresponding {@link FactoryBeanNotInitializedException}

We could check in the getObject that the four properties
@Autowired
private Decoder decoder;

@Autowired
private Encoder encoder;

@Autowired
private Logger logger;

@Autowired
private Contract contract;

are not null and if they are throw the FactoryBeanNotInitializedException
It seems more likely that this is the problem than the autoconfiguration stuff we have been looking at presently. what do you think @dsyer ?

I think it's the stack we need to see, not the state of the factory (we knew those properties were null already).

I don't know if this is what you mean by stack.
I did a get thread dump from within intellij.
Have you got a better suggestion on how to generate the data you need?
"main@1" prio=5 tid=0x1 nid=NA runnable
  java.lang.Thread.State: RUNNABLE
	  at org.springframework.cloud.netflix.feign.FeignClientFactoryBean.getObject(FeignClientFactoryBean.java:141)
	  at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:168)
	  at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:103)
	  - locked <0x20b0> (a java.util.concurrent.ConcurrentHashMap)
	  at org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1517)
	  at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:251)
	  at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
	  at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1127)
	  at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1051)
	  at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:949)
	  at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:533)
	  at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
	  at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331)
	  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1202)
	  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537)
	  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
	  at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303)
	  at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
	  at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299)
	  at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
	  at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:762)
	  at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757)
	  at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480)
	  - locked <0x20b1> (a java.lang.Object)
	  at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118)
	  at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:691)
	  at org.springframework.boot.SpringApplication.run(SpringApplication.java:321)
	  at org.springframework.boot.SpringApplication.run(SpringApplication.java:961)
	  at org.springframework.boot.SpringApplication.run(SpringApplication.java:950)
	  at se.cadcraft.accounts.AccountsApplication.main(AccountsApplication.java:27)

@dsyer If you want we could do a teamviewer / skype / google hangout to debug the problem together? it might be easier since I've not been successful in isolating the problem into a minimal project.

No need for skype (I have all the information you can give right now unless you have a project you can share). That thread dump looks utterly normal, which is disappointing. I'm going to have to get into the guts of Dagger.

I'll see if I can try creating a project, but don't count on it.
Good luck! :)

@dsyer I was finally able to find how to reproduce the problem and put together this project for you
https://github.com/leon/temp-spring-cloud-feign-problem
The problem is @EnableAuthorizationServer as soon as I uncomment it, the app boots as normal.

@leon thanks!  Really helps to have this.
@dsyer I was toying with a change to FeignClientFactoryBean to have its required fields autowired in the constructor.  When I do that it fails with the following:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'myClient': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.cloud.netflix.feign.FeignClientFactoryBean]: No default constructor found; nested exception is java.lang.NoSuchMethodException: org.springframework.cloud.netflix.feign.FeignClientFactoryBean.<init>()
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1093)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1038)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getSingletonFactoryBeanForTypeCheck(AbstractAutowireCapableBeanFactory.java:860)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:790)
	at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:542)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:436)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:404)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:398)
	at org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:144)
	at org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerEndpointsConfiguration$TokenKeyEndpointRegistrar.postProcessBeanFactory(AuthorizationServerEndpointsConfiguration.java:200)
	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:265)
	at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:126)
	at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:606)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:462)
	at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:118)
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:691)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:321)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:961)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:950)
	at se.radley.feignproblem.FeignproblemApplication.main(FeignproblemApplication.java:19)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.cloud.netflix.feign.FeignClientFactoryBean]: No default constructor found; nested exception is java.lang.NoSuchMethodException: org.springframework.cloud.netflix.feign.FeignClientFactoryBean.<init>()
	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:85)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1086)
	... 24 common frames omitted
Caused by: java.lang.NoSuchMethodException: org.springframework.cloud.netflix.feign.FeignClientFactoryBean.<init>()
	at java.lang.Class.getConstructor0(Class.java:2971)
	at java.lang.Class.getDeclaredConstructor(Class.java:2165)
	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:80)
	... 25 common frames omitted

Why is it trying to do that when (in my code) it clearly has an autowired constructor?

so far I've traced it to AbstractBeanFactory.hasInstantiationAwareBeanPostProcessors being false at the time the myClient bean is to be instantiated.  It's some kind of timing issue.

The other thing I found is the id of the DefaultListableBeanFactory is bootstrap when it fails, a guid when it succeeds.

OK all that actually makes sense to me because there was a change in Spring Security OAuth2 that prevents eager instantiation of FactoryBeans in an auth server using JWT tokens (https://github.com/spring-projects/spring-security-oauth/issues/384). If you upgrade to a snapshot, or use a different TokenStore, your app works, so I think we can call it fixed (at least as far as this issue is concerned).

Awesome guys!
Thanks!

@dsyer There isn't a snapshot build available :(
http://repo.spring.io/snapshot/org/springframework/security/oauth/spring-security-oauth2/

It's there now.

Thanks! works like a charm now :)


Pr u landing radar

This adds a driver for the uLanding radar from Aerotenna.
http://aerotenna.com/aerotenna-ulanding-lite-version-release/
@LorenzMeier @bkueng Unfortunately, the driver does not work anymore with latest master, possibly due to something related to the latest NuttX changes. The driver is mostly outputting corrupted data which was not the case before.
I did a checkout of beta (which I believe is master before the NuttX update) and cherry-picked the commits for the driver. In that case everything worked again.
Is there something that changed regarding how to use the serial interface?

Please try to rebase on master and let me know if that fixes it. The serial handling was messed up there and it could have started a 2nd app accidentally on the same link. If the issue persists its more likely NuttX related.

@LorenzMeier I did a rebase today in the morning about 1-2 hours ago. Did something change after that? I'll still do it again to go 100% sure.

Rebase like rebase now. I just merged a fix.

@LorenzMeier Unfortunately, that does not fix it. I did a rebase followed by a clean build.
I guess @davids5 is the person to ping now?

Also the python example from the manufacturer suggested this method.

That's why hardware companies tend to horribly fail on software.

@LorenzMeier I added a buffer to the driver now. The results are now much better, the number of corrupt data has now decreased significantly. However, some of the data is still corrupt.
I printed the raw buffer and noticed that the data really comes in corrupt, e.g. I found this sequence:
raw buffer: 48 a4 a4
48 is the header byte but the following two should not be the same.
I also cherry-picked the new version (with parsing) to the pre NuttX update branch and the data looks good.
Here are some plots of the range finder values. Note the spikes on latest master.
Plots: New NuttX

Old NuttX

Rebasing this on master should fix it.

@LorenzMeier Rebasing on master fixed it, log data looks fine.

@LorenzMeier I addressed your comment. Good to go from my side.

@tumbili We should probably publish -1 for the first publication to indicate an invalid range. We generally need to make sure to never publish data that indicates its valid when its actually not. For the covariance field: Please put an estimate in there based on the accuracy of the sensor.

@tumbili Note that we might need to move the driver some time soon to px4fmu-v3_default. You will want to make sure to transition to hardware with 2 MB flash.

@dagar I get flaky semaphore builds with "layer does not exist" as error message. A rebuild fixes them.


Update documentation

Update the docs to finalize the tokio removal. See https://github.com/meilisearch/meilisearch-rust/pull/70
Make the PR pointing to the isahc-dev branch

Closed by #96


UI is Not Letting to Extend Staking Positions to the Maximum Period Possible

Describe the bug
Let's suppose a user creates a Staking position to the farthest point in time possible, say 2024-August-10th:

test link: a7662d0c
NOTE: the link ea5ff545 is allowing another staking points, but is showing the wrong voting power pre-calculation

Then, let's suppose this user creates another Staking position to a midterm point in time, say 2023-August-26th:

THEN: the user will be able to extend this last position:

BUT WONT BE ABLE to extend to the farthest point of time possible:

in this case, the user cannot extend until 2024-August-10th, but just until 2024-July-24th
Expected behavior
The user should be able to extend any staking position to any farther point in time.
If the resulting position coincides with the checkpoint of any other existent position, the old position and the pre-existent shuld be merged into a single one. This is by default done by the smart contract, and the UI seem to read the staking positions from each user from the contract, so there shouldn't be any impediment to let this happen in the UI.
Desktop (please complete the following information):
this bug doesn't depends on the user's terminal or software.

Update
The issue is also present in the UI for mainnet:

In the former image, a user has two stakes. One until 2024/August/09, the other until 2024/July/26. None of them can be extended:

The farthest can not be extended as expected...

But the other either.
Furthermore, if you try to create a new staking position, the UI won't allow to create it to the farthest checkpoint:

but only until 2 weeks before the shortest period staked!

The problem was related to the location - timezone.
This new deployment solved the issue.