Upgrade gotest.tools to v3

What does this PR do?
Fix all references to package gotest.tools/assert to use instead gotest.tools/v3/assert. This allows to move to the maintained branch of that module and drop references to a module with a Go-modules-incompatible version (v2.2.0+incompatible).
Motivation
Dependency cleanup.
Possible Drawbacks / Trade-offs
None.
Describe how to test/QA your changes
Note that I wasn't able to run all modified tests because some are behind build tags which are not compatible with my development environment (macOS).
CI should be able catch mistakes.
Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

Hello @dolmen, we ended up removing gotest.tools/assert from the dependencies as the usual testing framework in the datadog-agent repository is testify and gotest.tools/assert was usually not used on purpose (see https://github.com/DataDog/datadog-agent/pull/19422). Still thank you for the contribution !


Support Carthage

Would be nice to have Carthage support

@wtmoose I understand that Carthage needs each project repo to include an Xcode project, which we have here already. I'm not too familiar with Carthage beyond that; is there anything else we need to do here?

Added pull request #524


Fix trimming of Helm chart asset name

strings.Trim's second argument is a cutset, so it trims any character in the set if found at the start or end. The method that we want is strings.TrimSuffix.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm
/approve

/lgtm
/approve


Link property alias not being added to custom link generated

Hi, Getting a short URL with Unity doesn't create a link with provided alias. Instead it always generates a different link even if an alias is provided.
` Sample Code to recreate issue
        BranchUniversalObject universalObject = new BranchUniversalObject();
        universalObject.canonicalIdentifier = "id12345";
        universalObject.canonicalUrl = "https://branch.io";
        universalObject.title = "id12345 title";
        universalObject.contentDescription = "My awesome piece of content!";
        universalObject.metadata.AddCustomMetadata("foo", "bar");
       // register a view to add to the index
        Branch.registerView(universalObject);
        BranchLinkProperties linkProperties = new BranchLinkProperties();
        linkProperties.alias = "customaliaslink
        linkProperties.tags.Add("tag1");
        linkProperties.feature = "sharing";

        Branch.getShortURL(universalObject, linkProperties, (url, error) =>
        {
            if (error != null)
            {
                Debug.LogError("Branch.getShortURL failed: " + error);
            }
            else
            {
                Debug.Log("Branch.getShortURL url: " + url);
            }
        });

`
I've identified the cause for this issue and will be making a PR asap.
Thank you.

@hdjay0129 thanks for the report!
we will add the fix in Unity SDK asap.


Should tag repo as a lovr project

I usually click the tag for the repo to find other lovr projects

I thought tags can only be put in releases? Since there's only source code I've put lovr as keyword in the about section.


Support Intel latest Xeon SP Sapphire Rapids CPU of the eagle stream platform

Processor Counter Monitor  (2022-01-10 12:00:20 +0100 ID=799a3f6)
Linux arch_perfmon flag  : yes
Hybrid processor         : no
IBRS and IBPB supported  : yes
STIBP supported          : yes
Spec arch caps supported : yes
Error: unsupported processor. Only Intel(R) processors are supported (Atom(R) and microarchitecture codename Nehalem/Nehalem-EP, Atom(tm), Westmere/Clarkdale, Sandy Bridge, Westmere-EP, Sandy Bridge-EP/Jaketown, Nehalem-EX, Westmere-EX, unknown, Centerton, Baytrail, Ivy Bridge, Haswell, Broadwell, Ivy Bridge-EP/EN/EX/Ivytown, Haswell-EP/EN/EX, Cherrytrail, Avoton, Skylake U/Y, Broadwell-EP/EX, Skylake-SP, Cascade Lake-SP, Broadwell-DE, Knights Landing, Apollo Lake, Skylake, Denverton, Icelake-SP, Icelake, Snowridge, Tiger Lake, Kabylake/Whiskey Lake, Alder Lake, Kabylake, Comet Lake, Rocket Lake). CPU model number: 143 Brand: "Genuine Intel(R) CPU 0000%@"
Disabling NMI watchdog since it consumes one hw-PMU counter.
Access to Processor Counter Monitor has denied (no MSR or PCI CFG space access).

These cpus are samples of the ES2 phase, so show 'CPU model number: 143 Brand: "Genuine Intel(R) CPU 0000%@"'

duplicate of https://github.com/opcm/pcm/issues/396


After opening @EnableOAuth2Sso, request authorization. Infinite redirection/login upon successful authorization

Authorization server configuration

Client server

For these configurations

It has been solved because there is no spring-security-jwt. But I don't understand why this configuration can still succeed without   security.oauth2. resource.jwt.key-uri  authorization in spring-boot-sample-web-secure-github projects.

This is the configuration of the spring-boot-sample-web-secure-github project.

The infinite redirect is typically caused by the client not being able to verify the token due some kind of misconfiguration. One thing I'd point out is that the antmatchers on your client are configured in the reverse. Basically, you are doing:
authorizeRequests()
    .anyRequest().authenticated()
    .antMatchers("/error", "/admins/**", "/login").permitAll()

Which is the equivalent of doing:
if ( isAuthenticated() ) {
    // ... do it
} else {
    return 403;
}

if ( path == "/error" | "/admins/**" | "/login" ) {
    // ... do it
}

Because anyRequest matches everything, your other endpoints are never tested. I'd recommend doing:
authorizeRequests()
    .antMatchers("/error", "/admins/**", "/login").permitAll()
    .anyRequest().authenticated()

instead.
If that doesn't fix your issue, will you please do two things for me? First, please create a simple, self-contained project that reproduces the issue. Second, please post that to a StackOverflow question. Then, it will be a lot simpler to import and test and give you some advice.
Also, for further support questions, please post to StackOverflow. As an alternative, you can hit up the Gitter chat room.


Enhance Text Extractor quality by switching to another implementation

Description of the new feature / enhancement
It because Text Extractor use the Windows built-in OCR capability to scan images. The quality of the OCR is quite low. Is it possible to have an option that switch to Azure AI Vision with OCR and AI or GPT-4o to do the OCR job?
Scenario when this would be used?
I want a better OCR implementation.
Supporting information
No response

Is there an issue tracking this feature?
I found this issue https://github.com/microsoft/PowerToys/issues/25040 but it's also closed.


Consider using go-bindata to keep object definitions in YAMLs rather than in Go code

Currently in the operator we construct DaemonSet objects directly as a Go structure:
ds := &apps.DaemonSet{
    ObjectMeta: metav1.ObjectMeta{...},
    Spec: apps.DaemonSetSpec{...},
}

This way we end up with very long though simple functions and this prevents us from enabling some linter checks like funlen.
Evaluate moving object definitions to YAML files and generating Go files with go-bindata the way it's done in OpenShift operators: https://github.com/openshift/cluster-ingress-operator/tree/master/pkg/manifests.
Try to annotate the generated go-bindata files with buildtags so that linter checks don't go crazy: e.g. generate debug and release versions of the Go files and enable linter checks only for the debug version.

@rojkov https://golang.org/pkg/embed/

Nice new feature. Looks cleaner than go-bindata

@rojkov I gave it a try using tips from this blog post
package main

import (
	_ "embed"
	"fmt"
	"sigs.k8s.io/yaml"
	apps "k8s.io/api/apps/v1"

)
var (
    //go:embed deployments/qat_plugin/base/intel-qat-plugin.yaml
    b []byte
    s = func() (s apps.DaemonSet) {
	   err := yaml.Unmarshal(b, &s)
	   if err != nil {
		   panic(err)
	   }
	   return
    }()
)

func main() {
    fmt.Printf("s: %#v\n", s)
}

Updated the title: Go embed likely better option than go-bindata.

Moving the Go code to YAML files may enable us to add the funlen check to .golangci.yaml.

@bart0sh one problem to solve first is how to make embed to find the YAMLs because the embedded files must be under same dir hierarcy (and symlinks are not allowed) as the code that embeds them.

In PMEM-CSI, we treat our deploy directory as a Go package. That package then embeds the YAML files and exports them with a suitable API.

@mythi it worked this way: https://github.com/intel/intel-device-plugins-for-kubernetes/pull/747
We can either symlink other embed.go for other plugins or just copy this file as it should be identical for all of them.

@bart0sh this looks good to me (and thanks @pohly!)

We can either symlink embed.go for other plugins or just copy this file as it should be identical for all of them.

or have deployments/embed.go that pulls in all devices?

@mythi thanks. that's even better as yamls are not always cooperate with that simple wildcard pattern. will do.


Add some tests to ensure number of renders

One of the big these we are claiming is limiting the number of renders that we are triggering. It would be good to add some tests around this so that we don't accidentally break this in the future.
I think we could use something like this to achieve this kind of testing. https://github.com/bvaughn/jest-react-profiler

Sounds great - we should always keep in mind the occasional re-render for good reason is not a big deal, but I totally agree it's something you want to monitor.

Relates to #26

yea I am going to working on that :) this one is on my todo list first https://github.com/react-hook-form/react-hook-form/issues/205

No worries! Just going through the issues. Wish I had time to write these right now.

@stramel it's actually difficult to write test with jest-react-profiler :( because useForm trigger re-render external. I tried a couple examples without luck, you want to take a quite a look and see what you can get out of it and then I can continue the work.

instead of jest-react-profiler, I have used automation to capture the re-render counts. you can run
yarn start:app and yarn cypress:open to see the number re-render to be matched.


Version staleness check too aggressive for stable channel

https://github.com/flutter/flutter/blob/ae2b215efe257485ba790301ff81aaf426a8445c/packages/flutter_tools/lib/src/version.dart#L217
Once we have a stable channel, people on that channel will start seeing a "WARNING: your installation of Flutter is X days old." message after 35 days, but there'll be no newer version available since that channel will only receive updates approximately once a quarter.
Ideally, we'd tailor that age check to the channel.  A dumb (but better than nothing) alternative would be just to bump that age check up to 100 days...

/cc @gspencergoog


Vulnerability roundup 96: mediawiki-1.34.2: 1 advisory [4.3]

search, files

[ ] CVE-2020-27621 CVSSv3=4.3 (nixos-20.09)

Scanned versions: nixos-20.09: d105075a1fd.
Cc @redvers

See also: #100310, #99811

This version is no longer present in the environment.
Closing.


required=True bone can be set to whitespace - is this valid?

This bone definition
name = StringBone(
    descr="Name",
    required=True
)

allows to save a value with content " ". Is this behavior correct?

Proposal: Create a default vfunc for StringBone that doesn't allow for whitespace only values. This can be overridden. There should be no default trimming for any bone. TextBones raise a similar problem relating empty HTML-tags which also result in empty strings.

Wait for pending solution for TextBone


Weather Effects

Areas should have weather effects that are more or less globally applied in that area.  Weather should depend on factors such as season and time of day, etc.

Question to ponder.
Make all weather effects physical objects affecting room.
Example.
10 inch snow layer has following effects.
Weigh kg/m^2
Height 10 inch
Can interacti with objects such as vegetation (if plant

Time of the day and year is basicaly sun exposition.
Check breeze.
Next to sea or big bodies of water, you always have a wind blowing from the land into the sea in thr evening and at in the morning direction of wind is reversed.
Relative temperature of water next to the shore is higher than that of land mass after sunset and lower in the morning.
Big mountain ranges 2000m + act as barrier for low clouds so in mountains weather tend to shift more dramatically without notice.
Coastal regions tend to have milder climate.
Big landmasses have harsher climate

Some more about hydrology.
Densly forested areas have higher water retention levels. Trees and vegetation holds excess water working as a natural buffer or dam.


Early science validation using HSC data

The papers resulting from this will report on early validation with HSC data.
These  will provide a baseline for comparison with early LSST images which is important for the metrics.
These will also help establish how usable DRs will be.

18/JAN/24

Further papers are expected to be added to this epic


Move monaco's JS to its own rollup chunk

See #109
Even for a local preview this does seem to improve the load time of the main page UI. The output of yarn build is now:
dist/index.html                               0.69 kB │ gzip:   0.36 kB
dist/assets/StanModelWorker-BIcPRCbH.js       6.69 kB
dist/assets/codicon-DWH9l-dS.ttf             79.84 kB
dist/assets/stancWorker-1gYcNykd.js       1,842.68 kB
dist/assets/index-CKdHn2_2.css                3.45 kB │ gzip:   1.02 kB
dist/assets/monaco-DSq1fXy-.css             127.42 kB │ gzip:  20.40 kB
dist/assets/index-DaaP102i.js               598.90 kB │ gzip: 184.37 kB
dist/assets/plotly-cartesian-CygogzrV.js  1,345.80 kB │ gzip: 462.72 kB
dist/assets/monaco-DRY7gfXQ.js            2,298.03 kB │ gzip: 598.19 kB

That's great. Looks good to me.


Possible memory leak or normal behavior

I've just noticed that after each scan the memory allocated is getting 8-10Mb bigger (after about 10 scans memory usage exceeds 100 Mb ). Is it OK, or maybe an issue of Debug Navigator? It seems that when the PassportScannerController dismisses, it has not been fully deallocated. Tesseract cash clean up doesn't help.

Probably, I've found a solution (taken the problem really exists) - added  a check if the var tesseract has already been assigned to @objc public func setup(). Now memory usage remains stable even after a multiple consecutive scans

Sounds good. Could you make a Pull Request for that?

The change is published as version 4.6.0


Not-logged-in user cannot upload file

I am working on an app where any user can upload files, however if I try it, I get the following error from browser:
Exception in delivering result of invoking '/cfs.files.filerecord/insert': TypeError: Meteor.userId is not a function
It seems that uploading of files does not work for a user unless he is logged in.

+1. This makes it hard to use for a local admin panel that doesn't require a user.

@robinnewhouse Also if you want a system where anyone can upload files (say, while Signing Up). The fix is simple though: I changed a couple of lines of code and it runs smoothly without producing errors.


[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt functionality, rather than a Big Idea better suited to a discussion

Describe the feature
DBT has no excepton handling capabilities.  For all those who have worked with database stored procedures, this is a must, and that is why all databases have it, including cloud databases.
The below is an excerpt from a snowflake stored procedure I wrote, which works flawlessly. It backs up data, then deletes old pre-existing data and then inserts new data. If an error occurs during delete/insert, it restores the data from backup, thus enabling idempotency. Note: The delete + insert is not a merge. It might delete 100 rows and then insert 85. Or visa versa.
If this were dbt-ized, instead of using a stored procedure, I would need to acheive the same level of data protection.  To do that, DBT needs "when exception" hooks.   In my use case, that would enable the restore code ("swap with" code).
Thanks,
Dave
– backup data in the table. snowflake has unique commands for this…
--This could be donw in a dbt pre-hook:
drop table if exists FINANCE.CONFIGURATION_HIST_BAK;
create table FINANCE.CONFIGURATION_HIST_BAK clone FINANCE.CONFIGURATION_HIST;
– delete old and then inert new (think replace not merge)incomming data. Cannot use merge specifically
-- In DBT, I am thinking could first insert the new rows, and then use where logic in a post-hook to delete the old ones.
BEGIN
– delete -pre-existing data
DELETE FROM FINANCE.CONFIGURATION_HIST
WHERE CLOSING_MONTH = :VAR_CLOSING_MONTH;
–insert new data
INSERT INTO FINANCE.CONFIGURATION_HIST
(COUNTRY_CODE, SUBSIDIARY, COMBO, ENTRY_NO, CLOSING_MONTH)
SELECT COUNTRY_CODE, SUBSIDIARY, COMBO, ENTRY_NO, :VAR_CLOSING_MONTH
FROM FINANCE.CONFIGURATION_TEMP;
-- HERE IS THE BIG ONE BELOW.  I NEED TO EXECUTE THIS CODE ON ERROR, BUT DBT HAS NO EXCEPTON HANDLING.
-- A "WHEN EXCEPTION" HOOK COULD ACHEIVE THIS SAME FUNCTIONALITY:
-- note that dbt would also need to catch the sqlerrm (error message) as well.  This would allow things like insert to a log table
EXCEPTION
WHEN OTHER THEN
– restore table data on any error
ALTER TABLE FINANCE.CONFIGURATION_HIST SWAP WITH
FINANCE.CONFIGURATION_HIST_BAK;
VAR_BUS_ERROR := sqlerrm || ‘: Error Loading
ENTRY_NO_CONFIGURATION_HIST’;
raise BUS_ERROR_EXC;
END;
Describe alternatives you've considered
Not using DBT, and using stored procedure instead.
Who will this benefit?
Anyone (everyone) that needs exception handling capabilities.
Are you interested in contributing this feature?
No response
Anything else?
No response

This deserves a more thorough response. Just jumping in for now to link a related issue/discussion from a few years ago: https://github.com/dbt-labs/dbt-core/issues/1968

Thanks for reaching out @ddumasCT !
I've got two separate responses for you:

Initial reaction to your feature proposal
Suggested alternatives for porting your stored procedure

1) Initial reaction to your feature proposal
Based on what I understand, your primary proposition is to introduce the capability of managing exceptions, potentially by means of an additional hook named when_exception that would complement the existing hooks.
Paraphrasing Drew's sentiment here and making it my own:
We'd rather not add a new hook type to dbt unless it's truly impactful. After all, the best-case scenario would be if you could accomplish your transformations without a when_exception hook 😎 . I'm struggling to come up with scenarios that couldn't be addressed by an existing materialization or a custom materialization. However, I have faith that you or others will identify any scenarios that I may have overlooked 🙏
I definitely see how the logic of the stored procedure does have exception handling, but I suspect it can be refactored to use dbt components that are currently available. Which brings us to...
2) Suggested alternatives for porting your stored procedure
TL;DR
Reading through the use case you described, it sounds like delete+insert incremental strategy could be one direction to consider. I don't pretend to understand your use-case well enough to know for certain, so you should check it out (and other types of incremental materializations) for yourself!
General recommendations
In general, we advocate for declarative approach to defining a dataset rather than procedural flow of building a dataset. e.g. we encourage using built-in dbt materializations rather than a series of DDL and DML statements (even if there is an pre-existing stored procedure that works perfectly).
When using a built-in dbt materialization, I'd expect for a when_exception hook to be rarely necessary (but happy to learn about when it might be necessary!).
When porting an existing stored procedure, I'd consider these options in order, stopping at the first one that meets the requirements:

Is there an existing built-in materialization that accomplishes the same goal?

See here for an in-depth look at different strategies for incremental materializations.

Can the logic be re-written into a series of models (like described here)?
Can the logic be accomplished via a custom get_incremental_XYZ_sql macro (not yet documented 😬)?
Can the logic be accomplished in a general-purpose custom materialization?
If we got here, there are some extra tricky requirements... are they all truly necessary, or can the requirements be transformed so that options 1 or 2 can solve the problem?

I'd expect the first two to be the most common, and all the rest to be much more rare.
Could you give the suggested alternatives a look and see if any of them would work for you? If not, I'll be eager to learn what makes them not work.

Hi Doug,
Thanks for getting back.  Is the delete+insert materialization wrapped inside a transaction?  If so, that should handle the functionality of DML, but still does not address actual exception handling.  As you know, exception handling has nothing to do with the type of materialization used.  However, do the custom alternatives you list allow for failure code that is triggered on DML failure?
I am surprised the lack of support for exception handling has not come up before.    As you know, It's built into all modern programming languages, and database developers rely on it.
I do feel that my idea of the when exception hook would add great value to the product.
Thanks,
Dave

From: Doug Beatty @.>
Sent: Wednesday, 22 February 2023 1:33 PM
To: dbt-labs/dbt-core @.>
Cc: David Dumas @.>; Mention @.>
Subject: Re: [dbt-labs/dbt-core] [CT-2143] "When Exception" hook is needed because DBT has no exception handling (Issue #7011)
[EXTERNAL]
Thanks for reaching out @ddumasCThttps://github.com/ddumasCT !
I've got two separate responses for you:

Initial reaction to your feature proposal
Suggested alternatives for porting your stored procedure

Initial reaction to your feature proposal

Based on what I understand, your primary proposition is to introduce the capability of managing exceptions, potentially by means of an additional hook named when_exception that would complement the existing hookshttps://docs.getdbt.com/docs/build/hooks-operations#about-hooks.
Paraphrasing Drew's sentiment herehttps://github.com/dbt-labs/dbt-core/issues/1968#issuecomment-561244330 and making it my own:
We'd rather not add a new hook type to dbt unless it's truly impactful. After all, the best-case scenario would be if you could accomplish your transformations without a when_exception hook 😎 . I'm struggling to come up with scenarios that couldn't be addressed by an existing materializationhttps://docs.getdbt.com/docs/build/materializations#materializations or a custom materializationhttps://docs.getdbt.com/guides/advanced/creating-new-materializations. However, I have faith that you or others will identify any scenarios that I may have overlooked 🙏
I definitely see how the logic of the stored procedure does have exception handling, but I suspect it can be refactored to use dbt components that are currently available. Which brings us to...

Suggested alternatives for porting your stored procedure
TL;DR

Reading through the use case you described, it sounds like delete+insert incremental strategyhttps://medium.com/indiciumtech/understanding-dbt-incremental-strategies-part-2-2-add59889ea17#9fdc could be one direction to consider. I don't pretend to understand your use-case well enough to know for certain, so you should check it out (and other types of incremental materializationshttps://medium.com/indiciumtech/understanding-dbt-incremental-strategies-part-1-2-22bd97c7eeb5) for yourself!
General recommendations
In general, we advocate for declarative approach to defining a dataset rather than procedural flow of building a dataset. e.g. we encourage using built-in dbt materializations rather than a series of DDL and DML statements (even if there is an pre-existing stored procedure that works perfectly).
When using a built-in dbt materialization, I'd expect for a when_exception hook to be rarely necessary (but happy to learn about when it might be necessary!).
When porting an existing stored procedure, I'd consider these options in order, stopping at the first one that meets the requirements:

Is there an existing built-in materializationhttps://docs.getdbt.com/docs/build/materializations#materializations that accomplishes the same goal?
*   See here for an in-depth look at different strategies for incremental materializationshttps://medium.com/indiciumtech/understanding-dbt-incremental-strategies-part-1-2-22bd97c7eeb5.
Can the logic be re-written into a series of models (like described herehttps://docs.getdbt.com/guides/migration/tools/migrating-from-stored-procedures/1-migrating-from-stored-procedures)?
Can the logic be accomplished via a custom get_incremental_XYZ_sql macro (not yet documentedhttps://github.com/dbt-labs/docs.getdbt.com/issues/1761 😬)?
Can the logic be accomplished in a general-purpose custom materializationhttps://docs.getdbt.com/guides/advanced/creating-new-materializations?
If we got here, there are some extra tricky requirements... are they all truly necessary, or can the requirements be transformed so that options 1 or 2 can solve the problem?

I'd expect the first two to be the most common, and all the rest to be much more rare.
Could you give the suggested alternatives a look and see if any of them would work for you? If not, I'll be eager to learn what makes them not work.
—
Reply to this email directly, view it on GitHubhttps://github.com/dbt-labs/dbt-core/issues/7011#issuecomment-1440760665, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A36FVKBV65KUA7S336UUSBDWYZZ23ANCNFSM6AAAAAAVB6EB4U.
You are receiving this because you were mentioned.Message ID: @.***>

@dbeatty10 said it well! I won't add too much more.
In terms of its philosophy, dbt is not a fully featured imperative-style programming language, nor do we think it should be. We try to avoid adding complexity unless it is solving for concrete use cases common in data/analytics engineering, and ideally in an opinionated way. While generic support for exception handling would be one way to solve for these use cases, we want to be thoughtful about addressing each in turn, and figuring out if it's truly the best way.
It sounds like the two use cases you called out are:

Leaving the old unchanged table in place if the DML statement fails
Logging information (metadata) about the failure

dbt already does both of these things, in a more standard & opinionated way:

Materializations have "exception handling" in the sense of, rolling back open transactions (on data platforms that use transactions) if any statement fails. You declaratively define just the materialization & strategy you want to use, rather than rewriting imperative & boilerplate code (DDL/DML) for each model.
dbt has a capable system for structured logging, and writes standard metadata artifacts at the end of every run. You can upload this metadata to the data warehouse using packages such as dbt_artifacts. This is preferable to, and more performant than, inserting single records into logging tables on analytical databases (trust us, we tried that too!).

Hi Jeremy,
For the DML, we know that only the delete+insert  strategy will work, and not merge.  With delete+insert incremental strategy, does Dbt wrap both in a single transaction?  If not, and they are treated as 2 separate transactions that would be bad.  For example, the delete could succeed, and the subsequent insert could fail.  The table would then be left with deleted records = Not Good.
Can you elaborate on how Dbt already handles that.  I cannot find it anywhere in the doc.
Thanks,
Dave

From: Jeremy Cohen @.>
Sent: Friday, 24 February 2023 6:19 AM
To: dbt-labs/dbt-core @.>
Cc: David Dumas @.>; Mention @.>
Subject: Re: [dbt-labs/dbt-core] [CT-2143] "When Exception" hook is needed because DBT has no exception handling (Issue #7011)
[EXTERNAL]
@dbeatty10https://github.com/dbeatty10 said it well! I won't add too much more.
In terms of its philosophy, dbt is not a fully featured imperative-style programming language, nor do we think it should be. We try to avoid adding complexity unless it is solving for concrete use cases common in data/analytics engineering, and ideally in an opinionated way. While generic support for exception handling would be one way to solve for these use cases, we want to be thoughtful about addressing each in turn, and figuring out if it's truly the best way.
It sounds like the two use cases you called out are:

Leaving the old unchanged table in place if the DML statement fails
Logging information (metadata) about the failure

dbt already does both of these things, in a more standard & opinionated way:

Materializations have "exception handling" in the sense of, rolling back open transactions (on data platforms that use transactions) if any statement fails. You declaratively define just the materialization & strategy you want to use, rather than rewriting imperative & boilerplate code (DDL/DML) for each model.
dbt has a capable system for structured logginghttps://docs.getdbt.com/reference/events-logging, and writes standard metadata artifactshttps://docs.getdbt.com/reference/artifacts/dbt-artifacts at the end of every run. You can upload this metadata to the data warehouse using packages such as dbt_artifactshttps://hub.getdbt.com/brooklyn-data/dbt_artifacts/latest/. This is preferable to, and more performant than, inserting single records into logging tables on analytical databases (trust us, we tried that too!https://github.com/dbt-labs/dbt-event-logging).

—
Reply to this email directly, view it on GitHubhttps://github.com/dbt-labs/dbt-core/issues/7011#issuecomment-1443674643, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A36FVKFEZW5ZZPBW3N4QA5DWZCYPVANCNFSM6AAAAAAVB6EB4U.
You are receiving this because you were mentioned.Message ID: @.***>

With delete+insert incremental strategy, does dbt wrap both in a single transaction?

On dbt-snowflake, yes!

Here's where we define the macro to wrap DML in explicit begin; + commit;
Here's where we use that macro to wrap delete + insert for that incremental strategy in particular

If you try it out, you should see dbt submitting begin + commit before and after the delete + insert statements.

Jeremy,
Thanks for getting back  - reading the code it's not as clear to me.  I just want to make sure I understand. For the delete+insert incremental strategy, both DMLs will be in the same single transaction, correct?
Ex.
Begin;
      delete from where...;
      insert into ...;
Commit;
So, if the delete succeeds, and then the insert fails, the delete would be rolled back, correct?
Thanks,
Dave

From: Jeremy Cohen @.>
Sent: Friday, 24 February 2023 7:04 AM
To: dbt-labs/dbt-core @.>
Cc: David Dumas @.>; Mention @.>
Subject: Re: [dbt-labs/dbt-core] [CT-2143] "When Exception" hook is needed because DBT has no exception handling (Issue #7011)
[EXTERNAL]
With delete+insert incremental strategy, does dbt wrap both in a single transaction?
On dbt-snowflake, yes!

Here'shttps://github.com/dbt-labs/dbt-snowflake/blob/1dc2e7c60e20e925b95c909d4957f3909d2d2d03/dbt/include/snowflake/macros/adapters.sql#L275-L289 where we define the macro to wrap DML in explicit begin; + commit;
Here'shttps://github.com/dbt-labs/dbt-snowflake/blob/f30ca40a596af646c749e6c82bf3a2209edc8502/dbt/include/snowflake/macros/materializations/merge.sql#L35-L38 where we use that macro to wrap delete + insert for that incremental strategy in particular

If you try it out, you should see dbt submitting begin + commit before and after the delete + insert statements.
—
Reply to this email directly, view it on GitHubhttps://github.com/dbt-labs/dbt-core/issues/7011#issuecomment-1443726753, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A36FVKBBTKYFGFZVOXEJEADWZC5VHANCNFSM6AAAAAAVB6EB4U.
You are receiving this because you were mentioned.Message ID: @.***>

Thanks Doug, I will try - I will force a failure with cast(my_varchar_column as date) function in the insert statement, and see if the delete is rolled back.
Dave

From: Doug Beatty @.>
Sent: Friday, 24 February 2023 9:57 AM
To: dbt-labs/dbt-core @.>
Cc: David Dumas @.>; Mention @.>
Subject: Re: [dbt-labs/dbt-core] [CT-2143] "When Exception" hook is needed because DBT has no exception handling (Issue #7011)
[EXTERNAL]
👍 Yeah, I think that's the case @ddumasCThttps://github.com/ddumasCT, but you should try it out yourself. (And you can let us know if it works differently than that 🙏 )
With a test model in your own project, you could intentionally cause an insert to fail by triggering a divide by 0 error. Then you could check that the transaction rolled back.
Note: Not all databases support transactions. For those that do, then the relevant dbt adapter should perform the rollback as described.
—
Reply to this email directly, view it on GitHubhttps://github.com/dbt-labs/dbt-core/issues/7011#issuecomment-1444016182, or unsubscribehttps://github.com/notifications/unsubscribe-auth/A36FVKGRHHALYM3KW2N2QIDWZDR55ANCNFSM6AAAAAAVB6EB4U.
You are receiving this because you were mentioned.Message ID: @.***>


install error on mac: subscript out of bounds

With devtools preinstalled, the install gives an error.
> devtools::install_github("rstudio/sparklyr")
Downloading GitHub repo rstudio/sparklyr@master
from URL https://api.github.com/repos/rstudio/sparklyr/zipball/master
Installing sparklyr
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (22) The requested URL returned error: 404 Not Found
Warning in download.packages(x$name, destdir = dest_dir, repos = x$repos,  :
  download of package ‘config’ failed
Error in download.packages(x$name, destdir = dest_dir, repos = x$repos,  :
  subscript out of bounds
In addition: Warning message:
In download.file(url, destfile, method, mode = "wb", ...) :
  download had nonzero exit status

I can download the zipball from the direct link. The local install gave other errors.
> install.packages('/Users/code/Downloads/rstudio-sparklyr-ab7f008', repos = NULL, type="source")
ERROR: dependencies ‘sparkapi’, ‘config’, ‘rappdirs’ are not available for package ‘sparklyr’
* removing ‘/Library/Frameworks/R.framework/Versions/3.2/Resources/library/sparklyr’
Warning in install.packages :
  installation of package ‘/Users/code/Downloads/rstudio-sparklyr-ab7f008’ had non-zero exit status

@koaning One workaround is to install each dependency explicitly, but thanks for bringing this up.
@kevinushey @jimhester: Are there cases in which dependencies from devtools won't auto-install? Is there something worth considering changing in sparklyr to automate this during te install?

To anybody installing this manually: sparkapi can be installed via
devtools::install_github("rstudio/sparkapi")

rappdirs and config appear to be on CRAN.

Can confirm that the manual workaround seems to work.

No, they'll always auto-install, however one issue is that if the version
of R is < 3.2 then there are no binaries from CRAN to install the failure
above might be encountered. I believe as of R 3.2 R will try source
packages as a fallback but that doesn't solve the problem for 3.1.
What version of R are you running?
On Thu, Jun 30, 2016 at 2:49 AM, vincent d warmerdam <
<EMAIL_ADDRESS>wrote:

With devtools preinstalled, the install gives an error.

devtools::install_github("rstudio/sparklyr")
Downloading GitHub repo rstudio/sparklyr@master
from URL https://api.github.com/repos/rstudio/sparklyr/zipball/master
Installing sparklyr
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (22) The requested URL returned error: 404 Not Found
Warning in download.packages(x$name, destdir = dest_dir, repos = x$repos,  :
download of package ‘config’ failed
Error in download.packages(x$name, destdir = dest_dir, repos = x$repos,  :
subscript out of bounds
In addition: Warning message:
In download.file(url, destfile, method, mode = "wb", ...) :
download had nonzero exit status

I can download the zipball from the direct link. The local install gave
other errors.

install.packages('/Users/code/Downloads/rstudio-sparklyr-ab7f008', repos = NULL, type="source")
ERROR: dependencies ‘sparkapi’, ‘config’, ‘rappdirs’ are not available for package ‘sparklyr’

removing ‘/Library/Frameworks/R.framework/Versions/3.2/Resources/library/sparklyr’
Warning in install.packages :
installation of package ‘/Users/code/Downloads/rstudio-sparklyr-ab7f008’ had non-zero exit status

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/rstudio/sparklyr/issues/56, or mute the thread
https://github.com/notifications/unsubscribe/AAGXx625T8xYa2gVINn02nSEll3Md81tks5qQ5E5gaJpZM4JB_J1
.

Great! Thanks for validating this.

This is the R version I am now running.
               _
platform       x86_64-apple-darwin13.4.0
arch           x86_64
os             darwin13.4.0
system         x86_64, darwin13.4.0
status
major          3
minor          2.1
year           2015
month          06
day            18
svn rev        68531
language       R
version.string R version 3.2.1 (2015-06-18)
nickname       World-Famous Astronaut

Also ... I'm really liking what I'm seeing here you guys. Nice work!
I've seen a couple of clients switch their stack from R to python in the last year because of spark (all the while complaining about the lack of a good plotting library). This new rstudio feature might just get people back on the R-bandwagon.

Is it possible that devtools needs to be updated? (Perhaps it's one of the older versions that doesn't understand the Remotes: field?)

The error here:
Warning in download.packages(x$name, destdir = dest_dir, repos = x$repos,  :
  download of package ‘config’ failed

I'm guessing this could just be due to connectivity issues.

i have tried it on two different wifi networks, that was not it. Upgrading devtools seems to have done the trick.


Disable GTM if cookie consent has not been provided

Add new middleware that, when rendering a template using the TemplateResponse object, will set a flag on the context data called showGTM.
This flag will be true if both of these conditions are met:

The cookies_policy cookie has been set
The decoded JSON value of cookies_policy includes an attribute named usage that has been set to True

If the flag is set, and is True, then the Google Tag Manager analytics will be enabled. Otherwise, they are disabled.

Hi @LewisDaleUK - I'm getting a KeyError: 'cookies_policy' error when running this branch locally?


Provide non-red highlight for Search field to make it look less like a field error

When I hover over the Search field to enter a keyword, the field highlights in error, which makes it look like there is a field error or that something is broken in search:

Per Darick, let's use the highlight color that Tailwind uses: https://tailwindcss.com/docs/installation

Addressed in https://github.com/xmtp/xmtp-dot-org/pull/195


any plan for GPU A100 and RDMA support? thanks

@glorialee820 could you please respond to @davinwei question?

It looks like @glorialee820 has answered. Closing the ticket.


2GP Dependency Resolution

Critical Changes
Changes
Issues Closed

Note: tests not yet complete.

I diverged somewhat from the original design, where I was pushing additional complexity to allow for matching against any branch, because the semantics for how to do matching based on branch name across repos were more complicated than I anticipated. If time permits, I will revisit.


Investigate fan-out join queries for loaders (cache warming)

Entity works on full rows of data (the projection of all queries is *). This is because the privacy logic of a privacy policy is allowed to use the entire entity rather than just a subset of fields, which makes for a very expressive potential of authorization logic.
Joins are extremely powerful in the sense that they allow combining two or more tables in order to create a third intermediate/temporary "table". The issue is that in the general case, this third table isn't possible to express using an entity (since it's dynamic) and therefore creates an issue with how to authorize access to a row of that "table".
So, the tradeoff that entity makes is to not allow joins and to require doing them in the application in exchange for authorization correctness. While this does incur potentially higher memory and an extra round trip to the DB, the tradeoff is most often worth it since we can now guarantee that all data access is authorized and the authorization is sound.
Now, there is a very narrow join case that could work with entities, and that's the case of doing a fan-out load with the projection limited to the * of the resulting object. For example:
select b.*
from apps ap
join builds b on b.app_id = ap.id
where ap.account_id = 'aaa-bbb-ccc-123'

This seems like an interesting case to investigate since it is theoretically possible to authorize the returned objects since they have entity type "build". The association loader could make use of it as well. Association loader is currently just a set of convenience methods that load the chain of entities specified and currently only supports 1:1 foreign keys but it's definitely possible to extend it to 1:n for fan-outs. We could also potentially change it to construct these join queries, but we'd have to be fairly careful to ensure that it's built in a way that is general enough that both RDBMS and nosql could theoretically implement the "join" logic since entity is built to be database-independent.

Coming back to this and doing some investigation in code resulted in some interesting cases. Essentially, we have quite a lot of surface area and cases to think through if we want to implement this.
The way I'm thinking about this interface is something like await EntityLoader.loadById(id, loadDirectives), which loads and returns the entity by ID, and also pre-caches entities directed by loadDirectives in the dataloader so that subsequent calls to get those entities is faster.

When a load is issued with load directives, what do we do if we're in a transaction (which bypasses any dataloader and cache adapters and goes straight to the database adapter for data)?

I'm thinking we should ignore the directives. Otherwise we'd have to change the return type of the loader function to return loaded directives as well.

When a load is issued with load directives and the requested root entity is already in the dataloader or cache adapter (entity with ID in example) such that no database call is issued, what do we do about the load directives?

I'm thinking we should ignore the directives. In my opinion, we don't want to slow down the initial call in order to pre-cache future calls (which will succeed whether or not they're pre-cached).

When a load is issued with load directives and the database adapter is used (request not in dataloader or cache adapter), what should we do?

Issue a query of the form SELECT [column fields list aliased with prefix as table_1], [column fields list aliased with prefix as table_2], ..., [column fields list aliased with prefix as table_n],  FROM table_1 LEFT JOIN table_2 ON table_1.<load_directive_column> = table_2.<load_directive_load_by_column>, ..., LEFT JOIN table_1 on table_n ON table_1.<load_directive_column> = table_n.<load_directive_load_by_column>. Then, in the database adapter, parse out the different entity fields into separate objects and return them to the data manager via an agreed-upon format. Then, in the data manager, somehow insert the results into the other entities' data managers for future use.

Overall this seems like it should work, but we do need to decide whether the tradeoff of the added complexity and implicit edge cases are worth it.

The main advantage I see is the reduction in transactions, but we could perhaps get that with explicit BEGIN/COMMIT or START TRANSACTION in our DataLoader.


gfx: defer downstream shader compilation until draw/dispatch.

This change defers the shader compilation and actual pipeline state creation until it is needed by a draw call.
The reason for this is that creating a MutableRootShaderObject requires a IShaderProgram. If the user is creating a mutable root shader object, they will first need to create a IShaderProgram. Before this change, creating a IShaderProgram with a slang program that has 0 specialization arguments will immediately trigger downstream shader compilation. However there are cases where the user is creating MutableRootShaderObjects but never actually use them. Actively compiling the shaders is causing a slow down in user application's start up time. To address this issue, we always compile shaders and create pipeline state objects lazily until it is definitely needed.

I am merging this in without review to get a release for a Falcor MR.


Upgade gating to use ansible-lint 2.2.0

ansible-lint 2.2.0 added the --exclude flag which will let us ignore the ceph_* roles without jumping through hoops (removing, recloneing) each time we run that lint job.

ansible-lint 2.3.2 is out now, too.

Closing because the patch merged months ago.


Refactor Code for 1.0

This entire repository needs a ~little~ lot of TLC. For instance, it seems to have been written with no deference to DRY principles. For example, lib/idataq.js has a class with 3 functions, sendToDataQueue, receiveFromDataQueue, and clearDataQueue. 90% of the code in these functions is the same, the only difference is the iPgm parameters that are added at the beginning of functions. The rest of the code is more like... looping and waiting for the results to come back, and I'm not even sure that code is written all that great.
While I'm linting (#21), I'm going to get familiar with the program and then I'll propose what we should do to abstract a lot of this out into a single function, then pass the parameters that need to be sent to the pgm.

Resolved by PR #33


Rebased version of #70 - Leaflet 1.x support

PR from leaflet1.0 branch incorporating Leaflet 1.x work by @braandl (#70); have rebased the commits.
One issue is that it looks like it will be difficult to retain JSON-P support due to the onKothicDataResponse() taking additional arguments, including a 'done' callback, due to changes in Leaflet. @Komzpa @DerDakon how important do you think this is? My personal view is that now that kothic,js supports native GeoJSON, it's more important to support up-to-date Leaflet at the expense of JSON-P.

I personally have no real use of that anymore. YMMV.

OK thanks.. this looks good to go now.. merging into master.


Add collision avoidance nullspace component to IK solver

This PR adds a collision avoidance component to the differential IK solver.
It does this by finding a collision Jacobian and pushing things away from that direction. Here's a picture to try explain.

I have no idea if I'm doing this right... math is hard.

I think we need Cartesian servoing to see this in action.

This is just amazing.
https://github.com/sea-bass/pyroboplan/assets/7966037/b57de32e-15e6-498f-aa0a-c912dd3e9b8b
https://github.com/sea-bass/pyroboplan/assets/7966037/0e83aaa2-2f9f-4ee3-bc93-b4efa19565db

I think we need Cartesian servoing to see this in action.

Curious if the latest changes make that servoing better. The math seems more sound now.
When I carve out my next time block to work on this, I'm going to try validate the HPP-FCL collision/distance queries to see if they are correct.

I just found something that might be necessary to iron out to do this correctly:
https://github.com/humanoid-path-planner/hpp-fcl/issues/587
I think relying on just the collision result normal/penetration depth may not have sufficient information to get the direction of the collision vector correct.

Yeah, so the way these tasks are stacked is that the IK takes priority over the collision checking.
Meaning that regardless of collision, the IK solver will reduce its error (per first derivatives). BUT if there is redundancy in the degrees of freedom, it will null out any motion that is towards collision and use the other DOFs instead.
If this were to be cast an actual collision-avoiding servo, I think the tasks would be flipped over so that you first do the collision avoidance, and use the nullspace of that task to actually track your target commands.


✨ struct subscripting is heavily used

Load and subscription is heavily used so should be reviewed for performance improvements

Simd parsing could be useful here, with cython optimized get

the json parsing is pretty fast, orjson beats python ported simd parsing in a lot of benchmarks


Remove sqlite temp files on clean up level cache

In some cases temporary sqlite files may remain when deleting a sqlite
cache level, in particular WAL and shared memory files when WAL is
enabled.
Failing to delete these files raises an error when trying to recreate a
level's cache.
Information on sqlite temp files: https://www.sqlite.org/tempfiles.html

Thanks!


Enhance and Optimize Search Queries

Allow people to search by paper code directly from the search box. (Would depend on how #8 turns out)
Allow multiple fields to be searched directly through the search bar.
Optimize queries for retrieval speed.
Use a better Fuzzy / Full text search algorithm.

Some Regex based pre-formatting of the search query might help.

Taken over by #31


update examples (#8144)

Pull request opened by the merge tool on behalf of #8144

Merged into branches iso7 in d7e70b6ba7935290a16e25b457d93de1b28e666c


[SPARK-22109][SQL][BRANCH-2.2] Resolves type conflicts between strings and timestamps in partition column

What changes were proposed in this pull request?
This PR backports https://github.com/apache/spark/commit/04975a68b583a6175f93da52374108e5d4754d9a into branch-2.2.
How was this patch tested?
Unit tests in ParquetPartitionDiscoverySuite.

Test build #82119 has started for PR 19333 at commit 42fa83c.

LGTM, pending Jenkins.

Test build #82119 has finished for PR 19333 at commit 42fa83c.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/82119/
Test PASSed.

Thanks! merging to branch-2.2.

@HyukjinKwon Could you close this PR?


React is not defined at http://tleunen.github.io/react-mdl/

There is an error with the doc pages: http://tleunen.github.io/react-mdl/

Could you explain? I don't see any errors.

sure, all I see is:

Closing as facebook.com is blocked, I will try again when its not blocked.

Indeed, if fb.me is blocked, the script won't load. I'll update the link to use another cdn instead.
I'm reopening the ticket as a reminder.


[SPARK-39865][SQL] Show proper error messages on the overflow errors of table insert

Spark-context

spark-3.4: https://github.com/apache/spark/commit/d5dbe7d4e9

Followup: https://github.com/apache/spark/commit/9f9a0a4507

spark-3.3: https://github.com/apache/spark/commit/19991047d5

What changes were proposed in SPARK pull request?
The table insertion is using the same CAST expression, but the error message
was not improved following changes done in ANSI CAST error handling
Old error message:
> create table tiny(i tinyint);
> insert into tiny values (1000);

org.apache.spark.SparkArithmeticException[CAST_OVERFLOW]: The value 1000 of the type "INT" cannot
be cast to "TINYINT" due to an overflow. Use `try_cast` to tolerate overflow and return NULL instead.
If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error.

New Message:
org.apache.spark.SparkArithmeticException: [CAST_OVERFLOW_IN_TABLE_INSERT] Fail to insert a value of
"INT" type into the "TINYINT" type column `i` due to an overflow. Use `try_cast` on the input value to tolerate
overflow and return NULL instead.

Why are the changes needed in Spark?
Current error message is confusing and showing the hint of If necessary set "spark.sql.ansi.enabled" to "false" to bypass this error doesn't help.
Does this PR introduce any user-facing change?

Yes, change of exception message

Why it might affect RAPIDS?

The plugin needs to check the datatype of the cast during table insertion and check for overflow.
AnsiCastOpSuite.doTableInsert()(https://github.com/NVIDIA/spark-rapids/blob/branch-22.08/tests/src/test/scala/com/nvidia/spark/rapids/AnsiCastOpSuite.scala#L741) will be affected by the change as the exception message is different.

Impact on Testing?
Yes.

Update AnsiCastOpSuite
May need fix to the exception messages

Requires Doc update?
No.

This change went into Spark 3.3.1, so will need to be fixed before we support that version.

@amahussein
I am not seeing the old message when I run the given script against Spark 3.3.2, instead I see the new message. In addition to that, all the overflow tests in AnsiCastOpSuite are passing.
Is this still a valid issue?

#6256 added support to the OverflowInTableInsert and the tests were modified to pass that check.
This issue was opened to revisit the behavior including handling the exception and the error.
If you find that the plugin behavior is identical to spark3.3 and spark3.4. Then feel free to close the issue.


chore(wmg): rewrite x axis using react

This PR rewrites the X axis to use react so that we have implementation parity between X and Y axes.
One caveat is that the Y axis uses buttons whereas the X axis uses divs with click listeners. I had trouble orienting text inside the buttons sideways using CSS.
@tihuan Do you think this is problematic (div vs button)?

I converted the div elements to buttons with an inner div element containing the text
I used @ashin-czi 's very handy formatCellLabel (now formatLabel) function to perform inner truncation of gene labels that are too long.

Tagging @seve and @ashin-czi in review for visibility to this change.


General cleanup using Roslynator.

And manually move some Tinkerer code around to allow use of static readonly.
Please note there are several of these
#pragma warning disable S1481 // Unused local variables should be removed
that need sorting
Also there are few files I'm confused about.  For example GameUiContext is showing the addition of
                   case Hotkeys.CTRL_SHIFT_H:
                        GameHud.ShowAll(gameLocationBaseScreen, GetInitiativeOrPartyPanel(), GetTimeAndNavigationPanel());
                        return;

which appears to have come from dev.
The file ArtilleryConstruct_Force has changes I don't remember making.

The file ArtilleryConstruct_Force has changes I don't remember making.

I think you were adding back in code that was taken back out in https://github.com/ChrisPJohn/SolastaCommunityExpansion/pull/550/files

I've closed this. Will have to start again but don't have the enthusiasm right now.


codecov integration

Codecov Report

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

@@           Coverage Diff           @@
##             main      #11   +/-   ##
=======================================
  Coverage        ?   82.28%
=======================================
  Files           ?       12
  Lines           ?      175
  Branches        ?        0
=======================================
  Hits            ?      144
  Misses          ?       31
  Partials        ?        0

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 1608843...139d826. Read the comment docs.


compress uri with lzma ?

how usefull it is ?
not much as i got minifier
just for the kick ?

deemed useless because minifier fix the issue


Custom validation won't work

I want to have a password field with confirmation. But it's just not possible for me to access the other field. So whenever I use the confirmPassword field, I don't get the value of password logged but undefined.
password:
  type: String
confirmPassword:
  type: String
  custom: ->
    console.log @field('password').value
    if @value isnt @field('password').value
      return 'passwordMismatch'

Looks right to me, any idea?

I'm not sure, but there was an earlier issue like this that was apparently resolved:
https://github.com/meteortemplates/forms/issues/4
Let me know if that's of any help.

Yes this is true, but i dont know this is bug or feature))))
In row 671 https://github.com/meteortemplates/forms/blob/master/lib/module.coffee#L671
validating only one field of all data and when you use  @field('password') SimpleSchema dont know about this field
i have same problem and dont know how resolve this((

Closing because #84 is a duplicate of this issue and this has been resolved in the upcoming release.


Incorrect days coming from buildFormatter

Hi there! I think I found a bug when you use a custom format. I've made this sandbox to reproduce it. The expected result should be 21 days ago, but it results in 29 days ago.
This happens when the formatter doesn't define units above days. A fix is to define the other units (weeks, months, years). My expectation from reading this in the docs

unit : A string representing the unit in english. This could be one of:

is that it should be possible to skip the bigger units and show a result in days.
Are we doing something that's not expected here, or is there a bug in buildFormatter?
@digitalmaster

I'll take a look. Thanks!


Added label to InputTheme interface

Addresses the error:
TS2322: Type '{ input: any; bar: any; label: any; inputElement: any; }' is not assignable to type 'InputTheme'.
Object literal may only specify known properties, and 'label' does not exist in type 'InputTheme'.
when adding a theme for label in <Input theme={{label: styles.label}} />

@javivelasco bump

Thanks!


Add welcome tour for 3.1.0 beta.1

@kazuhitoyokoi this is the last bit needed for 3.1.0-beta. If you are able to translate it, that would be great. But I know it is late with you.

@knolleary I translated the welcome tour. So I will create the pull request soon.


targets issue

hi i trained your retinanet code.
So it works well. but i have one question.
You divide the regression targets by [0.1, 0.1, 0.2, 0.2] in loss function.
But i can not understand why you did like this.
Can you answer me that question?

I see you asked a similar question here: https://github.com/fizyr/keras-retinanet/issues/659
I think @hgaiser 's answer is quite good, so I'll go ahead and close this.


Implementation of the the Wigner thermal conductivity formula

Implementation of the the Wigner thermal conductivity formula (both with the exact and RTA scattering operator) described in [Simoncelli, Marzari, Mauri, Nature Physics, 15 (8), 809 (2019); Simoncelli, Marzari, Mauri arXiv:2112.06897 (2021)].

Thanks @MSimoncelli. Could you write tests for velocity_operator.py? If you have no idea about the test, please let me know.
I think showing Total execution time is unnecessary.

Thanks for the prompt feedback @atztogo. I haven't written test for velocity_operator.py because I do not know what they are. Could you let me know more about this? I am also available for a zoom call if needed.
I printed the total execution time because I find it very useful in phono3py, since in complex crystals calculations can be quite long. Anyway, if you prefer I can remove the total time.

@MSimoncelli, I started merging this PR into phono3py. See https://github.com/phonopy/phono3py/pull/83. I started with merging velocity operator before thermal conductivity.
Your tests of velocity operator seem system dependent, and fail in the github workflow (https://github.com/phonopy/phono3py/runs/5431823650?check_suite_focus=true), and also on my mac. Do you want to fix code or relax the tolerance?

@atztogo I have updated the code, now the test for the velocity operator works on the GitHub workflow

This has been done manually.


Support for sum() with complex CASE expressions returning BasicColumn

Hello I'm trying to use a complex CASE expression within a sum() function, but I'm encountering difficulties due to type incompatibility. Here's an example of what I'm trying to achieve:
sum(case_()
    .when(
        statusCode, isEqualTo(ACCEPT_PROGRESS)
    )
    .then(1)
    .else_(0)
    .end()).as("receivedVocCount")

The issue arises because the end() method returns a BasicColumn, but the sum() function expects a BindableColumn. This makes it impossible to use complex CASE expressions directly within aggregate functions like sum().
I have two questions:
Is there currently any supported way to use complex CASE expressions within aggregate functions like sum()?
If not, what would be the recommended approach to extend the functionality to support this use case? Are there specific interfaces or classes that I should implement or extend to make this work?
Any guidance or suggestions would be greatly appreciated. This functionality would be very useful for creating more complex and flexible queries using MyBatis Dynamic SQL.
Thank you for your time and consideration.

I've implemented a potential solution to wrap a BasicColumn as a BindableColumn. Here's my implementation:
public class BindableColumnWrapper<T> implements BindableColumn<T> {
    private final BasicColumn column;

    public BindableColumnWrapper(BasicColumn column) {
        this.column = column;
    }

    @Override
    public Optional<String> alias() {
        return column.alias();
    }

    @Override
    public BindableColumn<T> as(String alias) {
        return new BindableColumnWrapper<>(column.as(alias));
    }

    @Override
    public FragmentAndParameters render(RenderingContext renderingContext) {
        return column.render(renderingContext);
    }

    @Override
    public String renderWithTableAlias(TableAliasCalculator tableAliasCalculator) {
        return column.renderWithTableAlias(tableAliasCalculator);
    }
}

This wrapper allows us to use a BasicColumn (such as the result of a CASE expression) in aggregate functions that expect a BindableColumn:
BasicColumn caseExpression = case_()
    .when(statusCode.isEqualTo(ACCEPT_PROGRESS))
    .then(1)
    .else_(0)
    .end();

BindableColumn<Integer> wrappedColumn = new BindableColumnWrapper<>(caseExpression);

sum(wrappedColumn).as("receivedVocCount")

I'd like to know if this approach is valid and aligns with the design principles of MyBatis Dynamic SQL. Are there any potential issues or improvements you can suggest? Also, are there any other methods from the BindableColumn interface that I should implement to make this wrapper more complete?
Thank you for your time and guidance.

@hanbonghun this is a great effort to solve a tricky problem! But I can make it easier for you and not require the wrapper class.
I've got a prototype working in my fork now and I'll push it in the next day or two. Basically, we need a way to build the sum function without requiring a typed column. This required some refactoring, but I think it is a good improvement.

@jeffgbutler Thank you for your quick response, I really appreciate it.
I was wondering, once the work is done and incorporated, would I be able to get the updated version by simply applying the latest library version in a future release? Or is there anything else I should keep in mind to ensure I'm using the version with these changes?

@hanbonghun the new support will be available soon in the Sonatype snapshots repository. You will need to add that repository to your maven configuration, then specify version 2.0.0-SNAPSHOT. Once released, it will be version 2.0.0 in Maven Central.
See this page for details about the Sonatype snapshot repository: https://github.com/mybatis/mybatis-3/wiki/Maven


chore: add email schema changes

:tada: This PR is included in version 0.0.5 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Unable to call EmailComposer.init()

Hi,
I must be doing something wrong. I installed EmailComposer in VS using NuGet Package Manager. In my class file I import the following:
using FrazzApps.Xamarin.EmailComposer;
using FrazzApps.Xamarin.EmailComposer.Abstractions;
Then I'm trying to initialize the composer as shown below. However, I get an error 'EmailComposer' doesn't exist in this context.
Any ideas?
Thanks!
private void OnEmailClicked()
{
Debug.WriteLine("Email clicked");
        try
        {

            // Get email address
            var emailAddress = employee.Email;

            // Open Email composer
            EmailComposer.Init();
            IEmailComposer emailComposer = DependencyService.Get<IEmailComposer>();
            emailComposer.SendEmail(emailAddress, Globals.CONTACT_EMAIL_SUBJECT, "");

        }
        catch (Exception ex)
        {
            Debug.WriteLine("Exception " + ex.Message);
        }
        finally
        {

        }
    }

Yes, that one got me too.  You need to call EmailComposer.Init();  in each of the device startups.  So in the Android mainActivity.cs. Or in the Windows Phone MainPage.xaml.cs.
If that isn't in the readme I will add it tonight.
Thanks for downloading and good luck with you app!
Cheers
Fraser
Ps any feedback\suggestions on tho or any of my other plugins is greatly appreciated
Sent from my Windows Phone

From<EMAIL_ADDRESS>Sent: 2015-03-10 7:07 AM
To<EMAIL_ADDRESS>Subject: [Xamarin.Plugins] Unable to call EmailComposer.init() (#1)
Hi,
I must be doing something wrong. I installed EmailComposer in VS using NuGet Package Manager. In my class file I import the following:
using FrazzApps.Xamarin.EmailComposer;
using FrazzApps.Xamarin.EmailComposer.Abstractions;
Then I'm trying to initialize the composer as shown below. However, I get an error 'EmailComposer' doesn't exist in this context.
Any ideas?
Thanks!
private void OnEmailClicked()
{
Debug.WriteLine("Email clicked");
        try
        {

            // Get email address
            var emailAddress = employee.Email;

            // Open Email composer
            EmailComposer.Init();
            IEmailComposer emailComposer = DependencyService.Get<IEmailComposer>();
            emailComposer.SendEmail(emailAddress, Globals.CONTACT_EMAIL_SUBJECT, "");

        }
        catch (Exception ex)
        {
            Debug.WriteLine("Exception " + ex.Message);
        }
        finally
        {

        }
    }

Reply to this email directly or view it on GitHub:
https://github.com/FrazzApps/Xamarin.Plugins/issues/1

thanks very much for the info. Let me try that.
Chris
On Tue, Mar 10, 2015 at 10:28 AM, Fraser Baldwin<EMAIL_ADDRESS>wrote:

Yes, that one got me too. You need to call EmailComposer.Init(); in each
of the device startups. So in the Android mainActivity.cs. Or in the
Windows Phone MainPage.xaml.cs.
If that isn't in the readme I will add it tonight.
Thanks for downloading and good luck with you app!
Cheers
Fraser
Ps any feedback\suggestions on tho or any of my other plugins is greatly
appreciated
Sent from my Windows Phone

From<EMAIL_ADDRESS>Sent: 2015-03-10 7:07 AM
To<EMAIL_ADDRESS>Subject: [Xamarin.Plugins] Unable to call EmailComposer.init() (#1)
Hi,
I must be doing something wrong. I installed EmailComposer in VS using
NuGet Package Manager. In my class file I import the following:
using FrazzApps.Xamarin.EmailComposer;
using FrazzApps.Xamarin.EmailComposer.Abstractions;
Then I'm trying to initialize the composer as shown below. However, I get
an error 'EmailComposer' doesn't exist in this context.
Any ideas?
Thanks!
private void OnEmailClicked()
{
Debug.WriteLine("Email clicked");
try
{
// Get email address
var emailAddress = employee.Email;
// Open Email composer
EmailComposer.Init();
IEmailComposer emailComposer = DependencyService.Get();
emailComposer.SendEmail(emailAddress, Globals.CONTACT_EMAIL_SUBJECT, "");
}
catch (Exception ex)
{
Debug.WriteLine("Exception " + ex.Message);
}
finally
{
}
}

Reply to this email directly or view it on GitHub:
https://github.com/FrazzApps/Xamarin.Plugins/issues/1
—
Reply to this email directly or view it on GitHub
https://github.com/FrazzApps/Xamarin.Plugins/issues/1#issuecomment-78064216
.


warning when delete yarn.lock

Is this a bug report?
Yes.
When i create app with create-react-app appname and then delete yarn.lock i see:
warning react-scripts > eslint > file-entry-cache > flat-cache ><EMAIL_ADDRESS>CircularJSON is in maintenance only, flatted is its successor.

Environment

  System:
    OS: Linux 4.15 KDE neon 5.14
    CPU: x64 Intel(R) Core(TM) i5-4570 CPU @ 3.20GHz
  Binaries:
    Node: 11.1.0 - ~/.nvs/default/bin/node
    Yarn: 1.12.3 - /usr/bin/yarn
    npm: 6.4.1 - ~/.nvs/default/bin/npm
  npmPackages:
    react: ^16.6.3 => 16.6.3
    react-dom: ^16.6.3 => 16.6.3
    react-scripts: 2.1.1 => 2.1.1
  npmGlobalPackages:
    create-react-app: Not Found

Steps to Reproduce

create-react-app appname
delete yarn.lock inside app folder
yarn

Expected Behavior
no warnings! ;-)
Actual Behavior
warning react-scripts > eslint > file-entry-cache > flat-cache ><EMAIL_ADDRESS>CircularJSON is in maintenance only, flatted is its successor.

If there is a separate issue somewhere for upgrading eslint, this will be resolved by that


Solidity contracts that are not in lowercase extensions are silently ignored

Component
Forge
Have you ensured that all of these are up to date?

[X] Foundry
[X] Foundryup

What version of Foundry are you on?
forge 0.2.0 (08a629a 2023-06-03T00:14:26.563741000Z)
What command(s) is the bug in?
forge build
Operating System
macOS (Apple Silicon)
Describe the bug
Proof of Concept: Reporting a Bug - Inconsistent Behavior Between Name Cases
Repo : https://github.com/penandlim/foundry-forge-mixedcase-extension
Issue:
Inconsistent behavior between name cases when compiling contracts in Solidity via forge.
Result of forge build --sizes:

Contract
Size (kB)
Margin (kB)

Counter
0.247
24.329

Counter2
0.247
24.329

Counter4
0.247
24.329

StdInvariant
2.038
22.538

StdStyle
0.086
24.49

console
0.086
24.49

console2
0.086
24.49

stdError
0.591
23.985

stdJson
0.086
24.49

stdMath
0.086
24.49

stdStorage
0.086
24.49

stdStorageSafe
0.086
24.49

Compilation Details:

Counter.sol is imported in Counter.t.sol and is thus compiled :smile:
Counter2.Sol is imported in Counter2.t.sol and is thus compiled :smile:
Counter3.Sol exists in src without being imported by other contracts and is NOT compiled! :disappointed:
Counter4.sol exists in src without being imported by other contracts and is compiled :smile:

As you can see, the file extension seems to matter when they are not imported. No error or warning message is shown, and the affected files are silently left out of compilation unless they are imported in other contracts that are already in the compile list.
This behavior is also consistent in script or test folder.

I'd say this is expected, I don't know of a single tool that looks for case-insensitive file extensions.


Update Project.toml

Bumping to new patch version.

@JoshuaLampert Could you please approve this PR.


Media session " initially set to idle".

In lifecycle, it states:

When a new media session is created its current state must be initially set to idle.

You already stated this in the text about creating the media session. Please DRY-up the spec or it gets confusing.

What happened to the rule that changes would only be done via PRs? Did that go away?

Rich has been doing commit-then-review since the beginning of this spec. I'm happy with that, who would be doing the review of pull requests?

On June 30, 2015 at 9:24:10 PM, Philip Jägenstedt<EMAIL_ADDRESS>wrote:

Rich has been doing commit-then-review since the beginning of this spec. I'm happy with
that, who would be doing the review of pull requests?

I thought it would be you and others involved (i.e., to catch small things), but it you are happy with the above process then it's all good. I'm only keeping one eye on this and happy to see it moving along so well. Was just surprised my bug was resolved without me first confirming that it actually addressed my issue.

I think we will reach a point where things are stable enough that we should review each change for typos and such, but not just yet. I'm sure after-the-fact reviews of the diffs would be much appreciated though, and I've done that occasionally.


BlendLuxCore 2.2 Linux OpenCL version broken when initializing render or using "Update OpenCL Device List"

System: Ryzen 5 2600x, 32 GB ram, RTX 2060, Fedora 30 Linux, and tested on both 2.2 Release Candidate 1 and 2.2
When using the OpenCL version of BlendLuxCore, starting a viewport or f12 render on either the CPU or the GPU immediately prints ClGetDeviceIDs and does not continue building or rendering the scene.
Clicking on the "Update OpenCL Device List" button always returns the following error:
Traceback (most recent call last):   File "/home/***/.config/blender/2.80/scripts/addons/BlendLuxCore/operators/general.py", line 114, in execute     device_list = opencl.get_opencl_devices()   File "/home/***/.config/blender/2.80/scripts/addons/BlendLuxCore/properties/opencl.py", line 77, in get_opencl_devices     return pyluxcore.GetOpenCLDeviceList() RuntimeError: clGetDeviceIDs

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Have you tried to run LuxMark to check if your OpenCL drivers aren't broken ? It happens quite often.

Nice for the suggestion, just gave it a shot. Seems like the same error, so yeah, maybe the drivers are broken and it isn't a Lux issue. This is what what LuxMark printed:
terminate called after throwing an instance of 'cl::Error'   what():  clGetDeviceIDs ./luxmark: line 12:  4063 Aborted                 (core dumped) ./luxmark.bin "$@"
If it is a driver issue, do you have any pointers on where to begin fixing it? Thanks

Maybe try to remove and reinstall them first?

Are you using the drivers from NVIDIA web site ? Also check if you have some not fully compliant OpenCL option installed like POCL (OpenCL for CPU).

The drivers I'm using are from a unofficial Fedora repository called RPM Fusion, although i believe they are made directly from NVIDIAs, but like.. not totally sure. The current version I'm on is 430.40.

You might have to contact the developers of those drivers for support.

Sounds good, and thank you both for looking into the issue bit. Seems like there's not anything that can be done on our side, so I'll close this up 👍


Attempting to import a TF2 uncompiled map, getting a wall of errors

Here are the errors I am getting:

Here is what my config looks like:
{
	"entitiesFolder": "res://examples/entities",
	"gameInfoPath": "C:/Program Files (x86)/Steam/steamapps/common/Team Fortress 2",
	"instancesFolder": "res://examples/instances",
	"materialsFolder": "res://examples/materials",
	"mdl2obj": "res://mdl2obj.exe",
	"modelsFolder": "res://examples/models",
	"nodeConfig": {
		"defaultTextureSize": 512,
		"fallbackMaterial": null,
		"generateCollision": true,
		"generateCollisionForModel": true,
		"ignoreTextures": [
			"TOOLS/TOOLSNODRAW"
		],
		"importModels": false,
		"importScale": 0.025,
		"overrideModels": true,
		"textureImportMode": 1
	},
	"vtflib": "C:/Program Files/Nem's Tools/VTFEdit"
}

I am using Godot 4.2.1 stable.
The map I tried importing is this.

Hello!
I'd suggest you to resave the VMF in Hammer++, since the VMF doesn't contain precised vertex data (vertices_plus data inside of brushes). The vanilla version of Hammer is not supported yet.
Also you have wrong gameInfoPath in the config. C:/Program Files (x86)/Steam/steamapps/common/Team Fortress 2/tf2 will be correct.

Hi, Thanks for the quick reply. I fixed the path and re-exported it in hammer++ (ALT+B). It is drawing some stuff now but it is drawing all of the invisible player clip brushes and doesn't seem to find any of the materials. Do I need to convert each individual one into a TRES and put it in my example folder?
For TF2, the materials are located in a VPK.

@Gamepro5
As I mentioned in Readme, exporting resources from VPKs are not supported yet. To import all materials you need to extract all materials from VPKs in the tf2 folder first.

@H2xDev Thanks again. Extracting the VPK into the game's directory still doesn't fix the complaining that it does about there not being any .TRES files. Do I need to find a program that can recursively convert each VTF from the exported directory into TRES, and then put an exact replica of that folder of converted TRES into my Godot directory?

@Gamepro5 Check textureImportMode in the config. It should be 2

@H2xDev Sorry for bothering you again. I re-read the installation page 3 times just to be absolutely sure I didn't miss anything. I keep getting the yellow warnings that the materials TRES is not found. It doesn't seem to be generating them. Did it work on your end?

{
	"entitiesFolder": "res://resources/entities",
	"gameInfoPath": "C:/Program Files (x86)/Steam/steamapps/common/Team Fortress 2/tf2",
	"instancesFolder": "res://resources/instances",
	"materialsFolder": "res://resources/materials",
	"mdl2obj": "c:/mdl2obj.exe",
	"modelsFolder": "res://resources/models",
	"nodeConfig": {
		"defaultTextureSize": 512,
		"fallbackMaterial": null,
		"generateCollision": true,
		"generateCollisionForModel": true,
		"ignoreTextures": [
			"TOOLS/TOOLSNODRAW"
		],
		"importModels": false,
		"importScale": 0.025,
		"overrideModels": true,
		"textureImportMode": 2
	},
	"vtflib": "C:/Program Files/Nem's Tools/vtflib132-bin/bin/x64/VTFCmd.exe"
}

@Gamepro5
What if you change the config like that?
- "gameInfoPath": "C:/Program Files (x86)/Steam/steamapps/common/Team Fortress 2/tf2",
+ "gameInfoPath": "C:/Program Files (x86)/Steam/steamapps/common/Team Fortress 2/tf",

@Gamepro5
So, I updated the plugin and now texture import should work. Download the plugin from the repository and try again.
Change the vmf.config.json:
- "gameInfoPath": "C:/Program Files (x86)/Steam/steamapps/common/Team Fortress 2/tf2",
+ "gameInfoPath": "C:/Program Files (x86)/Steam/steamapps/common/Team Fortress 2/tf",

It works partially. Some textures are showing up, but it is still complaining that it can't find some vmt files that are clearly there.

Also, this might be a different issue but the ignoreTextures parameter isn't working to ignore stuff like TOOLS/CLIP, TOOLS/HINT, etc.

Also you can add all tool textures into the ignoreTextures in the config after then faces with these materials will be ignored.

This might be a seperate issue but I know that I listed the right names and it stills renders the HINT brushes and all other brushses.
"ignoreTextures": [
			"tools/toolsblack",
			"tools/toolsclip",
			"tools/toolsskip",
			"tools/toolsskybox",
			"tools/toolsnpcclip",
			"tools/toolstrigger",
			"tools/toolshint",
			"tools/toolsfog"
		],

@Gamepro5

It fails to convert some of them but doesn't say that they aren't found in the directory.
I guess VTFCmd couldn't convert these textures into PNG for some reason. Also TF2 depends on some materials from HL2 VPKs. Try to extract them into tf folder as well.

This might be a seperate issue but I know that I listed the right names and it stills renders the HINT brushes and all other brushses.
Looks like i forgot to add case check. Try to convert these texture names to upper case. I'll fix that soon

Looks like i forgot to add case check. Try to convert these texture names to upper case. I'll fix that soon

But the names aren't uppercase in the directory.


GolangCI

Spin out our Go Linter (golangci-lint) into a low-level module. The emphasis is on incremental change and small scope.

test-publish has failed, is it a flake?

@gerhard @matipan @jedevc are you able to tell if my remaining check failures are flakes? I don't see anything to my change in there, but could be wrong (CI logs are hard to read)

This worked locally:
dagger call -m github.com/dagger/dagger/dev@pull/7803/merge --source https://github.com/dagger/dagger#pull/7803/merge engine test-publish

I'm going to merge since I'm positive this module doesn't affect e2e tests


What does clicking 'Onboard' actually do?

Besides enabling the other tabs, and logging to the audit logs, what does clicking 'Onboard' actually do under the hood, and why is is needed?

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

ID: 3a8a3416-ca49-e148-89ec-aa004914eaa5
Version Independent ID: 6e6831f4-40ed-4058-5a6f-56cd3900460a
Content: What are access reviews? - Azure Active Directory
Content Source: articles/active-directory/governance/access-reviews-overview.md
Service: active-directory
Sub-service: compliance
GitHub Login: @msaburnley
Microsoft Alias: ajburnle

@Brinh123 Thanks for your feedback! We will investigate and update as appropriate.

@Brinh123 I am checking this internally and update you on once I hear back.

@Brinh123 Here is what I got from the products team  -
Onboarding is a way for a tenant admin to express consent that they want to use access reviews. Once a tenant onboards, they can start using access reviews. Without onboarding, all APIs throw "403 forbidden error".
In the back end, when you onboard, we persist this consent in our database. Later on, when someone tries to use any APIs or UX, we check if the tenant has onboarded before they can execute any actions.

Hi Saurahbh,
That's perfect, many thanks for taking the time to investigate this for me :)


Cannot read property "get" of undefined.

Hi, I'm trying to make my bot able to send messages to a certain channel in a server I'm designating by ID. However, every time I try to get the channel's ID using defaultChannel, I get this error when I use the command. "Cannot read property "get" of undefined."
Here's the code I'm using. It might look pretty bad, but I'm still learning node.js.
var channel = client.servers.get('id', "285566600143306752").defaultChannel;
client.sendMessage(channel, "Hello");
The exception obviously happens at "get". How can I fix this?

this is all d.js v8 code. we are currently at v11.1.0.
const channel = client.guilds.get('285566600143306752').defaultChannel;
channel.send('hello');

Yeah, I knew that code was outdated. Thanks for the help on getting it up to date, though! All is right with the world again.


ref(*pkg/reconciler) : Moving mutating webhook reconciler test to e2e

Description:
This PR moves the test for the mutating webhook reconciler into the e2e tests thereby removing the dependency on kubebuilder.
Fixes : #2020
Affected area:

New Functionality      [ ]
Documentation          [ ]
Install                [ ]
Control Plane          [ ]
CLI Tool               []
Certificate Management [ ]
Networking             [ ]
Metrics                [ ]
SMI Policy             [ ]
Security               [ ]
Tests                  [X]
CI System              [X]
Performance            [ ]
Other                  [ ]

Please answer the following questions with yes/no.

Does this change contain code from or inspired by another project? If so, did you notify the maintainers and provide attribution? no

Codecov Report

Merging #2040 (914bd30) into main (be9f434) will decrease coverage by 0.10%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #2040      +/-   ##
==========================================
- Coverage   56.26%   56.15%   -0.11%
==========================================
  Files         143      142       -1
  Lines        5792     5764      -28
==========================================
- Hits         3259     3237      -22
+ Misses       2530     2524       -6
  Partials        3        3

Impacted Files
Coverage Δ

cmd/osm-controller/osm-controller.go
27.69% <ø> (ø)

pkg/envoy/route/config.go
96.03% <0.00%> (+0.79%)
: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 be9f434...914bd30. Read the comment docs.


Loading of images via 2G generally fails

In most cases it is not possible to view images when trying to load them via 2G. I think because the net is not fast enough to load the image in  seconds. Badly there is then no possibility to rerequest them afterwards. Can there be introduced the option to rerequest the image loading when it failed previously?

@krombel
i improved the request timeouts management : their values are set according to the network speed
https://github.com/matrix-org/matrix-android-sdk/commit/7b94d00da7f3d248161a4888d22b49758a248683
Could you test if the application behaviour seems better on your side ?

You're right we need to add a button to retry the download (by now, if you put the app in background and debackground it, the image download will be retry)