Performance comparison w/ poly2tri?

Just curious if you've done any benchmarking of detria vs. poly2tri?  The latter has a reputation of being fairly quick, and I was wondering if detria is known to be (roughly) comparable?

Yes, detria is around 40% faster than poly2tri from my benchmarks.
poly2tri:
Triangulation successful: "2.dat"
Done in 0.0849ms
Triangulation successful: "bird.dat"
Done in 0.3238ms
Triangulation successful: "city.dat"
Done in 4.0753ms
Triangulation successful: "custom.dat"
Done in 0.0089ms
Triangulation successful: "deadly_quad.dat"
Done in 0.0043ms
Triangulation successful: "debug.dat"
Done in 0.189ms
Triangulation successful: "debug2.dat"
Done in 19.7789ms
Triangulation successful: "diamond.dat"
Done in 0.0104ms
Triangulation successful: "dude.dat"
Done in 0.1006ms
Triangulation successful: "e.dat"
Done in 0.0182ms
Triangulation successful: "funny.dat"
Done in 0.0885ms
Triangulation successful: "kzer-za.dat"
Done in 0.2051ms
Triangulation successful: "nazca_heron.dat"
Done in 0.9199ms
Triangulation successful: "nazca_monkey.dat"
Done in 1.1764ms
Triangulation successful: "polygon_test_01.dat"
Done in 0.0168ms
Triangulation successful: "polygon_test_02.dat"
Done in 0.0158ms
Triangulation successful: "polygon_test_03.dat"
Done in 0.0136ms
Triangulation failed: "sketchup.dat"
Triangulation successful: "stalactite.dat"
Done in 0.049ms
Triangulation successful: "star.dat"
Done in 0.0093ms
Triangulation successful: "steiner.dat"
Done in 0.0079ms
Triangulation successful: "strange.dat"
Done in 0.0149ms
Triangulation successful: "tank.dat"
Done in 0.0801ms
Triangulation successful: "test.dat"
Done in 0.0078ms

detria:
Triangulation successful: "2.dat"
Done in 0.049500 ms
Triangulation successful: "bird.dat"
Done in 0.169000 ms
Triangulation successful: "city.dat"
Done in 2.555700 ms
Triangulation failed: "collinear.dat"
Message: All input points were collinear
Done in 0.004700 ms
Triangulation failed: "custom.dat"
Message: Constrained edges are intersecting: first edge between points 1 and 2, second edge between points 6 and 0
Done in 0.007600 ms
Triangulation successful: "deadly_quad.dat"
Done in 0.005000 ms
Triangulation successful: "debug.dat"
Done in 0.132600 ms
Triangulation successful: "debug2.dat"
Done in 12.118400 ms
Triangulation successful: "diamond.dat"
Done in 0.014900 ms
Triangulation successful: "dude.dat"
Done in 0.058700 ms
Triangulation successful: "e.dat"
Done in 0.014300 ms
Triangulation successful: "funny.dat"
Done in 0.068700 ms
Triangulation successful: "kzer-za.dat"
Done in 0.134100 ms
Triangulation successful: "merge_test.dat"
Done in 0.007900 ms
Triangulation successful: "merge_test_2.dat"
Done in 0.008100 ms
Triangulation successful: "merge_test_3.dat"
Done in 0.005100 ms
Triangulation successful: "mostly_collinear.dat"
Done in 0.006500 ms
Triangulation successful: "nazca_heron.dat"
Done in 0.554900 ms
Triangulation successful: "nazca_monkey.dat"
Done in 0.750200 ms
Triangulation successful: "polygon_test_01.dat"
Done in 0.015100 ms
Triangulation successful: "polygon_test_02.dat"
Done in 0.013600 ms
Triangulation successful: "polygon_test_03.dat"
Done in 0.007800 ms
Triangulation successful: "retriangulate_delaunay.dat"
Done in 0.012700 ms
Triangulation failed: "sketchup.dat"
Message: Multiple input points had the same position (-138.317, 50.4757), at index 151 and at index 147
Done in 0.037400 ms
Triangulation successful: "stalactite.dat"
Done in 0.016500 ms
Triangulation successful: "star.dat"
Done in 0.015800 ms
Triangulation successful: "steiner.dat"
Done in 0.010000 ms
Triangulation successful: "strange.dat"
Done in 0.012400 ms
Triangulation successful: "tank.dat"
Done in 0.039600 ms
Triangulation successful: "test.dat"
Done in 0.006100 ms

The code for detria is here: https://github.com/Kimbatt/detria/blob/master/src/main.cpp#L348
The code for poly2tri is here: (modified version of poly2tri testbed)
#include <vector>
#include <string>
#include <fstream>
#include <sstream>
#include <cassert>
#include <iostream>
#include <filesystem>
#include <chrono>

#include <poly2tri/poly2tri.h>

using namespace std;
using namespace p2t;

double StringToDouble(const std::string& s)
{
  std::istringstream i(s);
  double x;
  if (!(i >> x))
    return 0;
  return x;
}

bool ParseFile(string filename, vector<Point*>& out_polyline, vector<vector<Point*>>& out_holes,
               vector<Point*>& out_steiner)
{
  enum ParserState {
    Polyline,
    Hole,
    Steiner,
  };
  ParserState state = Polyline;
  vector<Point*>* hole = nullptr;
  try {
    string line;
    ifstream myfile(filename);
    if (myfile.is_open()) {
      while (!myfile.eof()) {
        getline(myfile, line);
        if (line.empty()) {
          break;
        }
        istringstream iss(line);
        vector<string> tokens;
        copy(istream_iterator<string>(iss), istream_iterator<string>(), back_inserter(tokens));
        if (tokens.empty()) {
          break;
        } else if (tokens.size() == 1u) {
          const auto token = tokens[0];
          if (token == "HOLE") {
            state = Hole;
            out_holes.emplace_back();
            hole = &out_holes.back();
          } else if (token == "STEINER") {
            state = Steiner;
          } else {
            throw runtime_error("Invalid token [" + token + "]");
          }
        } else {
          double x = StringToDouble(tokens[0]);
          double y = StringToDouble(tokens[1]);
          switch (state) {
            case Polyline:
              out_polyline.push_back(new Point(x, y));
              break;
            case Hole:
              assert(hole != nullptr);
              hole->push_back(new Point(x, y));
              break;
            case Steiner:
              out_steiner.push_back(new Point(x, y));
              break;
            default:
              assert(0);
          }
        }
      }
    } else {
      throw runtime_error("File not opened");
    }
  } catch (exception& e) {
    cerr << "Error parsing file: " << e.what() << endl;
    return false;
  }
  return true;
}

int main()
{
  for (const std::filesystem::directory_entry& dir : std::filesystem::directory_iterator(
           std::filesystem::path(P2T_BASE_DIR) / "testbed" / "data")) {

    if (dir.is_directory()) {
      continue;
    }

    std::filesystem::path filename = dir.path().filename();
    if (filename.extension() != ".dat") {
      continue;
    }

    vector<Point*> polyline;
    vector<vector<Point*>> holes;
    vector<Point*> steiner;
    if (!ParseFile(dir.path().string(), polyline, holes, steiner)) {
      continue;
    }

    try {
      /*
       * STEP 1: Create CDT and add primary polyline
       * NOTE: polyline must be a simple polygon. The polyline's points
       * constitute constrained edges. No repeat points!!!
       */
      CDT* cdt = new CDT(polyline);

      /*
       * STEP 2: Add holes or Steiner points
       */
      for (const auto& hole : holes) {
        assert(!hole.empty());
        cdt->AddHole(hole);
      }
      for (const auto& s : steiner) {
        cdt->AddPoint(s);
      }

      /*
       * STEP 3: Triangulate!
       */

      std::chrono::steady_clock::time_point start = std::chrono::steady_clock::now();
      cdt->Triangulate();
      std::chrono::steady_clock::time_point end = std::chrono::steady_clock::now();

      std::cout << "Triangulation successful: " << filename << std::endl;
      std::cout << "Done in " << std::chrono::duration<double, std::milli>(end - start)
                << std::endl;
    } catch (const std::exception&) {
      std::cout << "Triangulation failed: " << filename << std::endl;
    }
  }

  return 0;
}

I've implemented somewhat proper benchmarks, comparing multiple libraries: https://github.com/Kimbatt/detria/blob/master/BENCHMARKS.md
detria seems to be the fastest for "small" (under ~10k vertices) inputs
Triangle seems to be the fastest for basically everything else
I've seen that Triangle is using a divide-and-conquer algorithm, which can have better complexity than the incremental algorithm used in detria, so I might try to implement something similar in the future (maybe it can improve the performance).


[Feature]: Execução de Função de Aplicação no Workflow | Application Function Execution in Workflow

Is there an existing issue for this?

[X] I have searched the existing issues

Summary
Gostaria de sugerir a possibilidade de executar uma função de uma aplicação diretamente na configuração do workflow. Dessa forma, sempre que um endpoint específico for acionado, essa função seria automaticamente chamada para todos os usuários atualmente logados na aplicação.
I would like to suggest the ability to execute an application function directly in the workflow configuration. This way, whenever a specific endpoint is triggered, the function would automatically be called for all users currently logged into the application.
Why should this be worked on?
No meu caso, essa função chamaria uma consulta SQL que garantiria que os dados exibidos na tela para todos os usuários logados estejam sempre sincronizados e consistentes. Esse recurso seria extremamente útil em cenários onde é essencial que todos os usuários tenham informações atualizadas ao mesmo tempo, após uma determinada ação.
In my case, this function would run an SQL query to ensure that the data displayed on the screen is synchronized and consistent for all logged-in users. This feature would be extremely useful in scenarios where it is crucial that all users see updated information simultaneously after a particular action is performed.

@VulgoFelp I think what you are looking for is a way to integrate websockets into the application because that would be the only way I can think of to implement this.
One way to work around this today is to update the information in the backend and continuously poll information on the frontend. Let me know if there is another challenge you are facing
https://docs.appsmith.com/build-apps/how-to-guides/set-up-websockets
https://docs.appsmith.com/build-apps/how-to-guides/setup-polling

O método atual, utilizando polling contínuo, resulta em um loop constante
de consultas, o que pode impactar significativamente o desempenho do
sistema, especialmente em ambientes de produção. Seria ideal que as
atualizações ocorressem apenas quando o endpoint fosse chamado, eliminando
a necessidade de verificações contínuas e otimizando tanto o consumo de
recursos quanto a eficiência do aplicativo.
The current method, using continuous polling, results in a constant loop of
queries, which can significantly impact system performance, especially in
production environments. Ideally, updates would only occur when the
endpoint is called, eliminating the need for continuous checks and
optimizing both resource consumption and application efficiency.
Em seg., 11 de nov. de 2024 às 05:25, Nikhil Nandagopal <
@.***> escreveu:

@VulgoFelp https://github.com/VulgoFelp I think what you are looking
for is a way to integrate websockets into the application because that
would be the only way I can think of to implement this.
One way to work around this today is to update the information in the
backend and continuously poll information on the frontend. Let me know if
there is another challenge you are facing
https://docs.appsmith.com/build-apps/how-to-guides/set-up-websockets
https://docs.appsmith.com/build-apps/how-to-guides/setup-polling
—
Reply to this email directly, view it on GitHub
https://github.com/appsmithorg/appsmith/issues/37305#issuecomment-2467518032,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJLX5PRTW3VLRJCC756SE7T2ABSZLAVCNFSM6AAAAABRNP3VTOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRXGUYTQMBTGI
.
You are receiving this because you were mentioned.Message ID:
@.***>

@VulgoFelp you can use a websocket to achieve this efficiently
https://docs.appsmith.com/build-apps/how-to-guides/set-up-websockets

Could you give me an example that I can use for my example above? @Nikhil-Nandagopal

@VulgoFelp the documentation link I shared explains how to use websockets.
You will need to setup a backend server to send socket data to the frontend.


Collecting trigger runtime status and error for monitoring/ping implementation

Added new function to collect trigger instance info about its current state and error (if reported)

I think its better to have clean structure. We can enhance it later to collect other data.
In my opinion, we should avoid exposing TriggerInstance object directly to non core packages.


clear badge number

Exists any possibility to clear badge number after clicking the notification?

On iOS?

yes @EddyVerbruggen.
Thnx

I just confirmed with the embedded demo app, the badge is automatically cleared when either launched through the app icon or notification. Is that not working for you (with the demo)?

@EddyVerbruggen I have the same problem. Badge is cleared only when app is launched by tapping app icon. After tapping notification badge remains.
Platform: iOS
TNS version: 5.2.5
nativescript-local-notifications version: 3.1.2
My code:
`
public emit(notification: INotification): void {
    const id = Math.floor(Math.random() * 1000000);
    LocalNotifications.schedule([{
        id: id,
        title: notification.title,
        body: notification.body,
        color: new Color('#0050a0'),
        forceShowWhenInForeground: true,
        badge: notification.badge,
        sound: notification.sound ? 'default' : null
      }]).then(() => {
          console.log('notification scheduling success!');
      }).catch(() => {
          console.log('notification scheduling error!');
      });

    LocalNotifications.addOnMessageReceivedCallback((data: ReceivedNotification) => {
        if (!this.routerExtensions.router.isActive(notification.redirectPath, true)) {
            this.routerExtensions.navigate([notification.redirectPath], {
                transition: {
                    name: 'fade'
                }
            });
            LocalNotifications.cancel(data.id);
        } else {
            LocalNotifications.cancel(data.id);
        }
    }).then(() => {
        console.log('notification received callback success!');
    }).catch(() => {
        console.log('notification received callback error!');
    });
    LocalNotifications.addOnMessageClearedCallback((data: ReceivedNotification) => {
        LocalNotifications.cancel(data.id);
    }).then(() => {
        console.log('notification cleared callback success!');
    }).catch(() => {
        console.log('notification cleared callback error!');
    });
}`

Hi, I have the same issue. I tap the app icon but the badge remains. And if I tap again second time and launch the app, then the badge disappears. Is there a solution for this. Appreciate any help

Moreover, when I tap the icon when there is not  any notification, the badge appears . In order to clear it, user has to launch and close the app. I have this issue on IOS. I haven't tested in Android.
Thx in advance.

I just added UIApplication.sharedApplication.applicationIconBadgeNumber = 0; just incase anyone else has a problem.


error: dircache dictionary changed size during iteration error, when an item is past its expiry time

Hello, if I create a board that using listings_expiry_time=0, then I get an error if I try to delete a directory. This could also be seen as a dircache bug, so happy to open on fsspec instead if useful :).
import fsspec
fs = fsspec.filesystem("az", listings_expiry_time=0)

When I try to delete a directory, I get this error:
RuntimeError: dictionary changed size during iteration

It appears to be due to the way dircache.__iter__() works:

adlfs uses cache = {}; cache.update(self.dircache)
this uses DirCache's __iter__, __contains__, and __getitem__ methods (since it is a abc.MutableMapping)

when fsspec's DirCache uses __getitem__, it will delete that item if it's past its expiry time

this means that dircache can be mutated while iterating, causing an error.

Relevant code:

dircache getitem method: https://github.com/fsspec/filesystem_spec/blob/master/fsspec/dircache.py#L56
cache.update(dircache) code: https://github.com/fsspec/adlfs/blob/master/adlfs/spec.py#L803

Thanks for the report. Fixing it upstream would be nice if possible, but it does sound like this might be an issue with how adlfs is using it.


Adding PaymentMethod attribute on Transaction

Regarding #158, this adds a PaymentMethod attribute on Transaction. It also cleans up a bunch of extra whitespace.
cc/ @bhelx
var transaction = new Transaction("account_code", 100, "USD");
transaction.PaymentMethod = "credit_card";
transaction.Create();
Console.WriteLine(transaction.PaymentMethod);

:+1:


Legend panel heading formatting issue

The legend panel heading experiences formatting issues in certain browsers, causing the togglebox to shift out of place.

Requires further testing for support in older browsers.


Error Code 1

I seem to be getting this error
{ [Error: Command failed: ] code: 1, signal: null }
running my dev environment on Mac OS X 10.10.3
Node.js v0.12.2
my code:
exports.uploadProductImg = function(path, sku){

    var client = new Upload('cdn-hickies', {
        "aws": {region : 'us-east-1',
            path: "/products/" + sku + "/",
            acl: 'public-read'},

        versions: [{
            original: true
        },{
            suffix: '-large',
            quality: 80,
            maxHeight: 1280,
            maxWidth: 1280
        },{
            suffix: '-medium',
            maxHeight: 640,
            maxWidth: 640
        },{
            suffix: '-small',
            maxHeight: 320,
            maxWidth: 320
        },{
            suffix: '-xsmall',
            maxHeight: 150,
            maxWidth: 150
        }
        ]
    });
    client.upload(path, {}, function(err, images, meta) {
        if (err) {
            console.error(err);
        } else {
            for (var i = 0; i < images.length; i++) {
                console.log('Thumbnail with width %i, height %i, at %s', images[i].width, images[i].height, images[i].url);
            }
            require('./inventory-manager').addImages(sku, images);
        }
    });

};

Did you solve the error yourself @yonib05?

Yeah I spoke to soon turns out it was an error on my part however I found a
few other bugs that might be of concern. I will do a pull request soon with
some bug fixes and some better error outputting.
Thank you
On Wed, Jun 10, 2015 at 11:40 AM, Hans Kristian Flaatten <
<EMAIL_ADDRESS>wrote:

Did you solve the error yourself @yonib05 https://github.com/yonib05?
—
Reply to this email directly or view it on GitHub
https://github.com/Turistforeningen/node-s3-uploader/issues/27#issuecomment-110802953
.

Very good! Looking forward to your PR :)


Notify on logout

Coverage decreased (-1.6%) to 76.353% when pulling 14a3cf01f99ac9a17610656259c687a1e71c4bde on notify-on-logout into 13b2877cd563311d4753b25106491891cf570eaa on development.


SVG?

Thoughts? Will we ever populate SVG attributes? Specifically thinking data viz. See:
http://nicolashery.com/integrating-d3js-visualizations-in-a-react-app/
&
https://leanpub.com/reactd3js

In the Nicholas Hery article, it would be something akin to this.d3_prep instead of build styles. In d3, constructing svg looks like this:

I don't see directly applying attributes to SVGs becoming part of Radium core, but you could use Radium to resolve what those attribute values should be today (as if they were CSS properties).
Some kind of library for applying attributes to SVGs based on an object structure sounds useful, but wouldn't need to be tied to Radium. Could be completely independent.

I don't think there is anything actionable for Radium core; if this fits as an addon, we could reopen. Since Radium's core value is in emulating pseudo classes like :hover, and such pseudo classes don't make sense in the context of SVG attributes, I don't think this is Radium's territory. Radium can already handle the style attribute of SVGs anyway.


ConfigProvider配置了prefixCls后， Table设置scroll 或者 column设置了 fixed: 'left' | 'right', 界面白屏

[ ] I'm sure this does not appear in the issue list of the repository

Basic Info

Package Name And Version<EMAIL_ADDRESS>Framework version<EMAIL_ADDRESS>Browser: chrome<IP_ADDRESS>

What is expected?
期望配置了prefixCls 可以正常使用
Steps to reproduce
console提示
Uncaught DOMException: Failed to execute 'add' on 'DOMTokenList': The token provided ('xxx arco-table-has-fixed-col-right') contains HTML space characters, which are not valid in tokens.

无法复现


Add Nakkaya (Clojure based)

Please add Nakkaya (Clojure based):
https://github.com/nakkaya/static
http://nakkaya.com/static.html

Sorry this issue has lingered so long!  You'll need to submit a PR as described here and we'll be happy to add it:  http://www.staticgen.com/rules


setProgress() jumps to nearest tick with seek_smoothly on

Dear Chuang Guangquan,
I really like your IndicatorSeekBar, but I found one problem.
I have this layout:
<com.warkiz.widget.IndicatorSeekBar
	...
	app:isb_ticks_count="3"
	app:isb_seek_smoothly="true"
	app:isb_thumb_adjust_auto="false"
	...
/>

So I want the extra tick in the middle to be just a marker, not a real tick.
This works fine when using the seekbar, but when calling IndicatorSeekBar.setProgress() initially, the thumb and indicator jump right to the nearest tick.
I think I tracked the error down to the IndicatorSeekBar.refreshSeekBarLocation() function where it says:
...
if (mTicksCount > 2) {
	mProgress = mProgressArr[getClosestIndex()];
	lastProgress = mProgress;
}
...

I think it should be something like:
...
if ((!mSeekSmoothly) && mTicksCount > 2) {
	mProgress = mProgressArr[getClosestIndex()];
	lastProgress = mProgress;
}
...

Maybe mAdjustAuto also needs to be taken into account (I'm not sure how mAdjustAuto and mSeekSmoothly play together).
Could you look into it?
Thanks!

This is actually also the cause for #174 by setting this, the behaviour is correct.

Dear Chuan Guangquan,
I really like your IndicatorSeekBar, but this problem really prevents me from using it in my project. Can I count on fixing it?
Thanks!


separated infection and susceptibility tables

Codecov Report

Merging #39 (4b8c3eb) into master (8cb513f) will decrease coverage by 0.15%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master      #39      +/-   ##
==========================================
- Coverage   11.10%   10.94%   -0.16%
==========================================
  Files          27       27
  Lines        1135     1151      +16
==========================================
  Hits          126      126
- Misses       1009     1025      +16

Impacted Files
Coverage Δ

src/infection_kernels.jl
0.00% <0.00%> (ø)

src/params/immunity.jl
0.00% <0.00%> (ø)

src/simparams.jl
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


[JLLs] Arrow_jll: avoid snappy_jll 1.2

The new snappy_jll broke Arrow_jll and therefore GDAL_jll; https://github.com/JuliaGeo/GDAL.jl/issues/171
This adds a compat entry in the registry to stop the breakage, giving us time to add compat for new builds in Yggdrasil.

Hope this PR could be accept quickly. It leads to many Geo packages broken.


[QUESTION] How to pack  SkiaSharp.NativeAssets.Linux.nupkg  and   HarfBuzzSharp.NativeAssets.Linux.nupkg  in  native Linux environment?

Hello!
I want to pack SkiaSharp.NativeAssets.Linux.nupkg  and  HarfBuzzSharp.NativeAssets.Linux.nupkg  on my  native Linux environment.
But  I  don't  know  the  pack  step  of  how  to  generate  these  two  nupkg.  Could you please give me some advice on how to generate  these  two  nupkg  on Linux environment?
Thanks!

There is a cake target. dotnet cake --target=nugets
I may have used singular nuget... Afk now, but basically cake. Or the bootstrapper.sh --target=nugets


Updated task to use parameters grid extension

@ds-ms,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Projects building doesn't work on Github action

CI process for projects building is down.
When we launch platformio build process on Github Actions, platformio can't install gcc toolchain :
"Error: Could not install package 'platformio/toolchain-gccarmnoneeabi @ ~1.70201.0' for 'linux_x86_64' system"
As all projects are tested OK on our local environment, we have decided to temporarily ignore this error and to merge last PR to Master.
This bug is not blocking but should be corrected to repair CI/CD workflow.
PS : Strangely, github actions correctly run on other Luos repos...

The job has passed OK whithout any modifications. It was just a Github environment problem.
Issue can be closed.

TODO : action @JeromeGalan


0.8.0-rc

These are the commits we should get into master before cutting 0.8.0-rc.

[ ] Upgrade two npm deps to work better with io.js: #1738
[x] Update docs with instructions for installing io.js: #1802
[x] Print a notice if the user is not running io.js: #1824
[x] Remove unnecessary imports for RCTHTTPRequestHandler to fix Cocoapods build: #1865

These are dependent issues:

Expose more modules when it is sensible to do so, due to new packager behavior #1821 This will not be included in 0.8.0-rc, waiting for @vjeux's return from pto before proceeding

Nice! Any chances text enhancements are merged as well? (text-decoration)

@grabbou textDecoration will be included along with a bunch of other updates. Should be an exciting release.

https://github.com/facebook/react-native/releases/tag/v0.8.0-rc


[5.5] Add Shortcuts to db:seed command options

For example :
php artisan db:seed -c ArticlesTableSeeder

Why? Are you seeding this so much that you need to save some keypresses? Are you really seeding so much in production that you need a shortcut for --force?

No plans on adding for now.


My bad. Always been thinking that -j without number is not an unlimited number of job, but optimal.


Images scaled twice/wrong when retrieved from ImageCache

It seems that images previously stored in the ImageCache and retrieved later via KingfisherManager are scaled twice. Consider following example:
KingfisherManager.DefaultOptions.scale = 1

// resizedData is a JPG with 1000x1000
KingfisherManager.sharedManager.cache.storeImage(UIImage(data: resizedData)!, originalData: resizedData, forKey: resizedURL)

// retrieve when cached
KingfisherManager.sharedManager.retrieveImageWithURL(resizedURL, ...) { (image, _, _, _) in
    // image is sized 2000x2000 on iPhone 6
}

// retrieve when not cached
KingfisherManager.sharedManager.retrieveImageWithURL(resizedURL, ...) { (image, _, _, _) in
    // image is correctly sized 1000x1000 on iPhone 6
}

Thanks for reporting this. I will check it later.

Hi, @schickling I just did some tests on it. I cannot reproduce your issue and the size is correct for me from both cache and internet.
Is it possible that you are using something like "@2x" suffix in your image name?

I'm sorry @onevcat. Turns out it was a problem on my end. Closing this...

Never mind. :)


[CCU-117] UXKit implementation of the CCL feature error handling

Added localised strings for error message title and desciription
Created cases for capacity limit error in ConferenceRoom and ConferenceActions

@dwecci for follow up


Remove shuffle and grid offset at start up.

Although I changed shuffle to 0 the device still starts with some shuffle.
Also check of grid_offset exhibits the same behavior.

Fixed by writing the counter element again, in d22363e


Setter method doesn't work

Hello,
I have this simple model
class User extends Model {
  static get tableName() {
    return 'users'
  }

  static get virtualAttributes() {
    return ['password']
  }

  set password(password) {
    console.log(password) // <- undefinied
    this.encryptedPassword = encryptPassword(password)
  }

  $formatJson(json) {
    json = super.$formatJson(json)
    delete json.encryptedPassword
    return json
  }
}

When I try to call something like const newUser = await User.query().insertAndFetch({ username, password })
Nothing is given to password. The password is undefinied. I haven't found anything about setter is in the documentation. Is this way somehow supported?

It does work for me. You don't want to mark the password property as a virtualAttribute. Does it work if you remove that?

Actually I tried and it works even with virtualAttributes set. The bug is somewhere in your code.

@koskimas Thanks. It was a bug in my code. I forgot to close this issue.


Keyboard Controls on Route Component

While the Route Component was based on the Threads component, it does not have working support for navigating by keyboard controls.

Pushing out to 0.4.0


chore(docs): add documentation for marble test syntax

Adds information about "marble tests" as well as porting over some guidelines for testing from RxJS 2/3

Looks good to Mom.

Mom is nice like that.

👵 approves


[HUDI-4273] Support inline schedule clustering for Flink stream

Tips

Thank you very much for contributing to Apache Hudi.
Please review https://hudi.apache.org/contribute/how-to-contribute before opening a pull request.

What is the purpose of the pull request
(For example: This pull request adds quick-start document.)
Brief change log
(for example:)

Modify AnnotationLocation checkstyle rule in checkstyle.xml

Verify this pull request
(Please pick either of the following options)
This pull request is a trivial rework / code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:
(example:)

Added integration tests for end-to-end.
Added HoodieClientWriteTest to verify the change.
Manually verified the change by running a job locally.

Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

Thanks for the work, i have reviewed and apply a patch here:
4273-review.patch.zip
You may need to go on with the patch for service mode :)

感谢您的工作，我已在此处查看并应用补丁： 4273-review.patch.zip 您可能需要继续使用补丁以用于服务模式:)

Thanks for review and patch, I will add service mode later.

Thanks for the work, i have reviewed and apply a patch here: 4273-review.patch.zip You may need to go on with the patch for service mode :)

Thanks for review and patch, I will add service mode later.

@hudi-bot run azure

@hudi-bot run azure

src/main/java/org/apache/hudi/util/ClusteringUtil.java:[23,8] (imports) UnusedImports: Unused import - org.apache.hudi.common.table.timeline.HoodieTimeline.

You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Ur going to keep on
On Thu, Jun 23, 2022, 6:21 AM hudi-bot @.***> wrote:

CI report:

08e1fa6
https://github.com/apache/hudi/commit/08e1fa6f7820b82180d3c0352c1f92f2b4fe2c6a
UNKNOWN
34a0f8d
https://github.com/apache/hudi/commit/34a0f8d9d13806bc30c3a13df9f72c58e5834fa5
Azure: FAILURE
https://dev.azure.com/apache-hudi-ci-org/785b6ef4-2f42-4a89-8f0e-5f0d7039a0cc/_build/results?buildId=9467

Bot commands @hudi-bot https://github.com/hudi-bot supports the
following commands:

@hudi-bot run azure re-run the last Azure build

—
Reply to this email directly, view it on GitHub
https://github.com/apache/hudi/pull/5890#issuecomment-1164286194, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AYYXGWRP4WSGYVYSMMDT443VQRCDLANCNFSM5Y7YCD7Q
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

This is me
On Thu, Jun 23, 2022, 6:21 AM hudi-bot @.***> wrote:

CI report:

08e1fa6
https://github.com/apache/hudi/commit/08e1fa6f7820b82180d3c0352c1f92f2b4fe2c6a
UNKNOWN
34a0f8d
https://github.com/apache/hudi/commit/34a0f8d9d13806bc30c3a13df9f72c58e5834fa5
Azure: FAILURE
https://dev.azure.com/apache-hudi-ci-org/785b6ef4-2f42-4a89-8f0e-5f0d7039a0cc/_build/results?buildId=9467

Bot commands @hudi-bot https://github.com/hudi-bot supports the
following commands:

@hudi-bot run azure re-run the last Azure build

—
Reply to this email directly, view it on GitHub
https://github.com/apache/hudi/pull/5890#issuecomment-1164286194, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AYYXGWRP4WSGYVYSMMDT443VQRCDLANCNFSM5Y7YCD7Q
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Strange behaviour when adding levels of exhaustion, especially after just loading, a period of time when not used and duplicate tokens

Hey Zhell, something really strange is happening with your Exhaustion Mod or ALTEX or DM (?).
When I load up the world, and try to add a level of exhaustion via either the token HUD or the macro it does not add a level of exhaustion.
However when I go in to the character sheet (dnd5e v3.0.4) and click on the 1st level of exhaustion pip, nothing happens. Then when I click on the 2nd level of exhaustion pip it applies the correct exhaustion. Then I click on 2nd level again it goes away and 1st level stays.
From then on you can add exhaustion levels via the HUD or the macro.
There are no errors in console and I have tested this with just ALTEX on only. All other modules turned off.
Then after a period of time or a reload the world it seems to reset and I can't add exhaustion until I have done that little ritual above again. (The add 2nd level, delete 2nd level ritual), Not sure if this helps any investigation but if I then go to another scene and drag a PC out that has got a token on another scene, the same thing happens, you can't add exhaustion to this other token until you do that little ritual.
Whilst I have been writing this, I went back to the world, so what, five minutes, and it has 'reset' to not being able to add exhaustion again via the HUD or macro. Do the 'ritual' and it works again.

Either a system or browser issue.


Mvs prepare

Issue #, if available:
https://github.com/aws/sagemaker-containers/issues/137
Description of changes:
bug-fix: reintroduce _modules.prepare for backwards compatibility
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

also fix your PR title :)

Codecov Report

Merging #138 into master will decrease coverage by 0.04%.
The diff coverage is 92.85%.

@@            Coverage Diff             @@
##           master     #138      +/-   ##
==========================================
- Coverage   95.39%   95.35%   -0.05%
==========================================
  Files          20       20
  Lines         825      839      +14
  Branches       72       73       +1
==========================================
+ Hits          787      800      +13
  Misses         23       23
- Partials       15       16       +1

Impacted Files
Coverage Δ

src/sagemaker_containers/_modules.py
95.58% <92.85%> (-0.71%)
:arrow_down:

Continue to review full report at Codecov.

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


[Feature Request] More realistic benchmark and throughput optimization

TensorRT-LLM has better kernel optimization, better model ecosystem support, and more quantization algorithm support compared to other large model inference libraries. However, during use, it is not easy to demonstrate its advantages in throughput scenarios(#73 #1097 #819 #965 #1255). The current benchmark is limited to designated parameters( for instances, batch sizes) that is not very close to reality.
Is it possible to replace the benchmark method with vLLM's type of benchmark_throughput, and improve throughput in this scenario? #632

Any updates?


Config file flag --config_file broken due to type hinting

The --config_file flag cannot be used due to the type hinting provided.
See this line: https://github.com/timothycrosley/cruft/blob/374b60ef55e35c7af6319346892780b0b729edde/cruft/api.py#L36
You can't use typing.Optional or typing.Union with the Hug arg parser, you need to use either hug.types.one_of or simply set the type to str and default the value to None (which might break mypy or other type validators).
Reproduction:

Create a config file with projectName and projectSlug
Run as follows

$ cruft create --config_file=config.yml -n $URL

usage: cruft [-h] [-o OUTPUT_DIR] [-c CONFIG_FILE] [-d] [-e EXTRA_CONTEXT]
             [-n] [-ov]
             template_git_url
cruft: error: argument -c/--config_file: invalid typing.Union[str, NoneType] value: 'config.yml'

Same issue here, was going to post it but happy to see you've already done the work @veaviticus :-)


Add initial implementation of the DocuSign Rooms connector

Purpose
Fixes: https://github.com/ballerina-platform/ballerina-library/issues/5964

It was decided to keep this connector on hold as it requires a authorization from DocuSign to enable DocuSign Rooms feature which we don't have the access yet. Therefore it is hard to test the Rooms APIs. And since there is no current requirement for this feature, we have put this on hold


set the correct field name when adding additional CAs

address https://issues.redhat.com/browse/CO-797

/lgtm


Fix funky formatting of level 4 headers

Before:

After:

@neilvana gonna bypass and submit since this is trivial and cosmetic.

@neilvana gonna bypass and submit since this is trivial and cosmetic.


Introduce Poetry and docker compose

@ryansurf
Please check the PR for #32 first!
I've introduced Poetry:)
ae931c6c3e0807caa004b2534935712316fe695e
And the relative import thing I mentioned here has been resolved.
06e36b3dccbe785511113181f067ca05c5be8d13
I also thought I'd recommend using Docker to launch it for users who don't want to use Poetry, and I've installed Docker Compose to make it easy to launch containers!
8d2efaf8df5f20a2f7f7f6d2914d4fadf9ba9e03
Docker Compose allows you to develop with it, so eventually you may want to consolidate to containers.
Finally, the usage of Poetry and Docker Compose is reflected in README.md and CONTRIBUTING.md
d62a73a6ceb3dcc38332151a063633029a1bee0a
I have checked that it works fine with what is written, but just to be sure, please check it in your environment as well!
Sorry for the amount of changes...

Tested the changes on my local, everything works! The relative import issue was quite annoying, thank you for getting on that.
The makefile you've created is perfect, everything is so simple to get up and going now.
By this: Docker Compose allows you to develop with it, so eventually you may want to consolidate to containers., do you mean that we should package all dev tools in containers eventually so all dev can take place there? Maybe my question didn't make sense, can you elaborate on this one a little?
The documentation you wrote is great, I used it when testing the changes on my local and it went smoothly.
You've been doing some great work, thank you all the changes you've made. I wouldn't have thought of most of these things on my own :joy:, I appreciate it!

@ryansurf
Hey, Thanks a bunch for accepting my PR! I'm really glad to hear that it was helpful.

By this: Docker Compose allows you to develop with it, so eventually you may want to consolidate to containers., do you mean that we should package all dev tools in containers eventually so all dev can take place there? Maybe my question didn't make sense, can you elaborate on this one a little?

Sorry, my explanation was a bit lacking.
When it comes to developing with Docker Compose, all the development tools (like Poetry) are installed inside the container.
This means you can hop into the container, directly edit the files within, and get your development groove on. The best part? Your local development environment stays squeaky clean!
Take Visual Studio Code, for example. It's a super popular IDE that has this awesome extension called Remote Containers. With this handy tool, you can connect to a container fired up by VScode and work your magic on the files inside. It's like having the full local development experience, but without the clutter!
You might already be familiar with Remote Containers, but if you haven't tried it out yet, I totally recommend giving it a spin :)

I see, I was not familiar with remote containers. Might be the move honestly, I started messing around with Docker a few months ago and haven't looked back. Thanks for explaining


Does sea-orm open extension, Custom gen raw_sql and connection database?

Now, I want use dameng database, but sea-orm not support. And sqlx also not support dameng database.
Does sea-orm open gen raw_sql trait, and connection databse trait.
Then,I can solve the problem of SQL generation by myself：like sea-query crate.
also open connection dabtase trait, I can use odbc-api solve database connection problem.
This is good idea to inprove sea-orm open ability. If your want, I can do this part.
What is my position?

Reuse the api of sea-orm, no perception database in the business layer
make sea-orm stronger scalability
I don't want fork sea-orm, because the fork code cannot be merged into the main line and cannot be supported later
I am optimistic about the sea-orm team, because I am also one of the contributors. Working together can go a long way

@billy1624 @tyt2y3

Is this related?

https://github.com/SeaQL/sea-orm/issues/867

Is this related?

https://github.com/SeaQL/sea-orm/issues/867

yes


[FEAT] User Data Export API Endpoint

Description
Implement functionality for users to export their data. This feature will allow users to download their personal data in a commonly used format (such as JSON or CSV) directly from the application.
Acceptance Criteria
Purpose

Provide users with the ability to export their personal data.

Requirements

Create a secure API endpoint for data export.

Ensure the endpoint is accessible only to authenticated users.

Provide options to export data in different formats (e.g., JSON, CSV).

JSON format
CSV format

Ensure the exported data includes all relevant user information.
Implement security measures to ensure only authenticated users can export their own data.

Validate user authentication before processing the export request.

Expected Outcome

Users can securely export their data in both JSON and CSV formats.
Only authenticated users can access the export functionality.
Exported data is complete, accurate, and includes all relevant user information.

Detailed Tasks

Endpoint Creation:

[ ] Create a secure API endpoint for data export.

Ensure the endpoint is accessible only to authenticated users.

Data Collection:

[ ] Collect all relevant user data to be included in the export.
[ ] Ensure data completeness and accuracy.

Data Export Formats:

[ ] Implement functionality to export data in JSON format.
[ ] Implement functionality to export data in CSV format.

Security Measures:

[ ] Validate user authentication before processing the export request.

Endpoints
GET /api/user/export [PROTECTED]
Query Parameters

format (string) - The format of the exported file. Can be either json or csv. (Required)

Responses
Success Response
Status Code: 200
A file download will start containing the exported user data in the requested format.
Error Responses
Status code: 400
Export format is required
{
  "status_code": 400,
  "message": "Export format is required",
  "error": "Bad Request"
}

Status code: 500
File generation failed
{
  "statusCode": 500,
  "message": "string",
  "error": "Internal Server Error"
}

Database Schema
The schema for the database we're working with is shown below:

Sample User Data Export (JSON)
{
  "user": {
    "id": "12345",
    "email"<EMAIL_ADDRESS>    "name": "John Doe",
    "role": "user",
    "created_at": "2020-01-01T12:00:00Z",
    "updated_at": "2024-07-15T18:30:00Z"
  },
  "organizations": [
    {
      "id": "org1",
      "name": "Example Corp",
      "role": "member",
      "created_at": "2021-05-01T12:00:00Z"
    },
    {
      "id": "org2",
      "name": "Tech Innovators",
      "role": "admin",
      "created_at": "2022-06-15T09:00:00Z"
    }
  ],
  "payments": [
    {
      "id": "pay1",
      "amount": 49.99,
      "currency": "NGN",
      "status": "completed",
      "provider": "stripe",
      "provider_payment_id": "stripe_12345",
      "created_at": "2023-05-01T12:00:00Z",
      "updated_at": "2023-05-01T12:00:00Z"
    }
  ],
  "messages": [
    {
      "id": "msg1",
      "sender_id": "12345",
      "recipient_id": "67890",
      "subject": "Meeting Reminder",
      "body": "Don't forget about our meeting tomorrow at 10am.",
      "status": "read",
      "created_at": "2024-06-20T08:00:00Z"
    }
  ],
  "settings": {
    "language": "en_US",
    "region": "US",
    "email_notifications": true,
    "push_notifications": true,
    "updated_at": "2024-07-15T18:30:00Z"
  },
  "widgets": [
    {
      "id": "widget1",
      "name": "Sample Widget",
      "type": "sample type",
      "data": {
        "temperature": "25°C",
        "condition": "Sunny"
      },
      "created_at": "2024-06-20T15:45:00Z",
      "updated_at": "2024-07-15T18:30:00Z"
    }
  ],
  "notifications": [
    {
      "id": "notif1",
      "type": "system",
      "message": "Your password will expire in 3 days.",
      "is_read": false,
      "created_at": "2024-07-10T12:00:00Z"
    }
  ],
  "activity_log": [
    {
      "id": "act1",
      "action": "Logged in",
      "details": null,
      "created_at": "2024-07-01T10:00:00Z"
    },
  ],
  "blog_posts": [
    {
      "id": "blog1",
      "title": "My First Blog Post",
      "content": "This is the content of the blog post.",
      "author_id": "12345",
      "created_at": "2024-07-10T11:00:00Z",
      "updated_at": "2024-07-10T11:00:00Z"
    }
  ]
}

Testing

Setup: Populate the database with test data including users, organizations, payments, messages, settings, widgets, notifications, activity logs, and blog posts.
Execution: Send a request to the user data export endpoint.
Authorization: Ensure that the user is requesting data that belongs to him and him alone.
Validation:

Verify the response includes user, organizations, payments, messages, settings, widgets, notifications, activity_log, and blog_posts sections.

Edge Cases:

Test with users having no associated data (organizations, payments, etc.), minimal data, and maximal data.

Error Handling:

Check error responses for invalid requests or database issues.

Expected Test Outcome
Successful execution of tests ensures the user data export endpoint retrieves, formats, and handles data accurately across various scenarios.

This issue is being worked on by:
@daviduzondu - Nestjs
@iamroxified - Laravel


[feature] Add Security.md

@Aisuko Were there specific requirements regarding information to be covered for this document or was it to be tailored more towards generic security info relating to the tech stack?

Hi @CarterFaceySmith, we only want to have a simple Security.md file like<EMAIL_ADDRESS>There is no further request.


Bazel  C++ build failure when involved with external dependencies.

I was trying to import the envoy source code into CLion with bazel plugin.
Envoy has relies on several none bazel build dependencies. The Envoy team seems to using bazel genrule to run bash command to fix the none bazel build dependencies.
Here is a simple example described at https://blog.envoyproxy.io/external-c-dependency-management-in-bazel-dd37477422f5 which illustrated the Envoy external bazel solution.
FOO_BUILD_SH="""
#!/bin/bash
git clone https://github.com/something/foo.git
cd foo
git checkout 4374be38e9a75ff5957c3922adb155d32086fe14
./configure
make
"""
FOO_BUILD="""
cc_library(
    name = "bar",
    srcs = ["bar.a"],
    hdrs = glob(["*.h"]),
)
"""
def _foo_repository_impl(ctxt):
    ctxt.file("foo_build.sh", content=FOO_BUILD_SH)
    ctxt.file("BUILD", content=FOO_BUILD, executable=False)
    ctxt.execute(["./foo_build.sh"])
foo_repository = repository_rule(
    implementation = _foo_repository_impl,
    environ = ["CC", "CXX", "LD_LIBRARY_PATH"],
    local = True,
    ...
)
foo_repository(
    name = "foo",
)

Since i am new to bazel, I may consider this as a external bazel dependencies.
The Envoy bazel build phase like this:
#to fetch and build all external dependencies. This may take some time.(I think this is using genrule to build the external dependencies and take them as the next step Bazel analysis/build input )
bazel fetch //source/...
#from the Envoy source directory.
bazel build //source/exe:envoy-static

Those two command worked well in my terminal.
I have take the CLion /.bazelproject like this:
directories:
  .
targets:
  //source/exe:envoy-static

However when i try to import Envoy into Clion, The bazel Console output likes this:
Syncing project: Sync (incremental)...
Updating VCS...
Running Bazel info...
Command: /usr/local/bin/bazel info --tool_tag=ijwb:CLion --curses=no --color=yes --experimental_ui=no --progress_in_terminal_title=no --

Command: git diff --name-status --no-renames 34b87b6451c913601efc4ffcdeaf4dd2e53d37eb

Computing VCS working set...
Your working set is empty
Sync targets from project view:
  //source/exe:envoy-static

Building IDE info files...
Command: /usr/local/bin/bazel build --tool_tag=ijwb:CLion --keep_going --experimental_build_event_binary_file=/var/folders/dm/17kk6qmd6_l5rpxzm_zq3vsc0000gn/T/intellij-bep-2bdfc282-ec6c-4158-8d5a-5fd9ab59cdd6 --noexperimental_build_event_binary_file_path_conversion --curses=no --color=yes --experimental_ui=no --progress_in_terminal_title=no --aspects=@intellij_aspect//:intellij_info_bundled.bzl%intellij_info_aspect --override_repository=intellij_aspect=/Users/shihuashen/Library/Application Support/CLion2017.3/clwb/aspect --output_groups=intellij-info-cpp,intellij-info-py,intellij-info-generic -- //source/exe:envoy-static

INFO: Loading complete.  Analyzing...
External dependency cache directory /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/cares.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/benchmark.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/libevent.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/gperftools.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/luajit.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/nghttp2.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/yaml-cpp.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/zlib.dep.env

real	0m0.052s
user	0m0.046s
sys	0m0.053s
/private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps/./repositories.sh: line 41: realpath: command not found
ln: thirdparty: Invalid argument
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:76:5: Fetching external dependencies...
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:82:5:
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:83:5: External dependency cache directory /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/cares.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/benchmark.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/libevent.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/gperftools.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/luajit.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/nghttp2.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/yaml-cpp.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/zlib.dep.env

real	0m0.052s
user	0m0.046s
sys	0m0.053s
/private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps/./repositories.sh: line 41: realpath: command not found
ln: thirdparty: Invalid argument
.
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:84:5: External dep build exited with return code: 1.
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:86:9:  External dependency build failed, check above log for errors and ensure all prerequisites at https://github.com/envoyproxy/envoy/blob/master/bazel/README.md#quick-start-bazel-build-for-developers are met.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:tcmalloc_and_profiler'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:ares'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:zlib'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:event'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:event_pthreads'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:nghttp2'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:yaml_cpp'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:luajit'.
WARNING: errors encountered while analyzing target '//source/exe:envoy-static': it will not be built.
INFO: Found 0 targets...
INFO: Building...
ERROR: command succeeded, but there were loading phase errors.
INFO: Elapsed time: 1.833s, Critical Path: 0.05s
ide-info result: build_error
Total rules: 0, new/changed: 0, removed: 0
Reading IDE info result...
Loaded 0 aspect files, total size 0kB
ide-query result: build_error
Target map size: 0
Building IDE resolve files...
Command: /usr/local/bin/bazel build --tool_tag=ijwb:CLion --keep_going --experimental_build_event_binary_file=/var/folders/dm/17kk6qmd6_l5rpxzm_zq3vsc0000gn/T/intellij-bep-bcbf05ee-8647-4d1c-9110-770ce7372e5f --noexperimental_build_event_binary_file_path_conversion --curses=no --color=yes --experimental_ui=no --progress_in_terminal_title=no --aspects=@intellij_aspect//:intellij_info_bundled.bzl%intellij_info_aspect --override_repository=intellij_aspect=/Users/shihuashen/Library/Application Support/CLion2017.3/clwb/aspect --output_groups=intellij-resolve-cpp,intellij-resolve-py -- //source/exe:envoy-static

INFO: Loading complete.  Analyzing...
External dependency cache directory /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/cares.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/benchmark.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/libevent.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/gperftools.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/luajit.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/nghttp2.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/yaml-cpp.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/zlib.dep.env

real	0m0.100s
user	0m0.052s
sys	0m0.060s
/private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps/./repositories.sh: line 41: realpath: command not found
ln: thirdparty: Invalid argument
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:76:5: Fetching external dependencies...
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:82:5:
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:83:5: External dependency cache directory /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/cares.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/benchmark.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/libevent.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/gperftools.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/luajit.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/nghttp2.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/yaml-cpp.dep.env
No need to rebuild /private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps_cache_2c744dffd279d7e9e0910ce594eb4f4f/zlib.dep.env

real	0m0.100s
user	0m0.052s
sys	0m0.060s
/private/var/tmp/_bazel_shihuashen/8fbcf09a06eff1d5926da68beaf78611/external/envoy_deps/./repositories.sh: line 41: realpath: command not found
ln: thirdparty: Invalid argument
.
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:84:5: External dep build exited with return code: 1.
DEBUG: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:86:9:  External dependency build failed, check above log for errors and ensure all prerequisites at https://github.com/envoyproxy/envoy/blob/master/bazel/README.md#quick-start-bazel-build-for-developers are met.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:tcmalloc_and_profiler'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:event_pthreads'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:event'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:luajit'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:nghttp2'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:zlib'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:ares'.
ERROR: /Users/shihuashen/envoy/envoy/bazel/repositories.bzl:181:13: no such package '@envoy_deps//': External dep build failed and referenced by '//external:yaml_cpp'.
WARNING: errors encountered while analyzing target '//source/exe:envoy-static': it will not be built.
INFO: Found 0 targets...
INFO: Building...
ERROR: command succeeded, but there were loading phase errors.
INFO: Elapsed time: 0.647s, Critical Path: 0.06s
Prefetching genfiles...
Prefetching files...
Computing directory structure...
Committing project structure...
Workspace has 0 libraries
Workspace has 2 modules
Sync was successful, but there were BUILD file errors. The project may not be fully updated or resolve until fixed. If the errors are from your working set, please uncheck 'Blaze > Sync > Expand Sync to Working Set' and try again.
Updating in-memory state...
0 unique C configurations (0 reused), 0 C targets

==== TIMING REPORT ====

Sync: 3.1s
    BazelInfo: 245ms
    GitDiff: 47ms
    WorkingSet: 0ms
    IdeQuery: 2.0s
        ExecuteBazelCommand: 2.0s
        FetchAspectOutput: 0ms
        UpdateTargetMap: 0ms
    BazelBuild: 776ms
        ExecuteBlazeCommand: 773ms
        PrefetchGenfiles: 0ms
    UpdateSyncState: 0ms
    ReverseDependencies: 0ms
    PrefetchFiles: 1ms
    RefreshVirtualFileSystem: 3ms
    DirectoryStructure: 9ms
    UpdateProjectStructure: 18ms
    UpdateInMemoryState: 2ms
        Setup C Workspace: 1ms
            Build toolchain lookup map: 0ms
            Resolve header include roots: 0ms
            Build compiler settings map: 0ms
            Build C configuration map: 1ms

Timing summary:

BlazeInvocation: 3.0s
Prefetching: 1ms
Other: 78ms

I have notice that there are several tricky problems occurs:
1.'realpath: command not found' . In fact i'm definitely sure that realpath works in my terminal.
2.Most of the error shown that the external dependencies can't be  build. However , I can run the command in CLion Bazel Command : bazel build //source/exe:envoy-static.
So i think such error may occurs when runing
Building IDE info files...
Command: /usr/local/bin/bazel build --tool_tag=ijwb:CLion --keep_going --experimental_build_event_binary_file=/var/folders/dm/17kk6qmd6_l5rpxzm_zq3vsc0000gn/T/intellij-bep-2bdfc282-ec6c-4158-8d5a-5fd9ab59cdd6 --noexperimental_build_event_binary_file_path_conversion --curses=no --color=yes --experimental_ui=no --progress_in_terminal_title=no --aspects=@intellij_aspect//:intellij_info_bundled.bzl%intellij_info_aspect --override_repository=intellij_aspect=/Users/shihuashen/Library/Application Support/CLion2017.3/clwb/aspect --output_groups=intellij-info-cpp,intellij-info-py,intellij-info-generic -- //source/exe:envoy-static

Any suggestion to fix this? Or should i ask this question in Envoy Team?
I think this may be more connection with Clion Bazel Plugin, since I can run the plain build in both terminal and IDE .So for now, I post this issue here temporarily .

Gentlemen，any suggestion on this? Or should I close this issue?

If realpath is not found, perhaps it's an issue with the environment you're launching the IDE from? Could you try launching it directly from a terminal?

Yes, I'm sure realpath works in terminal. Meanwhile, I can run simple command
bazel build //source/exe:envoy-static
with Bazel Plugin alone

.
The IDE running environment is always confusing. Recall several other issues , when users have install bazel, however the IDE inform us that bazel is not found. So after we have configured it with Perferences->Other Settings->Bazel with absolute path, then it works.
So , i think this problems may be has same correlation with Issue #281 ?

If you're on a mac, then this is almost certainly https://github.com/bazelbuild/intellij/issues/282.
Try launching the IDE from a terminal.


Fixed wrong nbt key name Criteria -> CriteriaName

I tried to load an original minecraft world into Glowstone and it complained about the non-existent scoreboard objective nbt tag "Criteria".
This PR changes the tag name to "CriteriaName" as it is used in Minecraft Vanilla (-> Minecraft Wiki) to allow scoreboard objectives to be loaded on a Glowstone server.

Looks good. Thank you for your contribution.


[Bug]: Obtained incorrect ddl while viewing Oracle table structure

ODC version
4.2.4
OB version
oracle
What happened?

What did you expect to happen?
Show the correct ddl
How can we reproduce it (as minimally and precisely as possible)?
Create oracle tables with index.
Anything else we need to know?
No response
Cloud
No response

pass


refactor: remove unnecessary function call

Signed-off-by: hsgwa<EMAIL_ADDRESS>Description
This PR fixes an omission in #68
Related links

Notes for reviewers

Pre-review checklist for the PR author

[x] I've confirmed the contribution guidelines.
[x] The PR is ready for review.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[x] The PR has been properly tested.
[x] The PR has been reviewed.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.
[ ] The PR is ready for merge.

After all checkboxes are checked, anyone who has write access can merge the PR.

@takam5f2
sure.

Could you fix argvs?

I fixed in : 64105cc

@takam5f2
According to  results of clang-tidy-differential, following error and warnings occur.
Although warnings had been raised since the clang-tidy test was introduced, none of them were fatal, so we ignored them.
error: no template named 'is_same_v' in namespace 'std'; did you mean 'is_same'? [clang-diagnostic-error]
    if constexpr (!std::is_same_v<std::false_type, T4>) {
                   ~~~~~^~~~~~~~~
                        is_same

error: inclusion of deprecated C++ header 'time.h'; consider using 'ctime' instead [modernize-deprecated-headers,-warnings-as-errors]
#include <time.h>
         ^~~~~~~~
         <ctime>

warning: function-like macro 'DEFINE_ORIG_FUNC' used; consider a 'constexpr' template function [cppcoreguidelines-macro-usage]
#define DEFINE_ORIG_FUNC(TP_NAME) TP_NAME = dlsym(RTLD_NEXT, #TP_NAME)
        ^

warning: invalid case style for namespace 'ORIG_FUNC' [readability-identifier-naming]
namespace ORIG_FUNC
          ^~~~~~~~~
          orig_func

warning: do not use C-style cast to convert between unrelated types [cppcoreguidelines-pro-type-cstyle-cast]
    ((functionT) orig_func)(callback, is_intra_process);
     ^


SQL Editor Query Queue jobs need to be throttled when there are too many updates.

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Init the example data set and start the application
Type SELECT * FROM flightlist_2022_02 in the SQL editor
Copy flightlist_2022_02 to the clipboard
point your cursor to the end of the statement and hold the delete key until you hit FROM. Paste the table name and press and hold delete again.  This effectively rewrites a query quickly adding a backlog to the queue.
Kicks off a loop of errors and automatically written SQL that breaks the interface.

Expected behavior
We should be throttling the way requests are sent to the query queue so it doesn't overwhelm and shut down the application.
Screenshots

I can still see the flickering in the editor when I was playing with it more.  We should put together a checklist of things to try once we get a patch in that we think resolves the issue.  It should involve quickly writing a more complex query repeatedly.

If it is the materialized files we can revert those features and get the application back into a stable state.

related? https://github.com/rilldata/rill-developer/issues/352

We have closed out this issue and disabled the functionality for now.


Updated x/net package

Description
Updated x/net package
Type of change

Security fix in dependent library (no changes in the code)

Testing steps
To be checked on CI.
Checklist

[ ] make before_commit passes
[ ] updated documentation wherever necessary
[ ] added or modified tests if necessary
[ ] updated schemas and validators in insights-data-schemas in case of input/output change

Codecov Report
All modified lines are covered by tests :white_check_mark:
:loudspeaker: Thoughts on this report? Let us know!.


Adds support service discovery page in react ui

Fixes: #6386
Explanatory GIF

Video Link

Awesome, thanks, I'll try to take a look soon (somewhat busy weekend)!
cc @boyskila in case you're interested.

Hi @Harkishen-Singh ! I tried to stick only to Labels component but I leave some comments for the Services.tsx as well

Can we tacle #3843 at the same time?

@juliusv @boyskila Thank you for the review. I will implement the suggestions asap. Sorry for the delay.

@boyskila please have a look. I have implemented the suggestions.

@boyskila please have a look.

@juliusv WDYT about the idea to combine name and button similar to Alerts?

@boyskila That's a good point to think about, but another thing for now: the SD page is most similar to the targets page, but that one also would need to be changed to this style then. For now I would prefer if the SD page got styled consistently with the targets page. E.g. the "show more" buttons have a different style on SD than on targets. And then we can think later whether we want to change both to the alerts page style.

Alright, added a bunch more comments. There still seems to be a lot to do. I would say let's focus on getting this one fixed up and right before attacking the rules page (which is again pretty complex).

@boyskila That's a good point to think about, but another thing for now: the SD page is most similar to the targets page, but that one also would need to be changed to this style then. For now I would prefer if the SD page got styled consistently with the targets page. E.g. the "show more" buttons have a different style on SD than on targets. And then we can think later whether we want to change both to the alerts page style.

Yeah, I agree. I just mention that just because I don't like that the buttons are aligned differently. Maybe all pages which in some way looks similarly can be designed in a same way

So one more thing I discovered: when a target overrides the default job name (so the job name becomes different from the scrape pool name) and is dropped, it won't be associated with the right section anymore.
Config to reproduce:
scrape_configs:
  - job_name: default_job_name
    static_configs:
      - targets:
        - localhost:9090
        - localhost:12345
        labels:
          job: overridden_job_name
    relabel_configs:
      - action: drop
        source_labels: [__address__]
        regex: 'localhost:12345'

Old UI:

New UI:

Currently the API does not return the name of the scrape pool for dropped targets. We should extend it to do so, so we can refer to it from the UI. But it's IMO ok to do after this PR as well.

:+1: Thanks, looks mostly good now! I'm going to merge, and if we find more stuff to change (like the marked TODO, https://github.com/prometheus/prometheus/pull/6394#issuecomment-569279774, or others), we can always do it as a follow-up :)


Make using NuGet packages installed with Install-Package easier to use - make Add-Type support NuGet packages

https://github.com/PowerShell/PowerShell/issues/6679#issuecomment-384096971 shows how hard it is to use a NuGet package installed via Install-Package in Powershell, for two reasons:

You must manually determine the platform-appropriate *.dll file in the package's folder subtree and pass its full path to Add-Type -Path (e.g., runtimes/linux-x64/... on a 64-bit Intel Linux system)

Even that by itself is not enough, if the package contains native helper libraries, because Add-Type -Path doesn't find them - see link above (whereas creating a C#-based .NET Core console application based on the same package installed with dotnet add package does).

Therefore, it would be great if  Add-Type had built-in support for resolving both issues above, say with the following syntax:
## WISHFUL THINKING

# Install a NuGet package from the NuGet Gallery and add its types to the session.
Install-Package -Provider nuget Mono.Posix.NETStandard  | Add-Type

# Add the types of an already installed NuGet package to the session.
# Perhaps even download and install the package on demand.
Add-Type -Package Mono.Posix.NETStandard

# Equivalent, via Get-Package.
Get-Package Mono.Posix.NETStandard | Add-Type

That is, when given a NuGet package [name], Add-Type would load the platform-appropriate assemblies and all their dependencies to make their types available to the current session.
Environment data
Written as of:
PowerShell Core v6.0.2

Would love this. Coming from Cake Build this was so easy with https://cakebuild.net/docs/fundamentals/preprocessor-directives. Given the widespread usage of nuget and likely need to leverage that from PS Core scripts it would seem this would be supported as a first class citizen.

@iSazonov:
Install-Module is used for PowerShell modules from the PowerShell Gallery, whereas NuGet packages are .NET packages from the NuGet Gallery.
While PSGallery modules can be installed with Install-Package too, because the *-Package cmdlets are an abstraction over all galleries / package sources, the inverse is not true: NuGet packages cannot be installed with Install-Module.
Is that what you were asking?

@iSazonov:
While #7259 has the same goal in the abstract - making use of NuGet package easier - it is a competing proposal in terms of implementation.

#7259 suggests the use of Import-Module to load NuGet package.

This issue suggest use of Add-Type only.

I don't think it's appropriate to integrate the functionality into Import-Module, because NuGet packages are .NET assemblies, not PowerShell modules; hence the suggestion to use Add-Type, which is the cmdlet to use for assemblies.
In short: My vote is to implement this issue only, instead of #7259.

.NET assemblies can contain cmdlets. We use this in our tests.

@iSazonov:
Yes, all compiled cmdlets come as part of assemblies, but they're typically packaged as part of a PS module.
However, good point about the need to use Import-Module on an assembly containing a cmdlet that isn't packaged as part of a module in order to import such cmdlets; I assume you meant:
(Install-Package "SomePackage"  | Add-Type -PassThru).Assembly | Import-Module

But it sounds like we're in agreement then, correct?:
No changes to Import-Module are required; it is sufficient to make Add-Type understand NuGet packages.

I just wanted to chime in and say we're run into this as well.
Our use case is that we use several binaries from SQL Management Objects (SMO) which as of SQL 2017 are ONLY shipped as a NuGet Package in our various scripts for maintaining SQL Databases. It'd be really convenient to have Add-Type extended to support that scenario.
Anyone got any good ideas?

@aolszowka We could use assembly context. Now binary module developers can already use it.

@iSazonov Are you asking which Assemblies we use from the SMO package or is there something else I am missing?

Microsoft.SqlServer.SMO
Microsoft.SqlServer.SmoExtended
Microsoft.SqlServer.ConnectionInfo
Microsoft.SqlServer.SmoEnum

We primary use it to expose Microsoft.SqlServer.Management.Smo.BackupDeviceItem and its kin to our scripting environment.
I suspect that the problem will become worse as more and more of .NET Core is leveraged for example in other places in this script we use System.Data.SqlClient right now the older version that ships with the .NET Framework works just fine for us; but eventually I am sure we will need to ship the version that is posted on NuGet https://www.nuget.org/packages/System.Data.SqlClient/

@aolszowka My comment was about version conflits and how we could resolve this. PowerShell Core uses default .Net Core assembly context. All assemblies is loaded in the context including assemblies created by Add-Type. As workaround you could create custom context and load needed assemblies to it. Then you'll have to implement cmdlets which refer to the custom context.

@iSazonov I think this is an important feature, and you bring up a good point about assembly context.  With the new .NET SDK project system, PowerShell has been completely left behind in terms of ease-of-use.  @SteveL-MSFT  recently asked me how I wanted New-ModuleManifest to work, and I rebutted that I don't just want functionality to change, I want entire features to exist that make development easier.
For others (@mklement0 and @aolszowka ): To understand what @iSazonov is saying about "assembly loading context", I suggest reading @natemcmaster 's blog post: https://natemcmaster.com/blog/2018/07/25/netcore-plugins/ - so, when you're calling Add-Type, it loads it into the default context and there is no assembly isolation, so there is no way to load two versions of Newtonsoft.Json.  Add-Type would need a -AssemblyLoadContext parameter to be able to say how to load the types from the dll.

@iSazonov The other problem I see is that psd1 file format does not specify an AssemblyLoadContext, either.

@jzabroski It could be in PowerShell engine like Import-Module -IsolatedContext

@iSazonov Yes, it could be in PowerShell engine via something like -IsolatedContext. Here are a list of the touch points I can think of throughout the PowerShell universe that should be considered:

psd1 PowerShell Module Manifest file "knobs"

RootModule key can be a dll (although this fact is not documented anywhere, my testing discovered it), that dll in turn can load other dll(s) using the default assembly loading context. While it's possible for the author of the RootModule dll to use something like DotNetCorePlugins and achieve an isolated context for its dependencies,
(Curiously) If RootModule is unspecified and NestedModules contains a single dll, that dll will become the entry point for the PowerShell module.  (This was tested using RedGate.SqlClone.PowerShell module).  This is my observed behavior and may not be the fundamental behavior.
If RequiredAssemblies key is specified, my observed behavior (because PowerShell documentation is missing) is that Import-Module for the module forces the assemblies to load before Import-Module completes.* (* Asterisk denotes "before", because, as you may know, the module cache is asynchronous, so the behavior is actually undefined as to when it really gets loaded.)

In PowerShell 5, if you try to load two different dll versions of the same assembly via RequiredAssemblies, the second assembly silently fails.  In PowerShell Core, it produces a warning, which is better but still not great.

Add-Type knob

Like the psd1 PowerShell Module Manifest, it contains a -ReferencedAssemblies parameter, which I am guessing is meant to be isomorphic to the Module Manifest's RequiredAssemblies key.  This "law of nature" is also not documented anywhere, but for the sake of this discussion and drawing a circle around "assembly loading context" design space, it is purposeful to highlight.
Get-Help Add-Type -Examples returns nothing.  Before we go adding new parameters to this cmdlet, I suggest we fix the documentation.  What's the point in having a technical discussion if there is no specification and examples of the specification in action?

CLR System.Reflection knobs

[System.Reflection.Assembly]::LoadFrom , the behavior for which is defined in Deploying .NET Framework Applications > How the Runtime Locates Assemblies > Initiating the Bind
[System.Reflection.Assembly]::LoadWithPartialName deprecated

Please add additional knobs I am unaware of in your replies to this thread.

In this vein, I have found StackOverflow user Bacon Bits answer to "How to load assemblies in PowerShell?" quite helpful, in that he delves into "How do I verify what I loaded?"
Further in this vein, I think it would be great to name named contexts.  This could be essentially the same as "var jq = $.noConflict()" JavaScript trick the jQuery library uses: it releases the existing named context and replaces it with a new variable (ideally a locally scoped variable!).  This is also not much different than how, in C#, you can specify a namespace alias, including the global namespace alias.

Note: I ran into an issue on PowerShell 5 where an assembling Binding Redirect was required, but since PowerShell doesn't have the concept of binding redirects, I can't just use Add-Type or -RequiredAssemblies, as explained in StackOverflow answer to Resolving assembly dependency references with powershell
I realize this GitHub project is devoted to PowerShell 6, but until PowerShell 6 gets more features, for the same of completeness, I'm going to bring this up as it's "the only way to get things done in PowerShell 5".

since PowerShell doesn't have the concept of binding redirects

It is not PowerShell feature. It is .Net Core feature and we get this back in .Net Core 3.0 as new API.

Please provide a link to explain your comments.
On Sat, May 25, 2019, 3:42 AM Ilya<EMAIL_ADDRESS>wrote:

since PowerShell doesn't have the concept of binding redirects
It is not PowerShell feature. It is .Net Core feature and we get this back
in .Net Core 3.0 as new API.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PowerShell/PowerShell/issues/6724?email_source=notifications&email_token=AADNH7JWJX6SN5EW4LSMANDPXDUXFA5CNFSM4E4KKOOKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWHIFRQ#issuecomment-495878854,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AADNH7IZLP4ZLCWSJPEW2UTPXDUXFANCNFSM4E4KKOOA
.

https://github.com/dotnet/coreclr/blob/master/Documentation/design-docs/assemblyloadcontext.md
Links from related discussion https://github.com/PowerShell/PowerShell/issues/9488#issuecomment-492650809
https://github.com/PowerShell/PowerShell/issues/9488#issuecomment-492726603

hello guys, I am MS-SQL DBA and I use PowerShell on Windows and I used it also with System.Data.SqlClient namespace, however this won't get new features from now on and only Nuget Package Microsoft.Data.SqlClient will be shipped will all new features (decision by .NET team). This Nuget Package comes with 4 dependencies. Can someone please give me simple step by step guide how can use objects defined in Microsoft.Data.SqlClient in my PowerShell script? I've tried Add-Type but that doesn't work really.

edit: I finally get it done... only PS Core works

@MartinHBA Since you mentioned this, please add a link to an example/gist.

hi @iSazonov , you can find it here

@MartinHBA, did you accidentally create a private Gist? The link yields a 404.

The correct link is
https://gist.github.com/MartinHBA/86c6014175758a07b09fa7bb76ba8e27
On Sat, Nov 9, 2019, 5:08 PM Michael Klement<EMAIL_ADDRESS>wrote:

@MartinHBA https://github.com/MartinHBA, did you accidentally create a
private Gist? The link yields a 404.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PowerShell/PowerShell/issues/6724?email_source=notifications&email_token=AADNH7JT2ZDCB2KSSAXNDLLQS4YGPA5CNFSM4E4KKOOKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDUQJ2I#issuecomment-552142057,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADNH7NXW5AOK3EDGLSCIPLQS4YGPANCNFSM4E4KKOOA
.

Is this on the roadmap for the PowerShell team at anytime?
The need to load in NuGet Packages (in this case the one that seems to keep coming up is the SMO Tooling, in addition to this thread here is another one https://github.com/dotnet/SqlClient/issues/623) seems to be a pretty common scenario for a lot of developers.
The current work arounds (provided by @MartinHBA and @mklement0 in #11860) aren't super great. Massive kudos to you two though because you show up in many of these threads! Here's another public blog post that tries to work around the issue as well http://www.maxtblog.com/2020/03/streamlining-sql-server-management-objects-smo-in-powershell-7-revised/. While we appreciate that it is a way to move forward they all basically boil down to:

Copying the Appropriate DLL's out of the various referenced NuGet Packages (or creatively referencing them from their NuGet locations)
Performing an Add-Type for each of the dependency assemblies

This is a bit of a pain, especially because the Microsoft.Data.SqlClient.SNI.runtime package ships a native binary that will require you to determine if you're going to run x64 vs x86 and then have the native assembly sitting next to the managed assembly. This makes automating this in any type of pipeline wherein you do not have full control over the machine difficult.
The path of least resistance in these cases has been to build a "dummy" binary that pulls in all of the NuGet Packages into a single output and then commit this into version control. This completely subverts the powerful tooling that NuGet was supposed to provide to us to keep our repositories free from binaries.

I am wondering if installing and referencing a NuGet package in PWSH 7 is still problematic and buggy. I have built a simple nuget package in VS and I'm getting a long list of issues when trying to install and reference it in a script through Install-package.

This to my knowledge is still an issue; and often times in PowerShell I wish this would just work out of the box (for example just a few weeks ago it would have made this more accessible: https://stackoverflow.com/a/77328383/433069) until then your best bet is still to XCOPY Deploy the packages (extracting their contents) and doing Add-Type -Path

What are the odds the day I seriously look into this this topic gets closed in the last hour.
I always thought I was just doing it wrong, not that the functionality was missing.


fixes slow performance on location hierarchy HTML template

Closes: #4917
What's Changed
Employs variables in template to avoid re-calculation of location tree/region tree multiple times
TODO

[x] Explanation of Change(s)
[x] Added change log fragment(s) (for more information see the documentation)
[ ] Attached Screenshots, Payload Example
[ ] Unit, Integration Tests
[ ] Documentation Updates (when adding/changing features)
[ ] Example Plugin Updates (when adding/changing features)
[ ] Outline Remaining Work, Constraints from Design

Some of this is also applicable for 2.0, there is still a duplicate location.ancestors() call there. If you want, I am happy to port the applicable changes over as well.

Update: Removed variable for region ancestors as

it didn't work
the queries are already optimized enough with MPTT


Improve xhprof formatting and availability

The Problem/Issue/Bug:

The xhprof footer wasn't available in symfony-based CMSs like Drupal 9
It needed better styling
Sometimes the xhprof page got profiled itself

How this PR Solves The Problem:
Lots of work.
Manual Testing Instructions:
Automated Testing Overview:

Related Issue Link(s):
Release/Deployment notes:

@LionsAd @penyaskito I'd love if you could take a look at this, especially the rewritten prepend script (and append is gone).
I'm adding manual testing instructions to the OP.


Improvements to Istio Multicluster Automation and Documentation for large multi-cluster architectures

(This is used to request new product features, please visit https://discuss.istio.io for questions on using Istio)
Describe the feature request
The current Multicluster tooling works great if a handful of clusters are being meshed together; however the current model does not appear suitable for scaling when the number of workloads and/or clusters becomes large.
For example if we have 50 clusters containing say ~200 workloads each; then in a multi-primary model each istiod will be watching and maintaining endpoints for 50 * 200 = 10,000 workloads. Most of these entries are likely not required, as it is highly unlikely that every cluster's set of workloads requires to connect to every other (remote) workload.
Setting up and managing the secrets for endpoint discovery in this model is also tedious; with 50 * 50 = 2500 remote secrets having to be installed and managed.
Feature request:

Provide a way of setting up and managing multicluster meshes that are suitable to high cluster/high workload architectures
For example:

Provide a mechanism to restrict what workloads are shared to what clusters e.g. if cluster1's "httpbin" service is only called from a handful of workloads in cluster41; then it is very expensive for all other 48 istiods to watch for and maintain endpoint information on httpbin, and for all workloads in these clusters to be aware of the remote httpbin (and other) endpoints.
Alternatively provide the ability to manually add endpoints for just the services required (in this case not using or restricting the automated endpoint discovery)

Describe alternatives you've considered
Manually setting up just the service to service connections that are required, with automated endpoint discovery switched off. We have achieved this by creating the following in the downstream cluster:

a Kubernetes Service (with the same name and namespace as the upstream service, so that the SNI value matches what is required on the upstream cluster for AUTO_PASSTHROUGH)
an associated Kubernetes Endpoint (referencing the upstream cluster's eastwest gateway NLB IPs)
an Istio DestinationRule targetting the above service to upgrade the connection to use ISTIO_MUTAL.

Is this the correct approach if not relying on automated endpoint discovery? This is currently undocumented, so for example should/could ServiceEntries be used instead of Services? If so how does DNS resolution work? How about WorkloadEntries (I see these in the logs when automated endpoint discovery is used)? Could documentation be added to describe the canonical approach to multicluster if automated service discovery is not a suitable solution?
Affected product area (please put an X in all that apply)
[X] Docs
[X] Installation
[X] Networking
[X] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[X] User Experience
[ ] Developer Infrastructure
Affected features (please put an X in all that apply)
[X] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane
Additional context

@nea1 not sure if I fully understand your scenarios but I feel if your workloads do not need to have full access to each other, these workloads seem to me should be naturally divided into different meshes, cluster secrets should only be placed in the ones need the secrets. Say if a service need to access 3 other services in 3 different clusters, then these 4 clusters make a small mesh, secrets should be only be placed in these 4 clusters (multi primary case), not other 46 clusters (to your example above). I feel that your example indicated one big mesh, vs what you like to have is multiple smaller meshes?

@litong01 The diagram below shows a super scaled down version of the issue I'm trying to describe (4 clusters instead of 40+)! The point is that the vast majority of service calls happen within each cluster (only the apps highlighted in green are called cross-cluster); however we still want to benefit from multicluster mesh features on those cross cluster calls i.e. MTLS & workload authorization, locality based load balancing & failover, kube dns style short hostnames etc.
If we look at "cluster 1" it only needs to know about app-h in cluster 3 and app-l in cluster 4. However with the current automation it knows and watches for every service in cluster 3 and every service in cluster 4  - i.e. it only needs to know about 2, but it is watching 7 (and telling all the local sidecar proxies about these 7). With these numbers this obviously isn't an issue, but this doesn't scale when we talk about the numbers above - 10s of clusters running 100s of apps per cluster - at some point istiod and/or the sidecars would be overwhelmed.
So in these large scale scenarios where the cross cluster calls are known ahead of time what I'm looking for is a way of scoping down the endpoint discovery to only the workloads that are needed to be called from other clusters. For example perhaps a workload could be annotated with it's dependencies (i.e. upstreams) and then the local istiod just watches and adds these to it's registry?

@nea1 Thanks for your information. sorry for the delays in response, I was on vacation. Now I understand what you really meant. You like to have the capability for an Istiod instance (DS) to watch only selected (marked with annotations maybe) services instead of all the services in a remote cluster. Is that accurate?

@nea1 can you take a look at this and see if that solves your issue? https://istio.io/latest/blog/2021/discovery-selectors/

@nea1 did you look into the article that I suggested above? it seems to me that should solve your issue.


Support for VideoCore

So that we could do our GPGPU compute on Raspberry Pi computers too.

Unlikely to ever happen, but there are some guys in #143 interested in it


Remove the sunburst chart

[Current coverage][cc-pull] is 74.01%

Merging [#63][cc-pull] into [master][cc-base-branch] will increase coverage by 7.70%

@@             master        #63   diff @@
==========================================
  Files            53         53
  Lines          2351       2351
  Methods           0          0
  Messages          0          0
  Branches        202        202
==========================================
+ Hits           1559       1740   +181
+ Misses          773        611   -162
+ Partials         19          0    -19

10 files (not in diff) in app/views were modified. more

Misses -111
Partials -13
Hits +124

4 files (not in diff) in app/utils were modified. more

Misses -3
Partials -5
Hits +8

8 files (not in diff) in app/models were modified. more

Misses -43
Hits +43

1 files (not in diff) in app were modified. more

Misses -5
Hits +5

File tests/app_test.py (not in diff) was modified. more

Misses 0
Partials -1
Hits +1

Powered by Codecov. Last updated by [ef54db9...9669341][cc-compare]
[cc-base-branch]: https://codecov.io/gh/betterlife/psi/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/betterlife/psi/compare/ef54db99a879f38ec772b2db2f8b5db826a0609e...96693410e8b70fc87a39e8ffdab3f577dc411868
[cc-pull]: https://codecov.io/gh/betterlife/psi/pull/63?src=pr


How do disable "On GitHub" options in RTD footer

Details

Read the Docs project URL: https://readthedocs.org/projects/astropy/
Build URL (if applicable):
Read the Docs username (if applicable): pllim

Expected Result
Want to hide the "On GitHub" options (both View and Edit) in RTD footer (that thingy that let you choose version on bottom right).
Actual Result
Not sure how to disable it. I found the code snippet in your repository but how do I customize the footer?
https://github.com/rtfd/readthedocs.org/blob/50cb9a24045cf29c5719ffb92fd22cfdd54b0f34/readthedocs/restapi/views/footer_views.py#L119-L130
https://github.com/rtfd/readthedocs.org/blob/b02baab55ae4646c4d2be70d3abd6fbb798af0a4/readthedocs/restapi/templates/restapi/footer.html#L79-L89
Thank you for this invaluable service to the open source community!

I don't think this is possible right now with css, we should put classes to the html labels to make it work.

You could still do it with a hacky way using the injected class
https://github.com/rtfd/readthedocs.org/blob/ee5ffd0d5e9951da95942fa1badb796ac3f58484/readthedocs/restapi/templates/restapi/footer.html#L2-L2

@stsewd , thanks for the quick reply. My HTML/CSS skills are very limited. Can you please elaborate on the hacky option? How do I use it to overwrite the footer?

I believe this should work
.rst-other-versions > dl:nth-child(3) {
   display: none;
}

@stsewd , ah, the snippets you posted were meant for the RTD codebase and not downstream in our own project?

You need put it on your project

Closing as duplicated of https://github.com/rtfd/readthedocs.org/issues/3507


initial commit for RT2.8

Initial commit for RT2.8
It resolves https://github.com/openconfig/featureprofiles/issues/1617

Pull Request Functional Test Report for #1915 / d1cbbe6660b6b984c3000b2ac76adae4368d44cb
No tests identified for validation.
Help

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 46.875%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1365

Relevant Lines:
2912

💛  - Coveralls