Conversion from SBOL 3 to Genbank and other annotated sequence formats

As a new user attempting to build genetic designs in SBOL, one thing that would be very helpful for me is if I could quickly convert a fully compiled and validated SBOL design to a file format like Genbank, that I could open and view with sequence editors like Snapgene and Benchling. I know a version of this functionality was implemented for pySBOL2; but I found for my designs that annotations in the resulting .gb files were named after their part types (and only for common parts like promoter, RBS, CDS and terminator), and the displayId for each component was lost during conversion. Has this type of function been implemented for pySBOL3?

This is the kind of thing we'd like to have in the future, and it's on our roadmap but I think pretty far out at this point. We're actively working on the core of the library, incorporating lessons learned from pySBOL and pySBOL2 as well as adapting to the new SBOL 3 specification. A feature like you describe would be layered on top of the core library.
pySBOL2 leveraged SynBioHub and/or the SBOL validator for exporting to GenBank. The SynBioHub folks are actively doing their SBOL 3 development now. I don't know where GenBank export might be on their roadmap.
I think you'll find that there is broad agreement that this kind of feature is important and desirable. The open questions are when, and how (implement locally vs. leverage an online resource).

@cjmyers told me that @udp 's libSBOLjs library can convert between SBOL3 to SBOL2, and from there it can use the SBOL2 converter. That may be a path that can be used immediately, but needs to be tested.

There is a collection of these now in with the iGEM-distribution package, covering FASTA (nucleotide), GenBank, and SBOL2: https://github.com/iGEM-Engineering/iGEM-distribution/blob/develop/scripts/scriptutils/conversions.py
They should probably be migrated from there to SBOL-utilities, and a few "pluming" improvements made:

Add GFF and SBOL 1 conversions added: these should look just like the GenBank conversion, just with a different input format
Conversions are a mix of documents and files; that should be systematized
A command line wrapper utility option for invoking should be added


Update Lab_12_EnableAzureADMultiFactorAuthentication.md

Module: 00
Lab/Demo: 00
Fixes # .
Changes proposed in this pull request:

Submitted by Sidhat on behalf of MOC Labs Review


Tag Coloring and Page Coloring not working

I just installed this plugin for the first time and can't get tag coloring to work at all. Page coloring shows the colored bar under the shortcut but there's no color on the page itself. I'm using Logseq 0.8.9.

I have conducted a review of the public version and did not find any abnormalities.II kindly request you to try it again with the default theme and with other plugins turned off, if possible.

That's strange. I tried disabling all plugins and themes except for your plugin, and nothing changed. The admonitions do work in both states by the way. Just not custom tags and page coloring.

I'm not sure if it will resolve the issue, but we have performed refactoring and released a new update. Please update or reinstall the plugins along with the latest version of Logseq.

Thanks, I did update. Now the custom hashtags have the colors I picked just around the hashtag text, but the block they are in stays the same (no color). Page coloring is still not working.

Could you please take a screenshot of that screen so that I can investigate it?

Actually, I found that if I get rid of "Test Page" so that the name is just "Tangerine", it works! I'd just suggest changing the documentation to specify you need to put the entire page name in the field, not just a word.
Also the colored line under the page in the left sidebar shows up if it's Favorited but not if it's Recent. I don't know if that's intentional but it would be great if it showed up in both places.

I have incorporated some of your opinions. I still don't know the reason why Tag Coloring isn't working.

Thanks, unfortunately things are still the same with custom hashtags. They only change the color of the hashtag text and not the whole block like admonitions do.
I really appriciate your work on this plugin, but I've decided Logseq isn't going to work for me right now and I'm switching to a different app. Just too many things that don't work quite right and some features I want that Logseq probably won't have for a long time, if ever. But thanks again for your help!

I see.
I apologize for taking up your valuable time due to problems.

No, it's fine. This is just part of experimenting with new software. Logseq is great in a lot of ways, but overall not quite what I need.


Fix paths not matching description

Paths in commands specified /var/lib but description specified /usr/share. Makes the command consistent with the description, unless I'm missing something special about /var/lib and the installation procedure.

Looks like typo. Thanks!

Looks like typo. Thanks!


SDK v1.4.6 memo length

Hello, I am trying to submit a CryptoTransfer using MyHbarWallet locally with a memo, which is almost close to 100 symbols. Unfortunately, when I submit the transfer an error appears, stating memo may not be longer than 100 bytes.
I saw there is a check in TransactionBuilder.js restricting this.

Commenting this check allows successful submission.

Based on the referenced code, the memo can not be longer than 50 characters.

Yea, @ivancsicsmarkus is correct; since each character is 2 bytes the max length of a valid memo field in characters is 50.

Is this check found in >= v2.0.0

In v2 we re-encode a string memo in UTF-8 which alleviates the mentioned issue. You should be able to use 100 ASCII characters (or those with a single byte encoding in UTF-8).


Better event highlighting

The current event highlight method uses a state context, so it forces some events to be re-drawn any time an event is highlighted. A better alternative would not cause the unnecessary redraw. A pure SCSS method would be ideal, but may not be possible.
This isn't a particular expensive re-draw because it is partial, but it could potentially be improved.

Extracting the highlighting out in to a context/hook has decreased the redraw to essentially nothing. Performance should be more than acceptable.


New aka.ms link

Aka.ms link name
azad
Category (Optional. Select None to auto-select)
None

Thank you for submitting aka.ms/azad. Your link already exists at akaSearch.net. 🙏✅


min() is bugged in vector2.h

Problem
The following two functions in the "vector2.h" header are bugged.

vector2 add(vector2 a, vector2 b)
vector2 add(vector2 a, float b)

The first has the bug, the second uses the first so gets bugged as well.
Looks like a copy/pate bug that just got left in there, trivial to fix (not bothering with a PR)
Expected behavior:
The minimum value between the 2 arguments should be in the result, for both components
Actual behavior:
The result contains just the first component of the first argument, and the second component of the second argument - regardless.
Steps to Reproduce
Write a simple shader like that uses this function from the vector2.h header:
#include "vector2.h"

shader Texture(
    output color value = 0,
    vector2 a = {1, 0},
    vector2 b = {0, 1})
{
    vector2 c = min(a, b);
    value = color(c.x, c.y, 0.0);
}

Result should be black, not yellow.

Versions
all (I suppose)

src/shaders/vector2.h
vector2 min(vector2 a, vector2 b)
{
    return vector2 (min(a.x, a.x),
                    min(b.y, b.y));
}

which is clearly broken, it should be
vector2 min(vector2 a, vector2 b)
{
    return vector2 (min(a.x, b.x),
                    min(a.y, b.y));
}

More over there should be some tests added to exercise all these operations.

Code review also shows that dividing by an integer is bugged.
Reproducer:
#include "vector2.h"

vector2 current__operator__div__(vector2 a, int b)
{
    float b_inv = 1/b; // nothing promoted to float, so b_inv will be 0|-0 for all b values other than 1|-1
    return a * vector2(b_inv, b_inv);
}

vector2 fixed__operator__div__(vector2 a, int b)
{
    float b_inv = 1.0/b;
    return a * vector2(b_inv, b_inv);
}

shader do_div(
    output color value = 0,
    vector2 a = {2.5, 1},
    int b = 5)
{
    vector2 c = a/b; // incorrect
//    vector2 c = __operator__div__(a,b); // incorrect
//    vector2 c = current__operator__div__(a,b); // incorrect
//    vector2 c = fixed__operator__div__(a,b); // correct
    value = color(c.x, c.y, 0.0);
}

Also dividing by integer for vector4 is bugged in the same manner:
#include "vector4.h"

vector4 current__operator__div__(vector4 a, int b)
{
    float b_inv = 1/b; // nothing promoted to float, so b_inv will be 0|-0 for all b values other than 1|-1
    return a * vector4(b_inv, b_inv, b_inv, b_inv);
}

vector4 fixed__operator__div__(vector4 a, int b)
{
    float b_inv = 1.0/b;
    return a * vector4(b_inv, b_inv, b_inv, b_inv);
}

shader do_div4(
    output color value = 0,
    vector4 a = {3.5, 2, 1, 0.5},
    int b = 5)
{
    vector4 c = a/b; // incorrect
//    vector4 c = __operator__div__(a,b); // incorrect
//    vector4 c = current__operator__div__(a,b); // incorrect
//    vector4 c = fixed__operator__div__(a,b); // correct
    value = color(c.x, c.y, c.z + c.w);
}

More code review shows that Color2 * Color2 is broken:

Dividing by integer for color2 also exhibits same bug, reproducer:
#include "color2.h"

color2 current__operator__div__(color2 a, int b)
{
    float b_inv = 1/b; // nothing promoted to float, so b_inv will be 0|-0 for all b values other than 1|-1
    return a * color2(b_inv, b_inv);
    // bug in color2*color2 operator means the result will be color2(a.x*a.x, b_inv*binv)
}

color2 fixed__operator__div__(color2 a, int b)
{
    float b_inv = 1.0/b;
	// do to different bug in color2*color2 we can't use that operator
	//    return a * color2(b_inv, b_inv);
	// so expand the per component multiply
    return color2(a.r * b_inv, a.a * b_inv);
}

shader do_color2_div(
    output color value = 0,
    color2 a = {2.5, 1},
    int b = 5)
{
    color2 c = a/b; // incorrect
//    color2 c = __operator__div__(a,b); // incorrect
//    color2 c = current__operator__div__(a,b); // incorrect
//    color2 c = fixed__operator__div__(a,b); // correct
    value = color(c.r, c.a, 0.0);
}

Also color2 + color2 is bugged.
existing broken version:
color2 __operator__add__(color2 a, color2 b)
{
    return color2(a.r + a.r, b.a + b.a);
}

Should be:
color2 __operator__add__(color2 a, color2 b)
{
    return color2(a.r + b.r, a.a + b.a);
}

Oof, this is all pretty bad. Does this mean that nobody actually uses these classes?

int - color2 and is incorrect, reproducer/fix:
#include "color2.h"

color2 current__operator__sub__(int a, color2 b)
{
    return b - color2(a, a);
}

color2 fixed__operator__sub__(int a, color2 b)
{
    return color2(a, a) - b;
}

shader do_int_sub_color2(
    output color value = 0,
    color2 b = {0.75, 0.25},
    int a = 1)
{
    color2 c = a - b; // incorrect
//    color2 c = __operator__sub__(a,b); // incorrect
//    color2 c = current__operator__sub__(a,b); // incorrect
//    color2 c = fixed__operator__sub__(a,b); // correct

    value = color(c.r, c.a, 0.0);
}

float - color2 and is incorrect, reproducer/fix:
#include "color2.h"

color2 current__operator__sub__(float a, color2 b)
{
    return b - color2(a, a);
}

color2 fixed__operator__sub__(float a, color2 b)
{
    return color2(a, a) - b;
}

shader do_float_sub_color2(
    output color value = 0,
    color2 b = {0.75, 0.25},
    float a = 1)
{
    color2 c = a - b; // incorrect
//    color2 c = __operator__sub__(a,b); // incorrect
//    color2 c = current__operator__sub__(a,b); // incorrect
//    color2 c = fixed__operator__sub__(a,b); // correct

    value = color(c.r, c.a, 0.0);
}

color2 == color2 is incorrect, reproducer/fix:
#include "color2.h"

int current__operator__eq__(color2 a, color2 b)
{
    return (a.r == a.r) && (b.a == b.a); // broken:  always returns true
}

int fixed__operator__eq__(color2 a, color2 b)
{
    return (a.r == b.r) && (a.a == b.a);
}

shader do_color2_eq(
    output color value = 0,
    color2 a = {2.5, 1},
    color2 b = {5, 6})
{
    int is_eq = a == b; // incorrect
//    int is_eq = __operator__eq__(a,b); // incorrect
//    int is_eq = current__operator__eq__(a,b); // incorrect
//    int is_eq = fixed__operator__eq__(a,b); // correct
    value = color(is_eq, is_eq, is_eq);
}

fmod(color2, color2) is broken, reproducer/fix:
#include "color2.h"

color2 current_fmod(color2 a, color2 b)
{
    return color2(fmod(a.r, a.r), // broken, fmod(x,x) will always be 0
                  fmod(b.a, b.a));
}

color2 fixed_fmod(color2 a, color2 b)
{
    return color2(fmod(a.r, b.r),
                  fmod(a.a, b.a));
}
shader do_color2_fmod(
    output color value = 0,
    color2 a = {2.75, 9.99},
    color2 b = {.5,3.2})
{
    color2 c = fmod(a, b); // incorrect
    //color2 c = current_fmod(a,b); // incorrect
    //color2 c = fixed_fmod(a,b); // correct
    value = color(c.r, c.a, 0.0);
}

color4 / int is broken, reproducer/fix:
#include "color4.h"

color4 current__operator__div__(color4 a, int b)
{
    float b_inv = 1/b; // nothing promoted to float, so b_inv will be 0|-0 for all b values other than 1|-1
    return a * color4(color(b_inv), b_inv);
}

color4 fixed__operator__div__(color4 a, int b)
{
    float b_inv = 1.0/b;
    return a * color4(color(b_inv), b_inv);
}
shader do_div_color4(
    output color value = 0,
    color4 a = {color(3.5, 2, 1), 1.5},
    int b = 5)
{
    color4 c = a/b; // incorrect
//    color4 c = __operator__div__(a,b); // incorrect
//    color4 c = current__operator__div__(a,b); // incorrect
//    color4 c = fixed__operator__div__(a,b); // correct
    value = color(c.rgb.r, c.rgb.g, c.rgb.b + c.a);
}

Noticed that dot for color4 only accepts a color as 2nd argument, ignores color4.a (which might be fine depending on expected behavior).
float dot(color4 a, color b)

However dot(color4, color4) is undefined, which again might be OK depending on expected behavior.
Should dot(color4, color4) be defined?  And if so, should alpha be included in result or ignored?
Reproducer:
#include "color4.h"

shader do_color4_dot(
    output color value = 0,
    color4 a = {color(3.5, 2, 1), 1.5},
    color b = color(1,2,3))
{
    float c = dot(a,b)/20.0;
    float d = dot(a,a)/20.0;
    value = color(c + d);
}

will fail to compile:
TestColor4Dot.osl:9: error: No matching function call to 'dot (struct color4, struct color4)'
  Candidates are:
    /nfs/pdx/home/smonteir/OSLMain-CI-Issues/OpenShadingLanguage/dist/share/OSL/shaders/color4.h:186	float dot (struct color4, color)
    /nfs/pdx/home/smonteir/OSLMain-CI-Issues/OpenShadingLanguage/dist/share/OSL/shaders/stdosl.h:190	float dot (vector, vector)

Finished reviewing /src/shaders/*.h files, with the correctness issues noted above in the comments.
I guess matrix33.h could use a comment in it explaining is usefulness, which I assume is the function matrix44To33 which introduces compile time constant 0's and 1 into an underlying 4x4 matrix which hopefully will allow the optimizer to remove portions of subsequent matrix operations whose results would always be 0 or idenity.

Apparently, the reason MaterialX works is that they have vendored these headers on their end and mostly fixed the bugs long ago.
That makes this make more sense to me. Probably these have gone undiscovered for so long because using 2- and 4-vectors is not idiomatic OSL, and so there is essentially nobody depending on them outside of their use in MaterialX.
But I'll fix here and submit a PR right away.

If MaterialX codegen already has their own copy, maybe we should deprecate these?

Yes, the original issue I reported, is also in need of fixing in MaterialX's vendored header.
The div overloads for vecotr2, vector4 and color4 have already been fixed there a while ago though.
And color2 is not a thing in MaterialX, they don't even have that header in their repo.
As for dot between a color and color4, I'd say it is ok for it to fail to compile, as dot product should not be well defined between arguments of different dimensions.

I think dot shouldn't be defined for any color types.

Fix proposed in #1892


micro library to lazy load responsive images with srcset attribute and picture tag

add micro library which is supposed to lazy load especially the new responsive image formats with srcset attribute and picture-tag

I will open a new one without merge conflicts because I checked in the generated files ..


App entry: Load fonts

Currently, the fonts are only loaded in Storybook environment (see storybook/index.js). We also need to load the fonts in production app entry (i.e. src/cindex.js).

Doesn't work yet


Fix build issue caused by feature unification and non-additive librar…

…y feature.
this moves ProposeMsg into dao-voting so that pre-propose modules may depend on it without enabling the library feature on dao-proposal-single.

Codecov Report
Base: 93.69% // Head: 93.78% // Increases project coverage by +0.09% :tada:

Coverage data is based on head (348685c) compared to base (81ea73d).
Patch has no changes to coverable lines.

Additional details and impacted files
@@              Coverage Diff               @@
##           v2-staging     #561      +/-   ##
==============================================
+ Coverage       93.69%   93.78%   +0.09%
==============================================
  Files              42       42
  Lines            3820     3816       -4
==============================================
  Hits             3579     3579
+ Misses            241      237       -4

Impacted Files
Coverage Δ

...se/dao-pre-propose-approval-single/src/contract.rs
87.40% <ø> (ø)

...opose/dao-pre-propose-approval-single/src/state.rs
100.00% <ø> (ø)

...pre-propose/dao-pre-propose-single/src/contract.rs
86.66% <ø> (ø)

...cts/proposal/dao-proposal-multiple/src/proposal.rs
94.87% <ø> (+4.62%)
:arrow_up:

...racts/proposal/dao-proposal-single/src/contract.rs
98.63% <ø> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Short Nonces in ECDSA

Hello @christianpeel ! I saw your work on GitHub and decided to write to you as I have questions.
When creating ECDSA, it happens that some devices generate short Nonce.
Approximately 2 ^ 243 - 2 ^ 244
Accordingly, if Nonces is short, then it must contain null at the beginning.
That is, the first 3 bits of the Nonce contain a beginning null.
Given the known signature values [R, S, H (e)], can we define and calculate if the Nonce is short?
Is there a way to find out information about the first 3 bits of Nonces?

Not an issue or a topic that is otherwise relevant to this repo.
For my own reference, the same question was asked in many other repos (1, 2, 3 for example).


feat: added initial Github CI workflow

Added .github/workflow/ci.yml and necessary files with a complex test workflow for each PR.
A brief summary about how does it work:

set up dependencies (required packages)
install latest ModSecurity3 release
get ModSecurity-nginx source
get latest Nginx soure
build Nginx with ModSecurity module
start Nginx with ModSecurity
there are two virtual hosts
there is only one rule
run a valid request (expected code is 200) and an attack (expected code is 403) against both vhosts

Many-many thanks for @theseion for your big help!


Text analytics API not working

Azure text analytics API not giving any json response, giving 202 code, do I need to setup it SPN or pass bearer token to authorize.

Have you provided the correct Subscription Key & Endpoint URL as shown in this video - https://www.youtube.com/watch?v=Vksv9q2uMZw&t=120s

yes I have given the correct key, it is giving me 202 accepted response but not showing any json response. Do you see any scenarios to use this PCF than text analytics connectors https://learn.microsoft.com/en-us/connectors/cognitiveservicestextanalytics/ ?


Add a rake task to allow manuals to be renamed

Arrises from #878
In order to make ManualRelocator easier to use and to remind other developers that the code in the class should not be removed we should create a simple rake task that instantiates and calls the class with the command line arguments.

There's also some potentially useful info about this in #851.

PR #1031 adds a Rake task to allow manuals to be relocated.

PR #1031 has been merged so I'm closing this issue.


Add support for macOS

As discussed in #47, I already have it running on a mac system for several years. However as a cron job.

Add instructions on how to set up on a mac in /usr/local/. #49 is a blocker for this
Create a proper solution using LaunchAgents
Integrate with the Makefile, maybe $ make install-launchagent ?

Just for curiosity :) Is there much benefit by using LaunchAgents over cron?

I've not used LaunchAgent for timers yet (but I do for services), so I don't know yet. But I suspect that it will give nicer features just like systemd timers gives over cron.
https://apple.stackexchange.com/a/409334/197493
To be investigated :)


use native travis support for yarn

This change is

Based on:
https://blog.travis-ci.com/2016-11-21-travis-ci-now-supports-yarn
Thanks for the pointer, @jab!

Nice @trevj! 👍  👍  👍

Would we not want to cache node_modules too, as mentioned in the blog post?
cache:
  yarn: true
  directories:
    - node_modules

@fortuna Won't it still help for the requirements that stay the same between runs? That's how it works with a pip (Python installer) directory I have Travis set up to cache in one of my projects, and is also what that blog post @trevj linked to above demonstrates doing, no?

I just tried the blog post way with node_modules explicitly called out but honestly it's hard to see a difference - I suspect @fortuna is right to say that since yarn does its own caching and is fast that caching node_modules explicitly probably doesn't make much sense.
I think I'll revert to the simple cache: yarn.


Fix for zwave RGB light setting

Description:
I was able to reproduce this with my Aeotec ZW098 bulb as well. I'm guessing this was broken as part of #6445, since we used to be going through a helper method. We can now just use python strings instead of byte strings.
Related issue (if applicable): fixes #7125

Cherry-picked for 0.42.4

Morning all. After upgrading to 0.42.4 I cant chose rgb color for z wave anymore. I can turn it on but color picker wont react to my input. Also my Automations which include a certain color won*t turn on my LED strip attached to Z-Wave Fibaro RGBW controller. Is there any help out  there ?

@thundergreen
OK, your research in chat is correct. The python-openzwave v0.3.3 update is what broke this. (I was pretty sure I had tested it with #6445.) I use docker, so I got automatically updated and it broke for me. (Guessing @bboti86 is also on docker.)
I think we'll be best off just having v0.3.3 be the minimum supported version.


Add .render() method to ReactWrapper

Would this make mount() work with stateless functional components?

@geowarin no this is unrelated. This would be a method to turn a sub-tree of a mount() wrapper into a cheerio wrapper (ie, what is returned by render())

Can you provide more insight on this? I understand why this is needed for Shallow rendering, but it seems like you could do everything with find() if you are using mount() since the entire tree is rendered.

Merged.


Update Composer dependencies (2022-04-27-00-02)

Visual regression test passed!
View the visual regression test report


Poor throughput of OPNsense installed in a VMware VM using vmxnet3

Important notices**
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Describe the bug
Traffic throughput is poor when installing OPNsense in VMware with vmxnet3 vNIC.
To Reproduce
Steps to reproduce the behavior:

10G Network and fast esxi host and client pc is needed
Create a new VMware VM and Install a fresh plain 23.7 with some vCPUs and some RAM (i.e. 4-8 vCPUs and 4-8GB)
Add at least one vmxnet3 vNIC and add it to a DPG / VLAN which is connected to a fast network with a fast phsysical host
Install OPNsense
Give you vmxnet3 a ipv4 address
update the sense to 23.7.4
install iperf3 plugin
add allow all rule to floating interface
start iperf3 plugin on the same interface where you fast phys. host is connected to
start iperf3 on you fast phys host with following switches: iperf3 -c opnsenseip -p portofiperfinstanceonopnsense -t 30
test will run 30seconds, note the average bandwith
restart iperf3 daemon on opnsense in dashboard, then start iperf3 on same interface on opnsense again
start iperf3 on you fast phys host with following switches: iperf3 -c opnsenseip -p portofiperfinstanceonopnsense -t 30 -R
test will run 30seconds, note the average bandwith
done

Expected behavior
Observed bandwith in iperf3 is far away from 10G. In my case, something around 3Gbit/s.
Describe alternatives you considered
Dont know workarounds, but running Ubuntu, Windows or plain FreeBSD13.2 is much much faster.
Screenshots
NA
Relevant log files
If applicable, information from log files supporting your claim.
Additional context
See this Topic for detailed benchmark results and detailed comparison with FreeBSD 13.2:
https://forum.opnsense.org/index.php?topic=36023.0
Environment
Hypervisor:
ESXi 8 U1
Ryzen 4000 series CPU with 128GB and x550-T2 phys NIC
Switch:
CISCO CBS350 series
Client:
Windows 11
Ryzen 3000 series CPU with 64GB and AQC107 NIC
OPNsense 23.7.4 in VMware VM with 8 vCPUs and 8GB RAM
No other workloads running on this ESXi during benchmarks shown in linked community topic.

I have the same problem with my OPNSense 23.7 running on VMWare ESXi 7.0U3 using vmxnet3. Hardware is Dell XR12, X710 intel Fiber and integrated broadcom Fiber card.
I have tested from 8 vCPU to literally 32 vCPU it has absolutely no difference in terms of performance, I have also tested from 16/32/48GB RAM as I were using Suricata, but the difference between using it or disabling it is literally cca 200 Mbps.
I have disabled hardware offload as the performance drops below 1Gbps, while enabling this they can reach max 2 Gbps on 10Gbps intel SR 850um certified transceivers.
In comparison on RL8 and Debian 12 I can get over 9,8Gbps
There is definitely something choking this version of the OPNSense.
P.S. Just for the reference I used pfSense 2.7, and I can reach additional 1,5Gbps more than OPNSense.
Seems to me that there is something throttling down the throughput.
P.S I don't want to be a grim reaper, but there are lot of claims that same problem is persistent since 20.7 version:
Please check this thread. There are some tweaks which might improve performance but this is definitely far from being perfect.
https://forum.opnsense.org/index.php?topic=18754.0

Feels like a trip down memory lane, I think I already explained differences in measurements in the same forum post (https://forum.opnsense.org/index.php?topic=18754.msg90576#msg90576). When a stock FreeBSD system offers higher throughput (which I don’t expect) I would recommend to check the tunables (sysctl) for differences.

Thanks @vladimirtravalja vladimirtravalja for reply and confirming this issue. I know this topic in the forums, but I did not read all 11 pages in total. All tips I have tested did not work.
Did you read the linked topic in my first post? I was able to iperf at near line speed two days ago. And at the moment, my sense is still running at this speed - and I still dont know why.
I am using a lot of OPNsense installations in a bigger VMware environment at work. Yesterday, we spent some time and we noticed that we have also slow speeds at work. We benched and tried to optimize two OPNsense installations which we are using for testing reasons and I can confirm that we see the poor performance in this environment too.
@AdSchellevis : Please read the linked post at the forum. A fresh plain FreeBSD installation has higher throughput then a free plain OPNsense installation (on my server at home). The reason is that OPNsense disables NIC-HW-acceleration in a default installation, while FreeBSD enables this in a default setup.
I also noticed your post in the forum from 2017. I tried the blacklist tunable at home some days ago, but this did not work.
At work, we tried every available tunables which are listed in the vmx driver man from the FreeBSD documentation without making it better: https://man.freebsd.org/cgi/man.cgi?query=vmx&sektion=4
We also enabled hardware acceleration at work, but this did not help.
Our ESXi hosts are based on two years old Intel based servers. The NICs are dual 25G Broadcoms. And we also see only 2-3Gbits/s.

Thanks @vladimirtravalja vladimirtravalja for reply and confirming this issue. I know this topic in the forums, but I did not read all 11 pages in total. All tips I have tested did not work.
Did you read the linked topic in my first post? I was able to iperf at near line speed two days ago. And at the moment, my sense is still running at this speed - and I still dont know why.
I am using a lot of OPNsense installations in a bigger VMware environment at work. Yesterday, we spent some time and we noticed that we see also poor throughput there. We benched and tried to optimize two OPNsense installations which we are using for testing reasons and I can confirm that we see the poor performance in this environment too.
@AdSchellevis : Please read the link in the first post which I opened at the forum this week. A fresh plain FreeBSD installation has higher throughput then a free plain OPNsense installation (on my server at home). The reason is that OPNsense disables NIC-HW-acceleration in a default installation, while FreeBSD enables this in a default setup.
I also noticed your post in the forum from 2017. I tried the blacklist tunable at home some days ago, but this did not work.
At work, we tried every available tunables which are listed in the vmx driver man from the FreeBSD documentation without making it better: https://man.freebsd.org/cgi/man.cgi?query=vmx&sektion=4
We also enabled hardware acceleration at work, but this did not help.
Our ESXi hosts are based on two years old Intel based servers. The NICs are dual 25G Broadcoms. And we typically also see only 2-3Gbits/s.

Yes, I saw your post and I read all 11 pages of mine where they have some potential solution with tuning parameters in sysctl, and I also read yours..., It is different than mine. You are using direct NIC interaction from OPNSense which in my case I cannot, at least VMWare is not allowing me. Second Any attempt in enabling hardware offload results with far lower speed, so I have to check box on "disable hardware offload". Again thank you for your good intentions of giving a possibly solution, but it does not work for me unfortunately.
Brgds

OK, after doing research for 3 days (before I posted info here) straight, I am getting 8,5Gbps with Suricata enabled on OPNsense (just for comparison, pfSense is performing bit better with 9,4Gbps but unfortunately I can't find why exactly as configs are similar).
there are couple of things which I had to do:
as it is OPNSense over VMWare ESXi 7.0U2 (typo in the previous messages), using vmxnet3 not "pass-through" I definitely need to check, the checkboxs for

Disable hardware checksum
Disable hardware TCP segmentation
Disable hardware LRO (this if it is not checked it drops the throughput by 50%)
Disable VLAN hardware filtering

This step alone has increased bandwidth for 50% in my case
now, in tunable there are options which I used:

disable spectre and meltdown, this mitigation takes a huge hit on Intel Xeon Silver 16 Core 2,4GHz CPU (hw.ibrs_disable="1",vm.pmap.pti="0")
uncap the receive/transmit buff. (net.inet.tcp.sendbuf_max="16777216", net.inet.tcp.recvbuf_ma="16777216")
make tweaks with threads (net.isr.bindthreads="1", net.isr.maxthreads="8") in my case it was 8 vCPUs single thread, but "-1" value can also be used to remove the limit and don't need to worry about how many box have
Set net.isr.dispatch="deferred" - increase performance but on certain hardware, so not sure if this will work for everyone.
vm.kmem_size="1G" I increased memory as default is way to low IMO, especially if you have possibility to utilize more...
kern.maxfilesperproc = "32768" and kern.maxfiles="262144"

when running iperf3 make sure to use parallel requests to get as accurate reading  iperf -c xxx.xxx.xxx.xxx -t  -P <in my case 16>  and check the summary.
I also found out that with 8vCPU under OPNSense 23.7 running on top of VMWare vSphere 7.0U2 (vmxnet3) I can get 8,5Gbps with suricata IDPS. The problem is that my CPU is topping at 100% continuously. When scaled to 16 vCPUs, the same throughput is 9,4-9,5Gbps with max CPU of 65% (sadly VMWare supports only 8vCPU for FT).
Thank you all for reply, but seems that I solved my problem :-)

@AdSchellevis : Please read the link in the first post which I opened at the forum this week. A fresh plain FreeBSD installation has higher throughput then a free plain OPNsense installation (on my server at home). The reason is that OPNsense disables NIC-HW-acceleration in a default installation, while FreeBSD enables this in a default setup.

Yes, that's a logical setup when the machine isn't being used as a router (see also https://wiki.freebsd.org/Networking/10GbE/Router as mentioned in my post). Other modifications on our end involve security (https://docs.opnsense.org/troubleshooting/hardening.html), in which case relevance of settings depend on the platform in use. In some cases it does make a difference to use RSS (https://docs.opnsense.org/troubleshooting/performance.html) to optimize the load. And, never, ever, test with iperf[3] running on the firewall as this will influence the relevant results a lot.

Hi again.
I never do test from firewall even though there is iperf app installed on OPNSense. I always do that from external machines connected from LAN to WAN, meaning Debian 12 to RL8, so passing through OPNSense. But in short this config which I am running now got me the best throughput.
Brgds

@vladimirtravalja Thank you for the summary. I will test your tunings in the next day and let you know what happened.
@AdSchellevis

Yes, that's a logical setup when the machine isn't being used as a router (see also https://wiki.freebsd.org/Networking/10GbE/Router as mentioned in my post).

Sorry, did not read this till now becaus it showed me "This page does not exist yet. You can create a new empty page, or use one of the page templates." until this afternoon. But I found it in archive.org now and now its working again.

Other modifications on our end involve security (https://docs.opnsense.org/troubleshooting/hardening.html), in which case relevance of settings depend on the platform in use. In some cases it does make a difference to use RSS (https://docs.opnsense.org/troubleshooting/performance.html) to optimize the load.

I will read this and see what happens.

And, never, ever, test with iperf[3] running on the firewall as this will influence the relevant results a lot.

Whats the technical reason for this statement?
I compared iperf3 benchmarks running on the sense with routed iperf3 traffic to/from a far Ubuntu VM like you did it in your post from 2017. Both with same speeds.

@vladimirtravalja
Thank you for the summary. I will test your tunings in the next days.
@AdSchellevis

Yes, that's a logical setup when the machine isn't being used as a router (see also https://wiki.freebsd.org/Networking/10GbE/Router as mentioned in my post).

Sorry, did not read this till now becaus it showed me "This page does not exist yet. You can create a new empty page, or use one of the page templates." until this afternoon. But I found it in archive.org now and now its working again.

Other modifications on our end involve security (https://docs.opnsense.org/troubleshooting/hardening.html), in which case relevance of settings depend on the platform in use. In some cases it does make a difference to use RSS (https://docs.opnsense.org/troubleshooting/performance.html) to optimize the load.

I will read this and see what happens.

And, never, ever, test with iperf[3] running on the firewall as this will influence the relevant results a lot.

Whats the technical reason for this statement?
I compared iperf3 benchmarks running on the sense with routed iperf3 traffic to/from a far Ubuntu VM like you did it in your post from 2017. Both with same speeds.

I hope this will work for you as well.
Please keep in mind that if you use iperf3 -c  without specifying parallel, it somehow uses only 1 "core/thread". At least I red it somewhere (I can't find source as in 3 days I have read lot of documentation and forums, githubs, etc, so it is fairly difficult for me to find within numerous pages). Also in the same thread they said that 1 core/thread is capped up to max 3-5Gbps which actually corresponds to the 3,5Gbps which I got. But this tweak with threads might be the key which basically instructs to use more threads to process the traffic. "maxthreads=-1"

make tweaks with threads (net.isr.bindthreads="1", net.isr.maxthreads="8") in my case it was 8 vCPUs single thread, but "-1" value can also be used to remove the limit and don't need to worry about how many box have

Again, check and test and see how it goes and if it helps you.
Have a lovely weekend

Thanks, I know that iperf3 activates only one flow without using the -P(arallel) switch. But, its already not a problem to reach nearly 10G line rate with 8 or more streams since I have activated hardware offloading with virtual vmxnet3 adapter. Please note that I do NOT mean with a hardware NIC in passthrough mode.
The goal is to reach ~line rate with only one stream, because thats what typically happens if you open files on a NAS (if it dont suppoert multiple flows). Currently, its allready possible but I dont know why.
I think my Ryzen 4750G Pro is equal or maybe a little bit faster in single threads than your xeon, so I dont know why I had only 2,7G in total with one or multiple flows.
We will see...
Have a nice weekend too.


Doesn't seem to work

All i got is:
There seems to be a problem with your network!

It seems that the API is down: https://crimeflare.zidansec.com/
Currently it responds with an Error 1016 (Origin DNS Error): You've requested a page on a website (crimeflare.zidansec.com) that is on the Cloudflare network. Cloudflare is currently unable to resolve your requested domain (crimeflare.zidansec.com).
Unfortunately I believe there's nothing to do until Zidan fixes his api.

Wait guys

hi guys, i just noticed this error as well

Same error here as of today~ I hope it gets fixed soon!

Hey, please fix the tool. I need to find the origin ip address.

Is it just the client that is open source or is the server open source as well?  Could I set up my own API host?

When I started Crimeflare, it shows nothing after scan too. Progress line only and nothing more.

Think you need to install php-curl

./crimeflare.php pastebin.com

❝ Not all websites with cloudflare WAF can be bypassed with this tool ❞
- There seems to be a problem with your network!

Getting same error with other URLs


Farm stats server not working

The server hosting the farm stats is not working at all.
If you have any free or (very) cheap hosting solution, fell free to say it here!
(moved from issue #1)

you mean something like this ? http://5jelly.info/vps/

I'll take a peek into this one.
But stats servers seems to work for now, also I noticed it was stuck on an endless loop!
We'll see in the future how the situation will evolve.

Yay! I found a server, the farm stats are coming back in the following days.

Stats are now working since version 2.2

Stats are now working since version 2.2


Guidance: Grab Bags of Issues

In order to manage our workflow, we need to formalize the policy that filing a "grab bag" of issues in a single issue will be closed or have to be recreated as separate ones. Or something of that ilk.

This has been documented in the bug report template.


feat(tutorial): complete step 4

Closes #
{{short description}}
Changelog
New

{{new thing}}

Changed

{{change thing}}

Removed

{{removed thing}}

@kellychurchill I have updated the PR. You can view it at https://deploy-preview-1071--carbon-tutorial.netlify.com/#/


First shot: control plugins

Okay, here goes: first shot at #1392
See id-upwards for an example plugin.
This establishes the 'hook' which JavaScript plugins can call by invoking a function, but it does not yet propose how you'd include other JavaScript on the page. This could be loading from npm, local sources, an iD-specific source, etc. Open to options.
Tweet-gif of example in action.
Observations:

Control styling will need to adapt to a variable number of controls
Need to decide whether to control the panel size & placement or let plugins do that.

Sorry for the delay here, this does deserve a response.  I think what you've built is really cool and we should encourage people to build more things like this.  Discussing (here or in #1392) about what plugins actually need is the first step.  Documenting it in API.md is also important.
I think we should be clear on what things in iD we consider the interface, and then be diligent about following semantic versioning starting with the v2.0 release so that people can actually build plugins without breakage.
The list of things is probably this, even though we don't have it written down anywhere:

exported functions
emitted events
url params
identified dom elements  (#sidebar, #content, #map, #supersurface, #surface, etc)

It looks like your specific plugin needs a few things more on the iD side:  A place attach to like a control (we should make an element identified like #controls), and a hook to register the plugin (it's not clear to me what this hook does - could we instead emit an event?)

Here's how I'm seeing this:

iD Plugins will have multiple types. There should not be one-size-fits-all for a plugin that, say, adds a new operation, versus one that adds a UI element, or that adds a new validation step. This would be the first of multiple plugin interfaces and it would be strict in terms of what it allows.
As a result, the rest of this list will be talking about 'this kind of plugin' and not necessarily any other kind.
This plugin type relies on three connection points:

pluginRegisterControl method to register itself
context
A HTML element that is provided to the plugin for it to fill.

As such, the plugin would not be allowed access to iD, or any other HTML element - it would not be able to select #surface and do stuff with it. Allowing plugins domain over the existing HTML structure of iD seems like a trap: there would be no way to deal with conflicts, and conflicts would quickly occur.
I'm not sure how an event would work in this case, and why it would be preferable to a plugin - which side would listen to the event? Conceptually I don't see how an event could do the job of either a function, as this currently works, or, potentially assigning to a iD member variable, in the style of node's require hooks.

Ok, we are definitely coming at this from different points of view, but hopefully we can meet in the middle and spec out something useful.
Here are my original thoughts, which I'm totally not sold on - just brainstorming..
iD would have a registerPlugin(definition) method that would accept an object with properties like the plugin name, description, version, author, and where its code lives.  iD would create a script tag to load the plugin code into, then when onloaded call an init function that would do whatever the plugin needs to do.  Yes, this is dangerous, and we should only load "trusted" plugins, whatever we choose that to mean.  My assumption was that plugins would contain code like:
function myPlugin(context) {
  var plugin = {
    init: function() {
      d3.select('#surface').call(addPluginThings);
      context.map().on('drawn.myplugin', updatePluginStuff);
    },
    off: function() {
      context.map().on('drawn.myplugin', null);
    }
  };

  return plugin;
};

So clearly my thinking is influenced by how the rest of the code in iD works, and the "d3" way of doing things.  But it sounds kind of similar to what you need for your plugin to work: a registration function, a context, and some html.
To your other points:

As such, the plugin would not be allowed access to iD, or any other HTML element - it would not be able to select #surface and do stuff with it. Allowing plugins domain over the existing HTML structure of iD seems like a trap: there would be no way to deal with conflicts, and conflicts would quickly occur.

We can't really prevent this, right?

I'm not sure how an event would work in this case, and why it would be preferable to a plugin - which side would listen to the event?

Plugins would listen for events emitted by iD.  Maybe vice versa too, because a plugin should be able to tell iD to redraw in response to something the user did on the plugin side (tricks like context.map().pan([0,0]) will force a redraw, but that's totally hacky).

We can't really prevent this, right?

We can't prevent it at the code level, but drawing the line there would mean:

If plugins do overreach, we don't provide support for them
Only approved elements are documented in the plugin API

This is, notably, modeled after the Chrome extension API, Firefox API, modeled after our troubles with the TileMill plugin system, and also with React's no-reaching-up style system: components own a part of the DOM going down, but cannot affect their siblings or parents.

Allowing plugins to hook into the DOM is fundamentally equivalent to versioning the entire DOM structure, which we currently don't do: if you change the classes on a building in the map, it isn't automatically iD 5.0.0. But plugins, if they have access to the entire DOM, will rely on the entire DOM as an API and thus our current versioning system will become irrelevant since plugins that rely on DOM structures will break on minor and patch changes.
With my plan, plugins are isolated, as well as they can be: they should be able to operate independently of each other with little change for conflict. Allowing access to the DOM means that your plugin that, say, adds a feature by inserting it into the building polygon, will have to deal with another plugin that also decides to mess with that same building polygon - and how do the two play? Both 'own' the DOM, should they avoid ever clearing out elements? What if they modify existing elements? As we found with the TileMill API, complete power like this leads to complete and persistent conflict.

Plugins would listen for events emitted by iD.

Sure, I agree with that... plugins can use the context object to hook into iD's events bus. In your previous message, you seemed to be proposing using events instead of the function hook, which led to my confusion.

Closing; usable as an example but not going to merge this anytime soon.


Bump dependencies

https://github.com/DefinitelyTyped/definition-tester/pull/14/files#diff-35b4a816e0441e6a375cd925af50752cR158
ここ、ts_clean:dist -> clean:dist じゃないですかね？直し忘れっぽい。

wow, thanks!

umm... The job exceeded the maxmimum time limit for jobs, and has been terminated.
but test is passed in my local machine.


Use IBS Mirror

Why is this PR needed?
IBS mirror was disable because it was experiencing
problems. However, using IBS repositories from NUE
slows down the test process considerably.
Reminder: Add the "fixes bsc#XXXX" to the title of the commit so that it will
appear in the changelog.
What does this PR do?
Sets the mirror configuration parameter for testrunner
Merge restrictions
(Please do not edit this)
We are in v4-maintenance phase, so we will restrict what can be merged to prevent unexpected surprises:
What can be merged (merge criteria):
    2 approvals:
        1 developer: code is fine
        1 QA: QA is fine
    there is a PR for updating documentation (or a statement that this is not needed)

I think if this was rebased it would work

Hi!
New code has been merged in master regarding terraform 0.12. Please rebase your branch to take this changes in.
Happy hacking

This PR was intended to address a point-in-time requirement and it is no longer valid.


MSCAN-Large's e.r or mlp_ratios needs to fix

https://github.com/Visual-Attention-Network/SegNeXt/blob/1e51c8ac5b94907d915346d5c0e998093d97aa93/mmseg/models/backbones/mscan.py#L175
It will raise size mismatch when load mscan-large reference mscan-large-config

mlp_raitos=[8, 8, 4, 4]

We write the mlp_raitos parameter in https://github.com/Visual-Attention-Network/SegNeXt/blob/main/local_configs/base/models/mscan.py#L10

Thanks to reply, I just  miss it


Introduce subcommand grouping into the command configuration to improve help

Add optional support for grouping subcommands into named groups, to help bring order to commands with many subcommands without requiring additional structure. For example, here's the help for a "subgroupings" command that has an ungrouped subcommand (m), and two groups of subcommands ("broken" and "complicated").
USAGE: subgroupings <subcommand>

OPTIONS:
  -h, --help              Show help information.

SUBCOMMANDS:
  m

BROKEN SUBCOMMANDS:
  foo                     Perform some foo
  bar                     Perform bar operations

COMPLICATED SUBCOMMANDS:
  n

  See 'subgroupings help <subcommand>' for detailed help.

To be able freely mix subcommands and subcommand groups, CommandConfiguration has a new initializer that takes a result builder. The help output above is created like this:
struct WithSubgroups: ParsableCommand {
  static let configuration = CommandConfiguration(
    commandName: "subgroupings"
  ) {
    CommandGroup(name: "Broken") {
      Foo.self
      Bar.self
    }

    M.self

    CommandGroup(name: "Complicated") {
      N.self
    }
  }
}

Each CommandGroup names a new group and is given commands (there are no groups within groups). The other entries are arbitrary ParsableCommands.
This structure is only cosmetic, and only affects help generation by providing more structure for the reader. It doesn't impact existing clients, who can still reason about the flattened list of subcommands if they prefer.

@swift-ci please test

I was just looking at doing something very similar! (WIP here: https://github.com/apple/swift-argument-parser/tree/subcommand-groups).
The CommandsBuilder idea is an interesting one. However is it limiting in some of the manipulation that you can do with the existing simple array subcommands parameter? Currently it's quite easy to do things like dynamically alphabetically sort the subcommands array or only include some commands based on #if checks. I checked out this branch and played around with a it a bit and it wasn't obvious to me how you could achieve those kinds of things with the builder (but I'm very inexperienced with resultBuilders!)

Do we think there's value in allowing for a longer description string for the group? For example how subcommand groups are described in git -h. E.g. accomplishing something like this in the test, adding a description to the header title.
BROKEN SUBCOMMANDS: These commands are currently non-functional due to XYZ
  foo                     Perform some foo
  bar                     Perform bar operations

The CommandsBuilder idea is an interesting one. However is it limiting in some of the manipulation that you can do with the existing simple array subcommands parameter?

It shouldn't be too limiting. Result builders can support more language syntax if we'd like (e.g., the ability to do if #available and such), although I didn't add them.

I checked out this branch and played around with a it a bit and it wasn't obvious to me how you could achieve those kinds of things with the builder (but I'm very inexperienced with resultBuilders!)

I'd expect #if to work inside the builder already. If we want if, if-else, switch, and if #available to work, we can add that support to the builder by introducing the appropriate buildXYZ methods.

Do we think there's value in allowing for a longer description string for the group?

Yes, I think that's a good idea! It's easy enough to add an "abstract" that we put here.

@swift-ci please test

@dickoff See the latest two commits, which add an optional abstract and then extend out the result builders to handle all of the declarative syntax.

I've opened up a discussion thread on the forums for this change: https://forums.swift.org/t/grouping-subcommands/72219

@dickoff See the latest two commits, which add an optional abstract and then extend out the result builders to handle all of the declarative syntax.

New changes look great! They resolve all the questions I brought up.

I would recommend splitting out the abstract into a different PR. If we add this functionality to CommandGroups then we should probably add them OptionGroups and that feels like scope creep for this change.

could you add initializers that just accept arrays that are parallel to the builder-based initializers for CommandConfiguration and CommandGroup?

Hmm. If we're going to do this, I think I'd rather drop the builder-based initializers entirely from this pull request than introduce two new interfaces for the same thing. It's completely reasonable to say that the only way to get this functionality is with syntax like this:
subcommands: [
  // all of the ungrouped subcommands
],
groupedSubcommands: [
  CommandGroup(
    name: "group name",
    subcommands: [
      // subcommands in this group
    ]
  ),
  // ...
].

That avoids having to create the Subcommand type at all, and is arguably more in keeping with the current API design. It would leave the door open to a builder-based design in the future should we want it.

That makes sense! I could see that fitting into a whole builder-based configuration approach (which I think we've looked at before). If we make this change, let's also make flattenedSubcommands (or allSubcommands) public API as well, since the subcommands will live in two different places.

That makes sense! I could see that fitting into a whole builder-based configuration approach (which I think we've looked at before). If we make this change, let's also make flattenedSubcommands (or allSubcommands) public API as well, since the subcommands will live in two different places.

Could we not just have the existing subcommands still return all ungrouped and grouped subcommands together? Having subcommands start to only return ungrouped commands would be odd for clients I would think.

Could we not just have the existing subcommands still return all ungrouped and grouped subcommands together?

I think we need subcommands to still return all ungrouped and grouped subcommands. I can add ungroupedSubcommands and groupedSubcommands for clients that want them separate.

@swift-ci please test

@natecook1000 I believe I addressed all of your comments. The updated PR description contains the non-result-builder interface, which is a more straightforward extension of the existing syntax:
  struct WithSubgroups: ParsableCommand {
    static let configuration = CommandConfiguration(
      commandName: "subgroupings",
      subcommands: [ M.self ],
      groupedSubcommands: [
        CommandGroup(
          name: "Broken",
          subcommands: [ Foo.self, Bar.self ]
        ),
        CommandGroup(name: "Complicated", subcommands: [ N.self ]),
        CommandGroup(name: "Invisible", subcommands: [ ])
      ]
    )
  }


New registry infrastructure

The old registry server has been to hard to manage and pay for.
We will move the system to a serverless approach which loads a users resume via a public gist named resume.json.
When a request is made to registry.jsonresume.org/thomasdavis it will;

Look up the users gists via the api (If we don't yet know the location of their resume.json gist)
Store the url to the gist in a datastore
Render the resume on a function by hitting the new serverless theme renderer

Still need to figure out a convention for users to define which theme they would like rendered by default (property in resume.json, in the gist file extension, in the gist description)

Example gist api response: https://api.github.com/users/thomasdavis/gists
All old registry members should have got an email containing their resume backup, if not, let me know.

So registry is up now
https://registry.jsonresume.org/thomasdavis
By creating a resume.json on your github account, you can access it by entering your github username https://registry.jsonresume.org{github_username}
You can set theme by adding a json blob to your gist description { "theme": "elegant"}
Here is my resume.json -> https://gist.github.com/thomasdavis/c9dcfa1b37dec07fb2ee7f36d7278105

[ ] Need to store url to gist for github api rates
[ ] Need a way to cache bust theme if gist is cached
[ ] Need speed improvements
[ ] Need better errors
[ ] Need to fix documentation
[ ] Deprecating publishing from cli too

New serverless code bases can be found
https://github.com/jsonresume/registry-functions
https://github.com/jsonresume/theme-functions
All ideas are appreciated!

@thomasdavis thanks man. You did it. I needed this badly and since I already have a backup it is easy to make a gist and voila it is working now. :+1: for the theme integration through gist description.

Website hosting instructions updated -> https://jsonresume.org/getting-started/
@adityatandon007 Thanks!

I've changed the theme selection to be inside the resume.json instead.
Simply add { "meta": { "theme": "elegant" } } as a top level property of your resume.json
The meta property was added to the official schema to support things like this.

I need to merge theme and registry server into one for speed purposes.

Thank you so much for posting this. @thomasdavis could you also update the README as to how to get it to work locally? I have uploaded my resume.json as a gist and saw it work at https://registry.jsonresume.org/ars75

Works perfect for me. Thanks! https://registry.jsonresume.org/jorgeas80

All ideas are appreciated!

@thomasdavis
Since a gist is a collection of files, I made an assumption that broke my resume until I realized what it was. I cloned my gist and added the html output just to have it easily referenced. The current code expects a gist named resume.json having a single file named resume.json.  What are your thoughts on finding the file with name resume.json within that gist?
If that is not possible, a cleaner error message would be cool for people who run into this. Let me know if you  need the current error message. I'd love to contribute if you approve the change.

@dalevross Yep I should fix that, hopefully can get to it tonight.


Build error on macOS

I followed your instructions to build and got the following:
Undefined symbols for architecture x86_64:
  "_pthread_barrier_destroy", referenced from:
      _uv_barrier_destroy in libuv.a(thread.c.o)
  "_pthread_barrier_init", referenced from:
      _uv_barrier_init in libuv.a(thread.c.o)
  "_pthread_barrier_wait", referenced from:
      _uv_barrier_wait in libuv.a(thread.c.o)

Am I missing something?
Thanks!

Get exactly the same build error. Is anyone looking into such issues actually?

I'm sorry I don't have time to look into it right now.  I no longer even own a macbook and running OSX inside a virtual machine has proven problematic.

index d186a07..c638aeb 100644
--- a/uv.cmake
+++ b/uv.cmake
@@ -121,6 +121,7 @@ else()
     ${LIBUVDIR}/src/unix/timer.c
     ${LIBUVDIR}/src/unix/tty.c
     ${LIBUVDIR}/src/unix/udp.c
+    ${LIBUVDIR}/src/unix/pthread-barrier.c
   )
 endif()```

(ref: https://stackoverflow.com/a/40911928/2724079)

FWIW, if we upgrade to latest libuv, this dependency goes away.

FWIW, if we upgrade to latest libuv, this dependency goes away

@creationix what leads you to that conclusion? I tried upgrading from libuv 1.16 to 1.20 in https://github.com/neovim/neovim/pull/7506 and am seeing this issue on Travis CI macOS builds.


Move the bin to src and take on clap dependency for command line arg parsing

I realized that keeping the cli in another crate wasn't helping and actually caused build issues once we had remote dependencies (cargo wouldn't build that sub-crate since it wasn't a dependency of datomish and just a bin reference).
We can easily keep the binary in the main src/ directory so that's what this does.  There's initial support for subcommands in place (so we can do cargo run serve, cargo run whatever.
This doesn't yet wire up the web server from #147

Needs a squash before landing, but changes should be ready for review.  Can handle the server in a follow-up


Thaumcraft - Nitor texture incorrect

Hello. It seems that, for the Nitor texture, BlockHelper uses the "Unnamed" Thaumcraft 3.0.3 texture. NEI's Waila-like function (Highlight tips shown) shows the item sprite instead. See screenshots. As always, keep up the good work.

Hello, sorry, I am still a bit sick, so I cannot really work on this yet.
I found a major difference between Block Helper and NEI:
Block Helper tries to show the exact ID and name of the block that is being looked at.
This is necessary in order to retrieve extra information such as stored energy, maturity state (for crops) etc.
NEI will only show the block or item name you obtain when middle-clicking the block (creative mode block picking).
Implementing this in Block Helper will have a major caveat: If this block differs (which it will for many), extra information cannot be shown anymore.
A workaround could be to just render the block and keep everything else as-is. However, then for some blocks, there might be wrong names and it will basically be the same bug fix - but this time for the name.
Eventually, we have two entirely different systems for determining names and icons and another one for the extra information.
I am not sure what to think of this for now...
Maybe, there is some better way?

No problem, good recovery.
Maybe, for very specific edge cases like this, there could be a config file option for the user to override the displayed texture via item/block IDs. For instance, in a ID:meta (block looked at); ID:meta (wanted block/item) format:
475:8; 999:1
That way, specific IDs don't need to be hardcoded into the mod itself and the user may change the displayed texture to whatever they want.

I followed your suggestion and added a config option similar to yours. It looks a bit different, though:
6:4-5,5-7,7:*-4:4 maps ID 6:4 to 5:0, 5:0 to 7:0, and all ItemStacks with ID 7 and any metadata to 4:4


[TW#27909] Provisioning hangs on swift app

----------------------------- Delete below -----------------------------
If your issue is a general question, starts similar to "How do I..", or is related to 3rd party development kits/libs, please discuss this on our community forum at esp32.com instead.
INSTRUCTIONS
Before submitting a new issue, please follow the checklist and try to find the answer.

[x] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[x] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[x] I have searched the issue tracker for a similar issue and not found a similar issue.

If the issue cannot be solved after the steps before, please follow these instructions so we can get the needed information to help you in a quick and effective fashion.

Fill in all the fields under Environment marked with [ ] by picking the correct option for you in each case and deleting the others.
Describe your problem.
Include debug logs on the monitor or the coredump.
Provide more items under Other items if possible can help us better locate your problem.
Use markup (buttons above) and the Preview tab to check what the issue will look like.
Delete these instructions from the above to the below marker lines before submitting this issue.

----------------------------- Delete above -----------------------------
Environment

Development Kit:      [ESP32-Wrover-Kit|ESP32-DevKitC|ESP32-PICO-Kit|ESP32-LyraT|ESP32-LyraTD-MSC|none]
Kit version (for WroverKit/PicoKit/DevKitC): [v1|v2|v3|v4]
Module or chip used:  [ESP32-WROOM-32|ESP32-WROOM-32D|ESP32-WROOM-32U|ESP32-WROVER|ESP32-WROVER-I|ESP32-WROVER-B|ESP32-WROVER-IB|ESP32-SOLO-1|ESP32-PICO-D4|ESP32]
IDF version (run git describe --tags to find it):
// v3.2-dev-1148-g96cd3b75c
Build System:         [Make|CMake]
Compiler version (run xtensa-esp32-elf-gcc --version to find it):
// 1.22.0-80-g6c4433a
Operating System:     [Windows|Linux|macOS]
Power Supply:         [USB|external 5V|external 3.3V|Battery]

Problem Description
I downloaded:
https://github.com/espressif/esp-idf-provisioning-ios
ran pod install
clicked the provison button to do it by WiFi, nothing happened.
//Detailed problem description goes here.
Expected Behavior
I expected it to provision
Actual Behavior
Nothing happens.
I can see that it makes it's way to SendHTTPData , however nothing happens after that.
There is no error either.
Steps to repropduce

step1
...

// It helps if you attach a picture of your setup/wiring here.
Code to reproduce this issue
// the code should be wrapped in the ```cpp tag so that it will be displayed better.
#include "esp_log.h"

void app_main()
{

}

// If your code is longer than 30 lines, GIST is preferred.
Debug Logs
Debug log goes here, should contain the backtrace, as well as the reset source if it is a crash.
Please copy the plain text here for us to search the error log. Or attach the complete logs but leave the main part here if the log is *too* long.

Other items if possible

[ ] sdkconfig file (attach the sdkconfig file from your project folder)
[ ] elf file in the build folder (note this may contain all the code details and symbols of your project.)
[ ] coredump (This provides stacks of tasks.)

Hi @naderahmed - I just verified that it works. Maybe an issue with the configuration in menuconfig?
Can you please check -

You are using WiFi Sec 1 Debug build in iOS
In your IDF, you are using examples/provisioning/softap_prov

in the example, you have set Example Configuration->Use Security Version 1

If you haven't made changes to the PoP, the default abcd1234 should be set on both the device as well as the smartphone app

Hi Anuj  - infact if you can spend an hour with me, my company can offer you $30.00

thank you for your response. My company is in a time crunch, as we plan on selling millions of these... so I am under pressure to test and verify if ESP32 really works.
However.. I apologize, but I did not understand your instructions, I  need very basic steps. I am completely new.
I also wanted to add a point which I forgot to mention - I got an error when I tried to build:

error: Build input files cannot be found:
esp-idf-provisioning-ios-master/EspressifProvision/EspressifProvision/proto/session.pb.swift'

it was actually for many files like that, therefore what I did was.
copy all the swift files from:
 /Users/nader/Documents/iOS/ESP32/esp-idf-provisioning-ios-master/EspressifProvision/EspressifProvision/proto

TO:
/Users/nader/Documents/iOS/ESP32/esp-idf-provisioning-ios-master/proto

then it worked. I just wanted to let you know that, in case that could have been a problem.
Therefore, please help me understand your first instruction:

Can you please check -
You are using WiFi Sec 1 Debug build in iOS

I do not know how to do that, nor do I understand what it means.
Can we chat briefly on skype ? I am available now.
I am also available at 5:00 AM NYC time
or when do you suggest?

Hello,
I will be available at 4:30 PM Pune, India time tomorrow(12-14) so we can quickly chat via skype.
skype id: naderwashere

we are using the /esp/esp-idf/examples/wifi/smart_config
here is my skype id: naderwashere

@naderahmed Hi, would you help share if any updates for the issue? Thanks.


Project Status

Problem
Currently, the status of campaigns is not being expressed correctly. A campaign that is dated in the future is "active".
Proposed Solution
Review the full state diagram of the campaigns and set a campaign that is set to start in the future as "Inactive". Set a campaign that is set in the future, but has remote mapping configured as  "Remote Mapping".


Support --allow-shlib-undefined linker flag

This is important for building plugin libraries. Undefined symbols are expected in these.
Note that the default behavior depends on whether a shared library is being created, and on whether the target is macOS (possibly other platforms?). We should ensure a reasonable and consistent default of --no-allow-shlib-undefined.

The form is -Wl,--(no-)allow-shlib-undefined for C/C++ and -f(no-)allow-shlib-undefined for Zig.
Should be exposed as <AllowUndefinedSymbols>true</AllowUndefinedSymbols>.


Update scala3-library to 3.1.3-RC1-bin-20220131-1776d81-NIGHTLY

Updates org.scala-lang:scala3-library from 3.1.3-RC1-bin-20220128-f955f8b-NIGHTLY to 3.1.3-RC1-bin-20220131-1776d81-NIGHTLY.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-lang", artifactId = "scala3-library" } ]

labels: library-update, early-semver-pre-release, semver-spec-pre-release, commit-count:1

Superseded by #1120.


Form submissions with response HTML don't work

There's a potential bug in Turbo-iOS when it comes to submitting forms and rendering the response HTML.
I notice the following flow when submitting a form in Turbo iOS:

The form is submitted.
The server issues a redirect upon successful form response.
The redirect is followed, and the response is returned.
The WebView bridge is alerted to a "Visit Proposed" event containing the response HTML.
You're free to route the proposal as desired, usually ended with calling the "window.turboNative.visitLocationWithOptionsAndRestorationIdentifier" with the response HTML.

The problem is, calling "window.turboNative.visitLocationWithOptionsAndRestorationIdentifier" containing response HTML returns the exact same page, completely ignoring the response HTML.
If you try this in the demo app, it will work the first time and the first time only. Subsequent form submissions will continue to return the same page over and over again. This is because of a "Back Navigation" bug, where submitting the form the first time, the app thinks you hit the back button, and issues another get request.
Walking through step by step in the Demo app, using Proxyman to see requests/responses to/from the server:

Run the app
Tap "Load a web page modally"
Submit the form. Proxyman shows two get requests, the first from the redirect, the second from the above mentioned "Back Navigation" bug: The rendered screen is "correct" only because of the second get request.

Hit the back button.

Tap "Load a web page modally" again.

Submit the form. Proxyman now shows one get request, as expected. However, the response HTML was ignored. This can be seen by comparing the time stamps of the response HTML with the time stamp rendered on screen:

Walking through the "Back Navigation" bug:

Run the app
Tap "Load a web page modally"
Place breakpoints on line 207 of "Session.swift" and line 47 of "Visit.swift".
Submit the form.
Breakpoint: The first time and first time only, a "visit did complete" message comes from the ScriptMessageHandler, setting the state of the Visit to complete. I have no idea why this event is sent, but it's the reason for the Back Navigation bug. Hit continue.
Breakpoint Session's visitableViewWillAppear activates, and ends up in the "Navigating Backward" path, issuing another visit (GET request 2). It is this second GET request that gives the appearance of "correct" behavior when submitting the form the first time.

Subsequent form submissions skip step 5, so on visitableViewWillAppear, it ends up in the "Navigating Forward" path, issuing only one GET request as it should. But because the response HTML is ignored by Turbo, it re-renders the same screen again and again. Refreshing the page renders the correct response.
I believe this is bug in turbo.js, but I can't say for sure because I can't set breakpoints in the javascript code in Xcode. 😢 I need to do more research into how Turbo itself works.
My current workaround is to set the response HTML to nil before passing the proposal to "window.turboNative.visitLocationWithOptionsAndRestorationIdentifier". This seems to trick Turbo into not knowing that the request came a redirected form submission, so it issues another GET request. Submitting two GET requests per form submission is not ideal, though.

@joemasilotti Could this be at all related to #48? Is that problem resolved?

I believe this is bug in turbo.js, but I can't say for sure because I can't set breakpoints in the javascript code in Xcode. 😢 I need to do more research into how Turbo itself works.

If you open Safari on your desktop you can connect to the simulator's web view via the Debug menu item. You might have to enable Developer Mode in settings for it to appear. Then you should be able to set a break point in the JavaScript.

@joemasilotti Could this be at all related to https://github.com/hotwired/turbo-ios/issues/48? Is that problem resolved?

This might be the root cause, but I can't say for sure! I've adopted to only doing forms in modals to work around the issue.

Very curious to hear what you find or what the maintainers think about this! I haven't heard anything on my issue since I opened it in October.

Sorry for late response, guys. @joemasilotti thanks for the tip! @ghiculescu yes, I'm calling session.visit with the options, which contains the response.
I haven't had time yet to do a deep dive on this yet. I'm starting to think it has more to do with the restoration identifier, I'll keep you guys posted.

@jayohms, any updates or ideas on this one? My workaround no longer works and I'm running into this issue for any submitted form.

I can replicate the original issue here. I haven't fully dug into "why" yet but I did note that this event gets fired after you tap "submit"

And there is a cached snapshot:

Presumably that comes from here https://github.com/hotwired/turbo/blob/98cdc4037788f078a741c7fb50412db0101bcb97/src/core/drive/visit.ts#L240

Not sure if it's related, but the order of operations in visitStarted in a browser is different to the native order.

Browser: https://github.com/hotwired/turbo/blob/98cdc4037788f078a741c7fb50412db0101bcb97/src/core/native/browser_adapter.ts#L30
Native: https://github.com/hotwired/turbo-ios/blob/fadb1f3888427a839f1e102ec5f38125f96172ba/Source/WebView/turbo.js#L111

I don't see why the snapshot is loaded first in browser, but last in native.

I'll be taking a look at this tomorrow. I don't have my mind wrapped around all the details yet, so I'll spend some dedicated time on it. @joemasilotti or @ghiculescu do you know if the turbo-android library/demo have any issues in this area? I'm not aware of anything, so I presume this might be isolated to the turbo-ios library.

I just tried the turbo-android demo and couldn't replicate.

Excellent, thanks @jayohms! If it helps, I'm open to pair with you.

Sorry guys, I haven't had the time to take a deep dive! I'll see if I can get to it this week.
For what it's worth: the response html is rendered when it's passed to the same session (in my app, I have it push a new view controller). The response html seems to be ignored when it is passed to a different session (like a modal session).

An update: I've been digging into this. The core issue is the fact that the iOS demo app has separate default and modal sessions. This isn't the case on desktop web or Android.
Whenever a form submission is completed, the core turbo.js library clears all cached snapshots as a fairly blunt approach so that (potentially) stale snapshots are not reused. Since clearing snapshots across multiple sessions is not supported, the default session retains its snapshot cache. Even if this particular bug didn't exist, we still would want the default session snapshot cache cleared, since you'd want to see fresh data as you navigate back through the backstack.
I'm working on an approach to make it possible to clear snapshots across sessions after form submissions, but I'm not entirely confident how successful it'll be yet. I'm hoping to get a PR ready for tomorrow — and if not I'll provide an update.

Amazing! Thanks for the update.
Clearing snapshots after a form submission sounds great to me. It could also make navigating "back" a few pages after submitting a form not render stale data!

I've got a spike here to manually clear the default Session's snapshot cache when the modal session completes a form submission: https://github.com/hotwired/turbo-ios/pull/84
However, unfortunately it hasn't solved the issue here yet — but it's possible I'm missing something with the implementation. There might also be a race condition with clearing the snapshot and starting the next visit.
It also appears that there's might be some flawed logic here and the navigation is completed early:
https://github.com/hotwired/turbo-ios/blob/main/Source/Session/Session.swift#L210-L219
I don't have a solution yet, but I'll keep digging. Feedback welcome @joemasilotti, @ghiculescu or @izaguirrejoe!


[stable/heapster] add eventer to heapster chart

This PR adds eventer to the heapster chart. It is part of the heapster container so i figured it is best to add it to the same deployment.
Eventer allows you to ship the Kubernetes event logs to another location.

/ok-to-test

you mean like this?
Could you explain why?

That's correct. We generally avoid setting default resource requests & limits because it can be difficult for users to override them later.

ok, then we should be ready to go :)

/lgtm


Add peer_connection_create_datachannel

Allows the user to send a DataChannel Open message.
Resolves #174

@sepfy not done yet! Hopefully finish it tomorrow :)


Updated the nf-core points of contact for the Sanger

Yes, Nextflow is getting a lot of traction over here. Thank you !


Adding block service with Create and List Volumes

What type of PR is this?

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespace from that line:

kind new feature

/kind bug fix
/kind cleanup
/kind revert change
/kind design
/kind documentation
/kind enhancement

What this PR does / why we need it:
This adds block service for multicloud with Create and List File share APIs for AWS
Which issue(s) this PR fixes:

Fixes #
This creates and queries directly from cloud backend as of now. We will enhance it for persisting in DB in future. Also, it will have to have the mechanism of polling the volumes periodically to get exact state
Test Report Added?:

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespace from that line:
/kind TESTED
Kind NOT-TESTED

Test Report:

Get volumes for a backend:
[GET] http://<IP_ADDRESS>:8089/v1/94b280022d0c4401bcf3b0ea85870519/volumes?backendId=5ef26d79c5d1b20001308f66
{
 "volumes": [
  {
   "size":<PHONE_NUMBER>,
   "type": "gp2",
   "state": "in-use",
   "volumeId": "vol-0b1191d991f2bac39",
   "availabilityZone": "ap-south-1b",
   "createdAt": "2020-06-07 18:55:24.995 +0000 UTC"
  },
  {
   "size":<PHONE_NUMBER>,
   "type": "gp2",
   "state": "available",
   "volumeId": "vol-08645c4985913749b",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 15:17:54.645 +0000 UTC"
  },
  {
   "name": "aksvol1",
   "size":<PHONE_NUMBER>,
   "type": "gp2",
   "state": "available",
   "volumeId": "vol-0526b378cf6dce574",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 17:15:11.876 +0000 UTC"
  },
  {
   "name": "aksvol2",
   "size":<PHONE_NUMBER>,
   "type": "gp2",
   "state": "available",
   "volumeId": "vol-05d10356c6e008090",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 18:43:08.308 +0000 UTC"
  },
  {
   "name": "aksvol3",
   "size":<PHONE_NUMBER>,
   "type": "gp2",
   "state": "available",
   "volumeId": "vol-0d6e695a04a988711",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 18:53:07.982 +0000 UTC"
  },
  {
   "name": "aksvol4",
   "size":<PHONE_NUMBER>,
   "type": "gp2",
   "state": "available",
   "volumeId": "vol-053075656150acc49",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 18:54:04.868 +0000 UTC"
  },
  {
   "name": "aksvol5",
   "size":<PHONE_NUMBER>00,
   "type": "sc1",
   "state": "available",
   "volumeId": "vol-0ca0ec01c9df43d6a",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 19:16:36.395 +0000 UTC"
  },
  {
   "name": "aksvol6",
   "size":<PHONE_NUMBER>00,
   "type": "sc1",
   "state": "available",
   "volumeId": "vol-0c23d3de79169dfdd",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 20:33:53.237 +0000 UTC"
  },
  {
   "name": "aksvol6",
   "size":<PHONE_NUMBER>00,
   "type": "sc1",
   "state": "available",
   "volumeId": "vol-0138920bf8f577701",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 20:33:52.848 +0000 UTC"
  },
  {
   "name": "aksvol7",
   "size":<PHONE_NUMBER>00,
   "type": "sc1",
   "state": "available",
   "volumeId": "vol-0f032816fad07911d",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 20:55:25.905 +0000 UTC"
  },
  {
   "name": "aksvol8",
   "size":<PHONE_NUMBER>,
   "type": "io1",
   "state": "available",
   "volumeId": "vol-0f2a279b5f863f07e",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 21:00:53.662 +0000 UTC"
  },
  {
   "name": "aksvol9",
   "size":<PHONE_NUMBER>,
   "type": "gp2",
   "state": "available",
   "volumeId": "vol-0baf8208853c00bc8",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 21:01:18.965 +0000 UTC"
  },
  {
   "name": "aksvol9",
   "size":<PHONE_NUMBER>00,
   "type": "sc1",
   "state": "available",
   "volumeId": "vol-0c60636e633b1a965",
   "availabilityZone": "ap-south-1a",
   "createdAt": "2020-06-23 21:01:32.531 +0000 UTC"
  }
 ]
}

Create a volume in AWS
[POST] http://<IP_ADDRESS>:8089/v1/94b280022d0c4401bcf3b0ea85870519/volumes

Request
{
"name": "aksvol9",
"availabilityZone": "ap-south-1a",
"size": 500,
"type": "sc1",
"backendId": "5ef26d79c5d1b20001308f66",
"iops": 200
}

Response:
{
"name": "aksvol9",
"size":<PHONE_NUMBER>00,
"type": "sc1",
"state": "creating",
"volumeId": "vol-0373a261b5193db39",
"availabilityZone": "ap-south-1a",
"createdAt": "2020-06-23 21:22:57 +0000 UTC"
}
** Note:

**Special notes for your reviewer**:
Closed earlier PR #951

Big changes, plz link the issue and design document

https://github.com/sodafoundation/design-specs/blob/master/specs/multicloud/Block_Storage_Service.md
Issues linked.

PR #951 . Earlier PR

Create Backend

Get Backend

Create Volume

List Volume by BackendId


Remove version: Jackett.Jackett version 0.20.3814

404 - release deleted
Microsoft Reviewers: Open in CodeFlow

URL: https://github.com/Jackett/Jackett/releases/download/v0.20.3814/Jackett.Installer.Windows.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 918)


Interference with PubSubClient

Hello. I am using SimpleButton liblary in my project and it is working verry well.
I use ESP8266 and buttons connected to GPIO expander - MCP23017.
The issue i have is when i try to use PubSubClient  and SimpleButton liblary together.
My code:
`#include <Arduino.h>
#include <ESP8266WiFi.h>  //WIFI liblary
#include <PubSubClient.h> //MQTT liblary
WiFiClient espClient;
PubSubClient client(espClient);
void callback(char* topic, byte* payload, unsigned int length);
const char* ssid = "xxxx"; // Enter your WiFi name
const char* password =  "xxxxx."; // Enter WiFi password
const char* mqttServer = "xxxxx";
const int mqttPort = 1883;
const char* mqttUser = "xxxxx";
const char* mqttPassword = "xxxxx";
const char* clientID = "ESP8266";
#include <SimpleButton.h>  //button listener liblary
using namespace simplebutton;
//Initialize buttons:
Button* Button1 = NULL;
void setup() {
// put your setup code here, to run once:
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println();
pinMode(D3, OUTPUT);
digitalWrite(D3, LOW);
//Connect to WIFI network:
WiFi.begin(ssid, password);
Serial.print("Connecting");
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println();
Serial.print("Connected, IP address: ");
Serial.println(WiFi.localIP());
//MQTT broker:
client.setServer(mqttServer, mqttPort); // set server settings for connection
client.setCallback(callback); // for incoming messages
//Connect to MQTT broker:
while (!client.connected()) {
Serial.println("Connecting to MQTT...");
if (client.connect(clientID, mqttUser, mqttPassword )) {

  Serial.println("connected");

} else {

  Serial.print("failed with state ");
  Serial.print(client.state());
  delay(2000);

}

}
client.subscribe("Subscribe1");
Wire.begin(D2, D1); // begin i2c bus on SDA=D2 and SCL=D1
//Configure the input MCP23017 modules:
GPIOExpander* mcpDI = new MCP23017(0x20);
//Make sure cnnection is sucessfull:

if(mcpDI->connected()){Serial.println("mcpDO connected");  }
//Define connection between output module I/Os and buttons A0=0, A1=1, ......, B0=8, ..., B8=15
Button1 = new ButtonPullupGPIOExpander(mcpDI, 0);
}
void OutputAction(int o){
switch (o) {
case 0:
digitalWrite(D3, LOW);
client.publish("Publish1", "0");
break;
case 1:
digitalWrite(D3, HIGH);
client.publish("Publish1", "1");
break;
}
}
void callback(char* topic, byte* payload, unsigned int length) {
Serial.print("Message arrived in topic: ");
Serial.println(topic);
Serial.print("Message:");
for (int i = 0; i < length; i++) {
Serial.print((char)payload[i]);
}
String thisTopic = topic;
byte thisPayload = *payload;
int ukaz = ((int)thisPayload-48);
if(thisTopic.equals("Subscribe1")){
switch(ukaz){
case 0:
OutputAction(0);
break;
case 1:
OutputAction(1);
break;
}
}
}
void loop() {
// put your main code here, to run repeatedly:
client.loop();
if (!client.connected())
{
Serial.println("MQTT not connected");
client.connect(clientID, mqttUser, mqttPassword );
client.subscribe("Subscribe1");
}
Button1->update();
if(Button1->clicked()){ OutputAction(1); }
if(Button1->holding()){ OutputAction(0); }
}`
The issue i am having is that MQTT gets disconnected when i use Button1->update(); and it never connects again.
If i comment out the Button1->update(); it works well. But of course the button does not respond.
I was hoping someone can share some light on this issue.
I do not have enough experience to find a solution.

I have both: SimpleButton and PubSubClient and I don't observe such issue


Copy command button size on the package page does not match the command line height

4K display running at 150% scale in display properties results in the following:
https://www.nuget.org/packages/Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel/

or on Paket tab:

Happens in Chrome and Chromium based browsers (fine in Edge and Firefox).

@agr, please check if this still repros


ASV launch and config

Time estimate: 4 hrs
Deadline: N/A
Description of task: The toplevel launch file needs to be created. This also includes defining parameters for the current packages. See Vortex-AUV for how to do this 😄

Pretty much done


Add CHSB (SwissBorg Token)

Hello,
It would be great if you could had the CHSB token in the list.
Here is the contract: https://etherscan.io/token/0xba9d4199fab4f26efe3551d490e3821486f135ba
The CHSB is currently 70th on Coinmarketcap: https://coinmarketcap.com/currencies/swissborg/
We're observing more and more volume on Uniswap, so, it would be great to have the token natively in Metamask.
Thank you!

Hi @nremond - thanks for your contribution. Can you change please the address to EIP-55 version, please?

Hi @nremond - thanks for your contribution. Can you change please the address to EIP-55 version, please?

Thank you @xrn.
I rebased my commit with the address in EIP-55

Thank you @xrn.
I rebased my commit with the address in EIP-55


RVM and Bash-it => "Warning! PATH is not properly set up..."

Hi guys, I'm trying to solve a problem I'm getting with RVM and Bash-it.
Here it is:
Warning! PATH is not properly set up, '/home/user/.rvm/gems/ruby-2.2.1/bin' is not at first place,
         usually this is caused by shell initialization files - check them for 'PATH=...' entries,
         it might also help to re-add RVM to your dotfiles: 'rvm get stable --auto-dotfiles',
         to fix temporarily in this shell session run: 'rvm use ruby-2.2.1'.

I found another open issue (from last year...) stating that the problem was related to the node plugin. Unfortunately even if I disable the node plugin I still get the over presented warning.
I know that it could be silenced but before I want to know if there is something wrong with my configuration or if it is still a known and unsolved issue.
Cheers.

Can you share the contents of your $PATH variable?

Here I am, sorry for the lateness of my response.
Sure here it is:
/home/me/bin:/home/me/.rvm/gems/ruby-1.8.7-p302/bin:/home/me/.rvm/gems/ruby-1.8.7-p302@global/bin:/home/me/.rvm/rubies/ruby-1.8.7-p302/bin:/home/me/.rvm/bin:/home/me/.rbenv/bin:/home/me/.pyenv/bin:./node_modules/.bin:/home/me/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin:/opt/nginx/sbin:/home/me/.gem/ruby/2.1.0/bin:/home/me/.bash_it/plugins/available/todo
Btw just for now I've put rvm_silence_path_mismatch_check_flag=1 inside the .rvmc in my home.

I don't know (or use) rvm, but I find it strange that you have several versions of /home/user/.rvm/gems/ruby-x.x.x/bin on your PATH - that looks wrong. Also, the ruby-2.2.1 version that you show in the original error doesn't show up in your PATH at all...
What does your $PATH look like when you are not using Bash-it?

The ruby-2.2.1 doesn't show up because right now I switched to 1.8.7-p302.
Anyway when I'm using a vanilla config the PATH is:
/home/user/.rvm/gems/ruby-1.8.7-p302/bin:/home/user/.rvm/gems/ruby-1.8.7-p302@global/bin:/home/user/.rvm/rubies/ruby-1.8.7-p302/bin:/home/user/.rvm/bin:/home/user/bin:/home/user/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin

OK, so it's just the /home/usr/bin at the beginning of your PATH that's causing the trouble...

Yes so it seems but sincerely I don't know where it get set up by Bash-it :(
To tell the truth I didn't check every single plugin...my bad :(

Can you check the following files to see if that's being added to your $PATH at one point? Check for patterns like

export PATH=...
pathmunge ~/bin

Check the following files:

~/bash_profile or ~/.bashrc
~/profile
$BASH_IT/custom/* - these scripts are executed after all of the plugins have been loaded. It's likely that ~/bin is prepended to the PATH in a file in this folder.

Thank you very much for your support I'll check as soon as I can and let you know.
Thank you again :)

You're welcome - let me know if you find anything...

Ok I've found export PATH= in:
~/.bash_it/lib/helpers.bash # line 375 and 377
~/.bash_it/plugins/available/nvm.plugin.bash: # line 195
pathmunge ~/bin isn't found anywhere.
But you know what, inside of .profile I've found this nice snippet of code:
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

I briefly tried to remove it and open a new terminal and it seems to work ;)
Thank you really a lot and sorry for the bother.

Good to hear that you've found it. To be on the safe side, you might want to change the setting of the path to
PATH="$PATH:$HOME/bin"

This will ensure that ~/bin is on your path, just not at the front.

Sure I got that ;)


Tiles are rendering the wrong positions

Hi, i dont know if this project is still even being maintained, but im having an issue with my project where anytime i place down a tile it doesnt render correctly... ive pratically copy and pasted the demo project so i have no clue why this is happening???
if you could help this would really be appreciated...
if you need to take a look at the code i have a public repo at: https://github.com/nekonesse/Boll-Deluxe.

Update: i've found that the problem is it's seeming to not like when tiles are stacked? i've laid them all out in a straight horizontal line, and it works perfectly.

Update 2: backporting to 1.3 of the parser seems to work perfectly. this definitely has to be an issue with something that was changed in 1.4.


progress bar using php in youtube-dl

is there is any way to get the progress bar for my commend line to php or not ?

What are the expected results? Please provide more details.

what i need is to connect my progress bar html to my youtube-dl result which comes from php
[download]   0.4% of 231.51KiB at  6.10KiB/s ETA 00:30
[download]   1.1% of 231.51KiB at 27.07KiB/s ETA 00:10
[download]   4.0% of 231.51KiB at 19.24KiB/s ETA 00:04
[download]   6.5% of 231.51KiB at 75.06KiB/s ETA 00:03
[download]  13.4% of 231.51KiB at 98.22KiB/s ETA 00:03
[download]  28.7% of 231.51KiB at 81.40KiB/s ETA 00:02
[download]  61.7% of 231.51KiB at 91.56KiB/s ETA 00:01
[download]  86.2% of 231.51KiB at 82.96KiB/s ETA 00:00
[download] 100.0% of 231.51KiB at 73.21KiB/s ETA 00:00
to progress bar

You have to parse the output yourself, we don't offer (yet) a interface for that. Closing as a duplicate of #152.


[Tabs] Small changes for UIAppearance support.

I believe this is enough to ensure that the values set in UIAppearance are not overridden by Tabs' defaults.

Ian and Sean could look at this too.

LGTM.


How can I change user's avatar manually?

django_private_chat2 version: 1.0.2
Django version:3.2.15
Python version:3.8.10
Operating System: manjaro

Description
I wanna to change user's avatar instead of auto avatar, but I'm failed to find the code which making auto acatar.
What I Did
I had tried to find example/static/js/main.js , but I still failed to find the code.

Hello, the user avatar is only included in example application, it's generated here https://github.com/Bearle/django_private_chat2/blob/master/example/frontend/fs-src/Utils.fs#L29
You can write the frontend yourself for the django app, the provided example app is not supposed to be used "as-is" in production.


Add initial test owners for framework post-submit tests

Description
This adds a new TESTOWNERS file to maintain up-to-date ownership info of tests belonging to this repository.
It follows format:
<Test builder name> @<team leader> @<sub-team label>.
For example: Linux analyzer_benchmark @zanderso @tool
This file initially will be used as a reference for flaky bugs assignment, but can be combined with CODEOWNERS in the future if we want to enforce review for different test changes.
Tests
None here, but a pre-submit check will be added to enforce test ownership info.

A friendly ping.

Thanks all for the review and LGTMs!


Accordion component guide examples include all the options

The examples on the component guide for the accordion component contain more information that has been included in the YML file.
For example, if you look at the with data attributes example, and compare the How to call this example section with the part of the YML file that generates it you'll see that the component guide has way more stuff in it than the YML file.
The reason for this appears to be that the option name for the accordion to pass data attributes is called data_attributes, which causes everything that's included in the template to also be displayed in the How to call this example output, not just the things that have been passed.
The solution to this is relatively simple - change data_attributes to something else. Unfortunately this would introduce a breaking change across (four?) applications, so it's quite a lot of effort for relatively little gain.
If we're going to fix this, we should check that there aren't other components that also have this problem.

Rough search for other components that have this resulted in:

search
intervention
intervention
intervention
attachment
accordion
cards
reorderable_list
error_alert
share_links
copy_to_clipboard
copy_to_clipboard
attachment_link
error_summary
details
contextual_guidance
big_number
back_link
print_link


Updates Sep 16

status.txt should be stored in git LFS

I wanted to leave it as a text file, so that people looking at the repo online can still see the list. I changed the script in the next update to reduce the number of changes between versions so hopefully we don't end up with bloated change files.


[CSBindings] Look through non-value types earlier to avoid producing …

…incorrect bindings
Before checking any requirements of the binding type, let's look
through @autoclosure and/or non-variable types if source constraint
requires that, otherwise we'd end up creating bindings for types
which later on might end up causing infinite recursion like dependent
member types in result position of @autoclosure parameter.
Resolves: rdar://problem/38272904

LGTM! SourceKit stress tester over the compatibility suite didn't hit any regressions from this either.

@nathawes  Awesome!


fix(*): update action func to adhere to codegangsta 1.15.0 spec

Fixes #33

@sgoings out of curiosity, what happens if one of the action funcs returns a non-nil error?

From what I could see... we were running log.Fatalf on every error handling case... which would exit early.

yep, we are. just was curious what happens if you return an error instead of exiting cleanly. either's fine with me fwiw

@arschles you're the Go master. What is preferable?

the way we're doing it now works just fine for me. plus it minimizes the changes in this patch


Spaceship typo

Came across this typo when resolving an install issue

Fixed by #148. Waiting for 3.0 release...