Issue #720. The addition of the constant to OAuth2Exception.java is i…

…ffy, but UnauthorizedUserException has a comment which makes it clear it isn't in the spec

@jgdef Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@jgdef As mentioned, unauthorized_user is not a valid OAuth 2.0 error code as per spec, so we cannot accept this PR.


cannot navigate the app

Expected behavior
I expect to navigate between image catalog and container info
I expect 'show tab bar' to show something
Actual behavior
I have no way to navigate between image-catalog and container-view
the view tab bar option shows only a small line
Information about the Issue
Steps to reproduce the behavior

from the whale toolbar menu choose "open kitematic"

see containers on the left and app-search on the right

click a container on the left

no way to navigate back to app-search

choose view -> show tab bar

notice the only change is a thin line.

@dearfrankg you can navigate back to the app-search by clicking on New
It's assumed you're trying to create a "New" container and thus becomes the default action.

Thanks


add a way to get rpc method http path

Feature Request
Crates
tonic-build
Motivation
I define an rpc service and some methods need timeout in 3s, some others timeout 10s, though I can use the tokio::time::timeout to do this job, but it may codes complex, so I try to do this with a middleware: it wraps the Channel and also implements the Service, but it will check the http path, if the path equals the 3s methods' path, it will return a 3s timeout future, others will return 10s timeout future

Proposal
when tonic-build generate the .rs files, also generate some const &str which map to the rpc methods' path, for example I define a rpc
package proto;

service S {
    rpc Hello(Req) returns (Resp);
}

the tonic-build will generate a cosnt &str like pub const proto_rpc_Hello: &str = "/proto.rpc/Hello"

Alternatives
without this feature, I still can write the middleware and compare the path with hardcode str, but I don't think it is a good idea.

I'm not quite sure how a const &str helps here. Changing the path would change the name of the constant and be a breaking change for any clients there might be. Why isn't a tower middleware sufficient?

so we need a better way to define the const str…

Sorry but I still don’t quite understand what the string is useful for. Can you show some example code where it’s used?

https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=d4aa787b2f8d72dad1e1646409e72d63
the middleware saves the HashSet to check so we can check if the path should set a timeout, but now I don't have a good way to get the grpc method's http path to store it into the HashSet.
If the generated .rs file defines something the let me get the grpc method's http path easily, I won't need to read the generated .rs file to find out what the http path is

I don't think this is really the correct way to go about it. This adds runtime overhead (via the mutex/synchronization) where adding the timeout at the callside on the future provides a static way to configure the timeouts. I also am not a huge fan of exposing more inner details of how the h2 -> gRPC protocol works (including full path etc). Currently, behind a trait we expose the service name because its required to provide a basic router which imo is a very important feature.

Think I'm going to close this for now. A tower middleware that matches on the request path and picks an appropriate timeout is probably a reasonable way to handle this. You're welcome to ask further questions in our Discord if you need more help.


An initiallization issue

Hi again (:
I've found a small problem in the current implementation of the initiallization of the RetNetDecoder class. Specifically, to build a multi-layered model, this class uses deepcopy to copy the single RetNetDecoderLayer object it recieves as input. This copy leads to the following problems:

The parameters of the layers are not I.I.D.
Consequently, the "lottery ticket hypothesis" does not apply (at least there is no established evidence for this phenomena in the non I.I.D. case).

It's not a very serious issue, but I think it's worth fixing. I would be happy to implement a solution. I wanted to discuss which design would be preferred here:
One possible solution could be to change RetNetDecoder.__init__ to get a list of layer objects (initiallized externally).
Alternatively, it is also possible to store the arguments of the layer as properties and initiallize the new layers based on the properties of the given layer.
Another possible solution could be to define a configuration object with which a RetNetDecoderLayer object is initiallized, and pass an instance of it to RetNetDecoder.__init__ instead of an actual layer object.
There may be other solutions as well. Which one do you think would be ideal here? Do you have other solution ideas?
Thanks!

Hey @leor-c!  Wanted to let you know I see this, and will try to look at it soon.  Sorry, I'm a bit swamped with other things this week. 😅


SonarCloud

Duplicates

[X] I have searched the existing issues

Summary 💡
Need to put in place SonarCloud project so that use it in our pipelines
Free for all open-source projects as stated in their site
Why is good to have sonar cloud ?

Static analysis with up to date best-practices and vulnerabilities in our code
Coverage report on new code to ensure all new code generate integrates tests
Automatic PullRequest decorations to enable / block them

What is expected of this request ?

A project in sonar cloud is created
The organization / projectkey / SONAR_TOKEN variables are set as pipeline variables in this github repo

Examples 🌈
No response
Motivation 🔦
Ensuring quality of the code provided matches standards.
Ensuring that new code does not introduce known vulnerabilities.

SONAR_TOKEN added to repo secrets.
Here is next steps from them:
.github/workflows/build.yml:
name: Build
on:
  push:
    branches:
      - main
  pull_request:
    types: [opened, synchronize, reopened]
jobs:
  sonarcloud:
    name: SonarCloud
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0  # Shallow clones should be disabled for a better relevancy of analysis
      - name: SonarCloud Scan
        uses: SonarSource/sonarcloud-github-action@master
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}  # Needed to get PR information, if any
          SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}

sonar-project.properties
sonar.projectKey=softflow24_data-river
sonar.organization=softflow24

# This is the name and version displayed in the SonarCloud UI.
#sonar.projectName=data-river
#sonar.projectVersion=1.0

# Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows.
#sonar.sources=.

# Encoding of the source code. Default is default system encoding
#sonar.sourceEncoding=UTF-8

I will take care into integrating sonar with the pipelines. Tahnks @iploooox

Seems like this got stuck, also i added the default sonar settings for a bit but that is way to strict settings for me to want it in the pipeline. So this here escalated to first we need to setup rules of scanning as it keep of flagging Math.random as weak security when it's used for animation of landing page.

@c0rtexR you can maybe disable it from the pipeline ( i didnt know it had a automatic check on github )
In azure devops where i work, you need to set it manually in the pipeline, so i didn't expect to start bothering people until the rules are decided etc ◡̈

You most likely can I just didnt have time for it 🙂


fix: use correct rust-analyzer download URL on Windows

Closes #144.

This downloads and extracts rust-analyzer.exe to the C:\Users\%user%\AppData\Local\Sublime Text\Package Storage\LSP-rust-analyzer folder:

Thanks


Update/Command: Internal code usage in providers

If provider needs to customize the command generated then overriding IRelationalCommandBuilder to generate a difference RelationalCommand requires access to IndentedStringBuilder (part of interface contract). Further Provider also has to implement IRelationalParameterBuilder. Relational Implementation of it is internal. RelationalCommand is also internal so provider cannot reuse code.
Further providers are also using log messages in custom RelationalCommand to log command start/end/error. Transaction start/commit/error/rollback/Use
Some providers are using ISingletonUpdateSqlGenerator which is internal.

Command

~IndentedStringBuilder~ No longer needed
~RelationalParameterBuilder~ Removed
~RelationalCommand~ Public
~Logger.CommandExecuting/Executed/Error log mssages~ Public
~TransactionLogger.TransactionStarted/Used/Committed/Error/Rolledback~ Public

Update

~ISingletonUpdateSqlGenerator~ Removed


Distributed Cache

Clear and concise description of the problem
I saw a somewhat related concern discussed in #2155 but want to expand the capability a bit more.
The main idea is to cache some specified files or directories after a step completes. Then, any subsequent step (or that same step in a subsequent pipeline run) gets those files and directories loaded back from the cache before running that step.
We can kind of already do this as volumes, but that only works if the pipeline is pinned to a single machine.
We need a machine-independent way of specifying the cache contents and then use a centralized cache shared between runners.
Suggested solution
One approach might be to steal the feature from GitLab.

https://docs.gitlab.com/runner/configuration/speed_up_job_execution.html#use-a-distributed-cache
https://docs.gitlab.com/ee/ci/yaml/#cache

Alternative
No response
Additional context
No response
Validations

[X] Checked that the feature isn't part of the next version already [https://woodpecker-ci.org/faq#which-version-of-woodpecker-should-i-use]
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

Sound similar to those suggestions:

https://github.com/woodpecker-ci/woodpecker/discussions/2295#discussioncomment-6895751
https://github.com/woodpecker-ci/woodpecker/discussions/2272
https://github.com/woodpecker-ci/woodpecker/discussions/2296

We can kind of already do this as volumes, but that only works if the pipeline is pinned to a single machine.

Could you add that requirement to the discussion

Thanks for pointing me to the discussions. It seems that the point about volumes and their availability for other agents has already been covered so I have nothing more to add there.


[firebase_messaging]: Double Notifications in Firebase onMessage Listener

Is there an existing issue for this?

[X] I have searched the existing issues.

Which plugins are affected?
Messaging
Which platforms are affected?
iOS
Description
I’m experiencing an issue where double notifications are being triggered in my Flutter app when using Firebase Cloud Messaging (FCM). This happens when handling the FirebaseMessaging.onMessage listener. Specifically, the issue occurs in the following scenario:
1 - Foreground: When the app is open, I’m manually displaying the notification using onMessage. However, the notification is being shown twice.
2 - Background: When the app is in the background, only one notification is shown, as expected.
my code :
final Set<String> hiddenChats = {};
class NotificationFCMUtils {
  Future init() async {
    try {
      await FirebaseMessaging.instance.requestPermission();
      await FirebaseMessaging.instance.subscribeToTopic("xx");
      await FirebaseMessaging.instance.subscribeToTopic("xx");
    } catch (e) {
      //   print(e);
    }
    FirebaseMessaging.onMessage.listen((RemoteMessage message) {
      final String? type = message.data['type'] ?? "";
      final String? id = message.data['id'] ?? "0";
      final RemoteNotification? notification = message.notification;
      if (notification != null) {
        locator.get<LocalNotificationsManager>().showNotification(
              title: message.notification?.title,
              body: message.notification?.body,
              payLoad: type ?? "no",
              id: int.parse(id!),
            );
      }
    });
  }
  Future onMessageOpenedApp() async {
    try {
      RemoteMessage? initialMessage = await FirebaseMessaging.instance.getInitialMessage();
      if (initialMessage != null) {
        final String? type = initialMessage.data['type'] ?? "";
        final String? id = initialMessage.data['id'] ?? "0";
        move(id: id, type: type);
      }
      FirebaseMessaging.onMessageOpenedApp.listen((RemoteMessage message) async {
        final String? type = message.data['type'] ?? "";
        final String? id = message.data['id'] ?? "0";
        move(id: id, type: type);
      });
    } catch (e) {
      throw Exception(e.toString());
    }
  }}

Reproducing the issue
1.	Implement FirebaseMessaging.onMessage.listen((RemoteMessage message) {...}).
2.	Send a notification while the app is in the foreground.
3.	Observe that the notification is displayed twice.

Firebase Core version
3.6.0
Flutter Version
3.24.1
Relevant Log Output
No response
Flutter dependencies

Expand Flutter dependencies snippet

Replace this line with the contents of your `flutter pub deps -- --style=compact`.

Additional context and comments
firebase_core: ^3.6.0
firebase_messaging: ^15.1.3

I am experiencing the same issue on iOS 18.1 devices (not sure about 18.0), but it works fine on devices using iOS versions below 18.

Duplicate of: 13366


Update ConfigResponse to return migrate admin

Closes #80.

Why does query updates contract's state? What's the reason behind it?

Just to report accurate info. If a query is called before any function that updates state, the migration admin will not be there yet.

Thanks.


The requested module ...hast-util-whitespace... does not provide an export named 'whitespace'

Versions

nuxt: ^3.12.4
@nuxtjs/prismic: ^3.3.2
node: 20.5.1

Reproduction
https://stackblitz.com/edit/nuxt-starter-rxtw93
https://stackblitz.com/github/nuxt-modules/prismic/tree/master/examples/minimal?file=pages%2Findex.vue -> Your starter is broken as well.

Steps to reproduce
When starting the Nuxt's environment via yarn dev, the server shows a bunch of warnings, and ultimately errors out:
[nuxt] [request error] [unhandled] [500] The requested module './../_node_modules/hast-util-whitespace/lib/index.js' does not provide an export named 'whitespace'
  at ModuleJob._instantiate (node:internal/modules/esm/module_job:122:21)
  at async ModuleJob.run (node:internal/modules/esm/module_job:188:5)
  at async DefaultModuleLoader.import (node:internal/modules/esm/loader:228:24)
  at async ViteNodeRunner.interopedImport (./node_modules/vite-node/dist/client.mjs:421:28)
  at async ViteNodeRunner.directRequest (./node_modules/vite-node/dist/client.mjs:280:24)
  at async ViteNodeRunner.cachedRequest (./node_modules/vite-node/dist/client.mjs:206:14)
  at async ViteNodeRunner.dependencyRequest (./node_modules/vite-node/dist/client.mjs:259:12)
  at async ./node_modules/@nuxtjs/prismic/dist/runtime/plugin.js:8:31
  at async ViteNodeRunner.runModule (./node_modules/vite-node/dist/client.mjs:399:5)
  at async ViteNodeRunner.directRequest (./node_modules/vite-node/dist/client.mjs:381:5)

What is Expected?
That Nuxt starts normally.
What is actually happening?
Nuxt is erroring out. 😭

Digging a little bit more, I think the bug was introduced on 7.7.0. When adding some of the hast dependencies.
If I add "@prismicio/client": "7.6.0" to my resolutions, nuxt starts normally.

Hi @MarioC3, thanks! I'll have a prompt look into it.
Indeed, for now pinning the dependency work as a temporary fix. I'll let you know when we fix it for good (hopefully today)

Hi there,
Once again, thank you so much for reporting this issue and trying out the latest version of our kit!
This should now be fixed in @prismicio/client v7.7.4, update with:
npm update @prismicio/client

I'm gonna close this issue as everything checked in our QA process. If you still experience the issue with the latest version, you're very welcome to reopen this issue!
Thanks again 🙏


Add git line for iffy data files to monthly bash script

We need to add a line to the monthly pipeline that backs up the latest iffy domains file to GitHub. I think the below will work but we will need to do some testing.
git add data/iffy_files/*; git commit -m 'add latest iffy file; git push

Not sure if this is better to add directly after the iffy list has been downloaded or at the end of the pipeline... 🤔

NOTE: We may want to make the above more specific. Right now it will add anything that is in there, which is a bit of overkill. We could instead be more specific about the file name. However, this would require getting the date right which would take some more effort.

I think it should be fine to add all.
The script has been tested. Added to the end of the pipeline so it won't affect other processes.


Interstitial ad not showing

@EddyVerbruggen sir i have added admob plugin.
create banner is working fine. but interstitial ad not showing.  i have checked ad units properly. no mistake in ad units. please guide where i did a mistake.
my package:

{
  "nativescript": {
    "id": "org.nativescript.adstest",
    "tns-ios": {
      "version": "5.2.0"
    },
    "tns-android": {
      "version": "5.2.1"
    }
  },
  "description": "NativeScript Application",
  "license": "SEE LICENSE IN ",
  "repository": "",
  "dependencies": {
    "@angular/animations": "~7.2.0",
    "@angular/common": "~7.2.0",
    "@angular/compiler": "~7.2.0",
    "@angular/core": "~7.2.0",
    "@angular/forms": "~7.2.0",
    "@angular/http": "~7.2.0",
    "@angular/platform-browser": "~7.2.0",
    "@angular/platform-browser-dynamic": "~7.2.0",
    "@angular/router": "~7.2.0",
    "nativescript-admob": "^3.3.2",
    "nativescript-angular": "~7.2.1",
    "nativescript-theme-core": "~1.0.4",
    "reflect-metadata": "~0.1.12",
    "rxjs": "~6.3.0",
    "tns-core-modules": "~5.2.0",
    "zone.js": "~0.8.26"
  },
  "devDependencies": {
    "@angular/compiler-cli": "~7.2.0",
    "@nativescript/schematics": "~0.5.0",
    "@ngtools/webpack": "~7.2.0",
    "nativescript-dev-typescript": "~0.8.0",
    "nativescript-dev-webpack": "~0.20.0"
  },
  "gitHead": "f548ec926e75201ab1b7c4a3a7ceefe7a4db15af",
  "readme": "NativeScript Application"
}

**test.component.ts **

import { createBanner,showInterstitial, preloadInterstitial  } from "nativescript-admob";
----other stuff----
-----
private androidBannerId: string = "ca-app-pub-xxx";
private androidInterstitialId: string = "ca-app-pub-xxxx";
private androidVideoRewardId: string = "ca-app-pub-xxxxx";

createbanner_method(){
        createBanner({
                              // if this 'view' property is not set, the banner is overlayed on the current top most view
                              // view: ..,
                              testing: false, // set to false to get real banners
                              size: admob.AD_SIZE.SMART_BANNER, // anything in admob.AD_SIZE, like admob.AD_SIZE.SMART_BANNER
                              iosBannerId: "ca-app-pub-XXXXXX/YYYYYY", // add your own
                              androidBannerId: this.androidBannerId, // add your own
                              // Android automatically adds the connected device as test device with testing:true, iOS does not
                              iosTestDeviceIds: ["yourTestDeviceUDIDs", "canBeAddedHere"],
                              margins: {
                                // if both are set, top wins
                                //top: 10
                                bottom: 0
                              },
                              keywords: []  // add keywords for ad targeting
                            }).then(
                                function() {
                                  console.log("admob createBanner done");
                                },
                                function(error) {
                                  console.log("admob createBanner error: " + error);
                             }
                       )
      }
      preloadInter_method(){
              preloadInterstitial({
                testing: false,
                iosInterstitialId: "ca-app-pub-XXXXXX/YYYYY2", // add your own
                androidInterstitialId: this.androidInterstitialId, // add your own
                // Android automatically adds the connected device as test device with testing:true, iOS does not
                iosTestDeviceIds: ["ce97330130c9047ce0d4430d37d713b2"],
                keywords: [], // add keywords for ad targeting
                onAdClosed: function () { console.log("interstitial closed") }
              }).then(
                  function() {
                    console.log("interstitial preloaded - you can now call 'showInterstitial' whenever you're ready to do so");
                  },
                  function(error) {
                    console.log("admob preloadInterstitial error: " + error);
                  }
            )
      }
      showInter_method(){
        showInterstitial().then(
          function() {
            // this will resolve almost immediately, and the interstitial is shown without a delay because it was already loaded
            console.log("interstitial showing");

          },
          function(error) {
            console.log("admob showInterstitial error: " + error);
          }
    )
      }

test.component.html:

 <StackLayout >
             <Button text="create banner" (tap)="createbanner_method()"></Button>
             <Button text="load inter" (tap)="preloadInter_method()"></Button>
             <Button text="show inter" (tap)="showInter_method()"></Button>
   </StackLayout>

Output i am getting:

admob createBanner done  // banner ad showing

onAdFailedToLoad: 3
admob preloadInterstitial error: 3

Please help i really stuck. thanks in advance

Does the demo app's interstitial work?

i did not check the demo app

OK, I'll wait for you to check that out then.

ok thank you sir, i will back to you after checking the demo app

sir no luck. i have run demo app. In testing mode, working fine.
but in real time (testing:false) not working
showing Error preloading interstitial : 3

Did you Google that error?

I don't know what i did mistake.
Steps i did:
Step1: Deleted node modules folder and run "npm install"
Step2: I have removed and added android platform again.
In emulator ads are not showing sometimes. But Real mobile device banners ads, intersitial ads showing properly.
Finally problem solved.
@EddyVerbruggen sir, my device hangs up to 3 secs after intersitial ad. can you suggest when this type of issue occurs??


Typo fix in Android Example (gradle)

It seems like the t is a mistake, although it may be a feature which I'm unfamiliar with.

Can one of the admins verify this patch?

@eerwitt Correct, that was an accidental keypress just prior to submit. Thanks for the catch!


KDM improvements

[ ]  Create process for branching and rebasing for emergency releases or frequent patch releases
[ ]  Automate process if possible to rebase dev branches automatically after release from special dev branches
[ ]  Automate process to avoid updating codegen KDM branch in RKE for each release
[ ]  Create test checklist for validating changes
[ ]  Create process template for updates going out with each release (Easy access to list of issues getting fixed as part of release)
[ ]  Create release note template for each KDM release, with a proper naming convention (KDM release tags for each release on GH)
[x]  Update README.md / docs
[x]  Refactor code into more folders for readability
[ ]  Look into performance issues if any around releasing templates out of band vs bundled with RKE
[ ]  Helm templates vs improving templates scope for faster updates

Closing as stale


Need consider use case on multiple connections for 2 device

SPDM 1.2 spec define:
2 device may only have one physical channel, but they can have multiple virtual SPDM connections.
Each virtual SPDM connection should have one dedicate spdm_context.
spdm-emu can emulate such scenario.

REF: https://github.com/DMTF/spdm-dump/issues/15


[Bug]: Edge Middleware - TypeError: error sending request for url

Summary
Hey just came across an error with my site using Middleware on the Edge (the error redirects to a netlify error page away from the main site). I can't seem to reproduce but want to make a record of it in case it occurs again.
Edge Function log:
9:55:48 AM: [next_middleware] TypeError: error sending request for url (https://dev--[mysite].netlify.app/test): connection error: connection reset
    at async mainFetch (deno:ext/fetch/26_fetch.js:287:14)
    at async fetch (deno:ext/fetch/26_fetch.js:497:9)
    at async FunctionChain.fetchOrigin (netlify:bundle-combined:978:21)
    at async addMiddlewareHeaders (netlify:bundle-combined:18162:17)
    at async FunctionChain.runFunction (netlify:bundle-combined:1060:30)
    at async FunctionChain.run (netlify:bundle-combined:1047:26)
    at async handleRequest (netlify:bundle-combined:1097:26)
    at async Server.#respond (netlify:bundle-combined:351:24)

Steps to reproduce
Unable to reproduce.
Plugin version
4.12.2
Middleware function
import { NextResponse } from "next/server";

const TESTS = {
  homepage: {
    page: "/",
    cookie: "ab-homepage",
    buckets: ["original", "test"],
  },
};

export default function middleware(req) {
  const { pathname } = req.nextUrl;

  if (pathname === "/") {
    let test = TESTS["homepage"];

    let bucket = req.cookies.get(test.cookie);
    let reqHasBucket = new Boolean(bucket);

    if (!bucket || !test.buckets.includes(bucket)) {
      bucket = getBucket(test.buckets);
      reqHasBucket = false;
    }

    let url = req.nextUrl.clone();

    if (bucket !== "original") {
      url.pathname = `/${bucket}/`;
    }

    const res = NextResponse.rewrite(url);

    if (!reqHasBucket) {
      res.cookies.set(test.cookie, bucket);
    }

    return res;
  }
}

export const config = {
  matcher: ["/"],
};

export function getBucket(buckets) {
  let n = cryptoRandom() * 100;
  let percentage = 100 / buckets.length;
  return (
    buckets.find(() => {
      n -= percentage;
      return n <= 0;
    }) ?? buckets[0]
  );
}

function cryptoRandom() {
  return crypto.getRandomValues(new Uint32Array(1))[0] / (0xffffffff + 1);
}

Thank you for the report. If you cannot reproduce it, this seems like it was a transient network error, connecting to the origin. I'm going to close this for now, but please do report again if it recurs.


NodeJS SDK: convert response type from buffer to JSON object

Would be great to have this merged in!

This PR is from @wepayer

These changes are being redone in #12 .
Closing.


Distributed in-memory map-reduce for data analyzer

Adds class DistributedDataAnlyzer that implements a map-reduce on distributed memory.

instead of writing hundred/thousands of temp files as intermediate storage in the map/reduce as in DataAnalyzer, each node holds disjoints ordered subsets of pairs of (metric, sample id) as a distributed tensor.
Also removes the need to specify metric_dtypes as it's automatically inferred by the return of metric_function(data).
Removes the need to have a distributed file system where all nodes need to be able to write to: here only rank 0 does the writing.
Much faster than the original map-reduce based on writing and loading several temp files into the disk, requires less memory, no temp files, and is simpler.

How does it work

for each metric, the only results storage is metric_result as a list of (sample_id, metric_value) tuples.

metric_result is converted to a 2D tensor when whole dataset has been iterated.

sample_idx_dtype and metric_value_dtype are collected by an all_reduce(op=MIN) and MAX across the metric_result of all nodes.
each node holds a metric_result tensor of N samples as N x (metric, sample), sorted by metric, with different metric values across nodes. E.g.:

node 1 holds [ [1,20], [1, 30], [2,10], [2, 30]],  node 2 holds [ [3,10], [3, 20], [3,15], [3, 40]], and node 3 holds [ [4,20], [4, 30], [5,25], [5, 50]].
to convert the list [(metric,sample)] to a dict{ metric = [samples]} each node iterates only its own dataset, as dictionary keys do not overlap across nodes. In this case, node 1 builds { 1: [20, 30], 2: [10,30]},  node 2 builds { 3: [10, 20, 15, 40] }, and  node 3 holds { 4: [20, 30], 5: [25, 50]}.

To write the merged files: (1) rank 0 opens the file, (2) iteratively receives buffers of values, dict keys and dict values from other ranks and writes them, and (3) closes the file.

Future work
Ideally, one could take this and do the curriculum setup on-the-fly when calling deepspeed initialize, i.e. without writing/loading map-reduce files and without forcing the uses to call .map() and .reduce() beforehand. It takes less than 10 seconds so it's totally feasible.
References

file_write_ordered() implements a sequential shared write similar to MPI_File_write_ordered.  It is however adapted to communicate and write a list of tensors, instead of a single tensor. And it is also adapted to have only rank 0 writing to the file, instead of using a shared pointer.
dist_sample_sort() implements a distributed sample sort, as detailed here and illustrated below. The ranges in step 3 guarantee disjoint subsets of keys (metric values) across nodes.

@conglongli i made few changes, by adding full import paths (instead of relative) so that this file can be run as a standalone for testing. The code to output index_to_sample_percentile_merged was moved to a static function DataAnalyzer.output_index_to_sample_percentile to avoid having duplicate code.
The tests show that all .bin files match, and only {metric_name}_index_to_sample_percentile_merged.idx is identical, ie. {metric}_index_to_metric.idx,  {metric}_index_to_sample.idx and mod/{metric}_sample_to_metric.idx differ. I believe it's because they're written in different order and then merged, but that shouldn't be an issue.

@bm-synth Currently we don't have enough bandwidth to do a full review of this PR.

As a side not, ideally the user should only edit the config file to enable curriculum: this whole map+reduce should happen behind the scenes when you call deepspeed.initialize. The current map-reduce outputs one file per metric value and is infeasible for large datasets (takes too long to run, too many files, requires shared storage). So let me know if you need more documentation or a 1-to-1 explanation about this PR, so that we can decide how to proceed in improving this.

I'm approving it for now

Thank you. I'll use this exhaustively in the next couple of weeks and push fix PRs if needed.

There is one CI failed which I'm not sure why.

@conglongli this is also happening in other PRs, i think it's an issue on your CI.

There is one CI failed which I'm not sure why.

@conglongli this is also happening in other PRs, i think it's an issue on your CI.

Yeah we will investigate

There is one CI failed which I'm not sure why.

@conglongli this is also happening in other PRs, i think it's an issue on your CI.

Yeah we will investigate

This should be fixed now.


Nanobody generation, plddt

Hi, great work! I have questions about this models

I was initially planning to use abodybuilder2 for nanobody structure generation (Nanobodybuilder).

Would it be approapriate for me to use abodybuilder3 for nanobody structure generation compared to Nanobodybuilder in previous version? It seems that this model does not consider nanobody.

abodybuilder2 outputs does not contain plddt score (but error estimates), whereas this model contains plddt in b-factor position. Is that correct?

Thank you in advance for your response.

Thanks @sj584!
You are correct, ABB3 was not been trained on nanobodies. I would recommend using NanoBodyBuilder2 from ImmuneBuilder.
ABB3 used pLDDT scores for estimating prediction uncertainty, whereas ImmuneBuilder estimates uncertainty using an ensemble of models (see Section 4 of our manuscript).


Colcon Build issue

Some assistance please.I am unable to compile during colcon build, I keep getting the following issue. Trying to install with zed2i ubuntu 20 on jetson nano image.

Hey, I tried both a manual install and using the script. No luck. Any suggestions?

hey are you installing through the script?

Hi, Any update on this please? I am still struggling to get it installed. same error every time, I tried changing out as per info on google group, assistance will be greatly appreciated. Thank you

Thanks for posting this issue. Fixed this with https://github.com/linorobot/linorobot2/commit/2f6ee75f071028db8e49976bff4283a9b89906ee . $ROS_DISTRO branch on image_common has to be used to fix the issue.

Closing this for now


chore(master): release 1.4.5

:robot: I have created a release beep boop
1.4.5 (2023-04-18)
Miscellaneous

deps: update portainer/portainer-ce docker tag to v2.18.1 (25d1e30)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/wayofdev/docker-shared-services/releases/tag/v1.4.5 :sunflower:


Startup on Windows 10 doesn't draw titlebar

When running the latest nightly on Windows 10, Lapce doesn't draw the Window border/decorators correctly on startup.

Resizing the window in any way fixes the border.

I think this behavior has existed for a while, so it's not a recent regression.

Sorry, I might have used the wrong term. I believe it is the titlebar (see above pictures). The region with the "open folder" drop-down and Window min/max/close isn't visible.

Could you give output of $PSVersionTable from powershell?

PS C:\> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.19041.1682
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.1682
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

Do you mean that you don't have a Windows machine to test on, or it is not occurring on another Windows machine? I'll see what I can test out, though I do all my development on Linux at home. Was just filing the issue in case someone else has also run into it.

Do you mean that you don't have a Windows machine to test on, or it is not occurring on another Windows machine?

Thanks. Looks like it's not reproduced on another Windows 10(?) computer. I'll try and see if I can find some other candidates to test on.

Windows 10(?) computer.

Whole titlebar thing was done solely on my Windows 10. I don't have anything else (other than Win11 VM for testing)

Some additional system specs:
OS: Microsoft Windows 10 Pro
Version: 10.0.19044 Build 19044
System Model: Dell OptiPlex 7070
Processor: Intel(R) Core(TM) i5-9500 CPU @ 3.00GHz, 3000 Mhz, 6 Core(s), 6 Logical Processor(s)
Graphics: Intel(R) UHD Graphics 630
Graphics Driver Version: <IP_ADDRESS>64
It's definitely not always a problem on Windows. There must be something about my system exacerbating it.

I don't have this exact bug, but rather the title bar is offset from the top:

Hopefully you can see the hovering is offset too.
I further noticed that it may also be offset from the left?

Here is my system info
PS C:\> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.19041.1682
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.1682
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

Should this be a separate bug report?
Here's the log with RUST_LOG = debug, for a second only so as not to clutter with useless stuff.
https://pastebin.com/xAYwTTym
Nothing seems unusual, mostly lots of:
[INFO] lifecycle;
[INFO] paint;
[INFO] event;
[INFO] update;
[INFO] layout;

@seomwan, does everything return to normal behavior after resizing the window?

FYI, I was using release 0.2.0 Lapce-windows.msi
Just realized I didn't mention that anywhere.

@seomwan, If resizing/redrawing lapce doesn't resolve the display issue,  I suspect your issue is different.

This also happens to me:
> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.2.5
PSEdition                      Core
GitCommitId                    7.2.5
OS                             Microsoft Windows 10.0.19044
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

> Get-Winver

Name                           Value
----                           -----
DisplayVersion                 21H2
ProductName                    Windows 10 Enterprise
CurrentBuildNumber             19044
KeyName                        HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion
Version                        10.0.19044.0
VersionString                  Microsoft Windows NT 10.0.19044.0

Currently using a Lenovo Thinkpad X1, with Intel Xe integrated Graphics:

I too am having these "offsets" issues.

For anyone who has "black border", your issue is https://github.com/lapce/lapce/issues/1083
This issue (https://github.com/lapce/lapce/issues/1014) is about missing titlebar

@dflock, good call. I also have Intel drivers:

Can confirm that switching off custom title bars fixes this for me.

for me nothings work,

none of buttons work(open folder, ...), not even close

$PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.2.6
PSEdition                      Core
GitCommitId                    7.2.6
OS                             Microsoft Windows 10.0.19044
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

I don't what changed but the latest nightly works for me as expected.

I still have the issue with the latest nightly.

No driver updates from what I can see. Maybe I just got lucky :(

I have the same problem but with Windows 11 😕

@Hummel37, what graphics card and drivers do you have?

I also see it with an Intel i7-9750H/UHD630. If switch Lapce to the discrete Nvidia 2060mq card it doesn't happen.
Running latest source built from git right now.
Driver Details Up to date
Provider Intel Corporation
Version <IP_ADDRESS>1
Date 7/19/2022

Device Details
Adapter Compatibility Intel Corporation
Video Processor Intel® UHD Graphics Family

Name                           Value

PSVersion                      5.1.22000.832
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.22000.832
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

Any progress here? meet the same problem, and can be fixed by turning off custom titlebar or resize the window, quite annoying.

Any progress here? Meet the same problem, and can be fixed by turning off custom titlebar or resize the window, quite annoying.

no, if there will be any progress there will be comment about it

Maybe related:

The title bar appears with padding to the top. Clicking on the title bar elements has no effect, clicking the area above the title bar works. The click-handlers appear to be located at the correct location, but the visual elements of the title bar not.

Maybe related:
The title bar appears with padding to the top. Clicking on the title bar elements has no effect, clicking the area above the title bar works. The click-handlers appear to be located at the correct location, but the visual elements of the title bar not.

Not related, that's #1083


micro_speech example build fails with Mbed

Steps to reproduce
$ make -f tensorflow/lite/micro/tools/make/Makefile OPTIMIZED_KERNEL_DIR=cmsis_nn generate_micro_speech_mbed_project
$ cd tensorflow/lite/micro/tools/make/gen/linux_x86_64_default/prj/micro_speech/mbed/
$ mbed new .
$ mbed compile -m DISCO_F746NG -t GCC_ARM

Since patch #429 fails with following output:
Compile [ 56.3%]: main_functions.cc
[Fatal Error] main_functions.cc@22,10: tensorflow/lite/micro/examples/micro_speech/micro_speech_model_data.h: No such file or directory
[ERROR] ./tensorflow/lite/micro/examples/micro_speech/main_functions.cc:22:10: fatal error: tensorflow/lite/micro/examples/micro_speech/micro_speech_model_data.h: No such file or directory
22 | #include "tensorflow/lite/micro/examples/micro_speech/micro_speech_model_data.h"
   |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The referenced file seems  to be missing in tensorflow/lite/micro/examples/micro_speech/. Possibly related to #423 #458

Same issue, can't find the .h file

I see... this was an unintended side-effect of my recent change. In the short term, if you cp tensorflow/lite/micro/tools/make/gen/linux_x86_64_default/genfiles/tensorflow/lite/micro/examples/micro_speech/micro_speech_model_data.* tensorflow/lite/micro/tools/make/gen/linux_x86_64_default/prj/micro_speech/mbed/tensorflow/lite/micro/examples/micro_speech/ it should prevent the missing file error.
We are switching from Makefile-based project generation to the python script tensorflow/lite/micro/tools/project_generation/create_tflm_tree.py so you could try using this script instead.

@mansnils fyi

As there is a workaround I think we can close this.

I was successfully able to use create_tflm_tree.py as follows:
python3 tensorflow/lite/micro/tools/project_generation/create_tflm_tree.py  --makefile_options OPTIMIZED_KERNEL_DIR=cmsis_nn --examples micro_speech <output_dir>
cd <output_dir>
mbed new .
mbed compile -m DISCO_F746NG -t GCC_ARM -D CMSIS_NN

Note: I had to:
cd mbed-os && mbed update master


@task_param() decorator to pass command line parameters to task generators and @create_after for class defined tasks

As described in #311 this decorator can be used to pass command line arguments to the task generator. The same parameter definitions are also passed to the generated tasks.
This branch also includes pull request #307 which implements @create_after() semantics for tasks defined in a class. As discussed on #307 @schettino72 asked to see code for #311 as well. If this PR is merged then #307 will be closed.
Quick implementation to see if this is what was intended by the issue and to open discussion.
Work to be done:

[x] actually do the parsing!
[x] auto compatibility
[x] docs since this is a new user-facing feature
[x] tests

Ensure that a task parameter can be passed to the task generator.
Ensure that a task generator parameter can be set from the command line.
Ensure that a task parameter can be passed to the task generator defined as a class method.

Demo:
$ cat dodo.py
from doit import create_after, task_param

def task_early():
    return {"actions": ["echo early"], "verbosity": 2}

@create_after(executed="early")
@task_param([{"name": "foo", "default": "bar", "long": "foo"}])
def task_use_param_create_after(foo):
    print(f'Task parameter foo={foo} available at task definition time.')

    def runit():
        print(f"param foo={foo}")

    return {"actions": [runit], "verbosity": 2}

@task_param([{"name": "foo", "default": "bar", "long": "foo"}])
def task_use_param(foo):
    print(f'Task parameter foo={foo} available at task definition time.')

    def runit():
        print(f"param foo={foo}")

    return {"actions": [runit], "verbosity": 2}

@task_param([{"name": "howmany", "default": 3, "type": int, "long": "howmany"}])
def task_subtasks(howmany):
    for i in range(howmany):
        yield {"name": i, "actions": [f"echo I can count to {howmany}: {i}"]}

def do_work(foo):
    print(f'Argument foo={foo}')

@task_param([{"name": "foo", "default": "bar", "long": "foo"}])
def task_use_in_action(foo):
    print(f'When the task action runs it will print {foo}')

    return {
        'actions': [do_work],
        'verbosity': 2
    }

@task_param([{'name': 'num_tasks', 'default': 1, 'type': int, 'long': 'num_tasks'}])
def task_subtask(num_tasks):
    print(f'Generating {num_tasks} subtasks')

    def work(task_num, num_tasks):
        print(f'Task {task_num+1} of {num_tasks}')

    for i in range(0, num_tasks):
        yield {
            'name': f'task{i}',
            'actions': [(work, (), {'task_num': i})],
            'verbosity': 2
        }

$ cat doit.cfg
[task:use_param_create_after]
    foo = from_doit_cfg

$ doit
Task parameter foo=bar available at task definition time.
When the task action runs it will print bar
Generating 1 subtasks
.  early
early
Task parameter foo=bar available at task definition time.
.  use_param_create_after
param foo=bar
.  use_param
param foo=bar
.  subtasks:0
.  subtasks:1
.  subtasks:2
.  use_in_action
Argument foo=bar
.  subtask:task0
Task 1 of 1

$ doit info use_param
Task parameter foo=bar available at task definition time.
Task parameter foo=bar available at task definition time.
When the task action runs it will print bar
Generating 1 subtasks

use_param

status     : run
 * The task has no dependencies.

params     :
 - {'name': 'foo', 'default': 'bar', 'long': 'foo'}

verbosity  : 2

$ doit info use_param_create_after
Task parameter foo=bar available at task definition time.
Task parameter foo=bar available at task definition time.
When the task action runs it will print bar
Generating 1 subtasks

use_param_create_after

status     : run
 * The task has no dependencies.

params     :
 - {'name': 'foo', 'default': 'bar', 'long': 'foo'}

verbosity  : 2

Task parameters defined with @task_param() are passed down to the task and any subtasks right now. This could be a feature or a bug? What do you think?

hmm... well, I've got a bug buried down there coping with @create_after tasks. I'll fix that soon.

I believe this is ready to merge. I'm using this locally with my own doit-based automations and nikola. So far, so good.

Hmmm.... I've found a wrinkle and I think I'd like input on what the best behavior would be:
Given dodo.py:
from doit import task_param

DRYRUN = {
    'name': 'dry_run',
    'short': 'n',
    'long': 'dry-run',
    'type': bool,
    'default': False,
    'help': 'Do not commit database changes.',
}

@task_param([DRYRUN])
def task_test(dry_run):
    def _subtask(i, dry_run):
        print(f'subtask {i}, dry_run=={dry_run}')

    print(f'Task creation, dry_run == {dry_run}')
    yield {'name': None, 'verbosity': 2}

    for i in range(1):
        yield {
            'name': f'subtask_{i}',
            'actions': [(_subtask, (i,), {})],
            'verbosity': 2,
        }

Run:
$ doit test -n
Task creation, dry_run == True
.  test:subtask_0
subtask 0, dry_run==False

The parameter definition was propagated to the subtask but not the value. The task dry_run value can be pushed to the subtask in code, of course.
Two options:

Keep the current behavior. The @task_param definitions propagate to subtasks but not the runtime value.
Propagate the runtime value of the param to subtasks.

Option 2 seems "least surprising". Opinions?

@schettino72 ^ just checking in to see if you had comments on the above. Thanks.

@rbdixon sorry for very long delay. I should be able to merge this and release and next few weeks.

Task parameters defined with @task_param() are passed down to the task and any subtasks right now. This could be a feature or a bug? What do you think?

I dont think it desirable to pass to subtasks. And since params is a simple dict it would be trivial to explicitly pass it into subtasks.
But I think it should be part of base task. So it is documented by help command.
Of course things get a bit complicated if base are explicitly defined. For those I would just not bother unless explicitly set.

Thanks for the comment. I'll work on this in January to:

Prevent passing @task_param() definitions down to subtasks.
Look at how to get @task_param() definitions included in the task help output.

@rbdixon could youp please rebase the PR to latest master?
some commits already merged. its a bit messy...

New branch rebased to master implementing only the #311. Still need to implement below as discussed in December:

Prevent passing @task_param() definitions down to subtasks.
Look at how to get @task_param() definitions included in the task help output.

Subtasks now no longer "inherit" @task_param() defined command line arguments from the parent task.
There is a check which confirms that there are no duplicated names in the task parameter definitions. Just a useful check.
@task_param() defined parameters are include in info command output:

$ doit info subtask
Task parameter foo=bar available at task definition time.
Task parameter foo=bar available at task definition time.
When the task action runs it will print bar
Generating 1 subtasks

subtask

status     : run
 * The task has no dependencies.

task_dep   :
 - subtask:task0

params     :
 - {'name': 'num_tasks', 'default': 1, 'type': <class 'int'>, 'long': 'num_tasks'}

The CI build failures are due to other factors present in master.

I believe this final version satisfies all requests and comments and is ready to merge to master.

@schettino72 Any further work required for this PR?

sorry, i will have time only in march (hopefully)

That’s OK... I understand. I appreciate your dedication to doit!

Bump.... would love to see this merged. Thanks.

I have merged this. I did some clean-up and fixes but still not complete.

Getting the command line arguments is implemented in very naive way and works only for the first task.
Using Task params on dict data together with task_param does not work as there is no way to parse when you have not read task dict.
I will rename task_param to task_params


v-model modifier on input ruins html

Overview of the problem
Oruga version: [0.6.0]
Vuejs version: [3.2.47]
OS/Browser:
Description
trim modifier adds ugly modelmodifiers="[object Object]" to the final html:
<o-input v-model.trim="test_model.property" name="test_name" />

@AuthorProxy I think v-model modifiers only work when used directly on an html input element. However, oruga components are just normal vue components. I don't know if v-model modifiers are also usable for components v-model. Do you have an example?

I don't think that the built-in v-model modifiers automatically work on anything but plain HTML elements, but it is possible to get the set of modifiers used on a custom component.


Main ← Test for v0.0.25

Codecov Report
Base: 59.32% // Head: 61.37% // Increases project coverage by +2.04% :tada:

Coverage data is based on head (4e2bf6c) compared to base (e6c0de0).
Patch coverage: 72.10% of modified lines in pull request are covered.

:exclamation: Current head 4e2bf6c differs from pull request most recent head b596d77. Consider uploading reports for the commit b596d77 to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #680      +/-   ##
==========================================
+ Coverage   59.32%   61.37%   +2.04%
==========================================
  Files          29       29
  Lines        3044     3135      +91
==========================================
+ Hits         1806     1924     +118
+ Misses       1238     1211      -27

Impacted Files
Coverage Δ

macrosynergy/download/dataquery.py
32.87% <0.00%> (+0.11%)
:arrow_up:

macrosynergy/management/check_availability.py
46.55% <0.00%> (ø)

macrosynergy/panel/category_relations.py
34.43% <0.00%> (+0.79%)
:arrow_up:

macrosynergy/pnl/naive_pnl.py
55.21% <0.00%> (-1.75%)
:arrow_down:

macrosynergy/panel/view_timelines.py
81.52% <78.46%> (+67.72%)
:arrow_up:

macrosynergy/panel/historic_vol.py
95.45% <93.22%> (+0.85%)
:arrow_up:

macrosynergy/signal/target_positions.py
9.23% <0.00%> (-0.11%)
:arrow_down:

macrosynergy/panel/panel_calculator.py
98.87% <0.00%> (+1.12%)
:arrow_up:

macrosynergy/panel/make_relative_value.py
98.61% <0.00%> (+1.38%)
:arrow_up:

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

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


[PL-57304]: update aws hostname in docs

Thanks for contributing to the Harness Developer Hub! Our code owners will review your submission.
Description

Please describe your changes: update aws hostname in docs
Jira/GitHub Issue numbers (if any): PL-57304
Preview links/images (Internal contributors only): __________________

PR lifecycle
We aim to merge PRs within one week or less, but delays happen sometimes.
If your PR is open longer than two weeks without any human activity, please tag a code owner in a comment.
PRs must meet these requirements to be merged:

[ ] Successful preview build.
[ ] Code owner review.
[ ] No merge conflicts.
[ ] Release notes/new features docs: Feature/version released to at least one prod environment.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66edc904ae905e507b9e32e8--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66edc90e82cdde502df1ea9e--harness-developer.netlify.app

When the user wants to browse the public registry, visiting https://public.ecr.aws/harness results in
{"errors":[{"code":"DENIED","message":"Not Authorized"}]}

but https://gallery.ecr.aws/ works.
For this statement, "You can find Harness CI images on Harness ECR public...", I believe we can keep https://gallery.ecr.aws/ since https://public.ecr.aws/ redirects to https://gallery.ecr.aws/
For docs on the registry URL "To pull Harness images from ECR ... then enter https://public.ecr.aws/harness for Docker Registry URL." we can s/gallery/public.
Waiting on Jeremy's response on the above.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66edd0791170335883bfa5d4--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://6710d8d906ed63008a86c8f3--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://671121afcb412a3f05e0c66f--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://67112216e46c884046d68b26--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://6711223c1a5d344c4d9cbc98--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://67112250bfb2cc4c6296d99c--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://6711229914d3e34e6e3cabb6--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://6711235026702e5185237e93--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://67112753e46c88488bd68894--harness-developer.netlify.app


Dubbo GSoC 2023 - Remove jprotoc in compiler

Dubbo supports the communication mode based on the gRPC protocol through Triple. For this reason, Dubbo has developed a compiling plug-in for proto files based on jprotoc. Due to the activeness of jprotoc, currently Dubbo compiler cannot run well on the latest protobuf version. Therefore, we need to consider implementing a new compiler with reference to gRPC.
https://issues.apache.org/jira/browse/DUBBO-111

Assignee me.

Hi, I am currently working on this proposal.
But I am curious, if only one proposal could be accepted for on issue?

Hi, I am currently working on this proposal. But I am curious, if only one proposal could be accepted for on issue?

One person can submit more that one proposal. One proposal can only be taken by only one person.

Excuse me, is there any limitation on the implementation? The function of dubbo is to achieve a similar parser. cc https://github.com/protocolbuffers/protobuf/blob/main/src/google/protobuf/compiler/parser.cc ? Just read the Proto file and get what's in it?

就像这个库做的事情一样吗 https://github.com/emicklei/proto

https://github.com/grpc/grpc-java/tree/master/compiler/src 和这个一样

https://github.com/grpc/grpc-java/tree/master/compiler/src 和这个一样

我理解的是否可以独立写一个程序在Proto语法层面解析出 proto文件里的 services、messages以及comment，而不依赖protoc 也可以承接这个提案


Fix checkstyle config.

mvn clean checkstyle:checkstyle was failing.
Error was: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:3.0.0:checkstyle (default-cli) on project commons-collections4: An error has occurred in Checkstyle report generation.: Failed during checkstyle execution: Failed during checkstyle configuration: unable to parse configuration stream: Property ${checkstyle.suppressions.file} has not been set -> [Help 1]

Coverage remained the same at 87.386% when pulling df3a7ef493a81441cdaac16b8c76fd4a0a782bc9 on sfuhrm:CheckStyleMaven into 949d74737327f114ae97a18f9bb4a4f5626b59a5 on apache:master.


Add Patient Tables

Create a table giving relevant info for each patient, including sensitive/resistant response, time to relapse, and other relevant de-identified data.

Any metadata can be added via the config app, and descriptions of each variable can now be added. If adding PHI, the app must be deployed in an appropriate context to protect this information according to applicable laws (HIPAA, GDPR, etc.).


Fixes #375. Assign environment via constructor.

Since the Mixlib::ShellOut doesn't have a setter for the environment attribute, passing the environment via constructor should fix it.

Rebased.


fix: changing piece on the kings square with chess.put()

Hello! I want to make a chessboard, where users can manually set the position they need and  thechess.put() and chess.remove() methods are superuseful for me. I found a tiny bug, which I can make work with small hack, but anyway it is confusing and will be nice to fix it.
Lets say I want manually swap white king's and white queen's positions.
const chess = new Chess()

const status1 = chess.put({ type: 'q', color: 'w' }, 'e1') // true
const status2 = chess.put({ type: 'k', color: 'w' }, 'd1') // false

but if I remove white king and only after then put queen and king it works without errors
const chess = new Chess()

chess.remove('e1')
const status1 = chess.put({ type: 'q', color: 'w' }, 'e1') // true
const status2 = chess.put({ type: 'k', color: 'w' }, 'd1') // true

I can provide more details if it is required. Thank you

Hi @Manukyanq, thanks for the PR!
I think I'm tracking the issue.  Essentially, if you overwrite the position of the king with any other piece, we need to set the _kings entry (for the overwritten king color) to EMPTY.  Could you add a comment to that section just to highlight the what's happening?  A one-liner is fine.
Thanks and good find!

Merged. Thanks again!


iirc, we've historically been hesitant to expand the .editorconfig as you have with a46096288e482a8313227dd9bd035d758a3128c5 because not all contributors use IntelliJ

iirc, we've historically been hesitant to expand the .editorconfig as you have with a46096288e482a8313227dd9bd035d758a3128c5 because not all contributors use IntelliJ

Originally posted by @Protonull in https://github.com/CivMC/CivModCore/issues/74#issuecomment-1160660221
The keys will count for intellij only if eclipse & co do not support them. But in either case, you can't expect people who work professionally with java to adapt the civmc code style for all their work, because civmc is to timid to adapt some changes to the editorconfig, that only impact, in the worst case, intellij users. I think editing the editorconfig and leaving eclipse & co useres where they were is perfectly acceptable in this case.

I cannot comment on the comment on the commit. So this goes here now.

We stan fragmentation :P Anyway, part of the problem with .editorconfig is that it's on by default and awkward to turn off, so editing a single line to fix a bug can cause the entire file to be reformatted, resulting in an absolutely massive diff. Github diffs mitigate this somewhat because you can see the changes within the line, but still. Even if Civ were to go ahead with a comprehensive .editorconfig, I'd suggest within the same commit or same PR that the entire project be reformatted with it.


Fix PEP8 formatting

Description
The pep8 checker has become more strict and complains (see travis CI):
$ flake8 pywps/
pywps/dependencies.py:10:1: F841 local variable 'err' is assigned to but never used
pywps/dependencies.py:15:1: F841 local variable 'err' is assigned to but never used
pywps/tests.py:76:20: W605 invalid escape sequence '\s'
pywps/tests.py:99:16: W605 invalid escape sequence '\s'
pywps/tests.py:109:16: W605 invalid escape sequence '\s'
pywps/tests.py:119:16: W605 invalid escape sequence '\s'
pywps/tests.py:126:16: W605 invalid escape sequence '\s'
pywps/app/Process.py:99:14: W606 'async' and 'await' are reserved keywords starting with Python 3.7
pywps/app/Process.py:113:22: W606 'async' and 'await' are reserved keywords starting with Python 3.7
pywps/app/Process.py:119:51: W606 'async' and 'await' are reserved keywords starting with Python 3.7
pywps/app/Process.py:141:32: W606 'async' and 'await' are reserved keywords starting with Python 3.7
pywps/app/Process.py:154:12: W606 'async' and 'await' are reserved keywords starting with Python 3.7
pywps/app/Process.py:260:21: W606 'async' and 'await' are reserved keywords starting with Python 3.7
pywps/app/Process.py:308:28: W504 line break after binary operator
pywps/app/Process.py:358:40: W504 line break after binary operator
pywps/app/Service.py:341:9: F841 local variable 'e' is assigned to but never used
pywps/inout/literaltypes.py:141:21: W504 line break after binary operator
The command "flake8 pywps/" exited with 1.

We need to skip the W606 'async' and 'await' check for Python 3.7. Needs to be fixed in issue #397.
Environment

operating system:
Python version: 2.7, 3.6
PyWPS version: 4.2
source/distribution
[ ] git clone
[ ] Debian
[ ] PyPI
[ ] zip/tar.gz
[ ] other (please specify):
web server
[ ] Apache/mod_wsgi
[ ] CGI
[ ] other (please specify):

Steps to Reproduce
Additional Information

fixed by PR #421.


Where do you put the theme folder in? Where do you put the theme.txt?

You just paste the entire lib folder into wherever you installed Processing (the same folder where the executable is).


Unable to download ghc during make due to network

Having really bad issues trying get through make build-all as system is unable to fully install ghc-8.4.2:

It seems to just hang. Is there a different CDN I can use to download the different versions?

Issues with stack CDN are responsibility of stack project, not HIE. Try posting issue here: https://github.com/commercialhaskell/stack.


IA-1897:  replace SearchFilter component

SearchFilter  was only used in OrgUnits, i removed the component and refactored SearchInput in bluesquare-components to handle text search errors and use InputComponent in OrgunitsFilters
Related JIRA tickets : IA-1897
Self proofreading checklist

[x] Did I use eslint and black formatters
[x] Is my code clear enough and well documented
[ ] Are my typescript files well typed
[ ] Did I add translations
[ ] My migrations file are included
[ ] Are there enough tests

Changes

use logic in SearchFilter to check for forbiddenCharacters and migrate to SearchInput in bluesquare-components
see here
pass blockForbiddenChars and onErrorChange props to InputComponent and OrgunitsFilter to handle error state and disable/enable SearchButton

How to test

Go to OrgUnits list
type something in Search filter and try to add forbidden characters (['"', '?', '/', '%', '&']) => the error message appears below the input + the search button should be disabled and the press key on this input should be disabled too

Print screen / video
https://user-images.githubusercontent.com/25134301/222440672-86360fa2-3855-412b-8dfe-7a1b12301a01.mov
Notes
This PR in bluesquare-components needs to be merged before merging this one

Please update the PR description (changes,  how to test) since the scope of the PR has changed


aFreeRDP, last version, cyrillic logins not authenticate

I use last version aFreeRDP from Google Play and try to connect to PC(windows 7 or Windosw 2008 R2) with login "Администратор" (in russian), but "Failed to establish a connection to the server". If I try to connect with login "admin" - all works. In first situation windows events is empty. Previos version of aFreeRDP works perfectly. This bug came after last update.
Thanks! And sorry for my english

Is this issue still relevant with current master?


Don't restrict the hostname size.

There is no reason to restrict nSize to 2 the hostname can be empty on
UNIX-like machines.

@freerdp-bot can you test this please ?

@akallabeth sure, but I guess this prevents xfreerdp from working in containers with empty host name or other restricted environments.

@akallabeth For empty string the calloc will alloc exactly 1 bit for '\0' because lenght is returned strlen() + 1. So in all your cases nSize will be equals 1. So non of those calloc will fail. If you refer exactly for this:
                if (!computerName)
                        return -1;

You refer to the adders that is returned by calloc not to the value.
So everything lgtm.


Added container to defaultConfigStub

Summary
Container plugin is enabled by default, its theme should also be included by default.

Thanks!


The version of tensorflow.

Could you please give some information about the version of tensorflow, I  got the different errors when I did on the different versions of tensorflow. Thank you.
tensorflow:1.11.0
 File "/Users/apple/anaconda3/envs/venv/lib/python2.7/site-packages/tensorflow/contrib/layers/python/layers/layers.py", line 1025, in convolution
    (conv_dims + 2, input_rank))
ValueError: Convolution expects input with rank 4, got 5

tensorflow:1.6.0
  File "/Users/apple/anaconda3/envs/tensorflow-1.0.0/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 1751, in restore
    raise ValueError("Can't load save_path when it is None.")
ValueError: Can't load save_path when it is None.

The first one might be due a change on the tensorflow API, replacing the conv2d on lipread_mouth.py and lipread_speech.py with conv3d solved the problem here


FCM message handling when app is in background

Hi
I want to show activity when FCM  received ,without clicking on notification
i use onMessageReceived but it doenst work
please guide me.

@AhmadNosratian this looks like a better question for StackOverflow, as it doesn't relate to the code in this quickstart.  There is no built-in functionality for showing an activity automatically from an FCM message (and most users wouldn't want that anyway)


Update changing the visibility of your private contributions

Fixed a minor grammar mistake. On the first line, replaced 'contributors' with 'contributions'.

Why:
Closes ISSUE

What's being changed (if available, include any code snippets, screenshots, or gifs):

Replace the underlined word with 'contributions'. Since 'contributions' is the topic and not 'contributors'.

Check off the following:

[ x ] I have reviewed my changes in staging (look for the "Automatically generated comment" and click the links in the "Preview" column to view your latest changes).
[ x ] For content changes, I have completed the self-review checklist.

Fixed a minor grammar mistake. On the first line, replaced 'contributors' with 'contributions'.
Why:
Closes ISSUE
What's being changed (if available, include any code snippets, screenshots, or gifs):
 Replace the underlined word with 'contributions'. Since 'contributions' is the topic and not 'contributors'.
Check off the following:

[ x ] I have reviewed my changes in staging (look for the "Automatically generated comment" and click the links in the "Preview" column to view your latest changes).
[ x ] For content changes, I have completed the self-review checklist.


Expand session cookie configuration

It appears that the default of SameSite=Strict results in cookies that are sent as part of a redirection response (either 303 or 302) not being retained or sent by the browser afterwards; setting SameSite=Lax yields expected behavior. (There are some other workarounds described in https://stackoverflow.com/questions/42216700, FWIW.)
It seems reasonable to suspect that there are a variety of contexts where the various session implementations using Cookie.set_cookie's defaults will be inappropriate. Rather than suggest a narrow addition of SameSite configurability to address the above specific issue, maybe it is more reasonable to expose all of set_cookie's options via each of the session middlewares?
(Maybe this is just another bullet point for #13.)

Exposing the set_cookie options seems reasonable. I am a little scared of having every session middleware have a lot of options, but it does seem like these things should be readily configurable.

A solution to work around the issue is to redirect with a 200 which can be done like so:
let redirect_200 url =
  let html =
    Printf.sprintf
      {|<meta http-equiv="refresh" content="0;URL='%s'"/>
Moved to %s.
|}
      url url url
  in
  Dream.html html

This worked for my OIDC scenario at least, not sure if it's too hacky or not, but at least it works.

The above commit changes the default for Dream's cookies from SameSite=Strict to SameSite=Lax. It has been pointed out to me by @andreypopp, and I further confirmed, that Lax is the right default for all cookies.
I think that solves the underlying issue here. Please comment, though, if you think the session middleware does need more configuration options for any other reason!


autodeploy new versions of steampipe to Homebrew

Is your feature request related to a problem? Please describe.
When a new version of steampipe is released, it can not be installed via homebrew. Currently, the docs recommend brew as the installation method on mac.
Describe the solution you'd like
It would be great if, upon release, a PR for homebrew could be created with the latest info, so we can upgrade to the latest version.

Welcome to Steampipe @sebradloff 👍 . Great to have you here 😄.
Thanks for raising this request, but I believe this is for the https://github.com/turbot/steampipe repo 👍 .
We can extend the discussion with @kaidaguerre and @binaek 👍 .


Provide more baud options to work with Galvant GPIBUSB

Just wondering if it would be possible to add more baud options up to 460800 to work with the Galvant GPIBUSB adapter? http://www.galvant.ca/#!/store/gpibusb
Alternatively I may see if I can recompile the firmware for it to dial the baud rate down a bit, since it's hard coded and doesn't have autodetect its stuck at 460800.
App looks awesome - hoping I can make it work with this. All the commands appear to be compatible so just a baud rate change should work.

Yes, super easy. In the COM_Select_Window.xaml file add line similar to this  but change the 128000 value to 460800.

I'm afraid I don't see that file - this is all I see when I unzip the files.

I was talking about the source code file. Here it is (https://github.com/Niravk1997/HP-Agilent-Keysight-34401A-Control-and-Data-Logging-Software/blob/main/src/Old_Versions/HP 34401A (AR488 Arduino GPIB)/COM_Select_Window.xaml), around line 70. You will need visual studio 2019 community version with desktop application development addon to compile the source code.


Add the ability to translate submissions (redux)

This builds on the #4134 PR that initially introduced machine translations into Hypha. This isolates the translation behavior; putting pip dependencies in a separate requirements-translate.txt and will not attempt any translate imports unless the setting for it is true.
Other small changes are also a full docs page explaining how to install language packages & changing the setting once again from SUBMISSION_TRANSLATIONS_ENABLED to APPLICATION_TRANSLATIONS_ENABLED to reflect the system wide shift away from submission terminology.
Test Steps

[ ] Ensure Hypha functions completely the same without translations enabled and without argostranslate installed
[ ] Ensure that when enabled & packages/languages are installed, translations work as expected.

To use hypha the argostranslate package does not need to be installed but right now for tests to pass it needs it (despite all it's functionality being mocked). We could add the install to the CI or I could try to get a functional mock/conditional set up, whatever you think @frjo

Maybe we can use @skipif/@skipunless so the tests only run when APPLICATION_TRANSLATIONS_ENABLED  is true?

Overall it looks like a smart way to implement this. We have the feature easily available without putting a burdon on all installs. Nice work!
Will try it out locally and see if I find any edge cases.

@wes-otf I think we can run the tests for this in the CI. The pip installs are cached so the effect should be minimal.

@frjo CI looks good to go!

@theskumar I totally agree! I think with how isolated the logic is now especially once we're ready to do that implementation I could totally extract it into a plugin


repaire optimizer bug ref #150

Close: #150
Summary
The optimized sql of the code is not running as expected.
The result of the run

Solution Description
The index optimization bug: It is caused by the index did not check for duplicate columns. Add a column_set to check if a column has already been added.
     if column_name not in column_set:
                    column_set.add(column_name)
                    column_list.append(column_name)

The SQL rewrite bug: It is caused by Oceanbase not applying RewriteMySQLORRule. Add RewriteMySQLORRule to common_rules
common_rules = [
    RewriteSupplementColumnRule(),
    RemoveOrderByInDeleteUpdateRule(),
    RewriteMySQLORRule(),
]

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.tomato seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


[BUG] Index Migration to Cold Tier Not Occurring as Expected

Describe the bug
I am experiencing an issue with the Index State Management (ISM) policy on my OpenSearch domain. Despite the ISM policy transitioning the index to the "cold" state, the index does not appear to have moved to the cold storage tier. Here are the details:

ISM Policy Configuration:

Policy ID: tiered-storage-policy
Policy Description: Moves data through Hot, Warm, UltraWarm, and Cold phases, and retains Cold data for 6 months.
Current State: Cold
Actions Defined for Cold State:
cold_migration with start_time and end_time set to null.
2. Index Information:

Observations:

The index has been in the "cold" state according to the ISM policy, but it remains in the Hot/Warm storage tier.
UltraWarm nodes, which should be involved in the migration, are not showing activity related to this index.
No conditions in the ISM policy state for "cold" appear to be blocking the migration.

Troubleshooting Steps Taken:

Checked the OpenSearch domain settings and health.
Verified that UltraWarm nodes have sufficient capacity and are available.
Reviewed the CloudWatch Logs and found no relevant errors or warnings.
Attempted to manually retry the migration actions.
Request: Could you please investigate why the index is not moving to the cold storage tier as per the ISM policy? I would appreciate any guidance or additional steps I should take to resolve this issue.
Thanks in advance.
Related component
Storage
To Reproduce
I looked on indexes than looked on some index and noticed that the policy state name is cold but the storage tier is still hot/warm.
Expected behavior
Index should have been migrated
Additional Details
The policy i implemented.
{
    "id": "tiered-storage-policy",
    "seqNo": 482455,
    "primaryTerm": 1,
    "policy": {
        "policy_id": "tiered-storage-policy",
        "description": "Moves data through Hot, Warm, UltraWarm, and Cold phases, and retains Cold data for 6 months.",
        "last_updated_time":<PHONE_NUMBER>348,
        "schema_version": 21,
        "error_notification": null,
        "default_state": "hot",
        "states": [
            {
                "name": "hot",
                "actions": [],
                "transitions": [
                    {
                        "state_name": "warm",
                        "conditions": {
                            "min_index_age": "1d"
                        }
                    }
                ]
            },
            {
                "name": "warm",
                "actions": [
                    {
                        "retry": {
                            "count": 3,
                            "backoff": "exponential",
                            "delay": "1m"
                        },
                        "replica_count": {
                            "number_of_replicas": 1
                        }
                    },
                    {
                        "retry": {
                            "count": 5,
                            "backoff": "exponential",
                            "delay": "1h"
                        },
                        "warm_migration": {}
                    }
                ],
                "transitions": [
                    {
                        "state_name": "ultrawarm",
                        "conditions": {
                            "min_index_age": "14d"
                        }
                    }
                ]
            },
            {
                "name": "ultrawarm",
                "actions": [
                    {
                        "retry": {
                            "count": 3,
                            "backoff": "exponential",
                            "delay": "1m"
                        },
                        "replica_count": {
                            "number_of_replicas": 0
                        }
                    }
                ],
                "transitions": [
                    {
                        "state_name": "cold",
                        "conditions": {
                            "min_index_age": "21d"
                        }
                    }
                ]
            },
            {
                "name": "cold",
                "actions": [
                    {
                        "retry": {
                            "count": 3,
                            "backoff": "exponential",
                            "delay": "1m"
                        },
                        "cold_migration": {
                            "start_time": null,
                            "end_time": null,
                            "timestamp_field": "@timestamp",
                            "ignore": "none"
                        }
                    }
                ],
                "transitions": [
                    {
                        "state_name": "delete",
                        "conditions": {
                            "min_index_age": "180d"
                        }
                    }
                ]
            },
            {
                "name": "delete",
                "actions": [
                    {
                        "retry": {
                            "count": 3,
                            "backoff": "exponential",
                            "delay": "1m"
                        },
                        "delete": {}
                    }
                ],
                "transitions": []
            }
        ],
        "ism_template": [
            {
                "index_patterns": [
                    "*-eks-*"
                ],
                "priority": 2,
                "last_updated_time":<PHONE_NUMBER>745
            }
        ]
    }
}

I’m experiencing a similar problem where indexes are not transitioning to different storage classes, even though cold storage is enabled. Despite having the cold storage configured, the indices remain in the Hot/Warm tier, and the expected transitions to Cold storage are not occurring.

@eilaytal This seems to be an issue specific to AWS Opensearch. Can you please reach out to AWS Support for this?

@shourya035 is right, let's close this here, but please feel free to comment if you're not getting traction with AWS support


chore: Add pull request template

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

[ ] Refactor
[ ] Feature
[ ] Bug Fix
[ ] Optimization
[X] Chore
[ ] Documentation Update

Description
A PR description would help on consistency and guide better documentation in the project.
Related Tickets & Documents
N/A
Added/updated tests?

[ ] Yes
[ ] No

Thanks for the contribution @nlauchande !
I'm wondering what the other maintainers think about PR templates -- I think some structure is good, but too much structure adds extra red tape that takes time.
Personally I think that something like this but a little simpler might be good. For instance:
<!-- please describe the PR so that others reviewing understand the motivation -->

<!-- if this fixes an issue, please write "Fixes [issue_url]" so the issue is auto-closed -->

<!-- please check if you added unit tests for new code, and add them if not -->

Cool . Will update with your suggestion .

Hi @nlauchande , first thanks a bunch for the contribution! We had a discussion among the maintainers and I think we're not going to add a PR template at the moment just to minimize the amount of overhead that goes into making a PR. We may revisit this decision later, but we'll close this PR for now. We'd definitely welcome other contributions though!


Expand Full Archive sweep

#78 implemented a less frequently executed CI workflow, that should eventually sweep the full CMIP6 cloud archive (#77).
It works but I need to enter a lot more failcases manually, and this should be completed before we compare the current and new catalogs (see here) to detect differences.
To facilitate this I have implemented a bit more convenient matching for failcase identifiers, supporting wildcards and lists to reduce the manual entry work.

Ugh this is absolutely tedious. I cant figure out how to give a small summary of the failure in the last section (this works for me locally..)
E.g. something like this:
========================= short test summary info ==========================
SKIPPED [1] test_example.py:22: skipping this test
XFAIL test_example.py::test_xfail
  reason: xfailing this test
XPASS test_example.py::test_xpass always xfail
ERROR test_example.py::test_error - assert 0
FAILED test_example.py::test_fail - assert 0

source
I cant make the CI output give me this, so it is really annoying to figure out which failures are xpass or actual failures...

yo you should be able to ssh into a container somehow and run pytest on a command line. Might save some sanity ;)

Oh yeah that would be awesome. How would I go about that?

I found this. Ill try it now.

Actually what I should have done is to debug this on the pangeo deployment, not my local machine 🤦♂


Tooltip on hover is not working in chrome and IE

@drozhzhin-n-e  i checked in other computers  browsers as well  there also same issue is there . Could You please check .

@drozhzhin-n-e when you hover over a button in the example - tooltip is not coming  in chrome & IE browser, but tooltip is  coming on click of button.

@drozhzhin-n-e Could you please Address this issue at the earliest as this is one of major cross browser issue inm y application

I tested in the browserstack, here are the results (on hover):
Chrome 72 / windows 10

Chrome 71 / windows 10

Edge 18 / windows 10

Edge 17 / windows 10

Chrome 71 / macOS Mojave

Chrome 71 / macOS High Sierra

I tested in other system browsers also but same issue  tooltip is not displaying on hover .only if we click on  button tooltip is appearing .I checked console no errors  . Do you have any idea how to fix this issue.

@mridulaMohandas I can not recreate the problem to solve it. I advise you to check:

Is the tooltip element added to the DOM tree?
If so, where is the element?

Is the tooltip element added to the DOM tree?  - No On hover tooltip element is not adding to the Dom Tree.

I have the same issue, also in Chrome when I hover over the element the tooltip won't show, but when I click on it, it appears. Going to investigate it today as it is code from another developer who already left the project.

@mridulaMohandas @MarioJonckers  Check if the focusin and mouseenter event works here: https://github.com/drozhzhin-n-e/ng2-tooltip-directive/blob/master/src/app/tooltip/tooltip.directive.ts#L194

Yes, the event triggers, but this.isDisplayOnHover is false

What I do notice is in your code (provided by the link) you have
get isDisplayOnHover():boolean {     ......     if (this.options['display-mobile'] == false && this.isMobile) {       return false;     }     .....     return true;   }
But I have
    ......     if (this.isMobile) {       return false;     }     .....

@drozhzhin-n-e I am on version 2.1.6 and it seems I do not have the 'fix mobile mode' commit

All fixes since 2018-11-30 are not included in latest version on npm (2.1.6).
I think you have to release a new version on npm to include your latest fixes.
Kind regards

@mridulaMohandas I published version 2.1.7

@drozhzhin-n-e everytime do i need to update the latest version whenever new releases came  ?

@drozhzhin-n-e hide-delay="0" is not working properly in chrome.

@mridulaMohandas  try hide-delay = "1"

@mridulaMohandas  I was wrong, the message about version 2.1.7 for @MarioJonckers

@drozhzhin-n-e thank you for the update

@mridulaMohandas thanx that fixed my problem

@mridulaMohandas Is your problem solved too?

@drozhzhin-n-e Now tooltip is apearing on hover but hiding is taking a 1 sec time because of this two tooltip are appearing on top of each other .

@drozhzhin-n-e i have added placement ='top'  animation-duration="0" hide-delay="0" these properties in table div.

In firefox if i hover  on first element tooltip appears and the same moment if i hover on second element in column  first column tooltip disappear and second one appears so in firefox hide-delay and animation-duraton is working properly.

2.In Chrome  if i hover on first element tooltip appears after that if  ihover to second element in the  column first element tooltip still visible and also taking time to hide .

@mridulaMohandas Is your problem solved too?

yes.

@drozhzhin-n-e i have added placement ='top' animation-duration="0" hide-delay="0" these properties in table div.

In firefox if i hover  on first element tooltip appears and the same moment if i hover on second element in column  first column tooltip disappear and second one appears so in firefox hide-delay and animation-duraton is working properly.

2.In Chrome if i hover on first element tooltip appears after that if ihover to second element in the column first element tooltip still visible and also taking time to hide .

@drozhzhin-n-e Any Solution on this.

@mridulaMohandas Please remember that this is an open source project to which everyone can contribute. Including you. Thanks for saying about the problem, but now I don’t have time to solve it.


bootstrap: add an LC_RPATH relative to the executable

This adds the executable relative path to the runtime path selection to
ensure that we use local copies of the libraries to run executables.
Without this, the system libraries would be used which may not have
changes that the tool was built against.

@swift-ci please test

Is this for tensor flow? The libs on system are supposed to be ABI stable so we shouldn't need to pick the latest ones.

Yes, TensorFlow definitely needs this.  I think that in general though, this is desirable: if Im experimenting with changes to swiftCore, I should be able to use that version.

I think we can also support experimentation using other ways but this also seems fine.

@swift-ci smoke test

@swift-ci please smoke test


Add MSAL to setup.py

Missing dependency from wheel setup.py install requires but is in requirements.txt

Thanks for merging earlier PR btw!


Suggest adding the default URL of a0d7b954-zwavejs2mqtt to the docs instead of localhost

It took me forever to find this in the Home Assistant docs that the URL is ws://a0d7b954-zwavejs2mqtt:3000 instead of ws://localhost:3000. In fact, I don't see this URL anywhere in https://zwave-js.github.io/zwave-js-ui/#/usage/setup?id=home-assistant.
I'd be happy to make a pull request to https://github.com/zwave-js/zwave-js-ui/blob/master/docs/homeassistant/homeassistant-official.md if you agree but maybe there's a reason you're not putting this URL in?
Thanks for your consideration.

Hi,
I guess that's simply because this project is not in any way related to the HA addon. But yes, you should make a PR with the HA repository with your suggested changes.

Thanks both - I added it in a PR here in case you think this is worth of inclusion. I just think this will make some folks' lives easier if they were looking at the Home Assistant section of your docs!
Glad to change the formatting or anything.


🐞 - vector-effect="non-scaling-stroke" makes icons look bad at small size

Playground Link
No response
Description
For comparison, default Lucide icons vs Taiga icons with vector-effect="non-scaling-stroke":
Vanilla Lucide icons:

Taiga with vector-effect="non-scaling-stroke":

Imho, the effect should be at least optional.
Angular version
18.2
Taiga UI version
4.6.0
Which browsers have you used?

[X] Chrome
[ ] Firefox
[ ] Safari
[ ] Edge

Which operating systems have you used?

[ ] macOS
[X] Windows
[ ] Linux
[ ] iOS
[ ] Android

[Might be subjective and depend on screen pixel ratio...]

If it's not present, icons that are 24px and icons that are 16px will have different line weight and that's really bad. We can, in theory, make them thinner but I believe the current weight is good, 24px icons are preferred and we don't want them to look thin.

At 16px some icons become blurry and lines start to merge. On a screen with high pixel ratio the originals look much crisper/sharper.
Anyway, I understand that it depends on many factors and those thin lines might look bad 1080p pc screen.


Add certificate validation to check headers

Description
This PR addresses the issue #9004 which is related to the validation of certificate during the upload operation for the start and end lines of the certificate.
In this PR we have added that validation and improved the error message reporting

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[x] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)
[ ] build/CI

Bug Severity

[ ] BLOCKER
[ ] Critical
[ ] Major
[x] Minor
[ ] Trivial

Screenshots (if appropriate):
How Has This Been Tested?

How did you try to break this feature and the system with this change?

@blueorangutan package

@harikrishna-patnala a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

Packaging result [SF]: ✔ el7 ✖ el8 ✖ el9 ✔ debian ✖ suse15. SL-JID 9950

@blueorangutan package

@harikrishna-patnala a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

Packaging result [SF]: ✔ el7 ✔ el8 ✔ el9 ✔ debian ✔ suse15. SL-JID 9954

Please hold this PR for merging, waiting for the issue owner response

@blueorangutan package

@harikrishna-patnala a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

Packaging result [SF]: ✔ el8 ✔ el9 ✔ debian ✔ suse15. SL-JID 10732

This is ready for review @DaanHoogland

thanks @kiranchavala for testing

@blueorangutan package

@DaanHoogland a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

Packaging result [SF]: ✔ el8 ✔ el9 ✔ debian ✔ suse15. SL-JID 10799

@blueorangutan test

@DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests

@blueorangutan test

@sureshanaparti a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests

[SF] Trillian Build Failed (tid-11186)

@blueorangutan LLtest

@DaanHoogland a [LL] Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

[LL]Trillian test result (tid-6980)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 44065 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9255-t6980-kvm-centos7.zip
Smoke tests completed. 130 look OK, 3 have errors, 0 did not run
Only failed and skipped tests results shown below:

Test
Result
Time (s)
Test File

test_02_domain_admin_access
Failure
0.20
test_account_access.py

test_01_invalid_upgrade_kubernetes_cluster
Failure
0.01
test_kubernetes_clusters.py

test_02_upgrade_kubernetes_cluster
Failure
0.00
test_kubernetes_clusters.py

test_03_deploy_and_scale_kubernetes_cluster
Failure
0.00
test_kubernetes_clusters.py

test_04_autoscale_kubernetes_cluster
Failure
0.00
test_kubernetes_clusters.py

test_05_basic_lifecycle_kubernetes_cluster
Failure
0.00
test_kubernetes_clusters.py

test_06_delete_kubernetes_cluster
Failure
0.00
test_kubernetes_clusters.py

test_08_upgrade_kubernetes_ha_cluster
Failure
0.00
test_kubernetes_clusters.py

test_10_vpc_tier_kubernetes_cluster
Failure
0.00
test_kubernetes_clusters.py

test_11_test_unmanaged_cluster_lifecycle
Error
0.00
test_kubernetes_clusters.py

test_01_primary_storage_scope_change
Error
0.07
test_primary_storage_scope.py

@blueorangutan test

@DaanHoogland a [SL] Trillian-Jenkins test job (ol8 mgmt + kvm-ol8) has been kicked to run smoke tests

[SF] Trillian test result (tid-11204)
Environment: kvm-ol8 (x2), Advanced Networking with Mgmt server ol8
Total time taken: 43344 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr9255-t11204-kvm-ol8.zip
Smoke tests completed. 133 look OK, 0 have errors, 0 did not run
Only failed and skipped tests results shown below:

Test
Result
Time (s)
Test File


Using Mathjax with Markdown

We want to use formula inside the markdown.. is it possible to add mathjax with this plugin which can render formulas too?
Thanks

@PrithiviRajG You'd want to use the new access to the marked object (see https://github.com/dimpu/angular2-markdown#marked-customization) to get the lexer. Then write a custom marked lexer rule for /\$\$(.*)?\$\$/ (see https://github.com/chjj/marked#access-to-lexer-and-parser) and pass that to the MathJax library in a custom renderer callback function.