Wallet Database Improvement Tracking Issue

I was reverse engineering the wallet app and I gained some very interesting insight.

The wallet app is mostly a shell. The real wallet and payment stuff is actually a part of google play services.
This means that everything, including saving and storing wallet data is actually handled by Google Play Services
The database CPM has been using is an auxiliary database by the looks of it, infact "tapandpay" is mostly under a section called "experiments" in teh source
Due to issues that I and some others on the forum seem to face, it may be that google will stop using the tapandpay database.
The google play services app has a database under its "pay" folder called valuables which has information that actually looks updated.

I feel that its important to make an issue on this, I am looking into it but its probably not gonna be fast as I stress
I am a noob at android dev
This is why the issue is important so that people know about this.
Ill update if i can get anything going with this. Or if someone else wants to do something, be my guest lol.

I can successfully connect to the database however there is a problem. The proto_bytes section does not want to serialize. Even using protoc  - - decode_raw on those bytes does not work. Invalid wire type. It could be because they are not protobuf format or maybe they are incomplete or something is missing or something. If anyone has any ideas would be helpful

The reason that database is not used is, because you found out, the data isn't readable. I think it's probably encrypted, as the JWTs are in the same table.
It almost certainly contains the same data as is unencrypted in the database CPM actually uses, and while it may be a risk that Google stop using the tapandpay database, the same can be said for any database. They could change format, decide to encrypt local data, anything which could break the reading. That is always a risk when reading local files with root.
As for the Wallet app being a shell and the actual app residing in GMS, that's always been the case. I highly doubt it will change however, given it's been through no less than three branding and name changes, and stayed roughly the same in how it works. It's actually been highly beneficial to CPM, because the Wallet app (and previously Pay in both its forms as well) is not obfuscated. That means reading and reversing the protobuf is much, much easier.
I'm not so sure about the experiments bit either - most of the models for the protobuf, the communication with GMS, the other logic, seems to reside in com.google.android.gms.tapandpay - not experiments.

The problem is that that my Tap and Pay database is no longer being updated for new cards. This is why I believe that Google is going to stop using this.

I added a transit ticket to my Wallet earlier today and it's been added to the valuables database, so there's nothing I can really suggest. If they are genuinely stopping using it (which I doubt) then there will probably be no alternative, as the other form is encrypted.

I do use a beta version of wallet. I may try opting out of the beta and see if that works.

There is no beta version of Google Wallet, do you mean the Play Services beta? I'm in that too, no difference.

Oh i see, there was one when they first released the Drivers licecence stuff, I guess its over now.

Are there any news here?
I am using Wallet version 23.44.582097972 and Play services 23.45.23, and while CPM is failing to load my loyalty cards, Smartspacer is successfully loading and using my Google Wallet loyalty cards with the Google Wallet Plugin. So it seems its still possible

Are there any news here? I am using Wallet version 23.44.582097972 and Play services 23.45.23, and while CPM is failing to load my loyalty cards, Smartspacer is successfully loading and using my Google Wallet loyalty cards with the Google Wallet Plugin. So it seems its still possible

It's unlikely they'll ever work again, the rollout of encryption has since hit everyone (including me) and it's no longer possible to read them.

But why can the Wallet Smartspacer Plugin successfully read the Cards then? Isn't it also made by you?
I installed both Smartspacer and CPM two days ago at the same time, and Wallet maybe 3 days earlier, so I doubt I still have the un-encrypted database on my device. Is there a way to check for it?
CPM

Smartspacer

But why can the Wallet Smartspacer Plugin successfully read the Cards then? Isn't it also made by you?
I installed both Smartspacer and CPM two days ago at the same time, and Wallet maybe 3 days earlier, so I doubt I still have the un-encrypted database on my device. Is there a way to check for it?
CPM
Smartspacer

Because you log into your Google account for the Smartspacer plugin. That isn't feasible for CPM, the setup is different.

Your Google account stores your wallet information for everything except on device information such as health cards. You can actually get this information pretty easily as a Pdf. I thought it was not possible to get it in another format which is where I was stuck. I wonder if smart spacer is open source.

Your Google account stores your wallet information for everything except on device information such as health cards. You can actually get this information pretty easily as a Pdf. I thought it was not possible to get it in another format which is where I was stuck. I wonder if smart spacer is open source.

It is, it's another one of my apps. The wallet code is in the plugin, on my SmartspacerPlugins repo. But like I say, it's a whole sign in and not worth it for just this IMO. Smartspacer itself is a good replacement for this feature until Google get their act together as it can show the loyalty card at a location and uses the same popup as CPM does to show it when locked

Your Google account stores your wallet information for everything except on device information such as health cards. You can actually get this information pretty easily as a Pdf. I thought it was not possible to get it in another format which is where I was stuck. I wonder if smart spacer is open source.

It is, it's another one of my apps. The wallet code is in the plugin, on my SmartspacerPlugins repo. But like I say, it's a whole sign in and not worth it for just this IMO. Smartspacer itself is a good replacement for this feature until Google get their act together as it can show the loyalty card at a location and uses the same popup as CPM does to show it when locked

I agree that there is no point trying to go after googles database. Losing battle tbh.
Also jeezus man you are EVERYWHERE. I just downloaded an app to get pixel like always listening song info and found out it was one of yours. I am going to play with smart spacer and see what fun I can have

Your Google account stores your wallet information for everything except on device information such as health cards. You can actually get this information pretty easily as a Pdf. I thought it was not possible to get it in another format which is where I was stuck. I wonder if smart spacer is open source.

It is, it's another one of my apps. The wallet code is in the plugin, on my SmartspacerPlugins repo. But like I say, it's a whole sign in and not worth it for just this IMO. Smartspacer itself is a good replacement for this feature until Google get their act together as it can show the loyalty card at a location and uses the same popup as CPM does to show it when locked

I think it's worth to make it work like the smart spacer. I would love to be able to display my loyalty cards in this app again.

Your Google account stores your wallet information for everything except on device information such as health cards. You can actually get this information pretty easily as a Pdf. I thought it was not possible to get it in another format which is where I was stuck. I wonder if smart spacer is open source.

It is, it's another one of my apps. The wallet code is in the plugin, on my SmartspacerPlugins repo. But like I say, it's a whole sign in and not worth it for just this IMO. Smartspacer itself is a good replacement for this feature until Google get their act together as it can show the loyalty card at a location and uses the same popup as CPM does to show it when locked

I think it's worth to make it work like the smart spacer. I would love to be able to display my loyalty cards in this app again.

It is actually something I'm considering as Google have actually regressed the lock screen wallet experience by making it require unlock. I need to have time to do it though, which I don't have right now

Thank you for your consideration 👍

👀

Working to fix this, making it optional, needing a signin to google, using smartspacerplugin as a base but need to redo some parts

👀  Working to fix this, making it optional, needing a signin to google, using smartspacerplugin as a base but need to redo some parts

I'd love to test it out if you got any builds ready for testing.

👀  Working to fix this, making it optional, needing a signin to google, using smartspacerplugin as a base but need to redo some parts

I'd love to test it out if you got any builds ready for testing.

That would be very helpful, thanks! If you want you can test here:
https://github.com/Philip2809/ClassicPowerMenu/releases/tag/ALPHA-loyaltycards
There is A LOT of bugs and as I state there is no UI yet, I made this very quickly just to try it out. As I stated, all data is encrypted and stored on your device, source code in the same repo. Will continue to work on it!

Loyalty cards are now back in 1.9, closing :D

Thanks for implementing this feature, it is great to have it again :D
One question though, would it be possible with this implementation to also show time sensitive passes like tickets etc.?
Smartspacer added the feature in this commit https://github.com/KieronQuinn/SmartspacerPlugins/commit/96b7693de8e45aa55cf6d52b2142914ccb5d0fe4
Not sure if its too much work the implement here.
Thanks a lot anyways :D

Hm weird, my "Deutschlandticket" (German bus/train ticket) isn't shown on the carousel, and also doesn't show up under "Manage Accounts & Loyalty Cards" in the new update.
It also didn't show up in Smartspacer in the Google Wallet (Static) section until the newest update there, now it shows up in the selection under "Transit Card", maybe thats a different type of card then?

If there's no time attached to it then yes, it will be treated as a generic pass and won't appear

Technically there is a time attached, the ticket is valid from 01.XX.2024 to 01.(XX+1).2024, but I guess its different than how movie or concert ticket times are handled in Wallet.
@Philip2809 Sorry for tagging you here, but you wrote the new Wallet Integration code.
Do you think it would be possible for you to add support for all kinds of valuables in CPM, like in the commit above for Smartspacer?
If not, no worries and thanks for your done work :)

The loyaltycards I fixed only cared about the loyaltycard type, all other types were discarded, it seams that the quick access wallet already showed some other types (which I did not know about). I can take a look into this as well, however I may not have a way to test this which could make it very hard for me to develop. I recently found how I can create test cards in google wallet and I can try to use that. But as I stated in some other thread, I am kinda busy the coming weeks but I can see what I can do. However I will look into the lock screen problem first as it kinda annoys me
For me at least CPM is very useful, as my card emulator app is always setting itself to be the default payment method I can't really use the built in quick access wallet that I can get from my lock screen, also accessing my device controls from anywhere by only pressing the power button is a really nice feature for me personally.

If you are looking into other types one type is perhaps a giftcard of some sort? I have a dunkin donuts refillable gift card that shows up in smartspacer but does not show up in quick access wallet. It useed to show up so I thought at first it was just a loyaltycard but apparently its different. Is there a place to find the type list?
I would be willing to test the giftcard thing of course.

These are the types: https://github.com/KieronQuinn/SmartspacerPlugins/blob/main/googlewallet/src/main/proto/com/google/internal/tapandpay/v1/valuables/ValuableWrapper.proto
You can make fake ones of any of them with the Pass2pay app.

I thought health cards were stored on device so thats an interesting field. Looks like Gift card is a seperate type which would explain the dunkin not showing up.

There's no data in the Wallet app for health cards to come from the server so it's probably just a placeholder type in case it's ever used.


Alert on nixos.org Matrix federation issues

We recently had an outage caused by .well-known removal on nixos.org breaking our Matrix federation. We did not detect that outage until it was manually found by users of the service.
I know @robryk has some snippet of NixOS configuration somewhere which configures Prometheus to poll the Matrix federation checker's JSON endpoint to detect successes/failures, this sounds like something we should be doing on pluto and get alerts for :)

I'm new to NixOS so this might not be the optimal way to achieve this, but this seems to do the job. It exports a metric called federationok that is 1 if everything is ok, else it's 0:
  services.prometheus.exporters.json = {
    enable = true;
    configFile =
      (pkgs.formats.yaml { }).generate "prometheus-json-exporter-config" {
        modules = {
          matrixfederation = {
            metrics = [{
              name = "federationok";
              help = "FederationOK status";
              path = "{ .FederationOK }";
            }];
          };
        };
      };
  };

and
services.prometheus = {
    enable = true;
    extraFlags = [ "--storage.tsdb.retention.time 60d" ];
    scrapeConfigs = [{
        job_name = "federationtester";
        scrape_interval = "300s";
        static_configs = [{
          targets = [ "<IP_ADDRESS>:7979" ];
          labels = { instance = "nixos.org"; };
        }];
        metrics_path = "/probe";
        params = {
          module = [ "matrixfederation" ];
          target = [
            "https://federationtester.matrix.org/api/report?server_name=nixos.org"
          ];
        };
      }
    ];
  };

This is extremely similar to the config fragment I was going to steal get inspired from, thank you! :)
https://git.sr.ht/~robryk/nixos-config/tree/master/item/modules/monitoring-matrix.nix


cvxpy should dispose of gurobi models after use

Is your feature request related to a problem? Please describe.
We are using cvxpy in a multiprocess environment with a gurobi 9.0 shared license. We are limited by a maximum of concurrent optimizations. We currently find ourselves with a majority of optimization idly waiting for resources.
According to gurobi documentation, models object should be disposed with model.dispose(). If my understanding of cvxpy code is right, cvxpy currently loosely manage gurobi models. The model is created in solve() but is not disposed off explicitly, so when the N first processes perform an optimization (with N being the limit of concurrent gurobi optimization), they prevent the M others from making process.
Describe the solution you'd like
cvxpy should call model.dispose() after solving the problem (or failing to do so). This makes easier to manage limited gurobi resources.
Describe alternatives you've considered
Currently, we will settle with disposing the default environment with disposeDefaultEnv() after every call to cvxpy.solve(). This is a slightly radical solution, and thread-unsaffe.

actually with the last release 1.1.3, we can access the gurobi model from the extract_stats

It appears to me that the gurobi environment still isn't being disposed of properly.  If so, can we reopen this?  I'm also encountering some issues using multiprocessing that may be related to this.  While it's possible to rewrite our code to mange the environment ourselves (via the env parameter to Problem.solve), it would be nice if this would handled internally.

You can access the model after solve in problem.solver_stats.extra_stats.

Thanks, that's helpful.  It looks like references to the model object could still be lying around.  Is it safe to dispose of it after calling Problem.solve?

Thanks, that's helpful. It looks like references to the model object could still be lying around. Is it safe to dispose of it after calling Problem.solve?

It is safe. Models are not reused.

Great, thank you!


Fix to  issue 827 of flex-layout

https://github.com/angular/flex-layout/issues/827

This issue has been addressed for Angular 7 version of the app.


Errno::EPERM: Operation not permitted - 'innobackupex' returned exit code: 1

Hi,
I am getting the following error response from the gem:
Errno::EPERM: Operation not permitted - 'innobackupex' returned exit code: 1
I have tried to debug this myself, but I'm getting a little stuck. Ruby is not my primary programming language ^^
My model is very simple:
Model.new(:sites_data, 'MySQL sites data') do
  database MySQL do |db|
    db.backup_engine      = :innobackupex
    db.name               = ""
    db.username           = "xtrabackup"
    db.password           = "toor"
    db.host               = "percona1"
    db.port               = 3306
    db.skip_tables        = []
    db.only_tables        = []
  end

  store_with Local do |local|
    local.path = '/backups/'
    local.keep = 5
  end
end

The full response from backup:
[2016/06/22 13:04:46][info] Performing Backup for 'MySQL sites data (sites_data)'!
[2016/06/22 13:04:46][info] [ backup 4.2.3 : ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux] ]
[2016/06/22 13:04:46][info] Database::MySQL Started...
[2016/06/22 13:04:47][error] Model::Error: Backup for MySQL sites data (sites_data) Failed!
[2016/06/22 13:04:47][error] --- Wrapped Exception ---
[2016/06/22 13:04:47][error] Database::MySQL::Error: Dump Failed!
[2016/06/22 13:04:47][error]   The following system errors were returned:
[2016/06/22 13:04:47][error]   Errno::EPERM: Operation not permitted - 'innobackupex' returned exit code: 1
[2016/06/22 13:04:47][error]
[2016/06/22 13:04:47][error] Backtrace:
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/backup-4.2.3/lib/backup/database/mysql.rb:99:in `perform!'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/backup-4.2.3/lib/backup/model.rb:269:in `each'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/backup-4.2.3/lib/backup/model.rb:269:in `block in perform!'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/backup-4.2.3/lib/backup/model.rb:268:in `each'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/backup-4.2.3/lib/backup/model.rb:268:in `perform!'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/backup-4.2.3/lib/backup/cli.rb:156:in `perform'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/thor-0.18.1/lib/thor/command.rb:27:in `run'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/thor-0.18.1/lib/thor/invocation.rb:120:in `invoke_command'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/thor-0.18.1/lib/thor.rb:363:in `dispatch'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/thor-0.18.1/lib/thor/base.rb:439:in `start'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/gems/backup-4.2.3/bin/backup:5:in `<top (required)>'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/bin/backup:23:in `load'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/bin/backup:23:in `<main>'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `eval'
[2016/06/22 13:04:47][error]   /backups/.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `<main>'
[2016/06/22 13:04:47][warn] Cleaner::Error: Cleanup Warning
[2016/06/22 13:04:47][warn]   The temporary packaging folder still exists!
[2016/06/22 13:04:47][warn]   '/backups/Backup/.tmp/sites_data'
[2016/06/22 13:04:47][warn]   This folder may contain completed Archives and/or Database backups.
[2016/06/22 13:04:47][warn]
[2016/06/22 13:04:47][warn]   Make sure you check these files before the next scheduled backup for
[2016/06/22 13:04:47][warn]   'MySQL sites data (sites_data)'
[2016/06/22 13:04:47][warn]   These files will be removed at that time!

I logged the command where I thought stuff was going bad:
/usr/bin/innobackupex --user=xtrabackup --password=toor --host='percona1' --port='3306'  --no-timestamp /backups/Backup/.tmp/sites_data/databases/MySQL.bkpdir  2> /dev/null  && /usr/bin/innobackupex --apply-log /backups/Backup/.tmp/sites_data/databases/MySQL.bkpdir    2> /dev/null  && /bin/tar --remove-files -cf -  -C /backups/Backup/.tmp/sites_data/databases MySQL.bkpdir

But when I run this command manually (as the same user I run backup with) it is succesfull.
I strongly believe this is an application error somewhere, could someone point me in the right direction?
I am using Ruby 2.3.0 installed through RVM and backup 4.2.3

Hi @mdahiemstra , is backup being run under the same user account when you run it manually?
The error "Operation not permitted" is not a backup error. The OS is throwing that error. So the user account that's executing the command has no access to perform it.


[WIP] Add missing "inbound" to repo url

Fixes https://issues.redhat.com/browse/AAH-326
Before:

After:

@ZitaNemeckova please have a look


[Event Request] codeunit 99000834 "Purch. Line-Reserve" - VerifyQuantity

Hello,
Please add this handled event:

You help us implementing the requests faster when your request contains AL code copied from VSCode as a text instead of screenshots.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.


Add Elixir JSONAPI Library.

This is my project I've been working on for sometime. We support the spec as it stands.

Thanks!

💖


Param Context Matching

Codecov Report

Merging #65 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #65   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           6      7    +1
  Lines         290    344   +54
=====================================
+ Hits          290    344   +54

Impacted Files
Coverage Δ

src/lib/content_inspector.js
100% <100%> (ø)
:arrow_up:

src/lib/basic_reporter.js
100% <100%> (ø)
:arrow_up:

src/bin/index.js
100% <100%> (ø)
:arrow_up:

src/lib/index.js
100% <100%> (ø)
:arrow_up:

src/lib/comparison.js
100% <100%> (ø)

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 6d5a4d8...3a3e581. Read the comment docs.


Remove browser field due to bundler issues

Certain bundlers (basically anything except webpack) don't respect the "browser" tag in package.json. We shouldn't rely on something that is inconsistently supported. This is a step in the direction of splitting the SDK package as shown here: https://github.com/trinsic-id/sdk/issues/895

We haven't generated the ARMv7 linux artifact in a while, so don't attempt to upload it.
Caching pip on the dart build makes the action much faster. 🚀

If we remove the "browser" field, we should split the okapi-web and okapi-node, and remove the "okapi" package, because this will effectively load node artifacts in the browser.

If we remove the "browser" field, we should split the okapi-web and okapi-node, and remove the "okapi" package, because this will effectively load node artifacts in the browser. CI is already failing because of this.

We already do this on build/release. The failure on web is due to something else, currently investigating.


Middleware and logging docs changes

I'd like to offer up some docs changes from the perspective of an experienced programmer that is very new to rust. I'm trying to use tide for a simple project to webhooks and got tripped up by a few things:

I wanted to enable some basic logging and it seemed like an oversight that the crate's overview didn't specifically show how to use the middleware. I added a code sample to try to demonstrate that.
I didn't realize the RequestLogger needed additional crates to actually log output so I added a couple comments there.
I tried using the middleware example to write my own logger... and then realized that "simplified example" meant "won't compile". I found an example in the tests and realized it wasn't that much more complicated to show a working example.

Looks like something timed out in that test. Not seeing a way to restart it so going to see if closing and reopening the PR will trigger it.


Implement Account::releaseSchedule and AccountReleaseSchedule::schedule

Implement Account::releaseSchedule and AccountReleaseSchedule::schedule in the Rust GraphQL API and relevant types.Consider whether AccountReleaseSchedule::schedule needs paging.
For reference, the C# GraphQL schema can be found here.

Done in https://github.com/Concordium/concordium-scan/pull/324


Do not add "-" and "." as universal date separators

In response to #150, the "-" and "." characters are no longer added to the locale date separator list for all of the expressions that make use of the date separators. The "-" character is still used for the yyyy-mm-dd pattern only, which as discussed previously is an international format.
I noticed that "." is a date separator in the base locale so this confusion between decimals and dates will continue to affect most users. That is really a domain issue – if the data you're processing is likely to always contain a date you would want to avoid false negatives, while someone parsing a date out of freeform text would prefer to avoid false positives. Fortunately after this change the '.' separator can be disabled by the developer if necessary.
This also required the removal of a few tests in the Australian locale since it does not define "." as a date separator.

It seems like the simple datetime tests also fail under ICU since "." is not a date separator according to ICU. There are many countries that use "." as a date separator so I understand its inclusion in the base locale. However, the ICU tests are using the US locale which does not use that as a date separator.
Any thoughts on the best way to proceed here?

I've always thought of ICU as the definitive answer to what should be considered the default for processing date/time text -- if "." is not shown at all to be a separator by ICU then we should not have it in the base.
It also sounds like we should change the tests to use something non US for the "with ICU" tests.
Note - i'm coming off of being sick over the holidays so apologies if I am mangling the context of your thoughts above

I see that there is a separate en_US locale that inherits from the base locale, so I updated it to use / only as the date separator. I think there is value in leaving . in the base locale since there seems to be about a 50/50 split (not accounting for relative population) of countries that use . and /. My non-definitive data source on this topic does not clarify whether these symbols are used only in full yyyy + mm + dd formatting or also in "shorthand" dates.
Perhaps the date separators are not universal enough to consider a single category of date separators. We use the same dateSep to match both full dates like yyyy-mm-dd and shorthand dates like mm/dd. The main problem is with the shorthand format so maybe having both a dateSep and shorthandDateSep? I don't know if that would be beneficial for any locales or if removing . from base is better. Not feeling so well here either :disappointed: sorry if this does not make sense.

I am +1 for having a shorthandDateSep -- it gives the maximum flexibility to anyone adding to the locale support and doesn't add any more complexity IMO (heck, pdt is complex enough by default ;)
thanks for looking into this!

@idpaterson i've lost track on what is needed for the PR to move forward to be honest - when you get some free time can you give it a quick look

This needs to be revisited for v3 once the tests are sorted out. I think that the best way to move forward would be to use this as implemented above but rebased on v3.0, then separately consider whether the base locale should be modified to be less favorable toward US English and more toward worldwide majority formats.


Scalable (or wider) paragraph boxes

I noticed in the user journeys that paragraph previews are always set as 1:1
Paragraph
~1,000 glyphs are shown
Each preview is square in shape (1:1 ratio)

They should be adjustable (I see a 3 dot adjustment handle in the bottom right in the MockFlow wireframes though, is that the intention?). Line-length is just as important, and has as much of an effect on the readability/look-feel as the other typographical adjustments available under the settings (font-size, line-height). 1:1 at that size is a bit of an awkward view for text setting, which I'm assuming is what the paragraph view is for.

I agree, the cards should have a resize widget in the bottom right corner, and by default resizing one will resize them all, and perhaps holding ctrl while dragging it will resize only that one.


Typeahead data with alternate names (or nicknames)

To some up the details of what I am trying to do below, I want to have "nicknames" to data points. For example, Alaska or be matched by both AK and Alaska. I'm currently searching an array of objects that point to the data to do this, but this method returns duplicates.

I'm trying to implement a simple search feature with Typeahead. Originally, I had typeahead simply search an array of the data. This is fine, but humans don't like typing things exactly as they should be quickly. The search is more robust if similar terms can bring up the same result. For example, if I had a search of states and countries, I would want United States of America to come up when searching USA, U.S.A., and United States of America (this includes simply U.S. and other shortened terms because of the autocomplete) and both AK and Alaska to bring up Alaska.
Right now, I am searching an array and then matching a field from it to an object to get more information like so:
var altNames = [            // The array that Typeahead looks in
  {
    altname: 'ak',
    to: 'alaska'
  },
  {
    altname: 'alaska',
    to: 'alaska'
  },
  {
    altname: 'u.s.a',
    to: 'unitedstatesofamerica'
  },
  {
    altname: 'usa',
    to: 'unitedstatesofamerica'
  },
  {
    altname: 'united states of america',
    to: 'unitedstatesofamerica'
  }
];
var dict = {     // The object that the 'to' field is then matched to to get more data and the "proper" name
  unitedstatesofamerica: {
    name: 'United States of America',
    altNames: [ 'U.S.A.', 'USA', 'United States of America' ]
  },
  alaska: {
    name: 'Alaska',
    altNames: [ 'Alaska', 'AK' ]
  }
};

<input type="text" class="form-control" ng-model="searchbox" typeahead="term as search.dict[term.to] for term in search.altNames | filter:$viewValue | limitTo:8" typeahead-template-url="searchTemplate.html" placeholder="Find something..." />
<!-- where 'search.altNames' is the array above and 'search.dict' is the object above -->

However, there are flaws with this implementation. First of all, there are duplicates. Because sometimes similar terms can have the same beginning and different endings (imagine having node, nodejs, and node.js and only typing node), there are sometimes multiple terms going to the same thing listed (duplicates). Also, I have to structure my data oddly. The lookup causes the search to return [object Object] upon pressing enter.
I would rather structure my data like so:
var dict = { // I want to keep it an object (instead of an array of objects) to make the function of my site a little easier (URL safe terms as the key), if possible
  alaska: {
    name: 'Alaska',
    altNames: [ 'Alaska', 'AK' ],
    thisObject: 'will eventually have a lot more data in it'
  },
  unitedstatesofamerica: {
    name: 'United States of America',
    altNames: [ 'U.S.A.', 'USA', 'United States of America' ]
  }
};

I would be fine using the current implementation if it is absolutely necessary where I search in one array and then look it up in an object (assuming that the object and duplicate issue is resolved), but having that extra array is a lot to process (it will grow a lot) and seems redundant when there is already another object with the same data in it. I plan to auto-generate that array from the object.
Is there any hope?

I just solved my own question! I can have Typeahead search an entire array of objects! Cool! Then I just use match.model to get more information in my template.

@DaAwesomeP, glad to hear you were able to solve your own question.  In the future, please do not use the issues forum for support-related requests.  Rather, please follow the instructions here as support-related questions are best served by and for the community.  The issues forum is reserved for bugs.  Thanks.


WASM: Optimize http metadata exchange

In CPU measurements, enabling http metadata exchange server added about 10% total cpu in the standard tools/perf tests.
dynamicMetadata.Set is a very expensive operation since it call promo.merge underneath.

Move this to filterstate
If (1) is taking too long, add a cache in front of the "write" operation. It must be written to a place that has lifetime of the VM, and not that of the request.
On the return path, server side does not need to return metadata on every call. It can keep track of sources it has responded to and only respond if we have not responded before.
We may need to add "epoch" as additional node identifier to ensure that restarts are handled correctly.

@kyessenov

https://snapshot.raintank.io/dashboard/snapshot/MOV74X8GrkMRKbMbDKgoQYjylXNFfQbb?refresh=10s&panelId=7&fullscreen&orgId=2

Potentially, for (2) we could use vm sharing mechanism, so that both filters will specify the same vm_id and different root context id. stats filter could get metadata exchange filter via its root context id. This way the cache is persistent VM's lifetime. But on the downside it couples stats filter and metadata exchange filter.

I'll work on using filter state of WASM filter to host all shared module state.

@jplevyak as an extra, I'll also clean up the use of stream info (no need to have 3 different ways to access the same object) and the metadata expression type.

obsolete, we moved to FilterState and we provide sharing of VMs.


Added G20 and G7 member fields

Added G20 and G7 member fields.

G7 members: Canada, France, Germany, Italy, Japan, the United Kingdom and the United States
G20 members: Argentina, Australia, Brazil, Canada, China, France, Germany, India, Indonesia, Italy, Japan, Mexico, Russia, Saudi Arabia, South Africa, South Korea, Turkey, the U.K. and the U.S.

Two methods, in_g7? and in_g20?, were added to check if a country is a member.

Thanks for the PR!


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v2.6.24 to before v5.10.84",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=faf0b2e5afe7dae072d2715763c7f992b612b628",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=4a46b2f5dce02539e88a300800812bd24a45e097"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "faf0b2e5afe7dae072d2715763c7f992b612b628",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "4a46b2f5dce02539e88a300800812bd24a45e097",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "sata_fsl: fix UAF in sata_fsl_port_stop when rmmod sata_fsl\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.10.84 by commit 4a46b2f5dce02539e88a300800812bd24a45e097, it was introduced in version v2.6.24 by commit faf0b2e5afe7dae072d2715763c7f992b612b628. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2021-1002486


Adds a disallowed steps rule.

This allows either exact matching, or partial patterns to disallow certain steps

Hi @jhedstrom! I like it.
However "steps" are well defined in gherkin language and backgrounds and scenarios are not steps. Then disallow-steps name is a bit confusing.
Cheers!

@xgbuils but this is only checking the text of actual steps, not the text of Scenarios or Background (or Feature for that matter), so I'm not quite following...

@jhedstrom thanks for doing this.
However, I would not say this "fixes #98" like your comment says. That feature request also addresses Feature and Scenario names.
Could we add additional rules here:

disallowed-features
disallowed-scenarios
disallowed-backgrounds

I'm fine if they were different pull requests but feel #98 should remain open until all are addressed.
Thoughts?

@jhedstrom, @ajthesnare, @xgbuils what do you guys think about expanding this rule to be more like AJ suggested here? https://github.com/vsiakka/gherkin-lint/issues/98#issuecomment-417358656
That way we don't have to write almost the same rule 3 times and the configuration will be done with one block. Maybe call it no-restricted-patterns? eslint has no-restricted-imports
I don't mind making the changes on top of @jhedstrom 's PR for ther, but I want to get alignment before merging the rule so that I don't have to rename it and break backwards compatibility in the future.

It was just out of habit that I mentioned this "fixes" #98. I agree the additional checks should be available in follow-up issues. I edited the PR description accordingly.
I'll try and find some time this week to make the changes suggested above regarding the regex variables. Great catch on the performance implications!

I think I've addressed the feedback above.

Not sure how to remove the 'changes requested' flag, but I think it's been done at this point @vsiakka

I completely missed the suggestion in https://github.com/vsiakka/gherkin-lint/pull/126#issuecomment-417992372 to expand this and call it no-restricted-patterns. That makes sense to me. I may have some time to work on this again soon.

Published with v3.3.0

Published with v3.3.0


Version numbers are inaccurate

The version numbers in the latest DLLs still say <IP_ADDRESS>. Looks like you forgot to update https://github.com/adamhathcock/sharpcompress/blob/0.11.1/SharpCompress/VersionInfo.cs when you bumped the versions for NuGet.

Thanks, i didn't notice.  I'll put out a new release soon.


🐛[xy-chart] fix top/left tooltip offset

🐛 Bug Fix
This fixes #137 where tooltips have incorrect offsets when using <YAxis orientation="left" /> or <XAxis orientation="top" />.
This bug occurs specifically with <AreaSeries /> and <LineSeries />, and the data point that is highlighted in these instances is approximately margin.left to the right of the point you expect it to be (for <YAxis orientation="left" />) or margin.top below the point you expect it to be (for <XAxis orientation="top" />).

cc @jhofstede

build is somehow broken (I think due to babel minify), still debugging.

gonna merge this and fix the build separately.


Remove Fixnum deprecation warning (from ruby 2.4)

Hello
This MR does 2 things:

Remove the deprecation warning on Fixnum with ruby 2.4 (tested with ruby 2.4.1 & 2.5.1)
Limit rake version to keep rspec compatibility (when I bundled without I got an uncompatible version of rake wich led me here https://stackoverflow.com/questions/35893584/nomethoderror-undefined-method-last-comment-after-upgrading-to-rake-11)

Maybe this should be splitted in 2 different PR but i believed it's minor enough not to bother ^^"

Thanks!
All the development dependencies probably should be upgraded at some point, but if this keeps things ticking all good.


Ban bot not working any longer...

Good day,
I have been getting the following error reported in Chatbot...

Is there anything that could be done to address this?
thx
Euther

Also, if this helps, here is the list of "Contains" I had setup
Contains.txt
;

Hi there,
Thanks for the report. Has this been happening since an update to streamlabs? Which version are you currently running? I'll try to check why it isn't working this evening.

Possibly... Not sure really. I noticed with a few streams ago, when i witnessed that the script did not autoban. Sorry
I am running version 1.1.0

I removed all the "contains", saved, then re-added some, and it worked again this weekend.

Alright. Could be that the object was malformed. I'll see if I can implement the lines differently because those settings objects are giving me more headaches..

I just tested (with the latest version of streamlabs <IP_ADDRESS>) this, everything still seems to function as normal. But I still implemented the read from file method. If you want to make use of this new feature you can see the below links.
Release: https://github.com/mfrankruijter/BanPurchaseBots/releases/tag/1.2.0
Installation instructions: https://github.com/mfrankruijter/BanPurchaseBots#installation
Kind regards.

Thank you. I will load the new version. If anything wonkie happens, I will follow up.
V/r,
Mike

Quick question... regarding the "read from file" option... in the txt file, to use that... new like for each "banned txt", correct?
thanks,
Mike
e.g.
wanna become famous?
buy followers
bigfollows .com
buy followers and viewers on
buy followers, primes

Yes, just create a file at your desired location, add the banned text lines as a new line (like your example) and don't forget to change the configured path to the path on your pc :)

Appreciate the new version!!!


Is it possible to check if a piece is protecting a pawn?

Self-explanatory, the code i have so far is:
PieceList pieces = board.GetPieceList(PieceType.Pawn, piece.IsWhitePieceList);

for (int index = 0; index < pieces.Count(); index++)
{
	Piece pawn = pieces.GetPiece(index);

	if (ChessChallenge.Chess.BitBoardUtility.ContainsSquare(pieceBitboard, pawn.Square.Index))
	{
		Console.WriteLine("Supporting pieces!");
		extraMg += 75;
		extraEg += 75;
	}
}

extraMg and extraEg are a way of keeping score and the value 75 has 0 correlation, the console does not print "Supporting pieces!" either. (which it should)

I don't get what you mean with protecting a pawn. Could you descripe it a litle bit thurter? I would really like to help you!
And becuase your snippet is not working properly but, firstly pieces.Count is not a method but a variable so it wont work if you call it. After this change it worked flawlessly (Expect I had to define the "piece" and "pieceBitboard" variable as you don't set them in the snippet). If I doesn't work with this change you may have taken the wrong bitboard - it should match the colour from the piece or conatin both.

Note - my Code:
    public Move Think(Board board, Timer timer)
    {
        // set true for testing purpose - in your case would be piece.IsWhite - (there is also no IsWhitePieceList method which class do you use?)
        PieceList pieces = board.GetPieceList(PieceType.Pawn, true);

        // used foreach to not have define the pawn extra (less Tokens)
        foreach (Piece pawn in pieces)
        {
                 if (ChessChallenge.Chess.BitBoardUtility.ContainsSquare(board.AllPiecesBitboard, pawn.Square.Index)) {
                 Console.WriteLine("Supporting pieces!");
                 }
        }

        return board.GetLegalMoves()[0];
    }

I want to basically check if a pawn is protecting another pawn, if so reward that.

also literally did not realize count was not a method, i have no idea how it did not error.

also ur solution worked i forgot to close this so thanks

I have came up with this Idea - It requires around 100 Tokens without the base (built in your algorithem propably a little bit less) and a Time complexity of approximitly O( p(2n) ) where p are number of pawns and n are number of possible captures. I have optimised it as much as I can.
It basicly looks how many captures are possible before your move. Then it checks for each pawn move if the possible captures contains the pos the pawn would move to - to ensure he "sacrifices" and if the count of captures stayed at least the same (to determine if he actually safed someone).
I've made two versions. One safes 7 Tokens but I'm not sure if it increases Time Complexity a little bit(but I think it doesn't...) and where I'm sure. I'll append them.
PS:
The version I sent you wasn't a working one but just fixing your errors in the snippet...

Solution Token effezient:
public class MyBot : IChessBot
{

  public Move Think(Board board, Timer timer)
  {
    Boolean iAmWhite = board.IsWhiteToMove;

    int possibleCapturesBeforeInt = 0;
    // trying to Skip turn - fails when you are check
    if (board.TrySkipTurn())
    {
      // calculating how many captures your opponennt could make without move
      possibleCapturesBeforeInt = board.GetLegalMoves(true).Length;
      board.UndoSkipTurn();
    }

    // make your move with the pawn eg.
    foreach (Move move in board.GetLegalMoves())
    {
      board.MakeMove(move);

      // checks if pawn so only they protect other pieces
      if (move.MovePieceType == PieceType.Pawn)
      {
        // checks if self could be captured but amount of captures doesn't increases
        // what means that he secured at least one other piece
        if (board.GetLegalMoves(true).Any(moveOpponent => moveOpponent.TargetSquare == move.TargetSquare)
          && board.GetLegalMoves(true).Length <= possibleCapturesBeforeInt)
        {
          // give points :)
          System.Console.WriteLine("Supporting pieces!");
          return move;
        }
      }
      board.UndoMove(move);
    }

    return board.GetLegalMoves()[0];
  }

Sloution (not quite sure) more time effizient:
public class MyBot : IChessBot
{

  public Move Think(Board board, Timer timer)
  {
    Boolean iAmWhite = board.IsWhiteToMove;

    int possibleCapturesBeforeInt = 0;
    // trying to Skip turn - fails when you are check

    if (board.TrySkipTurn())
    {
      // calculating how many captures your opponennt could make without move
      possibleCapturesBeforeInt = board.GetLegalMoves(true).Length;
      board.UndoSkipTurn();
    }

    // make your move with the pawn eg.
    foreach (Move move in board.GetLegalMoves())
    {
      board.MakeMove(move);

      // checks if pawn so only they protect other pieces
      if (move.MovePieceType == PieceType.Pawn)
      {
        // checks out how pieces that could be captured now
        Square[] possibleCapturesNow = board.GetLegalMoves(true).Select(move => move.TargetSquare).ToArray();

        // checks if self could be captured but amount of captures doesn't increases
        // what means that he secured at least one other piece
        if (possibleCapturesNow.Contains(move.TargetSquare)
          && possibleCapturesNow.Length <= possibleCapturesBeforeInt)
        {
          // give points :)
          System.Console.WriteLine("Supporting pieces!");
          return move;
        }
      }
      board.UndoMove(move);
    }

    return board.GetLegalMoves()[0];
  }

Oh and make sure to write using System.Linq; at the begining as I use comments from there.

And you have to keep care of what namespaces you are using:
Quote from (Docs):
Only the following namespaces are allowed:
ChessChallenge.API
System
System.Numerics
System.Collections.Generic
System.Linq
You may not use the AsParallel() function
Because your where using ChessChallenge.Chess.BitBoardUtility.ContainsSquare in your project which isn't included in this list.
Thank you for bringing up this problem, had quite a bit fun solving it the best and most effizient way :)


MultiComboBox fix

Method multi_combobox was using the generic "ComboBox" instead of "MultiComboBox".

Thank you!


Heading 4 reading view font-size too small

Describe the bug
Heading 4 Font-size is too small compared to Heading 5 and 6 when in reading mode.
To Reproduce
Steps to reproduce the behavior:

Go to Obsidian and open a note.
Type #### Heading.
View in Reading Mode.
Compare heading 4 font-size with heading 5 & 6.

Expected behavior
A larger font-size than heading 5 & 6.
Screenshots, Gifs, Video

Desktop (please complete the following information):

OS: Windows 10
Obsidian Version v.1.2.8
CyberGlow Version v7.9.0

Additional context
Go to theme.css .vertical-tab-content h4 and adjust font-size for theme.

Oh damn, how did i miss this, ill include it in the next release.

It has been resolved and will be included in the Rework v8 Update that will be coming soon.


NavSat Ignition Gazebo ROS Bridge Update

Hello,
I am curious if anyone has been working on getting the NavSat/GPS parameter in Ignition Gazebo converted with the ign_ros bridge. Using Citadel I was able to get the NavSat Ignition Gazebo sensor message to work, but I didn't see the ROS message conversion available in the sensor list. Any tips on how I can get the GPS sensor message converted to ROS.

Hi @jugpanther,
Just in case you want to go ahead and add this feature I drop here some tips:

Create the headers here for the convertion functions IGN->ROS and ROS->IGN
Implement here the convertions
Add here the header for the factory
Implement here the factory method
And finally add an entry in the get_factory_impl in the factory.cpp file

Tips are the some for ROS or ROS 2. You should use the right APIs.
Add me as a reviewer if you create a PR

@ahcorde,
Thank you for the tips. I will see what I can do.


Not able run Taskweaver with LLM Qwen1.5-72B-Chat

Not able to run taskweaver with locally hosted Qwen1.5-72B-Chat.
Taskweaver worked fine with Qwen-72B-Chat.
Getting error:
Exception: OpenAI API request was invalid: Error code: 400 - {'object': 'error', 'message': 'top_p must be in (0, 1], got 0.0.', 'type': 'BadRequestError', 'param': None, 'code': 400}
Qwen hosted using vllm:
python -m vllm.entrypoints.openai.api_server --served-model-name Qwen1.5-72B-Chat --model Qwen/Qwen1.5-72B-Chat
Taskweaver config file:
{
"llm.api_base": "http://<IP_ADDRESS>:8283/v1",
"llm.api_key": "Null",
"llm.model": "Qwen1.5-72B-Chat",
"execution_service.kernel_mode": "local"}
Following call fine with ChatOpenAI in other application:
model = ChatOpenAI(
model_name = 'Qwen1.5-72B-Chat',
base_url = "http://<IP_ADDRESS>:8283/v1/",
api_key = "EMPTY",
temperature=0
)

Setting llm.openai.top_p made it work along with response format to text.


No troubleshooting info when control plane fails to start in integration tests

What happened:
https://circleci.com/gh/kudobuilder/kudo/3278?utm_campaign=workflow-failed&utm_medium=email&utm_source=notification
2019/07/22 19:56:18 failed to start the controlplane. retried 5 times: timeout waiting for process etcd to start

Looks like I didn't quite get all of the edge cases yet.

another one https://circleci.com/gh/kudobuilder/kudo/4393?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link

I'm getting the following flavor:
2019/12/03 15:59:52 failed to start the controlplane. retried 5 times: timeout waiting for process kube-apiserver to start
FAIL    github.com/kudobuilder/kudo/pkg/controller/instance     101.839s

It's a little hard to debug this, since we're not seeing the failing component's stdout/stderr.
However it looks like the command is launched using gomega, and its docs say the output will be logged if "the test fails". Perhaps we just need to fail in a more gentle way rather than through log.Fatal? From github.com/onsi/gomega@v1.7.0/gexec/session.go:53.
When outWriter and/or errWriter are non-nil, the session will pipe stdout and/or stderr output both into the session *gybtes.Buffers and to the passed-in outWriter/errWriter.
This is useful for capturing the process's output or logging it to screen.  In particular, when using Ginkgo it can be convenient to direct output to the GinkgoWriter:

	session, err := Start(command, GinkgoWriter, GinkgoWriter)

This will log output when running tests in verbose mode, but - otherwise - will only log output when a test fails.

It did help, in my case the error is: Error: failed to create listener: failed to listen on <IP_ADDRESS>:41119: listen tcp <IP_ADDRESS>:41119: bind: address already in use

I think this was solved by a bump in api-server version

Not really, as written above this still happens when API server is bottlenecked on CPU and fails to become healthy within the deadline. If you don't mind I'd prefer to keep this open as a reminder to improve debuggability in that area.
Since the command is launched using gomega, it would be sufficient to pass GinkgoWriter to Start() in order to hide the output in the happy case, and show it on failure.

I had a similar issue with integration tests. Adding KUBEBUILDER_ATTACH_CONTROL_PLANE_OUTPUT=true helped massively as I could then see this message:
[2020-07-31T13:28:58.496Z] 2020-07-31 13:28:50 2020-07-31 13:27:50.661604 E | etcdmain: error verifying flags, invalid value "v3.4.3" for ETCD_VERSION: parse error. See 'etcd --help'.

I had ETCD_VERSION environment variable which broke the tests. Bit of a niche case, I fixed it by remove it: unset ETCD_VERSION.


Identifiers validation failed for dataset Carnegie Museum of Natural History - Mollusks

Identifier validation failed for the dataset Carnegie Museum of Natural History - Mollusks:

Crawler attempt: 24
Publishing organization: Carnegie Museums
Publishing country: UNITED_STATES
Installation: InvertEBase Data Portal
Number of occurrences indexed for this dataset at the time of the issue: 174557
Cause: GBIF ID problems exceed 5% threshold: 58% duplicates; 1158 total records; 671 absent records
Pipelines execution steps: http://api.gbif.org/v1/pipelines/history/execution/3322720/step

New IDs sample:

1653863
1647076
1651009
1650990
1650987
1651001
1650998
1650976
1647642
1664624

Old IDs sample:

0aec88ef-1f16-4fa8-842a-21a6d583f64b
6ed16f9f-f97b-46bd-b030-fc4e35a068ff
35112cae-21ed-4102-b6e7-b010ba2556e2
e005cd6c-9b29-4e54-b2de-f8c3a3abfe9c
d8db57ca-3741-46a0-b437-ccaad56db1b2
d7b439ac-a484-4990-bae6-f9f4e23f76b3
751d3c2e-def3-4248-9189-085de711a730
24d591c5-9b86-4bc2-917e-8b6da8f6e862
c8c36e85-6cde-4f05-a984-9a4286bf85dd
3ce7e1f2-9563-4cab-a5d1-b0b5e2c760a8

Publisher email
Hello,
I am contacting you from the GBIF Secretariat about a dataset published by the Carnegie Museum of Natural History - Mollusks : https://doi.org/10.15468/4rfubm.
We noticed that the occurrenceIDs were changed. We have temporarily paused the ingestions of this dataset.
As you might already know, when an occurrence record has a new occurrenceID for a given dataset, our system considers it to be a new occurrence.
This means that it will be given a new gbifid and a new occurrence URL (like this one: https://www.gbif.org/occurrence/1252968762) and the old gbifid and URL will be deprecated.
In this case, this means that the occurrence URLs would be deprecated when ingesting the newest versions of these datasets.
We would like to check with you if those changes were intentional. Do you know if this is the case?
Please let us know, thanks! We are happy to resume the dataset ingestion.
Note that some users rely on those occurrence URLs and gbifids (like https://bionomia.net for example). In an attempt to improve
the stability of the occurrence URLs and gbifids, we have implemented a warning system to detect these type of changes in datasets (see this news item).
If the data publisher can provide us with a list of old and new occurrenceIDs per record, we can avoid the identifier and URL changes. Could that be an option?
Please let us know if you have any question. Thanks!
All the best,

You can skip/fix identifier validation using the registry UI.

Identifier validation still  failing for the dataset Carnegie Museum of Natural History - Mollusks:

Crawler attempt: 25
Publishing organization: Carnegie Museums
Publishing country: UNITED_STATES
Installation: InvertEBase Data Portal
Number of occurrences indexed for this dataset at the time of the issue: 174557
Cause: GBIF ID problems exceed 5% threshold: 58% duplicates; 1158 total records; 671 absent records
Pipelines execution steps: http://api.gbif.org/v1/pipelines/history/execution/3322768/step

New IDs sample:

1653863
1647076
1651009
1650990
1650987
1651001
1650998
1650976
1647642
1664624

Old IDs sample:

0aec88ef-1f16-4fa8-842a-21a6d583f64b
6ed16f9f-f97b-46bd-b030-fc4e35a068ff
35112cae-21ed-4102-b6e7-b010ba2556e2
e005cd6c-9b29-4e54-b2de-f8c3a3abfe9c
d8db57ca-3741-46a0-b437-ccaad56db1b2
d7b439ac-a484-4990-bae6-f9f4e23f76b3
751d3c2e-def3-4248-9189-085de711a730
24d591c5-9b86-4bc2-917e-8b6da8f6e862
c8c36e85-6cde-4f05-a984-9a4286bf85dd
3ce7e1f2-9563-4cab-a5d1-b0b5e2c760a8

Publisher email
Hello,
I am contacting you from the GBIF Secretariat about a dataset published by the Carnegie Museum of Natural History - Mollusks : https://doi.org/10.15468/4rfubm.
We noticed that the occurrenceIDs were changed. We have temporarily paused the ingestions of this dataset.
As you might already know, when an occurrence record has a new occurrenceID for a given dataset, our system considers it to be a new occurrence.
This means that it will be given a new gbifid and a new occurrence URL (like this one: https://www.gbif.org/occurrence/1252968762) and the old gbifid and URL will be deprecated.
In this case, this means that the occurrence URLs would be deprecated when ingesting the newest versions of these datasets.
We would like to check with you if those changes were intentional. Do you know if this is the case?
Please let us know, thanks! We are happy to resume the dataset ingestion.
Note that some users rely on those occurrence URLs and gbifids (like https://bionomia.net for example). In an attempt to improve
the stability of the occurrence URLs and gbifids, we have implemented a warning system to detect these type of changes in datasets (see this news item).
If the data publisher can provide us with a list of old and new occurrenceIDs per record, we can avoid the identifier and URL changes. Could that be an option?
Please let us know if you have any question. Thanks!
All the best,

You can skip/fix identifier validation using the registry UI.

This dataset was flagged because of a bug in the id checker.


Fix AO/AOCS insertDesc memory issue.

This is introduced by 9ce6ab6c24.
The insertDesc should be inside AO/AOCS's stateCxt itself. Else when switching to aonther insertDesc due to multiple insert seg files, memory corrupt will happen.
Authored-by: Zhang Mingli<EMAIL_ADDRESS>

fix #ISSUE_Number

Change logs
Describe your change clearly, including what problem is being solved or what feature is being added.
If it has some breaking backward or forward compatibility, please clary.
Why are the changes needed?
Describe why the changes are necessary.
Does this PR introduce any user-facing change?
If yes, please clarify the previous behavior and the change this PR proposes.
How was this patch tested?
Please detail how the changes were tested, including manual tests and any relevant unit or integration tests.
Contributor's Checklist
Here are some reminders and checklists before/when submitting your pull request, please check them:

[ ] Make sure your Pull Request has a clear title and commit message. You can take git-commit template as a reference.
[ ] Sign the Contributor License Agreement as prompted for your first-time contribution(One-time setup).
[ ] Learn the coding contribution guide, including our code conventions, workflow and more.
[ ] List your communication in the GitHub Issues or Discussions (if has or needed).
[ ] Document changes.
[ ] Add tests for the change
[ ] Pass make installcheck
[ ] Pass make -C src/test installcheck-cbdb-parallel
[ ] Feel free to request cloudberrydb/dev team for review and approval when your PR is ready🥳

Fix #364

Test with files in  #364 , and case passes, @shmiwy  could you help to confirm again, thanks.


fix report view matrix of status to type so all records are accounted for

This is not a bug, but only team records that have a valid ttLoc assigned (engagement type or location) are tallied.


I can successfully open cupti64_80.dll library. But It seems the program run all the time and will never stop.

NOTE: Only file GitHub issues for bugs and feature requests.  All other topics will be closed.
For general support from the community, see StackOverflow.
To make bugs and feature requests more easy to find and organize, we close issues that are deemed
out of scope for GitHub Issues and point people to StackOverflow.
For bugs or installation issues, please provide the following information.
The more information you provide, the more easily we will be able to offer
help and advice.
What related GitHub issues or StackOverflow threads have you found by searching the web for your problem?
Environment info
Operating System: Windows 10
Installed version of CUDA and cuDNN:
(please attach the output of ls -l /path/to/cuda/lib/libcud*):
If installed from binary pip package, provide:
C:\Users\Jun Xiao>nvcc --version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2016 NVIDIA Corporation Built on Sat_Sep__3_19:05:48_CDT_2016 Cuda compilation tools, release 8.0, V8.0.44

A link to the pip package you installed:
C:\Users\Jun Xiao>pip3.5 install --upgrade tensorflow-gpu Requirement already up-to-date: tensorflow-gpu in c:\users\jun xiao\appdata\local\programs\python\python35\lib\site-packages Requirement already up-to-date: protobuf>=3.1.0 in c:\users\jun xiao\appdata\local\programs\python\python35\lib\site-packages (from tensorflow-gpu) Requirement already up-to-date: six>=1.10.0 in c:\users\jun xiao\appdata\local\programs\python\python35\lib\site-packages (from tensorflow-gpu) Requirement already up-to-date: numpy>=1.11.0 in c:\users\jun xiao\appdata\local\programs\python\python35\lib\site-packages (from tensorflow-gpu) Requirement already up-to-date: wheel>=0.26 in c:\users\jun xiao\appdata\local\programs\python\python35\lib\site-packages (from tensorflow-gpu) Requirement already up-to-date: setuptools in c:\users\jun xiao\appdata\local\programs\python\python35\lib\site-packages (from protobuf>=3.1.0->tensorflow-gpu) Requirement already up-to-date: appdirs>=1.4.0 in c:\users\jun xiao\appdata\local\programs\python\python35\lib\site-packages (from setuptools->protobuf>=3.1.0->tensorflow-gpu) Requirement already up-to-date: packaging>=16.8 in c:\users\jun xiao\appdata\local\programs\python\python35\lib\site-packages (from setuptools->protobuf>=3.1.0->tensorflow-gpu) Requirement already up-to-date: pyparsing in c:\users\jun xiao\appdata\local\programs\python\python35\lib\site-packages (from packaging>=16.8->setuptools->protobuf>=3.1.0->tensorflow-gpu)
The output from python -c "import tensorflow; print(tensorflow.__version__)".
`>>> import tensorflow
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:135] successfully opened CUDA library cublas64_80.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:135] successfully opened CUDA library cudnn64_5.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:135] successfully opened CUDA library cufft64_80.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:135] successfully opened CUDA library nvcuda.dll locally
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\stream_executor\dso_loader.cc:135] successfully opened CUDA library curand64_80.dll locally

print(tensorflow.version)
1.0.0`

If installed from source, provide

The commit hash (git rev-parse HEAD)
The output of bazel version

If possible, provide a minimal reproducible example (We usually don't have time to read hundreds of lines of your code)
I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\simple_placer.cc:841] OptimizeLoss/gradients/generator/fully_connected/BatchNorm/moments/normalize/Square_grad/mul/x: (Const)/job:localhost/replica:0/task:0/gpu:0 OptimizeLoss/gradients/generator/fully_connected/BatchNorm/moments/sufficient_statistics/SquaredDifference_grad/scalar: (Const): /job:localhost/replica:0/task:0/gpu:0 I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\simple_placer.cc:841] OptimizeLoss/gradients/generator/fully_connected/BatchNorm/moments/sufficient_statistics/SquaredDifference_grad/scalar: (Const)/job:localhost/replica:0/task:0/gpu:0 OptimizeLoss/train/value: (Const): /job:localhost/replica:0/task:0/cpu:0 I c:\tf_jenkins\home\workspace\release-win\device\gpu\os\windows\tensorflow\core\common_runtime\simple_placer.cc:841] OptimizeLoss/train/value: (Const)/job:localhost/replica:0/task:0/cpu:0 [I 13:13:00.712 NotebookApp] Saving file at /WGAN-tensorflow-master/WGAN.ipynb successfully opened CUDA library cupti64_80.dll locally
`KeyboardInterrupt                         Traceback (most recent call last)
 in ()
----> 1 main()
 in main()
32                 citers = Citers
33             for j in range(citers):
---> 34                 feed_dict = next_feed_dict()
35                 if i % 100 == 99 and j == 0:
36                     run_options = tf.RunOptions(
 in next_feed_dict()
20                                mode='constant', constant_values=-1)
21             train_img = np.expand_dims(train_img, -1)
---> 22         batch_z = np.random.normal(0, 1, [batch_size, z_dim])             .astype(np.float32)
23         feed_dict = {real_data: train_img, z: batch_z}
24         return feed_dic`
What other attempted solutions have you tried?
I google for the problem. At first, I can't open "not find cuptiActivityRegisterCallbacksin libcupti DSO", and I adopt the idea from the "menggangmark".
and it can successfully open the cupti64_80 library.
Logs or other output that would be helpful
(If logs are large, please upload as attachment or provide link).

cupti64_80 library is just an information message. As far as I can tell, it has no relation whatsoever to the issue you are reporting.  Also I do not really see clear instructions for us to reproduce the issue you are facing. You seem to have just copy pasted your error message there.
It looks to me like your training code may not be converging. I recommend adding print statements to see what your code is doing.

Looks like you also filed the issue #7890
Are these different issues or the same issues?

Closing due to lack of activity.


mapping compiler optimization levels like -O3

Specifiying compiler optimization levels is often done with something like -O3 meaning highest optimization level and -O0 the lowest... How could this be mapped to library constructs if you do not want to map each optimization level to a bool?

Works as expected with
[Option('O', "optimization-level", Required = false, HelpText = "Optimization level between 0 and 3 (both inclusive).", Default = 0)]
public int optimizationLevel { get; set; }


[Network] #364: Change relay methods prefix from "iridium" to "irn"

#closes 364
Self-explanatory

let's change relay protocol options for irn as well. so uri do not contain legacy naming

I think we can just leave as it is, it's well isolated and won't affect the protocol


Problem populating values for has-many relationship (MySQL)

Hello, I'm having an issue populating a has-many relation field on a Bun model. The models look like this:
type Device struct {
	bun.BaseModel `bun:"table:devices"`
	ID            int64   `bun:"id,pk,autoincrement"`
	GUID          string  `bun:"guid,unique"`
	Modes         []*Mode `bun:"rel:has-many,join:id=device_id"`
}

type Mode struct {
	bun.BaseModel `bun:"table:modes"`
	ID            int64      `bun:"id,pk,autoincrement"`
	DeviceID     *int64     `bun:"device_id"`
	Name          *string    `bun:"name"`
	CreatedAt     *time.Time `bun:"created_at"`
	UpdatedAt     *time.Time `bun:"updated_at"`
	DeletedAt     *time.Time `bun:"deleted_at"`
}

And the query looks like this (where Circuit is a bun.DB and guids is an []string provided as a function argument):
devices := []*dbmodel.Device{}

query := Circuit.
	NewSelect().
	Model(&dbmodel.Device{}).
	Where("guid IN (?)", bun.In(guids)).
	Relation("Modes")
if err := query.Scan(context.Background(), &devices); err != nil {
	return devices, fmt.Errorf("problem scanning select query: %w", err)
}

return devices, nil

The query executes with no error, but the Modes list is nil (despite there being modes in the DB for the devices with guids passed into the function). I'm not sure if I'm doing something incorrectly, but any help would be greatly appreciated! Happy to provide additional logs as needed.
Update: Adding the bundebug query hook with verbose logging, it doesn't look like any attempt is made to retrieve information about the relation specified in the query.

Please try this:
query := Circuit.
	NewSelect().
	Model(&devices).
	Where("guid IN (?)", bun.In(guids)).
	Relation("Modes")
if err := query.Scan(context.Background()); err != nil {
	return devices, fmt.Errorf("problem scanning select query: %w", err)
}

I don't remember details but there are some issues with supporting Scan(ctx, &models)...

Gotcha, that worked! Thanks! I'll use this approach going forward :)


implement bytemuck traits on some types to make it easy to integrate with opengl

most opengl crates take data as a &[u8], and in both glium and other implementations, people have to convert Vertex into their own struct that has bytemuck traits, or use unsafe casts :( . idk if converting between structs is a zero cost operation, but it will still be cool if egui support these traits. would be some nice QoL improvements for people integrating into opengl or such contexts.
but it means adding a dependency and the traits themselves are unsafe , so , i would understand if the devs don't want to.

I think it awesome for wgpu or vulkano or other graphics backends

my backend have  unsafe cast for

epaint::Vertex
&[epaint::Color32]

pretty much all backends either use unsafe casting or convert to structs that implement bytemuck traits. that is why i would prefer if egui itself used those traits. that way we can also always be sure that the alignment with #[repr(C)] has been considered for safe casting to send to gpu memory.

#[repr(C)] attribute on Vertex there is no problem only we need  add Zeroable and Pod traits

#[repr(C)] attribute on Vertex there is no problem only we need add Zeroable and Pod traits

yes, i was referring to the The type must not contain any padding bytes, either in the middle or on the end (eg: no #[repr(C)] struct Foo(u8, u16), which has padding in the middle, and also no #[repr(C)] struct Foo(u16, u8), which has padding on the end). condition for bytemuck::Pod from the https://docs.rs/bytemuck/1.7.0/bytemuck/trait.Pod.html#safety .
thus, if epaint::Vertex ever needs change (as its still not 1.0), then that condition has to be considered. that way users of egui can be sure that there's no padding or alignment issues, or if there are issues, they can be mentioned in the docs themselves

I would just like to bump this again, as it seems to have gotten buried. implementing bytemuck traits could be nice Quality of Life improvement for the rendering crates.
let vertices: Vec<Vertex> = mesh
                .vertices
                .iter()
                .map(|v| Vertex {
                    a_pos: [v.pos.x, v.pos.y],
                    a_tc: [v.uv.x, v.uv.y],
                    a_srgba: v.color.to_array(),
                })
                .collect();
``` this is the code in egui glium itself, where there's an unnecessary conversion to a local struct.

and in the glow version (from the pull request) they use
```rust
#[allow(unsafe_code)]
unsafe fn as_u8_slice<T>(s: &[T]) -> &[u8] {
    std::slice::from_raw_parts(s.as_ptr() as *const u8, s.len() * std::mem::size_of::<T>())
}``` to convert the vertices/indices. considering, Vertex struct is public and changing it is a breaking change, i think it is better to just implement bytemuck traits so that egui can itself verify if those structs are properly aligned.

Opt-in bytemuck support (behind a feature flag) seems reasonable to me


MAINT: Need to be explicit with action path while using pixi run too

I missed this in https://github.com/scientific-python/upload-nightly-action/pull/96 but we need to be explicit while using pixi run too.
I was tripping into could not find pixi.toml or pyproject.toml which is configured to use pixi while on the pixi run step downstream.
I can use https://github.com/scipp/scipp/pull/3542 to test this outside of this repo. I'll ping here once that passes :)
* Provide '--manifest-path' option to 'pixi run' to ensure the environment is properly activated.

      --manifest-path <MANIFEST_PATH>
          The path to 'pixi.toml' or 'pyproject.toml'

I can use scipp/scipp#3542 to test this outside of this repo. I'll ping here once that passes :)

Thank you @MridulS. If I'm not immediately responsive please merge if things pass there.

@MridulS The action worked for you. :+1:
Your workflow failed
  while read -r package_name; do
    echo "Removing $package_name"
    pixi run anaconda --token "***" remove -f "$package_name"
  done < dev_wheels.txt
  shell: /usr/bin/bash -l {0}
  env:
    pythonLocation: /opt/hostedtoolcache/Python/3.10.15/x64
    PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.10.15/x64/lib/pkgconfig
    Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.10.15/x64
    Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.10.15/x64
    Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.10.15/x64
    LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.10.15/x64/lib
Removing scipp-nightly-wheels/scipp/24.9.2.dev8+g7d0cce6be
  × could not find pixi.toml or pyproject.toml which is configured to use pixi

but that's because in your PR you're trying to use pixi locally without any configs:
      - name: Delete old dev wheels from pypi.anaconda.org
        run: |
          while read -r package_name; do
            echo "Removing $package_name"
            pixi run anaconda --token "${{secrets.ANACONDA_NIGHTLY_WHEEL_TOKEN}}" remove -f "$package_name"
          done < dev_wheels.txt


Do pthread typedefs in the same #ifdef as <pthread.h> is included.

Suggested by @MirkoBonadei, may make build errors more obvious.
Would it be appropriate to fall into an #error "Unsupported platform" if the userland types aren't defined? I notice that's only done in one other place.

Suggested by @MirkoBonadei, may make build errors more obvious.
Would it be appropriate to fall into an #error "Unsupported platform" if the userland types aren't defined? I notice that's only done in one other place.

This breaks compilation on MacOS X platforms.

This breaks compilation on MacOS X platforms.

Suggested by @MirkoBonadei, may make build errors more obvious.
Would it be appropriate to fall into an #error "Unsupported platform" if the userland types aren't defined? I notice that's only done in one other place.

Yes, I think this is a good thing to do (it makes things more explicit, avoiding to partially support platforms).

Suggested by @MirkoBonadei, may make build errors more obvious.
Would it be appropriate to fall into an #error "Unsupported platform" if the userland types aren't defined? I notice that's only done in one other place.

Yes, I think this is a good thing to do (it makes things more explicit, avoiding to partially support platforms).

Added || defined(__APPLE__). Isn't it possible there are other platforms where the same thing happens, though? If so, may be best to leave this alone.

Added || defined(__APPLE__). Isn't it possible there are other platforms where the same thing happens, though? If so, may be best to leave this alone.

Added || defined(__APPLE__). Isn't it possible there are other platforms where the same thing happens, though? If so, may be best to leave this alone.

Yes, that is definitely possible. I am still in favor of this change because the header is not self contained at the moment so this is an improvement (for example, as of now, removing an #include in another file can break compilation because of missing pthread types).

Added || defined(__APPLE__). Isn't it possible there are other platforms where the same thing happens, though? If so, may be best to leave this alone.

Yes, that is definitely possible. I am still in favor of this change because the header is not self contained at the moment so this is an improvement (for example, as of now, removing an #include in another file can break compilation because of missing pthread types).

Why not remove line 286 and line 288? At least according to the Posix standard, you should include pthread.h. If we figure out that this breaks a platform, we can use an exception list, which will be shorter.

Why not remove line 286 and line 288? At least according to the Posix standard, you should include pthread.h. If we figure out that this breaks a platform, we can use an exception list, which will be shorter.

Why not remove line 286 and line 288? At least according to the Posix standard, you should include pthread.h. If we figure out that this breaks a platform, we can use an exception list, which will be shorter.

Yes, this should be a simplification (easier to read and understand) and I think it is a good idea to try it. An exception for __EMSCRIPTEN_PTHREADS__ is probably needed, something like:
#else /* !defined(Userspace_os_Windows) */
#include <sys/socket.h>

#if defined(__EMSCRIPTEN__) && !defined(__EMSCRIPTEN_PTHREADS__)
#error "Unsupported build configuration ..."
#endif

#include <pthread.h>

typedef pthread_mutex_t userland_mutex_t;
typedef pthread_cond_t userland_cond_t;
typedef pthread_t userland_thread_t;
#endif

Why not remove line 286 and line 288? At least according to the Posix standard, you should include pthread.h. If we figure out that this breaks a platform, we can use an exception list, which will be shorter.

Yes, this should be a simplification (easier to read and understand) and I think it is a good idea to try it. An exception for __EMSCRIPTEN_PTHREADS__ is probably needed, something like:
#else /* !defined(Userspace_os_Windows) */
#include <sys/socket.h>

#if defined(__EMSCRIPTEN__) && !defined(__EMSCRIPTEN_PTHREADS__)
#error "Unsupported build configuration ..."
#endif

#include <pthread.h>

typedef pthread_mutex_t userland_mutex_t;
typedef pthread_cond_t userland_cond_t;
typedef pthread_t userland_thread_t;
#endif

Why not remove line 286 and line 288? At least according to the Posix standard, you should include pthread.h. If we figure out that this breaks a platform, we can use an exception list, which will be shorter.

Yes, this should be a simplification (easier to read and understand) and I think it is a good idea to try it. An exception for __EMSCRIPTEN_PTHREADS__ is probably needed, something like:
#else /* !defined(Userspace_os_Windows) */
#include <sys/socket.h>

#if defined(__EMSCRIPTEN__) && !defined(__EMSCRIPTEN_PTHREADS__)
#error "Unsupported build configuration ..."
#endif

#include <pthread.h>

typedef pthread_mutex_t userland_mutex_t;
typedef pthread_cond_t userland_cond_t;
typedef pthread_t userland_thread_t;
#endif

We can do that. However, we don't protect against misconfiguration in other cases... I if you prefer this way, update the PR and I'll merge it.

Why not remove line 286 and line 288? At least according to the Posix standard, you should include pthread.h. If we figure out that this breaks a platform, we can use an exception list, which will be shorter.

Yes, this should be a simplification (easier to read and understand) and I think it is a good idea to try it. An exception for __EMSCRIPTEN_PTHREADS__ is probably needed, something like:
#else /* !defined(Userspace_os_Windows) */
#include <sys/socket.h>

#if defined(__EMSCRIPTEN__) && !defined(__EMSCRIPTEN_PTHREADS__)
#error "Unsupported build configuration ..."
#endif

#include <pthread.h>

typedef pthread_mutex_t userland_mutex_t;
typedef pthread_cond_t userland_cond_t;
typedef pthread_t userland_thread_t;
#endif

We can do that. However, we don't protect against misconfiguration in other cases... I if you prefer this way, update the PR and I'll merge it.

Updated according to your suggestions.


Lintian warnings

Lintian warnings from the .deb build:
W: tor-onions-client: syntax-error-in-debian-changelog line 37 "badly formatted trailer line"
W: tor-onions-client: debian-changelog-has-wrong-weekday 2015-08-06 is a Thursday
W: tor-onions-client: manpage-has-bad-whatis-entry usr/share/man/man1/onions-client.1.gz
W: tor-onions-client: binary-without-manpage usr/bin/onions-tbb

I'm not going to worry too much about the rest.

I'm not going to worry too much about the rest.


Update kind to v0.23.0 #720

Update Kind to v0.23.0 and Node Image to v1.30.0
Description
This PR updates the Kind version used in the Makefile and GitHub workflows from v0.22.0 to v0.23.0. Additionally, the node image is updated to v1.30.0.
Changes Made

Updated Kind version to v0.23.0 in the Makefile.

Reference: Makefile#L232

Updated Kind version to v0.23.0 in GitHub workflows.

Reference: test.yaml#L80

Updated the node image to v1.30.0.

Reference: kind-cluster.yaml#L6

Updated the development readme to reflect these changes.

Reference: development.md

The commit log here is a bit strange. Maybe take the changes and add a single commit ?


[Event Request] Page 232 "Apply Customer Entries"

Please can you add this event to procedure CheckCustLedgEntry in object Page 232 "Apply Customer Entries":
if CustLedgerEntry.FindSet() then
    repeat
        if CalcType = CalcType::"Gen. Jnl. Line" then begin
            RaiseError := TempApplyingCustLedgEntry."Posting Date" < CustLedgerEntry."Posting Date";
            OnBeforeEarlierPostingDateError(TempApplyingCustLedgEntry, CustLedgerEntry, RaiseError, CalcType.AsInteger(), OK);
            if RaiseError then
                Error(
                    EarlierPostingDateErr, TempApplyingCustLedgEntry."Document Type", TempApplyingCustLedgEntry."Document No.",
                    CustLedgerEntry."Document Type", CustLedgerEntry."Document No.");

            OnCheckCustLedgEntryOnAfterEarlierPostingDateTest(TempApplyingCustLedgEntry, Rec, CalcType, OK);
        end;

        OnCheckCustLedgEntryOnBeforeCheckAgainstApplnCurrency(CustLedgerEntry, GenJnlLine);

        if TempApplyingCustLedgEntry."Entry No." <> 0 then begin
            OnBeforeCheckAgainstApplnCurrencyOnCheckCustLedgEntry(CustLedgerEntry, GenJnlLine);    // new event
            GenJnlApply.CheckAgainstApplnCurrency(
                ApplnCurrencyCode, CustLedgerEntry."Currency Code", GenJnlLine."Account Type"::Customer, true);
        end;
    until CustLedgerEntry.Next() = 0;

...

[IntegrationEvent(false, false)]
local procedure OnBeforeCheckAgainstApplnCurrencyOnCheckCustLedgEntry(CustLedgerEntry: Record "Cust. Ledger Entry"; GenJournalLine: Record "Gen. Journal Line")
begin
end;

hello @ivas-su
Why you need this one, as you already have OnCheckCustLedgEntryOnBeforeCheckAgainstApplnCurrency with same parameters?

Hello @AleksandricMarko!
It is impossible to handle the condition TempApplyingCustLedgEntry."Entry No." <> 0 in the OnCheckCustLedgEntryOnBeforeCheckAgainstApplnCurrency event.
I need an event right before the call to GenJnlApply.CheckAgainstApplnCurrency(ApplnCurrencyCode, CustLedgerEntry."Currency Code", GenJnlLine."Account Type"::Customer, true);

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 12756.


add the #nostr tag to this repo

Would it be possible to add the #nostr tag to this repo
I'll show up in this nice list here:
https://github.com/topics/nostr

Done!


How to use responderNegotiate ?

Default value Drawer on right 20% area on screen in right Drawer, So i need to change this value from 20% to 10% i look at manual and see this function responderNegotiate i trying to
responderNegotiate={(gestureState) => console.log(gestureState) }
it's response somthing i dont understand any one help ?

Seems you just have to evaluate the gestureState and return true or false depending on whether you want the gesture to be recognised or not, eg to get it to swipe open right menu only if dragging from the last 30 points:
responderNegotiate={(evt, gestureState) => {
  return Dimensions.get('window').width - (gestureState.moveX - gestureState.dx) < 30;
}}


[DO NOT MERGE] Auto PR to update dependencies of istio

This PR will be merged automatically once checks are successful.

anything

@istio-testing: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-suite-rbac-auth.sh
cda0f9da4e8e69f120e0ea81234d89b56d4b22d6
link
/test e2e-suite-rbac-auth

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@istio-testing: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-suite-rbac-auth.sh
cda0f9da4e8e69f120e0ea81234d89b56d4b22d6
link
/test e2e-suite-rbac-auth

prow/e2e-suite-rbac-no_auth.sh
cda0f9da4e8e69f120e0ea81234d89b56d4b22d6
link
/test e2e-suite-rbac-no_auth

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test all


Fix 16.04 builds

Fixes needed for ubuntu 16.04
fixes also going into llvm-project and aomp_extras

LGTM

I don't think we need to export AOMP since we are passing LLVM_DIR to cmake and adding ${LLVM_DIR}.
If we do export AOMP then there is no need for this change to cmake in aomp-extras because LLVM will be found at the first PATH, $ENV{AOMP}:
find_package(LLVM QUIET CONFIG
PATHS
$ENV{AOMP}
${LLVM_DIR}
NO_DEFAULT_PATH
)

I removed the AOMP setting from aomp_common_vars, and it indeed builds , will revise patch


add missing Ublaboo\DataGrid\Column\Column use to TButtonRenderer

PHPStan is screaming on this one on my projects :)

But there is no mention of this class in that file

@paveljanda it is in phpdoc comment on line 117 and this cause phpstan error afterwards and no autocomplete in IDE
32     Call to method setFilterText() on an unknown class
Ublaboo\DataGrid\Traits\Column.

Oh I see, I am working on version 6 where there is no line number 117 🙈

Is it still relevant? @paveljanda

I do not think so


Monitoring: Added disk available capacity monitoring

Purpose of the pull request
This method is added because the available disk capacity cannot be monitored

Brief change log
Change dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
Change dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/utils/HeartBeat.java
Change dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/utils/OSUtils.java
Change dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/master.vue
Change dolphinscheduler-ui/src/js/conf/home/pages/monitor/pages/servers/worker.vue
Change dolphinscheduler-ui/src/js/module/i18n/locale/en_US.js
Change dolphinscheduler-ui/src/js/module/i18n/locale/zh_CN.js

Verify this pull request
I have test local

The 2.0.5-Release branch that I just downloaded today has the same running result as the test result of the code I submitted. There should be a bug in the unit test

Codecov Report

:exclamation: No coverage uploaded for pull request base (2.0.5-release@d88656c). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Current head 56f6a2c differs from pull request most recent head 18f5ba7. Consider uploading reports for the commit 18f5ba7 to get more accurate results

@@               Coverage Diff                @@
##             2.0.5-release   #10017   +/-   ##
================================================
  Coverage                 ?   21.06%
  Complexity               ?     1590
================================================
  Files                    ?      536
  Lines                    ?    22519
  Branches                 ?     2666
================================================
  Hits                     ?     4744
  Misses                   ?    17292
  Partials                 ?      483

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 d88656c...18f5ba7. Read the comment docs.

Can this code be merged?  If not, what other adjustments need to be made?

Hi @retime123 , You should change your target branch from 2.0.5-release to 2.0.6-prepare branch.


Running error：ETIMEDOUT

I have something error, but i can't solve this, hope someone could help me:
error Error: connect ETIMEDOUT <IP_ADDRESS>:443
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1494:16) {
errno: -4039,
code: 'ETIMEDOUT',
syscall: 'connect',
address: '<IP_ADDRESS>',
port: 443,
config: {
transitional: {
silentJSONParsing: true,
forcedJSONParsing: true,
clarifyTimeoutError: false
},
adapter: [Function: httpAdapter],
transformRequest: [ [Function: transformRequest] ],
transformResponse: [ [Function: transformResponse] ],
timeout: 0,
xsrfCookieName: 'XSRF-TOKEN',
xsrfHeaderName: 'X-XSRF-TOKEN',
maxContentLength: -1,
maxBodyLength: -1,
validateStatus: [Function: validateStatus],
headers: {
Accept: 'application/json, text/plain, /',
'Content-Type': 'application/json',
'User-Agent': 'OpenAI/NodeJS/3.2.1',
Authorization: 'Bearer sk-xxx',
'Content-Length': 56
},
method: 'post',
data: '{"model":"text-embedding-ada-002","input":"who are you"}',
url: 'https://api.openai.com/v1/embeddings'
},

got the same issue, checked everything not sure what went run. It seems like connection to OpenAI API is not successful

I succeeded later. I changed the agent to TUN mode. You can try it, I hope it will help you.

I succeeded later. I changed the agent to TUN mode. You can try it, I hope it will help you.

I used vpn of clash,  I enable the tun mode with clash gui.  But the issue don't sovled.   so how do you setup with tun mode?

I succeeded later. I changed the agent to TUN mode. You can try it, I hope it will help you.

I used vpn of clash, I enable the tun mode with clash gui. But the issue don't sovled. so how do you setup with tun mode?

I succeeded .    I changed the mode to tun mode  with clash for windows.


We should consolidate the instances of OperationCorrelationTelemetryInitializer.

There is a copy of OperationCorrelationTelemetryInitializer in this SDK and also in the Web SDK. They are a bit different but also have shared logic and copy/pasted code.
https://github.com/Microsoft/ApplicationInsights-dotnet-server/issues/456

Refer commit 2097faf for a partial effort. (At least we can make advantage of the comments added there :-))

Refer commit 2097faf for a partial effort. (At least we can make advantage of the comments added there :-))


Update plookup spec to include multiple lookup tables

Description
Update extend lookup spec to include a spec for multiple lookup tables.
Acceptance Criteria

PR with plookup spec update  for multiple lookup tables reviewed by team (at a minimum Matthew).
PR (AC 1) merged to master.

Changes will be available in this PR

Note that this one is already implemented and in the spec. However, it might not be up-to-date with the code. It will be in the scope of this PR.

This is already in the spec, see Private Zenhub Image


Issue with /docs/getting-started-guides/ubuntu/manual/

This is a...

[ ] Feature Request
[x] Bug Report

Problem:
I'm using the git clone (the link below), when it finished I didn't find the folder ubuntu.
git clone --depth 1 https://github.com/kubernetes/kubernetes.git
Proposed Solution:
Page to Update:
http://kubernetes.io/...

@feborges what's your output. It works on my setup. Are you sure it did not fail?

When I executed the command KUBERNETES_PROVIDER=ubuntu ./kube-up.sh from the link https://kubernetes.io/docs/getting-started-guides/ubuntu/manual/
The error is:
... Starting cluster using provider: ubuntu
... calling verify-prereqs
Identity added: /root/.ssh/id_rsa (/root/.ssh/id_rsa)
... calling verify-kube-binaries
./kube-up.sh: line 45: verify-kube-binaries: command not found

So your kubernetes folder is now there? That's your original issue. I'd love to know if that worked first.
It looks like the documentation is a bit out of date given the kube-up.sh failed for you.
I see that doc says "Cloud team from Zhejiang University will maintain this work." Does anybody know how we can get a hold of them?


Allow more devices

Added access to kvm -device ? via the already existing DISK_DEVICE variable.
NOTE:
This may create issue(s) for users that have DISK_DEVICE defined in a format that does not match an expected device.

For my build, neither pre-defined option (e.g., the scsi driver and the virtio driver) worked. However, I was able to launch successfully using qemu's default, if=ide. Since this was hard-coded I couldn't resolve the conflict without writing the entrypoint, startup.sh. PR seemed easier.

That seems reasonable, thank you. Merged.


use jsx automatic runtime

https://github.com/babel/website/pull/2289/files

We are not robots, please explain things in a new issue like the humans we are, this is not okay...


mock cel library

a mock cel library used for implementation and testing while waiting for cel support in c++.

@ashithasantosh

Closed in favor of PR#23975


Fix Origins TO API tests

The offset/limit/page query parameters should be paired with orderby for
determinate results.

What does this PR (Pull Request) do?

[x] This PR fixes #REPLACE_ME OR is not related to any Issue

Which Traffic Control components are affected by this PR?

tests, no doc changes required

What is the best way to verify this PR?

Run the TO API tests.
If this is a bug fix, what versions of Traffic Control are affected?

master

The following criteria are ALL met by this PR

[x] This PR includes tests OR I have explained why tests are unnecessary
[x] This PR includes documentation OR I have explained why documentation is unnecessary
[x] This PR includes an update to CHANGELOG.md OR such an update is not necessary
[x] This PR includes any and all required license headers
[x] This PR ensures that database migration sequence is correct OR this PR does not include a database migration
[x] This PR DOES NOT FIX A SERIOUS SECURITY VULNERABILITY (see the Apache Software Foundation's security guidelines for details)

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/trafficcontrol-PR/4138/
Test PASSed.


Use node logger

The logging generated by generate_parameter_library uses namespaced but not node logger. There are downsides to this and we should update to using the node logger as called out here:
https://github.com/PickNikRobotics/generate_parameter_library/commit/70c917da74608c19203611a7f13532ada89cf8f5#r111546330
Thank you @bijoua29 for calling this out. I'm sorry it took me so long to see your comment. I'll fix this eventually but it is not a priority for me so if you or someone else gets to it first I'd welcome the PR and will try to merge it quickly.

Thanks for implementing this

I'm sorry, but it won't be in that sync because I haven't released between merging this and the sync closing. I plan on releasing this library at the end of this week which means it should be in the next sync.

No problem. I just wanted to plan for it. So will wait for next sync and make appropriate changes i.e., call the right overloaded constructor.


Alert Counts not Populating Correctly

When running a scan without any validation active, the scan output results just show:

Whereas the output report shows 5 low alerts for this scan.

I've fiddled around with the scan settings and I can't seem to get these to populate correctly.

Hi @RobertMcCoy ,
Thanks for the feedback. Can you provide me the current task settings you have configured? That might aid in troubleshooting this. I will look in to this issue.

I have the API Url, API Key, and Target URL filled in with my VM/API Key as well as the correct target.
Under Spider Scan I have Execute Spider and Recurse checked, with Max Children to Crawl set to 2.
For Active Scan I have Execute Active Scan enabled and Recurse enabled, that's it.
Verification is disabled, and the Report output is set to Markdown.

@RobertMcCoy @kasunkv Confirmed that with v2.0.7, the html and xml reports can be generated and the result is correct now.  This bug can be closed.

@denhsu the reports may be correct, but the VSTS output is not, this is what I am still seeing:

Not all alerts are a result of active scanning. The 5 lows could be passive results and therefore not show in the active summary.

I'm seeing the same behavior.
The Active scan result results observed in the logs are all zero when the report type is markdown (the markdown report shows counts greater than zero) if the report is HTML the counters on the logs are the same ones as in the report.

I'm having the same issue: