Performance improvement

Based on the benchmarks done here
http://stackoverflow.com/questions/20277982/fastest-pairwise-distance-metric-in-python.
Using  scipy.spatial.distance.pdist vs sklearn.metrics.pairwise_distances could help in improving the computation for computing euclidean distance distance. Need to test it out.

I don't think it matters one way or the other, sklearn distance is pretty fast already.
The time spent computing distances is always vastly smaller than the time spending with everything else.
Unless you found a case where the above isn't true, it isn't worth the effort.
Thanks : )


Dev Server Configuration

We must configure the hetzner dev server to provide the functionality and tooling to enable high quality release cycles.  The following items should be completed:

[x] Disable root login
[x] Create non-root user
[x] add users for team
[x] ufw - default deny all incoming
[x] ufw - enable port 22 incoming
[x] install docker enginer
[x] install docker compose
[ ] install self-hosted github action server
[ ] purge old unused origin branches
[ ] add master branch
[x] Add github action to push production images to docker hub repo
[x] Create docker-compose manifest that uses versioned images
[x] Add deployment pipeline that pushes new images to dev server upon github action execution
[x] Consider networking setup (could use ssh tunnelling initially)
[x] Create hasura image which contains migrations instead of using volume mounts - more portable, robust and reproducible solution

Stage 1 dev server configuration complete


Clean up span error reporting and add a bunch of integration tests

The goal here was to get more consistent about error spans. IO-1783 asked for a counter for success/failure rates and the OpenTracing semantic conventions call for an error=true tag on spans that didn't succeed.
While getting that set up, I wanted to make it easier to get right when writing integrations, so I tried to centralize it into the metrics and tracing observer respectively. That made it clear that we weren't calling finish() with proper exc_info in several of the observers.
Sooo, I fixed things up and took a crack at #54 and wrote a bunch of integration tests for the instrumentation libraries to ensure that we're doing it right from now on. I also found a couple of other bugs in the process, but they're a bit gnarly so they're just ticketed up as #99 and #100 for now.
Note: the Cassandra integration tests aren't running on Travis right now. AFAICT that's because the Cassandra service doesn't install/run right on the Trusty image we're using for Travis. That's a bummer, but at least the tests skip properly.

💅

this is awesome, thanks for improving the integration testing so much! :fish:

:haircut_man: cool, cassandra's working now and i split across lines to make things cleaner in travis.yml (i'd love to dedupe that with puppet if anyone's got suggestions) thanks for looking!

🐟


Path seperator handling in monaco 1.x applies to all configurations [Notification with SNOW]

I did an integration with SNOW in DEV environment and it was working fine.
I had to change the user/password because of the promotion of the code to PRD, and integration with SNOW PRD and got the following error:
2021-02-12T16:31:05.0922898Z 2021-02-12 16:31:05 DEBUG 		Validating config projects\newenvironment\management-zone\management-zone.json
2021-02-12T16:31:05.0923783Z 2021-02-12 16:31:05 DEBUG 		Validating config projects\newenvironment\application\application.json
2021-02-12T16:31:05.0924826Z 2021-02-12 16:31:05 DEBUG 		Validating config projects\newenvironment\alerting-profile\alerting-profile.json
2021-02-12T16:31:05.0927485Z 2021-02-12 16:31:05 DEBUG 		Validating config projects\newenvironment\synthetic-monitor\synthetic-monitor.json
2021-02-12T16:31:05.0933337Z 2021-02-12 16:31:05 DEBUG 		Validating config projects\newenvironment\notification\notification-snow.json
2021-02-12T16:31:05.0939265Z 2021-02-12 16:31:05 ERROR Validation of Group failed with error projects\newenvironment\notification\notification-snow.json is not a valid json! Error: invalid character ''' in string escape code
The new password was the following string: "xZGHrmj+5#j/'SV<"
When changed back to the old password (snow), it started to work again.
It looks there is an issue when using some weird characters in the password and monaco. I can confirm the new password works without issues when manually entered.

is that password defined in the in the config json directly or in a yaml?
Are you running monaco on windows?
I assume this is cased by monaco's current handling of path seperators in yamls.
Replacing the / in you password with an \ and resulting in \'  -> an escaped ' or "invalid character ' in string escape code"
If you can confirm this, this bug should be fixed by a planned improvement/limiting what monaco tries to handle as a path

The password is set-up in the yaml file and yes, monaco in windows.

following on this topic, but now related to a app detection rule, I've got similar error when using the URL "www.start.it/home". In my view it looks the same error as before, but related to app-detection-rule instead of notification.
2021-02-15T08:07:38.6496436Z 2021-02-15 08:07:38 DEBUG 		Validating config projects\newenvironment\auto-tag\auto-tag-on-tag.json
2021-02-15T08:07:38.6500787Z 2021-02-15 08:07:38 DEBUG 		Validating config projects\newenvironment\app-detection-rule\rule.json
2021-02-15T08:07:38.6504933Z 2021-02-15 08:07:38 ERROR Validation of Sandbox failed with error projects\newenvironment\app-detection-rule\rule.json is not a valid json! Error: invalid character 'h' in string escape code

with version 2.0 no more string replacement will be done on this level


Make it easy to get to the primary descriptor in the UI

Is your feature request related to a problem? Please describe.
If you're exploring at a multi-file workflow, you probably want to start with the main/primary descriptor. At least I would. But there is no indication on the files tab which is the primary descriptor.
Describe the solution you'd like
Non-exclusive options:

Have something on the Files tab, also non-exclusive

Start on the primary descriptor when navigating to the files the first time
Have some icon next to the primary descriptor in the descriptor dropdown
Have an action that takes you to the primary descriptor.

On the Info tab the Workflow path value could be a link to the primary descriptor in the files tab (we would need to add the descriptor to the url to support this)
Navigate to file from DAG (really a stretch goal).

Describe alternatives you've considered
Leave it as is.
Additional context
For example, see this workflow.
┆Issue is synchronized with this Jira Story
┆Fix Versions: Dockstore 1.14
┆Issue Number: DOCK-1689
┆Sprint: 103 - Arroyo Seco
┆Issue Type: Story

Navigation to primary descriptor works.
The primary badge is not visible for longish path & descriptor names, but is visible for shorter names.
See https://qa.dockstore.org/workflows/github.com/DataBiosphere/topmed-workflows/UM_variant_caller_wdl:1.32.0?tab=files  as an example where it’s not visible. I will create a followup ticket for that.


billing scenario for VDC

Description
we want to add a complete scenario for user billing while using the VDC
Implementation
30 usd for 1 month > 1500 TFT

PLAN_PRICE (calculated from github)

prepaid wallet >= PLAN_PRICE

BASE_CAPACITY = 2 weeks  (?? confirm)

- capacity pool full of resources (100%)  BASE_CAPACITY before expiration

with prepaid wallet
	1- transfer 50% of plan price to provisioning wallet
	provisioning wallet = 0.5 * PLAN_PRICE

with provisioning wallet:
	2-deploy products for a period of (BASE_CAPACITY)  (consider it empty)
	3- extend capacity pools when they capacity < 50%  of BASE_CAPACITY

when deploying addon:
	ADDON_PRICE (calculated from github)
	- transfer (ADDON_PRICE / 2) from prepaid to provisioning

with prepaid wallet:
	HOURLY_AMOUNT = 0
	HOURLY_AMOUNT += (PLAN_PRICE) / (24 * 30)
	HOURLY_AMOUNT += (ADDONS_PRICE) / (24 * 30)

	- transfer HOURLY_AMOUNT from prepaid to provisioning every hour

Related to
https://github.com/threefoldtech/home/issues/949

can't be verified until pricing is done

can't be verified until pricing is done


Cross talk

I am not sure if I am applying the cross talk coefficients that I have generated correctly.
I am using a co60 analysis tree with the CrossTalk script, and then with the GriffinCTFix script. When I ReadCalFile and then WriteToRoot, it is definitely part of the total cal file for the analysis.root file.
However, I am not seeing any difference in the peak widths between the cal files with and without ct coefficients. Do I need to set something to read the ct coefficients? I know there is SetCrossTalk, but I am not sure how to use this.
I am using grsisort version <IP_ADDRESS>.

However, I am not seeing any difference in the peak widths between the cal files with and without ct coefficients.

Can you show this?
Is this looking at singles? It makes a much larger difference in addback then it does in singles.

There is also a flag that gets printed out that tells you whether you are applying the cross-talk coefficients or not...what does that flag say?

Yeah, so I went through it and don't have much to show because the overlap of the addback spectra are identical (indicating my ct coefficients are not being applied).
I have set --is-correcting-cross-talk, when making the analysistree files. I have also tried not setting it.
When I make my matrices from the analysistree with cross talk set to 1, the matrices show cross talk is not being corrected. I have tried using something like "grif->FixLowGainCrossTalk()" in my script . This didn't set it to 1 either.
So I am not totally sure how to preserve the cross talk flag being 1 from the analysistree to the matrices.
Do I need to do anything with the low gain addback setting?

in your script put TGRSIOptions::AnalysisOptions()->SetCorrectCrossTalk(true);
You can check to see if it is correcting it using TGRSIOptions::AnalysisOptions()->IsCorrectingCrossTalk();
How are you making matrix files? Proof?

I'm using grsisort  mostly, but will make the switch to proof.
I'll spend a bit more time on my cross talk issue later in the week and get back to this thread soon. Thanks.

I'm using grsisort mostly, but will make the switch to proof.
grsiproof is part of grsisort. If you are writing your own script to sort the analysis tree, then your code has no way of knowing to load the cross talk coefficients unless it is explicitly put in. Odds are that none of the sorting options are being used, as their is no reason to load them. This means that your addback window, type of addback, build window, etc., are just being set to the default. This is what I meant when I asked what the code says about doing the cross talk corrections when you use your script. If it says nothing, it isn't reading it.
If you were to use something like grsiproof, then it would work. Try drawing from the analysis tree using GetEnergy() and it should work. The other option is to explicitly tell your script to read the options from the root file.

So when we use grsiproof we obtain the ct corrected spectra (shown in red). We haven't created a fully working selector for grsiproof so I'm just comparing the singles.
When our non-grsiproof script (LeanMatrices) is used, there is no correction made (even though I am telling it to with TGRSIOptions). Is there something more that grsiproof uses that I may not have considered?

 Can you show the part of the script you are using in an attempt to apply it?

Sorry.... this is wrong. We compared one spectrum with the non-linearity correction to one without.
However, when grsiproof is used, and the cross talk flag is true on the input file, then the cross talk flag is set to true on the output file. This is not the case for the non-selector script.
scripts.zip
I have included the scripts and the ct cal file.
The changes we made are located at line 85 for the kLeanMatrices.cxx and line 109 for LeanMatrixSelector.C to have the tgrsioption to set the crosstalk to true (not sure if that is an appropriate place).
Maybe the ct correction is being applied via the selector script, but our ct coefficients are not correct? Are these values in the .cal file reasonable?

You missed my point. In the selector you do not have to set cross talk if it's set that way in the analysis tree already. The selector constructs and reads the options properly from the analysis tree, which you do not do in your script. I asked if you could print out what your "LeanMatrices" script thinks is going on with the cross talk flag. Right now you are guessing that it is set to true, no? At which point do you have your code telling you otherwise?
Using this script, the options are never constructed. Under the line auto *file = new TFile(argv[1]);
You would need to add TGRSIOptions::Get()->ReadFromFile(file);
Furthermore, you will not see a very large effect from the cross talk corrections in gamma-ray singles. If you see a peak in singles, it's unlikely that the gamma ray has scattered to another crystal, so the large majority of cross talk is caused by independent gamma rays striking neighbouring detectors (rare). It's addback where cross talk is important. gE singles is not the palce to look to see if this is working or not. You will see this if you look at any of my previous collaboration meeting talks on this subject. These are online. This is also true for the magnitude of these corrections.

Maybe the ct correction is being applied via the selector script, but our ct coefficients are not correct?

I'm not sure I that I understand this. Did you, or did you not see that the selector worked?

So I tried with addback, and it still looked uncorrected. I generated a new ct-coefficient.cal file and tried that.
Using the selector now with new ct-coefficients and in addback, I have a noticeable improvement in addback resolution.

Red is the ct-corrected (it also has pile up rejection so the high energy looks better too). I haven't gone through a clover by clover case yet, but I think this is progress?

Yep, this looks pretty good. A small low energy skew is expected as well.

Thanks for your responses and patience. I'll close this for now assuming no further problems I face.


fzf-vim Tags broken behaviour

Category

[ ] fzf binary
[ ] fzf-tmux script
[ ] Key bindings
[ ] Completion
[ ] Vim
[x] Neovim
[ ] Etc.

OS

[x] Linux
[ ] Mac OS X
[ ] Windows
[ ] Windows Subsystem for Linux
[ ] Etc.

Shell

[ ] bash
[x] zsh
[ ] fish

After update I got this issue:

When I start to type, input line disappears and I land on the first matching tag. When I 'backspace', input line is back, but tags in fzf buffer are scrambled and redrawn when I go up with <c-k>.
Normal behaviour is this:

Any clue why it's happening? I can't reproduce locally.

I have the same problem with :Tags on my mac. Strange that only :Tags command misbehaves.

I use enew layout in neovim. If I change it to new, then there is no problem BUT only if I use :Tags in the window with no vertical splits. If I open a vertical split  and use :Tags in the right vertical split, then problem is still present.

I still can't reproduce even with let g:fzf_layout = { 'window': 'enew' }.
Can you check if you still have the issue with this minimal configuration?
nvim -Nu <(curl https://gist.githubusercontent.com/junegunn/6936bf79fedd3a079aeb1dd2f3c81ef5/raw/vimrc)

If I add let g:fzf_layout = { 'window': 'enew' } to your minimal config, then issue is present. As I can see, default layout is not affected.

Confirmed that the problem is caused by the way fzf handles tab characters. fzf has to recalculate the width of each line after trimming it.
diff --git a/src/terminal.go b/src/terminal.go
index d06f752..081f715 100644
--- a/src/terminal.go
+++ b/src/terminal.go
@@ -847,6 +847,7 @@ func (t *Terminal) printHighlighted(result *Result, attr tui.Attr, col1 tui.Colo
 				offsets[idx].offset[1] = util.Min32(offset.offset[1], int32(maxWidth))
 			}
 		}
+		displayWidth = t.displayWidthWithLimit(text, 0, displayWidth)
 	}

 	var index int32

@junegunn thanks. Waiting for fzf 0.16.3.


[US] Edit projects

Estimated story points: 5
Description

As a user I want to edit projects.

Acceptance criteria

If the changed values are valid the project is updated with the new values. The new values are shown in the project overview. The data is synced with connected peers.
If the changed values are invalid an error is shown and the project is not updated. The old values are shown in the project overview and no data is synced.

Closed by https://github.com/reform-org/reform/pull/90

time: 8h


Examination of Small crystal seed shows wrong High Alch value

Describe the bug
It shows that the HA value is 6000, while you can't alch it.
To Reproduce
Steps to reproduce the behavior:

Complete The Eyes of Glouphrie
Train magic up to 55
Buy a nature rune and 5 fire runes
Try to alch the seed
It says "You can't do that to elven crystal!"

Expected behavior
I expected to find a new money making method, because you can get more with the drop trick.
Screenshots
https://cdn.discordapp.com/attachments/290559371656822784/508611720722382848/unknown.png
Environment (please complete the following information):

Windows 7
RuneLite version: 1.4.24
Launcher version: couldn't find it

But it's high alch value is still it's high alch value even if you can't alch it, we should HA for all items


implement get audit-log for data-range

As an Auditor, I want to see all actions taken within a specific date-range
AC:

human-readable representation is taken into account

PR: https://github.com/finleap-connect/monoskope/pull/76


Won't start on Ubuntu 22.10

Hello, unfortunately the Appimage won't start on Ubuntu 22.10. The terminal output is
(ESP-Flasher:23177): GLib-GIO-ERROR **: 16:20:19.396: Settings schema 'org.gnome.settings-daemon.plugins.xsettings' does not contain a key named 'antialiasing'
Trace/Breakpoint ausgelöst (Speicherabzug geschrieben)

Can this be fixed? From what i googled, this has something to do with Wayland.

Currently no solution, since Github Actions has no runners supporting Ubuntu 22.10

Closing since Ubuntu 22.10 is out of support.


Secret reporting endpoint

What's the problem this feature will solve?
As part of our ongoing collaboration to find exposed secrets in PyPI packages, we are working on a scanning pipeline that automatically scans newly released packages. In order to report our findings, we will need an endpoint we can call, with an agreed-upon schema.
Describe the solution you'd like
Schema
Ideally, the endpoint’s payload would be on a per artifact basis, allowing us to include metadata about the artifact alongside the list of secrets that were found. Here is a possible schema for the payload.
{
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "title": "Artifact scanning report",
    "description": "The detail of all the findings for a given artifact",
    "type": "object",
    "required": [
        "release",
        "scan_info",
        "scan_results"
    ],
    "properties": {
        "release": {
            "type": "object",
            "required": [
                "title",
                "package_name",
                "version"
            ],
            "properties": {
                "title": {
                    "type": "string",
                    "examples": [
                        "ggshield 1.0.2"
                    ]
                },
                "package_name": {
                    "type": "string",
                    "examples": [
                        "ggshield"
                    ]
                },
                "version": {
                    "type": "string",
                    "examples": [
                        "1.0.2"
                    ]
                }
            }
        },
        "scan_info": {
            "type": "object",
            "required": [
                "scanner_version",
                "scanned_at"
            ],
            "properties": {
                "scanner_version": {
                    "type": "string",
                    "examples": [
                        "2.99.0"
                    ]
                },
                "scanned_at": {
                    "type": "date-time",
                    "examples": [
                        "2023-11-16T17:10:25Z"
                    ]
                }
            }
        },
        "scan_results": {
            "type": "array",
            "items": {
                "type": "object",
                "required": [
                    "artifact",
                    "secrets"
                ],
                "properties": {
                    "artifact": {
                        "type": "object",
                        "required": [
                            "name",
                            "sha256_digest"
                        ],
                        "properties": {
                            "name": {
                                "type": "string",
                                "examples": [
                                    "ggshield-1.0.2.zip"
                                ]
                            },
                            "sha256_digest": {
                                "type": "string",
                                "examples": [
                                    "13550350a8681c84c861aac2e5b440161c2b33a3e4f302ac680ca5b686de48de"
                                ]
                            }
                        }
                    },
                    "secrets": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "required": [
                                "detector_name",
                                "detector_display_name",
                                "company_name",
                                "filepath",
                                "matches",
                                "validity_status"
                            ],
                            "properties": {
                                "detector_name": {
                                    "type": "string",
                                    "examples": [
                                        "google_aiza"
                                    ]
                                },
                                "detector_display_name": {
                                    "type": "string",
                                    "examples": [
                                        "Google API Key"
                                    ]
                                },
                                "company_name": {
                                    "type": "string",
                                    "examples": [
                                        "Google"
                                    ]
                                },
                                "documentation_url": {
                                    "type": "uri",
                                    "examples": [
                                        "https://docs.gg.com/google_aiza"
                                    ]
                                },
                                "filepath": {
                                    "type": "string",
                                    "examples": [
                                        "/ggshield/connect/google.py"
                                    ]
                                },
                                "matches": {
                                    "type": "array",
                                    "items": {
                                        "type": "object",
                                        "required": [
                                            "match_name",
                                            "index_start",
                                            "index_end"
                                        ],
                                        "properties": {
                                            "match_name": {
                                                "type": "string",
                                                "examples": [
                                                    "apikey"
                                                ]
                                            },
                                            "index_start": {
                                                "type": "integer",
                                                "examples": [
                                                    12
                                                ]
                                            },
                                            "index_end": {
                                                "type": "integer",
                                                "examples": [
                                                    32
                                                ]
                                            }
                                        }
                                    }
                                },
                                "validity_status": {
                                    "type": "string",
                                    "enum": [
                                        "NO_CHECKER",
                                        "FAILED_TO_CHECK",
                                        "VALID",
                                        "INVALID"
                                    ],
                                    "examples": [
                                        "VALID"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        }
    },
    "examples": [
        {
            "release": {
                "title": "ggshield 1.0.2",
                "package_name": "ggshield",
                "version": "1.0.2"
            },
            "scan_info": {
                "scanner_version": "2.99.0",
                "scanned_at": "2023-11-16T17:10:25Z"
            },
            "scan_results": [
                {
                    "artifact": {
                        "name": "ggshield-1.0.2.zip",
                        "sha256_digest": "13550350a8681c84c861aac2e5b440161c2b33a3e4f302ac680ca5b686de48de"
                    },
                    "secrets": [
                        {
                            "detector_name": "google_aiza",
                            "detector_display_name": "Google API Key",
                            "company_name": "Google",
                            "documentation_url": "https://docs.gg.com/google_aiza",
                            "filepath": "/ggshield/connect/google.py",
                            "matches": [
                                {
                                    "match_name": "apikey",
                                    "index_start": 12,
                                    "index_end": 32
                                }
                            ],
                            "validity_status": "VALID"
                        }
                    ]
                }
            ]
        }
    ]
}

Response
We do not expect the endpoint to return any data, we just need to be able to distinguish between a successful call and one that fails: standard status codes should be more than enough.
API versioning
We have no strong requirement on this point, and will be fine with whichever solution you choose for the versioning of the schema.
Call volume and rate limiting
Since we are planning to call the endpoint once per artifact in which we find secrets, the worst case would be that we find secrets in every single artifact. In that case, our volume of calls would be directly proportional to the number of releases. We consequently don’t expect our volume of calls to be such as to restricted by rate limiting.
Authentication
This endpoint should not be publicly available. A possible approach would be to use both authentication via a secret (ideally just an API key) and an IP allowlist, to guarantee that only known entities have access to the endpoint.
Remediation
In the case of prolonged downtime of the endpoint, we won’t be able to upload our findings. They will be persisted on our end, and can be re-uploaded at a later point. We do not plan to have a way to automate this: this will be done “manually”, on an ad-hoc fashion.
We would also probably need to have an automated way of revoking / renewing our own API key, to be able to remediate any leak on our end immediately.

I have modified the proposed schema. The gist of the change is that the schema now includes the result of a scan of an entire release, not just of a given artifact.

Thanks for the patience on this, I've taken a look now and have some thoughts:
@miketheman is working on developing the infrastructure for the Malicious Package Reporting API and much of that work will be required for this API endpoint as well (authentication, observation model, etc) so that work will need to be completed before we can implement the API endpoint itself.
For our own uses we'll need to decide a "minimum" set of required fields that will actually get used by our backend and then all other fields can be sent as additional information that we might use later on. The nice thing about the Observation model that Mike's designed is that we can gather all the information and then choose to use more later down the road, so don't let our small number of required fields discourage sending more information in the payload.
Identifying some straightforward required fields we'll likely need:

Project name (determine maintainers to send email to)
Release version (for Inspector URL, email)
File name (for Inspector URL)
Line number (for use to create an Inspector URL)
Secret type/provider (for email prose)
Secret status (for alerting user what action has been taken or if they need to take additional action)
Secret documentation URL (for providing more information about the secret)
Secret scanning provider (in this case, GitGuardian)
Secret scanning "report issue" URL (Provide a mechanism for scanners to be alerted to false-positives)

Since we're applying these observations to individual files, not necessarily to releases, we might want to have the API endpoint be file-centric as well? Something along the lines of:
{
  "scanner_info": {
    "display_name": "GitGuardian",
    "report_issue_url": "..."
  },
  "scan_results": [
    {
      "filename": "urllib3-2.0.3.tar.gz",
      "digests": {
        "sha256": "..."
      },
      "secrets": [
        {
          "type": "google_aiza",
          "display_name": "Google API Key",
          "filepath": "",
          "line": 1
          "documentation_url": "..."
          "validity_status": "VALID|NOT_VALID|UNKNOWN"
        }
      ]
    }
  ]
}

I have more thoughts too, but I'll comment more tomorrow since it's nearing the end of my day.


add: Issue Templates

Add some relevant issue templates for this repository.

Hi Aditya here,
I'd be happy to help create some issue templates for this repository. Here are my suggestions based on the repository's current structure and goals:

Bug Report:

Description
Reproduction Steps
Expected Behavior
Screenshots (if applicable)
System Information (OS, Python version)

Feature Request:

Feature Description
Benefits
Implementation Suggestions

General Discussion:

Discussion Topic
Relevant Information

Would love to get started on this. Please assign this task to me.

@sharp119, I have already assigned you.

I am closing this issue as it has already been solved by @sharp119 in pull request #2


Update configure

b/31910117
correctly finds python3 bin libraries

Can one of the admins verify this patch?

Jenkins, test this please.


LANG-1143: StringUtils should use toXxxxCase(int) rather than toXxxxC…

…ase(char)
based on patch by Sebb

Coverage increased (+0.02%) to 93.57% when pulling fc0f62597b8f0284413ea35c1d958e30fe20392f on PascalSchumacher:LANG-1143 into 65ed41ff7a8cfb0bbc03620e186382a16e23db56 on apache:master.

Coverage increased (+0.0002%) to 93.541% when pulling f2726339e75dc94f3a11b3797a0162c24cd8bd5e on PascalSchumacher:LANG-1143 into 383bc8eefae7e17d0bb0349ab2300488c655ec42 on apache:master.


Projects list does not refresh after creating a new project

If I works into project A and wish to create a new request template into project B I do steps ## Steps to reproduce:
Expected outcome
What should happen?
Project B is available for select into section Projects.
Actual outcome
What happened?
Project B is not available for select into section Projects.
Versions
App: 10.0.10
Platform: 5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36
Steps to reproduce

Once click to HTTP Request section.
Build a required http request.
Click to send
Call a SAVE dialog and set a title project B, and title for request.
Click to Save as NEW
Click to section Projects

Hi,
Thank you for the issue report. I've fixed it in the source code. Soon it will be released.


Could not connect to SSID

I have several Merkury bulbs (MI-BWXXX) that seem to loop during the AP step. Below is from a Merkury MI-BW904 on v1.0.1
Wiping NetworkManager configs
Scanning for open Tuya SmartLife AP
......
Found access point name: "Merkury-5D5E", trying to connect...
Device 'wlan0' successfully activated with '9ad44e5a-7b66-40d6-8d4b-9a9af8b11a26'.
Wiping NetworkManager configs
..
Found access point name: "Merkury-5D5E", trying to connect...
Device 'wlan0' successfully activated with 'ce25e59a-da96-4a39-98b9-25914652566c'.
Wiping NetworkManager configs
..
Found access point name: "Merkury-5D5E", trying to connect...
Device 'wlan0' successfully activated with '43c8b23a-758e-43e8-9c8a-53bc16639e32'.
Wiping NetworkManager configs
...
Found access point name: "Merkury-5D5E", trying to connect...
Device 'wlan0' successfully activated with 'be5d9eda-88a4-4109-a7b2-a9b56c01679d'.
Wiping NetworkManager configs
..
Found access point name: "Merkury-5D5E", trying to connect...
Device 'wlan0' successfully activated with 'd33cb2de-8f40-4082-b7e4-12f20b270e52'.
Error, could not connect to SSID.
Failed to connect, please run this script again

Make sure the devices are nearby enough to each other
Try running with the -r parameter if you're not already

This is an issue with NetworkManager not able to fully connect it appears

Make sure the devices are nearby enough to each other

Try running with the -r parameter if you're not already

This is an issue with NetworkManager not able to fully connect it appears

I moved the devices closer and I still have the same issue. I was able to get some of the bulbs working correctly, it seems the MI-BW904 is giving me problems specifically. I was using the -r parameter as well.

The same issue with Hombli_HBSS-0209-Smart-Socket-B2030248-Energy-Plug.
FW version 1.0.2.
Tried different WLAN adapters (Broadcom and Realtek), issue happens on both of them.

The same issue with Hombli_HBSS-0209-Smart-Socket-B2030248-Energy-Plug. FW version 1.0.2. Tried different WLAN adapters (Broadcom and Realtek), issue happens on both of them.

I wonder if there is a firmware bug that effects these. I have had success with numerous other devices as well as the same device, just not this specific firmware.

The same issue with Hombli_HBSS-0209-Smart-Socket-B2030248-Energy-Plug. FW version 1.0.2. Tried different WLAN adapters (Broadcom and Realtek), issue happens on both of them.

I wonder if there is a firmware bug that effects these. I have had success with numerous other devices as well as the same device, just not this specific firmware.
Edit: I did get a different error: Found access point name: "Merkury-B789", trying to connect... Error: Connection activation failed: (11) 802.1X supplicant took too long to authenticate.

I am getting this same error. Other devices of the same model worked, this one does not. Arlec PC191HA Smart Plug

Sorry to bump and old thread - I also get this error just with a generic starlight projector, running on a raspberry pi (followed the instruction):
[?] Select the firmware version and name: 1.1.2 - BK7231T / oem_bk7231t_light3_laser_nanxin
 ► 1.1.2 - BK7231T / oem_bk7231t_light3_laser_nanxin

Performing safety checks to make sure all required ports are available
Checking UDP port 53... Available.
Checking UDP port 67... Available.
Checking TCP port 80... Available.
Checking TCP port 443... Available.
Checking TCP port 1883... Available.
Checking TCP port 8886... Available.
Safety checks complete.

[?] Select your custom firmware file for BK7231T chip: ESPHome-Kickstart-v23.08.29_bk7231t_app.ota.ug.bin
 ► ESPHome-Kickstart-v23.08.29_bk7231t_app.ota.ug.bin
   esphome_2024.10.3_generic-bk7231t-qfn32-tuya_bk7231t_lt1.7.0.uf2
   image_bk7231t_app.ota.ug.bin
   OpenBeken-v1.17.697_bk7231t.ug.bin

Selected Device Slug: tuya-generic-sk20-star-projector-v1.1.2
Selected Profile: oem-bk7231t-light3-laser-nanxin-1.1.2-sdk-1.0.2-40.00
Selected Firmware: ESPHome-Kickstart-v23.08.29_bk7231t_app.ota.ug.bin

================================================================================
Place your device in AP (slow blink) mode.  This can usually be accomplished by either:
Power cycling off/on - 3 times and wait for the device to fast-blink, then repeat 3 more times.  Some devices need 4 or 5 times on each side of the pause
Long press the power/reset button on the device until it starts fast-blinking, then releasing, and then holding the power/reset button again until the device starts slow-blinking.
See https://support.tuya.com/en/help/_detail/K9hut3w10nby8 for more information.
================================================================================

Wiping NetworkManager configs
Scanning for open Tuya SmartLife AP
......
Found access point name: "SmartLife-BB3D", trying to connect...
Error: Connection activation failed: 802.1X supplicant took too long to authenticate.
Wiping NetworkManager configs
..
Found access point name: "SmartLife-BB3D", trying to connect...
Error: Connection activation failed: 802.1X supplicant took too long to authenticate.
Wiping NetworkManager configs
..
Found access point name: "SmartLife-BB3D", trying to connect...
Error: Connection activation failed: 802.1X supplicant took too long to authenticate.
Wiping NetworkManager configs
..
Found access point name: "SmartLife-BB3D", trying to connect...
Error: Connection activation failed: 802.1X supplicant took too long to authenticate.
Wiping NetworkManager configs
..
Found access point name: "SmartLife-BB3D", trying to connect...
Error: Connection activation failed: 802.1X supplicant took too long to authenticate.
Error, could not connect to SSID.
Failed to connect, please run this script again

@metaljay That is purely a connection issue, the device you're running CloudCutter from does not have a good enough wireless connection to the device you're trying to exploit.

@metaljay That is purely a connection issue, the device you're running CloudCutter from does not have a good enough wireless connection to the device you're trying to exploit.

they are next to one another, as in. my raspberry pi (connected via ethernet) is sat on top of the star projector. I suspect it's probably something in the pi settings that's stopping it communicating properly over wifi? I dont have any other linux based devices to try this on, my Mac can't virtualise Ubuntu and have a wifi connection, it just shows as ethernet :(

Not much else I can advise,
Found access point name: "SmartLife-BB3D", trying to connect...
Error: Connection activation failed: 802.1X supplicant took too long to authenticate.

is purely a driver-level response, that error isn't CloudCutter code.


TypeError: o[Symbol.iterator] is not a function

Running this code:
const response = await ollama.pull({
  model: props.modelName,
  stream: true
})

for await (const data of response) {
  const percent = data.completed / data.total * 100
  setPercent(percent)
}

Produces this error:

Just saw that the same thing happens without stream: true as well.

I have this error too in Chromium and Safari, but Firefox works fine.

One idea is to split the code in 2 libraries. One for browser, without the push/pull stuff and anything that requires fs (call it ollama-js-browser). With just the chat API, model list. (this is what I did essentially - ripped the chat part of the library and vendored the code)

I think Electron should be considered as well. There are both Node and browser APIs.

I'm having the same issue using this within a web app on Chrome. I'm just using the API directly in the meantime, but would prefer to use this package for simplification.


Remove all tags from from an object

Is there a way to remove all tags from an object? An empty string for tags bypasses the saving process. Am I correct in presuming the plugin would need to be modified to allow removing all tags?
Thanks in advance.

There is no such method needed in the plugin. Simply do a deleteAll() with the conditions for the foreign key you want to to delete on the tagged table.


Datepicker min-date Ignores Format

Angular: 1.3.2
Angular UI: 0.12.1
I'm formatting my dates to the format dd/MM/yyyy (UK-style) and trying to use these for the min-date attribute on the DatePicker directive.
This directive is reading the date in the format of MM/dd/yyyy, which causes (for example) April 5th to be read as May 4th.
I believe the directive should use the format provided in the datepicker-popup attribute for both min-date and max-date and default to the US style only when a custom format isn't provided.

Pretty sure this is a duplicate - have you tried against master?

@matt-major Please add a plunkr demonstrating your issue.

@rafbgarcia sure, http://plnkr.co/edit/hxEiaVDvGyRheOV6VzCA?p=preview
As you can see with this demo, I'm passing in the min-date of 05/04/2015, and the data-datepicker-popup format as "dd/MM/yyyy" as this date is in UK format.
The directive however just creates a new Date from 05/04/2015 with no localization/formatting which results in May 4th rather than April 5th.

My PR #3606 will cover this one.  It considers the format when parsing the min-date and max-date.
https://github.com/stevecavanagh/bootstrap/blob/fix(datepicker)MinMaxInputValidation/src/datepicker/datepicker.js#L601

With the enforcement of min-date/max-date using date objects, we will not be supporting string formats, so closing.


Adding first test-case (as discussed in #19)

As discussed in #19 I'm adding the first test case under Tilda.
I think it would be worthwhile retro-actively adding these to other takeovers (particularly where a takeover is listed as not possible) to help give more insight to future visitors.
On that note - I'm also adding a date to the test cases should somebody wish to re-perform them a year or two after they are first run and update the repository.

Good point. I rushed this, I'll polish a bit more later in the week.
Basically what I was trying to say with that is that attempts to create an account tied to other subdomains on the same tld were successful, indicating that the one associated with the dangling CNAME was already claimed by another Tilda account.

Closing this pull request as we've now taken the repository in a different direction.


phonegap serve should log out if it is adding the browser platform

If you phonegap serve right away after creating a project, the browser platform will be added automatically. Even with the -d flag, the user is given no warning that this happening, and thus it looks like CLI is stuck not doing anything.
We should, probably even in the non-verbose case, warn about this happening.
Thoughts @surajpindoria ?

Yeah, I think this is a good idea. I added an event that gets fired once the browser platform is done being created. I just took a look and it seems the decouple stuff didn't add that in, just a small change to get it going again though.

Not sure if this is worth creating a new issue for, but could somebody perhaps explain why the browser platform is added automatically with phonegap serve..?

@ZaLiTHkA I would definitely open a new issue for this (feel free to reference this issue in there too).

Alrighty then, will do. 👍


Porting of tokensaver to python

Hi @Apollon77 , first of all thank you for your huuuuuge work.
Since I saw that the tokensaver.js is working perfectly and allows to skip all the proxy procedure, I've been trying to port it to python in order to include it in my integration: in this way, when the tokenset expires it can be automatically renewed and we can live happily ever after (unless the Daikin guys decide to change things on their side, of course).
I've reached 90% of the goal but I'm stuck at the very last step. I am attaching the code I've come up to (you'll see tons of commented lines of code, please understand):
tokensaver.zip
You can launch it with "./tokensaver.py username password", and as you'll see from the output I can get login and obtain all the values you get in your process... until the last call where I'm supposed to get the tokenset. Here, I'm feeling quite lost because the oic library does not provide anything similar to the oauthCallback you are using in NodeJS... I believe I should use the do_access_token_request call (you can find a commented line) but it crashes because it finds the grant field of the client not set, and debugging I am seeing that it gets never set because in the parse_request_response the authentication call always gets a 302 status code (redirect), so it never reaches the parse_response method that is the only place where the grant field is finally set.
Now, I know that you are not a python developer but if you can help me or give some suggestion on how I can overcome this problem it would be really great. Or even if you have some documentation to point to... even though I am understanding that the amazon OAuth process complicates things a bit.
Looking forward to your reply, thank you in advance!
rospogrigio

Nevermind man, after A LOT of struggling I finally managed to get the tokenset!!!
I'll be coming up with a brand new release of the integration!
Thank you anyway!!!


Fix the compile error once enabled Werror

On 32 bit operating system, execute the following command "linux32 ./config -Werror -g3 --prefix=xxx; make", it reported error "type mismatch in the file test/cmp_ctx_test.c: TEST_note("total=%d len=%ld msg='%s'\n", msg_total_size, strlen(msg), msg);".
On 32 bit system, size_t is defined as unsigned int, this is the return type of strlen(), but the code use %ld to printf it, when compiling, type mismatch warning will be reported.  For printf, %zu should be the right specifier of size_t, change  to avoid the warning.

We target C89/C90. As far as I know, C90 doesn't know about the z modifier, and so we can't use it. This would mean that all other code making use of TEST_note() with %z needs to be modified.
Note that our BIO_*printf() functions can use it, it has it's own implementation, but test_note() ends up calling vfprintf().

We target C89/C90. As far as I know, C90 doesn't know about the z modifier, and so we can't use it. This would mean that all other code making use of TEST_note() with %z needs to be modified.
Note that our BIO_*printf() functions can use it, it has it's own implementation, but test_note() ends up calling vfprintf().

Actually, we can find many places use %z in OpenSSL for TEST_note(). Example as below:

./test/poly1305_internal_test.c:1561:                TEST_info("Poly1305 test #%d/%zu+%zu failed.",
./test/sparse_array_test.c:52:            TEST_note("iteration %zu", i + 1);
./test/sparse_array_test.c:57:                TEST_note("iteration %zu / %zu", i + 1, j + 1);
./test/sparse_array_test.c:164:            TEST_note("failed at iteration %zu", i + 1);
./test/drbgtest.c:1377:        TEST_note("DRBG %zd case %zd block %zd", n / crngt_num_cases,
./test/testutil/tests.c:238:DEFINE_COMPARISONS(size_t, size_t, "%zu")
./test/ssl_cert_table_internal_test.c:32:    TEST_error("Invalid table entry for certificate type %s, index %zu",
./test/bioprinttest.c:117:    { SIZE_MAX, "%zu", (sizeof(size_t) == 4 ? "4294967295"
./test/bioprinttest.c:124:    { SIZE_MAX / 2 + 1, "%zi", (sizeof(size_t) == 4 ? "-2147483648"
./test/bioprinttest.c:127:    { 0, "%zu", "0" },
./test/bioprinttest.c:128:    { 0, "%zi", "0" },
./test/params_api_test.c:471:            TEST_note("iteration %zu var %s", j + 1, int_names[j]);
./test/params_api_test.c:482:            TEST_note("iteration %zu var %s", j + 1, uint_names[j]);
./test/siphash_internal_test.c:184:        TEST_info("size %zu vs %d and %d", expectedlen,
./test/siphash_internal_test.c:248:                TEST_info("SipHash test #%d/%zu+%zu failed.",
./test/dtls_mtu_test.c:107:            TEST_info("record %zu for payload %zu", reclen, s);

Fristly we try to use type cast, but to align with the OpenSSL exist style, we change it like this. As we know, %zu is one c99 addition, can anyone help answer whether we are targeting c89/c90, and whether the exist %zu is proper?

We target C89/C90. As far as I know, C90 doesn't know about the z modifier, and so we can't use it. This would mean that all other code making use of TEST_note() with %z needs to be modified.
Note that our BIO_*printf() functions can use it, it has it's own implementation, but test_note() ends up calling vfprintf().
Sorry, do you mean we should discard all of the z% in the OpenSSL code except in the functions BIO_*printf()?
As we know, %z is one good specifier for size_t, but only be available after c99, it can dynamically detect the bits of the operating system, once we change it like %lu, or ld%, maybe force type cast needed, this will make the code look ugly, do you have any good suggestions about how to change them?  I can see many places use the %z.

Note that our BIO_*printf() functions can use it, it has it's own implementation, but test_note() ends up calling vfprintf().

As far as I can see TEST_note is a macro for test_note, which calls test_vprintf_stderr which calls BIO_vprintf. The only place where this is not the case is in bioprinttest.c which has its own custom implementation of test_vprintf_stderr that does call vfprintf directly.
So, I think actually we are ok.

The only place where this is not the case is in bioprinttest.c

I of course only found that one, not the one in basic_output.c

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set. Please review the updates and set the label manually.

Hi mattcaswell&t8m, What further actions should I do? @mattcaswell @t8m

Merged to master. Thank you.


Having trouble with import maddpg

I am having trouble when I run python3 train.py --scenario simple
File "train.py", line 12, in
import maddpg
ModuleNotFoundError: No module named 'maddpg'

Please ensure that multiagent-particle-envs has been added to your PYTHONPATH (e.g. in ~/.bashrc or ~/.bash_profile).

You can attach the follow line in your bashrc or execute it in command line:
export PYTHONPATH= /path/to/maddpg:${PYTHONPATH}


Wrong IP addresses registered when using Docker overlay network

Using  170:    peername = request.transport.get_extra_info('peername') in headnode.py fetches the node IP of the overlay network, and not the IP of the registering service/data node.
I replaced line 170 with a few lines of code into the register function to accept an 'addr' field from the registering node:
   if 'addr' not in body:
       peername = request.transport.get_extra_info('peername')
       if peername is None:
           raise HTTPBadRequest(reason="Can not determine caller IP")
   elif len(body['addr']) == 2:
       peername = body['addr']
   else:
       raise HTTPBadRequest(reason="Can not determine caller IP")

and I added the following function to basenode.py to be invoked while sending the register signal:
def getNodeIp(node_type):
    """ Gets IP of local host (container) for the default route """
    log.info("Node type: %s" % node_type)
    if node_type == 'sn':
        if config.get("sn_port"):
            port = config.get("sn_port")
    elif node_type == 'dn':
        if config.get("dn_port"):
            port = config.get("dn_port")
    else:
        port = 6101
    IP = ((([ip for ip in socket.gethostbyname_ex(socket.gethostname())[2] if not ip.startswith("127.")] or [[(s.connect(("<IP_ADDRESS>", 53)), s.getsockname()[0], s.close()) for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1]]) + ["no IP found"])[0], port)
    log.info("sending node ip: %s:%s" % IP)
    return IP

async def register(app):
    """ register node with headnode
    OK to call idempotently (e.g. if the headnode seems to have forgotten us)"""
    head_url = getHeadUrl(app)
    if not head_url:
        log.warn("head_url is not set, can not register yet")
        return
    req_reg = head_url + "/register"
    log.info("register: {}".format(req_reg))
    addr = getNodeIp(app["node_type"])
    if addr:
        body = {"id": app["id"], "port": app["node_port"], "node_type": app["node_type"], "addr": addr}
    else:
        body = {"id": app["id"], "port": app["node_port"], "node_type": app["node_type"]}
.... etc

I agree that the behavior around HSDS binding to a particular IP needs improvement.  However, I'm not sure that this part is the way to do it:
IP = ((([ip for ip in socket.gethostbyname_ex(socket.gethostname())[2] if not ip.startswith("127.")] or [[(s.connect(("<IP_ADDRESS>", 53)), s.getsockname()[0], s.close()) for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1]]) + ["no IP found"])[0], port)
My concerns here are that there are more private networks allowed than just the 127 network, some of the HSDS deployments won't be able to reach out to <IP_ADDRESS>, some hostnames might not be exposed to the local DNS, and this code doesn't work on IPV6 networks.
However, I do agree that the IP discovery code needs improvement.

Just to throw this out... for Kubernetes deployments there is no head node at all.  Instead SN and Dn nodes use the Kubernetes API to get IPs for the other nodes (see line 279 bin basenode.py).
I don't know if this approach would work for Docker.  I couldn't find anything on use the Docker SDK from a container.

I think that the main point @znarthur makes here is that there are usually multiple IPs associated with a docker container - a local docker network only IP, and possibly a public facing IP.  Picking the wrong one can be bad a few different ways.  For one, the bound port might be for the other IP.  Also, putting the service node on a docker private IP breaks access.
For HSDS on docker, it might just be too hard to predict what the sysadmin wants, and HSDS might have to use an explicit IP:port configuration approach.


JSON Logging for Emulation Metrics

This PR adds json metric logging for emulation diagnostic scripts that can be ingested by gcloud's logging infrastructure.  In addition to this a new regression CronJob (https://github.com/ai2cm/vcm-workflow-control/pull/127) will be run nightly to log important metrics from our training and prognostic runs nightly.
Metrics Added:

training time
prognostic run length
MSE/bias scores on a test dataset for trained models

@frodre I just noticed that circle ci uses argo 2.11: https://github.com/ai2cm/fv3net/blob/ff2130e971f05441413eda33b5cff52a3e5956f2/.circleci/config.yml#L157
Should we be consistent?

One trick I do for making the history cleaner is to 1) manually remove the hyper parameter changes, 2) git commit, 3) git revert (this will become commit with just the parameter changes), 4) git rebase -i origin/master, and squash everything up to (3) into one commit, and reword the message of the revert commit

Thanks for the tip!
For this https://github.com/ai2cm/fv3net/pull/1789#discussion_r859233910 comment.  The change prevents the scoring script from OOM.  It doesn't change the calculated scores, only that it processes them sequentially before joining into an output.  I'm fine with micro PR to fix that for the sake of history, it'll just be broken temporarily on master probably.

Resolves #1792


PR#1 for merging vectorized-read branch into master

This PR introduces iterators for iterating through Parquet row groups and pages in a vectorized fashion. It also adds vectorized Parquet value decoders.

FYI - @rdblue, @prodeezy, @danielcweeks, @anjalinorwood

nice work @samarthjain, will take a look.

Failures look like missing classes:
package org.apache.iceberg.parquet.arrow does not exist

Some of the classes from ./parquet/src/main/java/org/apache/iceberg/parquet/arrow package weren't added in this PR e.g. ArrowSchemaUtil and IcebergArrowColumnVector  among others.

Closing this PR. I pushed a few commits to fix tests and remove unnecessary diffs. This PR is stale now. Will open new ones.


Analytics for Mobile applicaiton

Hi Team,
I want to have analytics for my mobile application. Also I have seen some code in edx source. So can any one let me know how to leverage this feature??
Thanks in advance:-)

Hey @krishnakanthjb we at edx use segment.com (with the google analytics integration) for analytics. All you need to do is sign up for those services and add the appropriate keys to the config. If you want to use a different service, you can implement the OEXAnalyticsProvider interface calling through to that service and register your provider with OEXAnalytics


initial implementation of the simple python APIs for invoking transforms

Why are these changes needed?
To simplify using transforms in user code, for example, notebooks or straight Python code
Related issue number (if any).

This still requires a bit of work. Right now, it uninstalls the library but not its dependencies. was thinking about https://stackoverflow.com/questions/73600082/how-to-reference-a-requirements-txt-in-the-pyproject-toml-of-a-setuptools-projec to restore requirements.txt, so that we can get dependencies from there

Also it will work for Ray the same way

This solves the complexity of getting the right pip install commands to use a given transform.  In addition to execute_transform maybe we need an install_transform so that they can then import and use the transform as they would in any python file.  I think 2 issues are being addressed here. 1) pip install 2) execute.  I like 1, but not sure we have the write model for 2 here.

I have no idea what you mean with this comment:
this should be implemented as a class and then the launch piece can be stubbed out. Or pass in a method to do the launch, but a cut/paste with a one line change will not work.

You have to be more specific

@blublinsky , please remove your execution outputs from the Jupyter notebook.
line like:
/Users/borisl/Projects/data-prep-kit/examples/notebooks/code/input_data
/Users/borisl/Projects/data-prep-kit/examples/notebooks/code/test-data/parquet_input
/Users/borisl/Projects/data-prep-kit/transforms/code/code2parquet/python/test-data/languages/lang_extensions.json

should not be the in the git.


Auto-convert input types for rsid_list

It's semi-annoying to have to wrap the input for a single report suite for each function. For example:
Want this:

aaa.GetBaseCurrency("zwitchdev")

Need to do:
aaa.GetBaseCurrency(rsid_list = ["zwitchdev"])

How do you want to fix this?

Going to fix this on the make-valid-package branch then merge into master, because this is annoying as hell


remote host forciable exit

An existing connection was forcibly closed by the remote host

Duplicate of #1830.

I am not understand what you say


Adapting the App to work with Multiple LLMs

How could one adapt the app to work with multiple LLMs, especially, Llama3 and Claude? Would be great to generalize the app's functionality and identify any necessary modifications.
Any guidance, suggestions, or technical assistance from the community would be greatly appreciated.
TSSFL

Hey @TSSFL in order to call different API services you could add a Selector with the available options on the Setup.tsx
For each option on the select input, you will need to associate it with a different endpoint, so you can create
Then use that selectedApi state on the dispatcher
${proxy ? proxy : ''}https://generativelanguage.googleapis.com/v1beta/models/gemini-pro:generateContent?key=${apiKey}
Then replace the Google API with the restructured API endpoint
const { API_KEY: apiKey, proxy, conversation, selectedApi } = currentState.user
${proxy ? proxy : ''}${selectedApi}${apiKey}
Let me know if this helps you to have one path to complete your objective.

Thank you @fjosue4 , will work on this and come up for any help/clarification.

@TSSFL with the last update I sent there's a selector for the model, you could use the same but instead of a model for Gemini, you could ask for the AI endpoint you want to point in the setup page, so you provide the API key according yo the AI provider.

Thank you @fjosue4  for the updates. This is a great way to provide the API key based on the AI provider. I’ll go ahead and test the LLM web app.


[Bug] connector-influxdb module  InfluxDBSource class's initColumnsIndex method, sql  invalide when sql contains tz function  cause by direct  append QUERY_LIMIT

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
connector-influxdb module  InfluxDBSource class's initColumnsIndex method, sql  invalide when sql contains tz function  cause by direct  append QUERY_LIMIT
fix code:
     String sql = sourceConfig.getSql();     	String query = sql + QUERY_LIMIT;         // if sql contains tz(), can't be append QUERY_LIMIT at last . see bug #4231         if (sql.toLowerCase().contains("tz")) {         	int start = sql.toLowerCase().indexOf("tz");         	StringBuilder tmpSql = new StringBuilder(sql);         	tmpSql.insert(start-1, QUERY_LIMIT+" ");         	query = tmpSql.toString();         }
SeaTunnel Version
2.3.0-release
SeaTunnel Config
ingore

Running Command
ingore

Error Exception
SQL syntax error

Flink or Spark Version
2.4.8
Java or Scala Version
1.8
Screenshots
No response
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi, still waiting your fix PR.😁

I fixed commited code's bug ,  position by java regex


Code-formatting

Add flake8-isort-black and sourcery-ai code review actions

Summary by Sourcery
Introduced GitHub workflows for automated code linting using flake8 and code review using Sourcery AI. Configured flake8 settings in setup.cfg.

CI:

Added GitHub workflow for flake8 linting, including setup for Python environment and flake8 plugins.
Added GitHub workflow for Sourcery AI code review, including setup for Python environment and Sourcery token.

This PR adds a couple of actions to handle code style checks. Currently set to run on pull request to main or on workflow dispatch. Could run on push as well, but I've added a .vscode/settings.json to apply the flake8/black/isort conventions automatically on save so shouldn't need to run the action on every commit.
Main branch is protected and now requires the flake8 action to pass before a PR can be merged. Experimenting with the sourcery action so that one does not need to pass.

Branch protection means all PRs now need review so could you take a look @ccaio or @deepnayak before we merge these checks


Russian localization

I have create partial russian localization
you can download file from by blog and add to repo
http://aboutme.com.ua/files/ru_RU.rb

Oh, god. Github notifications were so bad we never seen this.
Currently your link fail in error 500, can you update your l10n and upload it again? Thank you.

But after some troubles on typo updates, i had remove typo at all from my blog and created own engine.
Sorry

You don't have to be sorry: we are the guys that were too slow. But know we're faster ;)
Don't hesitate to give one more try to typo one day.
See you soon.


Modsecurity issue IIS 7.5

I am attempting to install and setup modsecurity 2.9.0 in an IIS environment.  Install and setup is pretty straight forward.  I have made sure that I have the 2013 visio studio runtimes for x64 installed.  I installed modsecurity and added a secrule for testing.  I then made the changes to the web.config and added the modsecurity=true configfile = "xx".  Event ID 1 is in my event viewer with 5 entries.  No other events no logs nothing.  Any suggestions.

So here is some stuff to do to verify what your problem is.  Try running dependency walker on the ModSecurityIIS.dll and make sure you have all the libs.
If that comes through ok, the IIS module should be ok (check the IIS Manager to see if it listed as a active Module)
If both of those test ok, try a simplified default config (checking permissions, here I have used c:\temp for log scribbling, but not what I plan for production but gives a testing space where you can set permissions how every you want to do your testing):
=-=-=-=
SecRuleEngine On
SecDebugLog "c:\temp\debug.log"
SecDebugLogLevel 6
SecAuditLogType Serial
Directory where the files will be stored
MUST NOT BE THE SAME AS THE APACHE LOGS FOLDER
SecAuditLogStorageDir c:\temp
The index of all files created
YOU MUST NOT ALLOW NON-ROOT USERS TO WRITE
TO THE BASE FOLDER
SecAuditLog c:\temp\index.log
Choose what to log   everything (default is ABCFHZ)
SecAuditLogParts ABCDEFGHZ
SecAuditEngine On
SecDefaultAction "phase:1,deny,log,status:403"
SecRule ARGS "zzz" phase:1,log,deny,status:503,id:1
SecResponseBodyAccess On
SecStreamOutBodyInspection On
SecRequestBodyAccess On
SecStreamInBodyInspection On
SecContentInjection On
=-=-=-=
now the only blocking rule is
SecRule ARGS "zzz" phase:1,log,deny,status:503,id:1
so a test request on the host of
http://localhost/?a=zzz
Should give you a 503 error.
If so you should be ready to put a real rule set in place.

Thanks for the reply.
I checked everything, used your suggested settings and ran a test.  I still have the same events showing up in the event viewer and there are no logs being generated.  My server is 2008 IIS 7.5 tried 2 different version of mod security 2.8.0 and 2.9.0.   Currently I have 2.8.0 installed and here are the event viewer logs.  When 2.9.0 is installed its the exact same events but instead of Event ID 0 it will be Event ID 1.
It generates 5 events
The description for Event ID 0 from source ModSecurity cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.
ModSecurity: LIBXML compiled version="2.9.1"
ModSecurity: LUA compiled version="Lua 5.1"
ModSecurity: PCRE compiled version="8.33 "; loaded version="8.33 2013-05-28"
ModSecurity: APR compiled version="1.4.8"; loaded version="1.4.8"
ModSecurity for IIS (STABLE)/2.8.0-RC1 (http://www.modsecurity.org/) configured.

So no failed dependancies in dependency walker?
and set to the testing config above with
appcmd.exe set config /section:"system.webServer/ModSecurity" /"enabled:true" /"configFile:C:\PATHGOESHERE\modsecurity_iis.conf"
Sorry if I am being redundant, just wanting to make sure we have followed the same steps.

I ran Dependency Walker and ran into issues.  The responses I saw indicated that it was a false positive.  Basically its saying im missing the following dll's.  I have 2008, 2010, 2012, and 2013 runtimes installed.  Now I can waist time trying to track this down but most agreed its unnecessary.  What do you think?
API-MS-WIN-APPMODEL-RUNTIME-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
API-MS-WIN-SHCORE-SCALING-L1-1-1.DLL
DCOMP.DLL
IESHIMS.DLL
MFPLAT.DLL
WLANAPI.DLL

Did you ever find a solution to this?

We have been using the version installed with the current version of plesk for this.  Of note when looking at plesk and how it has mod_sec installed, it has placed the 32 and the 64 bit version in.  That has been working for us (though still not moved to our prod boxes).

I did not find a solution to this.  I have put it on the back burner for awhile now.  I plan on trying again someday soon and hope that something has changed.  I was not able to get it to work on several servers all running the same os and same version of IIS.  I even asked a coworker who set it up on a majority of linux servers and together we stood no chance.  If you have any ideas on how to get it to work I’d love to hear it.
From: dcoli<EMAIL_ADDRESS>Sent: Wednesday, April 20, 2016 3:37 PM
To: SpiderLabs/ModSecurity<EMAIL_ADDRESS>Cc: Nordstrom, Richard<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [SpiderLabs/ModSecurity] Modsecurity issue IIS 7.5 (#916)
Did you ever find a solution to this?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHubhttps://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212572858

I actually got it to work on a couple of machines for a while. The first
machine I installed VS 2015 insteac of 2013, but uninstalling ModSecurity
and then installing 2013 and reinstalling ModSecurity seemed to work. This
was okay until I realized there was a problem and uninstalled it. Now I
can't get it to work again. Am trying all the steps again, plus restarting
the machine after every step.
On the second machine I just installed vcredist_64 and 32 (sp?) and then
ModSecurity, which worked fine. But there was a problem in which some
content was being blocked for both whitelisted local and external users,
and only uninstalling ModSecurity fixed it. I haven't tried to reinstall on
that machine, since it was breaking core functionality, and its a shared
staging server.
On Apr 21, 2016 8:39 AM, "rdnordst"<EMAIL_ADDRESS>wrote:

I did not find a solution to this. I have put it on the back burner for
awhile now. I plan on trying again someday soon and hope that something has
changed. I was not able to get it to work on several servers all running
the same os and same version of IIS. I even asked a coworker who set it up
on a majority of linux servers and together we stood no chance. If you have
any ideas on how to get it to work I’d love to hear it.
From: dcoli<EMAIL_ADDRESS>Sent: Wednesday, April 20, 2016 3:37 PM
To: SpiderLabs/ModSecurity<EMAIL_ADDRESS>Cc: Nordstrom, Richard<EMAIL_ADDRESS>Author <
<EMAIL_ADDRESS>Subject: Re: [SpiderLabs/ModSecurity] Modsecurity issue IIS 7.5 (#916)
Did you ever find a solution to this?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub<
https://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212572858>
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212900124

I am going to give your second machine install a try.  Maybe I can get it to finally start and see if I can push through the issues.  If I find anything I’ll be sure to let you know.  But I probably wont start the install until next week or so.
From: dcoli<EMAIL_ADDRESS>Sent: Thursday, April 21, 2016 9:46 AM
To: SpiderLabs/ModSecurity<EMAIL_ADDRESS>Cc: Nordstrom, Richard<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [SpiderLabs/ModSecurity] Modsecurity issue IIS 7.5 (#916)
I actually got it to work on a couple of machines for a while. The first
machine I installed VS 2015 insteac of 2013, but uninstalling ModSecurity
and then installing 2013 and reinstalling ModSecurity seemed to work. This
was okay until I realized there was a problem and uninstalled it. Now I
can't get it to work again. Am trying all the steps again, plus restarting
the machine after every step.
On the second machine I just installed vcredist_64 and 32 (sp?) and then
ModSecurity, which worked fine. But there was a problem in which some
content was being blocked for both whitelisted local and external users,
and only uninstalling ModSecurity fixed it. I haven't tried to reinstall on
that machine, since it was breaking core functionality, and its a shared
staging server.
On Apr 21, 2016 8:39 AM, "rdnordst" <notifications<EMAIL_ADDRESS>wrote:

I did not find a solution to this. I have put it on the back burner for
awhile now. I plan on trying again someday soon and hope that something has
changed. I was not able to get it to work on several servers all running
the same os and same version of IIS. I even asked a coworker who set it up
on a majority of linux servers and together we stood no chance. If you have
any ideas on how to get it to work I’d love to hear it.
From: dcoli<EMAIL_ADDRESS>Sent: Wednesday, April 20, 2016 3:37 PM
To: SpiderLabs/ModSecurity <ModSecurity<EMAIL_ADDRESS>Cc: Nordstrom, Richard <Nordstrom.Richard<EMAIL_ADDRESS>Author <
author<EMAIL_ADDRESS>Subject: Re: [SpiderLabs/ModSecurity] Modsecurity issue IIS 7.5 (#916)
Did you ever find a solution to this?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub<
https://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212572858>
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212900124

—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHubhttps://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212925995

I just got it working on my first machine. The only thing I could tell that
was different this time was that first installed 2.7, which doesn't at all
autoconfigure your config files (doesn't even produce them). I decided not
to go that route. So I shut down w3 services and uninstalled using msiexec
on the command line. When I went to install 2.9 again it said it couldn't
proceed because of the presence of 5 or 6 dll's from an earlier version. I
renamed those and then successfully installed 2.9 from the command line. I
entered the a test rule and it worked.
However, I'm seeing the occasional problem with webpages which were working
previously, even with DetectionOnly mode set. I think in one of my login
pages the POST body is being stripped.
On Thu, Apr 21, 2016 at 10:38 AM, rdnordst<EMAIL_ADDRESS>wrote:

I am going to give your second machine install a try. Maybe I can get it
to finally start and see if I can push through the issues. If I find
anything I’ll be sure to let you know. But I probably wont start the
install until next week or so.
From: dcoli<EMAIL_ADDRESS>Sent: Thursday, April 21, 2016 9:46 AM
To: SpiderLabs/ModSecurity<EMAIL_ADDRESS>Cc: Nordstrom, Richard<EMAIL_ADDRESS>Author <
<EMAIL_ADDRESS>Subject: Re: [SpiderLabs/ModSecurity] Modsecurity issue IIS 7.5 (#916)
I actually got it to work on a couple of machines for a while. The first
machine I installed VS 2015 insteac of 2013, but uninstalling ModSecurity
and then installing 2013 and reinstalling ModSecurity seemed to work. This
was okay until I realized there was a problem and uninstalled it. Now I
can't get it to work again. Am trying all the steps again, plus restarting
the machine after every step.
On the second machine I just installed vcredist_64 and 32 (sp?) and then
ModSecurity, which worked fine. But there was a problem in which some
content was being blocked for both whitelisted local and external users,
and only uninstalling ModSecurity fixed it. I haven't tried to reinstall
on
that machine, since it was breaking core functionality, and its a shared
staging server.
On Apr 21, 2016 8:39 AM, "rdnordst"<EMAIL_ADDRESS><EMAIL_ADDRESS>wrote:

I did not find a solution to this. I have put it on the back burner for
awhile now. I plan on trying again someday soon and hope that something
has
changed. I was not able to get it to work on several servers all running
the same os and same version of IIS. I even asked a coworker who set it
up
on a majority of linux servers and together we stood no chance. If you
have
any ideas on how to get it to work I’d love to hear it.
From: dcoli<EMAIL_ADDRESS>Sent: Wednesday, April 20, 2016 3:37 PM
To: SpiderLabs/ModSecurity<EMAIL_ADDRESS><EMAIL_ADDRESS>Cc: Nordstrom, Richard<EMAIL_ADDRESS><EMAIL_ADDRESS>Author <
author<EMAIL_ADDRESS>Subject: Re: [SpiderLabs/ModSecurity] Modsecurity issue IIS 7.5 (#916)
Did you ever find a solution to this?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub<

https://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212572858>

—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
<
https://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212900124>

—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub<
https://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212925995>
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/SpiderLabs/ModSecurity/issues/916#issuecomment-212948883

Yes, it is definitely blocking POST fields in DetectionOnly mode. I tried turning off SecRequestBodyAccess and my login form began working.

Need to add this to get posts to work: SecStreamInBodyInspection On

Hi Guys, I am closing that issue as I am seeing that you already had progress on that.


Default value for graph_runtime Init lookup_linked_param_func

In previous TVM version GraphRuntime Init method had 3 parameters.

graph_json The execution graph
module The module containing the compiled functions
ctxs The context of the host and devices

Now Init method has one additional parameter:

lookup_linked_param_func If given, a PackedFunc invoked to lookup

In most of the cases this parameter is set to nullptr.
To keep GraphRuntime API backward compatibility we can make new parameter lookup_linked_param_func optional by setting its default value to nullptr.

Thanks @apivovarov @d-smirnov @zhiics


Deleting of automatic generated waypoints

I can't delete automatic generated waypoints . The new feature: "waypoints from personal notes" is great, but it made 10 new waypoints, that are all just wrong and I can't delete these...
I would like to delete the "original coordinates"-waypoints, too but that is not so important ;)

Updated c:geo today and tried to update my caches but nothinhg has changed.
None of my "old" wrong coords are deleted.
I really need a posibility to delete waypoints...
I will try some SQL-Editors, but I want to get rid of that nonsens Coords (e.g. N 831 00.000 E 231 00.000 ? That is not even valid :( )

Updated c:geo today and tried to update my caches but nothinhg has changed.
None of my "old" wrong coords are deleted.
I really need a posibility to delete waypoints...
I will try some SQL-Editors, but I want to get rid of that nonsens Coords (e.g. N 831 00.000 E 231 00.000 ? That is not even valid :( )

I also do still have problems with this feature...I added some examples to #920.
Maybe we should reopen #920 I think it is not yet solved....deleting of this WPs is then another topic after the first has been solved.

I also do still have problems with this feature...I added some examples to #920.
Maybe we should reopen #920 I think it is not yet solved....deleting of this WPs is then another topic after the first has been solved.

@Lineflyer: Sorry, when you think I am inpatient or demanding. I am very happy with cgeo and this "issue" is NOT meat as an rant!
I love the new features and I don't expect are solution soon :)
I am absolutly fine with cgeo, the way it is and I really appreciate all the hard work of the devolpers...
I just wanted to report the problem, no offence ment!

@Lineflyer: Sorry, when you think I am inpatient or demanding. I am very happy with cgeo and this "issue" is NOT meat as an rant!
I love the new features and I don't expect are solution soon :)
I am absolutly fine with cgeo, the way it is and I really appreciate all the hard work of the devolpers...
I just wanted to report the problem, no offence ment!

I'm in the process of updating the parsing algorithm to make all the given examples work exactly as expected. Stay tuned.

I'm in the process of updating the parsing algorithm to make all the given examples work exactly as expected. Stay tuned.

In yesterdays changes I had a fault in the unit tests. That has been fixed, the parsing has improved and all examples reported by @schertha or @Lineflyer are now working as expected.

In yesterdays changes I had a fault in the unit tests. That has been fixed, the parsing has improved and all examples reported by @schertha or @Lineflyer are now working as expected.

You are the best :-))
I will test and report back.

You are the best :-))
I will test and report back.

Looks good :)
I still would like to have this more flexible (e.g. option to parse/not parse or delete automatic generated waypoints) but I am absolutly fine with the way it works right now! Great feature! Big Thanx from here :)

Working good.
I agree to have an option to switch off the automatic parsing of the note as some users may not like it very much, because it can be hard to have the overview of your WPs on caches with many stages/notes.


Fix Thirdweb Wallet Disconnect Null Reference

This issue occurred in our project, where the case is that the client has already logged in from a previous session, and we've saved the wallet address. The user then disconnects the wallet, and we clear the wallet address from local storage, and tell Thirdweb to disconnect the current wallet. This results in a null reference exception, as no Thirdweb connection was needed. The solution is to not access the wallet if it is null, and throw a warning instead.

Do not access active wallet if it is null.
Add warning.

LGTM!


fix bugs on render without background

Hi author,
When I render without background on depth.py and render.py, the NumPy array without contiguous will make an error as bellow
ValueError: ndarray is not C-contiguous
So I change the zeros array to a contiguous array by using np.ascontiguousarray
overlap = np.ascontiguousarray(np.zeros_like(img))

Not reproduced. The testing is OK for me. Could you please provide a script for reproducing the error?

I follow the demo on Google Colab link from this repo with my image.
Here is the picture I test: https://github.com/ngoanpv/3DDFA_V2/raw/master/docs/images/IMG_0852.JPG
I run this code:
# reconstruct vertices and render
ver_lst = tddfa.recon_vers(param_lst, roi_box_lst, dense_flag=dense_flag)
render(img, ver_lst, tddfa.tri, alpha=0.6, show_flag=True, with_bg_flag=False);

the error is as bellow

I use your tested image, and modify with_bg_flag to False in below code,
https://github.com/cleardusk/3DDFA_V2/blob/b7558fac95366e91de41cffaa17a10273e35d199/demo.py#L72
then, I run
python3 demo.py -f examples/inputs/tmp/IMG_0852.JPG -o depth

The running is without error and the result is below:

I think the problem from the Colab environment, not the bug on this repo.
I close this pull request now.
Thank you for your time.

Anyone, thanks for your warmth on this repo : )


TypeError when calling IncomingSMS.objects.create()

Hi,
I would like to use this package, but I have a problem with IncomingMessage.
If IncomingSMSView is called with POST request from Twilio, then 500 error appears. Seems that there is a problem with mapping Serializers fields and Models field. I check that in your code and don't see any problem.
Error: TypeError at /profiles/sms/
Description: Got a TypeError when calling IncomingSMS.objects.create(). This may be because you have a writable field on the serializer class that is not a valid argument to IncomingSMS.objects.create(). You may need to make the field read-only, or override the SMSRequestSerializer.create() method to handle this correctly.
Original exception was:
 Traceback (most recent call last):
  File "/root/.virtualenvs/mybodyid/lib/python2.7/site-packages/rest_framework/serializers.py", line 879, in create
    instance = ModelClass.objects.create(**validated_data)
  File "/root/.virtualenvs/mybodyid/lib/python2.7/site-packages/django/db/models/manager.py", line 85, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "/root/.virtualenvs/mybodyid/lib/python2.7/site-packages/django/db/models/query.py", line 397, in create
    obj = self.model(**kwargs)
  File "/root/.virtualenvs/mybodyid/lib/python2.7/site-packages/django/db/models/base.py", line 555, in __init__
    raise TypeError("'%s' is an invalid keyword argument for this function" % list(kwargs)[0])
TypeError: 'force_insert' is an invalid keyword argument for this function

Hi, thanks for informing, after fork from original repo I only worked on Outgoing messages, never tested incoming endpoint. Will test it ASAP

@truhlik problem solved in v1.3.0 and published. You can update it from pip (or directly use this repo).
Added reply endpoint, so enabling it in twilio panel will make all to work. Problem was using force_insert on serializer, it only works on models and there is no need to use it anyway.
Thanks again for reporting error.


Backport cfitsio441 and numpy2 migrations

Comment:
Currently conda-forge-pinning pins downstream projects to root_base 6.32.0, while the latest release here is (ATOW) 6.32.2.
Rather than migrating to 6.32.2 (https://github.com/conda-forge/conda-forge-pinning-feedstock/pull/6127) it might be faster to backport the cfitsio441 (#263) and numpy2 (#265) migrations to a maintenance branch for 6.32.0.
If that's reasonable, and someone from @conda-forge/root can create the maintenance branch, I am happy to cherry-pick those migrations into a new branch to build a new 6.32.0 package that includes them. If instead its actually cleaner/faster/less work to just start the migration to 6.32.2, I'm happy to wait for that to propagate.
Thanks.

Ping @conda-forge/root, sorry to nag, but this issue is a blocker for me (aka the LIGO/Virgo/KAGRA collaborations).

Ping @conda-forge/root.


How to include a list of domains in one certificate

For the purpose of moving towards microservices, We've split our architecture into many applications, which would be hosted on subdomains.
I know that LetsEncrypt ACME doesn't support wildcard certificates yet. But I know they support multiple domain names in one certificate.
For example I have these IIS applications:
domain.com
service.domain.com
user.domain.com
service.user.domain.com
admin.domain.com
service.admin.domain.com
partner.domain.com
service.partner.domain.com
...
In this console, the list is given with according row numbers, and only one option can be specified. Can we specify multiple domains? Like for example providing a CSV?

This tool maps to IIS sites (if you choose the automatic method). Specifically, it reads all FQDNs mapped to port 80 on the site. So if you want the tool to work you'll need as many port 80 bindings as you have FQDNs and run the too with the "--san" parameter. From there, you'll choose your site and it should generate a SAN for that site.
Disclaimer: I don't use the automatic method for SANs, but the above is what I believe to be true about it :)

@LBegnaud that did the trick. I'm happy now, because I have a lot of subdomains and based on this approach, I can get to 20 certificate requests per domain per week, and in each request, I can embed many subdomains. This made my day. Let's go for a totally secure web.


Disconnecting the serial device doesn't raise error

I was connected to a FTDI 3.3 V TTL-232  adaptor cable while there was no data being transmitted on the bus. I then unplugged the cable from the laptop, and the SerialMonitor did not recognise this. I'd expect that it notifies me that the peripheral isn't readable in such case.

This has been fixed with commit ab6303de25d82db72aa77605ec7dac2e99666372. The device was simply not connected, so unplugging it wouldn't cause an error in the monitor. Now it works.


Voiceover doesn't read chats in languages with partial localization

New issue checklist

[x] I have read all of the README, documentation, and FAQ.
[X] I have reviewed the contributing guidelines. Confirmation: 💪😎👊
[X] I have searched existing issues and this is not a duplicate.

General information
Opening this issue to submit a PR to fix it.
The library is localized into many languages, but only some have all 7 localization keys:

"load_earlier_messages"
"send"
"new_message"
"text_message_accessibility_label"
"media_message_accessibility_label"
"accessory_button_accessibility_label"
"new_message_received_accessibility_announcement"

Others have 3 localization keys:

"load_earlier_messages"
"send"
"new_message"

The issue is that if iOS finds a localization file, but it doesn't find a key in it for the value you're looking up, then it does not look in the base localization by default. Thus, for all the accessibility keys, lookup fails and it returns the key as the value.
The result of this is when you're using a language such as Italian (has partial translation), and you're reading the message bubble stream with Voiceover, it reads the following for each chat bubble: "text_message_accessibility_label", "text_message_accessibility_label", "text_message_accessibility_label", etc.
The patch I'm submitting will properly fall back on the string in the base translation if a partial localization exists, but the key being looked up does not exist in that localization.

Steps to reproduce:
First, you'll need a demo app is localized to an affected language, such as Italian. To do this, we need to make sure at least one file in the Italian localization for the demo app is localized.

In XCode, select the JSQMessages demo project
Under the "Info" header, under "Localizations", find the "Italian" language. It should say "0 Files Localized"
Delete the Italian localization
Add the Italian localization,  with "Main.storyboard" checked.
Push this build to a phone.

Now, we need to perform Voiceover on a chat conversation:

Settings app > General > Accessibility > Accessibility Shortcut > VoiceOver (turn on)
Settings app > General > Language & Region > iPhone Language > Italian
Launch the JSQMessages demo app
Select "Push via storyboard"
Triple-tap home button (turn VoiceOver on)
Tap the different chat bubbles

Expected result:

VoiceOver reads the name of the contact and the message in an Italian accent.

Actual result:

VoiceOver reads "text_message_accessibility_label" in an Italian accent.

Hello everyone!
I'm sorry to inform the community that I'm officially deprecating this project. 😢 Please read my blog post for details:
http://www.jessesquires.com/blog/officially-deprecating-jsqmessagesviewcontroller/
Thus, I'm closing all issues and pull requests and making the necessary updates to formally deprecate the library. I'm sorry if this is unexpected or disappointing. Please know that this was an extremely difficult decision to make. I'd like to thank everyone here for contributing and making this project so great. It was a fun 4 years. 😊
Thanks for understanding,
— jsq


Bugfix format log

Just a minor fix, as I see it when debugging Sonar and Bitbucket integration.

Thank you for your contribution!


Add JS tests

I recommend going commit-by-commit when reviewing.
First commit gets expand-liquid working with the JS functions, allowing you to specify a flavour (vanilla-js or typescript) as an optional parameter with vanilla-js as the default.
Second commit gets the typegen working for the workspace so that you simple run yarn typegen from the root and it generates types for all JS/TS functions.
Third commit adds Rust workspace so it is easy to run all Rust tests to ensure any changes I made to the Rust tests were successful.
Fourth commit improves a couple Rust tests.
Fifth commit adds the JS tests so that they are equivalent to the Rust tests.
Sixth commit adds CI so that we know that the tests are actually passing.
Seventh commit runs cargo fmt to appease CI.

If you think the Rust CI should be split out into a separate PR, let me know and I can do that.

I guess the domain name isn't working for some:

I believe that is an existing bug with expanding the apps at this line


admin-UI stuck for datasets with many configs/splits

For example, https://huggingface.co/spaces/datasets-maintainers/datasets-server-admin-ui with gsarti/flores_101 on "Dataset status" tab takes a lot of time.

keep open

let's reopen if it occurs again


onMouseLeave -  Feature event dont work propertly

I noticed that leave event dont fired. But I precisely remember that in older version (js build) this work normal.

I have compared a code, but extra diffs i didt noticed. Tnx for help.
P.S. Examples already have this bug (cursor dont hide all time in london-cycle.js)

Gotcha, sorry for that, I will fix it

@ufon I fixed it with the patched version 1.7.4 again sorry for that

tnx a lot!


Cloudwatch Implementation

Should help fix #696 eventually
TODO:

[x] DeleteDashboard
[ ] DescribeAlarmHistory
[ ] DescribeAlarmForMetric
[ ] DisableAlarmActions
[ ] EnableAlarmActions
[x] GetDashboard
[ ] GetMetricStatistics
[x] ListDashboard
[x] PutDashboard
[x] GetDashboard
[ ] SetAlarmState

Ahh only just seen #1133
Merge this first at its current state as that should slot in to #1133 as it only deals with dashboards at the moment.

Coverage increased (+0.01%) to 93.566% when pulling c965fdd47feaf044a904c14d63f6c42f85fa48b5 on terrycain:cloudwatch into 4213f88c6b7ed77920e72940105fd00bcbc4d323 on spulec:master.

Nice call on implementing the dashboard without clobbering #1133 . Merging

Released as Moto 1.1.13


Changes to optional handling within throwing functions to propagate e…

Changes to optional handling within throwing functions to propagate errors to the caller instead of implicitly force unwrapping.

Thanks a lot for this PR, your contribution is always welcome.

Glad to help! What do you have planned for upcoming changes/improvements?
I think there are things I could help, but I wouldn't want to clash with your efforts.

Am presently trying to make sure all Algod functions are available then after that, I'll be working on Stateful smart contracts, Application  call transactions and then KMD
BTW, are you familiar with Algorand Tech?

Glad to help! What do you have planned for upcoming changes/improvements?
I think there are things I could help with, but I wouldn't want to clash with your efforts.

Am presently trying to make sure all Algod functions are available then after that, I'll be working on Stateful smart contracts, Application call transactions and then KMD
BTW, are you familiar with Algorand Tech?

I'm familiar with the tech at a high level but I've only done the basic Python sdk and pyteal tutorials so there are a lot of details I'm not familiar with. However I'm very familiar with Swift and developing SDKs.
Lately, I've been familiarizing myself with the v2 rest endpoints and how each official sdk interfaces with them so that I can better understand what's happening and where.
I thought it might be helpful to create a 1:1 api wrapper using Swift Codable structs that match the api request/response schema. Although it wouldn't add any functionality directly it seems like it would be helpful for development and possibly as a fallback for features the sdk doesn't support fully yet. Any thoughts on this?

I think a lot of the work for the request/response schema for the v2 API  has already been done, especially for the Indexer, although this was done using Classes that implement the codable protocol, not structs.


Support custom extensions

ztunnel should support custom extensions to allow provider-specific logic to run as part of the processing pipeline. We should at a minimum define a module API. This would allow a provider to build custom ztunnel binaries with their modules wired in.
We should also consider supporting dynamic extension (with WASM, for example). There are a lot of advantages here, such as simplifying upgrades.

Not only for L7, but maybe for custom auth, protocol extension, etc.


File uploader

Feature:

Add Drag & Drop Zone for the Upload page

Add bars to preview or remove files to upload

Refactor:

Move some code to the FileUploader component and refactor

Close #44 since this pr is based on that and go further.

Is it ready to be merged? Or you want to make more changes.


Change name to Personal-Voice-Assistant

The current name is Personal-Voice-Assistent, which I think is a typo.

Do long links to a renamed project work?

I don't think so.


Update 1D block converter to prevent negative area components.

Description

The HexComponentsToCylConverter class is updated in this to properly handle and check for
negative area components after the conversion has occurred. This is a scenario that was previously
not handled and can occur when the user implements a block design in the blueprints where
two solid components are connected with a "gap-like" component and then have overlaps due
to thermal expansion. This "gap-like" component can be named anything and can either have
Void or some Liquid material type. Void components explicitly named "gap" are already handled
correctly, but that logic was not sufficient to also handle negative area components in edge modeling
cases.

Checklist

[x] The code is understandable and maintainable to people beyond the author.
[x] Tests have been added/updated to verify that the new or changed code works.
[x] There is no commented out code in this PR.
[x] The commit message follows good practices.
[x] All docstrings are still up-to-date with these changes.

If user exposed functionality was added/changed:

[x] Documentation added/updated in the doc folder.
[x] New or updated dependencies have been added to setup.py.

Hi @john-science - I added a unit test to confirm the behavior of treating negative area components on the 1D conversion process.