Restrict property visibility

Hi
In my szenario, there are multiple Applications/Microservices which should be configured by spring cloud config. Each of these Applications requires some properties containing sensitive data (usernames, passwords).
The applications will access the config server with a separate user. Is there a way to restrict the properties a user is allowed to read? (The user A should be able to read the 'global' properties and the properties of application A, User B should be able to read the 'global' properties and the properties of application B, ...)
If there isn't currently a solution for this szenario: Do you think that this would be an worthwhile feature?

@ChrisCavegn I believe you can achieve this using HashiCorp Vault backend for Config Server if each app is assigned a different Vault token that has the appropriate ACLs (configured in Vault not Config Server)

@ojhughes Thx for the suggestion. I'm aware of this possibility. However, I'd like to keep the setup as simple as possible and go for a Config Server-only solution. (Introducing Vault come's with unsealing after start/restart. I currently don't need that kind of security)

@ChrisCavegn this is something that has been implemented commercially http://docs.pivotal.io/spring-cloud-services/1-4/common/config-server/

@spencergibb Thank you for the hint. Unfortunately, I'm unable to find this feature in the documentation / changelog / google. Is there a link to the description of this feature?

I'm afraid I all have to offer is the link to the documentation. @csterwa or @scottfrederick anything else?

@ChrisCavegn there is currently no inherent support for segmenting authorization to Config Server properties as is currently supported in HashiCorp Vault. I believe this will not be implemented in Config Server but rather through other configuration backends in the future. Cloud Foundry has a fairly new project called CredHub that could become one of these solutions that would be available on the PCF platform for use as such a backend solution.

Thx for all the replies and hints! I'll definitely take a look at CredHub.
It should be quite simple to add optional user/application based visibility restriction.
Please see https://github.com/ChrisCavegn/spring-cloud-config/commit/8f0f8112d0bc17a5c4aa032c52452ecbc5b8b9c3
I've added an 'AuthorizationValidator' to Environment- and ResorceController. In the default implementation, there is't any restriction in accessing the properties. A more advanced implementation of AuthorizationValidator could be implemented like this:
public class ApplicationBasedAuthorizationValidator implements AuthorizationValidator {
	private final Log logger = LogFactory.getLog(getClass());

    private final String rolePrefix;
    private final String rolePostfix;

    /**
     * @param rolePrefix prefix prefix of the role, can be null
     * @param rolePostfix postfix postfix of the role, can be null
     */
    public ApplicationBasedAuthorizationValidator(String rolePrefix, String rolePostfix){
        this.rolePrefix = rolePrefix;
        this.rolePostfix = rolePostfix;
    }

    @Override
    public void ensureCallerAuthorized(HttpServletRequest request, String name,
                                       String profile, String label) {
        String role = getRequiredRole(name, profile, label);

        if(!request.isUserInRole(role)){
            String message = "User " + request.getRemoteUser() +
                    " isn't allowed to read properties for Application " + name +
                    "(Missing role " + role + ")";

            logger.error(message);
            throw new SecurityException(message);
        }
    }

    String getRequiredRole(String name, String profile, String label) {
        return new StringBuilder(Objects.toString(rolePrefix, ""))
                .append(name)
                .append(Objects.toString(rolePostfix, ""))
                .toString();
    }
}

Is there a chance that this feature is added? (I'm quite new to spring/spring-boot and happy to rewrite this change if required)

After talking with the team today the conclusion was to rely on Spring Security in combination with the Config Server in order to do what you are trying to accomplish rather than make any specific changes to the Config Server itself.


Clean-up

This is an overall clean-up of the code-base.
General

Consistent usage of terms and letter casing.
Fix typos and enhance formatting in README.md.
Use single quotes whenever possible.
Use JSDoc to describe the functions, so the descriptions are displayed in IDE.

Tests

Lint test files as well & fix resulting errors and warnings.
Use Inline Snapshots everywhere it makes sense.
This means you can easily update the expected content when the output changes by running Jest with --updateSnapshot instead of manually updating the test file.
Disable output so the console doesn't get polluted by it and it (outputs from @actions/core) won't be interpreted by the CI (see for example https://github.com/MishaKav/jest-coverage-comment/actions/runs/3291557621).

Thanks for the amazing job! 💪

You're welcome 😃 Thank you, too! 💪


fix: schema validate

:tada: This PR is included in version 1.5.1 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Browserify Issue

I forked and cloned list.js.
npm installed and ran grunt dist
It didn't work unless browserify was global installed.
I would imagine the shell:build command should be rewritten from
command: 'browserify index.js > dist/list.js'
to
command: 'node_modules/browserify/bin/cmd.js index.js > dist/list.js
This would make it use the "browserify": "^13.0.0" devDependency in the package.json.
I can send this as a PR if you're interested since i've already made the change.

Ohh, good point! Thanks a lot!


Add sst dev filter (#3753)

re: #3753
Added filter option.  Implemented similar to that in sst deploy.

Thanks! We'll take a look.

We are transition this repo to https://github.com/sst/v2 and are closing this issue for now. If it is still relevant please reopen it there - sorry for the trouble


UserOpResponse.wait does not wait for enough confirmations

Problem You're Facing
After sending a userOp, I want to wait for N confirmations on the blockchain.
Right now, using userOpResponse.wait(999) returns a Promise which resolves right after the transaction is included in a block, without waiting for any additional confirmation.
Proposed Solution
The UserOpResponse.wait function already takes as argument the number of desired confirmations.
That function should simply be fixed to correctly take into account this value.
Alternatives Considered
A possible workaround is to use waitForTxHash and wait for the desired number of confirmations for that transaction using another library (e.g. ethers).
Use Cases
Waiting for a given number of confirmations can help prevent issues with blockchain forks/reorgs.
Additional Info
I'm willing to provide a fix and will open a PR which closes this issue.

we will look into this and also review the PR


Can't get data from proxy server http://sciqlop.lpp.polytechnique.fr/cache

Space Physics WebServices Client version:
Python version: Python 3.10.6
Operating System: Ubuntu 22.04.1 LTS

Description
import speasy
What I Did
Input:
import speasy
Output:
Can't get data from proxy server http://sciqlop.lpp.polytechnique.fr/cache
This is not a problem I had two weeks ago.
Best wishes,
Clement

@cmoissar, lately we had DNS issues at Polytechnique I'm afraid, this might be related. Did you try to access  http://sciqlop.lpp.polytechnique.fr/cache from your browser? If it also fails then this is likely a DNS issue. One temporary fix can be to use http://<IP_ADDRESS>/cache instead (this IP is likely to remain the same for years).

@cmoissar, using server IP, won't work sadly, I just figured out from the logs sorry :/

Accessing http://sciqlop.lpp.polytechnique.fr/cache from the browser doesn't work, as you expected.
Here's something I find confusing:
On my computer, I can still run my code. It takes a lot longer than it did a couple of weeks ago but still works.
One of my students cannot use his code at all.
Yet both problems appeared at the same time.
Is there a way to skip the Polytechnique cache and download data directly from the different providers (cdaweb and co) without ditching speasy altogether?
Or is not worth trying because the Polytechnique servers will be back to normal soon?
Thanks for your help @jeandet!

Ok, that's very unfortunate, we are investigating this DNS issue. The worst is that I can access
http://sciqlop.lpp.polytechnique.fr/cache from home it just seems to randomly fail on some DNS servers around the world..
In the mean time, you can disable the proxy server:

by editing your speasy config file.
On linux, you'll find it in ~/.config/speasy/config.ini, then simply edit or add the following lines:

[PROXY]
enabled = False
url = http://sciqlop.lpp.polytechnique.fr/cache

On others OS, you can find the location with the following python code (I don't remember their location):
import appdirs
print(appdirs.user_config_dir( appname="speasy", appauthor="LPP") + "/config.ini")

or, you can set SPEASY_PROXY_ENABLED environment variable to "false" before you import speasy like this:

import os
os.environ['SPEASY_PROXY_ENABLED'] = 'false'
import speasy as spz

Note that once the proxy is disabled, speasy will take little longer to load and will print a lot of warnings like Non compliant ISTP file: variable V_thermal has LABL_PTR_1 attribute which points to a variable which does not exist. You will get these warnings because you are building CDA inventory locally and speasy has to parse a lot of partly compliant CDF/ISTP files.

for the record https://dnschecker.org/#A/lpp.polytechnique.fr

@cmoissar, the DNS issue seems resolved now 🤞.


Setting java/foreign/TestNative.java as native type

Exclude it in Problemlist and add as separate native type. So it will be
run by sanity and will not run by sanity.regular.
Fix #1920
Signed-off-by: Sophia Guo<EMAIL_ADDRESS>

related with https://github.com/AdoptOpenJDK/run-aqa/issues/24


checkstyle for tab validation

@243826
Adding this to build-changes.

Chetan,
I changed it such that only when mvn checkstyle:check  is run then we will see all the style violations.
I think there needs to be a discussion when this should run so I made this change which will not obstruct the build.

Ok. That's good.
On Tue, Aug 4, 2015 at 1:09 PM, Chandni Singh<EMAIL_ADDRESS>wrote:

Chetan,
I changed it such that only when mvn checkstyle:check is run then we will
see all the style violations.
I think there needs to be a discussion when this should run so I made this
change which will not obstruct the build.
—
Reply to this email directly or view it on GitHub
https://github.com/DataTorrent/Apex/pull/105#issuecomment-127741895.


Add file provider

Solve android.os.FileUriExposedException: file.jpg exposed beyond app through ClipData.Item.getUri() exception on targetSdk 24+

@jgcmarins sorry about that. Actually this PR was not suppose to be created now. This change is only relevante when React Native uses a new targetSdkVersion. For now there is no need for this

Thanks for this, works great. One thing to note to get this working in your project is to implement the ShareApplication.java in your MainApplication.java.
Then override the getFileProviderAuthority like so..
 @Override     public String getFileProviderAuthority() {         return BuildConfig.APPLICATION_ID + ".fileprovider";     }
This will properly populate the xml with your applicationId, i.e. com.myapporg.myappname.fileprovider
Thanks again!

@deliveryblueprints, what exactly did you put in the MainApplication.java and where does the @Override part go? I've tried in multiple ways but can't get it to work. Thank you

@ER1011 Just do as said , make your application extends ShareApplication and create functiongetFileProviderAuthority with the same name as the provider-> android:authorities on Manifest

@ygorbarboza the link you posted seems to be broken

@ER1011 sorry about that
https://developer.android.com/training/secure-file-sharing/setup-sharing.html


Schema

JIRA link
https://tools.hmcts.net/jira/browse/S28-2127
Change description
Implemented initial schema setup as per the schema design
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[X ] No

how are we going to handle auditing? i see we have an audit table and then some audit timestamps on a few models. to keep what we have here i suggest:

going through and updating any timestamp column to us at instead of on

created_at for example

each table have 3 timestamp columns?

created_at
updated_at
deleted_at

we use a deleted_at timestamp column instead of a boolean. if the field is null for a recod then it has not been deleted.
updating the column names in the audit table:

id
auditable_type -> essentially the table name
auditable_id -> id of the modified record
user_id -> user that performed the action
source -> don't think this should be an enum
action -> create/read/update/delete
timestamp -> time the action was performed
payload -> json object with extra details


Add phpstan check to the github action

phpstan workflow PR choice
Both Pull Requests runs phpstan on github after a push or pull request.
There is 2 versions :
one à la Prestashop : with docker, prestashop installed : #79
one à la Seb : without docker, source code just unzipped  : #80
Which one do you prefer ? Why ?
Here is a list to compare (can be improved).
#80 (without docker, source code just unzipped)
⬆ :

simpler
faster
less dependencies (more robust)
easy to modify/test at home

⬇ :

it diverges from Prestashop way
is not ready to run integration tests (guessed)
easier maintenance (just copy what Prestashop will implement)

#78 (with docker and prestashop installed): the exact opposite of previous list
⬆ :

follow the Prestashop way
ready to run integration tests (I guess)
easier maintenance (just copy what Prestashop will implement)

⬇ :

more complex (github action, docker image)
slower (because of docker)
more dependencies (docker, docker images (managed by prestashop))
not easy to modify (requires docker knowledge)

Vote for 80 (Seb implementation) : 🎉
Vote for 79 (Prestashop implementation) : 🚀

I voted for my implementation 😄 .
The possibility to easily modify the workflow, the less dependencies are really good points.
Being dependent on docker, dockerhub and prestashop managed images for only potential benefits (no real benefits, only potential) makes me vote for #80

vote for #80 For the same reasons of SebSept

I vote for #80 for simplicity

I can't really judge, i vote for simplicity too. So #80


1.1.0 is not backwards compatible with 1.0.0 due to import change

Heads up for people: version 1.0.0 -> 1.1.0 changed how this library exports (not 100% backwards compatible, breaking SemVer). Depending on how the requiring library does its imports (esm vs cjs), it might break your library/app if it was requiring this library via "^1.0.0"
In particular, for nanobus
remove-array-items v1.0.0
var splice = require('remove-array-items')
// splice is the Function

remove-array-items v1.1.0
var splice = require('remove-array-items')
// splice is {default: Function, __esModule: true}

Examples of issues:
https://github.com/choojs/nanobus/issues/37
https://github.com/TypeStrong/ts-loader/issues/874

@BlooJeans good catch! Can you send a fix PR? I'll push it as 1.1.1 to fix the semver breakage.

What build process is this breaking for? This should work on rollup/webpack 2+ as-is.

fixed via https://github.com/mreinstein/remove-array-items/commit/66b0bb72b858809345c93d20bb5a2a2763f645de . waiting for the tests to pass on ci, and I'll publish this as 1.1.1 on npm.

I'm not overly familiar with webpack/rollup etc, so I'm not too sure what piece there is acting strangely.  Testing the nanobus in isolation is actually fine, however clearly something with the build process handles 1.0.0 and 1.1.0 differently.
Apparently the best practice is to publish this fix as 1.2.0 instead of 1.1.1, and then you can publish 1.1.0 as 2.0.0
(from https://github.com/semver/semver/blob/master/semver.md)
As soon as you realize that you've broken the Semantic Versioning spec, fix the problem and release a new minor version that corrects the problem and restores backwards compatibility. Even under this circumstance, it is unacceptable to modify versioned releases. If it's appropriate, document the offending version and inform your users of the problem so that they are aware of the offending version.```

Thanks for hopping on this so quickly!

I published as a patch version so that more people would get this updated module (most people use ^ but some still use 1.1.x)

Thanks for hopping on this so quickly!

Thanks for bringing it to my attention! Yay open source! :)


Removing redundant images

Fix #492
Searched and Removed all the unused images and icons from the assets directory.

@smaranjitghose Kindly check :)


Update README

Codecov Report

Merging #31 (f8c3e4a) into master (92693b0) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #31   +/-   ##
=======================================
  Coverage   92.85%   92.85%
=======================================
  Files           2        2
  Lines          28       28
  Branches        4        4
=======================================
  Hits           26       26
  Misses          1        1
  Partials        1        1

Continue to review full report at Codecov.

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


GOPATH incorrect in docker base file

ENV	GOPATH /go
should be
ENV	GOPATH /usr/local/go

That would be GOROOT, not GOPATH.
GOPATH is any custom location and since a docker container is very minimalist, I see no point in hiding it in some deeper folder struct.


Created Profile Photo

Hi, I drew a profile pic and added it to the readme. Hope you like it :)

Wow, this is quite cool! Can you add your name in list of contributors before I merge this?

jup, added my name. Thanks!


Can't add Zone1

Describe Your Problem:
Zone 2 shows up no problem as a TV accessory but Zone 1 does not
Logs:
[14/10/2024, 15:48:20] [homebridge-anthemreceiver] Launched child bridge with PID 1905424
[14/10/2024, 15:48:20] [homebridge-anthemreceiver] Loaded homebridge-anthemreceiver v0.8.2 child bridge successfully
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] -----------------------------------------
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Anthem Receiver Controller Information
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] -----------------------------------------
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Model: MRX 540
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Serial Number: ALM1X00002N298
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Software Version: 00.80/00.03
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Zones: 2
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver]  Zone1: Zone 1
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver]  Zone2: Dolby Baby
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Inputs: 7
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver]  Input1: BluRay
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver]  Input2: Roku
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver]  Input3: N.Switch
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver]  Input4: Gaming PC
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver]  Input5: eARC
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver]  Input6: Streaming
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver]  Input7: Apple TV
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] -----------------------------------------
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Configuring Hombebridge Accessories
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] -----------------------------------------
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Zone1: Power/Input
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] -----------------------------------------
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Starting Controller Operation
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] -----------------------------------------
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Discovered new inputs
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input1: BluRay
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input2: Roku
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input3: N.Switch
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input4: Gaming PC
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input5: eARC
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input6: Streaming
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input7: Apple TV
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Discovered new inputs
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input1: BluRay
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input2: Roku
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input3: N.Switch
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input4: Gaming PC
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input5: eARC
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input6: Streaming
[10/14/2024, 3:48:20 PM] [homebridge-anthemreceiver] Input7: Apple TV
Plugin Config:
{
"Host": "<IP_ADDRESS>",
"Port": 14999,
"PanelBrightness": false,
"Zone1": {
"Active": true,
"Power": false,
"Mute": false,
"MultipleInputs": false,
"ALM": false,
"ARC": false,
"Volume": false,
"DolbyPostProcessing": false
},
"Zone2": {
"Active": false,
"Name": "Dolby Baby",
"Power": false,
"Mute": false,
"MultipleInputs": false,
"Volume": false,
"DolbyPostProcessing": false
},
"_bridge": {
"username": "0E:A3:9F:48:A4:72",
"port": 34954
},
"platform": "AnthemReceiver"
}
Screenshots:

Environment:

Plugin Version: 0.8.2
Homebridge Version: 4.61.0
Node.js Version: 20.15.0
NPM Version:
Operating System: Debian GNU/Linux Bookworm (12)

so bummed not to get a response, it was working so well before, it was the cornerstone of my whole setup :(

Are you sure you enabled it for zone 1?
I see zone one is missing the name parameter.
"Name": "TV-name-here",

Ok, I was running into a similar issue.
Here is what I did.
Disable zone 1 and zone 2 tv accessory in the home ridge config settings for the anthem plugin.
Restart everything as per the messages you see post updating the plugin settings.
Then go to homebridge settings and delete the  tv accessories from the linked bridge section.
There might be two for you.
The one at a  time enable the tv accessory in the plug in settings.  And Add the tv to the home app.  Don’t enable both at the same time.
See if that works. I didn’t test it for two zones but I was unable to add zone 1 and doing the above made it available for me. Hope it works for zone 1 and 2 combined.


AttributeError: 'binance' object has no attribute 'parse_time_frame'

Amazing work you've put together here, going through the documentation this seems quite light and straight to the point allowing one to build from the ground up. However I've had a bit of trouble setting this up, first seems the documentation  is out of  sync and i did have a to a bit of improvising. However, I couldn't seem to be able to connect to binance or bybit.
Cell In[46], line 8
      1 ticker_btc = CCXTOHLCVMarketDataSource(
      2     identifier="BTC-candles",
      3     market="BINANCE",
      4     symbol="BTC/USDT",
      5     time_frame='1h'
      6 )
----> 8 ticker_btc.get_data(
      9     start_date=datetime(2024, 1, 1),
     10     end_date=datetime(2024, 1, 4),
     11 )

File ~/Work/ofalos/crypto-engine/venv/lib/python3.11/site-packages/investing_algorithm_framework/infrastructure/models/market_data_sources/ccxt.py:515, in CCXTOHLCVMarketDataSource.get_data(self, **kwargs)
    504     data = self._get_data_from_storage(
    505         storage_path=storage_path,
    506         symbol=self.symbol,
   (...)
    510         market=self.market
    511     )
    513 if data is None:
    514     # Get the OHLCV data from the ccxt market service
--> 515     data = market_service.get_ohlcv(
    516         symbol=self.symbol,
    517         time_frame=self.time_frame,
    518         from_timestamp=start_date,
    519         to_timestamp=end_date,
    520         market=self.market
    521     )
    523 # if storage path is set, write the data to the storage path
    524 if storage_path is not None:

File ~/Work/ofalos/crypto-engine/venv/lib/python3.11/site-packages/investing_algorithm_framework/infrastructure/services/market_service/ccxt_market_service.py:405, in CCXTMarketService.get_ohlcv(self, symbol, time_frame, from_timestamp, market, to_timestamp)
    401 ohlcv = exchange.fetch_ohlcv(symbol, time_frame, from_time_stamp)
    403 if len(ohlcv) > 0:
    404     from_time_stamp = \
--> 405         ohlcv[-1][0] + exchange.parse_time_frame(time_frame) * 1000
    406 else:
    407     from_time_stamp = to_timestamp

AttributeError: 'binance' object has no attribute 'parse_time_frame'

Here's my code
ticker_btc = CCXTOHLCVMarketDataSource(
    identifier="BTC-candles",
    market="BINANCE",
    symbol="BTC/USDT",
    time_frame='1h'
)

ticker_btc.get_data(
    start_date=datetime(2024, 1, 1),
    end_date=datetime(2024, 1, 4),
)

Is there something I'm doing wrong?

I am aware of that issue, and have a fix scheduled for coming Friday. Sorry for the inconvenience

Fixed as part of release v3.8.1: https://github.com/coding-kitties/investing-algorithm-framework/releases/tag/v3.8.1
Everything should now work with: pip install investing-algorithm-framework==3.8.1


Styles for the close button are not recognised

After adding the GraniteAlert 2.0.0 dependency for Vaadin 23.2.1, I try to add a new alert to the view, as shown in the demo, and the styles for the "close" button are not recognised.

Hello. This add-on only provides alert bars. The button styles shown in the demo are intentionally not included in add-on, because GranitAlert does not take any decision on how to style any component added to the alert.
https://github.com/FlowingCode/GraniteAlertAddon/blob/b2e63042aa4c22ea97eac579ef248bc80fac3954/src/test/resources/META-INF/resources/frontend/styles/granitealert/demo-styles.css#L20-L27


convert - tokens vs UTXO screen

What UI/UX improvements would you like to be implemented:
Why is this needed:
Screen to explain Tokens vs UTXO
Which component/screens does this concern?:

Anything else we need to know?:

/triage accepted
/area ui-ux core
/priority urgent-now

/design ready

@jtlntno-cake any marvel link for this screen?

@kyleleow https://marvelapp.com/prototype/66795j4/screen/80595968


Updated CMakeLists.txt to accurately name output file under Windows

Various linking options are now also toggle-able with cmake

Ping

Wait - the only purpose for CMakeLists.txt, when used with Windows CMAKE, is to generate a project for Visual Studio 2015?

Well, when used with the Visual Studio 2015 generator, yes.  Note that Visual Studio 2017 can also load a CMakeLists.txt file as a 'solution' or .sln file.


python310Packages.python-lsp-black: 1.2.1 -> 1.3.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.python-lsp-black is: Black plugin for the Python LSP Server
meta.homepage for python310Packages.python-lsp-black is: https://github.com/python-lsp/python-lsp-black
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.3.0 with grep in /nix/store/7z57j8qmmp4w6b2zv8x9kn5p5xi34428-python3.10-python-lsp-black-1.3.0
found 1.3.0 in filename of file in /nix/store/7z57j8qmmp4w6b2zv8x9kn5p5xi34428-python3.10-python-lsp-black-1.3.0

Rebuild report (if merged into master) (click to expand)

5 total rebuild path(s)

5 package rebuild(s)

First fifty rebuilds by attrpath
python310Packages.python-lsp-black
python310Packages.spyder
python311Packages.python-lsp-black
python311Packages.spyder
spyder

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/7z57j8qmmp4w6b2zv8x9kn5p5xi34428-python3.10-python-lsp-black-1.3.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.python-lsp-black https://github.com/r-ryantm/nixpkgs/archive/ad6dca08f572763aba0600c9ea591c3272be8f3e.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/7z57j8qmmp4w6b2zv8x9kn5p5xi34428-python3.10-python-lsp-black-1.3.0
ls -la /nix/store/7z57j8qmmp4w6b2zv8x9kn5p5xi34428-python3.10-python-lsp-black-1.3.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

4 packages built:

python310Packages.python-lsp-black
spyder (python310Packages.spyder)
python311Packages.python-lsp-black
python311Packages.spyder

Maintainer pings
cc @cpcloud for testing.

Result of nixpkgs-review pr 237884 run on aarch64-darwin 1

4 packages built:

python310Packages.python-lsp-black
python310Packages.python-lsp-black.dist
python311Packages.python-lsp-black
python311Packages.python-lsp-black.dist


Remove unused FileAccessBuffered

This seem to be a leftover from the very early (per-open source) age. All blames to the offending lines (commented and not) trace back to the first commit.
This PR:

No longer uses FileAccessBufferedFA on HTML5 (it's not needed, and actually caused bugs with the interactive loaders)
Removes all commented references to FileAccessBufferedFA and delete it along with FileAccessBuffered.
Also remove the only active reference to FileAccessBufferedFA which is situated in an unreachable path according to my findings (and again, I suspect FileAccessBufferedFA is just bugged).

NOTE:  USE_JAVA_FILE_ACCESS does not seem to ever be defined in the build system, this suggests that there is also a bug on android, when APK expansion is enabled since FileAccessJAndroid is used in that case (by DirAccessJAndroid) but never set up (so calling exists should call a null pointer). Which might be related to #37695 .
See https://github.com/Faless/godot/commit/a00fbb2a765abf1f9fae3da0209141fd27f770ed not included in this PR, and https://github.com/Faless/godot/commit/a00fbb2a765abf1f9fae3da0209141fd27f770ed#r44872072 (@m4gr3d you might have an answer to that question).

I'll merge this one as is, @Faless can then make a follow-up PR for the Android changes.

Thanks!

Cherry-picked for 3.2.4.


ucloud create instance & huawei change instance config bugfix

这个 PR 实现什么功能/修复什么问题:

Ucloud创建带数据盘主机及华为云调整主机配置bugfix

是否需要 backport 到之前的 release 分支:

release/2.10.0

Codecov Report

Merging #1376 into master will decrease coverage by <.01%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master   #1376      +/-   ##
=========================================
- Coverage    7.73%   7.72%   -0.01%
=========================================
  Files         374     374
  Lines       58947   58936      -11
=========================================
- Hits         4557    4555       -2
+ Misses      53989   53979      -10
- Partials      401     402       +1

Flag
Coverage Δ

#aFlag
7.72% <0%> (-0.01%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/util/ucloud/host.go
0% <0%> (ø)
:arrow_up:

pkg/util/seclib2/seclib.go
91.48% <0%> (-4.26%)
:arrow_down:

pkg/cloudcommon/db/virtualresource.go
0% <0%> (ø)
:arrow_up:

pkg/cloudcommon/validators/validators.go
64.47% <0%> (+1.31%)
:arrow_up:

Continue to review full report at Codecov.

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

/lgtm
/approve


Constrained devices don't build out-of-the-box with Zephyr

Constrained devices don't build out-of-the-box with Zephyr.
For instance, bbc_microbit doesn't build.
We have solved this for specific boards, e.g. #411 .
But now that DT symbols can be accessed from Kconfig, it should be possible to turn off unnecessary features based on FLASH / RAM size and solve this generally.

Is disabling logging typically enough for this? Not having logging on does make MCUboot more difficult to debug, though. Can we solve this by means other than documentation? e.g. Is there a mechanism to have board-specific Kconfigs in the app directory (like we do with device tree overlays)?

e.g. Is there a mechanism to have board-specific Kconfigs in the app directory

Yes, see for instance https://github.com/JuulLabs-OSS/mcuboot/pull/412/files
but it would scale better to use generic DT information like flash and ram size to set Kconfig options. This is possible by defining a new Kconfig root with additional intializations of the options that depend on DT size information.


Support for String[] args?

Basically, there should be a way like String[] args or params so you can make a command like /balance.
For example, the balance command should have the /balance  as an option and if the player only executes /balance it sends his balance only. But if its /balance , it sends the target's balance.
This command API is the best but this feature/option is the only missing addition.

Is this what you need?
@Command({"balance", "bal"})
public static void balance(@Sender Player sender,
                           @Optional Player target) {
    if (target == null) {
        sender.sendMessage("Your balance is: $100");
    } else {
        sender.sendMessage(target.getName() + "'s balance is: $100");
    }
}

You have to upgrade to version 1.2.9 for @Optional to work, otherwise use @Optional("null").


Missing Runspace.CreatePipeline

Hey guys,
Realized today that this assembly is missing Runspace.CreatePipeline

@adamdriscoll I think this is by design: https://github.com/PowerShell/PowerShellStandard/issues/4

@TylerLeonhardt Should have done a search ;) Ok. Thanks!


No objects to concatenate issue with Fugue

@goodwanghan Just an FYI, seems like there might be a corner case here. Appreciate your insights.
In the example bellow we have 2 dataframes with exclusive join values (x). So nothing should match. Forcing anything more than 2 for parallelism throws ValueError: No objects to concatenate.
from datacompy import Compare, is_match, report, unq_columns
import pandas as pd
import numpy as np

df1 = pd.DataFrame(np.random.randint(0, 5, size=(10000, 2)), columns=["x", "y"])
df2 = pd.DataFrame(np.random.randint(6, 11, size=(10000, 2)), columns=["x", "y"])

print(report(df1, df2, join_columns=["x"], parallelism=4))

throws an error:
File .../datacompy/datacompy/fugue.py:556, in _distributed_compare.<locals>._comp(df)
    554 def _comp(df: List[Dict[str, Any]]) -> List[List[Any]]:
    555     df1 = (
--> 556         pd.concat([pickle.loads(r["data"]) for r in df if r["left"]])
    557         .sort_values(df1_cols)
    558         .reset_index(drop=True)
    559     )
    560     df2 = (
    561         pd.concat([pickle.loads(r["data"]) for r in df if not r["left"]])
    562         .sort_values(df2_cols)
    563         .reset_index(drop=True)
    564     )
    565     comp = Compare(
    566         df1=df1,
    567         df2=df2,
   (...)
    573         cast_column_names_lower=False,
    574     )

File .../python3.9/site-packages/pandas/core/reshape/concat.py:425, in _Concatenator.__init__(self, objs, axis, join, keys, levels, names, ignore_index, verify_integrity, copy, sort)
    422     objs = list(objs)
    424 if len(objs) == 0:
--> 425     raise ValueError("No objects to concatenate")
    427 if keys is None:
    428     objs = list(com.not_none(*objs))

ValueError: No objects to concatenate

@goodwanghan Just want to double check is it ok for me to assign this to you? only if you have time. No pressure.

Yes I will start working on it this week


Use contentEditable for our hidden accessibility textArea

Investigate into using contenteditable instead of a plain textArea for our hidden accessibility field.
It migh have performance implications, but it would allow us to have richer accessibility content on each line. Including line number, breakpoints etc..

cc @bramd @zersiax
Note that line number support will probably conflict with the ability of the screen reader to provide line numbers itself. NVDA is able to do this. In Visual Studio, this is also an issue.

While that is true, I would say line numbers can be toggled, so I don't necessarily see that as an obstacle for this. If this allows for breakpoint, error and line number indication, I'd say go for at least giving it a test run. The performance implications are one to keep an eye on, though.

NVDA's line number reading is not going to work in vscode, because vscode can only page n lines at a time to the hidden textarea used for accessibility.

Unfortunetly I did not have time to look into this this milestone. In july I am on vacation, thus pushing this out to August.

@isidorn since you brought this up in another issue, did you have time at all yet to look into this?

@MarcoZehe yeah I found some time, however I hit some bigger issues with this approach. I believe none of them are unsolvable but they showed that this is a bigger effort. So we would use a HTMLDivElement instead of an HTMLTextArea, here are the issues I could not figure out:

[ ] How to get selection indexes of the HTMLDivElement. It does not have the selectionStart and selectionEnd like the textArea
[ ] I could not figure out how to set programatically setSelectionRange on an HTMLDivElement
[ ] Not sure if composition events would work nicely since I noticed that they do not work as expected on google docs. Composition we use when user is inputing Korean for example, or when holding the a to get the ä.

If somebody has ideas how to tackle these let me know. Especially the first two with selection.

Does the contentEditable attribute not handle these automatically?

@MarcoZehe contentEditable indeed allows for the selection to be changed by the user and it will be automatically updated. However for us the contentEditable is not the truth it is hidden away beneath our editor.
So when the user changes the selection in our Editor we need to update the selection in the hidden contentEditable. And that is the reason why we have to manipulate the selection programatically.
Keep in mind that the selection in our editor is not a "real" HTML selection.
Hopefully I explained this correctly, let me know if not and I can try again :)

For contentEditable elements, the Selection API (https://developer.mozilla.org/en-US/docs/Web/API/Selection) can be used to retrieve and manipulate selection programmatically.
It is more difficult to use than textarea, because Selection API manages selections on the whole page. Any element without user-select: none can be selected by user and the selection will be returned by Selection API. It may not be a problem in Code, but definitely need attention when Monaco is hosted in users' page.

@yume-chan that's a good idea, and if I am not mistaken I also tried with that, however I found that API to be much less powerful. Selection.addRange was a bit clunky to use with our model. Another problem was if the editor does not have focus and something is selected in another part of vcscode the underlying editor contentEditable selection should still work - and I am not sure that is the case.
However I should just try it out again and report here, instead of trying to remember what I did.

However for us the contentEditable is not the truth it is hidden away beneath our editor.

Probably a not too smart question, but what is holding you back from implementing something accessible in the true editor?

@leonardder it's a good question. Because our true editor is a bunch of html divs, spans and what not. It is not only text, as there can be inline decorations and other details. it is not a textArea or an input field and screen readers do not really work well with our editor HTML structure. Also the cursor is not the real cursor, the selection is not the real html selection and so on.
I believe @alexdima the author of the editor considered this and he can probably explain in more detail if needed.


About train code

When training, how did the miou and accuracy calculate? On train dataset or validate dataset?
I think it's calculated on val dataset due to https://github.com/RolandGao/RegSeg/blob/main/train.py#L238.
I trained the base regseg model with config cityscapes_trainval_1000epochs.yam on Cityscapes and got the unbelievable results.

Well, I find the max_eval which might be the reason of results.

@RolandGao
Hi,
I wonder what is class_uniform_sampling, I can't find it on google and github.
Could you please give the source of it, or paper.
Thank you a lot !

It's first introduced by Nvidia in this paper https://arxiv.org/abs/1812.01593.
The code is from here https://github.com/NVIDIA/semantic-segmentation.

@RolandGao Hi, I have send a email about some research of RegSeg to you, Did you received that?


Is There a Possbility To Prevent Rotation On Initialisation

Hello, I appreciate for this great library.
Actually this Feature Request is not related with any problem, however, my client asks for possibility of preventing rotation on Wheel Initialization. I couldn't convince them that this isn't possible, so I would like to open an issue. (Maybe it is possible but I didn't find out how to  do. )
Thanks in advance for any kind of answers.

Hey @komnatadeveloper,
have you tried setting the animateFirst option to false?
This should give you the expected result, if I understood correctly.

Hello @kevlatus ,
Sorry, my bad :) Yes I meant thıs one, and I dıdn't notice this option.
Sorry & thank you


Can't I build the flutter app in both tizen and windows?

Hello,
I want to build a fluuter app in both tizen and windows.
before flutter-tizen setting, this project was built well in Windows.
after flutter-tizen setting, it appears as follows and is not built in Windows.
Connecting to the VM Service is taking longer than expected...
Still attempting to connect to the VM Service...
If you do NOT see the Flutter application running, it might have crashed. The device logs (e.g. from adb or XCode) might have more details.
If you do see the Flutter application running on the device, try re-running with --host-vmservice-port to use a specific port known to be available.
So when I ran the flutter run -d windows command, the following error occurred.
$ flutter run -d windows
Launching lib\main.dart on Windows in debug mode...
Building Windows application...
lib/main.dart(5,8): error GBB7C8005: Error when reading '../flutter-tizen/flutter/packages/flutter/lib/material.dart'
how can i solve this problem?

flutter-tizen doesn't affect your existing Flutter installation in any way.
Are you using WSL or something? Would you run flutter clean & flutter pub get?

I assume your problem has been resolved. Please reopen if you still need help.


Prohibit indexes on non-single expressions.

Ensure that the index expression cardinality is never more than ONE.
Fixes: #1320

Please also update the changelog :)


hw.device-type: Various fixes

The Jetson TX2 NX has an eMMC and no SD-CARD slot
The JN30B Nano uses the eMMC module and not the SD-CARD one
The Radxa CM3 on RPI CM4 IOBoard as well as the Radxa zero use rockchip software tools in order to put the eMMC in mass-storage mode
The CM4 module comes in two flavors: one with eMMC and the Lite version which uses the carrier board sd-card slot to load the image. Both use the same balenaOS image. I switched the storage to internal for this DT because it may have one, but this solely depends on the actual module. Another consideration is that this DT can also boot from a USB stick or a NVME drive connected to the mPCIE port.

Change-type: patch

@balena-ci I self-certify!


Immutable backups

Fixes DOC-3197 DOC-2761 DOC-3096
This adjusts the privileges listed on the backup page for the updated write-only backups that are the standard behavior with v22.1.
PR also adds additional section to the Cloud Storage page, so that we can describe upcoming features that we're supporting for cloud storage. Before the 22.1 release intelligent tiering can also be added to this section.
Note: per previous conversations in past PRs, this PR doesn't include how the write-only backups are implemented. This is to avoid going into detail on the file structure of the backup, which changes frequently. Can adjust this as we feel necessary, could also be something that we describe in conceptual docs for 22.1 (https://cockroachlabs.atlassian.net/browse/DOC-1604 that was put on hold due to backup planning shifting)

This change is

TFTR @andf-crl — great suggestions. Re the megaphone span for "New in"... our style guide mentions not using the span in bulleted lists; so I have followed the guidance there.


新版傲游傲游<IP_ADDRESS>0-beta，暴力猴插件是灰色的，不能使用

What is the problem?
How to reproduce it?

What is the expected result?
What is the actual result?
Environment

Browser:
Browser version:
Violentmonkey version:
OS:

@gera2ld


Refactor to allow for language packs

Feature
Create some mechanism to allow text to be bundled into language packs.
Reasons for Implementing
Right now, the bot only really works for english readers. Since Among Us supports other languages, it'd be useful for the bot to support those languages too. But that can't happen so long as the bot hard-codes it's text.
Ideas & Details
Couple ideas:

Move all text into an external file (or set of files) and reference them by ID. (How do we handle templates?)
Create a "translator" interface that takes an arbitrary string and returns a different language if it can. (Lot of regex for templates.)

Alternatives
Alternatively, someone could fork the repo if they want to provide a non-english version. In one sense, that'd be ideal because then it'd be inherently maintained by a translator. But it would mean that the publicly-hosted bot would be english-only.

Closing this issue because the project will be shuttered soon. See #63.


docs(clouddriver): fix yaml alignment

The migration jdbcUrl attribute should be a child of the migration attribute and not a sibling

Thanks kindly!


Array of CRDs causes confusion with installation and mucks with Helm procedure for installing CRDs

Right now users must select the appropriate YAML file to install cass-operator related to their version of Kubernetes. This is due to a BUG upstream, but it leads to additional work on our side maintaining these templates and rendering multiple CRDs. Instead let's remove the offending entries (or provide the appropriate default) and consolidate the CRDs into a single file that works across versions.

I want fill in some details around the Helm problems that this is causing. I am trying to include the cass-operator chart as a subchart for another project. I tried installing the cass-operator chart in a cluster that already has the CRD installed. The helm chart install failed with:
Error: rendered manifests contain a resource that already exists. Unable to continue with install: CustomResourceDefinition "cassandradatacenters.cassandra.datastax.com" in namespace "" exists and cannot be imported into the current release: invalid ownership metadata; annotation validation error: key "meta.helm.sh/release-name" must equal "test": current value is "cass-operator"; annotation validation error: key "meta.helm.sh/release-namespace" must equal "k8c19": current value is "test-canary-upgrade"
In Helm 3, CRDs are treated separately from other objects and need to be stored in the crds directory of the chart. Unfortunately simply moving templates/customresourcedefinition.yaml to a charts directory did not work because the file uses templates. Helm 3 does not allow template in CRDs.
Fixing this issue will hopefully🤞  remove the need for templates in customresourcedefinition.yaml, and then we can move it over to the crds directory.


Add partial support for 3D related conv/pooling/padding

Hi
Nice work, and I found it quite useful.
I would like to push some changes for 3d conv/padding/pooling.
Not all functions are support but is sufficient for my purpose so far.
Hope you can accept the request.
Cheers,

Hey! Sorry for a big delay, I'll review & merge your changes soon. Once again, thank you for your work.

Merged, thank you for your work!


Unable to join discord

hey i am not able to join discord or message any one :( could I know why pls

i got hacked becase the link send by @majjikishore007 in my dm (discord nitro scam thing )
and also the servers i was admin on got nunked (all chanalles got deleted and one new chanall was made called Free nitro and it pined everyone and gave the discord scam link  )

my account too got hacked bro sorry for my mistake

np bro I got my account back I thought you banned me because I did something


How to log upstream_response_time?

Now the access_log just log request_time.
Are there any ways to know backend server -> nginx response time?

Now the access_log just log request_time.
Are there any ways to know backend server -> nginx response time?

this is my log_format
 log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                   '$status $body_bytes_sent "$http_referer" '
                   '"$http_user_agent" "$http_x_forwarded_for" '
                   'rt=$request_time uct="$upstream_connect_time" uht="$upstream_header_time" urt="$upstream_response_time"';

this is output:

<IP_ADDRESS> - - [26/Jul/2019:09:37:27 +0000] "CONNECT example.com:443 HTTP/1.1" 200 5447 "-" "Go-http-client/1.1" "-" rt=0.178 uct="-" uht="-" urt="-"

Hi @sunfuze
Your problem could be hard to resolve. Let me explain
After creating connect-tunnel with backend server,  the nginx(proxy_connect) module only transfers raw stream to backend, it does not parse the stream or requests in the stream. So it cannot log the upstream time of requests in the proxied raw stream.
All statiscs that could be logged has been showed in the doc/variables.

Thx for you explaining. I have one more question about connection keep alive timeout. A client have 300s keepalive timeout and a proxied server have 60s keepalive timeout, the real keepalive timeout is 300s or 60s?

Thx for you explaining. I have one more question about connection keep alive timeout. A client have 300s keepalive timeout and a proxied server have 60s keepalive timeout, the real keepalive timeout is 300s or 60s?

The minumum value will work, so it is 60s.
Also note that the keepalive timeout works on request, but proxy_connect(ngx) module only works on the level of connection session with backend server. In such case, proxy_connect_read_timeout works instead of upstream keepalive timeout.

Thx for you explaining. I have one more question about connection keep alive timeout. A client have 300s keepalive timeout and a proxied server have 60s keepalive timeout, the real keepalive timeout is 300s or 60s?

The minumum value will work, so it is 60s.
Also note that the keepalive timeout works on request, but proxy_connect(ngx) module only works on the level of connection session with backend server, it is L4 tcp proxy server, not L7 request proxy server. In such case,

proxy_connect_read_timeout works instead of upstream keepalive timeout.
client_body_timeout works instead of client keepalive timeout for two successive read operations, not for the transmission of the whole http response.

Thx, Really helpful for me.


Feature request: Option to remove tray icon

OS:
Ubuntu 16.04
Issue Descriptions:
The Player is great and smooth.
I'm happy to see, that there is a link on this player in Ubuntu's Sound menu. And as I allready have this link, it would be great to have ability to remove Player's icon from Ubuntu tray.
Steps to Reproduce:

#636 #300 .

Unfortunately in the near future removing the tray icon just won't be possible as stated in those issues. There is core functionality that would break by removing it at the current time.

First of all, thanks for the great app. I used to run Radiant Player, but it does not support controls from my BT headphones.
There is a feature which I miss though. As you can guess, it's about the tray icon.
Before you send me into funny places, I must say I've read through all tray icon issues and I still don't understand what core functionality you are referring to.
There is one use case which does make sense: if a main window is closed and there is no task bar icon and then a user goes to settings and disables a tray icon as well, then there is no way to close the app or bring back the main window.
There is a solution: don't allow to hide a tray icon if task bar icon is hidden at the moment. It should be a switch on Windows, not checkboxes.
Are there other issues? Sorry, it's hard to gather a proper information because most issues just say "discussed before, closing" with no links to what exactly what discussed. I spent 30 minutes going in circles between those issues and the only issue I understood is the one described above, which can be solved.
Apologies if there is a single place with all issues and I just missed it. I checked FAQ and there is nothing about the tray icon.


Allow retrieving SampleChannel amplitudes

[x] Depends on #3647

Not sure about the renaming breaking backwards compatibility. Can't add a temporary obsoleted class due to it being a struct.

Fyi this is going to break many current rulesets:

https://github.com/EVAST9919/bosu
https://github.com/EVAST9919/lazer-m-vis
https://github.com/swoolcock/rush
https://github.com/Altenhh/tau
https://github.com/LumpBloom7/sentakki

Yep. Open to suggestion on how to resolve that as per PR description.

Guess it's fine to break things, so long as others know. Don't see an easier way around this.
cc @EVAST9919 @swoolcock @Altenhh @LumpBloom7 you guys will need to re-build your rulesets to target the next osu! release (see the osu!-side PR).

At this stage in development users should probably be expecting such issues to occasionally arise. As long as it gracefully fails to load the rulesets (which I think we have handled well these days) it shouldn't be a huge deal.

We actually have no error handling for rulesets. This is actually a 100% crash in those rulesets, of the form:
[runtime] 2020-06-23 07:24:43 [error]: System.MissingMethodException: Method not found: 'osu.Framework.Audio.Track.TrackAmplitudes osu.Framework.Audio.Track.Track.get_CurrentAmplitudes()'.
[runtime] 2020-06-23 07:24:43 [error]: at osu.Game.Rulesets.Bosu.MusicHelpers.MusicAmplitudesProvider.Update()
[runtime] 2020-06-23 07:24:43 [error]: at osu.Framework.Graphics.Drawable.UpdateSubTree() in /home/smgi/Repos/osu-framework/osu.Framework/Graphics/Drawable.cs:line 481

Might be a good time to add handling of such cases..

Shall we skip the rename for the time being, until we have better error handling? I'm fine with adding a TODO for it for a future cleanup effort.

Interestingly it seems like only the rulesets that directly reference the amplitudes crash, the others that override a method that doesn't exist just seem to not care.
So that only makes it bosu, m-vis, and sentakki that crash.
I'm fine with breaking things here.


Support array type for evaluation

Closes #17

Going to close this PR and just push the changes to unblock myself. Feel free to open an issue if you find anything not optimal. :-)

Seems the main branch is protected. Re-openning.

@sheepduke I'll be traveling this week but I'll try and help review when I can. Ping me if you get blocked by anything.


Connection issues after node restart

Hello
To be honest, I'm not even sure if this problem has anything to do with the way this repository creates the cluster, it might be a completely different issue, but I'm running out of ideas.
My problem is, that almost every night, when my nodes are restarted due to updates, some of my pods have problems reconnecting to other pods on different nodes.
I'm running a cluster with 3 worker nodes and I'm using that to run apache kafka, also with 3 nodes (3 broker + 3 zookeeper, both stateful sets). Those zookeeper nodes are the ones usually having the problem.
Here is what happens:
All 3 zk pods are running fine and are connected to each other until a node gets restarted. The restart seems to happen without any problems, but once the zk pod on that node spins back up, it fails to reconnect to the other, still running, pods. The connection attempts fail with "connection refused" and there is no log trace on the pod it's trying to connect to.
The problem goes away as soon as I manually kill the pod which it fails to connect to and that pod gets recreated. Killing and recreating the pod which can't connect makes no difference.
I'm banging my head against this now for almost a week, so if anyone has any ideas they would be greatly appreciated...

@tmahring I feel your pain! We'll find a solution!🤞
Are you running in HA, meaning 3 control plane nodes minimum? If not, this is needed for proper operation. Otherwise you need to turn automatic updates off.
Also if your setup needs to use 3 worker nodes, add 1 more (so 4 worker nodes in total) to allow for proper draining and a node update with a concurrency of one.

I do have 3 controll nodes.
The 3 worker nodes are in 3 different hetzner locations, so I think just adding a 4th one propably wont make a difference, as hetzner cant move the volumes between locations and the pods need persistant storage.
But I think I will add 3 more, just for testing, one in each location.
Could it be that somehow the pods start before connectivity between the nodes is ready? Do you have an idea how I could test for this?
Is there a way I can force kured to restart my cluster? Because I can hardly reproduce the issue by manually draining nodes, but it happens almost every night.

If you touch (create) this empty file var/run/reboot-required on a node, kured will detected it after some time and restart it. You can also tweak the kured config, see the templates, and tell it to recheck more often (by default it's 1h if I remember well), you may want to set this to 5 minutes for testing.
Also, you could try using Calico (set it in the cni plugin variable), I think it has good observability solutions, and I think it is more efficient.
I think trying with nodes in the same region is definitely a good idea!

Soo
i have done some more testing and it seems to me that the problem is caused by a network policy that gets created for zookeeper.
it should limit connections between the zookeeper pods to other zookeeper pods, however it seems to me that it somehow doesn't get updated after the node reboots.
At least the problem goes away once i remove the policy...
Do you know if there is a way i can look at the current state of these policies? so i can see which ips are currently used?

I don't, but we have a flag to turn network policy off when deploying the cluster, that should do it.
Otherwise, try reading this https://rancher.com/docs/k3s/latest/en/installation/network-options/.
And also switching to Calico (which will also disable k3s built it network policies!

I know that with Cilium, you can have tons of observability. But we do not support it yet, however I you want to work on a PR to add it (same way as Calico is added) I will help you, as I have previous experience with it.

@tmahring I'm considering this problem sorted. But please do not hesitate to share your further experience with the matter, it could be useful to other people! Thanks 🙏

Sry for not replying, the problem isn't really sorted, as it still exists, but for now I can life with the workaround of not using the network policy.
I'm quite sure the problem is somewhere i k3s's kube-router implementation, but I haven't found the time yet to go through their code.


New location codes for NYPL

bur51 - Business Center
any other new codes for NYPL?

LPA code changes
"my" split into "pa" (research) and "lp" (branch)


Thunk compare fn

Adds thunk compare fn, tests included.
based on https://github.com/snabbdom/snabbdom/pull/886
fdhttps://github.com/snabbdom/snabbdom/issues/902
https://github.com/snabbdom/snabbdom/issues/143

Hi @wcl. I'm closing this PR as it changes thousands of lines with formatting.
Please comment on #143 if you're still interested in this feature.

Yeah, I think we would implement this after we triage and fix the bugs.
P.S. @paldepind , you didn't close :)

Oops, thank @kuraga :)


About collection handling

Hey!
Really nice idea, library looks prettry good as well,  I had found my self doing the same boleirplate code that this library smothly generate :)
I only have one question why use + plus symbol for collections, IMHO it looks verbose.
 friends {
        +person {
            name = "Arturo"
            age = 28
        }
        +person {
            name = "Tiwa"
            age = 30
        }
    }

over
 friends {
        person {
            name = "Arturo"
            age = 28
        }
        person {
            name = "Tiwa"
            age = 30
        }
    }

(In my code I only instance builder with empty mutable collection and then add each item so generated dsl looks cleaner)

Hi Juan!
Interesting, I'm curious how are you achieving to add each person in the list with this syntax. Can you share the code here so I can see how did you do it? Specially the signature of the friends context to be able to add each "person".

Hey something like this (list is mutable to make keep example short)
data class Person(
    var name: String? = null,
    var age: Int? = null,
    var friends: MutableList<Person> = mutableListOf())

fun person(body: Person.() -> Unit) = Person().apply(body)
fun Person.friends(body: MutableList<Person>.() -> Unit) = body(friends)
fun MutableList<Person>.person(body: Person.() -> Unit) = add(Person().apply(body))

fun main(args: Array<String>) {
    val me = person {
        name = "Juan"
        age = 29

        friends {

            person {
                name = "Jhon"
                age = 31
            }

            person {
                name = "David"
                age = 31
            }
        }
    }

    println(me.toString())
}

If you consider it good and give me some context about expected changes I can submit a pr for this

Juan thanks for the feedback! It's an interesting point! To be honest I need to think about to add this feature as I'm not 100% sure if this could bring other confusions on how to use Collections. Still feel free to send a PR, I think will be a great starting point to review it in more details.

This style is how I do my builders, no need for the +, just the function call adds to its owner's collection.

+1 from me, the + only adds confusion at best IMHO. I tend to use the same style with @apatrida  e.g. in vaultaire

I agree, would be nice to work without +!


Allow multiple View File Extensions

My project mostly has .html.haml views, but some are .html.erb.
Any chance you could allow multiple View File Extensions?  I would set my prefs to html.erb, html.slim, html.haml.  If rails-transporter opened the first view it finds then, like Rails, it would prefer .erb over all others.
This would work for all my projects.

@bronson Yesterday I added View File Extension Fallback options.
https://github.com/hmatsuda/rails-transporter#viewfileextensionfallbacks
Can following settings work well in your use case senario?
View File Extension: 'html.erb'
View File Extention Fallbacks: 'html.slim, html.haml'

Works great!  Very impressive.
Curious, why not just let View File Extensions accept a comma-separated list and have a single field?

Do you prefer single field like this?
View FIle Extension: 'html.erb, html.slim, html. haml'

I would.  That seems simpler to me and still backward compatible.
Also, is there any downside to making "html.erb, html.slim, html.haml" the default?

I agree with your opinion so I decided sigle field this and it's default value is html.erb, html.slim, html.haml.

Love it!


Cancel probing when the ingress or pod is deleted

This is a standard pattern all the other net- have setup. Oddly it was missing for net-gateway-api

/override "Generate some code!"
/override "style / suggester / shell"
/override "style / suggester / yaml"
/override "style / suggester / github_actions"


[VP9e] Fix setting default value of initialDelayInKb

bufferSizeInKb is used before its default values is set, so default value of initialDelayInKb isn't set correctly.

Windows CI failed due to known issue in samples. Going to be fixed by #1388


Health Managers tab shows no data

Admin-ui seems to be working a treat and all the tabs seem to be working fine with accurate data, other than the Health Managers tab which shows no data
Is there an issue with regards to showing health manager status?

Never have modified the Health Manager tab to consume information from the newer HM9000 Health Manager.  The tab that is there today works with the old Health Manager.
As a result, showing no data is currently expected.

Suspected that was the case, just wanted to make sure I wasn't doing something wildly wrong :-)
Thanks for confirming!


Create Descriptor based wallet by default

When we launch the bitcoind process, the default wallet being created enables descriptor mode.

Based on the results from the CI, I think we may need to have Some(true) only on bitcoind >=0.21
something like:
let desc_wallet = if cfg!(any(feature = "22_0", feature = "0_21_1",  feature = "0_21_0")) {
   Some(true)
}
else {
   None
}

Based on the results from the CI, I think we may need to have Some(true) only on bitcoind >=0.21

Agreed, but maybe invert the logic to check if cfg!(not(any(feature = "0_20_1" .... etc., it's a bit longer but then we won't need to update this line every time a new version of core is added.

CI is reliably failing for: 0_20_1, 0_20_0, 0_19_1, 0_19_0. I think because the number of arguments of create_wallet changed (and I think master is working because None is accepted)
We may want to feature gate the call to create_wallet according to the version, but I am not sure even considering that now that https://github.com/rust-bitcoin/rust-bitcoincore-rpc finally shipped with rust-bitcoin: 0.27 I would like to go back to use that dep instead of our custom one.
@sandipndev instead of needing this in your code could you create a new wallet with descriptor_wallet true instead of changing the default?


⚠ Bofrost.at has degraded performance

In 0507267, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1794 ms

Resolved: Bofrost.at performance has improved in 80ab8eb after 29 minutes.


[Feature]: Tree Shaking with only one primitive

Describe the feature
I just discovered that radix-vue is adding 50kb to my build. I am only using the Dialog though, nothing else.

It would be great for performance if there was a way to actively tree-shake it, something like
import { DialogClose, DialogContent, /* ... */ } from 'radix-vue/dialog'

because it's hard for me to imagine that only the Dialog primitive taking up more than 50kb.
Additional information

[ ] I intend to submit a PR for this feature.
[ ] I have already implemented and/or tested this feature.

Even larger in the server build:

I fully support the idea 👍

Semi-related https://github.com/radix-vue/radix-vue/issues/443
Also, it's preferred not to use UMD for cjs build, cause this format is too old and tree-shaking will not work correctly

@madebyfabian how was your setup yaa? You are using Radix-vue's Nuxt modules?
I also had this idea of preservedModules when compiling it. 😁

@zernonia I am using it with the latest nuxt 3.7.4. I did not add it as a nuxt module. I just tried out adding it, it's the exact same outcome.
If it helps, I can create a reproduction repositiory.

did a quick test with Nuxt3 playground locally.. using preservedModules and it seems to be the same.. Seems like the tree-shaking is working fine.

However with settings @floating-ui as external, it is much smaller size.

@zernonia So you mean the current stats (52kb client, 82kb server) are already the tree-shaked version? Is there a way to shrink it down? Background is: I want to fit my nuxt nitro build inside a edge function, where 1MB is the size limit.
I installed headlessui/vue and replaced my modal to use the Dialog from headlessui to compare the size. Their currently at 25kb client, 0kb server. And I am not sure if they even do tree shaking.
If the tree shaking is already working and that's the minimum size to get to, then I think I can close this ticket.

Yup. We can push it down to 36kb after extracting @floating-ui. https://github.com/radix-vue/radix-vue/issues/443
You sure headless-ui is serving 0kb in server? 😮

@zernonia Yes as far as I can tell. This is my implementation:

Vue Component

<template>

      <button
         @click="isOpen = true"
         aria-label="Menü öffnen"
         class="rounded-full bg-primary-700/10 flex items-center justify-center w-9 h-9">
         <NuxtIcon name="menu" class="text-gray-500 text-xl" />
      </button>
      <Dialog :open="isOpen" @close="isOpen = false">
         <DialogPanel class="fixed bg-primary-700 text-white p-6 focus:outline-none z-30 inset-0 w-full h-full">
            <DialogTitle class="hidden">Menü</DialogTitle>

               <button
                  @click="isOpen = false"
                  class="rounded-full bg-white/10 flex items-center justify-center w-9 h-9">
                  <NuxtIcon name="close" class="text-white text-xl" />
               </button>

            <slot />
         </DialogPanel>
      </Dialog>

</template>

And it results in 0kb Server Side. But it causes a hydration mismatch, forcing me to wrap it inside <ClientOnly>. But the 0kb result is with or without the <ClientOnly>. So to be fair, I think radix-vue is ssr friendlier.

Icic.. thanks for the insight @madebyfabian !
hmmm I wonder how to achieve 0kb server bundling tho.. you have any idea how this can be achieve? 🤔

@zernonia I would love to assist on this! Currently I don't have an idea 😄

Will close this off yaa @madebyfabian as Tree-shaking is working correctly. But I will keep this in mind and we can look into how headless/ui bundle with 0kb server side in other ticket 😁


Terminating app due to uncaught exception 'java.lang.UnsatisfiedLinkError'

I have integrated gdx-facebook in my libgdx project.
It is working fine in my android app but on iOS the app is crashing on start up with below exception.

2017-11-12 12:39:47.837453+0530 MY_APP[3408:173492] *** Terminating app due to uncaught exception 'java.lang.UnsatisfiedLinkError', reason: 'java.lang.UnsatisfiedLinkError: No implementation found for void com.badlogic.gdx.backends.iosrobovm.IOSGLES20.init() (tried Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES20_init and Java_com_badlogic_gdx_backends_iosrobovm_IOSGLES20_init__)
	at com.badlogic.gdx.backends.iosrobovm.IOSGLES20.init(Native Method)
	at com.badlogic.gdx.backends.iosrobovm.IOSGLES20.<init>(IOSGLES20.java:28)
	at com.badlogic.gdx.backends.iosmoe.IOSGraphics.init(IOSGraphics.java:125)
	at com.badlogic.gdx.backends.iosmoe.IOSGraphics.init(IOSGraphics.java:195)
	at com.badlogic.gdx.backends.iosmoe.IOSApplication.createGraphics(IOSApplication.java:193)
	at com.badlogic.gdx.backends.iosmoe.IOSApplication.init(IOSApplication.java:176)
	at com.badlogic.gdx.backends.iosmoe.IOSApplication.didFinishLaunching(IOSApplication.java:134)
	at com.badlogic.gdx.backends.iosmoe.IOSApplication$Delegate.applicationDidFinishLaunchingWithOptions(IOSApplication.java:75)
	at com.paxplay.MY_APP.IOSMoeLauncher.applicationDidFinishLaunchingWithOptions(IOSMoeLauncher.java:49)
	at apple.uikit.c.UIKit.UIApplicationMain(Native Method)
	at com.paxplay.MY_APP.IOSMoeLauncher.main(IOSMoeLauncher.java:31)
'
*** First throw call stack:
(
	0   CoreFoundation                      0x000000001789e1cb __exceptionPreprocess + 171
	1   libobjc.A.dylib                     0x0000000017200f41 objc_exception_throw + 48
	2   MOE                                 0x0000000012c51f05 _Z29hasObjCRuntimeBeenInitializedv + 0
	3   MOE                                 0x0000000012c5772a _Z26nativeToJavaMessageHandlerP7ffi_cifPvPS1_S1_ + 1519
	4   MOE                                 0x0000000012c5e629 ffi_closure_unix64_inner + 487
	5   MOE                                 0x0000000012c5dbb2 ffi_closure_unix64 + 72
	6   UIKit                               0x0000000014a91db7 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 4105
	7   UIKit                               0x0000000014a97245 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1720
	8   UIKit                               0x0000000014e52c6c __111-[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:]_block_invoke + 924
	9   UIKit                               0x00000000152203ef +[_UICanvas _enqueuePostSettingUpdateTransactionBlock:] + 153
	10  UIKit                               0x0000000014e52865 -[__UICanvasLifecycleMonitor_Compatability _scheduleFirstCommitForScene:transition:firstActivation:completion:] + 249
	11  UIKit                               0x0000000014e530c3 -[__UICanvasLifecycleMonitor_Compatability activateEventsOnly:withContext:completion:] + 668
	12  UIKit                               0x00000000157b0c11 __82-[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:]_block_invoke + 262
	13  UIKit                               0x00000000157b0aca -[_UIApplicationCanvas _transitionLifecycleStateWithTransitionContext:completion:] + 444
	14  UIKit                               0x000000001549eb9c __125-[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:]_block_invoke + 420
	15  UIKit                               0x0000000015699c3e _performActionsWithDelayForTransitionContext + 100
	16  UIKit                               0x000000001549e998 -[_UICanvasLifecycleSettingsDiffAction performActionsForCanvas:withUpdatedScene:settingsDiff:fromSettings:transitionContext:] + 231
	17  UIKit                               0x000000001521fa4c -[_UICanvas scene:didUpdateWithDiff:transitionContext:completion:] + 392
	18  UIKit                               0x0000000014a95ac6 -[UIApplication workspace:didCreateScene:withTransitionContext:completion:] + 523
	19  UIKit                               0x000000001505e523 -[UIApplicationSceneClientAgent scene:didInitializeWithEvent:completion:] + 369
	20  FrontBoardServices                  0x000000001ae78158 -[FBSSceneImpl _didCreateWithTransitionContext:completion:] + 338
	21  FrontBoardServices                  0x000000001ae80c4d __56-[FBSWorkspace client:handleCreateScene:withCompletion:]_block_invoke_2 + 235
	22  libdispatch.dylib                   0x0000000018f6b43c _dispatch_client_callout + 8
	23  libdispatch.dylib                   0x0000000018f70af4 _dispatch_block_invoke_direct + 592
	24  FrontBoardServices                  0x000000001aeac672 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 24
	25  FrontBoardServices                  0x000000001aeac328 -[FBSSerialQueue _performNext] + 464
	26  FrontBoardServices                  0x000000001aeac897 -[FBSSerialQueue _performNextFromRunLoopSource] + 45
	27  CoreFoundation                      0x00000000178412b1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
	28  CoreFoundation                      0x00000000178e0d31 __CFRunLoopDoSource0 + 81
	29  CoreFoundation                      0x0000000017825c19 __CFRunLoopDoSources0 + 185
	30  CoreFoundation                      0x00000000178251ff __CFRunLoopRun + 1279
	31  CoreFoundation                      0x0000000017824a89 CFRunLoopRunSpecific + 409
	32  GraphicsServices                    0x000000001b7859c6 GSEventRunModal + 62
	33  UIKit                               0x0000000014a98d30 UIApplicationMain + 159
	34  MOE                                 0x0000000012c5da0d ffi_call_unix64 + 85
	35  ???                                 0x00007fff537b3650 0x0 +<PHONE_NUMBER>71792
)
libc++abi.dylib: terminating with uncaught exception of type ObjCException

I do not see the relation to the gdx-facebook extension. Looks to me more of an libgdx issue.
Please try the example app: https://github.com/TomGrill/gdx-facebook-app and let me know if that error shows again.
Did you think of updating proguard rules accordingly?

It has happened after integrating gdx-facebook only.
According to logs it is crashing at
return super.applicationDidFinishLaunchingWithOptions(application, launchOptions);
Though as i try to build the app through Android Studio then the build is also failing with below message.
ld: warning: directory not found for option '-F/Users/rohitgoyal/Desktop/PaxPlay/libGDXProjects/JumpyTile/ios-moe/build/moe/xcodebuild/sym/Debug-iphonesimulator/Bolts'
ld: warning: directory not found for option '-F/Users/rohitgoyal/Desktop/PaxPlay/libGDXProjects/JumpyTile/ios-moe/build/moe/xcodebuild/sym/Debug-iphonesimulator/FBSDKCoreKit'
ld: warning: directory not found for option '-F/Users/rohitgoyal/Desktop/PaxPlay/libGDXProjects/JumpyTile/ios-moe/build/moe/xcodebuild/sym/Debug-iphonesimulator/FBSDKLoginKit'
ld: warning: directory not found for option '-F/Users/rohitgoyal/Desktop/PaxPlay/libGDXProjects/JumpyTile/ios-moe/build/moe/xcodebuild/sym/Debug-iphonesimulator/FBSDKShareKit'
ld: warning: -pagezero_size not page aligned, rounding down
ld: framework not found Bolts
clang: error: linker command failed with exit code 1 (use -v to see invocation)
** BUILD FAILED **
The following build commands failed:
Ld /Users/rohitgoyal/Desktop/PaxPlay/libGDXProjects/JumpyTile/ios-moe/build/moe/xcodebuild/obj/ios-moe.build/Debug-iphonesimulator/ios-moe.build/Objects-normal/x86_64/JumpyTile normal x86_64
Ld /Users/rohitgoyal/Desktop/PaxPlay/libGDXProjects/JumpyTile/ios-moe/build/moe/xcodebuild/obj/ios-moe.build/Debug-iphonesimulator/ios-moe.build/Objects-normal/i386/JumpyTile normal i386
(2 failures)
FAILED
BUILD FAILED
Total time: 7.388 secs
FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':ios-moe:moeMainDebugIphonesimulatorXcodeBuild'.

Task failed, you can find the log file here: /Users/rohitgoyal/Desktop/PaxPlay/libGDXProjects/JumpyTile/ios-moe/build/moe/xcodebuild/XcodeBuild-main-debug-iphonesimulator.log

Is the example app running: https://github.com/TomGrill/gdx-facebook-app ?


Extensions Package for DataAnnotations: Recursively validating an entire object graph

From @spottedmahn on Sunday, 14 October 2018 17:52:02
Can the code that validates an object graph in ASP.NET Core MVC be moved to a Microsoft.Extensions package to allow for re-use outside of MVC?

Background
I wanted to validate an object and I learned of this limitation on the Validator:

It does not recursively validate the property values of the object.

Source: Validator.TryValidateObject Method
MVC Does this, 🤔
But I know ASP.NET Core MVC validates the whole object graph.  How can I use it?
It seems that Microsoft.AspNetCore.Mvc.ModelBinding.Validation.ValidationVistor seems to do the magic but it seems to be tied to MVC based upon the dependencies:
public ValidationVisitor(
            ActionContext actionContext,
            IModelValidatorProvider validatorProvider,
            ValidatorCache validatorCache,
            IModelMetadataProvider metadataProvider,
            ValidationStateDictionary validationState)
        { .... }

Additional Notes
Reference: StackOverflow post
Open Source Package to validate the object graph: reustmd/DataAnnotationsValidatorRecursive
Copied from original issue: aspnet/AspNetCore#3626

Even though this is a request to move functionality out of MVC, the discussion might as well begin with the MVC folks.

We would consider doing something like this if we attempted to decouple model binding and validation from MVC in the future. I don't think we should make a new package if we don't have a plan to use it ourselves and it doesn't fill a critical need that our users have. We have a track record of doing a bad job when we build something we don't use.
@spottedmahn I'd suggest copying validation visitor out of MVC and customizing the code, then publishing your own package. The details of it are indeed quite coupled to MVC. You'll have to define a few core capabilities to make this work.

How do you determine what types/properties to consider?
How to find/construct/cache validators?
What to do with errors?

Copy that, thanks 🙏 @rynowak

close-me, thanks @Eilon


Links in FAQ are not opening in Chrome

Expected Behaviour
Clicking on a link in FAQ should bring up that link in Chrome browser
Actual Behaviour
Nothing happens when clicking on a link.
Steps to Reproduce
In FAQs, add a link using markdown syntax or as text.
In case of markdown syntax, the link shows up anchored just fine but clicking on it does nothing.
In case of plain text, the link is anchored but again, clicking on it does nothing.
We have links in the troubleshoot page too (support.google.com) and that seems to work just fine. So I am assuming links in FAQ should work fine as well. However, the troubleshoot page is in Typescript (.ts) whereas the FAQs are in markdown format.

Can you elaborate on what the ideal behavior would be (IE opening a new window with the referenced link)? If you inspect the anchor element, what does that URL look like in HTML (does it have a target attribute)?

Sorry for the late response.
That's exactly it. I would expect clicking on the link to will cause it to open in a browser.
Not sure how I would inspect the anchor element of the chrome app.
If it helps, I used the following in MD - [via this link](https://docs.google.com/some-valid-link,"")

I have pulled from the master branch and 0.7.1.

I reproduced just now. It looks like my suspicions were correct. It's not applying a target="_blank" attribute to the link which prevents Chrome Apps from opening the link to prevent malicious/unintended behavior.
JS Console Error: Can't open same-window link to "https://www.google.com/"; try target="_blank".
So I've just fixed this internally, but I don't know when we will make our next push. Given that, I'll give you the code you'll need to put in the FAQ component.
New code (to replace line 28-46):
export class FaqComponent implements OnInit {
  sanitizedFaqContent?: string|null;
  renderer = new marked.Renderer();

  constructor(
      private readonly http: HttpClient,
      private readonly sanitizer: DomSanitizer) {}

  ngOnInit() {
    this.renderer.link = (href, title, text) => {
      const html = this.renderer.link.call(this.renderer, href, title, text);
      return html.replace(/^<a /, '<a target="_blank" ');
    };

    this.getFaq().subscribe((response) => {
      this.sanitizedFaqContent = this.sanitizer.sanitize(
          SecurityContext.HTML, marked(response, {renderer: this.renderer}));
    });
  }
  /** Gets the FAQ from assets/faq.md file. */
  getFaq(): Observable<string> {
    return this.http.get('./assets/faq.md', {'responseType': 'text'});
  }
}

File: https://github.com/google/loaner/blob/master/loaner/chrome_app/src/app/manage/faq/faq.ts

Trying it out right now.

So that took a little longer than expected to show in the webstore. But it is fixed.
Thank you, @helfrichmichael. 😄


Services problem fixing

Unfortunately the OSGi service do not work for me now, though just in case someone else can spot the problem, she or he can add another commit.
The SPI service seems to work fine though.

It seems other parts were fixed the OSGi problems (in a different way). The .gitattributes would be nice to have.


Https concatenation issue

Hi again, i just wanted to share that i had issues to call Azure OpenAI model cause i was filling the yaml like this :
providers:
  - id: azureopenai:chat:gpt-35-deployement-name
    config:
      apiHost: https://apiAdress.azure.com

but  on execute it prefill the apiHost with an https://, giving

https://https://apiAdress.azure.com

instead of :

https://apiAdress.azure.com

Is it possible to implement a basic test (constains "https"...), to prevent any new user wasting time to detect this double https concatenation.
I know this is a dumb trap, i just need to readcarefully but when we copy URL from azure there is already the https.
No one would thing to remove this https when copy pasting 😄
Thanks

Is there any misunderstanding, or did I explain something incorrectly?

All clear, Theo!  Some other providers support apiBaseUrl, which behaves how you expected it to.  Perhaps it would make sense to add this config property to the Azure provider as well.

Yeah i totally agree, wouldn't it be interesting to add a little warning in the documentation maybe ?


Automatically force rerenders

Fixes #302
I've added a couple of render-centric constructors to HalogenF. This let's us handle the current pending render status, and force one if necessary, when querying children. I think this is probably the least invasive way to do it for the moment, while still maintaining a somewhat well-defined algebra.
I've tested it manually, and it solves the bug case. I've also dropped it into SlamData, while replacing forceRerender with a noop that won't trigger rerendering behavior, and all tests pass.

Nice! :tada:
A bit of a shame it needed integrating into HalogenF itself, but your point in the other issue about the flattening makes sense. We do have HaltHF in there too, which also isn't really supposed to be used by library consumers though, so it's not so bad. They can't break anything by using the constructors at least!
:shipit:

Yeah, I just couldn't think of anyway to do it without adding something to HalogenF 😞. Maybe in a different version we can tease stuff like this out. This formulation of it is at least "safe", in that you can't really mess up anything.

nice. having to do these manually always worried me...

I don't know all the details of when we use this in SlamData, but I have a few thoughts:

Having to always imperatively update state like this is problematic. If this was something that could be propagated declaratively, it wouldn't be an issue.
Multi-staged, async transitions can be somewhat problematic. Not directly related, but I think this issue crops up more in that case.
Maybe we need to rethink the app's architecture when these problems crop up. If you need to set state immediately after the component should be introduced in the tree, maybe that state should have been propagated via initialState.

@natefaubion I tend to agree; I still think it's important to make sure that it happens automatically, as you appear to have done, in order to enable equational reasoning. It was pretty weird that pure unit >> m could behave differently from m before.


[Feature request] Allow to deactivate user queries

We plan to use the plugin for user authentication. We plan to manage the permissions on the group level only. I.e. the permissions will be granted only to groups, never to individual users.
We even plan to configure the keycloak server in a way that the following queries will not be allowed:

List members of a particular group
List all users

Only listing of groups will be allowed. Note that querying the data about a particular user (by her ID) will be allowed so that the plugin will be able to provide the membership info for the current user.
But if I understand correctly, for rendering of the pages in the admin area of the cockpit, the plugin will try to execute the above queries which will result in an error.
Would it be possible to add a config parameter that would mean "ignore user queries"? So that they always return empty lists (but no errors)?
I hope the motivation is clear. If not, I'll be happy to elaborate more. If it makes sense, I'd try to implement it.
Thank you for the very useful plugin!

Hi @fml2,
thanks for your request. It is of course technically possible, to implement your feature request. You have shown that within your pull request as well.
However, this is a very very specific requirement, which exactly contradicts the original purpose of the Identity Provider. The Identity Provider Plugin is exactly the part, which allows the seemless integration with all Identity Service Queries. Your'e disabling the most important ones.
In your scenario I would suggest to not use the Keycloak Identity Provider, but authenticate and authorizate Camunda User by using only standard Spring Security OAuth2 mechanisms ore even the Keycloak Spring Integration. The only thing you will have to do for Camunda, is to extract the groups of the authenticated user out of the token and transfer that to Camunda. If Keycloak is configured appropriately you're going to find this info directly in token. Implementation will be something similar to the KeycloakAuthenticationProvider within the SSO example. Just exchange the logic within getUserGroups and extract the group information directly out of the token.
If you still want to keep using the Indentity Provider, you're of course free to build your own very specific version. This could make sense if you're not using SSO (and thus do not login e.g. via Keycloak login page), but keep using the login page of Camunda. It would be a very downsized version of this plugin, giving you the freedom to cover further specific requirements of the own environment.
Does that make sense?
Best regards
Gunnar

Yes, this does perfectly make sense! Thank you for the quick response. The issue can be closed now.


Are Google Analytics included?

Are Google Analytics automatically included in projects? Or do we need to set up our own?

We have Google Analytics setup for the site. We haven't created a way to share this data yet. There also isn't a mechanism for you to setup your own Analytics for the pages on zooniverse.org.


CLI fails on version 0.1.0-alpha.12 with "designsystemet: command not found"

Description of the bug
When trying to run the CLI command, it fails. This started happening with 0.1.0-alpha.12. It seems to be a different bug than the one described in https://github.com/digdir/designsystemet/issues/2133.
Steps To Reproduce

Run npx<EMAIL_ADDRESS>See error designsystemet: command not found
Run npx<EMAIL_ADDRESS>See expected output

The problem also happens when @digdir/designsystemet is a dependency in package.json and run through e.g. a script
    "build": "npm run clean && designsystemet tokens -o ./dist",

Additional Information
In case it's relevant:
OS is macOS 14.5
npm version 10.8.1
node version 20.12.1

Jepp!
It broke after we changed transpiler to better support using the package in code (in addition to the cli).
We changed to use tsup and it seemingly worked before, but not now 🤔

Should be working albeit with a warning as I had to add assert { type:'json' } to the package.json import in the init script.

Hi, it looks like this is still broken in the latest version. I tried with both 0.1.0-alpha.18 and 0.1.0-next.20, and I'm getting sh: designsystemet: command not found with both of these

Hi, it looks like this is still broken in the latest version. I tried with both 0.1.0-alpha.18 and 0.1.0-next.20, and I'm getting sh: designsystemet: command not found with both of these

Ah! Thanks for the headsup. It was broken at some point since I am doing som summer cleaning and changing our release managment, but @next should be working (@digdir/designsystemet@0.1.0-next.20).
How are you running the cli, with npx or installed locally?

I've tried it with npx and locally installed, but both do fail. And I'm running on linux

Interesting! Do you have time for a call tomorrow (or some time this week) to look closer at this together?

Yeah, sure! I'm in the designsystemet-slack, so you should find me there.

This error is due to misunderstanding of publishConfig.


Support configurable TTL on topics/queues created by Dapr

Right now undelivered messages hang forever in Dapr, given the same app ID, the messages will be listed as errors on each app start. Propose there is a way for user to specify TTL on messages for each instance of Dapr (regardless of the pubsub users), or if possible, for each pubsub, For example "topic1:600, topic2:3600. Could be combined with the broader thinking around consolidating retries across Dapr #1289

Closing this in favor of existing issue: #843


Support both path and Batch UID when resuming jobs.

Currently we are force to provide the Batch UID when resume some jobs with smart_dispatch. This PR add also the option of providing the path (i.e. SMART_DISPATCH_LOGS/{Batch UID}).
Since I'm using the bash auto-complete to get the Batch UID, I find it frustrating to have to remove the SMART_DISPATCH_LOGS/ part every time.

This address the last point of #77.


fix KYLIN-4850, merge Cube's override kylin_properties into building …

…job's configuration
Proposed changes
Describe the big picture of your changes here to communicate to the maintainers why we should accept this pull request. If it fixes a bug or resolves a feature request, be sure to link to that issue.
Types of changes
What types of changes does your code introduce to Kylin?
Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update (if none of the other choices apply)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[ ] I have create an issue on Kylin's jira, and have described the bug/feature there in detail
[ ] Commit messages in my PR start with the related jira ID, like "KYLIN-0000 Make Kylin project open-source"
[ ] Compiling and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If this change need a document change, I will prepare another pr against the document branch
[ ] Any dependent changes have been merged

Further comments
If this is a relatively large or complex change, kick off the discussion at user@kylin or dev@kylin by explaining why you chose the solution you did and what alternatives you considered, etc...

Codecov Report

:exclamation: No coverage uploaded for pull request base (kylin-on-parquet-v2@39086e3). Click here to learn what that means.
The diff coverage is n/a.

@@                  Coverage Diff                   @@
##             kylin-on-parquet-v2    #1523   +/-   ##
======================================================
  Coverage                       ?   24.31%
  Complexity                     ?     4620
======================================================
  Files                          ?     1138
  Lines                          ?    64438
  Branches                       ?     9512
======================================================
  Hits                           ?    15669
  Misses                         ?    47134
  Partials                       ?     1635

Continue to review full report at Codecov.

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


Create absurl template func

See #1105
Create a template func that given baseUrl variations:

http://mybase.com
http://mybase.com/

{{ absURL "mycss.css" }}
Prints  http://mybase.com/mycss.css
And for

http://mybase.com/sub
http://mybase.com/sub/

Prints  http://mybase.com/sub/mycss.css

I just ran into a situation where a server relative URL function would have been nice.
For the above two cases it would return: /mycss.css and /sub/mycss.css
but I found a workaround at a higher level with host names.

@ehammond yes, that is a natural "pair companion" for this one -- I'll create an issue for it.


chore(Blog): update “2021-10-06-léglise”

Automatically generated by Netlify CMS

👷 Deploy Preview for lucileetguillaume processing.

Name
Link

🔨 Latest commit
a59e61679dbc6ab895515b0399c3d65ca6bb0f4a

🔍 Latest deploy log
https://app.netlify.com/sites/lucileetguillaume/deploys/6241d6a02db3f40008ea617c


Kind issues

Had the same idea and just merged #1552, but we should keep the version update and rename this


Fix codec specification through FFI

Fix codec specification handling by sending characters into the C/C++ layer, rather than duplicating the work of the CV_FOURCC_MACRO & friends in the Haskell layer. To learn new codec values you might use, search for instances where users called CV_FOURCC.
Changes:

e3375e7: wrapCreateVideoWriter takes int fourcc as four separate chars and calls CV_FOURCC on them (fix: previously the fourcc argument was not used)
f918c53: createVideoWriter takes codec:String of length four and passes it to C wrapCreateVideoWriter (fix: previously was hardcoded to send a malformed int fourcc value)

This does not address the issues surrounding the underlying VideoWriter implementation being dependent on system libraries & a runtime choice of implementation details.

Hey, I'm not sure this was ready to be merged without testing first. It might be the case that the codec string needs to be reversed before being split up into characters:
-        | 4 == length codec = fmap (fromIntegral . ord) codec
+        | 4 == length codec = fmap (fromIntegral . ord) $ reverse codec

Some corroborating tests are advised -- my system is borked.


Enable offloading attention and layer / RMS norm to CUTLASS

With TVM built with USE_CUTLASS, adding --use-cutlass-attn --use-cutlass-norm enables offloading attention and layer / RMS norm to CUTLASS.
On RTX 4080 and Vicuna 7B, attention offload brings 12-15 tok / s improvement, and RMS norm offload adds another 4-5 tok / sec.

Super excited to have this upstreamed!