[openimageio]Inconsistente usage with vcpkg under mac windows and linux need to add Imath and OpenEXR for Mac.

When using the current vcpkg version of openimageio under windows and linux (RHEL 7 tested) I need to use the following in my CMakeLists.txt to build
find_package(OpenImageIO CONFIG REQUIRED)
target_link_libraries(oiiotest PRIVATE OpenImageIO::OpenImageIO OpenImageIO::OpenImageIO_Util)
However when using under Mac OSX I get the errors pasted below unless I add the following
find_package(OpenImageIO CONFIG REQUIRED)
find_package(IlmBase CONFIG REQUIRED)
find_package(OpenEXR CONFIG REQUIRED)
target_link_libraries(oiiotest PRIVATE OpenImageIO::OpenImageIO OpenImageIO::OpenImageIO_Util)
target_link_libraries(oiiotest PRIVATE  IlmBase::Iex IlmBase::Half IlmBase::Imath IlmBase::IexMath)
target_link_libraries(oiiotest PRIVATE OpenEXR::IlmImf OpenEXR::IlmImfUtil OpenEXR::IlmImfConfig)
This is inconsistent and means I need to add conditional targets definitions in my CMakeLists.txt files. I'm presuming this is an issue with the port file under mac, I have also had to modify the libSquish definition in the OpenImageIOTargets.cmake to remove the $<LINK_ONLY:Libsquish::Libsquish>; line and add ${_IMPORT_PREFIX}/lib/libsquish.a again only on mac.
Output of broken cmake file.
-- The C compiler identification is AppleClang <IP_ADDRESS>30032
-- The CXX compiler identification is AppleClang <IP_ADDRESS>30032
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::Imath" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::IlmThread" but the target was
not found.  Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::IexMath" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::Iex" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::Half" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "OpenEXR::IlmImfUtil" but the target was
not found.  Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "OpenEXR::IlmImf" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "OpenEXR::IlmImfUtil" but the target was
not found.  Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "OpenEXR::IlmImf" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "OpenEXR::IlmImfUtil" but the target was
not found.  Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "OpenEXR::IlmImf" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::Imath" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::IlmThread" but the target was
not found.  Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::IexMath" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::Iex" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
CMake Error at /Users/jmacey/vcpkg/scripts/buildsystems/vcpkg.cmake:418 (_add_executable):
Target "oiiotest" links to target "IlmBase::Half" but the target was not
found.  Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:14 (add_executable)
-- Generating done
CMake Generate step failed.  Build files cannot be regenerated correctly.

I tested the latest version of vcpkg, the calling method of openimageio port under Windows, linux, and mac-osx is the same, no need to modify cmakelists.txt.

IMO this is resolved. There have been significant improvements to this package since 2021. (#23918 in 2022 might be one of the relevant changes).


bump dependencies for k8s 1.22

[x] rancher/client-go v1.22.3-rancher.1
[x] rancher/webhook
[x] capi 0.4.4
[ ] (Optional) rancher/helm - not blocking
[ ] (Optional) rancher/shell - not blocking
[x] update k3s to 1.22.3
[x] update etcd + grpc to handle google.golang.org/grpc/naming: module google.golang.org/grpc@latest found (v1.42.0), but does not contain package google.golang.org/grpc/naming
[x] RKE with support for etcd 3.5 and KDM 1.22.3
[ ] (Skipped for now) Fix failing Istio tests for 1.22
[ ] (Skipped for now) Fix failing tests https://localhost:8443/v3/projects/local:p-6m86l/ingresses = "the server could not find the requested resource (get ingresses.meta.k8s.io)",

Testing:
Rancher Local: v1.22
Downstream:

[x] RKE1 v1.22.3-rancher1
[x] RKE1 v1.21.x
[x] RKE1 v1.18.16
[x] Imported v1.22.3
[x] Imported v1.18.20
[x] RKE2 v1.22.3

Rancher Local: v1.18
Downstream:

[x] RKE1 v1.22.3-rancher1
[x] RKE1 v1.21.x
[x] RKE1 v1.18.20
[x] Imported v1.22.3
[x] Imported v1.18.20
[ ] RKE2 v1.22.3

Note: Added @cmurphy's commits to avoid test failures, will rebase once #35449 is merged.

Trying to get a build out for 1.22 today so taking the liberty to merge this PR, @cmurphy and @ryansann already approved the PR but had to add index for capi to fix the failing RKE2 tests - no other changes were added. https://github.com/rancher/rancher/pull/35357/commits/933cd1d18649b5adbdaada29fc657455ea66c426#diff-257be738969ed49dd28e4b88b7bc6a3891617091348302a3299ef0e889c9581cR71


Overlord Exception While Announcing Segments

Hi,
We are facing an exception in overlord in a production environment while announcing the Historical Segment.
It looks to me some sort of multi-threading issue (if thats possible ) as the segment is already present in the MetaData and still the "segmentExists"  method (IndexerSQLMetadataStorageCoordinator.java+581) is returning "FALSE" on some of the times .
We are using druid-0.9.1 in our production.
Following is the Logs :
2017-08-08 06:15:02.534+0000 INFO  io.druid.metadata.IndexerSQLMetadataStorageCoordinator Found [prod_report_ds_2017-08-08T05:00:00.000Z_2017-08-08T06:00:00.000Z_2017-08-08T05:00:04.589Z_5] in DB, not updating DB
2017-08-08 06:15:01.692+0000 ERROR io.druid.metadata.IndexerSQLMetadataStorageCoordinator Exception inserting segment[prod_report_ds_2017-08-08T05:00:00.000Z_2017-08-08T06:00:00.000Z_2017-08-08T05:00:04.589Z_5] into DB
org.skife.jdbi.v2.exceptions.UnableToExecuteStatementException: org.postgresql.util.PSQLException: ERROR: duplicate key value violates unique constraint "druid_segments_pkey"
...
Detail: Key (id)=(prod_report_ds_2017-08-08T05:00:00.000Z_2017-08-08T06:00:00.000Z_2017-08-08T05:00:04.589Z_5) already exists.
Show all 89 lines
2017-08-08 06:15:01.690+0000 INFO [qtp1997290658-83] io.druid.metadata.IndexerSQLMetadataStorageCoordinator Published segment [prod_report_ds_2017-08-08T05:00:00.000Z_2017-08-08T06:00:00.000Z_2017-08-08T05:00:04.589Z_5] to DB
In above logs it is clear the the segment [prod_report_ds_2017-08-08T05:00:00.000Z_2017-08-08T06:00:00.000Z_2017-08-08T05:00:04.589Z_5] has already been inserted in the postgres (metadata) but still overlord throws an exception. Also the very first line (after around 1 minute difference), "segmentExists"  would have returned true.
Note the time between last two logger lines , hardly in milliseconds.  Is it possible that two thread would have come at this method (announceHistoricalSegment) and executed segmentExists without knowing about each other (Race Condition)
More Details : https://groups.google.com/forum/#!topic/druid-user/8hFWfsD6THk

@praveshg, do you know if this is still an issue in the latest version?

Hi, I'm experiencing the same issue except that I use mysql.
Race conditions seems as reasonable explanation due to random nature of the error occurrence.
In my case, this started happening after I increased task.replicants in tranquility from 1 to 2.
Now we have two worker tasks for each hour.
Druid version: druid-<IP_ADDRESS>
Anyone else experiencing this or have a solution?


compact: reduce DownsampleRange1 to 6d

Signed-off-by: John Belmonte<EMAIL_ADDRESS>
[ ] I added CHANGELOG entry for this change.
[ ] Change is not relevant to the end user.

Changes
Reduced DownsampleRange1 from 10d to 6d.
The intention is to accommodate blocks migrated from prometheus-server,
which has a different compaction schedule ending at 6.75 days.
Also rename DownsampleRange{0,1} to ResLevel{1,2}MinBlockRange.
Fixes #2413.

this is really a workaround
I'm open to making this a flag, or contributing larger changes to make the situation better.
I don't think anyone has thought about --shipper.upload_compacted regarding the differences in the compaction schedule of prometheus-server vs. thanos-compact.
A proper solution might be for sidecar to rewrite compacted blocks to match compact's expectations before uploading.
slack thread here:  https://cloud-native.slack.com/archives/CK5RSSC10/p1587689525452700

Definitely, we don't want sidecar to rewrite any block this is because:

Sidecar have low mem footprint and we want to keep this way
Yet another place of modifying blocks

The idea overall looks great, let's think how we can do that. I think this might work indeed  :+1: Can we add some tests for this?

Can we add some tests for this?

What kind of tests did you have in mind?
This PR is changing a constant in the source code to accommodate an external system.
Perhaps we can add a runtime assertion that DownsampleRange1 lies between the final two levels in the compactionSet.

This PR is changing a constant in the source code to accommodate an external system.

In this case we could make it "just" a bit higher than our previous compaction level so 2d.. maybe 3d, hm?
For tests I would suggest adding downsampling cases to our e2e here: https://github.com/thanos-io/thanos/blob/master/test/e2e/compact_test.go#L64

In this case we could make it "just" a bit higher than our previous compaction level so 2d.. maybe 3d, hm?

3d sounds OK

For tests I would suggest adding downsampling cases to our e2e here: https://github.com/thanos-io/thanos/blob/master/test/e2e/compact_test.go#L64

It's significant that there is no e2e test coverage for downsampling, but trying to expand one of the most complex tests may take me over half a day as a newcomer.  This PR has quite low risk already and having that test wouldn't change much.
The assertion/panic I proposed would add important correctness coverage for the downsampling configuration.  I'd like to try that and leave the existing e2e TODO for now 🙏

@bwplotka I'd like to merge this for next release

Also let's look on UntilNextDownsampling function which is totally broken after the change here

UntilNextDownsampling was already broken, because it assumes that the downsample limits exactly match the compaction schedule.
Yes, the misreporting will be more severe with the new setting.  Is it only reported by 'bucket inspect`, and does anyone use this info?  In my experience I found it useless and misleading because it didn't consider that compactions may never happen.
Anyway, I've added a TODO in the code about the problem.  Really I think the system should report an accurate UntilNextCompaction-- that would help users more.  And it should have unit test coverage...

Really I think the system should report an accurate UntilNextCompaction instead-- that would be more generally useful. And it should have unit test coverage...

How it would be useful?

How it would be useful?

UntilNextCompaction could be surfaced on the bucket UI for each block and help users understand the compaction schedule.  It would consider compaction.failed meta flag, as well as dependencies on surrounding blocks (e.g. a block in a gap that may never be scheduled for compaction).
And once there is good visibility for next compaction, surfacing next downsample is trivial...

How it would be useful?

UntilNextCompaction could be surfaced on the bucket UI for each block and help users understand the compaction schedule. It would consider compaction.failed meta flag, as well as dependencies on surrounding blocks (e.g. a block in a gap that may never be scheduled for compaction).

Nice, still it would be nice to know the answer on ... why. (: Why users need to understand the exact compaction schedule? We run huge Thanos systems (I am actually on-call from tomorrow) and I don't care, and don't want to care when compaction happens as long as it eventually happen. So yea, I cannot see the reasons (:
But maybe I am missing something :hugs: Let us know.

And once there is good visibility for next compaction, surfacing next downsample is trivial...

Well not really (: If there is constantly something to compact (because of 1000 sources pushing to same bucket), Downsampling will never happen.

Nice, still it would be nice to know the answer on ... why. (: Why users need to understand the exact compaction schedule?

I'm pretty sure I wouldn't have spent days diagnosing #2413 if this had existed (and I'm no slouch at diagnosing problems).

Cool, but looks like the general documentation is missing on how it exactly
works, not a tooling problem no?
On Mon, 4 May 2020 at 11:39, John Belmonte<EMAIL_ADDRESS>wrote:

Nice, still it would be nice to know the answer on ... why. (: Why users
need to understand the exact compaction schedule?
I'm pretty sure I wouldn't have spent days diagnosing #2413
https://github.com/thanos-io/thanos/issues/2413 if this had existed
(and I'm no slouch at diagnosing problems).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/thanos-io/thanos/pull/2518#issuecomment-623389009,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABVA3OYXTWBKLEBCZR74OCTRP2LMJANCNFSM4MPWLFBQ
.

I mean, knowing exact compact time is not a root cause here (:
On Mon, 4 May 2020 at 12:17, Bartłomiej Płotka<EMAIL_ADDRESS>wrote:

Cool, but looks like the general documentation is missing on how it
exactly works, not a tooling problem no?
On Mon, 4 May 2020 at 11:39, John Belmonte<EMAIL_ADDRESS>wrote:

Nice, still it would be nice to know the answer on ... why. (: Why users
need to understand the exact compaction schedule?
I'm pretty sure I wouldn't have spent days diagnosing #2413
https://github.com/thanos-io/thanos/issues/2413 if this had existed
(and I'm no slouch at diagnosing problems).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/thanos-io/thanos/pull/2518#issuecomment-623389009,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABVA3OYXTWBKLEBCZR74OCTRP2LMJANCNFSM4MPWLFBQ
.

Cool, but looks like the general documentation is missing on how it exactly works, not a tooling problem no?

If the bucket UI would show an indicator that "this block has no ETA on further compaction", then it provides a cue to the user and he can investigate why that is.
But I think we've deviated from the PR at hand at this point.  The TODO I added doesn't suggest "UntilNextCompaction", that's just my suggestion in this conversation.
I believe this PR is a beneficial, low risk, well-documented change-- ready to go.


fix(codemod): support partial defaultProps

📚 Description
It seems thats replace-default-props only works when all props are defaulted but when a prop is required it won't be included in defaultProps. This PR attempts to fix the issue by skipping props that don't have defaults.
Example error that we were seeing:
Error: undefined does not match field "right": Expression of type AssignmentPattern
 ❯ addParam ../../../../../node_modules/.pnpm/ast-types@0.16.1/node_modules/ast-types/src/types.ts:599:17
 ❯ ../../../../../node_modules/.pnpm/ast-types@0.16.1/node_modules/ast-types/src/types.ts:627:13
 ❯ Function.builder [as assignmentPattern] ../../../../../node_modules/.pnpm/ast-types@0.16.1/node_modules/ast-types/src/types.ts:625:26
 ❯ buildPropertyWithDefaultValue src/index.ts:44:12
     42|   defaultValue: any,
     43| ) => {
     44|   return j.assignmentPattern(property.value, defaultValue);
       |            ^
     45| };
     46|
 ❯ src/index.ts:101:26
 ❯ NodePath.<anonymous> src/index.ts:91:27
 ❯ ../../../../../node_modules/.pnpm/jscodeshift@0.15.2_@babel+preset-env@7.24.7/node_modules/jscodeshift/src/Collection.js:75:36

🧪 Test Plan
Added a test.
📄 Documentation to Update
N/A

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@henryqdineen sorry that you have to sign the CLA again 🙏 . I made an update to the template. This should be the last time you have to do that.


Release announcement for Bazel 0.27

Blog post updated.

I'm going to push the release.
Any comment on the release notes?


Firrtl parser spec is defined wrong for DoubleLit

DoubleLit is defined wrong, would not handle sign specifier in exponent.
It is now
DoubleLit
  : ( '+' | '-' )? Digit+ '.' Digit+ ( 'E' Digit+ )?
  ;

Probably should be something like
DoubleLit
  : ( '+' | '-' )? Digit+ '.' Digit+ ( 'E' ( '+' | '-' )? Digit+ )?
  ;

Fixed in
Fix digit parsing #471


Error: The Travis CI build could not complete...

Hi.
I just added two lines in the file README.md,  and then pulled a  request[#3555]. Why i am given the following error from Travis CI:
Some checks were not successful:
The Travis CI build could not complete...

Thanks @hulizhen. We've been battling Travis for quite a while. Nothing to worry on your PR.
Thanks! 🍻


Clarify whether this page applies to UWP apps or not

I was reading the article here on using Application Insights to add instrumentation to a Windows desktop app:
https://docs.microsoft.com/en-us/azure/azure-monitor/app/windows-desktop
That article states in the introduction that if the developer is writing a UWP, they should use App Center; the App Center link points to this page... which talks about Mobile apps. This feels confusing.
If the content does indeed apply to UWP as well, the documentation should be updated to reflect this fact.

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

ID: fecbb025-c092-df18-4bfc-b0d7b0c6c524
Version Independent ID: f07473f5-4c31-1a55-83ce-687653b0345a
Content: Monitor mobile apps with Azure Monitor Application Insights - Azure Monitor
Content Source: articles/azure-monitor/app/mobile-center-quickstart.md
Service: azure-monitor
Sub-service: application-insights
GitHub Login: @AaronMaxwell
Microsoft Alias: aaronmax

@adrastogi The redirected link applies to UWP apps. It is documented as part of the prerequisite.

Is this what you are looking for ?

Thanks! I guess the things that threw me off were the title, the table of contents entry, and the URL (all prominent features of the page, and all of which emphasize mobile in the naming). I don't suppose those could be made more generic?
TOC:

Title:

URL:

Thanks for your dedication to our documentation. We can update the TOC and title, but the markdown file (i.e. URL) cannot be renamed due to internal reporting that is based upon it. #please-close


sql.DB.Close does not close the DB after a query error

Incorrect sql.DB.Query (with incorrect number of arguments in my case) results in sql.DB.Close not fully closing the db. On windows this leads to The process cannot access the file because it is being used by another process. error if you attempt to interact with the db file.
This is similar to #906, but it seems to be much more fixable if sql.DB.Query (or lower-level function) cleans up after themselves before returning an error.

Code sample
package main

import (
	"database/sql"
	"fmt"
	"os"

	_ "github.com/mattn/go-sqlite3"
)

func check(err error) {
	if err != nil {
		panic(err)
	}
}

func initDb() {
	db, err := sql.Open("sqlite3", "file:dbdir/db.sqlite")
	check(err)
	defer func() {
		check(db.Close())
	}()
	db.Exec("CREATE TABLE testdata (id INTEGER PRIMARY KEY, text_val TEXT)")
	_, err = db.Exec("INSERT INTO testdata (id, text_val) VALUES (?,?)", 1, "text_1")
	check(err)
}

func runQuery() {
	db, err := sql.Open("sqlite3", "file:dbdir/db.sqlite")
	check(err)
	defer func() {
		check(db.Close())
	}()
	// Bug here: incorrect number of arguments
	rows, err := db.Query("SELECT * FROM testdata WHERE id = $1;")
	if err != nil {
		fmt.Printf("expected error occurred: %s\n", err)
		return
	}
	defer func() {
		check(rows.Close())
	}()
}

func main() {
	_ = os.RemoveAll("dbdir")
	err := os.MkdirAll("dbdir", 0o700)
	check(err)
	defer func() {
		// panic: remove dbdir\db.sqlite: The process cannot access the file because it is being used by another process.
		check(os.RemoveAll("dbdir"))
	}()

	initDb()
	runQuery()
}

Good point. Thanks.


feat(#269): custom Validators with expression + message

What kind of change does this PR introduce? feature

Current coverage is 84.96% (diff: 44.82%)

Merging #273 into master will decrease coverage by 0.14%

@@             master       #273   diff @@
==========================================
  Files            18         18
  Lines           638        645     +7
  Methods         136        140     +4
  Messages          0          0
  Branches        148        151     +3
==========================================
+ Hits            543        548     +5
- Misses           95         97     +2
  Partials          0          0

Powered by Codecov. Last update f2eb374...b56d9bf


updated release procedure

Updated iOS SDK release procedure. Let me know if anything needs further clarification.
@aaustin @sojanpr @zeeshabnc

:+1: @sojanpr make sure you note this file's location


Feature request: setAlias, replaceAlias for text data

I'm always frustrated when i need setAlias or replaceAlias in QueryMode => Text
It would be very useful to add these functions for text data.

This has been open for wuite some time with no updates. This feature is needed greatly

please, add setAlias function for query mod: trigger. Triggers query are very useful for overall status of host, but it difficult to configure visualization when many metrics has the same name: "triggers count".


allow an option 'html'

allow an option 'html' to change the behaviour of printing when a tag has no content. For example:
Take for example
  {
    "name": "some-tag",
    "text": ""
  }

Old output would be:
<tag/>
New output would be:
<tag></tag>

looks good to me thanks!

landed in v 0.1.1 and 1.0.0


Updating metadata on HDX also updates the "dataset date"

The dataset date field refers to the data of the resource.  In the case of OSM extracts, this should be the date on which the extract was created or updated, and not the date of any update to metadata.
In other words only an export run should trigger a change to dataset date.
However, updates to metadata without an export run are unusual, and will be rare once the initial development settles down, so I'm marking this one low priority.

In fact this should probably be the Overpass timestamp of the export run, which represents the point in OSM history at which the export run happened.

Yes that sounds right.

Now the timestamp is only changed when resources are being updated.


Add basic security handling and tags

Coverage increased (+0.7%) to 87.412% when pulling f28fc64080ba16b55a2f128700a0971833dc4869 on mduesterhoeft:basic-sec-tags into 08fd9b7b6558841808c6061913edd97c74e13922 on ePages-de:master.


remove Column impl on Vec

remove Column impl on Vec to avoid function shadowing

Codecov Report

Merging #1493 (54972ca) into main (5d43675) will decrease coverage by 0.03%.
The diff coverage is 22.72%.

@@            Coverage Diff             @@
##             main    #1493      +/-   ##
==========================================
- Coverage   94.07%   94.03%   -0.04%
==========================================
  Files         240      240
  Lines       44827    44830       +3
==========================================
- Hits        42170    42157      -13
- Misses       2657     2673      +16

Impacted Files
Coverage Δ

fastfield_codecs/src/main.rs
0.96% <0.00%> (-0.18%)
:arrow_down:

fastfield_codecs/src/lib.rs
98.13% <100.00%> (-0.14%)
:arrow_down:

src/indexer/merger.rs
98.94% <100.00%> (ø)

src/fastfield/reader.rs
85.92% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Snap to ticks axis rule fixed

I previously implemented the axis rules SnapToTicksX and SnapToTicksY in #3547 .
These had a few limitations, most notably:

panning was very jumpy
the tick interval sometimes changed as a result of the snap, which meant is wasn't snapping to a tick every time
it was untested with inverted axes
It had had only limited testing in combination with other rules

Subsequently this rule was simplified, which removed most of the special case handlign, and resulted in it functioning only for zooming out (zooming in was effectively prevented). This was discussed in #3701.
These changes:

reinstate the original functionality
handle panning so that it is intuitive and smooth
check for and correct the occasional situation where tick interval changes during the snapping
ensure the rules work for inverted axes (although problems might occur if the axes are inverted while the rule is already set)
ensure the rules work with an end limit set.

I confess, this was a challenge, and the code does not read well. I've tried to document intention with comments as much as I can, but if it is still unclear, I welcoime a discussion an dsome help in writing simpler logic (without loosing functionality).
The final commit in this branch is once again an updated sandbox project to easily test the rules in combination. I understand that won't be merged.

Thanks @BrianAtZetica! I'm not too worried about the complexity since it's all bundled neatly inside those classes and it can always be refactored later if/as needed. I'll merge this in now and it will be in the next release 👍


Initialize conversation chain memory's input key from the conversation chain's input key

Fixes: #1800
This PR suggests that the memory of the conversation chain inherits the conversation chains input_key.
My understanding is that currently Conversation chain's memory does not inherit the conversation chains input_key and we try to deduce it with get_prompt_input_key assuming it there are only memory, input and stop variables.
I've tested the PR with the following code:
# HO.

from langchain.chat_models import ChatOpenAI
from langchain.prompts import (
    SystemMessagePromptTemplate,
    HumanMessagePromptTemplate,
    ChatPromptTemplate,
    MessagesPlaceholder
)
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain

system_msg_template = SystemMessagePromptTemplate.from_template(template="You are a translator helping me in translating from {input_language} to {output_language}. " +
    "Please translate the messages I type.")

human_msg_template = HumanMessagePromptTemplate.from_template(template="{input}")
prompt_template = ChatPromptTemplate.from_messages([system_msg_template, MessagesPlaceholder(variable_name="history"), human_msg_template])
mem = ConversationBufferMemory(return_messages=True)
conversation = ConversationChain(memory=mem, prompt=prompt_template, llm=ChatOpenAI(temperature=0.0), verbose=True)

print(conversation.predict(input="Hello, how are you?", input_language="English", output_language="French"))
print(conversation.predict(input="I want to go to the cinema.", input_language="English", output_language="German"))

Please note the input_language and the output_language template variables given in the system prompt. A sample execution yields:
> Entering new ConversationChain chain...
Prompt after formatting:
System: You are a translator helping me in translating from English to French. Please translate the messages I type.
Human: Hello, how are you?

> Finished chain.
Bonjour, comment vas-tu ?

> Entering new ConversationChain chain...
Prompt after formatting:
System: You are a translator helping me in translating from English to German. Please translate the messages I type.
Human: Hello, how are you?
AI: Bonjour, comment vas-tu ?
Human: I want to go to the cinema.

> Finished chain.
Ich möchte ins Kino gehen.

I've also tested the quickstart example:
# HO.

from langchain.prompts import (
    ChatPromptTemplate,
    MessagesPlaceholder,
    SystemMessagePromptTemplate,
    HumanMessagePromptTemplate
)
from langchain.chains import ConversationChain
from langchain.chat_models import ChatOpenAI
from langchain.memory import ConversationBufferMemory

prompt = ChatPromptTemplate.from_messages([
    SystemMessagePromptTemplate.from_template("The following is a friendly conversation between a human and an AI. The AI is talkative and provides lots of specific details from its context. If the AI does not know the answer to a question, it truthfully says it does not know."),
    MessagesPlaceholder(variable_name="history"),
    HumanMessagePromptTemplate.from_template("{input}")
])

llm = ChatOpenAI(temperature=0)
memory = ConversationBufferMemory(return_messages=True)
conversation = ConversationChain(memory=memory, prompt=prompt, llm=llm)

print(conversation.predict(input="Hi there!"))
# -> 'Hello! How can I assist you today?'

print(conversation.predict(input="I'm doing well! Just having a conversation with an AI."))
# -> "That sounds like fun! I'm happy to chat with you. Is there anything specific you'd like to talk about?"

print(conversation.predict(input="Tell me about yourself."))
# -> "Sure! I am an AI language model created by OpenAI. I was trained on a large dataset of text from the internet, which allows me to understand and generate human-like language. I can answer questions, provide information, and even have conversations like this one. Is there anything else you'd like to know about me?"

Sample execution:
Hello! How may I assist you today?
I'm happy to chat with you! Is there anything specific you'd like to talk about?
Sure thing! I am an artificial intelligence designed to answer questions and provide assistance to humans. I am programmed with a vast amount of knowledge on various topics and I use natural language processing and machine learning to understand and generate responses. I don't have a physical presence but I exist solely in the digital world. My primary goal is to help and make people's lives easier!

@hwchase17 Hey, any idea when you could approve this fix? Currently this bug affects get-started examples from the documentation. Thank you!

@hwchase17 I'd appreciate this PR being merged as well. I'm wanting to do something similar to the sample @ulucinar posted as well

@hwchase17  any idea on approving this?

hm not sure how i feel about the specific example you provided, in which system prompt changes every call. historical messages only make sense in the context that they were called in, no? for example what is value of including french translation in buffer once the prompt has changed to refer to german. aside from potentially not being useful in prompt, the real problem is if you tried to reconstruct this conversation from the memory it wouldn't make any sense (you wouldn't be able to tell why each successive input led to an output in a different language).
but i guess you could potentially want to have multiple input vars even just in the human message (you could reimplement the above to have a generic system message and then each human message specifies what language to translate to). but in that case i think the more generic fix is giving BaseChatMemory some way to reconstruct the full user message from multiple input keys. could do that by adding an optional user_message_prompt template to BaseChatMemory, and if there are multiple non-memory input keys and a user_message_prompt is provided then they're all piped into the prompt.
@hwchase17 thoughts?

sorry for missing this, agree we need to fix this
if set(expected_keys).difference(set(prompt_variables)): should be changed, we need to do this to unlock using prompts with more than one input variable. we could also do some logic to dynamically determine the input keys based on the prompt - memory variables (lets keep backwards compatibility tho)
as for setting the memory key... lets still keep that explicit for now. eg they can set mem = ConversationBufferMemory(return_messages=True, input_key="input") ideally we flag this on init of this class

can this be merged?

I agree that we need to make our code more flexible to support prompts with multiple input variables. Here's a plan to proceed:
For the comparison of expected_keys and prompt_variables, modify it to check if all expected_keys are in prompt_variables, but still allow prompt_variables to contain additional keys. This should make the code more flexible and compatible with prompts having multiple input variables.
Here's how this could be implemented:
if not set(expected_keys).issubset(set(prompt_variables)):

Regarding the setting of the memory key, I understand that we should keep this explicit for now. Users will continue to set the memory key when they're creating an instance of the class. We should also add a check in the initialisation of the class to ensure that a memory key is provided, and if not, a warning will be raised to inform the user to set one.
I believe these changes will address the issues you've highlighted and make the ConversationBufferMemory more robust and flexible. Let's get these adjustments in and update the PR.
Please let me know if you have any further suggestions or concerns.
@hwchase17
@ulucinar

Can this be merged? @hwchase17

I too wish to have this functionality merged.

You should fix this or I'll get fired.

You should fix this or I'll get fired.

If you're serious just manually update the file. I did it today and it works.

sorry for missing this, agree we need to fix this
if set(expected_keys).difference(set(prompt_variables)): should be changed, we need to do this to unlock using prompts with more than one input variable. we could also do some logic to dynamically determine the input keys based on the prompt - memory variables (lets keep backwards compatibility tho)
as for setting the memory key... lets still keep that explicit for now. eg they can set mem = ConversationBufferMemory(return_messages=True, input_key="input") ideally we flag this on init of this class

I dont think this was ever fixed

Can this be merged? @hwchase17 ?
or by when can we expect this PR will be merged ?

@ulucinar Hi , could you, please, resolve the merging issues and address the last comments (if needed)? After that ping me and I push this PR for the review. Thanks!
If this PR is not needed anymore, could you, please, let me know?

Closing due to inactivity and library being a different directory structure now, and feel free to reopen against the current state of the repo!


Add discount coupon information to basket

Is your feature request related to a problem? Please describe.
Currently when you add a discount coupon to the basket, it shows the discount code and applies the discount.
However, you cannot tell what the discount is actually doing, it doesn't highlight which product(s) are being discounted, and doesn't highlight how much is being discounted.
It looks like this:

But when you get to the Shopify checkout page itself, you get a lot more information about the discount, you can see the amounts and which product(s) they're applied to.

Describe the solution you'd like
It would be great if the Basket reflected the Shopify Checkout screen.

Hi Liam,
Thank you for bringing this feature request to our attention. We will review it internally and keep you updated on any progress.


UTF-8: cut: the delimiter must be a single character

Building the demo site, I see the following error messages:
cut: the delimiter must be a single character
Try 'cut --help' for more information.

Hm…, let's see where cut gets into it:
$ rg cut
_site/cheesebuldak.html:
Cut meat into 2-3 cm cubes and mix into the marinade.

build.sh:for CATEGORY in $(echo "$CATS" | cut -d§ -f2- | sort | uniq | (cat -; echo "$UNCATEGORIZED_LABEL")); do
build.sh:            C_CAT=$(echo "$C" | cut -d§ -f2-)
build.sh:        BASENAME=$(echo "$C" | cut -d§ -f1)
build.sh:        C_CAT=$(echo "$C" | cut -d§ -f2-)
_recipes/cheesebuldak.md:> Cut meat into `2-3 cm` cubes and mix into the marinade.
README.md:Apart from the translation of Markdown into HTML, which is a fairly self-explanatory `pandoc` call, and the `config.yaml` shenanigans, which are merely a medium-sized mess: I wanted to **build an index page listing all recipes, but ordered by category** and with cute spicy/vegan/etc. icons.
README.md:3. Employing a `cut`-`sort`-`uniq` pipeline to distill a list of unique categories.

So:
$ printf '§' | hexdump -C
00000000  c2 a7                                             |..|
00000002

Apparently cut sees ‘§’ as multibyte and barfs.
$ uname -a
Linux home 5.11.7-arch1-1 #1 SMP PREEMPT Wed, 17 Mar 2021 16:59:58 +0000 x86_64 GNU/Linux
$ cut --version | head -1
cut (GNU coreutils) 8.32
$ printf 'LC_ALL=%s, LANG=%s\n' "$LC_ALL" "$LANG"
LC_ALL=en_DK.UTF-8, LANG=en_GB.UTF-8

Oops, I used that character under the assumption that it's among those characters represented by a single byte in any ASCII/Unicode-based system – clearly I need to brush up on my ASCII tables! 😉
Interesting, BSD/macOS cut seems to deal with multi-byte delimiters just fine.
Thank you for doing the investigation work for me! I've chosen a different character now – does that fix the issue for you?

Thanks, that works (I'm a little puzzled that the ‘#’ isn't parsed as a comment character, though) — thanks for fixing it so soon!

That's true, it could be iffy in other/older versions of Bash. The separator should be very unlikely to occur in filenames, otherwise I would've just gone down the CSV route and used a comma.
Come to think of it, a space seems like a good one.

Or perhaps just
| cut -d\# …    # escape the delimiter
| cut -d '#' …  # enclose the delimiter in single quotes

When reading the script and templates as a human, it can be difficult to distinguish a SPACE and a TAB at a glance.
Sorry for being so difficult.

Also a good option, but I think I'll just leave it as a space for now.
No worries about being difficult – I wrote a static site generator as a Bash script, so I'm practically asking for it. 😉


[BUG] Pytorch lightning callback

Required prerequisites

[X] I have read the documentation https://nvitop.readthedocs.io.
[X] I have searched the Issue Tracker that this hasn't already been reported. (comment there if it has.)
[X] I have tried the latest version of nvitop in a new isolated virtual environment.

What version of nvitop are you using?
1.3.1
Operating system and version
Ubuntu 20.04.6 LTS
NVIDIA driver version
535.129.03
NVIDIA-SMI
No response
Python environment
poetry environment
Problem description
When using pytorch lightning callback, model_helpers function in lightning.pytorch.utilities raises ValueError("Expected a parent"), even though
elif isinstance(instance, pl.Callback):
  parent = pl.Callback

should  be the chosen branch, isinstance(instance, pl.Callback) returns false. After further inspection, the older package pytorch_lightning is being used, which can be replaced without any further changes with lightning.pytorch.
Steps to Reproduce
gpu_stats = GpuStatsLogger()
trainer = pl.Trainer(logger=etc, callbacks=[gpu_stats])

Traceback
Traceback (most recent call last):
  File "...", line 40, in <module>
    trainer = pl.Trainer(..., callbacks=[callback])
  File "/.../lib/python3.8/site-packages/lightning/pytorch/utilities/argparse.py", line 70, in insert_env_defaults
    return fn(self, **kwargs)
  File "/.../lib/python3.8/site-packages/lightning/pytorch/trainer/trainer.py", line 431, in __init__
    self._callback_connector.on_trainer_init(
  File "/.../lib/python3.8/site-packages/lightning/pytorch/trainer/connectors/callback_connector.py", line 79, in on_trainer_init
    _validate_callbacks_list(self.trainer.callbacks)
  File "/.../lib/python3.8/site-packages/lightning/pytorch/trainer/connectors/callback_connector.py", line 227, in _validate_callbacks_list
    stateful_callbacks = [cb for cb in callbacks if is_overridden("state_dict", instance=cb)]
  File "/.../lib/python3.8/site-packages/lightning/pytorch/trainer/connectors/callback_connector.py", line 227, in <listcomp>
    stateful_callbacks = [cb for cb in callbacks if is_overridden("state_dict", instance=cb)]
  File "/.../lib/python3.8/site-packages/lightning/pytorch/utilities/model_helpers.py", line 39, in is_overridden
    raise ValueError("Expected a parent")

Logs
No response
Expected behavior
No response
Additional context
No response

When using pytorch lightning callback, model_helpers function in lightning.pytorch.utilities raises ValueError("Expected a parent"), even though
elif isinstance(instance, pl.Callback):
  parent = pl.Callback

should be the chosen branch, isinstance(instance, pl.Callback) returns false. After further inspection, the older package pytorch_lightning is being used, which can be replaced without any further changes with lightning.pytorch.

@marios1861 I guess you are using lightning.pytorch rather than pytorch_lightning, right?

Hello @XuehaiPan, yes I am using lightning.pytorch (the package was renamed). lightning.pytorch.callbacks.DeviceStatsMonitor is fine as well, but with adaptor modules (nvitop - lightning in this case) it's not very clear where the responsibility of implementation lies. Since lightning provides the base class for implementing callbacks, I would provide the implementation in nvitop. If that isn't your decision that's fine too.


Add try catch block to avoid IE to break.

Hi Guys,
I create this change in order to be able to set by props the onBlur event and it doesn't break the JS in IE11 since the call constructor of new Event() is not supported.

+1.
I am running into the same issue. Can we please accept this PR? It seems like a harmless change.
Thanks in advance for your time.

Suppressing errors is usually not the correct solution. I was able to resolve issue by using document.createEvent("CustomEvent") instead of new Event() and pushed 3.4.0 to NPM.

Awesome! Thanks so much @wehriam.

Thanks @wehriam


Bump to version that has tests

Currently tagged version doesn't have tests

There are some tests now.


Fix #402: Form::getitem_field must return the Form of what Content::getitem_field would return.

@nsmith- Make sure this doesn't break NanoEvents: it affects VirtualArrays.
(Remember how Form::getitem_field was returning the content of the field, rather than the Form of what Content::getitem_field would return? This fixes that. It also means that SliceGenerators from field-slices can have Forms now, because now they're correct. But if you have any downstream code that depends on the old kluge, that will need to get updated!)

One concern would be that if SliceGenerator now has a form, slices may act slightly more lazy than before, which may have undesired implications if they get nested a bunch and the form metadata builds up to be a performance/memory hog.

Field-slices probably want to be lazy, though, right? Because a field-slice on an array is always an O(1) operation, but getting the array might be expensive.


evaluating sparse retrievers splade++ (main branch)

Hi @MXueguang ,
I am currently evaluating a sparse retriever, splade++ (cocondensor-ensembledistil) on arguana using below command:
./eval_beir.sh --dataset arguana
              --tokenizer naver/splade-cocondenser-ensembledistil
              --model_name_path naver/splade-cocondenser-ensembledistil
              --embedding_dir beir_embedding_arguana_splade
              --query_prefix ""
              --passage_prefix ""
              --normalize

ndcg@10 is self reported as 0.518 in their paper  (Table 4), and no other metrics like mrr, map, recall in paper or in huggingface page
From the above script in the repo, I got 0.1730 . Am I passing wrong arguments, or the current embedding, and retrieving is not supported for sparse vector embeddings like splade? Please let me know.
Thank you,
Srikanth

Hi @srikanthmalla , splade use the max pooling of MLM layer to get the sparse vectors.
directly use the script to get dense vector not works for splade.
please see https://github.com/texttron/tevatron/tree/main/examples/splade regarding how splade encode text and build inverted index for search.


DataTree access to variables in parent groups

Motivation
Accessing variables from parent groups in a tree would be useful. This has come up before in #1982 and https://github.com/xarray-contrib/datatree/issues/297. Here I'm going to summarize some discussion from recent datatree meetings .
A use case is to have common coordinate variables between multiple sub-groups, for example this multi-resolution datatree has a time coordinate that conceptually is common to two groups:
DataTree('None', parent=None)
│   Dimensions:  (time: 4)
│   Coordinates:
│     * time     (time) int64 32B 0 1 2 3
│   Data variables:
│       *empty*
├── DataTree('low')
│       Dimensions:  (x: 3, time: 4)
│       Coordinates:
│         * x        (x) float64 24B 1.0 5.0 9.0
│       Dimensions without coordinates: time
│       Data variables:
│           a        (x, time) int64 96B 0 1 2 3 4 5 6 7 8 9 10 11
└── DataTree('high')
        Dimensions:  (x: 9, time: 4)
        Coordinates:
          * x        (x) float64 72B 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0
        Dimensions without coordinates: time
        Data variables:
            a        (x, time) int64 288B 0 1 2 3 4 5 6 7 8 ... 28 29 30 31 32 33 34 35

It would be useful to be able to access the time coordinate variable from either child group, i.e. dt['/high'].time.
Indeed, the CF conventions explicitly describe this type of behaviour, in terms of searching for variables outside of the current group

Search by proximity
A variable or dimension specified with no path (for example, lat) refers to the variable or dimension of that name, if there is one, in the referring group. If not, the ancestors of the referring group are searched for it, starting from the direct ancestor and proceeding toward the root group, until it is found.

Problem
We could imagine changing the interface of DataTree to allow users to access any compatible variables on parent groups, where compatible means alignable.
There are three issues with this:

Not all users will want to inherit all such variables,
It would be a breaking change compared to the behaviour of the original datatree package,
Mapping operations (e.g. .mean()) over multiple nodes becomes really confusing, because copies of the same variable would effectively be present in multiple nodes.

Proposal
Let me make a concrete feature proposal for discussion, which has some specific features:

Keep .ds, .__getitem__ etc. on DataTree as-is. This means no breaking of backwards compatibility. This also means that we don't have to wait to implement all the details of this before releasing datatree in xarray main.

A clear definition of "compatible variables" for inheritance. These are alignable variables that exist on a parent (or grandparent etc.) Q: Should these be just coordinate variables? Or all variables?

Add additional API which allows access to inherited variables, via a new .inherit accessor on DataTree objects. (The name is not great, please feel free to suggest alternatives.)

Whilst dt[...] will never give access to inherited vars, dt.inherit[...] would allow __getitem__ access to inherited vars
dt.inherit.ds would return a DatasetView of that node with extra inherited variables in it
dt.inherit.to_dataset() -> xr.Dataset containing inherited vars
Explicit API for propagating / shallow-copying all variables to child nodes?

dt.inherit()? -> DataTree

Don't change map_over_subtree (again for backwards compatibility)

map_over_inherited_subtree isolates the conceptuals of mapping over tree with inherited variables

issues: e.g. map over and see the same variable multiple times (in its "local" group and in all its child groups)

This will be a new feature, to be done in a separate release (i.e. no blocker right now)
Implementation
dt.inherit returns an InheritedNode, which at construction time creates and caches a mapping of all inherited variables (._inherited_variables). This then acts like a normal DataTree node except that it consults the inherited variables instead of the normal list of variables.
Creating the list of inherited variables is done by walking up the tree from the current node, examining new variables as they are encountered.
Q: Does this design handle coordinate names?
EDIT: Actually there's an even simpler idea: ds.inherit -> DataTree which has a shallow copy of all compatible variables inherited onto that node. Then .ds, .__getitem__ etc. will automatically behave as expected, as you will just have a new DataTree object with more valid keys.
Describe alternatives you've considered

Not add any support for inheriting variables

That's what we currently have, and with this proposal we could eventually remove it if it turned out no-one liked it.

Integrate support into the existing API (i.e. change dt.__getitem__ to access inherited variables)

It's not possible to do this without breaking changes. It's also not clear that there is a general one-size-fits-all answer to when variables should or shouldn't be inherited. This proposal provides both behaviours.

Allow users to change behaviour of objects

Some kind of switch (on the specific object instances, globally, or with a context manager) could be used to switch between the two behaviours. But this seems extremely error-prone, and means that user code becomes ambiguous without knowing the state of the switch.
cc @shoyer @keewis @flamingbear @owenlittlejohns @eni-awowale
also @alexamici @benbovy I would love to hear your thoughts too.

Let's consider a slightly variation on the inheritance proposal: instead of inheriting all variables, I propose that Xarray should only inherit coordinates (and any associated indexes).
This is slightly inconsistent with CF, but I think better captures the spirit of inherited dimensions in the netCDF data model, and I don't think there are use cases for inheriting data variables (these don't get automatically associated with DataArray objects as coordinates, so they might as well be accessed directly).

We implemented coordinate inheritance in https://github.com/pydata/xarray/pull/9063.
See https://github.com/pydata/xarray/issues/9077 for in-depth discussion.


#35 added achievements

added achievements of a user

@nikhil25803 can we please review and merge it.

Include the method in documentation.md file and also upload a screenshot demonstrating that the method is working fine @Viveksati5143

Any update @Viveksati5143?

Is it mandat to upload a ss coz my system ran into problem and I'll take time fixing it

@nikhil25803 should i Include the method in documentation.md file is it fine?

@nikhil25803 should i Include the method in documentation.md file is it fine?

Yes, add it in the documentation.md file.

@nikhil25803 add JWOC tag


docs: add clarity about the 1000 events history

When talking about missing events on a particular key, the 1000 event history
limit can be understood as being per key, instead of etcd-wide events. Make it
clear that it is across all etcd keys.

lgtm


New data table from JillRathborne

Data table added by JillRathborne at 2015-06-27T18_04_37.419397

@keflavich - We probably need to add in some nan handling for the plots before merging.


Settings are still stored in DocSettings\User even though I specified a local settings dir

What steps will reproduce the problem?
1. Extract SuperPutty to X:\SuperPutty
2. Create a dir X:\SuperPutty\Settings
3. Tell SuperPutty to use that dir for settings

What is the expected output? What do you see instead?
I expected all of the settings would be stored in X:\SuperPutty
But some settings were stored in C:\Documents and
Settings\User\SuperPutty.settings

What version of the product are you using? On what operating system?
<IP_ADDRESS> on Windows XP SP3

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 17 Sep 2013 at 10:53

There are only 2 locations the main SuperPuTTY.Settings file can be located, in the location pointed to by the %USERPROFILE% environment variable, or in the Folder SuperPuTTY runs from.


http://www.bootstrap-switch.org/examples.html Not Loading

Your website is not working!!!

@fume docs are on https://bttstrp.github.io/bootstrap-switch/ constructive PRs to update any old URLS are welcome

@graingert , the problem is that on npmjs you're still referencing the non-working site :)
Regards,

BTW, even https://bttstrp.github.io/bootstrap-switch/ is not working as expected.
Links under "Documentation" are wrong. They link to https://bttstrp.github.io/something.html while the correct link is https://bttstrp.github.io/bootstrap-switch/something.html
Hope this can help you somehow.
Regards,

@fume We just put it up again, I'll update old URLs soon. Thanks

Nessun problema ragazzi ;) Ottimo lavoro!
saluti,


Redis-server.exe can't work

The redis-server crashed when it was started.
redis version:redis-x64-2.8.2102
system: windows server 2008 R2 Enterprise
The Exception Info:
EventName:	APPCRASH
AppName:	redis-server.exe
Application version:	<IP_ADDRESS>
Application time stamp:	55dc76ec
Fault module name:	StackHash_44ec
Fault module version:	6.1.7601.18247
Fault module time stamp:	521eaf24
Exception code:	c0000374
Exception shift:<PHONE_NUMBER>0c4102
OS Version:	6.1.76<IP_ADDRESS>.274.10
Area ID:	2052
Other 1:	44ec
Other 2:	44ec3930a64428761a5c648469063845
Other 3:	af5d
Other 4:	af5dba664396cbfe6af420f7040f16d5

Hi @huhm
the crash at startup has been fixed in the 2.8.2103 release.
Thank you.


Update Jenkinsfile

Parallelize test runs
Only publish Docker image when there is a new tag that matches the current
version

As noted in #231 - parallelizing is not as simple as it could be, due to tangled dependencies in the docker-compose env. Closing this PR for now.


Issue (PROD): FOM should use district email address to send email

Describe the Bug
For Cariboo Chilcotin Natural Resource District, the email was sent to<EMAIL_ADDRESS>at production FOM. It should be sent to district email with<EMAIL_ADDRESS>Expected Behaviour
Sent to<EMAIL_ADDRESS>for Cariboo Chilcotin Natural Resource District.
Actual Behaviour
It was sent to<EMAIL_ADDRESS>Additional context

Based on prod data with the screenshot above, the district "Cariboo-Chilcotin" record does have correct "DCC.Tenures" email address with it.
Olga sent further clarification email to Julius. So we are waiting to see either this is real prod issue with more information on which FOM (finalized) was this email sent or if this was just for TEST/Demo instance (which was configured in oc template to send to "FLNR.AdminServicesCariboo@gov.bc.ca).


WIP: cmd: migrate from getopt to argp

Work in progress! Use with caution and consider this as breaking!!!!!!!!!
The argument handling is quite hard to make it good when using getopt with help and usage messages. The argp library is a better choice for this task and can be easily extended.

Nice! I'm interested in continuing this experiment.

Ugh, this wasn't meant to get closed. See the explanation in https://github.com/amboar/culvert/pull/70#issuecomment-2526530567
Like #70 I can't seem to re-open this.

w00ps. I'll force-push my branch and open a new PR.


fix: add extension URL to trustWallet.ts, add trust to getDefaultWall…

Added extension URL to trustWallet.ts given that we have launched a new browser extension (https://chrome.google.com/webstore/detail/trust-wallet/egjidjbpglichdcondbcbdnbeeppgdph). Have also added trust to the wallets in getDefaultWallets.ts given that we are 1st or 2nd most popular web3 wallet by users and thus should be in the 'popular' grouping.

Any update on this @RainbowWalletAdmin ?

Thanks for the PR @chaoticgoodpanda ! We're not going to add any more wallets to the getDefaultWallets function, and are instead going to push the community to begin creating their own wallet configuration libraries. In regards to the "Popular" wallets section, you can see in our docs that this is fully configurable by developers: https://www.rainbowkit.com/docs/custom-wallet-list#multiple-groups

@chaoticgoodpanda if you update the PR to remove the change to getDefaultWallets we can get this merged.

@chaoticgoodpanda if you update the PR to remove the change to getDefaultWallets we can get this merged.

Hi, just wondering why we would remove this from getDefaultWallets. Given Trust's popularity, shouldn't it be in the default wallets list? 😅 Any way to compromise on this ser? Thanks!

@chaoticgoodpanda testing the WC connection when the extension isn't installed and looks like we're not getting the correct URI here:

Compare to another wallet's QR code:

Will debug when I have a moment today, let me know if you know what's going on, or if you aren't experiencing the same.

Hmm, I think it works for me, yes? See attached video.
https://user-images.githubusercontent.com/13663360/207406516-15f08cdf-48ab-46b4-83ac-d6dd9d764694.mov

@chaoticgoodpanda is this locally or in the example link?

Yep! Just did it in your example link. See here. Note the URL in browser.
https://user-images.githubusercontent.com/13663360/207411609-8556b81e-19ca-4749-9c7b-d3d35389b75c.mov


fix(utils): access new XMLHttpRequest().responseBlob error

https://bugs.webkit.org/show_bug.cgi?id=44721
In some browsers that use webkit, It would fail when patchClass function try to access responseBlob in XMLHttpRequest instance.

@vicb review it please, it's would cause application crush in some android browser.

@mhevery

@jeffbcross


Internal: Setup Renovate for https://github.com/prisma/engines-wrapper

Problem
Pointed out by @williamluke4
https://github.com/prisma/engines-wrapper/blob/master/packages/engines/package.json#L11
Here the dependencies are locked
    "@prisma/debug": "2.18.0-dev.32",
    "@prisma/engines-version": "workspace:2.19.0-25.4c5c15d858e5a7739351d302d4e0d88d69149394",
    "@prisma/fetch-engine": "2.18.0-dev.32",
    "@types/node": "^14.11.8",
    "execa": "^4.0.3",
    "typescript": "4.0.3"

Suggested solution
We add Renovate with automerge setting for auto updating dependencies.

Done in https://github.com/prisma/engines-wrapper/pull/8


Only use JSON output format in 2.0

Right now there are two output formats, RESP and JSON. I'm planning to drop the RESP format in 2.0 and only output JSON. IMO this will hugely simplify documentation and also make it much easier to maintain client libraries. It's also makes a lot more sense for users new to Tile38.
Tile38 will still support the Redis protocol as the default, but all responses will be Bulk Strings containing the JSON payload.
I'm looking for feedback so please let me know if anyone objects or has other thoughts.
ping: @phulst, @m1ome, @Lars-Meijer, @amorskoy, @umpc, @beyoung, @mitghi

That makes sense to me.
I think that this would work well because it still supports Redis client libraries, and allows a choice for deserialization.
I think that it should be stated clearly in the README.md though, as the split input/output encoding might be confusing for current Redis users who are new to Tile38.
One thing to consider though: this will break Redis dashboards and RESP output-based tools.
Overall, I think that having less to maintain makes this worth it.

Please use emoji to vote-up and leave your comment.

Is there any sort of timeline for version 2.0? Are we talking about weeks, months, a year or longer?
I am not sure how this will impact the my current implementation with Lettuce, I don't think it will have a huge impact, except for maybe the usage of current cursors.

this will break Redis dashboards and RESP output-based tools.

Good point, system calls such as AUTH, SERVER, PING we'll likely want to keep as RESP. I guess the real issue I'm seeing is with the RESP output of geo object from commands like GET, NEARBY, SCAN, etc.

Is there any sort of timeline for version 2.0?

It's too early to make promises, but I targeting:

mid May to push a public 2.0 branch. Won't include geofencing, replication, and system commands.
mid July for feature completeness
end of summer for merge with master branch and 2.0 release.

@tidwall need any help from me?

@m1ome 👍 I'll ping you when I push the branch.

works for me. I think this should only involve changing a few lines of code. When you have a branch, I can branch the node client as well for testing against your code.

I'll likely do this when I get to v2.0. I'm closing this issue to reduce clutter. Thanks!


Added new method to return a the list of tolerance values with matches

It is a method identical to compare_faces except that it returns a list of dicts with a "match": True/False value and "tolerance":0.X value.
This is useful in the case where you are getting multiple matches and want to get the one with the lowest distance.
PS: This is my first pull request, please give me feedback if it is not accepted and explain to me what I should do better =) .

Hi @kevex91, thanks for the submission. I think you did a great job with the code and there's nothing wrong with your pull request. I encourage you to keep submitting PRs! My only suggestion in the future would be to add test cases along with any new code you add because most people won't accept new code without test cases to go with it.
But the real question is if this is a feature that this library needs. I want to keep the API for this library really simple so it's easy to learn. There's no right or wrong answer to whether or not this library should have this function and it's totally a personal preference thing.
In my opinion, adding a structured response like this is kind of heavy. It would be faster and simpler for someone to just call numpy.argmin(face_distance(known_face_encodings, face_encoding_to_check))) to get the face with the lowest distance. The overhead of wrapping everything in a dictionary isn't really needed and would slow things down (especially processing video or something time-sensitive).
But again, that's just my opinion. I don't mean to say that anything is wrong with your code and someone else might have a different take :) But my preference would be not to add an extra function for this. But anyone using the library could easily grab your code and use it in their own program if they prefer it to work that way.

Ok, that makes sense =).
Numpy is also new to me but that looks like it'll suit my purpose beautifully.
I guess this can be closed then. I'm always for the most efficient method.


ttnn.embedding_bw inconsistent documentation regarding input tensors dtypes

ttnn.embedding_bw doesn't support output and input gradient tensors having different dtypes. This bug/constraint should be put in the documentation.
.
To Reproduce
Steps to reproduce the behavior:
Sweep test for embedding_bw is located in 'tests/sweep_framework/sweeps/eltwise/binary_backward/embedding_bw/embedding_bw.py'

Checkout branch amalbasaTT/backward_ops-sweeps-2 (soon to be merged to main)

git checkout amalbasaTT/backward_ops-sweeps-2

Go to 'tests/sweep_framework/sweeps/eltwise/binary_backward/embedding_bw/embedding_bw.py'
Remove invalidate_vector function
Generate new parameter vectors and run the sweep test

python3 tests/sweep_framework/sweeps_parameter_generator.py --elastic cloud --module-name eltwise.binary_backward.embedding_bw.embedding_bw
python3 tests/sweep_framework/sweeps_runner.py --elastic cloud --module-name eltwise.binary_backward.embedding_bw.embedding_bw

See the error. Results can be found on elastic cloud as explained here: https://github.com/tenstorrent/tt-metal/tree/main/tests/sweep_framework

Expected behavior
For vectors where output_dtype and grad_dtype are different, test will fail with the message "Output and input gradient tensors must have the same dtype"

@amalbasaTT  For this bug do you mean that we are not supposed to allow different data types for output and input gradient tensors and we should exit with an error message ? Or do you mean different data types should be able to work together ?

Updated document and merged to main. Closing this issue.


OutOfMemoryError() with cross join

ERROR: OutOfMemoryError()
 in rep at /home/anshul/.julia/v0.4/DataArrays/src/extras.jl:83
 in crossjoin at /home/anshul/.julia/v0.4/DataFrames/src/abstractdataframe/join.jl:254
 in join at /home/anshul/.julia/v0.4/DataFrames/src/abstractdataframe/join.jl:200

I am getting this error working with a ~20MB dataset. All other joins are working fine. Would appreciate any help regarding this.

How many rows do you have? If it's something >10^5, the observed behaviour is not surprising.

16GB RAM. Rows are around ~10^5. If it is an observed behavior, then is there any solution to this?

Then cross join would give you ~10^10 rows. It's quite a lot, at least for in-memory desktop application. I suppose the solution depends on what you want to do. If you plan to filter the result of cross join, maybe  you can do some prefiltering by using the other types of join.

Okay, thanks for the help


some advice

How could it deplay to heroku[https://heroku.com] or okteto[https://cloud.okteto.com]?

same here
i had done what i can but not working
it says
--Your app does not include a heroku.yml build manifest--
i dont know how to make it :(


Wrong characters when stream is text/plain

Hi,
I'm getting wrong character when getting data from text/plain stream, this is my code:
return this._ws.requestBinaryStream(options).then(response => {
      let content = BlobUtil.arrayBufferToBinaryString(response.data);
      console.log(content);
      content = new TextDecoder('utf-8').decode(response.data);
      console.log(content);
      return content;
    });

This is my requestBinaryStream:
requestBinaryStream({ method, url, contentType, params, token }) {
    // console.log('Request: [', method, '] ', url);
    return axios({
      method,
      url: url,
      responseType: 'arraybuffer',
      data: JSON.stringify(params),
      headers: {
        'X-Requested-App': 'kcenter',
        ...(token && { Authorization: `OKM ${token}` })
      }
    })
      .then(response => {
        // const { status, data } = response;
        // console.log(`Response ${status} - ${JSON.stringify(data)}`);
        return response;
      })
      .catch(error => {
        throw this.buildException(error);
      });
  }

I success get working with TextDecoder. My question is if there's some function what can be used from your library either TextDecoder or if you can add similar support in future.
Thanks for your time.

Hi, you may want to ask this question on StackOverflow rather than this repo. This repo doesn't really handle encodings at all; it just converts from one binary format to another. I'm not sure what's not working with your code, but a quick glance says it may be an issue with how you're requesting the data from the server or how it's encoded on the server side. Good luck!


0891 ada operator tree, sekarang dianggap ga valid

0891

contoh casenya<PHONE_NUMBER>99

This is tokopedia pulsa's interface. This number cannot be identified

Hi @ivanadiputra can you please double check?

Confirmed that this is not a valid prefix


rename() syscall returns EPERM when target is non-writable but owned file on drvfs

Your Windows build number:  (Type ver at a Windows Command Prompt)

Microsoft Windows [Version 10.0.18363.657]

What you're doing and what's happening:  (Copy&paste the full set of specific command-line steps necessary to reproduce the behavior, and their output. Include screen shots if that helps demonstrate the problem.)

Make sure you have C:\ mounted as /mnt/c, and create a directory C:\Test that is accesible to your WSL user:
C:\ on /mnt/c type drvfs (rw,noatime,uid=1000,gid=1000,case=off)

Then:
cd /mnt/c/Test
:> foo
:> bar
chmod ugo-w {foo,bar}
cat << EOF > rename.c
#include <stdio.h>
#include <errno.h>

void main(int argc, char* argv[])
{
    int ec = rename("foo", "bar");

    if(ec)
    {
        perror("Failed");
    }
    else
    {
        printf("Success\n");
    }
}
EOF
gcc -o rename rename.c
./rename

On WSL, when doing this on a drvfs filesystem, it prints:
Failed: Permission denied

What's wrong / what should be happening instead:

On real linux, this prints:
Success

On a lxfs filesystem in WSL it also prints Success.
Note that on older WSL builds, this also prints Success on drvfs. We can run this successfully on 10.0.17763.1039, it will print Success as it should. The bug was introduced after that build.

Strace of the failing command, if applicable:

https://gist.github.com/sonologic/037bbc6718e500f361a82e1686d8e02a

Notes

This issue surfaced when running perforce's 'p4 sync' command in a perforce workspace on a drvfs filesystem.

Hi, I can approve this.
This seems to be an DRVFS Issue that is not yet fully POSIX compliant.
Somehow readonly-Files cannot be replaced in drvfs-mounts. Although you can manually remove them and place files...
Expected Behaviour:
## rootfs mount in wsl:
> cd /home/snoopotic/test
> touch from.file to.file
> chmod 444 *file
> l
total 0
drwxr-xr-x 1 snoopotic snoopotic 4096 Apr  5 09:38 .
drwxr-xr-x 1 snoopotic snoopotic 4096 Apr  5 08:00 ..
-r--r--r-- 1 snoopotic snoopotic    0 Apr  5 09:38 from.file
-r--r--r-- 1 snoopotic snoopotic    0 Apr  5 09:38 to.file
> mv -v from.file to.file
mv: replace 'to.file', overriding mode 0444 (r--r--r--)? y
renamed 'from.file' -> 'to.file'

Actual Behaviour:
## drvfs mount (C:\ on /c type drvfs (rw,noatime,uid=1000,gid=1000,umask=22,fmask=111,metadata,case=off))
> cd /c/Users/snoopotic/test
> touch from.file to.file
> chmod 444 *file
> l
total 0
drwxr-xr-x 1 snoopotic snoopotic 4096 Apr  5 09:33 .
drwxr-xr-x 1 snoopotic snoopotic 4096 Apr  5 09:34 ..
-r--r--r-- 1 snoopotic snoopotic    0 Apr  5 09:33 from.file
-r--r--r-- 1 snoopotic snoopotic    0 Apr  5 09:33 to.file
> mv -v from.file to.file
mv: replace 'to.file', overriding mode 0444 (r--r--r--)? y
mv: cannot move 'from.file' to 'to.file': Permission denied

This issue relates to many diferent tools that use "mv" or renaming things to already existing files in readonly. I changed my wsl's homedir to "$WINHOME" for soe reasons and thus sometimes run inissues because f that.
Maybe I am missing some mount optins but I think something is mis-implemented yet - would like to see it fixed ;)

Confirmed on WSL2 19592.

The strace(1) has the expected:
rename("from.file", "to.file")          = -1 EACCES (Permission denied)

Maybe I am missing some mount optins but I think something is mis-implemented yet

It is. What's surprising it is hasn't come up before (it isn't a dupe). Is there a killer app that is surfacing the pattern? [Sometimes it helps prioritization if there is one.]

It is. What's surprising it is hasn't come up before (it isn't a dupe). Is there a killer app that is surfacing the pattern? [Sometimes it helps prioritization if there is one.]

Not surprising at all because it's a new bug that has been recently introduced (please see my original bug report, at the end it says 'Note that on older WSL builds, this also prints Success on drvfs. We can run this successfully on 10.0.17763.1039, it will print Success as it should. The bug was introduced after that build.'.
For us the killer app is that we're currently unable to use perforce under WSL without nasty work-arounds, prompting a plan to migrate entirely away from windows to proper linux.

we're currently unable to use perforce

Heh, that was going to my wild ass guess. Thanks!

Is anyone from microsoft actually looking at these issues, or is this issue tracker just for show?

Yes, by default Windows will not let you rename over a read-only file. We do have a way to work around this for NTFS volumes at least, so this hopefully shouldn't be too hard to fix.

Appears to be addressed circa 20175. If people still experience what appears to be same-ish behavior in builds >20175 please file until a new cover.
/fixed 20175


docs: Fix simple typo, trnslate -> translate

There is a small typo in paypal/payflow/codes.py.
Should read translate rather than trnslate.

Thanks for the contribution.


Authenticate failed after previously working

The following command was working fine up until about 3 days ago:
.\appgotapo.exe -host="192.168.x.x" -u="admin" -p="tapoPassword" -do="move:10_0"

"tapoPassword" in the command above is my Tapo cloud account's password and not the local RTSP account's password.
The camera's firmware has not been updated recently and the command was not modified.
Since the issue started, the following error is displayed any time the command is run.
To clarify, this exact setup has been working perfectly until 3 days ago.
Authenticate failed. Try use another cred. login - "admin", password - your password in Tapo account.
App will be trying with "admin" with next operation(if your pass on rtsp equal pass your account). If next operation exist.
panic: runtime error: index out of range [0] with length 0

goroutine 19 [running]:
github.com/KusoKaihatsuSha/gotapo.(*Tapo).getDevice(0xc0000e6000)
        C:/Users/skald/go/pkg/mod/github.com/!kuso!kaihatsu!sha/gotapo@v1.0.5/gotapo.go:1677 +0x3af
github.com/KusoKaihatsuSha/gotapo.Connect({0xc0000b004e, 0xc}, {0xc00009c09b, 0x5}, {0xc0000b0063, 0x10})
        C:/Users/skald/go/pkg/mod/github.com/!kuso!kaihatsu!sha/gotapo@v1.0.5/gotapo.go:1371 +0x159
main.main.func1({0xc0000b004e?, 0x0?})
        c:/Users/skald/Downloads/_camtest/appgotapo/main.go:37 +0x45
created by main.main in goroutine 1
        c:/Users/skald/Downloads/_camtest/appgotapo/main.go:36 +0x2d8

System information:
Computer:
Windows 11 Pro 23H2 build 22631.3527
appgotapo v1.0.5 amd64 (unmodified release file)
Windows Terminal - Default command prompt profile
Camera:
Tapo C200 v3
Firmware 1.3.13 build 240327 Rel.63336n(4555)

Edit:
My Tapo cloud account's password is not the same as my local RTSP account's password.
Connecting to- and viewing the RTSP stream using the local RTSP account credentials is still working.

Hello!
It's problem with TP-Link side - company added step with TP-Link Cloud token verify.
(The update apparently follows a canary principle, so it appeared to users at different times).
But GitHub Community became known the information about TP-Link plans - organize API with getting cloud token. However...plan not have any exact date of realize.
Long ticket about it in GitHub Community: https://github.com/JurajNyiri/HomeAssistant-Tapo-Control/issues/551
At the moment I'm inclined to wait for something official from the TP-Link. Manipulating with the TP-Link Сloud token may lead to legal uncertainties or blocks.
One way (if possible):
Try to reset the camera to factory settings (higher than build 230921)
and block internet access to the camera.
Other way (if possible):
Downgrade the firmware, where been insecure authorize, such as 1.1.12.
https://github.com/nervous-inhuman/tplink-tapo-c200-re/issues/4
https://github.com/tapo-firmware/Directory/blob/main/all_keys.txt

Hi!
Thanks for taking the time to share this information. I have now read and caught up on the issue you linked and some similar ones.
I tried resetting the camera several times but this did not help. Blocking internet access to the camera did not change anything.
I then tried downgrading the firmware to 1.3.0 from this url following DrmnSamoLiu's guide. This solved the issue. However, this is not an ideal solution going forward. Hopefully, TP-Link/Tapo will fix this issue soon.

Information update:
TP-LINK does not confirm the use of cloud tokens, but promises to fix something in the new updates.

Excellent news about the app updates. Thank you for sharing. I have stayed on firmware version 1.3.0 and so far it is still working fine for me, but new updates are always nice.


Fix springboot quickstarter / gradle 4.10 - master

fix for #131

@stitakis  /  @michaelsauter - can you try this at BI X prior me merging?


[CARBONDATA-4328] Load parquet table with options error message fix.

Why is this PR needed?
If parquet table is created and load statement with options is triggerred, then its failing with NoSuchTableException: Table ${tableIdentifier.table} does not exist.
What changes were proposed in this PR?
As parquet table load is not handled, added a check to filter out non-carbon tables in the parser. So that, the spark parser can handle the statement.
Does this PR introduce any user interface change?

No

Is any new testcase added?

Yes

Build Failed  with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbonPRBuilder2.3/6235/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_2.4.5/4490/

Build Failed  with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/625/

Build Success with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/630/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbonPRBuilder2.3/6240/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_2.4.5/4495/

Build Failed  with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/632/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbonPRBuilder2.3/6242/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_2.4.5/4497/

retest this please

LGTM

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbonPRBuilder2.3/6243/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_2.4.5/4498/

Build Failed  with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/633/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbonPRBuilder2.3/6244/

Build Failed  with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/634/

retest this please

Build Failed  with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/635/

Build Failed  with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_2.4.5/4500/

LGTM

retest this please

Build Failed  with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbonPRBuilder2.3/6246/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_2.4.5/4501/

Build Failed  with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/636/

retest this please

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_2.4.5/4505/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbonPRBuilder2.3/6250/

Build Failed  with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/640/

retest this please

Build Failed  with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbonPRBuilder2.3/6253/

Build Failed  with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_2.4.5/4508/

Build Success with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/643/

retest this please

Build Success with Spark 3.1, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_3.1/645/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbonPRBuilder2.3/6255/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12602/job/ApacheCarbon_PR_Builder_2.4.5/4510/

LGTM


Support a client-id allowlist

This will support setting up publicly-accessible personal servers, without also allowing anyone to create a new client.

@Necior do you want to have a look?


Why is the gpu version of PGDS slower than the cpu version?

Why is the gpu version of PGDS slower than the cpu version? The time those two cost per epoch is about 1.256 to 1.032 seconds. That's very different from other models like PGBN.

The poor performance of GPU version is caused by model sampler. Specifically, PyDPM does not perform a specific acceleration of the particular Gibbs sampling process in some models like DirBN & PGDS. The details can be found here：PGDS, DirBN.
In the future, we will consider optimizing them more comprehensively.


Subset by polygon too slow in some cases

Use case: #1
In the test polygon dataset (https://raw.githubusercontent.com/chrisfinch/over9k/master/public/experiments/march-2013/GBR_adm2.json) there are some MultiPolygons which have a huge number of vertices, and even after code optimization using typed arrays and tight for-loops (point-in-poly / pnpoly test) it still takes around 1min to calculate for all grid cells whether they are inside the multi polygon or not. And this is after subsetting the area by a bounding box first.
I'm not sure if this can be made much faster. An alternative would be to offer the user (after detecting that it would take too long) the choice of simplifying the polygon first, but this may not be desirable in all cases since then the borders are not as accurate anymore.
Since this problem is perfect for parallel execution it would make sense to use multithreading, but this is still rather complicated in browsers (using web workers).

Idea: Try HTML5's Canvas context method isPointInPath. This should be faster.
Something like:
var geopoly = [[0,0],[10,0],[10,10],[0,10],[0,0]]
var poly = new Path2D()

poly.moveTo(geopoly[0][0], geopoly[0][1])
for (var i=1; i < geopoly.length-1; i++) {
  poly.lineTo(geopoly[i][0], geopoly[i][1])
}
poly.closePath()
var vctx = document.createElement('canvas').getContext('2d');
console.log(vctx.isPointInPath(poly, 5, 5))

This is basically what we do at the Java end (the API is almost identical). There is a cost to creating the polygons of course, which could be significant.

Well, that didn't work, in fact it is way slower. I guess it's because ctx.isPointInPath is not optimized for the case when there are just straight lines, since it accepts generic paths which can be made of arcs for example.
I guess a progress bar is the way forward here. Together with displaying a warning when the product of grid points and polygon vertices is above some threshold, suggesting to grab a coffee or simplify the polygon first.

I could improve the polygon subsetting speed a lot by using a different library for the point-in-polygon tests. On my machine, the scottish highlands now only need a few seconds, compared to 1-2min. Closing this now, fast enough.


Add validation to reject inner columns containing whitespace chars

Summary of the changes / Why this improves CrateDB
Closes https://github.com/crate/crate/issues/13486
Checklist

[x] Added an entry in CHANGES.txt for user facing changes
[x] Updated documentation & sql_features table for user facing changes
[x] Touched code is covered by tests
[x] CLA is signed
[x] This does not contain breaking changes, or if it does:

It is released within a major release
It is recorded in CHANGES.txt
It was marked as deprecated in an earlier release if possible
You've thought about the consequences and other components are adapted
(E.g. AdminUI)

Thx! Left a couple of comments. Also, is it only a problem for object keys (properties)? what about the values?

Values work because they won't modify the schema.

Thx! Left a couple of comments. Also, is it only a problem for object keys (properties)? what about the values?

Values work because they won't modify the schema.

Thx, just double checking!

Ready for another review.


require() of ES Module

Hi!
This error occurs for both modules  TronWeb and @noble/secp256k1

Hi, could you please give some more detail about the error like the version and the detailed error infomation.
It's much better if you have a reproduce repo. Thanks a lot.

Hi, could you please give some more detail about the error like the version and the detailed error infomation.
It's much better if you have a reproduce repo. Thanks a lot.

Hi, I have the same problem. This error occurs for both TronWeb and @noble/secp256k1 modules, has anyone solved this problem yet?

When i add "type": "commonjs" in my package.json
1-1) use require()
Error [ERR_REQUIRE_ESM]: require() of ES Module
@.***/secp256k1/index.js from
/node_modules/tronweb/dist/TronWeb.node.js not supported.
Instead change the require of index.js in
/node_modules/tronweb/dist/TronWeb.node.js to a dynamic import() which is
available in all CommonJS modules.
1-2) use import()
SyntaxError: Cannot use import statement outside a module
When i add "type": "commonjs" in my package.json
2-1) use require()
ReferenceError: require is not defined in ES module scope, you can use
import instead
This file is being treated as an ES module because it has a '.js' file
extension and 'package.json' contains "type": "module". To treat it as a
CommonJS script, rename it to use the '.cjs' file extension.
2-1-1) so i use ".cjs" extension
Error [ERR_REQUIRE_ESM]: require() of ES Module
@.***/secp256k1/index.js from
/node_modules/tronweb/dist/TronWeb.node.js not supported.
Instead change the require of index.js in
/node_modules/tronweb/dist/TronWeb.node.js to a dynamic import() which is
available in all CommonJS modules.
2-2) use import()
Error [ERR_REQUIRE_ESM]: require() of ES Module
/node_modules/tronweb/dist/TronWeb.node.js not supported.
Instead change the require of index.js in
/node_modules/tronweb/dist/TronWeb.node.js to a dynamic import() which is
available in all CommonJS modules.

Node.js v21.2.0
npm v10.2.4
On Sat, Mar 16, 2024 at 12:05 PM List525 @.***> wrote:

Hi, I have the same problem. This error occurs for both TronWeb and
@noble/secp256k1 modules, has anyone solved this problem yet?
—
Reply to this email directly, view it on GitHub
https://github.com/tronprotocol/tronweb/issues/493#issuecomment-2001909618,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIY4V3R765G7KOP34UFRKL3YYP73RAVCNFSM6AAAAABEXDSXEWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBRHEYDSNRRHA
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Reza Darzi
CEO
elsa. http://www.elsaagency.com
Digital Marketing Agency

When i  add "type": "commonjs" in my package.json
1-1) use require()
Error [ERR_REQUIRE_ESM]: require() of ES Module<EMAIL_ADDRESS>from /node_modules/tronweb/dist/TronWeb.node.js not supported.
Instead change the require of index.js in /node_modules/tronweb/dist/TronWeb.node.js to a dynamic import() which is available in all CommonJS modules.
1-2) use import()
SyntaxError: Cannot use import statement outside a module
When i  add "type": "commonjs" in my package.json
2-1) use require()
ReferenceError: require is not defined in ES module scope, you can use import instead
This file is being treated as an ES module because it has a '.js' file extension and 'package.json' contains "type": "module". To treat it as a CommonJS script, rename it to use the '.cjs' file extension.
2-1-1) so i use ".cjs" extension
Error [ERR_REQUIRE_ESM]: require() of ES Module<EMAIL_ADDRESS>from /node_modules/tronweb/dist/TronWeb.node.js not supported.
Instead change the require of index.js in /node_modules/tronweb/dist/TronWeb.node.js to a dynamic import() which is available in all CommonJS modules.
2-2) use import()
Error [ERR_REQUIRE_ESM]: require() of ES Module /node_modules/tronweb/dist/TronWeb.node.js not supported.
Instead change the require of index.js in /node_modules/tronweb/dist/TronWeb.node.js to a dynamic import() which is available in all CommonJS modules.

Node.js v21.2.0
npm v10.2.4

Are you using TronWeb v6.0.0-beta.1 or v5 ? It's recommended to use a build tools like webpack or vite if you are using v5.
You can also  have a try with TronWeb v6 beta version. V6 exports multiple type files including ESM and Commonjs.
npm install tronweb@beta

thanks
it works with vite
On Sun, Mar 17, 2024 at 10:43 AM Svein @.***> wrote:

Are you using TronWeb v6.0.0-beta.1 or v5 ? It's recommended to use a
build tools like webpack or vite if you are using v5.
You can also have a try with TronWeb v6 beta version
https://tronweb.network/docu/docs/6.0.0-beta.1/intro. V6 exports
multiple type files including ESM and Commonjs.
npm install @.***
—
Reply to this email directly, view it on GitHub
https://github.com/tronprotocol/tronweb/issues/493#issuecomment-2002340018,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIY4V3QSLDS2P6NJLJDRIZDYYU7CFAVCNFSM6AAAAABEXDSXEWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBSGM2DAMBRHA
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
Reza Darzi
CEO
elsa. http://www.elsaagency.com
Digital Marketing Agency

I had the same problem, and using beta version helped, thanks!


token-js: add GroupPointer extension

As mentioned in #6175, the GroupPointer extension is live on Token-2022
mainnet-beta, but it's not currently supported in the @solana/spl-token.
This change adds that support!

Just one little micro-nit. Also, as follow-up work, can you add the group pointer and group member pointer authorities in instructions/setAuthority.ts?

Yep, I'll add to the stack!

Merge activity

Feb 24, 10:24 AM EST: @buffalojoec started a stack merge that includes this pull request via Graphite.