PHP 8 not supported

Currently not working because laminas/laminas-validator does not support PHP 8:
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - alextartan/guzzle-psr18-adapter[4.0.0, ..., 4.0.3] require alextartan/helpers ^2 -> satisfiable by alextartan/helpers[2.0.0, ..., 2.1.4].
    - alextartan/helpers[2.1.2, ..., 2.1.4] require laminas/laminas-validator ^2.10 -> satisfiable by laminas/laminas-validator[2.10.0, ..., 2.14.x-dev].
    - laminas/laminas-validator[2.13.0, ..., 2.14.x-dev] require php ^7.1 -> your php version (8.0.0) does not satisfy that requirement.
    - laminas/laminas-validator[2.10.0, ..., 2.12.2] require php ^5.6 || ^7.0 -> your php version (8.0.0) does not satisfy that requirement.
    - alextartan/helpers[2.0.0, ..., 2.1.1] require php ^7.4 -> your php version (8.0.0) does not satisfy that requirement.
    - Root composer.json requires alextartan/guzzle-psr18-adapter ^4.0 -> satisfiable by alextartan/guzzle-psr18-adapter[4.0.0, 4.0.1, 4.0.2, 4.0.3].

Tried updating laminas/laminas-validator (https://github.com/laminas/laminas-validator/pull/79), but it depends on yet another not-PHP8-ready package laminas/laminas-cache, which has a quite complex work-in-progress PR (https://github.com/laminas/laminas-cache/pull/48), so I guess we just have to wait.

Thanks for pointing that out! Turned out to be an unnecessary dependency on my helpers package.
Pushed a fix in 4.0.4

Thanks for pointing that out! Turned out to be an unnecessary dependency on my helpers package.
Pushed a fix in 4.0.4


Codeunit 1279 GenerateHash() Hex InputString

Codeunit 1279 GenerateHash() hast an InputString and returns a hexadecimal string.
If the input string is a "normal" string hashes are calculated correctly.
If the input string is a hexadecimal value stored in a string variable hashes are not calculated correctly.
Example: see https://github.com/microsoft/ALAppExtensions/issues/17137

Hi @BjEic
I have investigated your problem with this, and you need to use the Base64 versions of the module.
Take a look at how the test is written, as it follows the same example as you are referring to.
https://github.com/microsoft/ALAppExtensions/blob/main/Modules/System Tests/Cryptography Management/src/GenerateBase64KeyedHashTest.Codeunit.al
If you try and run this test, and convert the base64 back to the hex format used in your example, you will see that the values from each call is correct.

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: .


QuickLook Feature

QuickLook Feature will help to see text files/code files, photos, videos more quickly.
When we select on any files and click (ex. Space) then it will open in a new window, in that we can see our files just like mac have.
the same feature is also available in the Microsoft store named QuickLook and it is working perfectly but it will be more helpful if we can add this in PowerToys.

Duplicate of #80


License?

I noticed that the primary d2b project is licensed under the BSD 3-clause, but noticed this repo has no licensing information.  Is it safe to assume that you mean to have this vue wrapper licensed in the same manor? Is that something that could be added to this package?

Good call, added it here: 3476b94
Thanks!


use os.environ.get instead of os.environ[] for CUDA_VISIBLE_DEVICES

Codecov Report

Merging #44 (c0af623) into main (dda5a4a) will increase coverage by 0.04%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #44      +/-   ##
==========================================
+ Coverage   71.60%   71.64%   +0.04%
==========================================
  Files          71       71
  Lines        4779     4786       +7
  Branches     1042     1045       +3
==========================================
+ Hits         3422     3429       +7
  Misses       1037     1037
  Partials      320      320

Flag
Coverage Δ

unittests
71.62% <ø> (+0.04%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

meddlr/transforms/tf_scheduler.py
76.50% <0.00%> (-1.10%)
:arrow_down:

meddlr/evaluation/testing.py
60.15% <0.00%> (+3.95%)
:arrow_up:

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 dda5a4a...c0af623. Read the comment docs.


fix(cmd): Executable should be in package main

fix(cmd): Executable should be in package main
When re-organizing the directories, we renamed the package of the main binary from main to kleat. While all importable packages need to be in a directory with the same name of the package, the entrypoint of the program must be a function main in a package main.
the executable anymore as go programs mus

core(core): Bump dependencies
Ran 'go get -u ./...' and committed the change. The protobuf bump did not cause any change in generated code as checked by make proto.

It took me longer than I'd like to admit to figure out why go install was a no-op...because there was no longer a top-level executable.  Also bumped the dependencies while I was at it.


REF:  Make TorchTrainer use generics

To allow proper type checking for epochalyst using mypy, the trorch trainer should be made compatible with using types like XData and YData, that are specified per competition. This can be done with TypeVars and Generics.

Depends on https://github.com/TeamEpochGithub/agogos/issues/87


Add T/DM support to a few more maps

Add deathmatch support/spawnpoints to Tuscany, Tunnel Tipper, Neon District (parkour and tac trial), Container Yard, and Mirror.

Didn't see this, I'll merge it


raidboss/oopsy: add Euphrosyne

still a work in progress

Nophica: Heavens' Earth (7C22 on boss, 7C23 on targeted players) - three tankbuster aoes, one on each party

Definitely a lot of TODOs still.  The timing on the tetrapagos was bad so I removed that until I can run and test again (it could probably be worded better too).  Hydrostasis also has bad positions the second time around and so probably needs getCombatants.  Also, collecting all the Menphina ids is still a work in progress, and maybe once we have them it'll be easier to do something about all the half room cleaves.


bug: term_normal double-escape mapping always sends first escape to terminal

Did you check docs and existing issues?

[X] I have read all the snacks.nvim docs
[X] I have updated the plugin to the latest version before submitting this issue
[X] I have searched the existing issues of snacks.nvim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
NVIM v0.10.2
Operating system/version
Arch Linux (kernel 6.11.9)
Describe the bug
When using snacks.terminal, the double-escape mapping set in term_normal always sends the first escape to the terminal, even if <esc> is pressed soon after. I could not find in the docs if this was the expected behavior, but it differs from what happens when using <C-\><C-n> directly.
For programs that send text directly to the terminal (e.g. vim-slime), this can cause problem if the terminal (or IPython session) is in vi-mode: the shell is in normal mode when you exit, so the first character is interpreted as a vi command by the terminal and therefore not set as an input.
Steps To Reproduce

Use a terminal or IPython session in vi-mode
Press escape twice
The first escape is sent to the shell, and the shell goes in normal mode

Expected Behavior
I would have expected the default behavior to be the same as <C-\><C-n>, since I could not find a mention of this behavior in the docs.
This behavior can be modified on the user's side by settings term_normal = false, and then using a mapping such as vim.keymap.set("t", "<esc><esc>", "<c-\\><c-n>", { desc = "Enter Normal Mode" }) for terminals.
Repro
vim.env.LAZY_STDPATH = ".repro"
load(vim.fn.system("curl -s https://raw.githubusercontent.com/folke/lazy.nvim/main/bootstrap.lua"))()

require("lazy.minit").repro({
  spec = {
    {
      "folke/snacks.nvim",
      opts = {},
      keys = {
        { "<c-/>",      function() Snacks.terminal() end, desc = "Toggle Terminal" },
      },
    },
    -- add any other plugins here
  },
})

That's how it works. There's no way around it apart from always waiting till ttimeoutlen, which I personally don't like.
You can change it in your own config if you don't like it.

I have found this to work better and it does not send the first escape to the terminal.
    terminal = {
      win = {
        keys = {
          term_normal = {
            "<esc><esc>",
            function()
              return "<C-\\><C-n>"
            end,
            mode = "t",
            expr = true,
            desc = "Double escape to normal mode",
          },
          q = "hide",
          ["<esc>"] = "hide",
        },
      },


Notify restart command does not work

Cookbook version
2.3.1
Chef-client version
chef-client version: 12.11.18
Platform Details
CentOS 6.7
Scenario:
Restarting the service with a notifies command
Steps to Reproduce:
I made my code similar to your own test/helloworld recipe.
tomcat_service 'tomcat_service' do
  action [:enable, :start]
  tomcat_user 'user'
  tomcat_group 'user'
end

template 'name' do
  source 'filename'
  notifies :restart, 'tomcat_service', :immediately
end

Expected Result:
Service should restart.
Actual Result:
The string tomcat_service' is not valid for resource collection lookup. Correct syntax is resource_type[resource_name]'

Hmmm @ilovemysillybanana, that doesn't look quite right...
Can you try service[tomcat_service], instead of just tomcat_service in the notifies block?
i.e.
template 'name' do
  source 'filename'
  notifies :restart, 'service[tomcat_service]', :immediately
end

@gsaslis Is correct. You need to notify tomcat_service not service. That should fix this


Dashboard rotation does not adhere rotationDuration config value

Dashboard rotation is hardcoded to 4000ms:
https://github.com/plouc/mozaik/blob/extensibility/src/browser/stores/DashboardStore.js#L19
Whereas mozaik-demo hints about the config value:
https://github.com/plouc/mozaik-demo/blob/master/config.js#L33

Fixed with https://github.com/plouc/mozaik/commit/778b36457063d27246f063b1ce7a83c0e11d8c2d

Thanks for the quick turnaround!


fix: Datasource-Organization: Fix data type issues.

No matter what I tried, I always ran into errors when usind the org datasource. E.g.
data.equinix_metal_organization.org: Reading...
╷
│ Error: Value Conversion Error
│
│   with data.equinix_metal_organization.org,
│   on tmp.tf line 1, in data "equinix_metal_organization" "org":
│    1: data "equinix_metal_organization" "org" {
│
│ An unexpected error was encountered while verifying an attribute value
│ matched its expected type to prevent unexpected behavior or panics. This is
│ always an error in the provider. Please report the following to the
│ provider developer:
│
│ Expected framework type from provider logic: basetypes.StringType /
│ underlying type: tftypes.String
│ Received framework type from provider logic: types.ListType[!!! MISSING
│ TYPE !!!] / underlying type: tftypes.List[tftypes.DynamicPseudoType]
│ Path: project_ids[0]

I looked into "similar" code and noticed that there is something different when compared to the project data source. Therefore I have no idea, if this would fix things, but maybe someone of you can have a look and do a quick test if the org datasource is even working :)
Signed-off-by: Tim Beermann<EMAIL_ADDRESS>

Additional info: This is the code I used in a quick test:
data "equinix_metal_organization" "org" {
  name = "tibeer"
}

output "name" {
  value = data.equinix_metal_organization.org.organization_id
}

Never mind.


Create platform metadata formats

I'm closing this as it seems like there's no need to go through this process to edit the wiki. I've created the page directly at https://github.com/thoth-pub/thoth/wiki/Platform-Metadata-Formats


Typo in Desktop Logs location and name

Typo in second paragraph of this section https://docs.microsoft.com/en-us/microsoftteams/log-files#collect-and-enable-logging
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 97d5e6d3-b7e0-d79f-0dea-ed423186a157
Version Independent ID: ec6e68aa-552f-ab45-3c8e-92eff526b173
Content: Use log files in troubleshooting Microsoft Teams - Microsoft Teams
Content Source: Teams/log-files.md
Service: msteams
GitHub Login: @CarolynRowe
Microsoft Alias: crowe

Thanks for your feedback!


Changed upgradeBehavior to uninstallPrevious for previous Inkscape versions

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

The latest inkscape installer manifest was updated with upgradeBehavior: uninstallPrevious, I've updated the manifests of the older versions with the same.
Microsoft Reviewers: Open in CodeFlow

Only one package per PR.

Oh, I'm Sorry Ma'am.
I'll take care from next time


Can Chinese be added?

Can the author add Chinese?

Since the last MySpeed update, many languages have been added to the projects Crowdin (our translation service). Chinese is also one of them.
The next update (1.0.9) will definitely support Chinese, I just need to implement a better UI for the language changing dialog.


Using ESP32 as a publisher , PubSub timesout/doesnt publish after about 20 seconds of inactivity?

I'm making a basic door sensor using ESP32 (Wemos) attached to a MQTT (Mosquitto) running on raspberry pi. Everything is working as expected ,when the door opens a message is sent with the door state, then when the door closes another message with the new state. Except for when the door (sensor) stays open for longer than 20s , for some reason it doesn't issue the SendMQTT_message (code here)
https://github.com/acbrandao/arduino_projects/blob/master/esp32_mqtt_door/esp32_mqtt_door.ino
issue is around line line#260.
The issue is if the signal is sent after 20seocnds, nothing happens, I can see the code being executed on the Serial monitor of the ESP32 but no message appears to be received on MQTT broker.. strange, I checked and set the KEEPALIVE to 45 secs from PUbSub , but no effect, is there another setting?

Hi, the problem is in this loop:
https://github.com/acbrandao/arduino_projects/blob/aa1c83fffcc20f5514dbd1f81f9b3fd3ae760360/esp32_mqtt_door/esp32_mqtt_door.ino#L239-L249
You need to add a call to client.loop() in there so the MQTT client is able to process its keepalive handling. If that loop blocks and prevents client.loop from being called, the client will timeout the connection.

Thanks I'll give that a try, that should resolve the issue, but I'm confused shouldn't the MAX_KEEPALIVE #define supersede the need to put a polling loop construct ?, please forgive my ignorance.  If that's not the case than what role does the #define MAX_KEEPALIVE 15 serve?

If you're using the arduino IDE to build the sketch, you cannot redefined MQTT_KEEPALIVE in your own script - you have to edit it in PubSubClient.h.


Rule UP040 incorrect fix when TypeVar is used multiple times

Initial code
This is code in stub file decorators.pyi:
import logging
from collections.abc import Callable
from typing import TypeAlias, TypeVar

_BaseFun = TypeVar('_BaseFun', bound=Callable)
_Decorator: TypeAlias = Callable[[_BaseFun], _BaseFun]

def logCurrentTask(
    *, logger: logging.Logger | None = None, msg: str = ''
) -> _Decorator: ...

Ruff command
After running ruff with command:
ruff check ./decorators.pyi --isolated --select UP040 --target-version py312 --fix

TypeVar is replaced to generic type alias.
Code after fix
The code after change is:
import logging
from collections.abc import Callable
from typing import TypeAlias, TypeVar

_BaseFun = TypeVar('_BaseFun', bound=Callable)
type _Decorator[_BaseFun: Callable, _BaseFun: Callable] = Callable[[_BaseFun], _BaseFun]

def logCurrentTask(
    *, logger: logging.Logger | None = None, msg: str = ''
) -> _Decorator: ...

What is wrong
Type alias _Decorator has two declarations with same name _BaseFun which is incorrect syntax.
The PEP 695 states:

Type parameter names within a generic class, function, or type alias must be unique within that same class, function, or type alias

Possible fix
Need to check for duplicates.
Ruff version
ruff --version

ruff 0.2.1
Additional thinking
Not required to this issue, but it may be worth to notify user about remaining, old TypeVar or even remove it when rule UP040 is applying.
Although the variable is not used anymore, it remains in code, possibly unnoticed (I assume that currently only stubs are processed for this rule, but in future it may change).
The old object remains in global scope, which is not detected by most linters/type checkers.

Interesting, thank you for the clear issue! We can fix this.

Put up a PR to fix here: https://github.com/astral-sh/ruff/pull/9905


sync our database with braintree

Closes #3287. Braintree has received data from Balanced. Now we need to knit the customer records in Braintree with our participants table.

I'm seeing a handful of cases where an absorbed account has a balanced_customer_href, and the account that absorbed it has the same one.

I also see the seven customers that Braintree knows about that we don't.

We want a clean slate with Braintree going forward. We want exactly one Braintree customer per open account. I'm not sure yet about how cards should sync up.

We want exactly one Braintree customer per open account.

That's something I can handle next week as cleanup. As of now, we should be focusing on linking whatever braintree_customer_ids we have for people with valid cards.

One case where I see us having two braintree customers for one open account is https://github.com/gratipay/gratipay.com/pull/3473#discussion_r31285429. It's safe to delete the 'migrated' customer.

I'm seeing a number of closed and a few suspicious accounts with a balanced_customer_href that matches customer_id in the Braintree import log.

We've missed the bank payout deadline for today. We have so few users and everything is so disrupted, we can probably get away with slipping a few payouts until Monday. :-(
Let's land Braintree!

I also want to see which cards are status: removed at Balanced. :-(

It would be Bad(tm) if we started charging users on cards that they had disconnected. Kind of a wtf to even have those in the export, or at least not being invalidated at Braintree, if indeed that is what is happening.

Results using 8c34500fadb437fd89aae22b265579f935885c31 with the import log and the production database:

status
participants

ready
4,201

already migrated
9

closed
247

suspicious
55

archived
48

failed
0

total
4,567

So now for each card_id in the ready set, we want to find out the status of that card on Balanced.

I'm not seeing status in the Balanced API, either the docs or live.

The closest I'm seeing is can_{credit,debit}.

Aren't cards deleted entirely when we call unstore on them?

	status: function() {
		return this.get('can_debit') ? 'active' : 'removed';
	}.property('can_debit')

src

Aren't cards deleted entirely when we call unstore on them?

Is unstore a Balanced or Braintree API? I don't remember it from Balanced.

Spot-checking, I'm seeing a card that is "status: removed" at Balanced that is merely "Expired" at Braintree. :open_mouth:

https://dashboard.balancedpayments.com/#/marketplaces/MP12Xw5lL6iaILtqImIoroDL/cards/CC9ZBPfVyWiXwRNKrwSaO4m

https://www.braintreegateway.com/merchants/msjyyvtsvvnc4ny6/payment_methods/any/CC9ZBPfVyWiXwRNKrwSaO4m

Is unstore a Balanced or Braintree API? I don't remember it from Balanced.

https://github.com/gratipay/gratipay.com/blob/master/gratipay/models/exchange_route.py#L81

Okay. What do the docs say for it? I'm finding a bunch of removed cards, results forthcoming ...

Okay, this is effed up. Check out these (anonymized) screenshots from Balanced and Braintree. The removed card at Balanced is the default card at Braintree. The warning indicator at Braintree is simply because it expires next month. All indicators are that I could charge that card right now if I wanted to. O.O

Script still churning, 403 removed cards so far ...

:confused:
Should we run this through Braintree support, or handle it manually?

@rohitpaulk We have to handle it manually if we're going to run payday tonight. :(

Hmm, true. Our paydays are getting more eventful by the week :boom:

Yeah, and we're not through yet. :hatching_chick:

Okay! Where are we? I'm back with food, probably good for another ~3 hours at least.

@rohitpaulk I expect you'll have to tap out soon, get some :zzz:?

I'm good for around 2 hours. :)

Results of 631d8cdee6c51a1640705589e7e2d2fd53a1fb6e with output of https://github.com/gratipay/gratipay.com/pull/3473#issuecomment-106631148: 657 removed cards.

I think the hypothesis at https://github.com/gratipay/gratipay.com/issues/3391#issuecomment-104424101 may be true, that Balanced included invalidated cards in the export to Braintree but not to us.

For example, for whit537, I see 27 cards at Balanced (all removed), and 26 at Braintree. A seemingly arbitrary card is default Braintree.

For example, for whit537, I see 27 cards at Balanced (all removed), and 27 at Braintree. A seemingly arbitrary card is default Braintree:
https://dashboard.balancedpayments.com/#/marketplaces/MP12Xw5lL6iaILtqImIoroDL/customers/AC4s77PqpGjIP9C9C6SJlJ6u
https://www.braintreegateway.com/merchants/msjyyvtsvvnc4ny6/customers/AC4s77PqpGjIP9C9C6SJlJ6u

I find exactly one row for whit537 in the https://github.com/gratipay/gratipay.com/pull/3473#issuecomment-106631148 output. It's a removed card, also included in https://github.com/gratipay/gratipay.com/pull/3473#issuecomment-106647951.
Now, the import log does include two different kinds of records: customers and cards. The customer rows have a card field, and that's what https://github.com/gratipay/gratipay.com/pull/3473#issuecomment-106631148 looks at; it ignores the dedicated card rows. Presumably the card rows contain all of the other (invalidated) cards?

Yeah, the "export for stripe" I have from Balanced includes two rows for https://www.braintreegateway.com/merchants/msjyyvtsvvnc4ny6/customers/AC5cegJ2OFccgexg1I4iwYYU, but the funding_instrument_guid is only present for the non-removed card; it's empty in the second row.

I just deleted one of my 27 cards at Braintree. Now I have 26. Simple as that, it would appear.
https://developers.braintreepayments.com/javascript+python/reference/request/payment-method/delete

Do we want to call this API for all remove cards?
https://developers.braintreepayments.com/javascript+python/reference/request/payment-method/delete

Do we want to call this API for all remove cards?

Yep, makes sense.

Yeah, the "export for stripe" I have from Balanced includes two rows for [...]

However, it includes multiple cards for me, which of course are all removed.

I lied. It has three entries for me, a credit card, a bank account, and a customer:
,AC4s77PqpGjIP9C9C6SJlJ6u,,,CC5Gy43LFmCBXBQ7IS3I2Tm2,
,AC4s77PqpGjIP9C9C6SJlJ6u,,,BA1RZX9aubiSyqnCKjlniA9I,
,AC4s77PqpGjIP9C9C6SJlJ6u,,,,

Interestingly, I remove the credit after taking the "export for stripe" a couple weeks ago. I've started a new export. I hypothesize that the CC5Gy43LFmCBXBQ7IS3I2Tm2 card will no longer be present. Instead, I will have only two entries, one for the bank account and one for the customer.

Yesssssssssss.
,AC4s77PqpGjIP9C9C6SJlJ6u,,,BA1RZX9aubiSyqnCKjlniA9I,
,AC4s77PqpGjIP9C9C6SJlJ6u,,,,

Alright! So this export-for-stripe gives us the correct mapping of customer_id to card_id.
I reviewed the Technical Migration Guide and didn't notice anything super-relevant.

Alright! So this export-for-stripe gives us the correct mapping of customer_id to card_id.

We still need to remove all the invalidated (balanced) cards from Braintree. And once we've done that, we won't need the 'correct mapping', coz that'll correspond to the only card(s) left, correct?

@rohitpaulk Well, I'm thinking that we should iterate over all cards at Braintree and delete the ones that aren't in the export-for-stripe, because https://github.com/gratipay/gratipay.com/pull/3473#issuecomment-106647951 only looked at cards that were mentioned in a customer row in the import log, ignoring cards mentioned in a card row.

The new export-for-stripe I just took removes a handful of payment methods, without adding any. Is that consistent with our vaulting changes, @rohitpaulk? We're not storing any new cards at Balanced anymore, are we?

We don't want to clobber cards that have been newly added to Braintree.

We're not storing any new cards at Balanced anymore, are we?

No, we're not.

We don't want to clobber cards that have been newly added to Braintree.

Yes, the check in the script should ensure that.

Well, I'm thinking that we should iterate over all cards at Braintree and delete the ones that aren't in the export-for-stripe

All cards? Or only the ones in the import log? If it's all cards, we're going to lose the new cards added.

I somehow feel that we should use the real sources of truth, and not the export-for-stripe.

Iterate over all the removed cards on Balanced, and if they exist on Braintree, delete them.
Then iterate over the braintree customers from the import log, but instead of using the card_id from there, pick it off of braintree's API. (customer.cards[0])

@whit537 - How sure are we about export-for-stripe only containing valid cards, and that it contains all valid cards?

API calls are way more expensive than reading local CSVs. :-/

threaded_map :smiley:

As long as we don't run on DO. :P

Some pseudocode:
for card in all_cards_in_braintree:
    if card.customer is unknown:
        if there_is_another_way_to connect_back_to_a_participant:
            connect_back_to_a_participant()
        else:
            continue
    if card.removed_at_balanced:
        card.delete()
    if card.customer.has_other_card_at_braintree:
        continue

I think we should iterate over a fresh Customers & Payment Methods export from Braintree.

:+1:

0cc4896ecb8eeedee117e70f0f93aa9131b077ad ran in ~11 minutes on my laptop.

Results of https://github.com/gratipay/gratipay.com/commit/9b39bffee047abf75cbe2a399fdd9c3c0e740b68 on a Braintree export from two weeks ago:

status
cards

ready to sync
3,619

removed at Balanced
1,649

orphaned
327

closed
172

suspicious
46

archived
41

migrated themselves
9

unknown
2

total
5,865

My next steps are to run the script with a fresh export from Braintree, and then uncomment the live parts, test it against on or two records, then let it loose.

Running b34b3b695354ef5be1fecdb0abfb018231ab1447 on a fresh export ...

Alright! Once this is done, it's time to run for real. O.O

:athletic_shoe:

Results of b34b3b6 on a fresh export:

status
cards

synced
3,619

deleted
2,245

total
5,864

Okay! Balanced hasn't exported any more cards, we have't created any with a CC prefix, and we've only deleted once card: https://github.com/gratipay/gratipay.com/pull/3473#issuecomment-106652192. <:-)

I fiddled with the script to exit after a single delete. It appears to have worked!

I just satisfied myself that the get_participant_by_card_id sql does work.

:rocket:

:eyes:

I'm testing a single sync. Then I'm ready to run it for real!

Okay! I'm seeing participant_id set properly at Braintree, and the braintree_customer_id and exchange route in Gratipay. Ready for lift off ...

Last chance for review ...

/me waits for Travis on principle ...

I'm expecting this script to run for 15 or 20 minutes, since there's more network traffic with the additional API and database calls.

Okay! :vertical_traffic_light:

Script started.

Traceback (most recent call last):
  File "/Users/whit537/personal/gratipay/gratipay.com/gratipay/billing/payday.py", line 44, in g
    return func(*a, **kw)
  File "bin/sync-with-braintree.py", line 120, in process_record
    braintree.PaymentMethod.delete(card_id)
  File "/Users/whit537/personal/gratipay/gratipay.com/env/lib/python2.7/site-packages/braintree/payment_method
    return Configuration.gateway().payment_method.delete(payment_method_token)
  File "/Users/whit537/personal/gratipay/gratipay.com/env/lib/python2.7/site-packages/braintree/payment_method
    self.config.http().delete("/payment_methods/any/" + payment_method_token)
  File "/Users/whit537/personal/gratipay/gratipay.com/env/lib/python2.7/site-packages/braintree/util/http.py",
    return self.__http_do("DELETE", path)
  File "/Users/whit537/personal/gratipay/gratipay.com/env/lib/python2.7/site-packages/braintree/util/http.py",
    Http.raise_exception_from_status(status)
  File "/Users/whit537/personal/gratipay/gratipay.com/env/lib/python2.7/site-packages/braintree/util/http.py",
    raise NotFoundError()
NotFoundError

Hmm, only delete if the card exists? We'll also have to patch up all the other inserts/deletes to not repeat themselves if this wasn't the first record or so.

@rohitpaulk There was only one sync but a few deletes. Fortunately deletes are easier to work around.

Script restarted ...

At the end of this script, whit537 should have 0 cards attached at Braintree, though the customer should still exist.

Down from 26 to 12 so far. :-)

:haircut:

2 left!

Okaaaaaay, more than 20 minutes. :clock230:

No more :credit_card: for whit537.

real    25m32.430s
user    5m18.790s
sys     0m33.644s

So now a Customers & Payment Methods export from Braintree should have 3,619 records, right?

Sigh. 3,618. :-/
Oh well, close enough!
!m @rohitpaulk

!m @whit537

Log uploaded in https://github.com/gratipay/logs/commit/b9860556d64c5b8980494267456e8efc8478e451.


MappableLib with private libraries wrong casing

If you use MappableLib with private library (e.g. _models), name of generated container will be in PascalCase.

Thanks for reporting.

Fixed in v2.0.3


M02-Unit 3

Module: M02-Unit 3
Lab/Demo: 00
Task: 03
Step: 3
Description of issue: Incorrect IP address mentioned for Subnet ManufacturingSystemSubnet (<IP_ADDRESS>/24)
Please change it to <IP_ADDRESS>/24

MOC Labs Review confirms this issue and has submitted PR #55


SUM(CASE) OVER (PARTITION) returning bogus results

Gem noted apparent inconsistencies in their preview which uses the LAG() function, and I'm able to reproduce this with the same dataset as in https://github.com/fentik/flink/issues/21
the full query is
WITH internal_work_info_within_window AS
  (SELECT work_info.person_id,
          work_info.start_date,
          work_info.end_date,
          work_info.company,
          ((work_info.company = (LAG(work_info.company) OVER (PARTITION BY work_info.person_id
                                                                      ORDER BY work_info.start_date DESC)))
           AND (ABS((work_info.end_date - (LAG(work_info.start_date) OVER (PARTITION BY work_info.person_id
                                                                                ORDER BY work_info.start_date DESC)))) < (((31 * 24) * 60) * 60))) AS is_within_window
   FROM work_info5 AS work_info
   WHERE (((work_info.start_date <> 0)
           AND (work_info.company IS NOT NULL))
          AND (work_info.person_id = 1)))
  (SELECT internal_work_info_within_window.person_id,
          internal_work_info_within_window.start_date,
          internal_work_info_within_window.end_date,
          internal_work_info_within_window.company,
          internal_work_info_within_window.is_within_window,
          (SUM((CASE
                    WHEN (internal_work_info_within_window.is_within_window = FALSE) THEN 1
                    ELSE 0
                END)) OVER (PARTITION BY internal_work_info_within_window.person_id
                            ORDER BY internal_work_info_within_window.start_date DESC)) AS group_id
   FROM internal_work_info_within_window AS internal_work_info_within_window)

and the mismatch looks like:
stream.flink.test.compare_dbs.ResultMismatchError: postgres 2 unique rows:
1,<PHONE_NUMBER>,<PHONE_NUMBER>, UniCorp, FALSE, 1
1,<PHONE_NUMBER>,<PHONE_NUMBER>, DuoCorp, <NULL>, 0
dataflo 3 unique rows:
1,<PHONE_NUMBER>,<PHONE_NUMBER>, UniCorp, FALSE, 2
1,<PHONE_NUMBER>,<PHONE_NUMBER>, UniCorp, FALSE, 2
1,<PHONE_NUMBER>,<PHONE_NUMBER>, DuoCorp, <NULL>, 2
postgres 4 results, dataflo 5

I've been able to reduce the complexity of the query by eliminating the first over aggregate and just returning false in the CTE:
WITH `internal_work_info_within_window` AS
  (SELECT `work_info`.`person_id`,
          `work_info`.`start_date`,
        --`work_info`.`end_date`,
        --`work_info`.`company`,
        --((`work_info`.`company` = (LAG(`work_info`.`company`) OVER (PARTITION BY `work_info`.`person_id`
        --                                                              ORDER BY `work_info`.`start_date` DESC)))
        --   AND (ABS((`work_info`.`end_date` - (LAG(`work_info`.`start_date`) OVER (PARTITION BY `work_info`.`person_id`
        --                                                                           ORDER BY `work_info`.`start_date` DESC)))) < (((31 * 24) * 60) * 60)))
           false AS `is_within_window`
   FROM `work_info5` AS `work_info`
   WHERE ((--(`work_info`.`start_date` <> 0)
           --AND (`work_info`.`company` IS NOT NULL))
           --AND
           (`work_info`.`person_id` = 1)))
  )

  (SELECT `internal_work_info_within_window`.`person_id`,
          `internal_work_info_within_window`.`start_date`,
          --`internal_work_info_within_window`.`end_date`,
          --`internal_work_info_within_window`.`company`,
          `internal_work_info_within_window`.`is_within_window`,
          (SUM((CASE
                    WHEN (`internal_work_info_within_window`.`is_within_window` = FALSE) THEN 1
                    ELSE 0
                END)) OVER (PARTITION BY `internal_work_info_within_window`.`person_id`
                            ORDER BY `internal_work_info_within_window`.`start_date` DESC)) AS `group_id`
   FROM `internal_work_info_within_window` AS `internal_work_info_within_window`)

this yields failure:
stream.flink.test.compare_dbs.ResultMismatchError: postgres 3 unique rows:
1,<PHONE_NUMBER>, FALSE, 3
1,<PHONE_NUMBER>, FALSE, 2
1,<PHONE_NUMBER>, FALSE, 1
dataflo 3 unique rows:
1,<PHONE_NUMBER>, FALSE, 4
1,<PHONE_NUMBER>, FALSE, 4
1,<PHONE_NUMBER>, FALSE, 4
postgres 4 results, dataflo 4

The fundamental issue is that I'm not handling the default for the frame_clause of the OVER statement properly in the SUM() formulation.
I'm assuming default frame_clause as ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING while postgres and snowflake (and presumably the SQL spec) assumes ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW.
I don't even have logic to handle anything other than the unbounded to unbounded frame case. :/
   SELECT work_info.person_id,
          work_info.start_date,
          SUM(1) OVER (PARTITION BY person_id ORDER BY start_date DESC) AS group_id
   FROM work_info5 AS work_info
   WHERE work_info.person_id = 1

 person_id | start_date | group_id
-----------+------------+----------
         1 |<PHONE_NUMBER> |        1
         1 |<PHONE_NUMBER> |        2
         1 |<PHONE_NUMBER> |        3
         1 |<PHONE_NUMBER> |        4
(4 rows)

   SELECT work_info.person_id,
          work_info.start_date,
          SUM(1) OVER (PARTITION BY person_id ORDER BY start_date DESC ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) AS group_id
   FROM work_info5 AS work_info
   WHERE work_info.person_id = 1

 person_id | start_date | group_id
-----------+------------+----------
         1 |<PHONE_NUMBER> |        4
         1 |<PHONE_NUMBER> |        4
         1 |<PHONE_NUMBER> |        4
         1 |<PHONE_NUMBER> |        4
(4 rows)

Where as postgres and snowflake default to the following:
   SELECT work_info.person_id,
          work_info.start_date,
          SUM(1) OVER (PARTITION BY person_id ORDER BY start_date DESC ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS group_id
   FROM work_info5 AS work_info
   WHERE work_info.person_id = 1

 person_id | start_date | is_within_window | group_id
-----------+------------+------------------+----------
         1 |<PHONE_NUMBER> | f                |        1
         1 |<PHONE_NUMBER> | f                |        2
         1 |<PHONE_NUMBER> | f                |        3
         1 |<PHONE_NUMBER> | f                |        4
(4 rows)


Add parsing prefix for delete command IN PROGRESS(v1.3)

          The current idea I have in mind is adding prefixes. For example, the command is able to parse all the prefixes and the user have to supply a minimum of 1 prefix and value such as delete i/[index].

When the user write delete n/John a/nus lmao, it will narrow the delete and I think this prefix mechanism can be extended further for batch delete and such.
Originally posted by @MinkhantEain in https://github.com/AY2425S1-CS2103T-W13-1/tp/pull/63#discussion_r1795655214

Revert back to delete by index only.


[FEATURE] Set performance-analyzer-commons 2.0.0 baseline JDK version to JDK-21

Is your feature request related to a problem? Please describe
Set performance-analyzer-commons 2.0.0 baseline JDK version to JDK-21
Describe the solution you'd like
See please https://github.com/opensearch-project/OpenSearch/issues/10745
Related component
Build
Describe alternatives you've considered
N/A
Additional context
See please https://github.com/opensearch-project/OpenSearch/issues/14011

[Catch All Triage - Attendees 1, 2, 3, 4, 5]


Chore: make dex changes backwards compatible

This PR aims to make changes made in https://github.com/neutron-org/neutron/pull/394 and https://github.com/neutron-org/neutron/pull/401 backwards compatible.
What exactly the PR does:

in case of https://github.com/neutron-org/neutron/pull/394 it introduces two deprecated HTTP endpoints to keep old endpoints working;
in case of https://github.com/neutron-org/neutron/pull/401 it basically reverts the change cause the change breaks backwards compatibility in case of Stargate queries where we can't just change field name in response. And since we are moving from Stargate to gRPC queries, we are gonna do the final renaming in a release where we completely remove Stargate from Neutron.

Related PRs:

https://github.com/neutron-org/neutron-sdk/pull/142
https://github.com/neutron-org/neutron-dev-contracts/pull/49

https://github.com/neutron-org/neutron-tests/actions/runs/8989515426


Handle src attributes differently to all others

Fix for #81 was a fix for strings that had already been serialized via outerHTML, but caused unserialized url strings to break.
Specificially for the #81 issue, the user was finding that src values with querystrings were broken as & got escaped to & by outerHTML from the third-party script.
While the fix for this specific case was to use innerHTML and then look at the textContent or innerText, for strings that haven't been already serialized (by outerHTML) innerHTML causes sequences like &para to get escaped to the paragraph symbol.  If a querystring for a script's src value contains &param=something then this sequence gets converted to ¶m=something and the external script doesn't get all the data it needs - it just breaks.
This PR singles out the src attribute and handles them differently.  The &#nnnn; entity replacement is reinstated, & gets converted to just &, and the string is uri-encoded.  No other conversions should be carried out on URLs.  The unescapeHTMLEntities is still in place for other attributes (though I am not sure what would require it).

This breaks valid URLs that contain already escaped characters. Example:
http://www.url.com/test?param1=a%25b%25c&param2=a%25b%25c will become
http://www.url.com/test?param1=a%2525b%2525c&param2=a%2525b%2525c, which is a different URL. Please update your code to handle these cases accordingly. :)

We believe this is fixed in 2.0.0. Please retest against 2.0.0 release and open a new issue following Issue Reporting guidelines in 2.0.0 if you believe this is still an issue.


v0.2.9 merge from private/master

 You should sign our Contributor License Agreement in order to get your pull request merged.


[build] add github-cli change pipeline

Proposed changes
Add Steps

Install Nodejs
Run build.sh

Checklist(Required)

Does it affect the original behavior: (No)
Has unit tests been added: (No)
Has document been added or modified: (No)
Does it need to update dependencies: (No)
Are there any changes that cannot be rolled back: (No)

The Commit has been merged in the previous Pull Request #15


Support multiple monitors

Feature request
We would like to support multiple monitors.
User @Alphadev on Discord reports no screenshots in python -m openadapt.visualize on https://github.com/OpenAdaptAI/OpenAdapt/pull/763:

This involves identifying where support needs to be added. e.g.:

https://github.com/OpenAdaptAI/OpenAdapt/blob/835bb171bc89bccf67397515ff5eb0b257c528bd/openadapt/utils.py#L421

Motivation
https://github.com/OpenAdaptAI/OpenAdapt/issues/583
We would like to support configurations as similar as possible to a typical office worker's machine.

/bounty $100

/attempt #766 I will alter the method to support multiple monitors of different width and heights.

Please note this involves:

Running python -m openadapt.visualize and taking some screenshots of the visualization containing more than one monitor, and submitting these with your PR
Implement one or more tests

@abrichr can you help with the below error:
(.venv) gitpod /workspace/OpenAdapt (main) $ python -m openadapt.record "testing out openadapt"
Traceback (most recent call last):
  File "/home/gitpod/.pyenv/versions/3.10.12/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/gitpod/.pyenv/versions/3.10.12/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/workspace/OpenAdapt/openadapt/record.py", line 28, in <module>
    from openadapt.models import Recording
  File "/workspace/OpenAdapt/openadapt/models.py", line 16, in <module>
    from openadapt import window
  File "/workspace/OpenAdapt/openadapt/window/__init__.py", line 17, in <module>
    from . import _windows as impl
  File "/workspace/OpenAdapt/openadapt/window/_windows.py", line 55, in <module>
    active_window: pywinauto.application.WindowSpecification,
AttributeError: module 'pywinauto' has no attribute 'application'

Hi @abhishek818 , thank you for reporting this error! Can you please post the output of git status?
I haven't seen this one, but I don't use Windows. @KIRA009 any suggestions? 🙏

@abrichr I have no changes done, I was trying to get started and setup openadapt first. I mean git status is empty.

alrighty, seems the issue is with my use of gitpod instance (linux based) on a windows machine. (I use gitpod for code development)

/attempt #769

@abrichr

I get this error:
sqlite3.OperationalError: no such column: recording.original_recording_id` when i run: `python -m openadapt.app.visualize

this error also:
File "/Users/onyedikachi/Library/Caches/pypoetry/virtualenvs/openadapt-hlnjL-LM-py3.10/lib/python3.10/site-packages/sqlalchemy/engine/reflection.py", line 789, in reflect_table
    raise exc.NoSuchTableError(table_name)
sqlalchemy.exc.NoSuchTableError: input_even,

when i run:
cd openadapt && alembic upgrade head && cd ..

Yes @KIRA009

Yes I followed the steps, I'll drop the database and give you feedback.

The error still persist... Was a migration file deleted?

@KIRA009  This is the commit I am on: git log -1
commit 835bb171bc89bccf67397515ff5eb0b257c528bd (HEAD -> main, tag: v0.33.2, origin/main, origin/HEAD)
Author: OpenAdapt Bot<EMAIL_ADDRESS>Date:   Sat Jun 15 16:01:14 2024 +0000

    0.33.2

    Automatically generated by python-semantic-release

I suggest a fresh git clone. Please try following the manual setup instructions exactly: https://github.com/OpenAdaptAI/OpenAdapt?tab=readme-ov-file#manual-setup

Thank you @abrichr, just did that and more: deleted poetry cache, venv. Yet the error somehow still shows up. :)

just did a workaround. @abrichr

@onyedikachi-david what was the workaround?

@onyedikachi-david what was the workaround?

I initially tried tracing the migration file that was causing the error by downloading(see screen shot) the alembic versions folder of each repo  version tag that added db migrations, namely; v0.60, v0.16.1...; I noticed that at v0.26.0, up to 5 migration version were pushed, and that was where the error started, other versions did not error, when i ran alembic upgrade head. Not wanting to go through all the 5 db migrations, I decided to generate an SQL query from the models.py file, ran the query to create the db and that was it. I was now able to run python -m openadapt.app.dashboard.run command and others without the missing db column error.


fix: track whether or not we have seen a packet with a payload (HA75833)

Basically just expose frctrl_object_include as public API gives us 3 cases:

A valid header was received but it contained no payload. We can't tell if this device uses encryption or not.
A valid header was received and it contains an unencrypted payload. We can finish the config flow without any further prompts.
A valid header was received and it contains an encrypted payload. We can prompt for the bindkey in the config flow.

We can't currently handle case (1) and we think we are seeomg that here.
Notes for HA side
This is to be used in HA with something broadly like this pseudcode:
from homeassistant.components import bluetooth

# This was creating in the config flow and fed an advertisement
# device.pending is currently true, which means it needs to see more advertisements before we can proceed
device = XiaomiBluetoothDeviceData()

done = asyncio.Future()

@callback
def _async_discovered_device(service_info: bluetooth.BluetoothServiceInfo, change: bluetooth.BluetoothChange) -> None:
    device.update(service_info)
    if not device.pending:
        done.set()

unload = bluetooth.async_register_callback(
    hass, _async_discovered_device, {"address": device.address)}
)

async with async_timeout(5):
    await done

unload()

# Now can test if device.encryption_scheme == EncryptionScheme.MIBEACON_4_5 etc

It would be nicer if we could make that more like:
async with async_timeout(5):
    async with bluetooth.async_discover({"address": "XX:XX:XX..."}) as iter:
        async for service_info, change in iter:
            device.update(service_info)
            if not device.pending:
                # Looks like we got a payload, so we can safely test for encryption
                break

__aenter__ would register a callback, and __aexit__ would unload it.
Though I think the wrapper would need to queue the adverisements as we can't block the callback. Is that OK? What would be a sensible max queue size?

Codecov Report

Merging #8 (d8097c0) into main (dc622a5) will increase coverage by 0.67%.
The diff coverage is 33.33%.

@@            Coverage Diff             @@
##             main       #8      +/-   ##
==========================================
+ Coverage   45.74%   46.42%   +0.67%
==========================================
  Files           2        2
  Lines         647      657      +10
  Branches      138      141       +3
==========================================
+ Hits          296      305       +9
  Misses        297      297
- Partials       54       55       +1

Impacted Files
Coverage Δ

src/xiaomi_ble/parser.py
46.01% <29.41%> (+0.68%)
:arrow_up:

src/xiaomi_ble/__init__.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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

The helper will be more along the lines of:
ProcessAdvertisementCallback = Callable[
    [Union[BluetoothServiceInfoBleak, BluetoothServiceInfo]], bool
]

async def async_process_advertisements(
    hass: HomeAssistant,
    callback: ProcessAdvertisementCallback,
    match_dict: BluetoothCallbackMatcher,
    timeout: int,
) -> BluetoothServiceInfo:
    done = Future()

    @callback
    def _async_discovered_device(
        service_info: BluetoothServiceInfo, change: BluetoothChange
    ) -> None:
        if callback(service_info):
            done.set_result(service_info)

    unload = async_register_callback(hass, _async_discovered_device, match_dict)

    try:
        async with async_timeout.timeout(timeout):
            try:
                return await done
            except CancelledError:
                pass
    finally:
        unload()

And in the config flow we'll end up with:
    async def _async_wait_for_full_advertisement(
        self, discovery_info: BluetoothServiceInfo, device: DeviceData
    ) -> None:
        """Sometimes first advertisement we receive is blank or incomplete. Wait until we get a useful one."""
        if not device.pending:
            return

        def _process_more_advertisements(service_info: BluetoothServiceInfo) -> bool:
            device.update(service_info)
            return not device.pending

        await async_process_advertisements(
            self.hass,
            _process_more_advertisements,
            {"address": discovery_info.address},
            5,
        )


Example of a transfer from scratch

Hey @AlmostEfficient - I really appreciated your YouTube video on this and thanks for sharing the code.
Is there any chance you'd be open to sharing an example of this for a transfer as opposed to Memo? Please let me know and happy to send you a tip if so!

yo ty,
will try to get this out this week, working on blinks vid rn

Awesome. Thanks!

Added in 388d8c0cd969c2ebfe2fe26d154e23056aeba4e7
also take a look at web3.js
raza.sol :)


[CI failed] "source" is not available on bash

/bin/sh: 1: source: not found

Using /bin/bash instead of /bin/sh fixed this.


Let PIXI.Shader support attributeLocations

Now PIXI has update the minimal version of pixi-gl-core.
So it could do something for  custom attribute locations.
and this PR does NOT break any existing case.

The document is copy from pixi-gl-core's GLShader .
Maybe there are some typo errors.


Missing property name after reference operator and prepare the parse for "," as decimal symbol (some countries in EU)

What happened:
When we try to parse the CSV file we receive this error message

At C:\Temp\profile\Parse-RubrikSizing.ps1:24 char:94

...  = (($rawdata | Measure-Object -Property DBTotalSizeMB -Sum)./1024).T ...

Also, for some countries in EU they use "," as a decimal symbol, so the math is showing a wrong result in this case.
What you expected to happen:
parse dealing with "."or "," for decimal symbol

the issue has been fixed in the latest updates


ondsel: init at 2024.1.0

Description of changes
This pull request adds Ondsel, a FreeCAD fork with a modernized UI.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

If this package needs a maintainer to be merged, I could do that.

Would you mind squashing the commits down into two?
maintainers: add b-eyselein
ondsel: init at 2024.1.0

I've squashed the commits and deleted the TODO.

closes #284524

Result of nixpkgs-review pr 284996 run on x86_64-linux 1

1 package built:

ondsel

Running nixos-unstable on x86_64-linux , the package doesn't seem to work for me. Trying to launch ondsel with varying errors, most of the time the following:
❯ ondsel
Ondsel 2024.1.0, Libs: 2024.1.0R35694 (Git)
© FreeCAD team and Ondsel Inc., 2001-2024
Ondsel ES is based on the FreeCAD project and released under the terms of the LGPL2.1+ License.
Ondsel ES wouldn't be possible without the FreeCAD community.
      ###          #           #    ##### #####
     #   #         #           #    #     #
     #   # ###   ### #### #### #    #     #
     #   # #  # #  # #    #    #    ####  #####
     #   # #  # #  # #### ###  #    #         #
     #   # #  # #  #    # #    #    #         #
      ###  #  # #### #### #### ##   ##### #####

free(): invalid pointer
/nix/store/idbjbb813r5i0wyfr2vsrd2ak8zvy51f-ondsel-2024.1.0-extracted/AppRun: line 43: 103384 Aborted                 (core dumped) "${MAIN}" "$@"

Happens on multiple systems (combinations of AMD / Intel CPUs and AMD / NVidia GPUs), as well as both using Wayland and X11.
Will look into the details later, but seems like some additional work is required here.

@Hayajiro after updating my system, I'm getting the same error. It was working with nixpkgs form a few days or weeks ago. I was using my flake before which worked fine aswell but is now also getting this error. Maybe it can be useful to narrow down the problem
`nix run 'github:pinpox/ondsel-nix'

Doing some further investigation with appimage-run and the appimage used in the package, it seems to be a problem with LD_LIBRARY_PATH.
I can run ondsel with no problems by calling the binary directly instead of the generated AppRun script. To further investigate this can be reproduced by setting  export APPIMAGE_DEBUG_EXEC=bash and then run appimage-run Ondsel_ES_2<IP_ADDRESS>694-Linux-x86_64.AppImage

@Hayajiro @b-eyselein Have you had any luck with this? I'm kinda dependant on this software but havn't been able to get it to run again. Is there anything I can do or help with to get this fixed?
Let me know how I can help.

Sorry, I wasn't able to get to it so far, been busier than usual lately. I'll see if I can get to it in the next couple days. Maybe it would be reasonable to build Ondsel ourselves (just like FreeCAD itself), instead of using the AppImage distribution?

Maybe it would be reasonable to build Ondsel ourselves (just like FreeCAD itself), instead of using the AppImage distribution?

I have tried to do so here: https://github.com/NixOS/nixpkgs/pull/292995
Fixed a few compilation problems but I'm stuck now at the install step. Maybe you can take a look when you find the time, I'm a bit out of ideas on how to fix it.

@Hayajiro @b-eyselein @raspher I have an alternative PR that builds from source (see above) and works.

I've not tested Ondsel with an (recently) updated system, since the application became unresponsive after a settings change, but I've also thought about building Ondsel from source.
Since your PR already does that, I will probably close mine. There is only one small detail I saw: the check Check pkgs/by-name / check wants that the package is defined in pkgs/by-name/on/ondsel, not under pkgs/applications/graphics/freecad...

the check Check pkgs/by-name / check wants that the package is defined in pkgs/by-name/on/ondsel

Yes, but I'm not sure that is correct in this case. The package is a fork of freecad, which overrides the source and otherwise uses most of it's derivation. I put it next to freecad the same way other forks (e.g. orca-slicer from bambu-studio) where packaged. If maintainers really want it in by-name I can move it.
There is one remaning issue with my PR though: It builds fine, but even though I specified the ondsel source when I run result/bin/frecead it starts freecad instead of ondsel. I'm a bit stuck there, not sure why it does that since it is pulling and building the correct source. The ondsel executable is called "freecad" in the appimage aswell, but displays the ONDSEL ascii art when starting in a terminal. The result from my build still shows the FREECAD ascii.
Maybe someone can give me some pointers

I've had a look and the crash looks like it's related to Mesa being too recent. After debugging it myself, I've also found https://github.com/Ondsel-Development/FreeCAD/issues/25 which also hints at Mesa.

I've had a look and the crash looks like it's related to Mesa being too recent. After debugging it myself, I've also found Ondsel-Development/FreeCAD#25 which also hints at Mesa.

Could we use an older mesa for the package? How would that be passed to appimageTools.wrapType2 ?

There is an option extraPkgs for appimageTools.wrapType2 that is probably what we've got to use. But the default mesa version on nixos-stable (23.11) is 23.1.9, while some comments on the issue claim that 23.2.1-2 works...
As far as I can tell we'd also have to build mesa ourselves to get an older version, which seems a bit excessive...

Any progress here ?

Sorry, this issue is stale since I'm not using Ondsel anymore. I will close this issue. Maybe the other try #292995 is more successful.


Issue to generate readme image URLs

Issue to generate URLs for image files.
Uploading an image file here will store a copy of the image file on the GitHub servers and generate a URL.
The URL can be used instead of committing the file to git history to show the image on the readme page.


Pip install luxai-s2 failing when installing vec-noise

I am trying to install luxai-s2, but when it gets to the vec-noise library it throws an error and fails. This is what the error looks like:
C:\Python39\include\pyconfig.h(59): fatal error C1083: Cannot open include file: 'io.h': No such file or directory
  error: command 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX86\x64\cl.exe' failed with exit code 2
  ----------------------------------------
  ERROR: Failed building wheel for vec-noise

Note that i did try the solution proposed in this thread (https://stackoverflow.com/questions/53365282/cant-install-noise-module)
I also tried doing pip uninstall luxai-s2 and then reinstalling and that also didn't work.
Here is the full paste of the error I am getting. https://pastebin.com/akg1981t

https://stackoverflow.com/questions/40018405/cannot-open-include-file-io-h-no-such-file-or-directory seems to work!


Restart

Is it possible to set it to restart 2 times a day?

Not currently and it is not planned to be able to do so.
If you have stability issues, Try to restart your server closer to the prime usage time. Something like 4 PM is usually good enough.


feat: Add GraphQLJSONObject

BREAKING CHANGE: Change CommonJS exports

@jquense This is probably the best way to support both ES modules and CommonJS nicely, right?

just named exports? probably yeah


Add joker game

Looks like there are some merge conflicts in your Fork. Please sync your Fork and then open the Pull Request. Thank you.


Migrating mapbox controls

CATEGORY
Choose one

[ ] Bug Fix
[ ] Enhancement (new features, refinement)
[x] Refactor
[ ] Add tests
[ ] Build / Development Environment
[ ] Documentation

SUMMARY

Moving unique control(s) from controls.jsx to /explore/controlPanels/Mapbox.js
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TEST PLAN

ADDITIONAL INFORMATION

[x] Has associated issue: #9187
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

REVIEWERS
@kristw

Codecov Report

Merging #9373 into master will not change coverage by %.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##           master    #9373   +/-   ##
=======================================
  Coverage   59.01%   59.01%
=======================================
  Files         376      377    +1
  Lines       12162    12162
  Branches     3004     3004
=======================================
  Hits         7177     7177
  Misses       4805     4805
  Partials      180      180

Impacted Files
Coverage Δ

...erset-frontend/src/explore/controlPanels/Mapbox.js
0.00% <0.00%> (ø)

superset-frontend/src/explore/controls.jsx
39.09% <0.00%> (+0.29%)
:arrow_up:

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 cfa7868...aac5c36. Read the comment docs.


Poor user feedback if an invalid or non-existant oc version is specified

eg oc_version: 5 results in :
 Error: Error: Version is written in an unknown format

fixed


mstest.exe doesn't support [DataRow()] attribute

Description
If your tests use the [DataRow()] attribute, mstest.exe gives an error, citing wrong signature.
Steps to reproduce

Create a new Test project

Make the default test look like this:
 [TestMethod]
 [DataRow(1, 2)]
 public void TestMethod1(int input, int expected)
 {
 }

Build.

Run msbuild.exe on the test dll, from the command line. Something like this:
 & "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\MSTest.exe" /testcontainer:"C:\Users\username\Documents\Visual Studio 2017\Projects\UnitTestProject1\UnitTestProject1\bin\Debug\UnitTestProject1.dll"

Expected behavior
Unit tests run.
Actual behavior
It shows the following error error:

UTA007: Method TestMethod1 defined in class UnitTestProject1.UnitTest1 does not have correct signature. Test method marked with the [TestMethod] attribute must be non-static, public, does not return a value and should not take any parameter. for example: public void Test.Class1.Test().

Environment
Windows 10
Visual Studio 2017 Community 15.1 (26403.7)
MSTest.TestAdapter 1.1.17
MSTest.TestFramework 1.1.17

@JVimes : mstest.exe(which is the legacy runner) does not support MSTest V2 based projects. It lacks that  extensibility which is why xunit/nunit tests cannot be run with it as well. vstest.console.exe which is the default runner for all our workflows is the entry point for CLI scenarios.

@AbhitejJohn Thanks. It's very, very difficult find accurate, up-to-date MSTest documentation via Google/Bing. The out-of-date MSDN pages come up, and later pages don't. I hope the team is working to remedy that situation. Users need something more like NUnit's wiki. MSDN is hard to navigate and read.

@JVimes : That's true. We are working to get that up soon.

Another idea is to put a deprecation warning in MSTest.exe's startup text, referencing vstest.console.exe.

Yes, that's likely what we would do. Users would see this message right there and shift.


CodeCheker version command returns different version than installed.

Describe the bug
Installing CodeChecker from pip will install or display wrong version (relevant for VS plugin requiring version < 6.18.2
CodeChecker version
6.18.2
To Reproduce
pip3 install CodeChecker==6.18.2
CodeChecker version
Expected behaviour
CodeChecker version should return 6.18.2 instead of 6.18.1
Desktop (please complete the following information)

OS: Ubuntu

Additional context

Yes, this is a known issue with the 6.18.2 pip package. Unfortunatelly we forgot to increment the version in the repository before we released it and pypi doesn't support to upgrade an already uploaded version. At the end of the next week we will release the 6.19.0 CodeChecker version and it will solve this problem.

We just released the new 6.19.0 CodeChecker version where the version information should be correct and also it contains some features/bug fixes related to VSCode. So I recommend to try it out :blush:

The latest versions (6.19.0, 6.19.1) work properly, so I close this ticket.


Error on GrantFactory

Not sure if its the GrantFactory that has the issue or the provider I'm trying to use, but I see the problem with both the networg Azure Oauth client and Steven Maguire's Microsoft client.
Error I see is:
[11-Sep-2017 18:23:40 America/Denver] PHP Parse error:  syntax error, unexpected
'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or
'{' or '$' in /#####/#######/public_html/azuretest/vendor/league/oauth2-client/
src/Grant/GrantFactory.php on line 85

I'm currently experiencing this same problem.(Yes I know it's been a year)
PHP 7.2.13 (cli) (built: Dec  8 2018 12:11:34) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies     with Zend OPcache v7.2.13, Copyright (c) 1999-2018, by Zend Technologies
league/oauth2-client       2.4.1     MIT

public function isGrant($class)
{
    return is_subclass_of($class, *AbstractGrant::class*);
}

which provider do you use with the client?
s pozdravem,
Filip Oščádal
https://fredbrooker.gscloud.cz https://fredbrooker.gscloud.cz
On Thu, Dec 27, 2018 at 8:10 AM MelonCola<EMAIL_ADDRESS>wrote:

I'm currently experiencing this same problem.(Yes I know it's been a year)
PHP 7.2.13 (cli) (built: Dec 8 2018 12:11:34) ( NTS ) Copyright (c)
1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend
Technologies with Zend OPcache v7.2.13, Copyright (c) 1999-2018, by Zend
Technologies
league/oauth2-client 2.4.1 MIT
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/thephpleague/oauth2-client/issues/657#issuecomment-450091257,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAEmXlxc_TqDxGww5LvMCV93cenXo520ks5u9HJcgaJpZM4PT8Fs
.

https://github.com/wohali/oauth2-discord-new

this is weird as AbstractGrant::class
always translates to AbstractGrant
s pozdravem,
Filip Oščádal
https://fredbrooker.gscloud.cz https://fredbrooker.gscloud.cz
On Thu, Dec 27, 2018 at 9:14 AM MelonCola<EMAIL_ADDRESS>wrote:

https://github.com/wohali/oauth2-discord-new
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/thephpleague/oauth2-client/issues/657#issuecomment-450100681,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAEmXpj3ctpmm5Ex52rZbrMGRF-HPzl1ks5u9IFrgaJpZM4PT8Fs
.

A similar problem at the same line was reported in #787. I'm not sure what would cause it, other than using a version of PHP earlier than PHP 5.6. If you're still having this issue, please re-open this ticket.


amplify codegen models removes v2 relationships

Before opening, please confirm:

[X] I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
14.17.4
Amplify CLI Version
7.6.26
What operating system are you using?
Mac
Amplify Codegen Command
codegen models
Describe the bug
Running amplify codegen models destroys model types in TypeScript when using GraphQL v2 transformer and expressing relationships with @belongsTo etc.

Running the command outputs:
warning: Model Datasheet has field make of type Make but its not connected. Add a @connection directive if want to connect them.
warning: Model Datasheet has field section of type Section but its not connected. Add a @connection directive if want to connect them.
warning: Model Datasheet has field zone of type Zone but its not connected. Add a @connection directive if want to connect them.
warning: Model Datasheet has field subzone of type Subzone but its not connected. Add a @connection directive if want to connect them.
warning: Model Make has field datasheets of type Datasheet but its not connected. Add a @connection directive if want to connect them.
warning: Model Section has field datasheets of type Datasheet but its not connected. Add a @connection directive if want to connect them.
warning: Model Zone has field datasheets of type Datasheet but its not connected. Add a @connection directive if want to connect them.
warning: Model Subzone has field datasheets of type Datasheet but its not connected. Add a @connection directive if want to connect them.
warning: Model UserProfile has field company of type Company but its not connected. Add a @connection directive if want to connect them.
warning: Model UserProfile has field depot of type Depot but its not connected. Add a @connection directive if want to connect them.
warning: Model UserProfile has field license of type License but its not connected. Add a @connection directive if want to connect them.
warning: Model Company has field employees of type UserProfile but its not connected. Add a @connection directive if want to connect them.
warning: Model Company has field depots of type Depot but its not connected. Add a @connection directive if want to connect them.
warning: Model Depot has field employees of type UserProfile but its not connected. Add a @connection directive if want to connect them.
warning: Model Depot has field company of type Company but its not connected. Add a @connection directive if want to connect them.
warning: Model License has field user of type UserProfile but its not connected. Add a @connection directive if want to connect them.

It appears that the command is not respecting the version of the transformer being used.
Expected behavior
New fields are added and existing relationships are not removed.
Reproduction steps

Deploy schema with GraphQL v2 transformer and a model relationships expressed as @belongsTo and @hasOne.
Add new field to one of the models.
Run amplify push or amplify codegen models

GraphQL schema(s)

type Datasheet
  @model
  @auth(
    rules: [
      { allow: owner }
      { allow: groups, groups: ["Admin"] }
      { allow: groups, groups: ["Customer"], operations: [read] }
    ]
  )
  @searchable {
  modelName: String!
  generation: String!
  make: Make @belongsTo
  datasheet: String!
}

type Make
  @model
  @auth(
    rules: [
      { allow: owner }
      { allow: groups, groups: ["Admin"] }
      { allow: groups, groups: ["Customer"], operations: [read] }
    ]
  ) {
  title: String!
  description: String!
  datasheets: [Datasheet] @hasMany
}

Log output

2022-04-01T10:52:54.715Z|info : amplify version core  {"version":true,"yes":false}
2022-04-01T10:53:12.007Z|info : amplify types codegen
2022-04-01T10:53:12.077Z|info : amplify-cli-core.banner-message/index.ts.fetch banner messages from https://aws-amplify.github.io/amplify-cli/banner-message.json({}
2022-04-01T10:53:15.126Z|info : amplify-provider-awscloudformation.utility-functions.getIntrospectionSchema.appSyncModel.appSync.getIntrospectionSchema([{"apiId":"[***]32s2t2qdk7e","format":"JSON"}])
2022-04-01T10:53:29.120Z|info : amplify statements codegen
2022-04-01T10:53:29.189Z|info : amplify-cli-core.banner-message/index.ts.fetch banner messages from https://aws-amplify.github.io/amplify-cli/banner-message.json({}
2022-04-01T10:53:31.743Z|info : amplify-provider-awscloudformation.utility-functions.getIntrospectionSchema.appSyncModel.appSync.getIntrospectionSchema([{"apiId":"[***]32s2t2qdk7e","format":"JSON"}])
2022-04-01T10:53:36.685Z|info : amplify statements codegen
2022-04-01T10:53:36.761Z|info : amplify-cli-core.banner-message/index.ts.fetch banner messages from https://aws-amplify.github.io/amplify-cli/banner-message.json({}
2022-04-01T10:53:39.519Z|info : amplify-provider-awscloudformation.utility-functions.getIntrospectionSchema.appSyncModel.appSync.getIntrospectionSchema([{"apiId":"[***]32s2t2qdk7e","format":"JSON"}])
2022-04-01T10:53:53.410Z|info : amplify models codegen
2022-04-01T10:53:53.483Z|info : amplify-cli-core.banner-message/index.ts.fetch banner messages from https://aws-amplify.github.io/amplify-cli/banner-message.json({}

Additional information
No response

Hi @jrcryer,
Could you provide your amplify/cli.json file? It appears that you may be missing feature flags or your feature flags may be set to use the GraphQL Transformer V1

Thanks @marcvberg,
amplify/cli.json below.
{
  "features": {
    "graphqltransformer": {
      "addmissingownerfields": false,
      "improvepluralization": false,
      "validatetypenamereservedwords": true,
      "useexperimentalpipelinedtransformer": true,
      "enableiterativegsiupdates": false,
      "secondarykeyasgsi": false,
      "skipoverridemutationinputtypes": false,
      "transformerversion": 2,
      "suppressschemamigrationprompt": true,
      "securityenhancementnotification": true,
      "securityEnhancementNotification": false,
      "showfieldauthnotification": false
    },
    "frontend-ios": {
      "enablexcodeintegration": false
    },
    "auth": {
      "enablecaseinsensitivity": false,
      "useinclusiveterminology": false,
      "breakcirculardependency": false,
      "forcealiasattributes": false,
      "useenabledmfas": false
    },
    "codegen": {
      "useappsyncmodelgenplugin": false,
      "usedocsgeneratorplugin": false,
      "usetypesgeneratorplugin": false,
      "cleangeneratedmodelsdirectory": false,
      "retaincasestyle": false,
      "addtimestampfields": false,
      "handlelistnullabilitytransparently": false,
      "emitauthprovider": false,
      "generateindexrules": false,
      "enabledartnullsafety": false
    },
    "appsync": {
      "generategraphqlpermissions": false
    },
    "latestregionsupport": {
      "pinpoint": 0,
      "translate": 0,
      "transcribe": 0,
      "rekognition": 0,
      "textract": 0,
      "comprehend": 0
    },
    "project": {
      "overrides": true
    }
  }
}

Hi,
Is there a reason that the feature flag codegen/useappsyncmodelgenplugin is set to false? Part of the automatic migration process for GraphQL Transformer V2 includes setting this flag to true as it is a dependency for the updated transformer

Hi @marcvberg,
Nope, I've not manually edited this file. Happy to switch to true and see if this resolves the issue.
Thanks,


track skb pointer

Would be great to track the pointer itself after the initial pkt classification match, and then keep following based on pointer value. Example was filtering on specific port:
[...]
0xffff8882262bf600    [ksoftirqd/1]             tcf_classify<PHONE_NUMBER>444
0xffff8882262bf600    [ksoftirqd/1]      skb_ensure_writable<PHONE_NUMBER>712
0xffff8882262bf600    [ksoftirqd/1] inet_proto_csum_replace4<PHONE_NUMBER>231
0xffff8882262bf600    [ksoftirqd/1]      skb_ensure_writable<PHONE_NUMBER>062         <--- last occurrence before out of sight
0xffff8882262bf900        [<empty>]             ip_local_out<PHONE_NUMBER>947
0xffff8882262bf900        [<empty>]           __ip_local_out<PHONE_NUMBER>151
0xffff8882262bf900        [<empty>]             nf_hook_slow<PHONE_NUMBER>172
[...]

What can be seen, we lost track of pointer 0xffff8882262bf600 after skb_ensure_writable because in the tc BPF program we did NAT'ing of the packet.

I would like to work on this.
Any advice on how to begin?
Thanks

@varunkumare99 Great. The idea is to introduce a BPF map to store SKB pointer, and then check for each SKB whether the pointer exists in that map. The feature should be protected by the --filter-track-skb flag.

cool.
I'm on it.


Add a delay to Actor scheduling when under load.

This limits the maximum frequency at which we'll schedule each actor.  This:

Encourages batching when we're under load (while processing messages immediately when we're not).
Reduces starvation.

In addition:

work around gevent issue where sleep() does not necessarily yield to another greenlet by calling sleep(0.000001) instead
reduce number of loop iterations before yielding to reduce starvation.

This looks right technically, but leaves me a bit nervous. It effectively adds 0.01s to each message transfer in an unstressed system, adding probably 0.1s to the time to network an endpoint. On the other hand, it encourages batching and saves processing in a heavily stressed system, which is a good thing.
I want to think a bit more about this before merging it.

If the Actor hasn't been scheduled for more than 0.01s, we'll schedule it immediately without a delay.  We only start delaying once we get multiple messages within 0.01s.

@plwhite worth a try on a scale run?

I am going to just merge this now so we can get a run or two with it in.


fix spelling error for colocate join #25053

Translation text not cleaned up
Proposed changes
cleanup translation errors.

run buildall


Cannot get StatsD Metrics

I've noticed that Cherami supports sending stats to a statsd server. From looking through the code i have the following configuration:
DefaultServiceConfig:
  ListenAddress: "..."
  RingHosts: "..."
  EnableLimits: true
  Metrics:
    statsd:
      hostPort: "statsd:8125"
      prefix: "ch"

And I can see a RuntimeMetricsReporter starts, but because the statsd metrics exporters doesn't log anywhere I can't see why I'm not getting stats appear on the other end. is there a configuration I have missed?
Cheers,
Dan

Ah,
It looks like it doesn't use the values from the DefaultServiceConfig - metrics have to be added to each host.
@datoug - Is this the desired implementation? Or should it attempt to merge in the metrics config into the service config if its not supplied? Most/all my hosts will be using the same metrics configuration - seems pointless duplicating it so many times.
Cheers,
Dan


Artifact scanning stops early if there are more than 1500 artifacts

E.g., with 1505 artifacts, only the first 150 get scanned. (This is probably the same issue as #13; I'm not sure if that was supposed to have been fixed, or if it's something that won't be fixed.)

Since 1500 is the max of the inventory we check against that, albeit lazily and mostly incorrectly. However we likely won't look into a fix for this specifically. I suggest decreasing your artifact count to below 1500 through enhancements for now.

Hi there. V1.2.1-prerelease hopefully parses artifact quantities more accurately. Please let us know if this issue is fixed with that so that we may close it.

Yup, all artifacts get scanned by the prerelease, even if there are >1500 total.


Please correct the git clone link for python

[Enter feedback here]

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 5e42b97c-42d8-4649-214f-b72cbafe5841
Version Independent ID: 2fe19ba3-803c-c852-c42b-fd660df07626
Content: Analyze live video with your own model - HTTP
Content Source: articles/azure-video-analyzer/video-analyzer-docs/analyze-live-video-use-your-model-http.md
Service: azure-video-analyzer
Sub-service: video-analyzer-subservice
GitHub Login: @Juliako
Microsoft Alias: juliako

@saurabh-sengar Thanks for bringing this to our attention. We shall evaluate and update the document as appropriate.

@saurabh-sengar Thanks for bringing this to our attention. I have submitted a PR to fix the issue that's in review. The changes should reflect post the merge.


Redirect loop on login page from Firefox

I'm having an issue logging into our zulip server (https://hail.zulipchat.com/login/) from Firefox. It's reproducible, and the issue has persisted since the creation of our server a week ago. Here are some more details:

Clicking either "Login" or "Login with GitHub" bounces me to the same login page. However, the authentication succeeded somewhere because I get "new login" email notifications or GitHub warnings about too many authentication attempts.
I have this issue on Firefox, but not Chrome. I tried disabling all extensions and restarting Firefox, but the issue persisted.
The issue occurs for both GitHub and email authentication.
I don't have a problem logging into chat.zulip.org from Firefox.

Happy to provide more information as necessary!

@tpoterba are you at the PyCon sprints by any chance?  This seems like something that'd be a lot easier to debug in person.

Unfortunately I'm not!
I'd be happy to help any way I can. I'll try to auth to another hosted zulip instance that's not chat.zulip.org, to see if the problem is isolated to our server or not.

@tpoterba I suspect the issue will turn out to be something to do with your firefox configuration -- either interesting checkboxes or extensions you're using.  Can you investigate that a bit?

I've just confirmed that I also get the issue using safari, and I've never touched any safari settings on this machine.

Tagging this as a blocker since I definitely want to track this down soon. @tpoterba can you stop by chat.zulip.org and PM me sometime tomorrow to debug this interactively?  I have a theory we can test out.

Yep, will do.

@tpoterba so, I believe we've now fixed this issue via #9920.  Can you try visiting zulipchat.com, removing the sessionid cookie on that root domain if present, and then logging into your organization?  (The cookies only last 2 weeks, so may have expired by now, but it's worth checking).

Closing, since we've gotten several independent reports from other folks of this fix working.  Thanks again for the report @tpoterba!

ah, I'm sorry! I thought I had responded. It's working for me, thanks a ton!


Support preserveModules

I'm trying to use this library for a UI library, I want the application including the library to load an individual JS/CSS file containing only the required code, based on the file path, e.g. library/componets/foo.
The file structure can be preserved using the preserveModules option however this does not seem to work for (this) style library. The setting seems to be discarded for css files and the css files are bundled into a single file.

Hi @jleeson thank for the reply, would be awesome to have support for this.

Sorry to dig that up, would it be possible to pass this as an option or to have an option to have a specific output folder? I'm generating css in a dist folder where I also output the JS files, which leads to a dist/dist folder if preserveModules is enabled when I just want the bundling to comply with the original JS structure.

@malaudha the preserveModules option should correctly preserve the original javascript structure. Can you provide your rollup config?

This is what I wish not to do. I wish to preserve Modules for Javascript but choose the output folder for the styles file.

Oh, I see what you mean now. The plugin currently does not provide a way to opt-out of respecting the preserveModules option received from rollup, however this feature can be added. Would you mind opening a new issue for this?

Sure! I wondered if you were planning on replacing "assert" by "with" as the spec has been updated in this way, should I create an issue for that too?

@malaudha thanks for opening the issue for your feature request. There is no need to open an issue to change "assert" to "with", both assert and with are supported by rollup, and this plugin simply reads the parsed import attributes. I will update the README to use "with" before the next release. Its also worth noting that when using import attributes with this plugin, the style is included in the js and not bundled into a css file.


Copy paste from other editor

Todo

[ ] fix bug
[ ] test code
[ ] deploy
[ ] take vacation

I think the problem lies here:
    def initialize owner, options
        @owner = owner
        @options = options
        @options:width ||= 100
        @options:height ||= 24

↳ src/terminal.imba


Add flag for dev dir2

Messages

:book:
:tada: - congrats on your new release

  Generated by :no_entry_sign: dangerJS against befb433eb53d114db82724aeaf4c0618a161070b


feat: handlebars - dot in path names

@RunDevelopment thank you for fast response!
Test added, tabs fixed. Let me know if I miss something.

Thank you for contributing!


Chat plugin not reading correctly the messages

When running chat plugin, I only had some output like "chat: myname"
I guess the bug comes from "if type(text) is str: "
I have fixed it on my code, but I only started to develop in python, today, so my approach may be not the best way to fix it.
BTW, great project!! ;)

We have a chat plugin...?
@gamingrobot is this yours?

I'm refering to, https://github.com/nickelpro/spock/blob/master/contrib/plugins/ChatCommand.py

contrib is just that, contributions and other miscellaneous stuff that is not maintained nor expected to work. Just toys and other stuff like the DebugPlugin. Closing

can I submit my workaround?! so other peoples have something functional?

Ya pull requests are always welcome, its just not a bug I'm or anything I'm chasing down


Add Table Component to HyperUI

I propose the addition of a new table component to enhance the existing options available. While there are already some table components available, I strongly believe that my addition would greatly benefit the hyper UI.
Preview::

Hey @mdjamilkashemporosh,
I'm happy for you to look at a table component with pagination. However, I feel the other examples are just variations of table components with slightly different approaches to the borders, none of which particularly make sense.

I think start with the last one for now.

@markmead Got it! Thanks

Hey @mdjamilkashemporosh,
I'm happy for you to look at a table component with pagination. However, I feel the other examples are just variations of table components with slightly different approaches to the borders, none of which particularly make sense.
If you do create the component can you please use an existing table and pagination component as your base.

Hey @KunjMaheshwari,
Thank you for sharing the information.

Hey @KunjMaheshwari,
Thank you for sharing the information.

Hey @KunjMaheshwari, Thank you for sharing the information.

It was just a copy of my reply, no idea why they did that 🤷♀


Allow inequalities with newstr and newbytes.

This PR applies the same checks for newstr and newbytes inequality operators, than for equality operators. It also avoids to use the isbytes and istext deprecated functions.
It allows to write codes like "" < str(""), that is valid in python 2 and python 3, but not if str is imported with from builtins import str.
It fixes #154

@edschofield What do you think of this PR? Is there something I can do to help you merge it?

This looks good, thanks!


Add a GitHub Action which runs a shell linter

Something like https://github.com/koalaman/shellcheck, installed by hermit.

This is dependent on https://github.com/MatthewDolan/dotfiles/issues/3 being completed first.


Add cron job for integration tests against Qiskit main

Summary
Details and comments
Fixes #

All tests passing https://github.com/Qiskit/qiskit-ibm-runtime/actions/runs/7791134459


Ugly dashboard design

What I'm trying to achieve
Better looking dashboard UI.
The current UI looks really poor and not professional.
Describe a proposed solution
Hire a designer who will re-design your UI.

@snax4a Hello Szymon,
Our top priority is to deliver Saleor 3.0 and then 3.1. We're constantly improving our UI when we have time to do it.
I understand that you may not be a fan of our current UI, but could you please be more specific with your feedback? What would you like to change? What do you dislike about our UI?

@karolkielecki
First of all, i would have changed i

@snax4a We've improved the components you mentioned in our new design. The components will be consistent. We'll implement the new UI as soon as we can, but there is no ETA.


Update office-365-management-activity-api-schema.md

Added event 29

Docs Build status updates of commit 03e37e7:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

office-365-management-api/office-365-management-activity-api-schema.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 03382b1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

office-365-management-api/office-365-management-activity-api-schema.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

@andypunt PR merged; updated to the correct value of MailSubmission


⚠ HawkeUno has degraded performance

In 191da93, HawkeUno ($UNO) experienced degraded performance:

HTTP code: 403
Response time: 3636 ms

Resolved: HawkeUno performance has improved in dbc078c after 54 minutes.


I stand amazed in the presence

Title: I stand amazed in the presence
Alternate title: How marvellous How wonderful
Author: Charles H. Gabriel
Media url: https://youtu.be/aRC4g7AipE0
Lyrics:
I stand amazed in the presence
Of Jesus the Nazarene,
And wonder how he could love me,
A sinner, condemned, unclean.
Refrain:
How marvelous! How wonderful!
And my song shall ever be;
How marvelous! How wonderful!
Is my Savior's love for me!
For me it was in the garden
He prayed, "Not my will, but Thine;"
He had no tears for his own griefs,
But sweat drops of blood for mine. [Refrain]
He took my sins and my sorrows,
He made them his very own;
He bore the burden to Calv'ry,
And suffered and died alone. [Refrain]
When with the ransomed in glory
His face I at last shall see,
'Twill be my joy through the ages
To sing of his love for me. [Refrain]

I stand amazed in the presence (Charles H.  Gabriel).xml.zip


[DRAFT] [TEST-95] Local Mode Development Option

Summary

Added option to run Stride/Gaia/Hermes/Icq nodes locally to speed up dev cycles (i.e. eliminate excessive build time from docker overhead)
This only runs 1 node for each chain. It is a less robust testing interface than docker, but it should be useful for tough debugging scenarios that require quick trial and error
Each dependency is added a git submodule under deps
The flow is separated into 3 steps

install: download dependencies for each module
init: compile executables (configurable with build flag) and initialize chains, accounts, keys and other state
start: first starts Stride and Gaia, then starts Hermes and ICQ

The relayer's listen to the logs of Stride and Gaia and launch intelligently once blocks have been confirmed (to cut down on time wasted from having a conservative sleep command)
The flow from init through start should take ~2 min
See README for run instructions
First time flow should be:

git submodule update --init
make local-install
make local-init=sghi
make start
make stop

Successive flow should generally be:

make local-init={target_module}
make start
make stop

Remaining Work:

[ ]  Host zone doesn't seem to be registering (hoping this is just a timing thing that needs to get fixed)
[ ] Create local copies of docker testing scripts 1.sh, 2.sh, 3.sh
[ ]  Considering restructuring the organizational layout of these scripts and relevant Makefile commands

I intentionally isolated this code/commands to get something out there quick
My proposal is, if we find value with this approach, we can integrate it into the original test scripts as a flag

[ ] I think there's a chance we can restore the state from the point after relayer connections have been made on Stride and Gaia. This would cut down the dev cycle from 2min to <10 seconds. My initial attempt (keeping a copy of the state directory right after initialization) doesn't seem to be working, and if I can't fix it, I'll remove that option from the repo before merging.

Future Work

Add error checking (right now you have to check the logs to see if the chain or relayers have failed)

Testing Plan

Follow the flow described above to setup
Run testing scripts when available

@vish-stride I was expecting it to work as well! Stride and Gaia actually started up fine at their previous block heights. The issue was with hermes. I also thought it was possible hermes was storing state somewhere else but the only thing I could find is that it stores the keys in ~/.hermes, which I don't think would be connected.
But yeah it would be great to walk through it with you!


[DOCS] Example monaco editor suggestion is weird

I found in docs Monaco Editor suggestion position is weird and in the small window, it cannot show suggestions.
Like this:

Refer to the playground Behavior:

Solution
I think it can remove File L307 to reach fix Monaco Editor suggestion position.

Thanks @JiaWei-Hong !
Can you please try it and if it works issue a PR?

Thanks @JiaWei-Hong !
Can you please try it and if it works issue a PR?

Sure!
I will fix on this


Inventory Setup categories

When looking through my inventory setups, I've got quite a lot now, and it would be nice to put them into categories like a skilling and pvm category - it would also be nice to color the names in the inventory setups tab :)

Inventory Setups is a hub plugin, and not supported by the main development team. Please open this request on that repository. (you can find it by clicking the support link found on its entry in the client or by clicking the link on the plugin hub page on our website)


🎨  Improved Update Notifications

refs #5071
We want to achieve these things:

Get rid of the hardcoded notification message - receive messages from the update check service.
Be able to receive custom messages.
Be less annoying and turn dismissible on by default.
Future proof dynamic (e.g. be able to receive multiple notifications, notification groups)
Custom Update Check endpoint for development.
We stick with top bar notification in LTS, because we only release LTS once per 1-3 month and with this PR we are able to send custom messages, but for 1.0 we will move default release notifications into the about page. And urgent/priority notifications will show up on the top bar e.g. security updates, migration notifications etc.

Note: I deleted the displayUpdateNotification settings key, because it's not used anymore. No need to add a migration still, as LTS ends anyway this year.
Note: I've renamed seenNotifications to notifications. notifications is the true place to store/read notifications from. Unique identifier is a uuid. We simply store any new notification in it. If you remove a notification, it get's marked as seen. And deleted after 3 month automatically. No need to add a migration still, as LTS ends anyway this year - but we'll do for 1.x.
Note: No usage of notification in process store anymore, because this now that the messages are coming from the UNC, we can't simply store the messages in process. Because if you receive a notification and you restart Ghost, the message is lost. You would get it back on the next request to the service. No need to cache the notifications in general, because it's only one read operation to one key in the settings table.
Note Each commit message has all the content you need.

[x] remove config.updateCheck, keep the privacy flag and remove this flag from Pro
[x] add possibility to receive multiple release notifications (just in case we want that in the future)
[x] fix tests / add tests
[x] change privacy flag behaviour
[x] care about restart use case (therefor we have to store notifications in the settings table)
[x] add condition to receive custom pro notification for migrations only if blog is allowed to migrate -> generalise this by using e.g. config.allowedGroupMessage (an array of regex strings e.g. migration or share-more.
[x] future case: be able to send a custom notification to a single blog on pro
[x] code quality check/read commit messages again/overview of the last changes

I tried to add in a client extension for showing an extra notification from config. That got complicated quickly, and developing on LTS is so crazy hard now!
I would suggest that somewhere in this server side code where the notifications are fetched, it would be great to merge in config.notifications if it is set and an array. That would solve our one last case. I've tried to do this, but it ends up touching the same areas as you're already working on.

would suggest that somewhere in this server side code where the notifications are fetched, it would be great to merge in config.notifications if it is set and is an array. That would solve our one last case. I've tried to do this, but it ends up touching the same areas as you're already working on.

Will check tomorrow.

Ready to review!


krop: move libsForQt5.poppler out of propagatedBuildInputs

Motivation for this change
I noticed qtbase.dev is in my closure after garbage collection. The referrer was krop and it is because ${qtbase.dev}/bin/ was in the PATH of the wrapper. The solution is trivial - move libsForQt5.poppler out of propagatedBuildInputs and put it in buildInputs
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@symphorien based on https://github.com/NixOS/nixpkgs/pull/87282, I assume you are a krop user. Would it be OK to ask you for a review?

Thank you! :)


Update subgraph to include split-escrow type and mappings

The subgraph was not properly querying the some values from split-escrow invoice types due to the logic in the mapping utils and helpers. Credit to @psparacino for pointing it out. This update now checks for split-escrow as well, generates the templates, and even queries the split-escrow specific state values dao and daoFee.
This version has not been tested or deployed yet. Please review in case I missed anything. Thank you.

Extended and covered by #150