[SPRINT] ELAsTiCC - work on TOM Toolkit/Marshal system on CC @ IN2P3

ELAsTiCC - work on TOM Toolkit/Marshal system on CC @ IN2P3
[One sentence description]
Contacts: Gautham, Alex Kim, Johann Cohen-Tanugi
Day/Time: All - focused at APC
Main communication channel: #desc-alerts-topical-team
GitHub repo: https://github.com/LSSTDESC/tom_desc
Goals and deliverable
Make sure streams from all brokers in ELAsTiCC challenge (ALeRCE, AMPEL, ANTARES, Fink, LASAIR, PGB) can be listened to using TOM Toolkit
Save classified alerts to (minimally) disk,  or (ideally) a relational DB
Start working on visualizations/queries to evaluate performance for each broker/classifier combo
Resources and skills needed
Python/SQL
Will need CC account
Detailed description
DESC wants a dashboard for LSST operations to view the alerts from brokers and select high-confidence SNe Ia. There is no infrastructure for this yet. This is the start of us building what is required. We will use off-the-shelf resources as far as possible - TOM Toolkit/Sky Portal/YSE PZ.

There are already TOM packages available for some of the brokers:

ALeRCE: https://github.com/TOMToolkit/tom_base/blob/main/tom_alerts/brokers/alerce.py
ANTARES: https://github.com/TOMToolkit/tom_antares
Fink: https://github.com/TOMToolkit/tom_fink
Lasair: https://github.com/TOMToolkit/tom_base/blob/main/tom_alerts/brokers/lasair.py

Some of them are not syncing data "live". E.g. in Fink, the TOM is only linked to the Fink REST API that exposes processed live data at the end of each night. So just to confirm, we want all brokers to be listened to using TOM, and in real-time?

@JulienPeloton - I don't think it has to be in real-time to all the brokers. We know (as @AlexGKim and @rbiswas4  wrote in the original DESC LONI) that DESC doesn't actually need alerts in real-time and can live with 1 day latency. Certainly there are going to be metrics that measure latency, and the end-of-night processing model of FINK will have an impact there, but again we're not doing this as a competition in the same way and I think a latency number is only useful in as much as it's interpreted as "below DESC requirement."
I'd say the next thing we should focus on if the interface is set is
a) setting up a test broadcast of alerts with your scripts as we discussed today
b) writing some web dashboard to allow us monitor the alerts from each broker after they are stored
The second needs some kind of tutorial on the TOM system and how it saves alerts and how we can access them programmatically from some combination of @AlexGKim @troyraen and you.


[use-stringfield] 🛢 Use StringField everywhere

See https://trello.com/c/jalzcxZE/69-chore-use-stringfield-from-sfdo-template-helpers-instead-of-max-char-limits-in-model-fields
See also https://github.com/SFDO-Tooling/MetaShare/pull/239

@jgerigmeyer I would think so.


Local command execution failed  "Unrecognized field 'addPreviousOutputInEnv' on 'local.CommandInputs'"

What happened?
Running a pulumi up -y -s dev command fails at the local command execution. Error message as follow
Diagnostics:
  command:local:Command (commandResource):
    error: command:local:Command resource 'commandResource': property addPreviousOutputInEnv value {true} has a problem: Unrecognized field 'addPreviousOutputInEnv' on 'local.CommandInputs'

Example
_, err = local.NewCommand(ctx, "commandResource", &local.CommandArgs{
	AddPreviousOutputInEnv: pulumi.Bool(true),
	Create:                 pulumi.String("cat hosts | envsubst > ../py_infra/hosts"),
	Environment: pulumi.StringMap{
		"VOTE_IP":    vote.PrivateIp,
		"RESULT_IP":  result.PrivateIp,
		"WORKER_IP":  worker.PrivateIp,
		"REDIS_IP":   redis.PrivateIp,
		"DB_IP":      db.PrivateIp,
		"BASTION_IP": bastion.PrivateIp,
	},
})
if err != nil {
	return err
}

Output of pulumi about
CLI
Version      3.107.0
Go Version   go1.22.0
Go Compiler  gc

Plugins
NAME  VERSION
go    unknown

Host
OS       ubuntu
Version  22.04
Arch     x86_64

This project is written in go: executable='/usr/local/go/bin/go' version='go version go1.21.3 linux/amd64'

Backend
Name           madhan
URL            file://~
User           root
Organizations
Token type     personal

Pulumi locates its logs in /tmp by default
warning: Failed to get information about the Pulumi program's dependencies: load go.mod: open /home/madhan/git/learn-aws-SAA/lab/lab-01/pulumi/go.mod
/home/madhan/git/learn-aws-SAA/lab/lib/go.mod: no such file or directory
warning: Failed to get information about the current stack: No current stack

Additional context
No response
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Hi @madhank93, could you run pulumi about in the root folder of your Pulumi project? I'd like to know in particular what version of the "command" you're using. If it's not v0.10.0 or v0.11.0, could you upgrade and try again?

Hi @thomas11, Thanks for looking into it. After upgrading the pulumi and command plugin it is working now. Thank you!
CLI
Version      3.116.1
Go Version   go1.22.2
Go Compiler  gc

Plugins
KIND      NAME     VERSION
resource  command  0.11.0
language  go       unknown

Host
OS       ubuntu
Version  22.04
Arch     x86_64

This project is written in go: executable='/usr/local/go/bin/go' version='go version go1.21.3 linux/amd64'

Backend
Name           madhan
URL            file://~
User           root
Organizations
Token type     personal

Dependencies:
NAME                             VERSION
github.com/pulumi/pulumi/sdk/v3  v3.115.2

Pulumi locates its logs in /tmp by default
warning: Failed to get information about the current stack: No current stack

Glad to hear that, @madhank93!


fix: Optimize Select Component for Improved Performance Update index.tsx

What changed? Why?
In this PR, I have optimized the Select component to improve performance, maintainability, and readability without altering its functionality. Below are the changes I implemented:

Changes Made:

Refactored Component Structure:

Extracted repetitive groups (e.g., FruitOptions) into separate functional components for better modularity and reusability.
Made SelectItem a memoized component using React.memo to avoid unnecessary re-renders.

Reduced Redundant Logic:

Simplified the use of classnames where static class names were sufficient.
Ensured props spreading (...props) is efficient and contains only necessary attributes.

Optimized Icon Handling:

Centralized ChevronDownIcon and ChevronUpIcon usage to reduce redundancy by creating reusable logic.

Improved Readability and Maintainability:

Organized the JSX layout to be cleaner and easier to read.
Reduced the overall size of the file by removing redundant comments and logic.

Enhanced Styling Logic:

Ensured that styles are applied through concise CSS classes, promoting CSS reusability.

Preparation for Future Updates:

Since the Select component is marked as a proof-of-concept (PoC) in the comments, the refactoring ensures that any future changes to this component are easier to implement and understand.

Benefits:

Performance Boost: Memoized components and the extracted functional components reduce re-renders and improve runtime efficiency.
Better Maintainability: Modular structure makes the code easier to understand, debug, and extend in the future.
Cleaner Codebase: Removal of redundancy and improved styling logic make the code cleaner and more readable.

Code Example:
Here is a simplified example of the updated structure:
const FruitOptions = () => (
  <SelectPrimitive.Group>
    <SelectPrimitive.Label className="SelectLabel">Fruits</SelectPrimitive.Label>
    <SelectItem value="apple">Apple</SelectItem>
    <SelectItem value="banana">Banana</SelectItem>
    <SelectItem value="blueberry">Blueberry</SelectItem>
    <SelectItem value="grapes">Grapes</SelectItem>
    <SelectItem value="pineapple">Pineapple</SelectItem>
  </SelectPrimitive.Group>
);

Notes to reviewers
I would appreciate your feedback on this refactoring, especially regarding the modular structure and performance improvements.
How has it been tested?

Verified that the Select component functions as expected with no regressions.
Tested the UI rendering to ensure all functionality, including interactions and visual states, remains intact.

🟡 Heimdall Review Status

Requirement
Status
More Info

Reviews

🟡
0/1

Denominator calculation

Show calculation

1 if user is bot
0

1 if user is external
0

From .codeflow.yml

1

Additional review requirements

Show calculation

Max
0

0

From CODEOWNERS

0

Global minimum
0

Max

1

1

1 if commit is unverified
0

Sum
1


feat(InputComponent): show tooltip when hint is cut off

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/valentingavran/anglify/blob/master/CONTRIBUTING.md#commit
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

Does this PR introduce a breaking change?

[ ] Yes
[x] No

Codecov Report

Merging #188 (85d25f1) into develop (5996e3e) will increase coverage by 0.77%.
The diff coverage is 47.82%.

@@             Coverage Diff             @@
##           develop     #188      +/-   ##
===========================================
+ Coverage    55.54%   56.32%   +0.77%
===========================================
  Files           89       90       +1
  Lines         1750     1756       +6
  Branches       204      212       +8
===========================================
+ Hits           972      989      +17
+ Misses         751      725      -26
- Partials        27       42      +15

Impacted Files
Coverage Δ

...lify/src/modules/tooltip/tooltip-settings.token.ts
100.00% <ø> (ø)

libs/anglify/src/modules/input/input.component.ts
58.92% <37.50%> (-3.58%)
:arrow_down:

...s/anglify/src/modules/tooltip/tooltip.directive.ts
27.20% <41.66%> (+19.20%)
:arrow_up:

libs/anglify/src/modules/input/input.module.ts
100.00% <100.00%> (ø)

...glify/src/modules/text-area/text-area.component.ts
53.33% <100.00%> (ø)

...ify/src/modules/text-field/text-field.component.ts
54.83% <100.00%> (ø)

...anglify/src/modules/snackbar/snackbar.component.ts
60.00% <0.00%> (-1.91%)
:arrow_down:

libs/anglify/src/modules/chip/chip.component.ts
62.22% <0.00%> (-1.61%)
:arrow_down:

... and 18 more

Continue to review full report at Codecov.

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

Should be fixed now 👍


Anyway to add observer or reactivity?

I'm trying to show some average $avg (aggregation). Trying to find a way that's just crazy, Only forEach works... It won't be really effective.

+1 seems like reactivity based on certain collections or documents would be pretty powerful.
@arunoda What needs to happen for this to be possible?

Use https://github.com/JcBernack/meteor-reactive-aggregate instead


Added externals files and changed caffe imports

With these changes, all the necessities are there without installing python-protobuf. Model file is downloaded from our Dropbox repo, and caffe_pb2.py is local to the model only.
The only necessary changes were to make the python-protobuf code relative imports. I don't know how this will work long term if we have to update the protobuf code. Especially if caffe switches to protobuf 3.0 , but we can cross that bridge when we get to it.
There is still a step pickling a list of dictionaries - don't know if it is strictly necessary but figured I would leave these changes for another commit. With this it should be possible to do VGGNet the same way, modulo the uploading of the model file to the public github which I or @eickenberg can do at any point
cc @eickenberg @erfannoury

I am not entirely sure I understand the relative import thing.
Why do we need to ship all of python-protobuf? I thought we were only going to ship caffe_pb2.py?
I guess I misunderstood. So caffe_pb2.py is not standalone and depends on python-protobuf? And python-protobuf is difficult to install/volatile?

python-protobuf  isn't a strict requirement. We can go away without including its code in the repository. Since installing python-protobuf is easy. But caffe_pb2.py has to be included in the code; thus removing the dependency on protobuf compiler.

Protobuf files were included because caffe_pb2.py file I got with latest
python protobuf was broken - had to use exact matching version that was
used to generate pb2 file. It seems they are moving fast and breaking
backwards compat.
If we are including the pb2 file I think we need to have a controlled
version of protobuf so that we guarantee all our pb2 files work with
included externals/ version.  Otherwise we need to test against
multiple protobuf versions to ensure that changes in protobuf don't make
pb2 files incompatible. Or require an exact version which may or may not be
the one that is pip installed by default.
Also means we need to make protobuf a hard dependency - having a curated
version in externals/ takes care of dependency problem and version
problem at the same time.
On Mar 10, 2015 4:46 AM, "Erfan Noury"<EMAIL_ADDRESS>wrote:

python-protobuf isn't a strict requirement. We can go away without
including its code in the repository. Since installing python-protobuf is
easy. But caffe_pb2.py has to be included in the code; thus removing the
dependency on protobuf compiler.
—
Reply to this email directly or view it on GitHub
https://github.com/sklearn-theano/sklearn-theano/pull/46#issuecomment-78014711
.

If it becomes annoying to maintain we can remove the dependency later but
this way the whole protobuf/pb2 thing becomes invisible to the user. And
hopefully easier for us to add new pb2 files by only checking against 1
canonical version.
On Mar 10, 2015 8:34 AM, "Kyle Kastner"<EMAIL_ADDRESS>wrote:

Protobuf files were included because caffe_pb2.py file I got with latest
python protobuf was broken - had to use exact matching version that was
used to generate pb2 file. It seems they are moving fast and breaking
backwards compat.
If we are including the pb2 file I think we need to have a controlled
version of protobuf so that we guarantee all our pb2 files work with
included externals/ version.  Otherwise we need to test against
multiple protobuf versions to ensure that changes in protobuf don't make
pb2 files incompatible. Or require an exact version which may or may not be
the one that is pip installed by default.
Also means we need to make protobuf a hard dependency - having a curated
version in externals/ takes care of dependency problem and version
problem at the same time.
On Mar 10, 2015 4:46 AM, "Erfan Noury"<EMAIL_ADDRESS>wrote:

python-protobuf isn't a strict requirement. We can go away without
including its code in the repository. Since installing python-protobuf is
easy. But caffe_pb2.py has to be included in the code; thus removing the
dependency on protobuf compiler.
—
Reply to this email directly or view it on GitHub
https://github.com/sklearn-theano/sklearn-theano/pull/46#issuecomment-78014711
.

So to be clear in response to @eickenberg:
Why do we need to ship all of python-protobuf? I thought we were only going to ship caffe_pb2.py? So caffe_pb2.py is not standalone and depends on python-protobuf?

Yes, caffe_pb2.py depends on python-protobuf
And python-protobuf is difficult to install/volatile?

It is not difficult to install, but I have already run into issues with wrong versions of python-protobuf not working with files compiled with protoc (which is why I got you to email me the one you used!). This means that for new models to be added we would need to verify they work with a particular version of python-protobuf. If we have the version in externals/, then it becomes easy to verify that things work with that version, and we avoid needing to pip install a particular version of python-protobuf.

OK, that makes sense. We will have to watch out for incompatibilities accumulating between the now frozen externals/protobuf and the one in the wild, but at least that way our models will run whatever happens. And that is good for users who just want to use a deep net with python.
I am having difficulties finding file changes in the diff that are not the adding of protobuf, in order to review any code additions. Are there any?

Only changes are in caffemodel.py - basically just removed stuff that
looked for proto file and changed paths to download from Dropbox
On Tue, Mar 10, 2015 at 11:10 AM, eickenberg<EMAIL_ADDRESS>wrote:

OK, that makes sense. We will have to watch out for incompatibilities
accumulating between the now frozen externals/protobuf and the one in the
wild, but at least that way our models will run whatever happens. And that
is good for users who just want to use a deep net with python.
I am having difficulties finding file changes in the diff that are not the
adding of protobuf, in order to review any code additions. Are there any?
—
Reply to this email directly or view it on GitHub
https://github.com/sklearn-theano/sklearn-theano/pull/46#issuecomment-78073990
.

OK, if googlenet transformer/classifier test passes, feel free to merge,
I'm on the phone right now.
On Tue, Mar 10, 2015 at 5:08 PM, Kyle Kastner<EMAIL_ADDRESS>wrote:

Only changes are in caffemodel.py - basically just removed stuff that
looked for proto file and changed paths to download from Dropbox
On Tue, Mar 10, 2015 at 11:10 AM, eickenberg<EMAIL_ADDRESS>wrote:

OK, that makes sense. We will have to watch out for incompatibilities
accumulating between the now frozen externals/protobuf and the one in the
wild, but at least that way our models will run whatever happens. And
that
is good for users who just want to use a deep net with python.
I am having difficulties finding file changes in the diff that are not
the
adding of protobuf, in order to review any code additions. Are there any?
—
Reply to this email directly or view it on GitHub
<
https://github.com/sklearn-theano/sklearn-theano/pull/46#issuecomment-78073990

.

—
Reply to this email directly or view it on GitHub
https://github.com/sklearn-theano/sklearn-theano/pull/46#issuecomment-78086557
.

They pass on a brand new repo. Merging!
On Tue, Mar 10, 2015 at 12:09 PM, eickenberg<EMAIL_ADDRESS>wrote:

OK, if googlenet transformer/classifier test passes, feel free to merge,
I'm on the phone right now.
On Tue, Mar 10, 2015 at 5:08 PM, Kyle Kastner<EMAIL_ADDRESS>wrote:

Only changes are in caffemodel.py - basically just removed stuff that
looked for proto file and changed paths to download from Dropbox
On Tue, Mar 10, 2015 at 11:10 AM, eickenberg<EMAIL_ADDRESS>wrote:

OK, that makes sense. We will have to watch out for incompatibilities
accumulating between the now frozen externals/protobuf and the one in
the
wild, but at least that way our models will run whatever happens. And
that
is good for users who just want to use a deep net with python.
I am having difficulties finding file changes in the diff that are not
the
adding of protobuf, in order to review any code additions. Are there
any?
—
Reply to this email directly or view it on GitHub
<

https://github.com/sklearn-theano/sklearn-theano/pull/46#issuecomment-78073990

.

—
Reply to this email directly or view it on GitHub
<
https://github.com/sklearn-theano/sklearn-theano/pull/46#issuecomment-78086557

.

—
Reply to this email directly or view it on GitHub
https://github.com/sklearn-theano/sklearn-theano/pull/46#issuecomment-78086799
.


Connection between Edge and Thingsboard Docker Version

Description
Good morning,
I have successfully installed Thingsboard Edge on 4GB RAM Raspberry Pi 4 device through the installation instructions on Ubuntu operating system, as explained in the link below:
https://thingsboard.io/docs/user-guide/install/edge/deb-installation/
I then followed the instructions that are described in the following link:
https://thingsboard.io/docs/edge/getting-started/
Essentially, having followed the instructions described, I can now send data from Thingsboard Edge ( which is running inside the Raspberry Pi) to Thingsboard Cloud( https://demo.thingsboard.io/login).
Basically I created a python script that has an infinite loop sending dummy temperature values( from 0 to 100), via MQTT to thingsboard Edge. As you can see from the image below:

On the thingsboard Edge side the correct reception of the data is confirmed:

I then created a Dashboard according to the instructions in one of the links indicated above and successfully receive the information in Thingsboard Cloud:

Meanwhile I installed Thingsboard on Docker Windows 10, according to the instructions given in the following link:
https://thingsboard.io/docs/user-guide/install/windows/
At this moment, I have the following question:
Is it possible for Thingsboard Edge instead of sending data to Thingsboard Cloud, to send data to Thingsboard running on docker?
Thank you
Environment

OS:  Windows 10 64 bit
ThingsBoard: 3.4.4 (Docker Version)
Browser: name and version

@jose-franco-PT
yes, you can do this.
First, you'll need to provision edge entity on your ThingsBoard that is running on docker following this guide:
https://thingsboard.io/docs/edge/provision-edge-on-server/
You did this already for ThingsBoard Cloud and now you should do the same for your ThingsBoard instance.
Once edge is provisioned on your ThingsBoard instance please follow installation guide again https://thingsboard.io/docs/user-guide/install/edge/deb-installation/.
Probably you can skip 1, 2 and 3 steps because your edge is already installed and running fine.
But on the 4th step (https://thingsboard.io/docs/user-guide/install/edge/deb-installation/#step-4-configure-thingsboard-edge) you'll need properly set next variables:

So you'll need to update 4 variables above and in this way you should be able to connect to your ThingsBoard instance.
Here are more details what is CLOUD_RPC_HOST

Good afternoon,
I just checked the instructions you sent me and it is already working.
Thank you very much for your attention!


findspam.py: Nested blockquotes

Many of these spams have been detected only by the domain name heuristic, which could fail if they post with a domain name which doesn't contain terms on the blacklist.  To strengthen the filter, add a rule to identify the conspicuous use of nested blockquotes.
Example: https://metasmoke.erwaysoftware.com/post/50594

This will apparently catch ~150 true positives. I could've sworn we already had something like this, but I guess not. I'll merge it in.


docs: modified auth sol'n name to Auth.js

quick change from (prev. NextAuth.js) to Auth.js
Closes #
✅ Checklist

[ ] I have followed every step in the contributing guide (updated 2022-10-06).
[ ] The PR title follows the convention we established conventional-commit
[ ] I performed a functional test on my final commit

Changelog
[Short description of what has changed]

Screenshots
[Screenshots]
💯

We still use NextAuth.js. @auth.js/next doesn't exist yet.


Removed deployment step

We hit the time limit of travis. @jtpio could build this branch on his machine, it took 2h09.
I wonder what we should do, keep this PR opened forever, merge it and accept that the CI fails, or pass every build as allowed to fail.


Update for 5.0 videojs support

Please update and support videojs 5.0 please.

videojs 5.0 has been released.

Ah, sorry for the late response. I'll take a look this week!
Sent from my iPhone

On Oct 2, 2015, at 2:28 PM, paladox<EMAIL_ADDRESS>wrote:
videojs 5.0 has been released.
―
Reply to this email directly or view it on GitHub.

Seems like the videojs wrapper hasn't changed in videojs 5.0. I just tested the plugin under the new version and it works!


Regression - RayCast2D arrow not drawn correctly

Operating system or device, Godot version
Win 10, Godot 2.1.4-beta
Issue description:
RayCast2D line is drawn correctly, while the arrowhead looks rotated 90°. An example in the following image:

I can't reproduce on latest beta (20170817).

Yes, that's supposed to be fixed. Please try the most recent build: http://download.tuxfamily.org/godotengine/2.1.4/beta/20170817/


ORBAT chart edit mode

An additional ORBAT editing mode based on the the ORBAT chart experiment. See #50 for an initial discussion. Should look like an ORBAT chart but interactive and editable.

An additional ORBAT editing mode based on the the ORBAT chart experiment. See #50 for an initial discussion. Should look like an ORBAT chart but interactive and editable.

Hi, kjellmf. Your work until now is great! However, there is a problem: the ORBAT's Chart edit tool is not working. I don't know if you noticed it yet, but I'll tell you just in case.
Thank you for your work!
Sincerely,
Ez. Salvucci

@EzSalvucci Sorry about that. The chart edit mode button is currently just a placeholder. I have not started on that feature yet.
I've done some work on this before (https://preview--orbat-mapper.netlify.app/chart), but I have not figured out yet the best way to integrate it into the editor. If you have any ideas let me know.
Thank you for the feedback!

I don't have any idea: my programming knowledge is too shallow.

I might have an idea on the way in wich can be done, but may do not understand the finer technical difficulties.
However, i need to know what is the file you used for the ORBAT chart test...
P.S.: now also the grid edit mode as stopped working.

OK, basically my idea is this: any unit with more than 3 subordinate units layers should become a link to a sub-page with those layers, and, inside those pages, any sub-unit has more than 3 sub-subordinate layers should become a link to a sub-sub-page with more command layers, and so on...
Sorry for the ragged explanation... hope will help.

How is going? I may have another idea, but can be superfluous...

Ok. So, do you know the site of http://www.niehorster.org/index.htm?

Thanks for reminding med about that site. It is a great resource! I should add a link to it on the landing page.

How is going? I may have another idea, but can be superfluous...

This is a slowly progressing hobby project. I'm currently reviewing my old ORBAT chart code trying to remember how it works.

Ahhhh! My condolences... When you'll be finished, can you notify me? So my idea doesn't distract you...

Hi, kjellmf! Salvucci's here!
I noticed that you finally implemented the chart edit mode! Great Work!
However, I'm here to bring to your attention a bug in that! Sorry! :-(
The bug is this:

if you create a unit,
then create two subordinate units of that,
and then create a subordinate for ONLY ONE of the twos,
then the sub-subordinate unit will not properly connect and align with the superior.

Probably you already noticed this bug, but I'll send this message just in case.
Thank you for your work and best regards,
E.Salvucci

Ahh! I understand.
Will help if I send you the ORBAT Chart I created with your tool to use as a debug tool?
Moreover, I have some suggestions to help make quality of life improvement to the creation of the ORBAT (even without the chart edit mode)
Thanks again for your work,
E. Salvucci
P.S.: don't feel pressed by my suggestions, you are doing a great job!
P.P.S.: do you have a Patreon?


Create empty sensor module

This adds an empty sensor module. The sensor implements GetReadings but only provides a random integer for a test value.
Testing
Successfully deployed and configured this module on a rover.

Hows it going?

@ethanlook hi


Moved to using hiera for many configuration params

This should make Puppet runs much faster as we're not continually
hitting the REST API. While at it, I also cleaned up a lot of the
PE < 3.7 crap that made those classes so fiendish.
Please do some testing on this prior to merge & release.
Fixes #TRAINTECH-118

+1 for me.  Needs a rebase or upstream merge.

rebased, thanks


Rename master to main

bors try

bors try

bors try-

bors try-

bors try

bors try-

bors try


Add some profiling

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

The bad point with adding profiling is it breaks the indentation... But I didn't find a solution to this. If we just add steps between the code lines, we will not be able to measure the time of code that raises.


SignalR: Error loading hubs. Ensure your hubs reference is correct

Uncaught Error: SignalR: Error loading hubs. Ensure your hubs reference is correct, e.g. .

Thanks a lot !


Replace hard-coded version specification (sub)string with Version.specification(roundedTo:) in more places

#3073 left out a few instances of "// swift-tools-version:\(version < .v5_4 ? "" : " ")\(versionSpecifier)". This PR replaces them with version.specification(roundedTo:)
Motivation:
less repetition in code; more consistent formatting
Modifications:
Changed a few "// swift-tools-version:\(version < .v5_4 ? "" : " ")\(versionSpecifier)" to version.specification(roundedTo:).
There are still a lot of explicitly spelt-out tools version formatting in some test files. I think tests should be explicit and shouldn't rely on the logic in the source files, so I left them unchanged.
Also fixed an unrelated mis-indentation.
Result:
NFC, other than that in ToolsVersionLoader.swift, tools version error messages now drops the patch version in the suggested version if it's 0.

@swift-ci please smoke test

@swift-ci please smoke test

@swift-ci please smoke test


Remove Lib/test/ and Lib/ensurepip from freeze-stdlib

Let's remove Lib/test/ and Lib/ensurepip from freeze-stdlib as the default option.
It will be helpful to reduce frozen library size.
but also we need to add another option to enable it again to allow run test from wasm build

@youknowone How difficult do you think this would be?

This is mostly rust proc-macro work. It will be a sort of easy issue for people who used to write proc-macro code.
Otherwise it might be quite confusing because proc-macro has its own ecosystem a little bit different from common rust code.
I will recommend this issue for someone who want to have experience to edit proc-macro code.
Adding exclude to rustpython_derive::py_freeze! will be a good starting point.


How can I deploy kubeClusterCidr falling into custom vNet?

Is this a request for help?:
request
Is this an ISSUE or FEATURE REQUEST? (choose one):
issue/feature request
What version of acs-engine?:
latest
Orchestrator and version (e.g. Kubernetes, DC/OS, Swarm)
kubernetes
What happened:
I have an existing vnet, where I need to keep services calling backend-service per VPN configured in the same resource group. Here're some waysI tried and failed, Say I have a vnet whose cidr is <IP_ADDRESS>/21, as figured out some counter parts, I have the table

I changed firstConsecutiveStaticIP in input template, set vnetSubnetId properly;
generate json files, edited azuredeploy.json the following two IPs
"kubeServiceCidr"
"kubeDnsServiceIp"
changed kubeClusterCidr
deploy to Azure, set subnet to routetable

The reason why I have to do 2,and 3 is that the backend-VPN configures only for 172.xx as configured in vnet. I.e, If skipped step 2 and 3, kubernetes runs well, yet cannot access the backend service.
Now, with all the above changes, all the certificates are generated for 10.xxx.xx.xx IPs, and failed in complaints that cert is not for 172.xx..xx.xx.
What you expected to happen:
Support custom vnet and kubernetes cluster cidr
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know:

Here is the PR that will help adjust the pod and service networks including the certificates: https://github.com/Azure/acs-engine/pull/546.  I'll ping the team to see if we can get this pushed through.

Closing as #546 was merged.


[Request] add resistance to spells

The 14th level abjuration wizard's spell resistance grants resistance to damage by spells. Some monsters like the archmage also have this same resistance. It would be nice if the resistances could be split in magical and non magical to take this into consideration. Or an overall resistance to spell damage.

It would have to be a special "Spell" resistance, rather than magical (because a magical sword does just as much damage).

Adding resistance (and other damage traits) specifically for each item types - to generalize it entirely - could perhaps be a good addition and cleaner to implement rather than simply against spells.
It would mean the item type would need to be carried forward through the damage calculation methods, possibly removing the need to have each spell item have mgc as a property in prepareDerivedData.

I would add to this that resistance against specific spell schools would also be useful.


fashion_self_expression - Instagram Bridge failed with error 500

Error message: Could not request Instagram.
Query string: action=display&bridge=Instagram&u=fashion_self_expression&media_type=all&format=Atom

Your query seems to be working for me. Is this a permanent issue or does it happen sporadically?
If it's a sporadic issue, it is probably related to #994

Closing because it's a generic server error.


[e2e]: go tag main config-ldflags-assets slsa3

Repo: https://github.com/slsa-framework/example-package/tree/v13.0.30
Run: https://github.com/slsa-framework/example-package/actions/runs/3585312915
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.go.tag.main.config-ldflags-assets.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.go.tag.main.config-ldflags-assets.slsa3.yml
Trigger: push
Branch: v13.0.30
Date: Wed Nov 30 16:55:41 UTC 2022

Closing, this should not have triggered. This was a verifier e2e test


Missing Hamburger in BaseLayout

Missing Hamburger in BaseLayout.astro

hey! We updated to v3 and the Hamburger should be fine! Thanks for opening an issue!


Stdin doesn't lint

Hey, thank you, great project.
I would like to use it with ale (vim) for asynchronous lint, but it seems stdin isn't working as expected.
simple.ts
type Foo = {
  x: string
}

const f: Foo = {
  x: 'bar'
};

Output from ts-standard ./src/simple.ts
ts-standard: Typescript Standard Style! (https://github.com/toddbluhm/ts-standard)
ts-standard: Run `ts-standard --fix` to automatically fix some problems.
  /Users/jm/lint-test/src/simple.ts:1:6: Use an `interface` instead of a `type`. (@typescript-eslint/consistent-type-definitions)
  /Users/jm/lint-test/src/simple.ts:5:7: 'f' is assigned a value but never used. (@typescript-eslint/no-unused-vars)
  /Users/jm/lint-test/src/simple.ts:7:2: Extra semicolon. (@typescript-eslint/semi)

All fine.
But if I do cat ./src/simple.ts | ts-standard --stdin
(node:17421) ExperimentalWarning: Readable[Symbol.asyncIterator] is an experimental feature. This feature could change at any time
ts-standard: Typescript Standard Style! (https://github.com/toddbluhm/ts-standard)
  <text>:1:6: Parsing error: Unexpected token Foo ()

Am I missing something?
macos 10.15.4
node v10.15.1
npm 6.14.7

Thanks for the bug report. This is related to https://github.com/typescript-eslint/typescript-eslint/issues/885
It seems I overlooked implementing the --stdin-filename flag. I have implemented the flag in  https://github.com/toddbluhm/ts-standard/pull/92 and confirmed that --stdin with --stdin-filename works. The CLI now also exits with an error if you try to use --stdin without the --stdin-filename flag.
My setup was as follows:
Folder structure
src/simple.ts
package.json
tsconfig.eslint.json
tsconfig.json

My tsconfig.json and tsconfig.eslint.json files  uses src/**/* for includes.
In package.json I had the following script:
cat ./src/simple.ts | ts-standard --stdin --stdin-filename ./src/simple.ts
I also testing out the --fix flag and confirmed that worked also by using this script:
cat ./src/simple.ts | ts-standard --stdin --stdin-filename ./src/simple.ts --fix | tee ./src/simple.ts
If  you are still running into issues, I can post the full example project and/or provide more detailed specifics.

I am so sorry for the delay on this! 10.0.0 has been released with a fix for this as well as a migration to the official standard org.

@toddbluhm I've found this while trying to configure ALE to use ts-standard rather than standard for typescript files. Is the ts-standard --stdin interface fully compatible with standard counterpart?
Thx and keep up the good work ;)

@lorenzogrv The interface should be fully compatible with the exception that the --stdin-filename flag with the file path needs to also be provided.
The typescript compiler/linter requires the path in order to properly lint the file (it still uses the stdin data for linting and outputs to stdout but the parser underneath requires the file path). I was unable to find a way around this requirement. If you are unable to provide the file path, then it will not work for your use case.
If --stdin is not working as expected, feel free to open a bug report for us to look into 😄 I do not actively use the --stdin flag so it could very well be broken.

@toddbluhm Thanks! Need to dig more, but knowing about --stdin-filename is useful information.
While I have been using JavaScript and standard for years, I'm a beginer within typescript, so will research more before opening a bug report. I'm sure the experimental setup I did for ALE is not correct. Anyway your clues about --stdin fragility may put me in the path to integrate successfully within my beloved vim.
Keep up the good work :+1:


navigate with arrows on column view / open it with just a single click

It would be nice, if you can navigate through the file structure with the arrow keys within the column view.
And in addition it feels wrong in that column view, to double click to open the next folder. I know you can set it in the global settings with an single click. but i would prefer it like in the mac finder.
maybe there should be an settings page for each view, how you would prefere to open the folder (single or double click)
Column View:

single click on a folder should open it directly
navigating with up and down arrow in the column should open the folder directly
selected folder with arrow right should jump into the selected folder
arrow left should jump into the parent folder

Fyi @TyJOrtiz

It would be great to have single click for the column view, and double click for the other views.

This issue should be resolved with #7425


Compilation aborted, too many Error messages.
Heap-Layers/wrappers/wrapper.cpp:
make: *** [SunOS-sunw-sparc] Error 3

I have no access to a Sun machine to debug this - if you can give me a guest account, I will be happy to look into it.

I am sorry to inform that I do not have any machine which can be shared.

Closing since I have no way to debug this issue and Solaris/SPARC is basically dead (http://www.networkworld.com/article/3160176/hardware/game-over-for-solaris-and-sparc.html).


Authoring: breakdown

Organize docs structure,
create placeholders and stubs,
organize navigation

I think it looks quite nice, so i am going to merge it right away so it's possible to start working on specific sections.


Google app rejected

Google has rejected an app of mine for using this library with the reason
"Prompt users to leave a rating and review from within your app with the in-app review API"
I believe it is because I added some code list this.
if (stars > 3) {
rateMyApp.launchStore();
} else {
/* request to send feedback email */
}
Not a bug but a warning.

You may need to pass ignoreNative to false.

I think they have an issue with performing a different action if the rating is not high enough. Here I was trying to filter lower ratings and direct users to a popup dialog to submit a feedback email instead. I could be wrong because google is always vague when reporting issues.

Yes, you're totally right.


Finbar crashes

Environment
macOS 13.6.2
Finbar 1.12.2 (12)
Reproduction

Launch Finbar app
Click "Show Finbar" in the menubar
Finbar crashes

Misc

I have tried with different apps (Chrome, Finder...), it seems that the crashes doesn't relate with the background app.

Crash report
Finbar-2024-01-04-140056.ips.zip

Thank you for the feedback and proving a crash report!
I didn’t manage to reproduce it yet, is it something that happens regularly?

After I reboot my Mac, Finbar stops crashing... So I will close this issue.

Thank you for updating! I will further investigate your report to try and pinpoint the issue. Do let me know if Finbar crashes again. Thanks!


Static Override of Hostname to Instance ID on EC2

This is not a bug.
I wanted to dig into the original intent of why Agent prefers the InstanceID over the hostname of the EC2 host. Is this just to avoid name collisions or is it to better couple the data from the AWS Integration to the Agent's reported data?
This behavior looks to originally have been introduced here: https://github.com/DataDog/datadog-agent/pull/141.
The biggest reason I ask: If we use the DD_HOSTNAME in conjunction with the AWS Integration, could we inadvertently double our node count (from a billing perspective) because the names don't align? All the documentation states that this should not double-bill people, but I am curious if this code is a part of that deduplication.
Thanks!

FYI got my answer in support. Dedup still happens in aliases on the host.


Add base class for permisiion validation on views

This change is

Coverage increased (+0.05%) to 50.0% when pulling 9b205854e1b52ee88c9082b8a21214713f978d16 on annawzz:a258001251842882_refactoring into 01b7379c7b69ee6d20ca60a8931e82a249ffdf68 on openprocurement:a258001251842882_refactoring.


break word for long variable name for coverage table

This will address https://github.com/VEuPathDB/web-monorepo/issues/817
The culprit in the ticket's screenshot was a very long variable name without specific separation in words, fructose/glucose/galactose:HIL-neg: Metabolite. So, if we want to keep all table contents inside the table, then we need to use a css, word-break. Screenshot is attached with this PR.

(update) I didn't like the style for Data column so I made some changes. Here is new one:

Thank you for your review and confirmation, @asizemore 👍


Impossible to get both bias and filtered features (using feature_re)

Not sure what is the best solution here - always return the bias even with feature_re, or add an option?

Can bias be filtered by regex like all other features?

Yes, it should be easy to implement/fix (right now I'm not even sure why it is now always shown, I'll check it out)


TestNSNumber: Disable testNSNumberToBool() that breaks on Darwin.

This still works on Linux so disable it conditionally.

@swift-ci test


Server Crashes Cause Graph Corruption

The Issue
Currently, if the server crashes, it can shutdown without saving the latest graph and chunk updates. This means then that any wires that relied on these graph connections will no longer be connected correctly when the server is started back up.
Potential Fix
A potential fix for this is to switch the simple graph implementation to be being saved every tick, only saving the parts that have been updated since the last save.
Potential Drawbacks
If too many changes are made to graphs every tick, this could have significant TPS performance impacts. However, this kind of situation is unlikely.
However, what might be better is to have multiple BlockGraph implementations, allowing mods that update graphs frequently to choose to save their data only at regular intervals, while allowing mods that update graphs infrequently to save their data after every update, making corruption less likely (#11).

Would it be possible to make sure that the graphs save together with the chunks? Then blocks and graphs never desync unless the crash happens during saving

I've been attempting to do something like this, saving graph chunks and contained graphs when the world chunks unload. But it still doesn't seem to be working. I could probably try and find a precise injection point for most reliable saving, but I'm not sure how easy that would be.
Point-of-Interest saving is done the way I suggested it and it doesn't seem to run into the same desync issues that I'm currently encountering, which is why I suggested doing things this way.


Unable to define enum default value on an input type

Describe the bug
Defining a default value for an enum property on an input type throws the following exception:
SchemaException: Could not parse the native value of input field `{0}.{1}`. - Type: FilterInput

Where FilterInput is:
    public sealed class Filter
    {
        [DefaultValue(OrderByEnum.POPULARITY)]
        public OrderByEnum OrderBy { get; set; }
    }

And OrderByEnum is:
    public enum OrderByEnum
    {
        SORT_INDEX_ASC,
        SORT_INDEX_DESC,
        ALPHABETICAL_ASC,
        ALPHABETICAL_DESC,
        POPULARITY
    }

Expected behavior
That the following schema gets created:
input FilterInput {
  orderBy: OrderByEnum = POPULARITY
}

HC version: 10.4.2

I has same issue with version 10.5.2

I believe I've also had the same issue just on an argument, e.g. not inside an input type.
public string GetSomething(..., SomeEnum argName = SomeEnum.Lol) => { ... };

Feel like I'm running into this again on 12.14.0 @PascalSenn

Without ? to say it's nullable, it works and gives me orderBy: FleetVehiclesOrder! = PLATE_NUMBER_ASC, but that kind of defeats the purpose to require it 😆

This enum is crawled automatically, but also tried to an explicit AddEnumType<FleetVehiclesOrder>() which didn't help


gofmt

Just ran
gofmt -w .

on the project root. That's all.
https://blog.golang.org/go-fmt-your-code

I made this PR with a project going on over at https://github.com/rotblauer/gofmt-att, and it's definitely a work in progress. So if I got something wrong, or this is annoying at all, please file an issue over there and we'll sort it out.

this fell pretty out of date so I just ran it on current master. thanks for the reminder!


Ip geo locator

ip address tracking
from iphack import ip
ip.address("ip")
domain ip address tracking
from iphack import ip
ip.domain("google.com")
my ip address
from iphack import ip
ip.my()
get proxy
from iphack import ip
ip.proxy(False)
get proxy list for api

from iphack import ip
ip.proxy(True)
['<IP_ADDRESS>:10882', '<IP_ADDRESS>:8080', '<IP_ADDRESS>:8080']

search IP by word or domain behind CF

from iphack import *
iphack.search.p("google.com")
<IP_ADDRESS> / <IP_ADDRESS> / <IP_ADDRESS> / <IP_ADDRESS> / <IP_ADDRESS> / <IP_ADDRESS> / <IP_ADDRESS> / <IP_ADDRESS> / <IP_ADDRESS> / <IP_ADDRESS>


github action to publish to Tanzu Net

Add a github action to our release pipeline to publish Octant releases to Tanzu Net (https://network.pivotal.io/)

https://github.com/vmware-tanzu/octant/blob/master/.goreleaser.yml @wwitzel3 Would this mean adding a publishing step to tanzu net.


Extend collection with possibility to save sortOrder

It would be great if user could save the last selected sort option for his collection. Now we are using predefined sortOrder option from collection to initialy sort our list.
How to test:

User navigate to page where we are using some list
He is changing his sort option by clicking on another column header
He goes to other page
He returns to previous page and he can see again predefined sorting option

+1
I have a some of customer with this feature request.

I will have look at it


11-fontsdf converted to dear imgui

I used fixed window size ( as it was already in the example).
https://github.com/bkaradzic/bgfx/compare/master...attilaz:11-fontsdf-dearimgui?expand=1#diff-4ade17483b9348cc0f0e68523527517fR135
As I see for example 09-hdr uses: https://github.com/bkaradzic/bgfx/blob/master/examples/09-hdr/hdr.cpp#L307 this computation for window size, but this doesn't seem to handle window size changes well. Or I am doing something wrong?

ImGui::Begin window size parameter is 'size_on_first_use'.  ImGui::SetNextWindowSize can be used to set window size (similar to SetNextWindowPos ).

It would be good that all these settings windows have the same look/position. It's pretty inconsistent now.


What is a "large" TypeScript implementation?

How big (in terms of unminified JavaScript output) is a "large" typescript application you know of?

Just to kick off the thread, there's TFS at 150k LOC http://blogs.msdn.com/b/bharry/archive/2012/10/24/typescript-a-real-world-story-of-adoption-in-tfs.aspx

I work on a project that spits out about ~80k raw LOC unminified JS. Our unminified output (including JSDoc-style comments) is about 7.2MB of JavaScript.
A quick count of semicolons across  *.ts files yields about 42k results. This includes a few definition files, however, so it's a really rough count.
We were early adopters of TypeScript, starting with 0.8.2, and while there have been some bumps along with the way with tooling, it's been incredibly successful for us so far. Today we're moving from 1.3 to 1.4 and everybody on the team just loves working with TS.

We announced a little while back that Microsoft Azure's portal is made with TypeScript.  It's currently over a million lines of code (actually, last I heard, it's close to 1.2 million or so): http://blogs.msdn.com/b/typescript/archive/2014/10/22/typescript-and-the-road-to-2-0.aspx

We have around 40K lines of code in an angular app. 3.2 meg download minified.

Monaco is >200K of TypeScript - here you can see @jrieken discuss the team's experience in using the language.

Looks like I'm working on the second largest TypeScript project on the planet !

Woah, great to hear you're getting some good use out of TypeScript! Would you care to shed some light on your project @paulmarshall?

How do I find out how many LoC my visual studio web project has?

@Griffork put it on github ;) https://github.com/github/linguist

Also it's 'closed source' so I can't.

For an approximate count:

Find in all files
Enable regex
Add filter *.ts
Search for \n

Should print Matching lines: xxx    Matching files: xxx    Total files searched: xxx

@NoelAbrahams

It's taken a year to reply, sorry for the delay :-)

Sorry for the delay.
@NoelAbrahams For an approximate count, "Matching lines: 278463    Matching files: 1271    Total files searched: 1273"
@DanielRosenwasser I'm part of a team developing a Lifetime Savings (Pensions to you and me) Administration application for use in the UK.
So, looks like we're the second biggest TypeScript application on the planet (#1 being Azure's portal)?

VS Code has about 300,000 lines. The race is on!


Set up a merge job to keep openjdk-jdk8u dev branch in sync with master

This is a task that would be repeated for any new cloned forests we bring in later as well.

What's left to do here?  Apart from make the job run clean :-)

I haven't been keeping a close eye on this.  So I assume there's a job that merges hg master --> github master and a separate job that brings in the relevant changes to github dev?

I think this is stable now.  @karianna are you happy to close the issue?


A model to add punctuation marks to arabic text

The idea here is to use a machine learning model to automatically add punctuation marks to Arabic text. Those marks are as follows:
!
،
.
?
؛
:
- -
-
/

I do not have a dataset for this. However, I think Tashkela dataset will be a good fit since it contains a large body of Arabic text that is mostly punctuated.
Any thoughts?

I worked on a project idea similar to this one. For more details about it, you can see this article
https://medium.com/@ZarahShibli/what-comes-after-the-word-61c5adc9b8a0

@ZaraahShibli Tell us if you are interested in adding the model here.

Sure, I'm interested.

@ZaraahShibli our process is a little bit lengthy, so if you need any help let me know.


Missing parent: GO:2000488 positive regulation of brassinosteroid biosynthetic pro

GO term ID and label for which you request a new superclass
GO:2000488 positive regulation of brassinosteroid biosynthetic process

New superclass (parent) suggested
GO:0090031 positive regulation of steroid hormone biosynthetic process

Reference(s), if appropriate
GO already contains the following is-a relation:
GO:0010423 negative regulation of brassinosteroid biosynthetic process
is_a
GO:0090032 negative regulation of steroid hormone biosynthetic process

Thanks for the feedback.
The term "hormone" is problematic in GO, as one chemical can be an hormone in certain organism but not in others, or under certain conditions, see some discussion here #19624
To resolve the issue you bring up we can obsolete the unnecessary grouping class:

GO:0120178 steroid hormone biosynthetic process
Thanks, Pascale

@krchristie Isn't it what we had decided?
Direct annotations to steroid metabolic process and regulation children are here:
https://docs.google.com/spreadsheets/d/1Mh0jAaxyp_W9bpZhfc-ilA0ym-CRXednZyISIeeNE7Q/edit#gid=0
Thanks, Pascale


Handling of Vendor Specific Attributes (VSA)

Hi,
As I see, there is no built-in functionality to add additional vendor specific attributes.
I create one by myself, so what about to accept this little improvement.
To add new VSA type we can use this example.
use radius::core::vsa::VSA;
use radius::core::rfc2865::add_vsa_attribute;
...
// 4874 - Vendor Juniper ID
// 65 - vsa type
// 5 is tag number. i.e. in the world of Juniper Subscriber Manager router receives ERX-Service-Activate:5
// value is some test string here
let new_vsa = VSA::new(4874, 65, 5, "bar(1000,5441)");
add_vsa_attribute(&mut p, &new_vsa);

Is there anything preventing this from being merged? Would love an in-library way to handle VSAs more cleanly than AVP::encode_bytes.

@ivanovuri I appreciate your contribution. I'm sorry for late response.
I'll publish new version which includes this change and let you know that once it has finished.

@ivanovuri @aiguy110 I published v0.4.0 which includes this change. Thank you for your contribution!


Store temporal coverage as date type in discovery

Temporal coverage in catalog is of type string. In order to search records based on temporal coverage date range, the string type date values need to be converted to date type and stored in discovery collection.

This is no more an issue as the temporal coverage date value now stored in the catalog ad date type value - so no conversion is needed. So closing this issue.


Code cleanup

Hey!
Thought I would do some more code cleanup and reorganizing, also updated the help text and some other small things like adding aliases to the subcommands, like ls for list and rm for remove.
I also changed from clap to structopt as it makes the commandline options a lot more structured.
/Isak

These changes make a number of things a lot cleaner! Awesome work. Do you mind removing my email from the README? Otherwise looks good to go.

Let's get this merged in first before your other PR to avoid conflicts, I see you branched off this feature branch.

There are a number of feature branches that have been merged in but still exist - makes the git tree a bit messy, might be worth deleting them.

These changes make a number of things a lot cleaner! Awesome work. Do you mind removing my email from the README? Otherwise looks good to go.

It comes from the authors section of the cargo.toml file, I can remove it from there. When updating the the README I usually just do this via vim with this command read ! target/debug/pier --help, so whatever is in the help will end up in the README.
Yeah the git history is a bit messy I'll rebase it and resubmit it. I have a lot to learn about that still but it's a nice challenge.

Ah okay. I don't know that's it's necessary to have an email in the CLI, so happy that we remove it from there too. Let's do it on this branch so it doesn't get merged into README.
Re. the git history, no rebase necessary - referring to the remote branches on your fork - for now I'm just hiding your remote when working with git tree, but not serious :)

I was playing around with rebasing it and was able to get it completely clean, but I still have to do a merge once doing the pull request to the master. I think if we would want it cleaner you would have to do the rebas on the master branch and then force push it. But I guess that's a pretty minor thing though and can be done later.
Removed the email adress as well.

Great! Happy to merge this now. (re. the rebase, I think you're misunderstanding me, don't worry about it :) )


Add --share option to generate a shareable link after file upload.

I like this idea a lot, I think it can be very useful. Oftentimes when uploading a file we want to share with another person.
Things that came into my mind when thinking about this:

Should this sharable link be public by default?
Do we provide another option if the user wants to share with only one person, e.g. --share --email<EMAIL_ADDRESS>Should we treat restrictions on link such as only people in a organisation can have access to the file with the link

I too agree on this idea and believe that the permissions should be organizational by default to avoid confidentiality accidents. The value for the share option could be an e-mail, as cited, but could also be a level,  for example,--share public.
Additionally, here is the API documentation for sharing files.


Matrix renderer: Outline tracing and support for inkspread

For matrix-style symbologies we render by drawing and filling squares for each dark module.
To properly support inkspread without leaving imaging artifacts it is necessary to trace the outline of clusters of dark modules to render the minimal set of complex shapes, contracting the edges by a given fixed amount.
After which we could look at merging the linear and matrix renderers.

Rendering from a set of paths, accounting for inkspread, tested and working: https://github.com/bwipp/postscriptbarcode/blob/6c1df8f6a325103085cfe6e8197c07fa30469f97/trace.ps
Now need to write the tracer...

Support added to 2016-07-19. https://github.com/bwipp/postscriptbarcode/releases/tag/2016-07-19


Add callback-based logging stream

Allows the user of the library to specify log functions, allowing the library to hook into other logging solutions.

Thanks, @ColonelThirtyTwo!
This is a needed feature, a good way to add it and a good implementation. But I planned to add the feature in a different way though. TDLib already has the ability to hook fatal errors using td_set_log_fatal_error_callback and this new feature effectively extends that ability. I planned to allow log lines hooking in the same way, allowing the callback to receive all log messages. Then the same behavior would be achieved by setting the callback and setting the log stream to logStreamEmpty.

Changing td_set_log_fatal_error_callback would break API+ABI compatibility. IDK how much that matters to you though.

@ColonelThirtyTwo This is the reason, why the full replacement is planned only in TDLib 2.0, and for some time there should be two callback functions.

If that is the case, are you willing to merge this?

The feature will be added but in a different way, such as only one callback function is required for both log hooking and handling of fatal errors. The proposed changes will not be merged by that reason, but they are good by themselves and they can be used in the meanwhile.

So what is the ETA for tdlib 2 then? If it's going to be any significant length of time, you may as well merge this so we can use it. It's not like its going to be an issue moving forward since V2 is not going to be backwards-compatible anyway.

There is no ETA for future releases, but definitely 2.0 will not be released soon.
It's a good point that 2.0 will be anyway backward-incompatible, but if this pull request is merged, then there will be a point in time, when three callback functions, two of which are deprecated, exist. It is better to skip this state and have only one new callback function and one deprecated fatal error callback function.

Hii

Hii

Finally, the function td_set_log_message_callback was added to TDLib 1.7.5, which allows to intercept all TDLib log entries. Combined with logStreamEmpty it allows to completely redirect TDLib's log anywhere. This addition supersedes the proposed changes.


[Adaptive] Fix Number Input

Number input treat any inputs as float, if pass the following validation, the number input will convert the integer number to float, "22" -> "22.0" with length 4 which is nonintuitive.
{
                "$kind": "Microsoft.NumberInput",
                "property": "user.age",
                "alwaysPrompt": true,
                "prompt": "What is your age?",
                "invalidPrompt": "Please input a number.",
                "validations": [
                  "length(string(this.value)) == 2"
                ]
},

Pull Request Test Coverage Report for Build 97742

0 of 0   changed or added relevant lines in 0 files are covered.
26 unchanged lines in 18 files lost coverage.
Overall coverage decreased (-0.3%) to 78.043%

Files with Coverage Reduction
New Missed Lines
%

/libraries/Microsoft.Bot.Builder/Adapters/TestFlow.cs
1
79.67%

/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/EmitEvent.cs
1
65.22%

/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/IfCondition.cs
1
86.67%

/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/SwitchCondition.cs
1
89.19%

/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/DialogManager.cs
1
81.03%

/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Generators/ActivityChecker.cs
1
86.62%

/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Testing/TestActions/AssertReplyActivity.cs
1
80.77%

/libraries/Microsoft.Bot.Builder.Dialogs/ObjectPath.cs
1
86.03%

/libraries/Microsoft.Bot.Builder.Dialogs/Prompts/OAuthPrompt.cs
1
56.4%

/libraries/Microsoft.Bot.Builder/Inspection/InspectionMiddleware.cs
1
78.89%

Totals

Change from base Build 97727:
-0.3%

Covered Lines:
18934

Relevant Lines:
24261

💛  - Coveralls

:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.AI.Luis.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.AI.QnA.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.ApplicationInsights.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Azure.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Dialogs.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Integration.ApplicationInsights.Core.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Integration.AspNet.Core.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.TemplateManager.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Builder.Testing.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Configuration.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Connector.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Schema.dll compared against version 4.6.3
:heavy_check_mark: No Binary Compatibility issues for Microsoft.Bot.Streaming.dll compared against version 4.6.3


PyPI redirect loop for nonexistent (internal) package with hash

Bug description
Names were changed from the real name to "internal" due to my employer's policy.
I have a requirements file like below:
(venv) $ cat requirements.txt
internal==3.0.0 \
    --hash=sha256:abeb67f050c0f898333a1f6242c68ce4935863abab0f79edebb0e9611b01c8ff

Auditing this "internal" package on PyPI fails with an error:
(venv) $ pip-audit -s pypi -r requirements.txt  --index-url 'https://pypi.org/simple/'
ERROR:pip_audit._cli:PyPI is not redirecting properly
ERROR:pip_audit._cli:Tip: your network may be blocking this service. Try another service with `-s SERVICE`

I can successfully audit this non-public package using OSV:
(venv) $ pip-audit -s osv -r requirements.txt  --index-url 'https://pypi.org/simple/' --verbose
DEBUG:pip_audit._cli:parsed arguments: Namespace(local=False, requirements=[<_io.TextIOWrapper name='requirements.txt' mode='r' encoding='UTF-8'>], project_path=None, format=<OutputFormatChoice.Columns: 'columns'>, vulnerability_service=<VulnerabilityServiceChoice.Osv: 'osv'>, dry_run=False, strict=False, desc=<VulnerabilityDescriptionChoice.Auto: 'auto'>, cache_dir=None, progress_spinner=<ProgressSpinnerChoice.On: 'on'>, timeout=15, paths=[], verbose=True, fix=False, require_hashes=False, index_url='https://pypi.org/simple/', extra_index_urls=[], skip_editable=False)
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.osv.dev:443
DEBUG:urllib3.connectionpool:https://api.osv.dev:443 "POST /v1/query HTTP/1.1" 200 2
No known vulnerabilities found

Version 2.1.1 of pip-audit gave a traceback:
(venv) $ pip-audit -s pypi -r requirements.txt  --index-url 'https://pypi.org/simple/' --verbose
Traceback (most recent call last):
  File "/redacted/venv/bin/pip-audit", line 8, in <module>
    sys.exit(audit())
  File "/redacted/venv/lib/python3.9/site-packages/pip_audit/_cli.py", line 357, in audit
    for (spec, vulns) in auditor.audit(source):
  File "/redacted/venv/lib/python3.9/site-packages/pip_audit/_audit.py", line 66, in audit
    for dep, vulns in self._service.query_all(specs):
  File "/redacted/venv/lib/python3.9/site-packages/pip_audit/_service/interface.py", line 143, in query_all
    yield self.query(spec)
  File "/redacted/venv/lib/python3.9/site-packages/pip_audit/_service/pypi.py", line 57, in query
    response: requests.Response = self.session.get(url=url, timeout=self.timeout)
  File "/redacted/venv/lib/python3.9/site-packages/requests/sessions.py", line 555, in get
    return self.request('GET', url, **kwargs)
  File "/redacted/venv/lib/python3.9/site-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/redacted/venv/lib/python3.9/site-packages/requests/sessions.py", line 677, in send
    history = [resp for resp in gen]
  File "/redacted/venv/lib/python3.9/site-packages/requests/sessions.py", line 677, in <listcomp>
    history = [resp for resp in gen]
  File "/redacted/venv/lib/python3.9/site-packages/requests/sessions.py", line 166, in resolve_redirects
    raise TooManyRedirects('Exceeded {} redirects.'.format(self.max_redirects), response=resp)
requests.exceptions.TooManyRedirects: Exceeded 30 redirects.

Changing the name to "internaldne" instead of "internal" gives the expected result (a message stating the package cannot be found):
(venv) $ pip-audit -s pypi -r requirements.txt  --index-url 'https://pypi.org/simple/' --verbose
DEBUG:pip_audit._cli:parsed arguments: Namespace(local=False, requirements=[<_io.TextIOWrapper name='requirements.txt' mode='r' encoding='UTF-8'>], project_path=None, format=<OutputFormatChoice.Columns: 'columns'>, vulnerability_service=<VulnerabilityServiceChoice.Pypi: 'pypi'>, dry_run=False, strict=False, desc=<VulnerabilityDescriptionChoice.Auto: 'auto'>, cache_dir=None, progress_spinner=<ProgressSpinnerChoice.On: 'on'>, timeout=15, paths=[], verbose=True, fix=False, require_hashes=False, index_url='https://pypi.org/simple/', extra_index_urls=[], skip_editable=False)
DEBUG:cachecontrol.controller:Looking up "https://pypi.org/pypi/internaldne/3.0.0/json" in the cache
DEBUG:cachecontrol.controller:No cache entry available
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): pypi.org:443
DEBUG:urllib3.connectionpool:https://pypi.org:443 "GET /pypi/internaldne/3.0.0/json HTTP/1.1" 404 24
DEBUG:cachecontrol.controller:Status code 404 not in (200, 203, 300, 301, 308)
DEBUG:pip_audit._service.pypi:Dependency not found on PyPI and could not be audited: internaldne (3.0.0)
No known vulnerabilities found
Name       Skip Reason
---------- -------------------------------------------------------------------------
internaldne Dependency not found on PyPI and could not be audited: internaldne (3.0.0)

Changing the hash to a random value does not change the result. Keeping the name as "internal", but completely removing the hash in the requirements file, does make everything work:
(venv) $ pip-audit -s pypi -r requirements.txt  --index-url 'https://pypi.org/simple/' --verbose
DEBUG:pip_audit._cli:parsed arguments: Namespace(local=False, requirements=[<_io.TextIOWrapper name='requirements.txt' mode='r' encoding='UTF-8'>], project_path=None, format=<OutputFormatChoice.Columns: 'columns'>, vulnerability_service=<VulnerabilityServiceChoice.Pypi: 'pypi'>, dry_run=False, strict=False, desc=<VulnerabilityDescriptionChoice.Auto: 'auto'>, cache_dir=None, progress_spinner=<ProgressSpinnerChoice.On: 'on'>, timeout=15, paths=[], verbose=True, fix=False, require_hashes=False, index_url='https://pypi.org/simple/', extra_index_urls=[], skip_editable=False)
DEBUG:cachecontrol.controller:Looking up "https://pypi.org/simple//internal" in the cache
DEBUG:cachecontrol.controller:No cache entry available
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): pypi.org:443
DEBUG:urllib3.connectionpool:https://pypi.org:443 "GET /simple//internal HTTP/1.1" 404 13
DEBUG:cachecontrol.controller:Status code 404 not in (200, 203, 300, 301, 308)
DEBUG:pip_audit._dependency_source.resolvelib.resolvelib:Could not find project "internal" on any of the supplied index URLs: ['https://pypi.org/simple/']
No known vulnerabilities found
Name    Skip Reason
------- ------------------------------------------------------------------------------------------------
internal Could not find project "internal" on any of the supplied index URLs: ['https://pypi.org/simple/']

Auditing the "internal" package with a hash, but adding --verbose, shows pip-audit strips a trailing slash from the URL, and PyPI then redirects to the same URL with the trailing slash in a loop:
(venv) $ pip-audit -s pypi -r requirements.txt  --index-url 'https://pypi.org/simple/' --verbose
DEBUG:pip_audit._cli:parsed arguments: Namespace(local=False, requirements=[<_io.TextIOWrapper name='requirements.txt' mode='r' encoding='UTF-8'>], project_path=None, format=<OutputFormatChoice.Columns: 'columns'>, vulnerability_service=<VulnerabilityServiceChoice.Pypi: 'pypi'>, dry_run=False, strict=False, desc=<VulnerabilityDescriptionChoice.Auto: 'auto'>, cache_dir=None, progress_spinner=<ProgressSpinnerChoice.On: 'on'>, timeout=15, paths=[], verbose=True, fix=False, require_hashes=False, index_url='https://pypi.org/simple/', extra_index_urls=[], skip_editable=False)
DEBUG:cachecontrol.controller:Looking up "https://pypi.org/pypi/internal/3.0.0/json" in the cache
DEBUG:cachecontrol.controller:Returning cached permanent redirect response (ignoring date and etag information)
DEBUG:cachecontrol.controller:Looking up "https://pypi.org/pypi/internal/3.0.0/json/" in the cache
DEBUG:cachecontrol.controller:Returning cached permanent redirect response (ignoring date and etag information)
DEBUG:cachecontrol.controller:Looking up "https://pypi.org/pypi/internal/3.0.0/json" in the cache
DEBUG:cachecontrol.controller:Returning cached permanent redirect response (ignoring date and etag information)
DEBUG:cachecontrol.controller:Looking up "https://pypi.org/pypi/internal/3.0.0/json/" in the cache
DEBUG:cachecontrol.controller:Returning cached permanent redirect response (ignoring date and etag information)
DEBUG:cachecontrol.controller:Looking up "https://pypi.org/pypi/internal/3.0.0/json" in the cache
DEBUG:cachecontrol.controller:Returning cached permanent redirect response (ignoring date and etag information)
# And so on, until the TooManyRedirects exception is raised

Reproduction steps
Run pip-audit against the PyPI service. The requirements file should contain a package name and hash that is installed locally, but is not available on PyPI.
Expected behavior
Pip-audit reports that the package cannot be found, and continues auditing other packages.
Platform information

OS name and version: Red Hat Enterprise Linux 8.5
pip-audit version (pip-audit -V): 2.1.1 (gives traceback) and 2.3.3 (gives TooManyRedirects error)
Python version (python -V or python3 -V): 3.9.7
pip version (pip -V or pip3 -V): pip 21.3.1

Additional context
My employer has an internal PyPI mirror, but this package isn't available there (only used by our team) and it gives the same behavior - TooManyRedirects.

Thanks for the report!
That's odd -- the redirect loop there looks like another potential bug in PyPI, similar to the 6-10-22 incident.
To clarify: is there a package named $internal that's actually hosted/squatted on PyPI? Or is it completely internal?

Ah yes, forgot to add above - there's no squatting as far as I can tell, running below all give the same result:
$ curl 'https://pypi.org/pypi/internal/3.0.0/json'
{"message": "Not Found"}
(venv) $ curl 'https://pypi.org/pypi/internaldne/3.0.0/json'
{"message": "Not Found"}
(venv) $ curl 'https://pypi.org/simple/internal/'
404 Not Found
(venv) $ curl 'https://pypi.org/simple/internaldne/'
404 Not Found

Gotcha, thanks. Looking at the log, I'm wondering if this is a case of a stale cache, preserving bad redirects from that incident.
Could you try blowing away your cache and seeing if it works?

Hah, that fixed it! I thought it would be using a fresh cache since I had uninstalled and reinstalled pip-audit to check the older 2.1.1 version, but I see in the --help output it reuses pip's cache folder. Thanks for the debugging!

No problem! I'm glad it was a simple fix.
(Also, thank you for the kind words, and enjoy your PTO!)


removed asEffect and asLayoutEffect from docs because it no longer exists

@laurakalbag @mattpocock Do we want to mark this as deprecated/"removed since" in the docs for historical purposes, or remove them outright?

I think removing those is fine - they probably weren't used all that often anyway and we didn't get any complaints (yet) about those being removed.


Shortcut .+ and .* regex matchers

[ ] I added CHANGELOG entry for this change.
[x] Change is not relevant to the end user.

.* and .+ are commonly used in Grafana when querying Prometheus.
For .*, it will match empty so it fetches all values and exclude values that dont match .*: !m.Matches(val). But from https://prometheus.io/docs/concepts/data_model/#metric-names-and-labels, .* should match all the allowed label values so I think we can shortcut the posting group to a match all but doesn't have any keys. This saves the time of calling LabelValues and matching strings.
For .+, it doesn't match empty string. So it will fetch all values of the label name and add all values that matches .+. Value itself should be non empty in TSDB so .+ should match all. Then we can exclude the matching part. This saves the time of matching strings.
Changes
Verification
Tests should still pass. Will add benchmark update.

i checked the behaviour briefly in prometheus by adding a couple unittests to TestPostingsForMatchers in prometheus/tsdb/querier_test.go:
	app := h.Appender(context.Background())
	app.Append(0, labels.FromStrings("n", "1"), 0, 0)
	app.Append(0, labels.FromStrings("n", "1", "i", "a"), 0, 0)
	app.Append(0, labels.FromStrings("n", "1", "i", "b"), 0, 0)
	app.Append(0, labels.FromStrings("n", "2"), 0, 0)
	app.Append(0, labels.FromStrings("n", "2.5"), 0, 0)
	require.NoError(t, app.Commit())

passes these tests:
		{
			matchers: []*labels.Matcher{labels.MustNewMatcher(labels.MatchRegexp, "i", ".+")},
			exp: []labels.Labels{
				labels.FromStrings("n", "1", "i", "a"),
				labels.FromStrings("n", "1", "i", "b"),
			},
		},
		{
			matchers: []*labels.Matcher{labels.MustNewMatcher(labels.MatchEqual, "i", "")},
			exp: []labels.Labels{
				labels.FromStrings("n", "1"),
				labels.FromStrings("n", "2"),
				labels.FromStrings("n", "2.5"),
			},
		},
		{
			matchers: []*labels.Matcher{labels.MustNewMatcher(labels.MatchNotEqual, "i", "")},
			exp: []labels.Labels{
				labels.FromStrings("n", "1", "i", "a"),
				labels.FromStrings("n", "1", "i", "b"),
			},
		},
		{
			matchers: []*labels.Matcher{labels.MustNewMatcher(labels.MatchRegexp, "i", ".*")},
			exp: []labels.Labels{
				labels.FromStrings("n", "1"),
				labels.FromStrings("n", "2"),
				labels.FromStrings("n", "2.5"),
				labels.FromStrings("n", "1", "i", "a"),
				labels.FromStrings("n", "1", "i", "b"),
			},
		},

So the logic seems sound

I think this breaks compatibility. See prometheus/prometheus#7859

in PromQL it makes a difference when computing labels for absent for example but in tsdb it makes no difference iiuc.

I see just found that label value can have any Unicode char so it can contain new line.
I am not sure who really uses new line as part of the label value but yeah it is not safe anyway.

I am wondering if we should allow this behavior under a feature flag.
If your label value doesn't have new line, then you can opt in turn on the optimization.

I will close this pr for now. I think it is better to have the change in upstream Prometheus first


New version v1.1.0

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

Closed by PR https://github.com/conda-forge/psy-simple-feedstock/pull/2


Add Docker container image that is also compatible with Singularity

This PR adds a Dockerfile that creates a container with the necessary Conda environments and dependencies to run RoseTTaFold. The container doesn't include databases, the databases need to be mounted into the container at run time.
The container image requires credentials to the Commons Conda repo to install pyrosetta, this are passed at build time using build arguments.
docker build  --build-arg ROSETTACOMMONS_CONDA_USERNAME=***** --build-arg ROSETTACOMMONS_CONDA_PASSWORD=******  -t rosettafold:main-latest .
The azure-pipeline file can be used to configure a build pipeline in Azure for building the image.
example of how to run the container
# ROSETTAFOLDDB_PATH points to a folder with the databases untar'ed (bfd, pdb100_2021Mar03, UniRef30_2020_06)
export ROSETTAFOLDDB_PATH=/home/jcastellanos/RosettaFoldDBs

 docker run -it --gpus=all -v $ROSETTAFOLDDB_PATH/bfd:/RoseTTaFold/bfd -v $ROSETTAFOLDDB_PATH/pdb100_2021Mar03:/RoseTTaFold/pdb100_2021Mar03 -v  $ROSETTAFOLDDB_PATH/UniRef30_2020_06:/RoseTTaFold/UniRef30_2020_06 -v $(pwd):$(pwd) -w $(pwd) rosettafold:main-latest run_pyrosetta_ver.sh input.fa .

The container can also be run using singularity, in this example the image is pulled from a private registry in Azure.
 singularity run  --nv -B $ROSETTAFOLDDB_PATH/bfd:/RoseTTaFold/bfd -B  $ROSETTAFOLDDB_PATH/pdb100_2021Mar03:/RoseTTaFold/pdb100_2021Mar03 -B $ROSETTAFOLDDB_PATH/UniRef30_2020_06:/RoseTTaFold/UniRef30_2020_06 docker://private_registry.azurecr.io/rosettafold:main-latest run_pyrosetta_ver.sh input.fa .

We have a dockerfile and even API for running rosettafold.
https://github.com/BasedLabs/NoLabs?tab=readme-ov-file#9-rosettafold-docker-api

@JaktensTid this repo is obsolete. Check the UW-IPD RosettaFold2


Expand Abbreviation is not working using "TAB"

Hello,
This has been resolved with sublime text dev build 3117 or latest (at the time of writing). https://www.sublimetext.com/3dev

doesn't seem to be working in 3118


Update Fuse Logo

What it solves
Resolves #
Update Fuse Branding
How this PR fixes it
How to test it
Analytics changes
Screenshots

Can you review @t0mcr8se

Please open the PR to fuse-stg branch


Proposal example to move file loading to RuleLoader

Add a PR title
Describe what changed in this PR at a high level.
Issue
Add a link to the issue here.  Consider using
closing keywords
if the this PR isn't for a story (stories will be closed through different means).
Checklist

[ ] I have added tests to cover my changes
[ ] I have added logging where useful (with appropriate log level)
[ ] I have added JavaDocs where required
[ ] I have updated the documentation accordingly

Note: You may remove items that are not applicable

I'm more inclined to keep file loading in their RuleEngines themselves as to separate the rule type, while keeping RuleLoader generic and only for loading the rules they are given via parameters.

I'm more inclined to keep file loading in their RuleEngines themselves as to separate the rule type, while keeping RuleLoader generic and only for loading the rules they are given via parameters.

I agree. I think we need more separation between the engines to be able to instantiate and call them separately. Aside from that, I like the idea of adding a loadDefinition method and converting the RuleEngine into a singleton for consistency and testing

We took what we needed from here and went down a different road.


Add support to externalize events into a Spring Message MessageChannel

Spring's Message and MessageChannel are key to the Spring Framework 4 websocket support and to Spring Integration, which in turn supports dozens of different eventing protocols including MQTT, (S)FTP(S), TCP/IP, Apache Pulsar, file systems, RSS/ATOM, Hazelcast, Debezium, Apache Cassandra, Spring Batch, Apache Camel (and all of its assorted integrations!), RSocket, STOMP, HTTP, Syslog, streams, XMPP, ZeroMQ, Apache Zookeeper, and a million others besides.
This PR introduces a new module whose only hard and unique dependency is the Spring Framework messaging module but that is realistically designed to be used in the context of a Spring Integration or Spring Framework websocket application.
I've added docs (though, to be honest I'm not sure if there's more I could've done), written a test, etc.
Thanks in advance for this amazing project.

Polished and merged. Thanks for the contribution! 🙇


How to use result of RunningCommand in JSON.loads  ?

Im converting an old Python 2 app to Python 3
It loads JSON via sh commands, which has stopped working.
I understand from the docs that methods like json.loads won't work with an instance of RunningCommand even though its string like.
However, I can't appear to get a string value that does work!
This is the original code that did work.
aws = sh.aws
......
data = aws.s3api("list-objects", bucket=s3url.bucket, prefix=s3url.path, max_keys=1)
data.wait()
items = json.loads(data)

But that now throws TypeError: the JSON object must be str, bytes or bytearray, not RunningCommand
So I have attempted to use both bytes and str but nothing appears to work...
Convert to string:
....
data.wait()
jsonStr = str(data)
print (type(jsonStr))
print (jsonStr)
items = json.loads(jsonStr)

Outputs
<class 'str'>
{
    "IsTruncated": true,
    "Marker": "",
    "Contents": [
        {
            "Key": "a/path/to/object/",
            "LastModified": "2021-10-06T10:45:45+00:00",
            "ETag": "\"g41d8gd98f10b204g9800998gcf8527e\"",
            "Size": 100,
            "StorageClass": "STANDARD"
        }
    ],
    "Name": "bucket-name",
    "Prefix": "a/path/to/object/",
    "MaxKeys": 1,
    "EncodingType": "url"
}

Traceback (most recent call last):
.....
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Use stdout bytes:
....
jsonBytes = data.stdout
print (type(jsonBytes))
print (jsonBytes)
items = json.loads(jsonBytes)

Outputs
<class 'bytes'>
b'\x1b[?1h\x1b=\r{\x1b[m\n    "IsTruncated": true,\x1b[m\n    "Marker": "",\x1b[m\n    "Contents": [\x1b[m\n        {\x1b[m\n            "Key": "a/path/to/object//",\x1b[m\n            "LastModified": "2021-10-06T10:45:45+00:00",\x1b[m\n            "ETag": "\\"g41d8gd98f10b204g9800998gcf8527e\\"",\x1b[m\n            "Size": 100,\x1b[m\n            "StorageClass": "STANDARD",\x1b[m\n      }\x1b[m\n    ],\x1b[m\n    "Name": "idetailaid-demo",\x1b[m\n    "Prefix": "a/path/to/object//",\x1b[m\n    "MaxKeys": 1,\x1b[m\n    "EncodingType": "url"\x1b[m\n}\x1b[m\n\r\x1b[K\x1b[?1l\x1b>'

Traceback (most recent call last):
.....
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Any help much appreciated!

The "bytes" version above looks suspicious... you have a bunch of escape sequences in the beginning of your json that appear to be used for visual formatting. I bet the aws command is adding those because it thinks that it is printing to a terminal. You can change this behavior by adding _tty_out=False to your sh command, or there might be another option on the aws command for disabling pretty printing.

Legend.  That fixed it.  You were correct, looks like the AWS CLI puts off load of ASCII Esc codes in there for formatting on the terminal.


mmul triage for @shyrma

This PR is a hotfix/triage for matmul with non-equal ranks of operands.
Required by @shyrma

Thanks a lot !


feat: support account collections for instructions

Summary
Superseedes #81 (which includes further description)
FIXES: #78
This builds on top of the related PR by @ricardocr987 and adapts mainly how items of account
collections are named.
Instead of just upper-casing them to avoid name clashes the name now is prefixed with the
collection name and suffixed with the account item. This makes them easy to discover on top of
avoiding name clashes.
Sample Completion
The below shows clearly that the account item names help discover accounts by collection easily.

Gu @ricardocr987 . Just making sure this didn't go unnoticed by accident.
Would like to get this merged so others can use this feature as well.
Please LMK if the changes I made are acceptable.


KV-Cache initialization with ExpandableTensor

Implement KV-Cache using the new ExpandableTensor
Note: By default the preallocated size will be the smallest power of 2 that is greater than the initial size.

in the build failure I see that: keys = ExpandableTensor( is causing a graph break.

did we determine if (for the uncompiled case) this is actually faster and by how much?

looks like we've found a solution that would enable this to compile now:
https://github.com/pytorch/pytorch/pull/105308


bind to port ranges

Similar to https://github.com/envoyproxy/envoy/issues/1411 we have a need to be able to specify port range valid for binding.  Something like "bind to some port between 1000-2000 for [various traffic steering reasons]
Unless anyone objects I'd suggest we do the ugly-but-working method of changing our current "best effort bind to this address" to "really best effort try a couple of ports in the specified range"

Does you think it make sense to include as part of this a DB of some sort tracking what addresses are already in use by the envoy instance, so that it doesn't waste time colliding with addresses it's already bound?  Or will this code be executed often enough in a context where the port namespace is shared with other processes that the extra complexity won't be worth it?

I think the latter is likely enough that the extra complexity is probably not worth it.  Plus it can't hurt to start simple - we can always enhance later :-)


Refactor topo.py:class Edge(object)

I really don't like the laundry list of parameters, especially the ones we added later on (enable_ecn, enable_red, use_hfsc, ...).   It looks really really bad, though it's explicit.   Also, maintaining that constructor is error prone!
A cleaner implementation would be to add a kwargs object to the constructor, and use something like __getattr__.  The downside is bad readability---someone browsing the code would have no idea what options to pass.  I think it's not a big deal, as we can document it.
Any thoughts?

Someone browsing the code would have a good idea if this were documented properly.  That's the easiest sane way to do this.

I think the right way to do it would be to simply augment the existing Topo classes to allow specification of:

default Host, Switch and Link classes or constructors (note: we need to create a Link class)
default parameters for same
optionally per-node/per-link classes and parameters

This could be "simplified" further by currying parameters into the constructors, although I don't know if that's actually better.
I have been thinking about this for a while and can create a sample implementation.


Modified code to reach cyclo metric complexity to 16

Once this PR merge will change the cyclo value to 16 in
https://github.com/ServiceComb/go-chassis/blob/master/scripts/travis/goCycloChecker.sh#L1

Coverage decreased (-0.2%) to 63.949% when pulling d6eedee2eda0a8d642013f6936d4567442563e63 on savitaashture:cycloChanges into f7aad55058a9b2cf1c41d306cb90f04356c73bbb on ServiceComb:master.