logger add mission, manual_control_setpoint, and reduce some default rates

I'd like to try and make EKF replay more reliable by default, eventually dropping the special replay mode and message altogether.
I think if we're more realistic with the base default logging rates we're not far off in the worst case (pixhawk with cheap sdcard).

IIRC all these are intervals, not update rates. Are you sure the change went into the right direction?

Wow, completely missed that. Thanks

Updated. The idea is to keep an eye on the logs from the test team periodically running them through EKF replay and incrementally adjust.
@bkueng what do you think about optionally setting the buffer size at logger start dynamically? Something crude like waiting for the system to fully boot and settle and then set the buffer based on available memory with a healthy margin. For many pixhawk users this would be a larger buffer in the field, but also avoid bench testing issues with the with the USB mavlink instance starting.

@bkueng what do you think about optionally setting the buffer size at logger start dynamically?

That sounds like it will have unwanted side-effects. If we find a solid way that works then sure. One thing I see now is that it would hide increases in RAM consumption.

@bkueng manual_control_setpoint is the manual input actually used by the controllers. Without it there's nothing logged for manual input via mavlink (gamepad, QGC thumbsticks, etc).
offboard_mission is almost always the regular mission and the topic shows the current dataman index, number of items, and current waypoint. It only updates when a new mission is synced, or the changed via MISSION_SET_CURRENT (QGC change active waypoint). This was previously printed in the console, but recently removed.
I agree about the potential for side-effects with setting the logger buffer dynamically, I just think it might be worth it. On a simple configuration with a pixhawk, no companion computer, and cheap sdcard there's plenty of extra memory for a larger buffer and this is exactly the setup that needs it.

@priseborough Could you review?

Sensor baro is required to support EKF replay when baro error correction is enabled. It is only required to calculate air density, so a low update rate, eg 1Hz,  is OK.

Most of this was implemented here. https://github.com/PX4/Firmware/issues/7911


Provide every Fish with some movement animation

Bob pointed out that many of the fish don't have movement animations.
Make a simple tween stretch/squish animation for them to take on every step.

Closed by a8231ff7c43153642c05cc627cc03ab4f9603a77


Allow chain developers to overwrite payee address

crypto dot com has a usecase involving paying the fees for relayer incentivization into a module account and then doing distribution from there. This can be supported if we have some method on the incentivizing chain that allows the payee address to be overwritten, so that we pay relayer fees to that address instead of the address we get from msg.sender or forward_relayer in the ack.
cc: @crodriguezvega @damiannolan

Hey @AdityaSripal, so from my understanding of what you've written here is this a valid proposal:

Add a new a grpc endpoint RegisterDistributionAddress. This should be used on the incentivizing chain as you say, i.e. the packet source chain.
When a packet is ack'ed and the OnAcknowledgementPacket callback is fired within 29-fee we should lookup the distribution address stored in state.
If a distribution address is found then we should use it in place of ack.ForwardRelayerAddress and relayer args here
Similarly this should be done for packets in the OnTimeoutPacket callback and distribution address should be used in place of the relayer arg here
If a distribution address is not found in state then the current behaviour should be maintained.

How does this sound to you? Am I following correctly? Thanks!

Add a new a grpc endpoint RegisterDistributionAddress

How would this be authenticated? From my understanding this is a proposal for a chain to route all packet fees to a different address. It also seems like the usecase in mind, it seems like this is just a chain-wide parameter. i.e. relayers do not have a choice on whether their funds get routed to this address or default behavior is chosen.
From my understanding everything would be correct in your proposal but the payee address should probably be a chain parameter rather than a grpc endpoint that anyone can call/is optionally called per relayer.
If parameter is set, then route all payments to the address in the parameter
If the parameter is not set, then do default behavior.
We should definitely double check with crypto.com to see which proposal fits their usecase and why they need it.
cc: @crodriguezvega

From my understanding this is a proposal for a chain to route all packet fees to a different address.

Okay yeah, on second reading this makes more sense with your suggestion of an on-chain param. I misinterpreted when trying to understand the initial issue and great point, enforcing any kind of level of authentication of an endpoint like that wouldn't make sense.
Thanks for the info! I think the on-chain perhaps makes sense and gives me enough to make a start on the implementation.
Maybe we can follow up async with the crypto.com folks to ensure it fits their needs, but it sounds about right to me! :)

Hi ibc-go team,
When reading the current implementation of ics-029, we found that the recipient of incentives fees(ack-fee and timeout-fee) on source chain is the relayer address. However, it is possible for relayer to register arbitrary address of source chain on destination chain to receive the recv-fee.
Currently, for most of relayer applications like hermes only supports plain text hot wallet. It is not safe to top up too much token on relayer account in case of private key leakage. It is also in convenient to top up multiple relayer accounts(one may have different relayer accounts for different channel or same channel for redundancy when deal with high ibc traffic).
Fortunately, the feegrant module comes out and is integrated into most of cosmos-sdk chains. Hermes also supports feegrant in its config. Fee granter account can fee grant relayer accounts and pay the actual relaying tx fee for relayer accounts. In this regard, relayer operator worries less about the breach or the balances of multiple relayer account because relayer operator only need to monitor and top up the fee granter account in this case. the relayer accounts should just hold minimal tokens.
Under ics-029, in source chain, we would like to seek the opportunity that if relayer account can optionally register their own destination address to receive the incentive fees(ack-fee and timeout-fee). If it is not registered, then the default recipient should be relayer address. It may be like the command but send to source chain?
In our case, we could register multiple relayer accounts to single fee granter account.

Ahh ok, so your intention is not to have all funds go to a single address.
Instead you just want relayers to be able to specify a different address that funds should be sent to for Acks/Timeouts?
Yes this makes total sense to me and should be an easy addition.
As @damiannolan said, adding a GRPC endpoint like RegisterDistributionAddress that stores a mapping from the src relayer address and their preferred payout address will work.
Thanks for the suggestion!

on second reading this makes more sense with your suggestion of an on-chain param. I misinterpreted when trying to understand the initial issue and great point, enforcing any kind of level of authentication of an endpoint like that wouldn't make sense.

No I think you had the right understanding and I was confused 😄

Correct

I've attempted to split up the work into more reasonable and easier to digest PRs. Please see:

#1491
#1492
#1493

With these we can proceed with the logic for overriding the fee payout in OnAcknowledgementPacket and OnTimeoutPacket callbacks.
Regarding the point made about authentication, and how do we authenticate such an endpoint if publicly exposed?
Should we consider gating the RegisterDistributionAddress rpc handler with an on-chain parameter? Essentially within RegisterDistributionAddress we can check an on-chain param and either return an error or proceed.
For example, something like the following would work:
feeDistribution: "default" | "custom"

customFeeDistributionEnabled: true | false


Extension fails to load config

Problem: extension cant load the config file and thus doesn't work at all. If I use version 0.11.7 this error doesn't occur. Only happens if I upgrade.
Extension version: 0.15.1
Extension initial output:
⚠ WARN: SyntaxError: Unexpected token � in JSON at position 0
Windi CSS Intellisense is now active!

Output after I modify the config file (windi.config.ts)

⚠ WARN: SyntaxError: Unexpected token � in JSON at position 0
Windi CSS Intellisense is now active!
⚠ WARN: TypeError: Cannot read property 'visitors' of undefined
⚠ WARN: SyntaxError: Unexpected token � in JSON at position 0
⚠ WARN: Error: undefined: Must export a default export when using ES6 modules.
 e:\Projects\Collaborations\vocal-web-app\windi.config.ts:0:0

Config file: (windi.config.ts)

import { defineConfig } from 'windicss/helpers';
export default defineConfig({
   darkMode: false,
   theme: {
      fontFamily: {
         sans: ['Inter', 'Roboto', 'sans-serif']
      },
      extend: {
         colors: {
            accent: '#6366f1'
         },
         textColor: {
            default: '#202020',
            'default-light': '#454545',
            inverse: '#fff'
         },
         backgroundColor: {
            default: '#f8f6f5',
            'default-elevated': '#fff',
            inverse: '#000'
         }
      }
   },
});

I can't reproduce it.
Using your attached config file, gives no errors for me.

I can reproduce it on my eggsy/website repository. My config is below, I don't think there are any problems with it because it works, I just don't get autocompletion and all (I get class sorting though).
import { defineConfig } from "windicss/helpers"
import defaultTheme from "windicss/defaultTheme"

import lineClamp from "windicss/plugin/line-clamp"

export default defineConfig({
  darkMode: "class",
  theme: {
    fontFamily: {
      sans: ["Inter", ...defaultTheme.fontFamily.sans],
    },
  },
  plugins: [lineClamp],
})

Here are the errors I get when I save this exact same config file.

@eggsy I use latest VS Code Insider. I just copied the config in windi.config.ts. And it works for me. Can you please open an simple html project folder and paste the windi.config.ts file in there. I want to make sure it is happening there too.

Yep, it's still the same, I tried upgrading my dependencies, upgrading typescript and re-installing the VSC Extension, nothing seems to work.

/cc @voorjaar can you reproduce it? I can not reproduce it

Extension works (autocomplete, etc.) if I remove the config file.

Hmm yeah. So somehow there is a bug, don't know the cause yet

/cc @voorjaar can you reproduce it? I can not reproduce it

I can't either, not sure what happened here.

Let's keep an eye on this for a while

I think I may have found the cause (for me at least). It was the extension Auto Rename Tag by Jun Han. I found lines in prettier output that said it couldn't load and parse a JSON in that extension's folder. I disabled it and the WindiCSS extension started to work. And the extension is also working fine now, after enabling Auto Rename Tag.
@eggsy do you also use this extension (Auto Rename Tag)?

Huh? This is weird but it just started working. I don't know if it started working after the last release but I think I've tried it, didn't work. Somehow it works now. I didn't change anything in the config, I also didn't do anything to fix it. I just tried to clone and console.log the JSON.parse then saw there were no errors 😅. It's working now!

It's weird, I didn't fix this either...

Can confirm, once I deactivated the Auto Rename Tag by Jun Han it worked for me again.

https://github.com/windicss/windicss-intellisense/issues/113 has also an issue with Auto Rename Tag.. I am not sure what's going on. But it seems that Extension does change the behavior of our extension a lot ..

it not works for me when i add a windi.config.ts file at root dir of my project, it works when i remove the windi.config.ts file.
// windi.config.ts
import { defineConfig } from 'windicss/helpers'

export default defineConfig({
  darkMode: 'class', // or 'media'
})

@amythos If you have the extension  Auto Rename Tag by Jun Han  installed, disable it.

@DaPotatoMan i don't have the Auto Rename Tag extension

I can confirm that the intellisense stops working when I enabled auto rename tag

@DaPotatoMan i don't have the Auto Rename Tag extension

can you provide reproduction steps please

/cc @windicss/windicss tagging this as need guidance & upstream since it seems that the 3rd party extension Auto Rename Tag, hooks into something.
I truly have no idea how to fix this, or what caused this issue, as far as I can tell, we use native VS Code API, the suggested way.


Feature request: Add "debug" attribute triggered behavior

This is a feature request. I'm testing your component and tried some configuration entries like the sleep_entity and the disable_entity. Maybe you could add an attribute like the active_sensors attribute which tells the user what's the reason a triggered action (e.g. lights turning on) is.
I expect to get the information if the "normal" behavior is triggered, the "sleep" behavior is triggered or nothing is triggered because of the disabled entity. This would make debugging much easier. On my tests I have to look for mutliple entities while I'm running around the house and trigger motion sensors. Maybe it's wise to add a configuration boolean to toggle the information on/off.

Good one. Will add a disabled and sleep attributes in the sensor.

Prolly better have a single attribute called automatic_lights and have it set to either disabled, normal or sleep.
This would require adding trackers to sleep_entity and disable_entity (if set) to update this attribute. Also update_area (called on update_interval) must have a check to update this info as well.
I'm thinking on one function like update_autolight_status which checks both entities and sets the attribute. This way this can be called from both update_area and the tracker callbacks.
(this is mostly a note for myself)

Started working on that on this issue on the branch [feature/automatic-lights-state-attribute](https://github.com/jseidl/hass-magic_areas/tree/feature/automatic-lights-state-attribute). Blindly coded, not tested yet.


[Star Wars Saga Edition] Added Organization section, minor cleanup

Submission Checklist
Required

[x] The pull request title clearly contains the name of the sheet I am editing.
[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).
[x] The pull request makes changes to files in only one sub-folder.
[x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

Changes / Description

Added revealable Organization section
The button for removing attacks will not hide/show the attack information behind it.
Adjusted clickable text to match the area that could be clicked.
Added toggles to the Status button that would include or remove SR and DR.
Changed NPC weapon damage from a phantom placeholder to an actual value.
Removed Pilot from NPC skills (because NPC pilots should always be rolling from the vehicle sheet). Added Acrobatics, Deception, and Persuasion.
Changed "Pilot-operated weapon" checkbox to "Trained in Pilot" and added a sheetworker to only give the bonus if the Pilot position is selected.
Fixed bug that prevented removing the last crew member.

Character Sheet Info Roll20 Internal Use only.


Any plans to fix incompatibility with Rubidium/Oculus?

I'm willing to take a look at it if you don't have the time to do it. It's been an issue for a while now, and it's unfortunately stopping people from using this amazing mod since Rubidium and Oculus is the standard now. Thanks in advance.

same here, would appriciate this fix

same

Guessing this has become abandonware?

You're welcome to give it a go and submit a PR if you'd like. It was always something I intended to get round to but as you say it's just a case of time. I've prioritised porting over feature enhancements/compatibility requests because of this.

I would love a fix as well!
Crash report: https://mclo.gs/lfVEoVQ
Versions

Minecraft: 1.20.1
Forge: 47.3.11
ChunkAnimator: 1.3.7


How to prevent race condition?

I am using LiteDB in a web application.
However, I am having this issue:
I am storing a list of users, and each user has a data usage number. In each request, the user data usage number is loaded from LiteDB, and is increased. But this is my problem: if the client makes many simultaneous requests, the data usage number will be loaded before it is updated, resulting in an incorrect data usage.
To explain again:
In database: [usage: 20]
request 1:

thread 1: server loads usage (is 20)
thread 1: does some processsing (adds 10), does not update user in litedb collection yet
request 2 (happens during request 1's data processing):
thread 2: server loads usage (is 20) <-- This is my problem, I want to lock the user so other requests can't happen until first request processing is done
thread 2: server adds 10
thread 1 saves user (now usage is 30)
thread 2 saves user (now usage is 30)

the problem is that thread 2 doesn't wait for thread 1 to finish, and incorrect final value is stored. I am using NancyFx with async/await requests; each request spawns a new thread.
i am using transactions only when saving the value.
thanks

For each user create seperate table which is like "user_locks" table.
It can have same user issue / username to keep the locks active (do not
delete locks) have 3 fields. Where fields are "read_lock" "write_lock" "id"
Then set read lock when writing and set write lock when reading.  Use a for
loop / do loop or while loop with like 20 retires to access user table by
first reading the user_locks table.
On Jan 6, 2017 2:32 AM, "nictaylr"<EMAIL_ADDRESS>wrote:

I am using LiteDB in a web application.
However, I am having this issue:
I am storing a list of users, and each user has a data usage number. In
each request, the user data usage number is loaded from LiteDB, and is
increased. But this is my problem: if the client makes many simultaneous
requests, the data usage number will be loaded before it is updated,
resulting in an incorrect data usage.
To explain again:
In database: [usage: 20]
request 1:

thread 1: server loads usage (is 20)
thread 1: does some processsing (adds 10), does not update user in
litedb collection yet
request 2 (happens during request 1's data processing):
thread 2: server loads usage (is 20) <-- This is my problem, I want
to lock the user so other requests can't happen until first request
processing is done
thread 2: server adds 10
thread 1 saves user (now usage is 30)
thread 2 saves user (now usage is 30)

the problem is that thread 2 doesn't wait for thread 1 to finish, and
incorrect final value is stored. I am using NancyFx with async/await
requests; each request spawns a new thread.
thanks
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mbdavid/LiteDB/issues/415, or mute the thread
https://github.com/notifications/unsubscribe-auth/AVQ2C-nItbQbwnMpFaXbPwvR3C4vxQvAks5rPYuMgaJpZM4LcSIP
.

Implementing an international lock system will ensure data integrity
against data concurrency issues as you have above(git issue) / below
(email)
On Jan 6, 2017 2:43 AM<EMAIL_ADDRESS>wrote:
For each user create seperate table which is like "user_locks" table.
It can have same user issue / username to keep the locks active (do not
delete locks) have 3 fields. Where fields are "read_lock" "write_lock" "id"
Then set read lock when writing and set write lock when reading.  Use a for
loop / do loop or while loop with like 20 retires to access user table by
first reading the user_locks table.
On Jan 6, 2017 2:32 AM, "nictaylr"<EMAIL_ADDRESS>wrote:
I am using LiteDB in a web application.
However, I am having this issue:
I am storing a list of users, and each user has a data usage number. In
each request, the user data usage number is loaded from LiteDB, and is
increased. But this is my problem: if the client makes many simultaneous
requests, the data usage number will be loaded before it is updated,
resulting in an incorrect data usage.
To explain again:
In database: [usage: 20]
request 1:

thread 1: server loads usage (is 20)
thread 1: does some processsing (adds 10), does not update user in
litedb collection yet
request 2 (happens during request 1's data processing):
thread 2: server loads usage (is 20) <-- This is my problem, I want to
lock the user so other requests can't happen until first request processing
is done
thread 2: server adds 10
thread 1 saves user (now usage is 30)
thread 2 saves user (now usage is 30)

the problem is that thread 2 doesn't wait for thread 1 to finish, and
incorrect final value is stored. I am using NancyFx with async/await
requests; each request spawns a new thread.
thanks
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mbdavid/LiteDB/issues/415, or mute the thread
https://github.com/notifications/unsubscribe-auth/AVQ2C-nItbQbwnMpFaXbPwvR3C4vxQvAks5rPYuMgaJpZM4LcSIP
.

could you please explain in more detail @xX-MLG-Xx

should I store the lock table in a singleton or in the database?

you can use transaction. When you call BegonTrans() you lock your databse in Reserved lock. So, after BeginTrans call your find and than call your update and than commit.
In lastest commit I expose Lock service too.

In LockService you can call :
using(db.Engine.Lock.Reserved())
{
safe zone
}

the problem might be that my operations are very long (20 seconds!), and I want to allow concurrent requests. I don't want the concurrent operations to take so long total

i found helpful resource: http://softwareengineering.stackexchange.com/questions/263726/how-to-prevent-race-conditions-in-a-web-application, I will try to implement and ask if I have issues

This would stop threads from reading writing simultaneously.
His race is due to internal database read write processing within
application and not file read writing
Using a singleton would solve this issue in general but would still require
customer read write lock logic. As the logic for database login only
resides in the actual file system.
On Jan 6, 2017 3:02 AM, "Mauricio David"<EMAIL_ADDRESS>wrote:

you can use transaction. When you call BegonTrans() you lock your databse
in Reserved lock. So, after BeginTrans call your find and than call your
update and than commit.
In lastest commit I expose Lock service too.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mbdavid/LiteDB/issues/415#issuecomment-270803334, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AVQ2CwjaCIO9h4IYkgtRJAHmHBI4j-8Jks5rPZKEgaJpZM4LcSIP
.

Within the database.

Before processing user data from user table for either read (select) or
write (update / insert)
Do check of contents of the values of user_locks table
In structure of example:
Table: users
Id | username | data...
1| Steve | djdjsjs
2 | John | djdbdbdb
3 | most | dhdjsnsn
Table: user_locks
Id | read_lock | write_lock
1 | 0 | 0
2 | 0 | 0
3 | 0 | 0
Program example
To explain again:
In database: [usage: 20]
request 1:

thread 1: server loads usage (is 20)
thread 1: does some processsing (adds 10), does not update user in

litedb collection yet
request 2 (happens during request 1's data processing):

thread 2: server loads usage
thread 2: server adds 10
thread 1 saves user
thread 2 saves user

On each of user data in thread do the following:
When reading user data
Check read_lock
If set to true do a wait loop for x.   seconds then check again
till.   read_lock is false
Set write_lock to true
Read user data.
Do processing
Set write_lock to false
When writing (saving / updating)
Check write_lock
Do wait loop till value is false (same as read_lock logic)
Set read_lock to true
Do update / insert command etc..
Set read_lock to false
On Jan 6, 2017 2:51 AM, "nictaylr"<EMAIL_ADDRESS>wrote:

could you please explain in more detail @xX-MLG-Xx
https://github.com/xX-MLG-Xx
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mbdavid/LiteDB/issues/415#issuecomment-270801691, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AVQ2C80Zs82SF8AlecmV1oiQ7-VYxb9iks5rPY_8gaJpZM4LcSIP
.

Thanks for the great idea! I will try to implement.

Sure :) ;) here to help - LiteDB made with love xD

Yay! Thanks for the design idea! I implemented it like this:
https://github.com/0xFireball/PenguinUpload/blob/quota/PenguinUpload/src/PenguinUpload/Infrastructure/Upload/LocalStorageHandler.cs#L45-L64
https://github.com/0xFireball/PenguinUpload/blob/quota/PenguinUpload/src/PenguinUpload/Infrastructure/Concurrency/UserLock.cs

Rather than using loops @xX-MLG-Xx , I used AutoResetEvent because it does effectively the same thing in a simpler and more scalable way

very helpful suggestion, thanks!

@xX-MLG-Xx Here's my implementation: https://github.com/0xFireball/PenguinUpload/blob/2bede37e349d824d5188d636edfc535ec6c4d58a/PenguinUpload/src/PenguinUpload/Infrastructure/Concurrency/UserLock.cs#L45-L60
Please let me know if I misunderstood you or did anything wrong :)


audio bug?

JRE version: OpenJDK Runtime Environment (17.0.1+12) (build 17.0.1+12)
Summary and ## Steps to reproduce
download https://github.com/Anuken/Mindustry/releases/download/v135/Mindustry.jar
crash on launch
issue with dev
https://github.com/Anuken/Mindustry/issues/6533
"This is caused by a native crash in audio initialization. I did not write the audio backend library, and I can't reproduce this anywhere, so this won't be fixed - unless something happens upstream."
Crash log
https://paste.artixlinux.org/982995bd
crash log is the same for java 17
Please provide a minimal, reproducible example that we can run locally. See
https://stackoverflow.com/help/minimal-reproducible-example for what that means.
A public GitHub repository works best. See
https://github.com/aahlenst/datetimeformatter-parse-bug for a live example.
Expected results
no crash
Actual results
crash
Triaging info
Java version:
Packaged
JRE version: OpenJDK Runtime Environment AdoptOpenJDK (16.0+36) (build 16+36)
Java VM: OpenJDK 64-Bit Server VM AdoptOpenJDK (16+36, mixed mode, tiered, compressed oops, g1 gc, linux-amd64)
repo
openjdk version "17.0.1" 2021-10-19
OpenJDK Runtime Environment (build 17.0.1+12)
OpenJDK 64-Bit Server VM (build 17.0.1+12, mixed mode)
What is your operating system and platform?
"Artix Linux lxqt-openrc
uname: Linux 5.16.1-artix1-1 #1 SMP PREEMPT Sun, 16 Jan 2022 13:15:01 +0000 x86_64
How did you install Java?
Mindustry from itch.io comes with java  https://anuke.itch.io/mindustry
and artix repo manual jre-openjdk
Did it work before?
v126.2 does
Did you test with other Java versions?
Just the packaged 16 and repo 17

We are releasing 17.0.2 this week (or next at the latest) - can you give that a go when it comes out?

And as you probably guessed, 16 is no longer supported :-)

@LargePrime Please try 17.0.3 and reopen if this if its still an issue.


SPUserProfileSyncService - FarmAccount

The FarmAccount parameter of SPUserProfileSyncService is documented as "PARAMETER IS NOT USED ANYMORE, WILL BE REMOVED IN V3.0"; however, the parameter still exists.  Recommend completing parameter removal for v4.0 release.

Closed via PR #1170


[gen_l10n] Exposing tool's options when using l10n.yaml to configure

When running gen_l10n from the command line, there are descriptions for each option that are available to the user. When using l10n.yaml to configure and use the gen_l10n tool, we should still have a good way to share the list of available options with users, as well as descriptions for how to use the tool.

which command line tool?

Sorry, I just clarified in the original comment! I mean when running the gen_l10n tool from the command line

One solution that @HansMuller and I have been discussing would be to have flutter create generate an empty l10n.yaml file in new Flutter applications with comments that describe what each option does. In that case, we'd need the flutter tool to not run the gen_l10n tool when there's an empty l10n.yaml file.
I'd like to solicit alternative solutions as well, but the idea is that we need some way for users to know how to configure the l10n tool that is discoverable. The flaw to the solution presented above is that someone would have to run flutter create to even realize that gen_l10n is configurable thought l10n.yaml, which seems like a problem if you want to use the tool for existing Flutter applications. Another problem would be that these comments could get outdated as the tool itself changes (new options, modifications to existing options).
We (Hans and I) are already in the process of writing a user guide for the tool, but that runs the risk of being outdated too (which is probably fine, any user guide or tutorial runs into this problem).
@jonahwilliams Is there a way to surface the updated list of the gen_l10n tool's help text that is more discoverable through the Flutter tool? Currently, we can do bring up the help text by running dart ${FLUTTER_PATH}/dev/tools/localization/bin/gen_l10n.dart --help.

flutter create is intentionally very minimal. It doesn't include a lot of other feature like assets, desktop layout, dark mode, et cetera. I'm not sure if localization fits. @Hixie as the keeper of the template
I would also not expect that exposing the options through the tool commands to be very discoverable, given that the majority of our users run the tool via IDEs. Perhaps we could add some sort setup localizations command to the tool and work with the IDE teams to expose it ( @devoncarew @DanTup ).
Do we always require at least one arb file for localizations, or can it handle having no inputs? Otherwise adding an l10n.yaml file might break a project.
Have you started on a longer form document on how to use l10n.yaml? Publishing something like that one the website and linking from https://flutter.dev/docs/development/accessibility-and-localization/internationalization seems like the best approach. FYI @sfshaza2

Perhaps we could add some sort setup localizations command to the tool and work with the IDE teams to expose it ( @devoncarew @DanTup ).

We already have a few VS Code commands that just wrap simple shell commands (for ex. flutter doctor and flutter pub outdated), so we could easily do the same to expose it there if it makes sense. Is it just a fixed command, or does it require the user to provide arguments/options?

@jonahwilliams We require at least one arb file for localizations. A user guide has been started already and it includes a section on how to fill out l10n.yaml, so that would probably be a good start.
@DanTup The command requires the user to provide arguments/options. All the options and their descriptions are defined here

@shihaohong we could generate a blank/empty arb file or one with a trival message. Then include l10n.yaml with all options documented and commented out.

We can take inputs from the user, but we can't show dialogs in VS Code so it'd end up being one-step-per-option. It would also mean we'd have to code those options into the editor extension (which may complicate changing them).
Is it feasible to come up with defaults for all of the required options? That would keep the command simple for most people and if they need to deviate they can run the command themselves through the embedded terminal?

In this case, the user would not provide these options via the command line, but with a l10n.yaml file in their project directory. This tool command could generate this file with the options commented out with example values.

Any updates on this? I'm looking for a description of the options available in the l10n.yaml file and haven't found it yet. The link provided above is a 404. In particular I'd like to specify the name of the generate localization class in place of AppLocalizations.

The list of options are here. You can also get the list of options by running flutter gen-l10n --help.

Thanks!


Deeplinks into webkit skin display as plain text

Accessing certain folder name style deeplinks e.g. /calendar/, /emergency/, /hours/, /links/, /map/, /news/, /people/ (and there may be others) in the webkit skin display as a plain text page with no header, footer, or other styling as expected.
This can be seen on WVU at http://m.wvu.edu/links/ by using a device/browser that triggers the webkit skin.
This is not how it is in the basic or touch skins where the header/footer/styling is as expected for that skin.

This is actually an expected behavior :( Because of the way jQTouch works (loading pages via JS) deep links don't get all the headers. If you poke around the master branch in the templates I addressed that issue.


Simplify Packaging

Removes all extras_require from the setup.py and all import related hacks around the codebase.
Remove SQLAlchemy as a possible install target, thus defaulting the app to Peewee.

Motivation
I am removing all of this mess because of the effort to make this code base work without Peewee. In order to effectively do that, I would need to wrap all the Peewee related classes in an if statement. I don't like that at all.
But that did get me thinking about the motivation about this library. This library is supposed to be a repository of shared code for all Croscon projects so that core pieces of infrastructure, like the ArrowDateTimeField, such that when a change is made, it can be pushed out to all Croscon projects without a bunch of copying and pasting. At Croscon, we no longer build apps using SQLAlchemy, so why even support it? Let's default to Peewee for everything and not even think or qualify it.
This does come with one downside: We have to install both Arrow and Pendulum for this library to work. This will add just a little bloat, but I am comfortable with this change in the name of progress and ease of use.
Also, by removing all these extra requires, our Travis CI builds pass in a minute instead of 30.

@nnewman my Vim spazzed out and somehow committed a message from another project (you know the one). I will be squashing this PR so no need to worry.


Kernel 5.10 image does not boot

Hi,
I have tried to get the latest master with Kernel 5.10.x on my iot2050-advanced PG1 running.
With the previous Version (Kernel 4.19.*) my device boots with ti/k3-am6528-iot2050-advanced-oldfw.dtb devicetree. The current master does not provide this device tree anymore. BTW wic/iot2050.wks.in@master still references the *oldfw.dtb.
If I use ti/k3-am6528-iot2050-advanced.dtb from current master the system stops booting (see boot-5.10.log).
I did not update the u-boot so far.
Do I need update my device before using the current master?
Any help appreciated...

Yes, as the warning issued during build tells you: Only the not-yet-released new firmware allows to boot the 5.10 kernel. Current firmware requires 4.19 still.
Thanks for noting the oldfw.dtb left-over. We'll clean this up.

Are you planing to support the old firmware (is firmware equal to u-boot?) in future? Or will the new kernel be a breaking change forever.

TI changed the ABI of the sysfw (system management firmware), and we have to follow in that path. So: yes, we are breaking support for older firmware.
The 4.19 kernel was a special beast that supported both the old and the new sysfw, but this cannot be maintained when moving to the upstream kernel which we do with 5.10+. Except for the Ethernet driver, the IOT2050 is now fully supported by the upstream kernel - but only with new firmware.


zanshin: 0.3.1 -> 0.4.1

Motivation for this change
Update zanshin to 0.4.1 which uses QT5/KF5
Resolves #22964
Things done

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

[X] NixOS
[ ] macOS
[ ] Linux

[ ] 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 nox --run "nox-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[X] Fits CONTRIBUTING.md.

Thanks!


Handle macOS CLT --show-sdk-platform-path issues

We have been seeing this issue for a while when using SwiftPM from the CommandLineTools package:
❯ /usr/bin/xcrun --sdk macosx --show-sdk-platform-path
xcrun: error: unable to lookup item 'PlatformPath' from command line tools installation
xcrun: error: unable to lookup item 'PlatformPath' in SDK '/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk'

This changes SwiftPM to handle this gracefully during builds (a warning gets emitted) and to fail properly when running swift test.
rdar://107479428

@swift-ci please test

@swift-ci please test

From the Windows build:

This run spent 2 hr 28 min waiting in the queue.

😞

Looks like the Windows build succeeded now, but the status on GH hasn't been updated.

I guess there's a few minute delay, it looks green now.


🌱 Replicating SyncTarget-related rbac and logicalclusters objects

Summary
The SyncTarget-related cluster roles and cluster role bindings, as well as logical clusters, should be replicated in order to have the Syncer virtual workspace work correctly.
Related issue(s)
This is a split of PR https://github.com/kcp-dev/kcp/pull/2675

/test e2e-sharded

Just remove the api-changed label since the changes initially done to the API have been removed, since they were finally unnecessary.

/test e2e-shared

/test e2e-shared

/test e2e-shared

/lgtm

/approve


Adding users in Support for Claim funding for mentors

Posts:

Managing organisation users in Support
Managing support users

 Adding users in support


Migrate freeCodeCamp/strip-comments to TypeScript

It would be helpful if we provided declaration files for anyone wanting to use this in a TypeScript project.  This should be something we can do automatically via https://www.typescriptlang.org/tsconfig#declaration
Most of the work has already been done in https://github.com/freeCodeCamp/curriculum-helpers/pull/46, but those changes will need reimplementing here.

(moved to the main repo for visibility)

I want to work on this.

Hey @ojeytonwilliams it looks like the strip-comments repo has been migrated to TS. Can this issue be closed now?

@Nirajn2311 we're most of the way there, but we still need to bundle up the source so it can be consumed in all the places it needs to be (TS, node, browser)


increases app size greatly

Adding dependency increases app size greatly (from 4 mb to 20.6 mb) .
How to reduce it?

Read this section https://github.com/barteksc/AndroidPdfViewer#why-resulting-apk-is-so-big
;)

You can have a look at this PDF viewer if you want to keep down the size. It can publish as a PhoneGap app so it may be an alternative:
https://flowpaper.com/demo/


trying to FORCE delete a pod fails with Error deleting converting (url.Values) to (v1.DeleteOptions): unknown conversion

while delete without forcing works as expected
K8s v1.21.1 (Scaleway Kubernetes Kapsule)
Rancher v2.5.8

gz#17810

same
K3Sv1.20.6+k3s1
rancher v2.5.8

Same. works with kubectl but not in UI.

Same here with Rancher 2.5.8 and 2.5.7 on RKE1 Downstream Clusters. Works via kubectl.

Reproduced with Rancher 2.5.7. Thanks for the workaround, we will apply that.

Can confirm. Rancher 2.5.8, Single Install (using k3s in the background).

Your kubelet must have issue, try restart it

Your kubelet must have issue, try restart it

That is a thoughtful, very profound answer.
No, seriously, I very much doubt it. Because via the CLI it works without any problems. The problem exists only in the UI.

Issue still persists with Rancher 2.5.9 and k8s v1.20.6

I am hoping that this can be addressed with 2.6 upgrade :crossed_fingers:
Still seeing in:
Rancher | v2.5.9
User Interface | v2.5.9
Helm | v2.16.8-rancher1
Machine | v0.15.0-rancher55

Looks like force delete is no longer a thing in 2.6.

rancher wechat group

Looks like force delete is no longer a thing in 2.6.

lol. They just removed the "force" option to fix that?

I have filed a PR to fix this issue.
A fix for 2.5 is required, 2.6 is optional(as we don’t use Norman API to manage the k8s resources).
Hope that we can merge it to the next v2.5.x milestone.

:white_check_mark: PASSED
Reproduction Environment

Component
Version / Type

Rancher version
2.5.10

Installation option
docker

Cert Details
self signed

Helm version
v2.16.8-rancher1

Downstream cluster type
rke1 linode

Downstream K8s version
v1.20.11

Logged in user role
administrator

Browser type
google chrome

Browser version
102.0.5005.115

Reproduction steps

Create a downstream cluster
Create a deployment
Force delete a pod from the deployment
Receive the following error:

Error deleting
converting (url.Values) to (v1.DeleteOptions): unknown conversion

RESULTS
:white_check_mark: Expected
Force delete to remove the pod
:x: Actual
Pod was not deleted and an error message was displayed

Validation Environment

Component
Version / Type

Rancher version
v2.6-a8ae635611f1fb431f81f48ec19997fbc17c746f-head

Rancher commit link
https://github.com/rancher/rancher/commit/a8ae635611f1fb431f81f48ec19997fbc17c746f

Installation option
helm

RKE binary version used
1.3.11

If Helm Chart k8s cluster
rke v1.23.6

Cert Details
let's encrypt

Docker version
20.10.7, build f0df350

Helm version
v2.16.8-rancher1

Downstream cluster type
rke1 linode

Downstream K8s version
v1.23.7

Cert manager version
v1.7.1

Auth Provider
github

Logged in user role
administrator

Browser type
google chrome

Browser version
102.0.5005.115

Validation steps

Create a downstream cluster
Create a deployment
Force delete a pod from the deployment from /g
Deletion is successful with no errors

Additional Info
RESULTS
:white_check_mark: Expected
Deletion to work without errors
:white_check_mark: Actual
Deletion worked without errors


Fix bad link

By an aggressive way

Thanks for your contribution, but the source code of Weex's website has moved to https://github.com/apache/incubator-weex-site . The doc/ here will be removed when the new website is ready.

co apache/incubator-weex-site#22
you can close this PR if it's better to be.

@W4anD0eR96 I can't close it, only you can close it on GitHub.

@Hanks10100 Oops, I thought you had commit bits of this repo :stuck_out_tongue_closed_eyes:
I'll leave it open until apache/incubator-weex-site#22 be resolved


fix/load hypercerts from root

Remix gives us the useRouteLoaderData hook to pull data into a route (_index.tsx) that was loaded in a different one (impact-reports.tsx). But because impact-reports route is never actually hit, the api is not called and data is not loaded. Proposed solution is to move HC loading into root.tsx as that route is always active. In this branch _index.tsx is able to display all contents of the updated Report object.  🥳 🙏 thank you @baumstern

thanks, just a few suggestions:

it's okay to overlook the failing test, they've removed in #10.  @thebeyondr and me had a call and decided to keep only the test against server functionality

it seems like loader is designed to be part of each route, providing data to the route component (https://remix.run/docs/en/main/discussion/data-flow#route-loader). A good practice would be to defineloader directly within app/routes/_index.tsx.  Then, you can use the useLoaderData hook to access the loader data from your component

I think PR should be opened against main branch

it seems like loader is designed to be part of each route, providing data to the route component (https://remix.run/docs/en/main/discussion/data-flow#route-loader). A good practice would be to define loader directly within app/routes/_index.tsx. Then, you can use the useLoaderData hook to access the loader data from your component

@baumstern right, each route can have its own loader. maybe i misunderstood but i thought we were trying to load HC data independently of _index.tsx and allow multiple routes to use it. but yeah it can also be moved into _index.tsx and other routes can retrieve from there. @thebeyondr seems this is a consideration for caching approach?

2. it seems like loader is designed to be part of each route, providing data to the route component (https://remix.run/docs/en/main/discussion/data-flow#route-loader). A good practice would be to defineloader directly within app/routes/_index.tsx.  Then, you can use the useLoaderData hook to access the loader data from your component

A loader can be in a route, and when it is, any useLoaderData hook can reference any other loader via the route its in! So I can have a loader in /cats and in /vets i can still use the data from the cat loader with useLoaderData("cats")!

seems your commit failed a check, please investigate it

@thebeyondr  as daehyun noted above, the test has been removed in #10.
i was working from the backend branch, which i guess was not updated with latest changes to the PR..
how should i access the current branch of the PR to work from?

I see. The backend branch is new to me. You may be better served keeping up with the main branch if you're uncertain. The hc stuff has not been merged into main yet. You may follow the progress here: https://github.com/VoiceDeck/app/pull/10

yes i have been following the PR. but i don't understand how i can work from it, other than cloning the fork and branching from there. which seems like something we would want to avoid??

I don't usually work from PRs as they are volatile. In this case, I'd wait until merges are complete or I've spoken to the person responsible for the pr for a timeline for merging their work so I can do mine

ok. but as i am being asked to review and approve the contents of #10, i was trying to see if i could get it to deliver the data it is supposed to be retrieving.

Gotcha. That context was entirely lost on me as this PR seems to be proposing a use for what is in https://github.com/VoiceDeck/app/pull/10, not a test of its functionality.

If you're trying to review a PR or update the existing feature being proposed, vscode/cursor allows you to pull PRs and the github cli offers a command for it.

yes i was trying to suggest updates to the existing feature because i don't think the impact-reports route can share its data with another route as it is currently implemented. i can try again after it is merged as it seems ready otherwise.
this is pretty cool ✨✨ vsCode extension for github PRs

@CJ-Rose @baumstern thinking more about this and I think the loader should be moved to the _index route. The return of /impact-reports yield all reports, something not needed for /reports/:id.
While the implementation is allowed in Remix, I don't think its right for our use case.

PR #10 has been merged into the main, so we no longer need the backend branch. Could you please rebase this PR on the latest main branch and change the target branch from backend to main? @CJ-Rose
You can use this commands to rebase PR:
git fetch
git switch fix/load-HC-from-root
git reset --hard 0f21312
git cherry-pick 83cfed2074378863378269a63e1a0a7dd7c0415a

@baumstern @thebeyondr closing this PR and removing backend and fix/load-HC-from-root branches. will make a fresh  branch to move loader for all reports into _index route.


Overlays initially require online viewing

Describe the bug
I have saved maps for offline use with multiple levels of tiles. If I convert my offline map to an overlay, when I try to view the overlay it does not maintain the high-res tiles.
If I am offline the first time I view the overlays, there is no detail even after zooming in.
If I view the overlays while online I am able to zoom in and access the higher-res tiles. I can then switch to offline and view the overlay at all scales.
To Reproduce
Are you able to reproduce the problem in a new project after restarting the app?
Yes/No
No
Steps to reproduce the behavior:
View all overlays online at all zoom levels prior to working offline. (This takes a long time)
Expected behavior
Ideally, maps saved for offline use should be capable of being activated as overlays while away from internet access. All layers of maps saved for offline use should be accessible if user chooses to view as an overlay while in the field.
Screenshots
Initial view of map in offline mode. (Map has been saved for offline use at multiple scales)

Note this is an overlay based on an offline map titled Dhor_Initial.

Offline view of overlay after viewing it in online mode.

Smartphone (please complete the following information):

Device: iPad pro 11 inch
OS: 14.7.1
StraboSpot Version 1.8.1

Additional context
Add any other context about the problem here.

@andrewkrh We have updated and fixed the issue in 1.9.0.  Currently if you want to use an overlay offline you must download the custom map as a basemap then switch it to an overlay.  Downloading the map as an overlay directly is not yet functional.


Fix Issue 15461 - std.stdio.File ctor that accepts FILE* should not be hidden

From my cursory investigation there's no cross-platform way to tell from a FILE* what its name is, or to tell if it's still open.

Wait, I just saw wrapFile exists. *sigh*

Then improve the documentation?

It's more a problem of I missed it initally because Sublime Text mis-parses the comments in std.stdio


MInor stimpack physicalDesc fix

About the PR

Media

[ ] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:

fix: Fixed Stimulants physical description

reagant-physical-desc-energizing does not seem to exist either


Bug 2105992: Fix batch timeout calculation units (and add unit tests)

The reference timeout units were incorrectly referred to as seconds instead of as minutes in the solution for CNF-5294. This fixes that, and also adds a number of unit tests that validate the new behaviour performs as intended.

/bz refresh

Maybe move this function to utils?

Completed in latest commit

/cherrypick 4.11

/cherrypick 4.10

/cherrypick release-4.11

/cherrypick release-4.10


API for validating user buffers + x86 implementation

Declares common API for validating buffers passed in from user-space.
Existing buffer validation API for x86 modified to conform to this interface and fix some issues.

New patch changes the documentation to match the code, instead of the other way around.


Try reconnecting websocket connection when drops

When websocket connection drops it reconnects and goes back to the home page. It's a bit simplistic, but at least gives the user a feedback and then reconnects automatically.

Did you refresh the header files? It says it has conflicts.

Thank you @omersiar I have again some time to spend on esp-rfid :)


[all] adding CircleCI configuration file

At the moment there is only TravisCI configuration file. Adding those for CircleCI would be fairly easy to do and Jose said it could be a nice addition to the project.
I am willing to do it if welcomed. In the case I need to merge on all projects, do I need to create a PR for each or one would be enough for the merge-master to pass it on the others?

todo-mvp is enough. It'll get merged at some point.
Thanks for volunteering! However I don't think it's a good idea to have both at the same time building and unit testing. I guess we can enable one and disable the other for tests. Any idea?

We could just add those circle.yml without actually linking the project to circle.com?

Since we know the Travis CI config works, I would disable Travis and try out circle for now, with just build and unit test. When we have Firebase Test Lab we'll add UI tests.
(Where you at the Devfest in Tokyo last Sunday?)

I'll add the circle.yml soon then, thank you.
(yes)

Seems legit to at least give a try and Tested y Firebase
(7th November we're at Berlin's Devfest ,happy for meetup dudes!)

I'll be happy to set up Firebase Test Lab as well when possible.

@oldergod I've got the service account ready. Please comment on #229 if you have any experience with that.

In all honesty, I have yet to play with Firebase Test Lab. It is something I will study anyway at work this month so I will have plenty of time to improve the process up to a satisfactory level.

Continued in https://github.com/googlesamples/android-architecture/pull/230


AvaloniaPropertyChangedEventArgs can be a struct

Like its corresponding WPF type, AvaloniaPropertyChangedEventArgs can be a struct to reduce memory allocations.
Avalonia runs fine with this change.

Might as well be a readonly struct, so it could be passed by reference. That would reduce copying.

AvaloniaPropertyChangedEventArgs has a memory footprint of 40 bytes. My guess is that at this size, copying could still be faster than passing by reference.

We might want to benchmark this, but readonly struct is a valid argument anyway since it also prevents defensive copies. And semantically events should be immutable.


65816 support (SNES)

Hi,
For now there is no support of 65816 processor. It would be great to add it.

I've started to work on it.  I'll post a link once the basics are in place.

Any progress on this?  I'm happy to help contribute.  I'm interested in using it for Apple IIgs binaries.

I had got it to the stage where it might be useful for disassembly only, but the data flow analysis would certainly be wrong.  I'm now in the middle of re-working it for correct data flow -- it's in a bit of an ugly state at the moment, but I'm getting there.

Hokay, the initial release is available at https://github.com/achan1989/ghidra-65816 :)
Please not that it's at an early stage. It probably has some bugs, and it might not be as easy to use as it could be.  I'd recommend checking out the readme.
Feedback is welcome!

We may implement new processors and variants via pull-requests but we aren't planning on specifically incorporating the 65816 at this time.

"completed"


Add support for HTML5 Form target attribute

Feature Addition: Support of HTML5 Form Target Attribute
https://developer.mozilla.org/en/docs/Web/HTML/Element/form#attr-target
I think this is how supporting this feature would be accomplished.
I'm hoping that @maraujop will check it over and ensure I've not missed anything.

Current coverage is 96.23%

Merging #508 into dev will decrease coverage by -0.08% as of f6080ae

@@              dev    #508   diff @@
=====================================
  Files          23      23
  Stmts        2281    2284     +3
  Branches      206     207     +1
  Methods         0       0
=====================================
+ Hit          2197    2198     +1
- Partial        35      36     +1
- Missed         49      50     +1

Review entire Coverage Diff as of f6080ae

Powered by Codecov. Updated on successful CI builds.

@savingschampion Thanks for the suggestion. I'm going to judge this Out of Scope at the moment — first priority is reducing the number of outstanding tickets before adding new features.
If you need this you can already use the attrs on the FormHelper.
It may be that we can revisit this at a future point. A successful PR would require test coverage and documentation.

Ok, that's fair enough


Implemented #320.

Added buffer class that supports mqtt::string_view compatible
behavior and life keekping mechanism (optional).
Callback functions for users hold receive buffer directly via
buffer.
Removed *_ref properties. Ref or not ref is hidden by buffer.
Added ""_mb user defined literals for buffer.
Added boost type_erasure.
mqtt::socket is type erased socket. It covers tcp, tls, ws, and wss.
Compile times become faster.
Replaced static_cast with boost::numeric_cast if overflow could happen.
Removed redundant static_cast.
Implemented efficient shared_ptr_array allocation.
If use boost (default), then use boost::make_shared<char[]>(size).
If user defines MQTT_STD_SHARED_PTR_ARRAY,
if __cplusplus is greater than 201703L (means C++20 or later),
then std::make_shared<char[]>(size),
otherwise std::shared_ptr<char[]>(new size)
is called.

Codecov Report

Merging #339 into master will increase coverage by 0.56%.
The diff coverage is 73.51%.

@@            Coverage Diff             @@
##           master     #339      +/-   ##
==========================================
+ Coverage   85.53%   86.09%   +0.56%
==========================================
  Files          34       37       +3
  Lines        4889     6237    +1348
==========================================
+ Hits         4182     5370    +1188
- Misses        707      867     +160

I believe that I replied all of your comments.
Before I update the code, could you check my comments?

I think there may have been several places where comments were hidden that you did not see.
I pointed out 2 of them, but there were multiple that I didn't see any response from you.

I just pushed the commit that fixes all of codes that I commented "done(just my memo, not pushed yet).".

Ok.
Do you think it's ready to submit now?
Should I go through it one more time?

I believe that it is ready to merge now.
But if you have time, could you check the PR once more?

I will check it once more right now.
It will take approximately 1 hr.
Can we merge in approximately 1hr, if I don't see any problems?

Sounds good. Thank you very much!

I have reviewed all files except endpoint.hpp.
I am reviewing endpoint.hpp now.

I've reviewed about 2/3 of endpoint.hpp, and haven't seen any major problems.
I think i'm going to stop now, I ran out of time.
I think this pull request can be merged when you've reviewed my comments from the last hour.

Also, did you notice that the PR does not think that changes to .travis.yaml were reverted?

Also, did you notice that the PR does not think that changes to .travis.yaml were reverted?

It should be reverted to trusty. I made a mistake to remove that commit. I will fix it.

Looking good!


Batch 1 Story 1 Entertainment

Vertical - Entertainment
Design - https://www.figma.com/file/majSgyyvvfncHgLZHFKy8e/Stories---Template-Batch-1?node-id=6500%3A179
Asset Folder - https://drive.google.com/drive/folders/1JbzxnaBq45JQhviqIVtoQEj1vFF_XDJn

Image Mapping for Batch 1 Story 1 - Entertainment

In WP
In Drive

batch1_entertainment_screen1
batch1_entertainment_page1_bg

batch1_entertainment_screen2
batch1_entertainment_page2_bg

batch1_entertainment_screen3
batch1_entertainment_page3

batch1_entertainment_screen4
batch1_entertainment_page4_bg

batch1_entertainment_screen5_image1
batch1_entertainment_page5_image1

batch1_entertainment_screen5_image2
batch1_entertainment_page5_image2

batch1_entertainment_screen6
batch1_entertainment_page6_bg

batch1_entertainment_screen7
batch1_entertainment_page7

batch1_entertainment_screen8
batch1_entertainment_page8_bg

batch1_entertainment_screen9
batch1_entertainment_page9_bg

batch1_entertainment_screen10
batch1_entertainment_page10

batch1_entertainment_screen11
batch1_entertainment_page11_bg

batch1_entertainment_screen12
batch1_entertainment_page12_bg

batch1_entertainment_screen13_image1
batch1_entertainment_page13_image1

batch1_entertainment_screen13_image2
batch1_entertainment_page13_image2

batch1_entertainment_screen14_image1
batch1_entertainment_page14_image1

batch1_entertainment_screen14_image2
batch1_entertainment_page14_image2

@divyarajmasani Below images has flattened and been uploaded as there was a linear issue.

https://drive.google.com/file/d/1x6Uum4HB0r3QrQlpbqGRfUbtfShIdE_j/view?usp=sharing
https://drive.google.com/file/d/1xYsJqfYqwOScqQd87zXsFxISJywvIlyl/view?usp=sharing
https://drive.google.com/file/d/1m4M_APMuWN566IeFdTrAMsIwm1OZ4eLr/view?usp=sharing


Dashboard colors - json not working

Instructions on how to specify consistent colors on a dashboard are here:
https://superset.incubator.apache.org/faq.html#is-there-a-way-to-force-the-use-specific-colors
However, doesn't work and gets overwritten on dashboard refresh.
https://superset.incubator.apache.org/faq.html#is-there-a-way-to-force-the-use-specific-colors

Make sure these boxes are checked before submitting your issue - thank you!

[ ] I have checked the superset logs for python stacktraces and included it here as text if there are any.
[ ] I have reproduced the issue with at least the latest released version of superset.
[ ] I have checked the issue tracker for the same issue and I haven't found one similar.

Superset version
Expected results
Actual results
Steps to reproduce

I am having the same issue and consistently getting 'NoneType' object has no attribute 'strip' when trying to edit dashboard JSON Metadata that was previously valid--specifically I'm adding a "label_colors" object.

Fixed by https://github.com/apache/incubator-superset/pull/7027


Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) in 0075_populate_latest_revision_and_revision_object_str

Issue Summary
When migrating a django project (on a fresh db) that uses mariadb:10 with  --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci, the migration 0075_populate_latest_revision_and_revision_object_str of wagtailcore fails with the following traceback. I unfortunately failed to find out which two were the offending fields. I also couldn't find any db settings to make the migration pass anyway
File "/app/.venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 89, in _execute
    return self.cursor.execute(sql, params)
  File "/app/.venv/lib/python3.8/site-packages/django/db/backends/mysql/base.py", line 75, in execute
    return self.cursor.execute(query, args)
  File "/app/.venv/lib/python3.8/site-packages/MySQLdb/cursors.py", line 206, in execute
    res = self._query(query)
  File "/app/.venv/lib/python3.8/site-packages/MySQLdb/cursors.py", line 319, in _query
    db.query(q)
  File "/app/.venv/lib/python3.8/site-packages/MySQLdb/connections.py", line 254, in query
    _mysql.connection.query(self, query)
MySQLdb.OperationalError: (1267, "Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='")

The above exception was the direct cause of the following exception:
The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "./manage.py", line 27, in <module>
    main()
  File "./manage.py", line 23, in main
    execute_from_command_line(sys.argv)
  File "/app/.venv/lib/python3.8/site-packages/django/core/management/__init__.py", line 446, in execute_from_command_line
    utility.execute()
  File "/app/.venv/lib/python3.8/site-packages/django/core/management/__init__.py", line 440, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/app/.venv/lib/python3.8/site-packages/django/core/management/base.py", line 402, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/app/.venv/lib/python3.8/site-packages/django/core/management/base.py", line 448, in execute
    output = self.handle(*args, **options)
  File "/app/.venv/lib/python3.8/site-packages/django/core/management/base.py", line 96, in wrapped
    res = handle_func(*args, **kwargs)
  File "/app/.venv/lib/python3.8/site-packages/django/core/management/commands/migrate.py", line 349, in handle
    post_migrate_state = executor.migrate(
  File "/app/.venv/lib/python3.8/site-packages/django/db/migrations/executor.py", line 135, in migrate
    state = self._migrate_all_forwards(
  File "/app/.venv/lib/python3.8/site-packages/django/db/migrations/executor.py", line 167, in _migrate_all_forwards
    state = self.apply_migration(
  File "/app/.venv/lib/python3.8/site-packages/django/db/migrations/executor.py", line 252, in apply_migration
    state = migration.apply(state, schema_editor)
  File "/app/.venv/lib/python3.8/site-packages/django/db/migrations/migration.py", line 125, in apply
    operation.database_forwards(
  File "/app/.venv/lib/python3.8/site-packages/django/db/migrations/operations/special.py", line 193, in database_forwards
    self.code(from_state.apps, schema_editor)
  File "/app/.venv/lib/python3.8/site-packages/wagtail/migrations/0075_populate_latest_revision_and_revision_object_str.py", line 18, in populate_latest_revision
    Page.objects.all().update(latest_revision_id=latest_revision_id)
  File "/app/.venv/lib/python3.8/site-packages/django/db/models/query.py", line 1190, in update
    rows = query.get_compiler(self.db).execute_sql(CURSOR)
  File "/app/.venv/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 1822, in execute_sql
    cursor = super().execute_sql(result_type)
  File "/app/.venv/lib/python3.8/site-packages/django/db/models/sql/compiler.py", line 1398, in execute_sql
    cursor.execute(sql, params)
  File "/app/.venv/lib/python3.8/site-packages/sentry_sdk/integrations/django/__init__.py", line 562, in execute
    return real_execute(self, sql, params)
  File "/app/.venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 67, in execute
    return self._execute_with_wrappers(
  File "/app/.venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 80, in _execute_with_wrappers
    return executor(sql, params, many, context)
  File "/app/.venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 89, in _execute
    return self.cursor.execute(sql, params)
  File "/app/.venv/lib/python3.8/site-packages/django/db/utils.py", line 91, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/app/.venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 89, in _execute
    return self.cursor.execute(sql, params)
  File "/app/.venv/lib/python3.8/site-packages/django/db/backends/mysql/base.py", line 75, in execute
    return self.cursor.execute(query, args)
  File "/app/.venv/lib/python3.8/site-packages/MySQLdb/cursors.py", line 206, in execute
    res = self._query(query)
  File "/app/.venv/lib/python3.8/site-packages/MySQLdb/cursors.py", line 319, in _query
    db.query(q)
  File "/app/.venv/lib/python3.8/site-packages/MySQLdb/connections.py", line 254, in query
    _mysql.connection.query(self, query)
django.db.utils.OperationalError: (1267, "Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='")

Steps to Reproduce

Start a mariadb:10 docker container with --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
git clone https://github.com/meine-stadt-transparent/meine-stadt-transparent
cd meine-stadt-transparent
git checkout 7af8a4ee514c8d19fc7b54ca41ae372c8fe8eede
poetry install # tested with poetry==1.2.2
./manage.py migrate wagtailcore

Any other relevant information. For example, why do you consider this a bug and what did you expect to happen instead?

I have confirmed that this issue can be reproduced as described on a fresh Wagtail project: Unfortunately, I failed to reproduce this with a fresh project. I think it needs the previous migrations to cause the bug. It happens with a completely fresh database when only migrating wagtailcore though

Technical details

Python version: Run python --version. python:3.8 docker container
Django version: Look in your requirements.txt, or run pip show django | grep Version. 4.1.2 (in poetry.lock)
Wagtail version: Look at the bottom of the Settings menu in the Wagtail admin, or run pip show wagtail | grep Version:. 4.0.2 (in poetry.lock)
Browser version: n/a

So technically this is not a bug in Wagtail, but it is related to some very specific behavior of MySQL and in particular, mysqlclient.
I'm working on a PR that will add an option to mysqlclient to fix this behavior.
https://github.com/PyMySQL/mysqlclient/issues/563

@vsalvino Does this mean it would be reasonable to close this issue? Or are we looking at implementing a workaround on the Wagtail side as well as addressing it in mysqlclient?

I don't think any action is necessary in Wagtail. Wagtail is using legal Django/SQL syntax.
However it would be worth adding a note to the docs, if and when mysqlclient accepts the change. I am planning to add such a note to both Wagtail and Django docs whenever the patch is released in mysqlclient.
It may be useful to temporarily add a note to the Wagtail 4 upgrade considerations, as this behavior will affect a large portion of MySQL users.

Writing this in pure Python, using query-in-loop rather than a subquery, would be a workable workaround, right? I understand the performance would be worse, but it would at least allow users to move forward. Perhaps this workaround could be put into the except clause that catches this specific OperationalError?

The offending query involves using a CAST, which requires a specific character set and collation. If the character set and collation is omitted from the CAST statement (which is how the Django ORM generates it - rightfully so as the ORM is not aware of collations), the connection default is used. Due to a behavior of mysqlclient, it always sets the character set when connecting... but not the collation... which means the collation falls back to the hard-coded default in MySQL/MariaDB - not the value set as the server default.

CharField/TextField have a db_collation parameter, I wonder if that also works when used in a Cast()?
If so, maybe we could use Cast() to force both the left-hand-side and right-hand-side to use the same collation, if schema_editor.connection.vendor == "mysql"?

I don't think setting db_collation would help. In this case, we have two tables/columns which are both using the exact same collation. However the connection is using an entire different and incorrect collation. The CAST statement uses the connection's collation, not the table's/column's. This is a documented behavior of MySQL and MariaDB. The Django ORM does not add custom collation or charset args to the CAST statement, even if you set db_collation on the fields.
The only workaround is to not use a Cast statement in Django, or to use my patch to mysqlclient which correctly sets the collation of the connection. If you have the rare setup where your tables/columns are intentionally using different collations, then there would be no possible way to use the Cast statement in Django between those columns.
I have not been able to get a response from the maintainer of mysqlclient.

I had thought (hoped) that managing to get past the migration stage with manual effort would be a workable workaround but I'm afraid it isn't. There's also a lot of usage of this function in the live (non-migration) code. As of today:
$ find -name "*.py" | x grep 'from django.db.models.functions import.*Cast'
./wagtail/blocks/migrations/migrate_operation.py:from django.db.models.functions import Cast
./wagtail/tests/streamfield_migrations/test_migrations.py:from django.db.models.functions import Cast
./wagtail/admin/views/generic/models.py:from django.db.models.functions import Cast
./wagtail/models/__init__.py:from django.db.models.functions import Cast, Concat, Substr
./wagtail/migrations/0075_populate_latest_revision_and_revision_object_str.py:from django.db.models.functions import Cast
./wagtail/migrations/0071_populate_revision_content_type.py:from django.db.models.functions import Cast
./wagtail/query.py:from django.db.models.functions import Cast, Length, Substr
./wagtail/search/backends/database/postgres/postgres.py:from django.db.models.functions import Cast, Length
./wagtail/search/backends/database/sqlite/sqlite.py:from django.db.models.functions import Cast, Length
./wagtail/search/models.py:from django.db.models.functions import Cast

Just to note that the use of Cast in wagtail/search/models.py has been there since 2.15 - so if Cast in itself is a problem, then this potentially spans more than just 4.0 (and so a note in the 4.0 release notes may not be sufficient).

Just to note that the use of Cast in wagtail/search/models.py has been there since 2.15

True, but in https://github.com/wagtail/wagtail/pull/8441 there has been a great number of added Cast usages.

We're using a connection_created signal receiver to work around this issue without downgrading or patching mysqlclient.
This executes after the problem SET NAMES statement mentioned in @vsalvino's PR.
@receiver(connection_created)
def connection_created_set_collation_connection(sender, connection, **kwargs):
    if connection.vendor != 'mysql':
        return
    with connection.cursor() as cursor:
        cursor.execute('SET collation_connection = utf8mb4_unicode_ci')

Update: we have published a fork of mysqlclient to PyPI that fixes this problem. We are also going to start shipping this fork by default on CodeRed Cloud to prevent the creation of broken Wagtail sites ad infinitum.
https://pypi.org/project/mysqlclient-collate/

Update: the fix for this was added to mysqlclient==2.2.0. Please use that version, and set the appropriate charset and collation parameters.
pip install mysqlclient>=2.2

# settings.py

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.mysql",
        "HOST": "",
        "NAME": "",
        "USER": "",
        "PASSWORD": "",
        "OPTIONS": {
            "charset": "utf8mb4",
            "collation": "utf8mb4_unicode_ci",
        },
    }

This issue can probably be closed now.


VLO healthcheck report obsolete

Number of records in vlo is 1091 (we have 1139 items in our repository).
The records were harvested at Thu Oct 2 12:46:05 2014.
It contains 0 errors.

the correct URL is
http://catalog.clarin.eu/oai-harvester/LINDAT_CLARIN_digital_library_at_Institute_of_Formal_and_Applied_Linguistics_Charles_University_in_Prague.html
where we have 1139 records.

the url changes whenever we change description. Maybe the checker should take that into account. Anyway I'm wondering how the parsing haven't broken yet, in my opinion it should have. few more comments to the code will be useful...


fix: delete user and his inventory by userId

Change goal: Adaptacija Backend
Database change: /

:tada: This issue has been resolved in version 1.8.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Marks local imports as "missing"

 Environment data

Language Server version: 2024.7.1
OS and version: win32 x64
Python version (and distribution if applicable, e.g. Anaconda):  3.12.1, pip
python.analysis.indexing: true
python.analysis.typeCheckingMode: off

 Code Snippet

import lib.audio as aud

 Repro Steps

Write a local import

 Expected behavior
Pylance accepts the import and shows auto-complete
 Actual behavior
Pylance marks the import as "missing"
 Logs

2024-07-21 09:37:57.495 [info] (Client) Pylance async client (2024.7.1) started with python extension (2024.10.0)
2024-07-21 09:37:58.517 [info] [Info  - 9:37:58 AM] (12860) Pylance language server 2024.7.1 (pyright version 1.1.369, commit 1168be71) starting
2024-07-21 09:37:58.517 [info] [Info  - 9:37:58 AM] (12860) Server root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist
2024-07-21 09:37:58.529 [info] [Info  - 9:37:58 AM] (12860) Starting service instance "speedtimer"
2024-07-21 09:37:58.537 [info] [Info  - 9:37:58 AM] (12860) Starting service instance "PyPlay"
2024-07-21 09:37:58.539 [info] [Info  - 9:37:58 AM] (12860) Starting service instance "languagenutCheat"
2024-07-21 09:37:58.542 [info] [Info  - 9:37:58 AM] (12860) Starting service instance "gg8lib"
2024-07-21 09:37:58.543 [info] [Info  - 9:37:58 AM] (12860) Starting service instance "testthing"
2024-07-21 09:37:58.545 [info] [Info  - 9:37:58 AM] (12860) Starting service instance "homebrew"
2024-07-21 09:37:59.487 [info] [Info  - 9:37:59 AM] (12860) Background analysis(3) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist
2024-07-21 09:37:59.487 [info] [Info  - 9:37:59 AM] (12860) Background analysis(3) started
2024-07-21 09:37:59.487 [info] [Info  - 9:37:59 AM] (12860) Background analysis(4) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist
2024-07-21 09:37:59.488 [info] [Info  - 9:37:59 AM] (12860) Background analysis(5) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist
2024-07-21 09:37:59.488 [info] [Info  - 9:37:59 AM] (12860) Background analysis(4) started
2024-07-21 09:37:59.496 [info] [Info  - 9:37:59 AM] (12860) Background analysis(5) started
2024-07-21 09:37:59.497 [info] [Info  - 9:37:59 AM] (12860) Background analysis(6) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist
2024-07-21 09:37:59.497 [info] [Info  - 9:37:59 AM] (12860) Background analysis(6) started
2024-07-21 09:37:59.504 [info] [Info  - 9:37:59 AM] (12860) Setting pythonPath for service "speedtimer": "C:\Python312\python.exe"
2024-07-21 09:37:59.504 [info] [Info  - 9:37:59 AM] (12860) Setting environmentName for service "speedtimer": "3.12.1 (global)"
2024-07-21 09:37:59.504 [info] [Info  - 9:37:59 AM] (12860) No include entries specified; assuming d:\dev\speedtimer
2024-07-21 09:37:59.505 [info] [Info  - 9:37:59 AM] (12860) Auto-excluding **/node_modules
2024-07-21 09:37:59.505 [info] [Info  - 9:37:59 AM] (12860) Auto-excluding **/__pycache__
2024-07-21 09:37:59.509 [info] [Info  - 9:37:59 AM] (12860) Auto-excluding **/.*
2024-07-21 09:37:59.645 [info] [Info  - 9:37:59 AM] (12860) Assuming Python version 3.12.1.final.0
2024-07-21 09:37:59.989 [info] [Info  - 9:37:59 AM] (12860) Found 7 source files
2024-07-21 09:38:00.005 [info] [Info  - 9:38:00 AM] (12860) Background analysis(2) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist
2024-07-21 09:38:00.006 [info] [Info  - 9:38:00 AM] (12860) Background analysis(2) started
2024-07-21 09:38:00.006 [info] [Info  - 9:38:00 AM] (12860) Background analysis(1) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist
2024-07-21 09:38:00.006 [info] [Info  - 9:38:00 AM] (12860) Background analysis(1) started
2024-07-21 09:38:00.009 [info] [Info  - 9:38:00 AM] (12860) Setting pythonPath for service "PyPlay": "C:\Python312\python.exe"
2024-07-21 09:38:00.009 [info] [Info  - 9:38:00 AM] (12860) Setting environmentName for service "PyPlay": "3.12.1 (global)"
2024-07-21 09:38:00.010 [info] [Info  - 9:38:00 AM] (12860) No include entries specified; assuming d:\dev\PyPlay
2024-07-21 09:38:00.010 [info] [Info  - 9:38:00 AM] (12860) Auto-excluding **/node_modules
2024-07-21 09:38:00.010 [info] [Info  - 9:38:00 AM] (12860) Auto-excluding **/__pycache__
2024-07-21 09:38:00.010 [info] [Info  - 9:38:00 AM] (12860) Auto-excluding **/.*
2024-07-21 09:38:00.115 [info] [Info  - 9:38:00 AM] (12860) Assuming Python version 3.12.1.final.0
2024-07-21 09:38:00.371 [info] [Info  - 9:38:00 AM] (12860) Found 1 source file
2024-07-21 09:38:00.376 [info] [Info  - 9:38:00 AM] (12860) Setting pythonPath for service "languagenutCheat": "C:\Python312\python.exe"
2024-07-21 09:38:00.377 [info] [Info  - 9:38:00 AM] (12860) Setting environmentName for service "languagenutCheat": "3.12.1 (global)"
2024-07-21 09:38:00.377 [info] [Info  - 9:38:00 AM] (12860) No include entries specified; assuming d:\dev\languagenutCheat
2024-07-21 09:38:00.377 [info] [Info  - 9:38:00 AM] (12860) Auto-excluding **/node_modules
2024-07-21 09:38:00.377 [info] [Info  - 9:38:00 AM] (12860) Auto-excluding **/__pycache__
2024-07-21 09:38:00.377 [info] [Info  - 9:38:00 AM] (12860) Auto-excluding **/.*
2024-07-21 09:38:00.481 [info] [Info  - 9:38:00 AM] (12860) Assuming Python version 3.12.1.final.0
2024-07-21 09:38:01.081 [info] [Info  - 9:38:01 AM] (12860) Found 7 source files
2024-07-21 09:38:01.088 [info] [Info  - 9:38:01 AM] (12860) Setting pythonPath for service "gg8lib": "C:\Python312\python.exe"
2024-07-21 09:38:01.088 [info] [Info  - 9:38:01 AM] (12860) Setting environmentName for service "gg8lib": "3.12.1 (global)"
2024-07-21 09:38:01.094 [info] [Info  - 9:38:01 AM] (12860) Loading pyproject.toml file at d:\dev\gg8lib\pyproject.toml
2024-07-21 09:38:01.094 [info] [Info  - 9:38:01 AM] (12860) Pyproject file "d:\dev\gg8lib\pyproject.toml" has no "[tool.pyright]" section.
2024-07-21 09:38:01.094 [info] [Info  - 9:38:01 AM] (12860) No include entries specified; assuming d:\dev\gg8lib
2024-07-21 09:38:01.094 [info] [Info  - 9:38:01 AM] (12860) Auto-excluding **/node_modules
2024-07-21 09:38:01.094 [info] [Info  - 9:38:01 AM] (12860) Auto-excluding **/__pycache__
2024-07-21 09:38:01.094 [info] [Info  - 9:38:01 AM] (12860) Auto-excluding **/.*
2024-07-21 09:38:01.192 [info] [Info  - 9:38:01 AM] (12860) Assuming Python version 3.12.1.final.0
2024-07-21 09:38:01.402 [info] [Info  - 9:38:01 AM] (12860) Found 2 source files
2024-07-21 09:38:01.410 [info] [Info  - 9:38:01 AM] (12860) Setting pythonPath for service "testthing": "C:\Python312\python.exe"
2024-07-21 09:38:01.411 [info] [Info  - 9:38:01 AM] (12860) Setting environmentName for service "testthing": "3.12.1 (global)"
2024-07-21 09:38:01.411 [info] [Info  - 9:38:01 AM] (12860) No include entries specified; assuming d:\dev\testthing
2024-07-21 09:38:01.411 [info] [Info  - 9:38:01 AM] (12860) Auto-excluding **/node_modules
2024-07-21 09:38:01.411 [info] [Info  - 9:38:01 AM] (12860) Auto-excluding **/__pycache__
2024-07-21 09:38:01.411 [info] [Info  - 9:38:01 AM] (12860) Auto-excluding **/.*
2024-07-21 09:38:01.521 [info] [Info  - 9:38:01 AM] (12860) Assuming Python version 3.12.1.final.0
2024-07-21 09:38:01.721 [info] [Info  - 9:38:01 AM] (12860) Found 4 source files
2024-07-21 09:38:01.726 [info] [Info  - 9:38:01 AM] (12860) Setting pythonPath for service "homebrew": "C:\Python312\python.exe"
2024-07-21 09:38:01.726 [info] [Info  - 9:38:01 AM] (12860) Setting environmentName for service "homebrew": "3.12.1 (global)"
2024-07-21 09:38:01.726 [info] [Info  - 9:38:01 AM] (12860) No include entries specified; assuming d:\dev\homebrew
2024-07-21 09:38:01.727 [info] [Info  - 9:38:01 AM] (12860) Auto-excluding **/node_modules
2024-07-21 09:38:01.727 [info] [Info  - 9:38:01 AM] (12860) Auto-excluding **/__pycache__
2024-07-21 09:38:01.727 [info] [Info  - 9:38:01 AM] (12860) Auto-excluding **/.*
2024-07-21 09:38:01.819 [info] [Info  - 9:38:01 AM] (12860) Assuming Python version 3.12.1.final.0
2024-07-21 09:38:02.726 [info] [Info  - 9:38:02 AM] (12860) No source files found.
2024-07-21 09:38:04.137 [info] [Info  - 9:38:04 AM] (12860) Starting service instance "<default>"
2024-07-21 09:38:07.481 [info] [Info  - 9:38:07 AM] (12860) Background analysis(7) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist
2024-07-21 09:38:07.481 [info] [Info  - 9:38:07 AM] (12860) Background analysis(7) started
2024-07-21 09:38:07.536 [info] [Info  - 9:38:07 AM] (12860) Setting pythonPath for service "<default>": "c:\Python312\python.exe"
2024-07-21 09:38:07.537 [info] [Info  - 9:38:07 AM] (12860) Setting environmentName for service "<default>": "3.12.1 (global)"
2024-07-21 09:38:07.537 [info] [Info  - 9:38:07 AM] (12860) No include entries specified; assuming \<default workspace root>
2024-07-21 09:38:07.538 [info] [Info  - 9:38:07 AM] (12860) Auto-excluding **/node_modules
2024-07-21 09:38:07.538 [info] [Info  - 9:38:07 AM] (12860) Auto-excluding **/__pycache__
2024-07-21 09:38:07.575 [info] [Info  - 9:38:07 AM] (12860) Auto-excluding **/.*
2024-07-21 09:38:07.648 [info] [Info  - 9:38:07 AM] (12860) Assuming Python version 3.12.1.final.0
2024-07-21 09:38:07.897 [info] [Error - 9:38:07 AM] (12860) File or directory "\<default workspace root>" does not exist.
2024-07-21 09:38:07.897 [info] [Info  - 9:38:07 AM] (12860) No source files found.
2024-07-21 09:43:32.083 [info] [Info  - 9:43:32 AM] (12860) Starting service instance "prohub"
2024-07-21 09:43:32.533 [info] [Info  - 9:43:32 AM] (12860) Setting pythonPath for service "prohub": "C:\Python312\python.exe"
2024-07-21 09:43:32.534 [info] [Info  - 9:43:32 AM] (12860) Setting environmentName for service "prohub": "3.12.1 (global)"
2024-07-21 09:43:32.541 [info] [Info  - 9:43:32 AM] (12860) No include entries specified; assuming d:\ROMDumping\prohub
2024-07-21 09:43:32.541 [info] [Info  - 9:43:32 AM] (12860) Auto-excluding **/node_modules
2024-07-21 09:43:32.542 [info] [Info  - 9:43:32 AM] (12860) Auto-excluding **/__pycache__
2024-07-21 09:43:32.542 [info] [Info  - 9:43:32 AM] (12860) Auto-excluding **/.*
2024-07-21 09:43:32.641 [info] [Info  - 9:43:32 AM] (12860) Assuming Python version 3.12.1.final.0
2024-07-21 09:43:33.050 [info] [Info  - 9:43:33 AM] (12860) No source files found.
2024-07-21 09:43:33.054 [info] [Info  - 9:43:33 AM] (12860) Background analysis(8) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist
2024-07-21 09:43:33.055 [info] [Info  - 9:43:33 AM] (12860) Background analysis(8) started
2024-07-21 09:43:38.546 [info] [Info  - 9:43:38 AM] (12860) [BG(7)] Long operation: checking: file:///d%3A/dev/PyPlay/py_pl_main.pyw (2523ms)
2024-07-21 09:43:38.563 [info] [Info  - 9:43:38 AM] (12860) [BG(7)] Long operation: analyzing: file:///d%3A/dev/PyPlay/py_pl_main.pyw (2719ms)
2024-07-21 09:59:42.225 [info] [Info  - 9:59:42 AM] (12860) Indexer background runner(9) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist (index)
2024-07-21 09:59:42.225 [info] [Info  - 9:59:42 AM] (12860) Indexing(9) started
2024-07-21 09:59:44.152 [info] [Info  - 9:59:44 AM] (12860) scanned(9) 486 files over 1 exec env
2024-07-21 09:59:54.907 [info] [Info  - 9:59:54 AM] (12860) [IDX(9)] Long operation: index execution environment file:///d%3A/dev/PyPlay (10391ms)
2024-07-21 09:59:54.997 [info] [Info  - 9:59:54 AM] (12860) [IDX(9)] Long operation: index packages file:///d%3A/dev/PyPlay (10557ms)
2024-07-21 09:59:54.997 [info] [Info  - 9:59:54 AM] (12860) indexed(9) 331 files over 1 exec env
2024-07-21 09:59:55.162 [info] [Info  - 9:59:55 AM] (12860) Indexing finished(9).
2024-07-21 10:00:11.229 [info] [Info  - 10:00:11 AM] (12860) Indexer background runner(10) root directory: file:///c%3A/Users/samgp/.vscode/extensions/ms-python.vscode-pylance-2024.7.1/dist (index)
2024-07-21 10:00:11.229 [info] [Info  - 10:00:11 AM] (12860) Indexing(10) started
2024-07-21 10:00:11.437 [info] [Info  - 10:00:11 AM] (12860) Found 1 source file
2024-07-21 10:00:11.992 [info] [Info  - 10:00:11 AM] (12860) scanned(10) 486 files over 1 exec env
2024-07-21 10:00:12.848 [info] [Info  - 10:00:12 AM] (12860) indexed(10) 331 files over 1 exec env
2024-07-21 10:00:13.004 [info] [Info  - 10:00:13 AM] (12860) Indexing finished(10).
2024-07-21 10:04:45.163 [info] [Info  - 10:04:45 AM] (12860) Found 2 source files
2024-07-21 10:04:48.202 [info] [Info  - 10:04:48 AM] (12860) Found 1 source file
2024-07-21 10:04:54.883 [info] [Info  - 10:04:54 AM] (12860) Found 1 source file
2024-07-21 10:06:19.516 [info] [Info  - 10:06:19 AM] (12860) Found 1 source file
2024-07-21 10:06:24.696 [info] [Info  - 10:06:24 AM] (12860) Found 1 source file

Can you share your project structure or a simple code sample that repros the issue?

project/
main.py
assets/
music.mp3
lib/
media.py
main.py
import lib.media as med #pylance says lib.media "does not exist"

media.load("assets/music.mp3") #no auto-complete! :(
media.play() #all code works fine when run

The runtime environment might differ from the edit-time environment, so the fact that media.play() runs does not necessarily relate to the import not resolved issue. The log you provided above doesn't seem to have trace turned on. Could you reproduce the issue with the log enabled and provide us with the logs? You can follow the instructions here to set the log level to trace: Pylance Troubleshooting Guide.

Never mind, it seems to have resolved the imports, I have no idea what made it work, but it does now.


Displayed number for hit rating not including buffs/talents

With most BIS guides, the Hit Rating number given is usually the same as what you see in the in game character screen. It makes it easy to know just which number you need to reach ( excluding including talents and raid buffs. )
It makes it harder to theorycraft on the sim when the hit rating has buffs and talents included. It would be extremely useful to show a number in the sim that is relatable to the number in the in game character menu.
Thanks!

The magnifying glass next to your hit rating and % gives you a detailed breakdown of sources of hit.

ahhhhh brilliant, should have noticed that. my bad! thanks for the great sim


chore: make the Kafka admin server URL configurable

Why
When deploying the UI in a different environment from stage or production the Kafka admin server route and/or protocol can change and therefore we must be able to re-configure it in the UI
Blocked: https://github.com/redhat-developer/app-services-ui-shared/pull/117

Would it be better to use an actual string interpolation format here e.g. printf or a template?

Would it be better to use an actual string interpolation format here e.g. printf or a template?

Didn't find anything easy to use in JavaScript without adding a new library, or writing a .format() method that can be copied and past from StackOverflow

@b1zzu Do you mind removing /rest from the endpoint. I think we going to get that change in stage soon

@b1zzu Do you mind removing /rest from the endpoint. I think we going to get that change in stage soon


Feature/status bar

Closes #218

Coverage decreased (-0.1%) to 88.664% when pulling 81cf6a8b5cb7230bf3461302b292d7ac5c5a842d on feature/status-bar into 383701dbc8828801833808f82225a524afbe4751 on master.


docker make build fails

Step 3/31 : RUN conda install -y -c conda-forge         tensorflow         jupyter_contrib_nbextensions
---> Running in 3f82f86c2ec1
Solving environment: ...working... done
==> WARNING: A newer version of conda exists. <==
current version: 4.4.10
latest version: 4.4.11
Please update conda by running
$ conda update -n base conda

certifi 2018.1.18: #######5   |  75%
tensorflow 1.1.0: ########## | 100%
pbr 3.1.1: ########## | 100%
jupyter_highlight_selected_word 0.1.0: ########## | 100%
jupyter_contrib_nbextensions 0.4.0: ########## | 100%
protobuf 3.5.1: ########## | 100%
jupyter_nbextensions_configurator 0.4.0: ########## | 100%
mock 2.0.0: ########## | 100%
jupyter_latex_envs 1.4.0: ########## | 100%
jupyter_contrib_core 0.3.3: ########## | 100%
IsADirectoryError(21, 'Is a directory')
Package Plan
environment location: /opt/conda
added / updated specs:
- jupyter_contrib_nbextensions
- tensorflow
The following packages will be downloaded:
package                    |            build
---------------------------|-----------------
certifi-2018.1.18          |           py36_0         143 KB  conda-forge
tensorflow-1.1.0           |           py36_0        25.3 MB  conda-forge
pbr-3.1.1                  |           py36_0         112 KB  conda-forge
jupyter_highlight_selected_word-0.1.0|           py36_0          13 KB  conda-forge
jupyter_contrib_nbextensions-0.4.0|           py36_0        19.4 MB  conda-forge
protobuf-3.5.1             |           py36_3         5.9 MB  conda-forge
jupyter_nbextensions_configurator-0.4.0|           py36_0         470 KB  conda-forge
mock-2.0.0                 |           py36_0         103 KB  conda-forge
jupyter_latex_envs-1.4.0   |           py36_1         738 KB  conda-forge
jupyter_contrib_core-0.3.3 |           py36_1          28 KB  conda-forge
------------------------------------------------------------
                                       Total:        52.2 MB

The following NEW packages will be INSTALLED:
jupyter_contrib_core:              0.3.3-py36_1     conda-forge
jupyter_contrib_nbextensions:      0.4.0-py36_0     conda-forge
jupyter_highlight_selected_word:   0.1.0-py36_0     conda-forge
jupyter_latex_envs:                1.4.0-py36_1     conda-forge
jupyter_nbextensions_configurator: 0.4.0-py36_0     conda-forge
mock:                              2.0.0-py36_0     conda-forge
pbr:                               3.1.1-py36_0     conda-forge
protobuf:                          3.5.1-py36_3     conda-forge
tensorflow:                        1.1.0-py36_0     conda-forge

The following packages will be UPDATED:
certifi:                           2018.1.18-py36_0             --> 2018.1.18-py36_0 conda-forge

Downloading and Extracting Packages
ERROR: Service 'handson-ml' failed to build: The command '/bin/sh -c conda install -y -c conda-forge         tensorflow         jupyter_contrib_nbextensions' returned a non-zero code: 1
make: *** [Makefile:9: build] Error 1

+1

Can you specify what docker build you ran?

@drorata  I did a make build in after cloning it

This is an issue in conda 4.4.10
https://github.com/conda/conda/issues/6811
To build properly, add the following on line 10:
'RUN conda update -n base conda'