[Web] Cannot highlight PHP files.

Version: 1.39.0-insider
Commit: 8b6e0efc0a98639085fabeb5226a516785424796
Date: 2019-09-19T03:06:11.642Z
Browser: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36
Steps to Reproduce:

Open any php file like the following image.

Does this issue occur when all extensions are disabled?: Yes
And by the way, the error message is really interesting, to read it, you have to parse it by charCode.

Unsupported configuration.


Contact us button redirecting to home page in trip booking page.

Describe the bug
The contact us button in trip booking page redirecting to home page rather than going to the contact us form. The link of contact us in footer is not working.
Expected behavior
The contact us button while trip booking should redirect to contact us form and same should happen with the link in the footer section.
Screenshots (Mandatory)

Additional Context (Mandatory )
I am able to handle this issue please assign this to me under gssoc.
Are you contributing under any open-source program ?
Yes | GSSOC24

GSSOC24

@apu please assign me this issue under gssoc


Add radix option for displaying digital bus waveforms

Right now we hardcode hex. Should really allow decimal, binary, etc as well.

Blocked by https://github.com/azonenberg/scopehal/issues/258


Change the "master" branch to "main"

Note from @johnwalicki
For Open-Sentencing-* repos that have completely merged branches, its easy to rename master to main
As of 12-08-20, I see that I can rename the top level and aggregrator repos but the UI and Model repos have open branches. Renaming master to main before those PRs are merged will cause some merge confusion.
I'll rename the first two and work with the teams on the others.

Still important...

Looks like all branches have been moved to main. Do we need to reopen this @amfred?

is this done?

Yes, it's done.


[BUG]: [User Registration] : ["Take me Home" to be changed to "Take Me Home" ]

Describe the bug
"Take me Home" to be changed to "Take Me Home"
Screenshots

hi @devarajd94 , can you please verify the updated text .


BUG

on mirage the bald T model's head glitches out and turns chrome please fix <3

I saw it, too

Bump!
This does happen, I can confirm.

Should be fixed now.


Notifications are kinda broken

(not sure if this is a Bird-UI issue or a glitch issue)

Bird-UI issue, fixed in Nightly. Will merge soon

fixed in mastodon-4.1.2-nightly branch


'besman-save.sh script added(untested version)

@asa1997
Updated and added tested scripts.

@asa1997
Added script for bes publish.
@sumodgeorge

@asa1997
Updated the besman-save with wrapper function.
[Note]
Wrapper function updated in the besman-env-helper.sh,
Name: function __besman_playbook_push
@sumodgeorge


MN - Missing LOINC Codes

Good afternoon,
MDH received a message missing an OBX 3 value, MSH 4 is listed as  “Chinatown Brooklyn - Doral Medical^33D2178905^CLIA”
Are you able to correct and resend the message?
Accession ID: 1ab07245-500d-459a-aec5-ce223bd852fa
MSH 10: 1ab07245-500d-459a-aec5-ce223bd852fa

1/25: Following up with ImageMover on resubmissions.

Blocked by https://app.zenhub.com/workspaces/onboarding--operations-6166edbd409257001e09f1b2/issues/cdcgov/prime-reportstream/4033

2/10: No longer blocked - checking with ImageMover on update

ImageMover doing resubmissions.

3/1: IM completed resubmissions. MN was notified.

3/2: MN confirmed and validated message.


hotfix/3dtouch -> dev

This change is

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

byuSuite/byuSuite-Info.plist, line 105 at r1 (raw file):

			<string>cougarCash</string>
		</dict>
		<dict>

Can you move this up to the top? I believe it's now our most used feature. Also, it looks like the new order is:
YTime
Learning Suite
Cougar Cash
Testing Center
ID Card
Could you also add Testing Center? Are you allowed to have 5?

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

byuSuite/byuSuite-Info.plist, line 105 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Can you move this up to the top? I believe it's now our most used feature. Also, it looks like the new order is:
YTime
Learning Suite
Cougar Cash
Testing Center
ID Card
Could you also add Testing Center? Are you allowed to have 5?

Yes, I can do that. It is limited to 4 so we will have to cut one. Do we really need each of them to say "Open" in front of the feature? Also, I think we should look into having the user be able to customize this and we can just leave these as the defaults if they dont change them.

Comments from Reviewable

Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

byuSuite/byuSuite-Info.plist, line 105 at r1 (raw file):
Previously, alexanderboswell (Alexander Boswell) wrote…
Yes, I can do that. It is limited to 4 so we will have to cut one. Do we really need each of them to say "Open" in front of the feature? Also, I think we should look into having the user be able to customize this and we can just leave these as the defaults if they dont change them.

Remove "Open". Yes, can you look into customizing them? Add that to the VTB and get to it whenever you're done with the more pressing pull requests. Let's get this one merged, though

Comments from Reviewable

Review status: 0 of 1 files reviewed at latest revision, 1 unresolved discussion.

byuSuite/byuSuite-Info.plist, line 105 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Remove "Open". Yes, can you look into customizing them? Add that to the VTB and get to it whenever you're done with the more pressing pull requests. Let's get this one merged, though

Done and I put that on the VTB.

Comments from Reviewable

Reviewed 1 of 1 files at r3.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Update golang crypto libraries and switch to ECDSA keys

What this PR does / why we need it:
This PR makes capik fit for newer operating sytems which do not support ssh-rsa for host authentication and public key authentication anymore.
User authentication is switched from RSA to ECDSA here, which is for a long time available on all operating systems. Since some systems now start disabling RSA keys by default, ECDSA is now also here the new standard.
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Release notes:
Switch from RSA to ECDSA keys for ssh access and allow more host authentication protocols

/cc @davidvossel

/close
Already merge upstream: https://github.com/kubernetes-sigs/cluster-api-provider-kubevirt/pull/20


Add size unit to the size option given by user

Current state : currently the size value is gb number (without mention the size unit).
Wanted state : size should followed with size unit (e.g 10gb)
example :
docker volume create --driver=ubiquity --name my_first_A9000_vol --opt size=10gb --opt profile=gold

Two important comments that need to be apply as part of this ticket :

The default size unit should be GB. for example if customer runs size=1 it means 1GB. of cause the customer can specific the unit suffix as well, but if he don't then its GB.

The minimal allocation unit should be 1MB for SCBE backend, and it should round up to this minimal allocation unit. For example : if customer request 1.5 megabyte(1572864Bytes) it should round it to 2MB.

Next time i should put all of this in the ticket description in the beginning.

There is no need for "minimal allocation unit"
SCB should decide the allocation size

closing this ticket, since its not relevant for k8s side of thing.
Opened internal ticket for future use.


Trustwallet

Hi, Can this robot be used in Trustwallet?

Haven't used trustwallet but if it allows you to access private keys then yes


Updating environment of an existing worker

A worker's environment (environment variables and command-line arguments) can only be set once when the worker is created. This is intentional as modifying them can lead to divergence as the worker's code can depend on them.
However, as we support updating workers, it is possible that an update introduces the need for a new environment variable and it is not possible to add it currently.
The following proposal would solve this:

Add optional parameters to the worker update command (on all layers) to accept an updated list of environment variables / args.
This should be made convenient on the user interface level, for example being able to list "additional env vars" without touching the existing ones, etc.
The worker update command must allow updating to the same version if the user only wants to update the configuration
Even if the version does not change but the environment does, worker executor must go through the usual process of attempting an update with the updated environment, which potentially can lead to divergence and fail.

Just to make sure i understand: does this only allow adding env vars and not modifying existing ones, or both possible but with different flags?

Note also that some auto-generated environment variables may already change during the lifetime of a worker (at least the component version). And during replay, this needs to be handled properly.


feat: Restarting bot should clear Web Chat?

Chat with bot in integrated Web Chat
Restart the bot
Re-open the integrated Web Chat and your previous conversation will still be there

Describe the solution you'd like
Clear the Web Chat history on bot restart.
Describe alternatives you've considered
Keep things as-is. I personally understand what's going on and the behavior is expected. However, I could see this maybe confusing a new user. Maybe add a "bot restarted" message.
I'm completely fine if no changes get made, but I think this warrants discussion.
Additional context

Thanks @mdrichardson. We may end up taking this change for this and other reasons.
Closing. Tracking if we will make this change in #6133 .


Use of compound literals not valid C++ in Emojicode Compiler

In the Emojicode compiler, compound literals are used multiple times. However compound literals are not valid C++, they are valid C. The GNU C compiler suite (gcc & g++) along with Clang provide support for compound literal constructs within C++ code (as do some other compilers) which is perhaps why this issue has not been noticed yet.
Example
The follow line from main.cpp in the Emojicode Compiler project uses a compound literal as such:
Package pkg = Package("_", (PackageVersion){1, 0}, false);

However this will not compile in all C++ compilers
Solution
Either create a temporary instance of the relevant struct and use that or use an initializer list with the struct instead of a compound literal. Eg: (initializer list for above example)
Package pkg = Package("_", PackageVersion{ 1, 0 }, false);

n.b. In the above code, the type PackageVersion could be excluded but is left for clarity

That's a relic from back when the compiler was pure C. I'll take care of this soon.

I've already patched it to use initializer lists, going to submit it in a pull request with the windows support if that's an acceptable solution.

@AlienHoboken Yep, that's the same I've just done. Despite that, we're really looking forward to your pull request!


Constructor accepts logger: parameter

      logger = Logger.new($stdout)
      client = Qdrant::Client.new(
        url: "localhost:8080",
        api_key: "123",
        logger: logger
      )

Hmm, the default now seems to log absolutely everything to sdtout, which was a bit of a surprise when I upgraded to the latest qdrant client...
What was the default before? I liked it :)

logger = Logger.new($stdout)

Well you should be able to change the logger.level to whatever you'd like! https://ruby-doc.org/stdlib-2.4.0/libdoc/logger/rdoc/Logger.html

Hmm, I can't set it inline though, so this actually doubles (to 4) the number of lines qdrant is adding to my project :) Which seems like a silly complaint but I use ruby because I love elegant code :) Ideally the default logger level should be something reasonable lie it was before...


update history, version number & dependencies for v0.7.0

pre-commit failed with Ruff.

pre-commit failed with Ruff.

Fixed!


testing against php 7.4 final, fixing/ignoring phpstan errors

Codecov Report

Merging #18 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #18   +/-   ##
=========================================
  Coverage     80.95%   80.95%
  Complexity       38       38
=========================================
  Files             3        3
  Lines           105      105
=========================================
  Hits             85       85
  Misses           20       20

Continue to review full report at Codecov.

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


[Bug]: Vite GoogleFonts injectTo not working when defer: true

Demo URL
No response
What happened?
When defer is true, the tag injected to the html is always head-prepend.
Reproduction steps
import Unfonts from 'unplugin-fonts/vite'

Unfonts({
  google: {
    injectTo: 'head',
    display: 'swap',
    families: [
      { name: 'Inter', styles: 'wght@100;300;400;500;700;900' },
    ],
  },
})

Relevant log output
No response
What browsers are you seeing the problem on?
No response
What is your operating system?
Windows

injectTo is not passed here
https://github.com/cssninjaStudio/unplugin-fonts/blob/main/src/loaders/google-fonts.ts#L81-L89

injectTo is missing here
https://github.com/cssninjaStudio/unplugin-fonts/blob/a7e66d594e2c7e0a2cccfed7c15a069ffebb96c1/src/loaders/google-fonts.ts#L81-L89

Merged


Why Murmur3 hashes differ from guava hashes?

Hello,
My understanding is that Murmur3.hash_x64_128 (of this project) should return the same result (in bytes) as Hasing.murmur3_128().hashBytes (of guava library).
But It doesn't. May I ask if it is expected to be different and why?
Here is my code, just in case I made an obvious mistake you could point out. (the code is written Kotlin, but should be easily understandable)
import com.google.common.hash.Hashing
import com.sangupta.murmur.Murmur3
import org.junit.Test
import java.nio.ByteBuffer
import java.util.*
import kotlin.test.assertTrue

private const val SEED = 42

class Murmur3Test {

  @Test
  fun murmur32shouldCorrespondToGuavaHashes() {
    val guava = Hashing.murmur3_32(SEED)
    repeat(1000) {
      val data = UUID.randomUUID().toByteArray()

      val guavaResult = guava.hashBytes(data).asBytes()
      val murmurResult = Murmur3.hash_x86_32(data, 16, SEED.toLong()).asBytes()

      assertTrue(Arrays.equals(guavaResult, murmurResult))
    }
  }

  @Test
  fun murmur128shouldCorrespondToGuavaHashes() {
    val guava = Hashing.murmur3_128(SEED)
    repeat(1000) {
      val data = UUID.randomUUID().toByteArray()

      val guavaResult = guava.hashBytes(data).asBytes()
      val murmurResult = Murmur3.hash_x64_128(data, 16, SEED.toLong()).asBytes()

      assertTrue(Arrays.equals(guavaResult, murmurResult))
    }
  }
}

fun UUID.toByteArray(): ByteArray {
  val buffer = ByteBuffer.allocate(16)

  buffer.putLong(mostSignificantBits)
  buffer.putLong(leastSignificantBits)

  return buffer.array()
}

fun LongArray.asBytes(): ByteArray {
  val buffer = ByteBuffer.allocate(size * 8)

  forEach { buffer.putLong(it) }

  return buffer.array()
}

fun Long.asBytes(): ByteArray {
  val buffer = ByteBuffer.allocate(8)

  buffer.putLong(this)

  return buffer.array()
}

Hi @jcornaz - I coded this library using the C++ generated hashes and confirmed that they were the same. It has been quite a long time and I would need some time to debug this issue. My bad on noticing it this late.

@jcornaz
I just added MurmurGuavaTest to test the same. The hash generated are same, its the endian-ness of the result that makes it look different.
I will probably add a converter to make it equivalent to Guava. I also checked the code in C and Java have different endian-ness.

The hash generated are same, its the endian-ness of the result that makes it look different.

Ok, make sense.
Thanks for your investigation ;-)
I let you decide if you want to close this issue or rename it.

@jcornaz
The long hash is the same when computed in value (as long) between both Guava and Murmur. I have added documentation on how to convert long to byte[] in both big-endian and little-endian format (refer 56545af0a465aa0e57a39175f541150d1ef40d28).


Add integration tests & automated performance testing

We need automated testing for metrics such as speed, response time, reliability, resource usage, and scalability of the app given an expected workload.
To implement

[ ] Espresso automated integration tests
[ ] Apache JMeter - analyzing and measuring the performance on the API
[ ] Gherkin tests

Integration test actions here might be useful, https://github.com/google/android-fhir/blob/master/.github/workflows/ci.yml

@Mstjamush is this the issue related to the gherkin intergation tests?

@pld Yes.

Let's make sure to test high and variable latency connections

Update Jan 24th 2022
For this CI pieces, after QA test are written, will need to document the feedback and then add them to the review process , where enhancement/bug fix tickets will be worked on, PRs are raised to address identified issues before  shipping , pushing  pre-release or final release

I don't see that as related to CI, since that is not automate but more process.
Can we add the CI with a single test for now? Then as we add new tests they'll go into the existing CI process.

Update Feb 25th, 2022
LOE estimated to 3 weeks for completion of the implementation

OK, given that LOE what is the timeline, i.e. what the expected date of completion?

On Feb 25, 2022, at 4:15 AM, Francis Odhiambo Otieno @.***> wrote:
Update Feb 25th, 2022
LOE estimated to 3 weeks for completion of the implementation
—
Reply to this email directly, view it on GitHub https://github.com/opensrp/fhircore/issues/97#issuecomment-1050674751, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAMMET2W2GNRSTE2NR44E3U45CEVANCNFSM43MUTMMQ.
Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.


Remove the click handler on multi-select search sub-component

Problem:
Suppose you have two multi-select input fields, both with search input fields.
Now you click on one of them and its dropdown opens. Now suppose you click on another one's search, then its dropdown opens, but the previous ones dropdown doesn't close.
https://prnt.sc/iQUv9gVkzjNq
Reason:
That's because we have an event listener attached to the search sub-component, which stops the event propagation.
But for closing any dropdown, we have event listeners attached to the document.
So, if we click on the search sub-component, the event doesn't reaches to the document and thus the dropdown doesn't close.
Solution:
We already have an event listener attached to the field sub-component, so we don't need another event listener on the search sub-component.
Although I have tested this and seems like removing this doesn't affect anything and everything works fine, but if we don't want to remove this event listener I have another solution which I have mentioned in a comment below.

@Souptik2001 That code was added for a specific reason on one of the projects. Lets discuss this on our standup


Link Shortner instructions don't work with Quickstart

Would be nice if the instructions worked without change with the GCP Quickstart. Issue is that instructions use "mysql-db-g1-small" for the MySQL service plane but this is not created as part of the Quickstart install.  Would suggest that either the instructions are changed to be more generic or they assume the Quickstart install.
dfoley@cloudshell:~/service-broker-samples/link-shortener (fe-dfoley)$ cf marketplace -s google-cloudsql-mysql
Getting service plan information for service google-cloudsql-mysql as admin...
OK
service plan           description                                         free or paid
mysql-n1-standard-2    Instance with 2 dedicated CPUs, 7.5 GB of Memory    free
mysql-n1-standard-16   Instance with 16 dedicated CPUs, 60 GB of Memory    free
mysql-n1-highmem-16    Instance with 16 dedicated CPUs, 104 GB of Memory   free
mysql-micro-dev        Micro instance with shared CPU, 0.6 GB of memory    free

@dfoleypivotal thanks for reporting this!
I think this is a bug in the quickstart which needs a version bump. I opened a ticket over there you can track too. https://github.com/cf-platform-eng/gcp-pcf-quickstart/issues/29
I think @mattysweeps might have a CI/CD pipeline for testing this now so I can go fix it before EOD today.


Some doc tweaks

Added Cordova template list, and did polish some Android references.
Also adding a note that we do recommend @jacek-marchwicki's Android Platform Container

@odra can you review/merge ?

Thank you for mentioning us (Appunite)


Titanic Survival Prediction

Build a predictive model that answers the question: “What sorts of people were more likely to survive?” Using passenger data (ie name, age, gender, socio-economic class, etc).
I am a GSWOC'22 contributor. Kindly assign the issue @Niketkumardheeryan

these types of models are already there...


CI: unit test failure for IdentityAllocatorEtcdSuite.TestAllocator

Build link: https://jenkins.cilium.io/job/cilium-ginkgo/job/cilium/job/master/1525/execution/node/58/log/
Output:
19:01:18 level=info msg="Initializing identity allocator" subsys=identity
19:01:18 level=info msg="Starting to watch allocation changes" kvstoreErr="<nil>" kvstoreStatus="etcd: 1/1 connected: http://etcd:4002 - 3.2.17 (Leader)" prefix=cilium/state/identities/v1/id subsys=allocator
19:01:18 level=warning msg="Re-created missing master key" key=cilium/state/identities/v1/id/28825 subsys=allocator
19:01:19 identity_test.go:168:
19:01:19     c.Assert(isNew, Equals, true)
19:01:19 ... obtained bool = false
19:01:19 ... expected bool = true
19:01:19
19:01:19 FAIL: <autogenerated>:1: IdentityAllocatorEtcdSuite.TestAllocator

Saw this locally as well a couple of times.


Sql Agent Toolkit - db type is hard-coded to "sqlite"

https://github.com/langchain-ai/langchainjs/blob/5df74e39a8b9888ec5a515d43594f856ffc1c2a7/langchain/src/agents/toolkits/sql/sql.ts#L43
As the title says. Also occurs here https://github.com/langchain-ai/langchainjs/blob/5df74e39a8b9888ec5a515d43594f856ffc1c2a7/langchain/src/tools/sql.ts#L159
The documentation also specifies that the dialect is static as "sqlite" (@langchain/openai)
However, I have had no issues using this functionality with a sql server db, (except for this issue, which affects the prompts themselves).  I can also see that there are a variety of SQL prompt templates available for other types of databases so it seems to be intended to be dynamic.
Not sure if I'm missing something or not.

@bracesproul does your use case PR fix this?

Found another one - it's telling it to use LIMIT instead of TOP in the mssql query here:
https://github.com/langchain-ai/langchainjs/blob/67e54c7f3f39ff9ae5bfa937180538d3fb3ee14f/langchain/src/chains/sql_db/sql_db_prompt.ts#L68

I couldn't find a way to change sqlite to mysql either.  SQLToolkit right now appears to just take in the db and LLM without any dialect options.  To get around, I created a factory function that instantiates the class and adjusts the dialect on the constructor.  I don't see another way right now.
function toolkit(...args) {
	const instance = new SqlToolkit(...args)

	Object.defineProperty(instance, "dialect", {
		enumerable: true,
		configurable: true,
		writable: true,
		value: "mysql", // change me to your dialect
	})
	return instance
}
const sqlToolKit = new toolkit(db, llm)

Once I did this my responses from the LLM were much quicker/cheaper.

I also can't get the toolkit to not use sqlite.  I tried creating a factory function that changes the dialect on instantiation with no luck.  Also just for testing purposes tried changing the dialect in sql.js in node_modules directly to mysql.  The LLM is still trying to change my mysql to sqlite.
Any way to change this?

Odd - will try to have a look tomorrow!

@jacoblee93 did you have a chance to review?

@ginibrandonnpx Did you find a way to not have the toolkit not use SQLite? @jacoblee93

I think the issue we're having is related to this line in the QueryCheckerTool:
https://github.com/langchain-ai/langchainjs/blob/67e54c7f3f39ff9ae5bfa937180538d3fb3ee14f/langchain/src/tools/sql.ts#L159
It's hard coded to use SQLite which explains all the SQLite messaging we've been getting out of Langsmith.

same issue cannot use  langchain js for other db its hard coded to sqlite


GraphiQL hangs at Loading GraphQL Playground

Hi there,
   scope "/graphiql" do
    pipe_through([:api, :public, :absinthe])

    forward(
      "/",
      Absinthe.Plug.GraphiQL,
      schema: docsWeb.Schema,
      json_codec: Jason,
      interface: :playground,
      socket: docsWeb.UserSocket,
      pipeline: {ApolloTracing.Pipeline, :plug}
    )

this is our router.ex, when we comment out interface and not use the graph-cool interface the playground loads just fine, otherwise it hangs on loading graphql playground and this is the javascript error we get
Uncaught SyntaxError: Unexpected end of input
graphiql:69 Uncaught ReferenceError: GraphQLPlayground is not defined
    at graphiql:69

(I should note these error messages differ accross browsers but all have to do with graphiql)
Our team tried this across different browsers, machines and os's. We originally thought it was a browser cacheing issue where the middleware CDN had only served part of the file, and our browsers were cacheing it, but we've cleared, disabled, and force refreshed and still no luck.
Apologies in advanced if this isn't absinthe plug related though I'm fairly certain it is because we aren't having issues loading the graphcool interface on other services.
If we comment out the interface: :playground and load the non graphcool version, it loads just fine, which is also weird.
Thanks in advance for any help!!
Side note: these absinthe libraries are absolutely excellent and we've had almost no problems up to this point!

We also hit this since today. Still investigating the what's causing it.

I can reproduce this as well, on a project that absinthe_plug hasn't been recently updated and after updating absinthe_plug to latest (and on master):
I'm seeing the following:
SyntaxError: missing } after function body[Learn More] middleware.js:1:343596 note: { opened at line 1, column 343516 (middleware.js:1:343516)
ReferenceError: GraphQLPlayground is not defined[Learn More]

I'm going to mention this over at https://github.com/absinthe-graphql/absinthe-graphql-playground, in the event @tlvenn or @mgtitimoli have any ideas what might be going on.

I tried changing to the :playground-interface in our project running absinthe_plug 1.4.6, but I can't reproduce the problem.
Maybe there is something weird going on with the CDN delivering the js.
Does your middleware.js look broken?
https://cdn.jsdelivr.net/npm/<EMAIL_ADDRESS>

@fredr Yeah, I verified earlier that result of that URL gave us a syntax error, both in browsers and directly, e.g.:
$ curl -O https://cdn.jsdelivr.net/npm/<EMAIL_ADDRESS>$ node --check middleware.js
middleware.js:2
});
 ^
 SyntaxError: Unexpected token )

(I even devised a silly local workaround.)
Now, however, after some force-refreshes in the browser, everything seems to be fine—and the same terminal command seems fine:
$ curl -O https://cdn.jsdelivr.net/npm/<EMAIL_ADDRESS>$ node --check middleware.js
(exit code 0)

I'm not sure if this was a temporary issue with jsdelivr or if, e.g., @tlvenn made a heroic save.

Can anyone else verify 👍 / 👎 ?
Regardless, I'll chat with @benwilson512 / @tlvenn about getting out an updated absinthe_plug (and associated graphql-playground, e.g., #188); in the very least we need the HTTPS fix that's in master for the absinthe.plug.graphiql.assets.download mix task so people can avoid the CDN.

I did not do anything yet but will block some time tomorrow so I can fix any outstanding issues and hopefully we can publish a new version of the playground and absinthe_plug.

I hit this and fixed it with a dns cache flush and a hard refresh, the CDN seems to be returning invalid files some times.

Observing this on my end as well, no amount of hard refreshing seems to fix this. Weird.

@benwilson512 I had to flush my dns to get another server to resolve it.

@jonrowe I tried refreshing my workstation dns cache and still no good.

Began experiencing this on my end today too. Worked fine yesterday, and now today it mysteriously gets stuck on "Loading GraphQL Playground".
Flushing DNS cache hasn't fixed it. Anyone had any luck with solving this?

@DMeechan Sorry about the slow response on this; we're working on it. 😬

In the meantime, if anyone is looking for a GraphiQL client they can use, I recommend: https://altair.sirmuel.design/ (multiple platforms + a Chrome extension at https://chrome.google.com/webstore/detail/altair-graphql-client/flnheeellpciglgpaodhkhmapeljopja?hl=en)

@bruce Nice to see Altair works well for your needs. If you would like, I can work you through creating a package for mounting an instance of Altair in elixir 🙂 I wouldn't be able to do that, seeing as I have little to no knowledge of elixir. 😅

Any updates on this or maybe a nudge in the right direction of how I would go about trying to get it to work again?

The issue disappeared without intervention on our end. If the same goes for everyone else this issue can be closed?

I think it's worth knowing how this happened so it doesn't happen again, essentially a corrupt cdn caused this right?

Closing since this appears to be resolved


Acme adds font formatting to config: https://github.com/metanorma/met…

…anorma-rsd/issues/39
Do not action yet.

You can action now.

Failing right now due to this:
RuntimeError: Navigation item matching StandardDoc_Block.png (specs/metanorma-model-standoc) was not found
14
  /opt/hostedtoolcache/Ruby/2.6.5/x64/lib/ruby/gems/2.6.0/gems/jekyll-theme-open-project-helpers-2.0.21/lib/jekyll-theme-open-project-helpers/spec_builders/png_diagrams.rb:72:in `block in build_spec_pages'
15
  /opt/hostedtoolcache/Ruby/2.6.5/x64/lib/ruby/gems/2.6.0/gems/jekyll-theme-open-project-helpers-2.0.21/lib/jekyll-theme-open-project-helpers/spec_builders/png_diagrams.rb:57:in `glob'
16

Did we remove StandardDoc_Block.png?

Had to add:
  - title: "Blocks"
    path: StandardDoc_Blocks/

To  _specs/metanorma-model-standoc.adoc
Works now.


i can't start using voyager because i got error

Before submitting an issue, make sure you read the FAQ.md
yes
Briefly describe your issue
I am using
(i hide my client_id, secret_value, openai_api_key)
from voyager import Voyager

# You can also use mc_port instead of azure_login, but azure_login is highly recommended
azure_login = {
    "client_id": "client_id",
    "redirect_url": "https://<IP_ADDRESS>/auth-response",
    "secret_value": "secret_value",
    "version": "fabric-loader-0.14.18-1.19", # the version Voyager is tested on
}
openai_api_key = "api_key"

voyager = Voyager(
    azure_login=azure_login,
    openai_api_key=openai_api_key,
)

# start lifelong learning
voyager.learn()

i got this error:
C:\Users\p0975\Documents\git\MinecraftAI\Voyager\voyager>python "minecraft ai.py"
Traceback (most recent call last):
  File "C:\Users\p0975\Documents\git\MinecraftAI\Voyager\voyager\minecraft ai.py", line 1, in <module>
    from voyager import Voyager
  File "C:\Users\p0975\Documents\git\MinecraftAI\Voyager\voyager\voyager.py", line 7, in <module>
    import voyager.utils as U
ModuleNotFoundError: No module named 'voyager.utils'; 'voyager' is not a package

Please provide your python, nodejs, Minecraft, and Fabric versions here
Windows 10 64bit Professional 22H2 19045.3639
Python 3.9.0
Node.js 16.13.0
Minecraft Java 1.19
Fabric-loader-0.14.18-1.19
use git clone https://github.com/MineDojo/Voyager to clone Voyager
[If applicable] Please provide the Minefalyer and Minecraft logs, you can find the log under logs folder
...
[If applicable] Please provide the GPT conversations that are printed each round.
...

Hello,have you solve the problem? I have met the same situation as you. There isn't voyager.utils in the repository right now while I have successfully ran the code a few months before.


schema-editor-code

schema-editor-code
For Q-custom-code we want to enter javascript code in the editor. We should implement a solution that has syntax highlighting and code formatting features as it makes changing the code much easier.
The same element should be usable to format JSON input nicely.

released in v3.7.0


Straka/more tests

Completes three tests for the poprf scheme. aggregate checks the result of aggregate against eval, dist_poprf runs the poprf as among n participants checking the result against eval, eval checks the result of eval against a fixed output.

Codecov Report

Merging #8 (5fb74da) into main (e02de86) will not change coverage.
The diff coverage is 75.00%.

@@           Coverage Diff           @@
##             main       #8   +/-   ##
=======================================
  Coverage   56.34%   56.34%
=======================================
  Files           5        5
  Lines         575      575
=======================================
  Hits          324      324
  Misses        251      251

Impacted Files
Coverage Δ

src/poprfscheme.rs
80.61% <75.00%> (ø)

Continue to review full report at Codecov.

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


Specifying SQL Server column data type, similar to dtype in pd.to_sql()

First Check

[X] I added a very descriptive title to this issue.
[X] I used the GitHub search to find a similar issue and didn't find it.
[X] I searched the SQLModel documentation, with the integrated search.
[X] I already searched in Google "How to X in SQLModel" and didn't find any information.
[X] I already read and followed all the tutorial in the docs and didn't find an answer.
[X] I already checked if it is not related to SQLModel but to Pydantic.
[X] I already checked if it is not related to SQLModel but to SQLAlchemy.

Commit to Help

[X] I commit to help with one of those options 👆

Example Code
from typing import Optional

from sqlmodel import Field, SQLModel
from sqlalchemy.typing import NVARCHAR

class Hero(SQLModel, table=True):
    id: str = Field(default=None, primary_key=True, dtype=NVARCHAR(32))
    name: str
    secret_name: str
    age: Optional[int] = None

Description
Create a SQLModel that contains a mapping between python type (e.g str) and SQL Server column type (e.g NVARCHAR(32)). This is possible to do when using pandas to_sql() by specifying the dtype-argument.
Operating System
Linux, Windows
Operating System Details
No response
SQLModel Version
0.0.6
Python Version
Python 3.9.7
Additional Context
No response

I think this is supported now with sa_type.


Add support for setting Content-Type on GETs

The current implementation forces the Content-Type header to be "application/x-www-form-urlencoded", when using consumer.get.
Some services do not support this Content-Type header on a GET. Whether they are right or wrong to do this, it makes it impossible to use .get for these endpoints.
I propose support for a default Content-Type header, settable via the customHeaders parameters of the constructor and overridable via the post_content_type parameter of _performSecureRequest

+1

+1


Fix typo in template files

Small typo that threw me off for a second.

Cheers! Pobody's nerfect. =)


Updating 2.5.3 to 2.6.2 breaks url() view helper, "No RouteStackInterface instance provided"

About an hour or so ago I did a composer update which included an automatic update for this module from 2.5.3 to 2.6.2. After this update was installed, the url() view helper fatally stopped working as null === $this->router, which caused it to throw Exception\RuntimeException('No RouteStackInterface instance provided') from Zend\View\Helper\Url at line 54.
Unfortunately, that's all I've got at the moment as I haven't had a chance to dig deeper into what's actually causing the problem, but I'm hoping someone will have an idea from this. That said, I am specifically requiring "zendframework/zendframework": "2.5.*" in composer.json, so it could be a version incompatibility? I've added a require line to force "zendframework/zend-view": "2.5.*" which has resolved the issue for me at least for the time being.

i can confirm, it also happen to me from 2.5.3 to 2.6.2.

I've isolated the issue.
In versions prior to 2.6, we define $invokableClasses. To make these forwards compatible with version 3, we split all $invokableClasses entries into $aliases and $factories entries (with the latter using the new Zend\ServiceManager\Factory\InvokableFactory). The factory keys are fully qualified class names, while the aliases are the "short" names.
What this means is that url is an alias to Zend\View\Helper\Url within the helper plugin manager. However, in zend-mvc, we define an override factory that ensures that the route match and router are injected. The problem? It uses the key "url", and, since an alias also exists with that same name, the alias is resolved. As such, the override factory is never invoked.
I'm going to open a new issue on zend-mvc to address this.

I have a patch ready at zendframework/zend-mvc#71.
Could one of those of you who are affected by the issue please test? You can do so as follows:

Add my repo to your composer.json:

"repositories": [
    {
        "type": "vcs",
        "url": "https://github.com/weierophinney/zend-mvc.git"
    }
],

Add an override for the zend-mvc dependency to your composer.json:

"require": {
    "zendframework/zend-mvc": "dev-hotfix/71 as 2.6.2"
}

Update your dependencies:

$ composer update zendframework/zend-mvc

You should see that composer installs from my repo at that point.
Then let me know if the patch works!

Had the same issue.
Solving it without rewrite your own code would require to add the line below with comment

To avoid it in the meantime, it's possible to create a own factory with the code from here

@TwoWholeWorms @stefanorg how you guys solved it?
Also with a similar "hack" like i posted above? Or something elese?


Extension host terminated unexpectedly

Executing this simple class:
import javax.swing.*;
// Importing the package that contains all the Swing Components and Classes.
public class FrameExample {
public static void main(String[] args) {
    //Schedule a job for the event-dispatching thread:
    //creating and showing this application's GUI.
    SwingUtilities.invokeLater(new Runnable() {
        public void run() {
            createAndShowGUI();
        }
    });
}

private static void createAndShowGUI() {
    //Create and set up the frame.
    //The string passed as an argument will be displayed
    //as the title.

    JFrame frame = new JFrame("[=] Hello World [=]");

    //Display the window.
    frame.setSize(400, 100);
    frame.setVisible(true);
}

}
The expected output shuould be:

Produces no output, instead produces this error:
command 'code-runner.run' not found

Please file this issue against the Java extension. Thank you!


Holding Current Slope Analysis

Can slow changes in holding current be measured using linear regression and compared across cells? The purpose of this issue is to explore this question using Python. The main steps of this task well be:
Setting-Up the Environment

[x] Install Python (Anaconda)
[x] Install VS Code and the python extension
[x] Sync this repository on your local computer using GitHub desktop
[x] In the GitHub desktop client click "Repository" and select "Open in Visual Studio Code"
[x] Confirm you can run /src/ScottDemo.py
[x] Create your own sample program in /src/WanhuiDemo.py and ensure it runs
[x] Use the GitHub desktop client to commit your file to the repository and push it to the cloud
[x] Analyze an ABF in Origin, then save the memetest sheet as a CSV file in /data/210224123.abf.csv
[x] Install the Markdown Preview plugin for VS code
[x] Edit /readme.md and write something to indicate this repository is for personal projects and programming practice, and that the source code included in this project is under active development and only intended for use by the original author at this time. Edit using the "open preview to the side" button on the top-right of visual studio code, and you can see how your page will look as you edit it.

Ephys Project

[ ] Load data from a CSV file in Python (with numpy or pandas) and make a 2D scatter plot (with matplotlib)
[ ] Fit the 2D data with a linear regression (with sklearn). Report the slope and draw the line on the plot
[ ] Refactor the code to use a function to fit the data, and have it only fit a portion of the data (using start/end time arguments)
[ ] Call that function twice to create a 2D scatter plot with separate fitted lines for the baseline and drug
[ ] Use pyABF to read time and holding current from an ABF file instead of reading this data from the CSV files
[ ] Analyze every ABF in the project automatically, generating a report that shows the before/after slopes for all cells

Have problem to install pandas by "import pandas" with the following error:
ImportError: Unable to import required dependencies:
numpy:'
These attempts were done:

Upgraded python to 3.8.
Made sure Python version and pip version are both 3.8.
Installed pandas from anaconda navigator.

I'll take a look at your computer in person to get a better idea of what's going on 👍
Try to run /dev/plotting/demo.py and /dev/csv-files/demo.py to see if both programs work for you.
To run the CSV file demo you have to be in the same folder as demo.py. To do this open up the command prompt in Visual Studio code (CTRL + ~), use cd to navigate to the folder containing that file, and run demo.py
If you get these two demos to work, you can combine their concepts into a new program in /src that makes a plot from membrane test data!

Hey @shengwanhui, awesome progress since last time! 🥳 I added two new examples in /dev to help you out.
Locate Files and Folders
New python scripts we work on will probably have this at the top:
import os
thisFolder = os.path.abspath(os.path.dirname(__file__))

By knowing what folder a python script is in, it's possible to locate things (like CSV files) relative to that python script, rather than relative to whatever folder you call python.exe from. This means CSV files can be read from and PNG files can be saved to the proper folders regardless of what folder you launch the python script from. Getting this right also means you can use the little play button at the top of VS Code to run your scripts, and they'll always get the paths right.
After you move your ih analysis script into /src, see if you can use this method to locate the CSV file so it works no matter what folder it's run from (including clicking the play button)
Linear Regression
Linear regression with scipy is simpler than with sklearn, so let's use that for now. It's just one line! I put an example in /dev/linear-regression. Review the lines that interact with matplotlib, and see if you can understand what all the parts and arguments do. We will learn on matplotlib a lot, so learning it well will really help us move fast in future steps.
See if you can figure out how to do a linear regression for a portion of your Ih data using this method. You might hit some tricky spots, but let me know if you get stuck and we can take a look together! Good luck! 🚀


height, autoheight, etc. not working

This is a (multiple allowed):

[x] bug

Swiper Version: 3.4.1. 0475133

Android - chrome, PC - chrome

What you did
I switched from 3.3.1 to 3.4.1, for the zoom capabilities.
I expected the same results, but got different ones. The autoheight and height features do not seem to work anymore. The swiper just assumes 100% height at all times, now.

      prodPopupSwiper = new Swiper('.swiper-container', {
        // Optional parameters
        zoom: true,
        // loop: true,
        autoHeight: true,
        setWrapperSize:true,
        pagination: '.swiper-pagination',
        paginationClickable: true
      });

Expected Behavior
The same functionality as in 3.3.1, where the swiper would grow by the image sizes
Actual Behavior
Swiper takes 100% height in all situations
-- On a maybe helpful sidenote:
While switching back to 3.3.1, I noticed it was still broken. I had forgotten to switch back the CSS as well.
So I tested it out, and this is working perfectly fine with 3.4.1 JS but 3.3.1 CSS. So it's definitely a CSS issue.

Not sure if anyone is still working on this slider anymore, but I'm having a similar issue.  If any one of my slides contents is significantly longer than the others, the whole slider container takes on that height.  Thus, any other slides have a ton of white space at the bottom.  It really makes the whole slider for content kind of useless from a design standpoint.

Having same issue in Swiper 3.4.2

same issue, 3.4.2  this is just not work properly

Issue is closed because of outdated/irrelevant/not actual/needed more information/inactivity.
If this issue is still actual and reproducible for latest version of Swiper, please create new issue and fill the issue template correctly:

Clearly describe the issue including steps to reproduce when it is a bug.
Make sure you fill in the earliest version that you know has the issue.
Provide live link or JSFiddle/Codepen or website with issue


[W6.1d][T10-B3]Xie Yu Heng

Added method isMutating() to check if command mutates data or not before saving to the data file

Great work! I like how you think about the consequential effects of implementing isMutating and putting that method to good use
Try making your commits more focused. 1 commit 1 small task check this out


Porepatrol test data: nanopore fastq reads

Thanks @drpatelh - have made some changes and gzipped the test data.

Thanks @AnnaSyme . You can remove the docs directory too.
It would probably be better to report number of reads in the expected output than file sizes?

Yes not sure about what the best thing to report is: one step is chopping adapters, so number of reads doesn't change but total number of bases or average read length would change. I don't capture this information though -- might see if I can add to the workflow. The second filtering step can both trim and delete reads, so both number of bases and number of reads can change. Will have a look ...

👍 To be honest, Not sure how useful that information will be at this point...Maybe you can add it here when you have more realistic expectations in terms of the output?

Let me know what you think, and we can merge this.

I decided to add to the workflow some detail on number of reads (and number of bases) at each stage (start, after adapter trimming, and after filtering) as I think it would be useful to know (mainly if filtering has been too stringent). So I've updated the expected output here.

Thank you! Looks great 👍


improve port regex

Reduced the commits but not 100% sure what you mean about improving the regex?

bugger, I thought I had reduced the commit. Here's what my screen is showing
$ git log --pretty=oneline --abbrev-commit | head
a9cbbb3 improved regex for port matching
015d7f4 Making sure both command succeed in fcontext provider
87c04a3 Bumped to 0.7.1
8201e34 Bumped to 0.7.0

It's fine, we'll get there sometime :)

See #30 - I prefer moving away from grepping


Dialog freezes when there is an Animator component with no controller

If the dialog canvas has an animator with no controller, the dialog action gets stuck in the animation state.

Fixed in 85dcae0


Add "--debug" CLI flag to all the services, refactor duplicated common service setup / bootstrap code

This pull requests adds a new "--debug" CLI flag to all the service entry points. When this flag is specified, log level for all the loggers is set to DEBUG.
This makes debugging easier since it means you can just start service with --debug flag and you don't need to make temporary edits to logging config. In the future, we can also enable / expose additional debugging functionality when this flag is present.
In addition to that, this pull request also gets rid of all the nasty and duplicated common service setup code (long awaited). It moves common setup code in a shared module and updates all the affected service. This centralized approach also makes it easier to add other common setup steps (e.g. register service in the service registry, etc.).

Nice PR! Changes look good to me.

Great!


Incomplete solution to node v10 compatibility

This fails 3 tests in Node v10 - I can't quite find a way to keep cp-file's promise that it'll only create a directory for output if the output can be read from the stream - that requires waiting a tick between readable and pipe and that breaks behavior much more (instead of failing 3 tests, master fails 15.
Unfortunately the Node v10 changelog only says

The 'readable' event is now always deferred with nextTick.

Which doesn't clearly point to why this would break.

Closing in favor of #26


No useful traceback when using pydantic schema and failing validation

Privileged issue

[X] I am a LangChain maintainer, or was asked directly by a LangChain maintainer to create an issue here.

Issue Content
The code below fails on entry to ok_node, but the stack trace has no information about which node failed.
Given that the same schema is often shared between all nodes in the graph (at least by default) -- it makes it impossible to determine where the run time error is occurring.
from langgraph.graph import StateGraph, START, END
from typing_extensions import TypedDict

from pydantic import BaseModel

# The overall state of the graph (this is the public state shared across nodes)
class OverallState(BaseModel):
    a: str

def bad_node(state: OverallState):
    return {
        "a": 123 # Invalid
    }

def ok_node(state: OverallState):
    return {
        "a": "goodbye"
    }

# Build the state graph
builder = StateGraph(OverallState)
builder.add_node(bad_node)
builder.add_node(ok_node)
builder.add_edge(START, "bad_node")
builder.add_edge("bad_node", "ok_node")
builder.add_edge("ok_node", END)
graph = builder.compile()

# Test the graph with a valid input
graph.invoke({ "a": "hello"})

Part of error trace
354 return tasks
File ~/.pyenv/versions/3.11.4/envs/core/lib/python3.11/site-packages/langgraph/pregel/algo.py:495, in prepare_single_task(task_path, task_id_checksum, checkpoint, processes, channels, managed, config, step, for_execution, store, checkpointer, manager)
485 if triggers := sorted(
486     chan
487     for chan in proc.triggers
(...)
492     > seen.get(chan, null_version)
493 ):
494     try:
--> 495         val = next(
496             _proc_input(
497                 step, proc, managed, channels, for_execution=for_execution
498             )
499         )
500     except StopIteration:
501         return
File ~/.pyenv/versions/3.11.4/envs/core/lib/python3.11/site-packages/langgraph/pregel/algo.py:627, in _proc_input(step, proc, managed, channels, for_execution)
625 # If the process has a mapper, apply it to the value
626 if for_execution and proc.mapper is not None:
--> 627     val = proc.mapper(val)
629 yield val
File ~/.pyenv/versions/3.11.4/envs/core/lib/python3.11/site-packages/langgraph/graph/state.py:704, in _coerce_state(schema, input)
703 def _coerce_state(schema: Type[Any], input: dict[str, Any]) -> dict[str, Any]:
--> 704     return schema(**input)
File ~/.pyenv/versions/3.11.4/envs/core/lib/python3.11/site-packages/pydantic/main.py:212, in BaseModel.init(self, **data)
210 # __tracebackhide__ tells pytest and some other tools to omit this function from tracebacks
211 tracebackhide = True
--> 212 validated_self = self.pydantic_validator.validate_python(data, self_instance=self)
213 if self is not validated_self:
214     warnings.warn(
215         'A custom validator is returning a value other than self.\n'
216         "Returning anything other than self from a top level model validator isn't supported when validating via __init__.\n"
217         'See the model_validator docs (https://docs.pydantic.dev/latest/concepts/validators/#model-validators) for more details.',
218         category=None,
219     )
ValidationError: 1 validation error for OverallState
a
Input should be a valid string [type=string_type, input_value=123, input_type=int]
For further information visit https://errors.pydantic.dev/2.9/v/string_type

Hey @eyurtsev,
I'm in a group of 5 students from the University of Toronto and we're interested in looking into this issue!  Just wanted to ask if there's any other important information that could help us fix this error traceback?
Thanks!

I'd follow the stack trace to identify the location where the exception is raised.
File [~/.pyenv/versions/3.11.4/envs/core/lib/python3.11/site-packages/langgraph/graph/state.py:704](http://localhost:8888/home/eugene/.pyenv/versions/3.11.4/envs/core/lib/python3.11/site-packages/langgraph/graph/state.py#line=703), in _coerce_state(schema, input)
703 def _coerce_state(schema: Type[Any], input: dict[str, Any]) -> dict[str, Any]:
--> 704 return schema(**input)

And here figure out whether it's possible to catch the error and re-raise with a better exception or error message that has information about the current execution step or the previous step that caused a bad state update.
This could be a 1 line change or more (i haven't looked at what information is available).

Hey,
We have a couple of observations after trying to follow the stack trace:
We followed the stack trace and it eventually led us to a variable called "pydantic_validator" within the main.py class of the pydantic package.
  File "C:\Python312\Lib\site-packages\pydantic\main.py", line 211, in __init__     validated_self = self.__pydantic_validator__.validate_python(data, self_instance=self)                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ pydantic_core._pydantic_core.ValidationError: 1 validation error for OverallState
It seems like this pydantic_validator variable outputted a certain type of ValidationError, specifically flagging the input's type not matching a str field (see image below; from the Pydantic documentation).

It looks like the functionality to configure and output the error message was implemented in the Pydantic package rather than within a section of the Langgraph repository.
We're considering another solution that only involves modifying files within the Langgraph repository.  In your above example, you add both nodes to your graph using the StateGraph.add_node() function.  When we looked at how add_node was implemented in libs\langgraph\langgraph\graph\state.py, we noticed that there has already been some validation added (i.e., according to the docstring of one of the versions of add_node, a ValueError is raised is the key is already being used as a state key).
We're thinking to add another validation rule that would raise a more clear error message prior to the node being added to the StateGraph.  Just to illustrate, here's the location in state.py where we're thinking to throw the error message.
    def add_node(
        self,
        node: Union[str, RunnableLike],
        action: Optional[RunnableLike] = None,
        *,
        metadata: Optional[dict[str, Any]] = None,
        input: Optional[Type[Any]] = None,
        retry: Optional[RetryPolicy] = None,
    ) -> Self:
        """Adds a new node to the state graph.

        Will take the name of the function/runnable as the node name.

        Args:
            node (Union[str, RunnableLike)]: The function or runnable this node will run.
            action (Optional[RunnableLike]): The action associated with the node. (default: None)
            metadata (Optional[dict[str, Any]]): The metadata associated with the node. (default: None)
            input (Optional[Type[Any]]): The input schema for the node. (default: the graph's input schema)
            retry (Optional[RetryPolicy]): The policy for retrying the node. (default: None)
        Raises:
            **ValueError: If the key is already being used as a state key.**

[EXAMPLE SECTION OF DOCSTRING]

        if not isinstance(node, str):
            action = node
            if isinstance(action, Runnable):
                node = action.get_name()
            else:
                node = getattr(action, "__name__", action.__class__.__name__)
            if node is None:
                raise ValueError(
                    "Node name must be provided if action is not a function"
                )
        if node in self.channels:
            raise ValueError(f"'{node}' is already being used as a state key")

        [PSEUDOCODE]

        for value in state_attribute_values:
            if any of the node's values for state attributes are invalid:
                raise ValueError(f"'{node}' has an invalid value for attribute {attribute} for state {state}")

[REST OF VALIDATIONS BELOW]

Although we're still looking into this issue, we just wanted to ask if you have any thoughts about this idea for a possible solution for this.  We're still learning about how Langgraph works as a whole and we would appreciate any advice or feedback from you about our observations or solution.  If you have any questions or need anything clarified from this post, please feel free to let me know.
Thanks in advance!


[Bug] Quantize description is inconsistent with the actual implementation

There is the description of quantize in /python/tvm/relay/qnn/op/qnn.py
def quantize(data, output_scale, output_zero_point, axis=-1, out_dtype="int8"):
    r"""Quantize op
    This operator takes float32 as input and produces quantized int8 or unit8 as output.
    The input tensor can be of any shape. The output shape is the same as input shape.
    Q_output = clamp((round(input_tensor/output_scale) + output_zero_point),
                     out_dtype::min,
                     out_dtype::max)
    Parameters

Here it seems that the implementation is clamp((round(input_tensor/output_scale) + output_zero_point) ,
but in /src/relay/qnn/op/quantize.cc:
  const int32_t min_val = GetQmin(out_dtype);
  const int32_t max_val = GetQmax(out_dtype);
  auto scale_data = Divide(input_tensor, expanded_output_scale);
  auto add_zero_point = Add(scale_data, Cast(expanded_output_zero_point, DataType::Float(32)));
  auto clamped_output = Clip(add_zero_point, min_val, max_val);
  auto rounded_clamped_output = Round(clamped_output);
  return Cast(rounded_clamped_output, out_dtype);

It seems that the actual implementation is round(clamp((input_tensor/output_scale) + output_zero_point))
Now I'd like to know which implementation tvm wants to implement, round first or clip first?
Expected behavior
Quantize description is consistent with the actual implementation
Actual behavior
Quantize description is inconsistent with the actual implementation

I think the python description makes more sense to me. What do you think? Feel free to send a PR to fix the C++ implementation.

Actually, the order in the C++ implementation is done intentionally, see https://github.com/apache/tvm/pull/9558
cc @AndrewZhaoLuo

@masahi
Yeah, python description is also more compatible with my program. For the order you mentioned, please wait for me to confirm. If there is no problem, I am sure willing to send a PR.

Actually, the order in the C++ implementation is done intentionally, see #9558
cc @AndrewZhaoLuo

This fixes this by moving the clipping operation to operate on the floating point values before casting to integer.

My focus is that round should be executed before scale_data add expanded_output_zero_point, right? It seems that no conflict with #9558 , which move clip before cast to integer.

ah right, I was thinking about the order of round and clip, but I realized that it doesn't really matter.


V2 Hosted Service Upgrade

Hey Didier
I hope you are well! It's great to see a multi-chain indexer for the Bankless Academy.
I don't think we have an existing thread with you, hence creating an issue here and hoping to connect with you more. I'll share my tg further below.
Reason for connecting is that we are looking to decommission our V1-hosted service, and have been making announcements and emails in this regard over the last few weeks. I'm not sure if you are aware of this hence I'm here :)
We've asked our partners to migrate to the V2-hosted service, and it requires a simple push to the same branch which will then auto-deploy to the V2-Explorer: https://v2.envio.dev/explorer
The only caveat is that the V2-hosted service requires minimum indexers version v2.6.0 and i think you current indexer is V2.5.2: https://envio.dev/app/bankless-academy/explorer-indexer
This should be a quick update as it's a recent version.
Sharing a page on transition & FAQ. and the indexer would fit the dev tier so pricing is also N/A.
https://www.notion.so/envio-dev/V2-Hosted-Service-Transition-and-FAQs-12faf438121380c98ec7f7626c9f9f83
My tg is Sven_Muller

Hey Didier, further to the above, we plan to decommission all V1-hosted indexers this Frida at 1pm GMT. A simple push would redeploy the indexer to v2-hosted service.

Thanks for the heads up @SvenMuller95.
I just did the migration to v2 hosting.


ImportError: Biopython

Hi,
I encountered a problem after installing the pepsyn and run pepsyn -h. The following script comes up:
Traceback (most recent call last):
File "/Users/gty/opt/miniconda3/bin/pepsyn", line 33, in
sys.exit(load_entry_point('pepsyn==0.4.1+5.ga596921', 'console_scripts', 'pepsyn')())
File "/Users/gty/opt/miniconda3/bin/pepsyn", line 25, in importlib_load_entry_point
return next(matches).load()
File "/Users/gty/opt/miniconda3/lib/python3.9/importlib/metadata.py", line 77, in load
module = import_module(match.group('module'))
File "/Users/gty/opt/miniconda3/lib/python3.9/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 986, in _find_and_load_unlocked
File "", line 680, in _load_unlocked
File "", line 855, in exec_module
File "", line 228, in _call_with_frames_removed
File "/Users/gty/opt/miniconda3/lib/python3.9/site-packages/pepsyn/cli.py", line 41, in
from pepsyn.codons import (
File "/Users/gty/opt/miniconda3/lib/python3.9/site-packages/pepsyn/codons.py", line 21, in
from Bio.Alphabet.IUPAC import unambiguous_dna
File "/Users/gty/opt/miniconda3/lib/python3.9/site-packages/Bio/Alphabet/init.py", line 20, in
raise ImportError(
ImportError: Bio.Alphabet has been removed from Biopython. In many cases, the alphabet can simply be ignored and removed from scripts. In a few cases, you may need to specify the molecule_type as an annotation on a SeqRecord for your script to work correctly. Please see https://biopython.org/wiki/Alphabet for more information.
Could you please let me know how to fix it? Thank you!
Tianyu

I don't have time to fix it at this very moment, but maybe in the next couple weeks. The easiest workaround for you would be to install an older version of Biopython before they deprecated Bio.Alphabet.

Sorry, this did seem familiar, and actually I fixed this problem in the latest commit of pepsyn 😁 . I think you should install the latest version from github,

Thank you! I actually installed the latest version. Don't know why this still happened. Do you think it will work if I try an older version of Biopython?

I think something may be broken with your installation of pepsyn. What command did you use to install it?
You can see in the stacktrace you posted:
File "/Users/gty/opt/miniconda3/lib/python3.9/site-packages/pepsyn/codons.py", line 21, in
from Bio.Alphabet.IUPAC import unambiguous_dna

that the code you have installed tries to import something from Bio.Alphabet, which is no longer allowed. However, in the latest version of the pepsyn code, that line has been deleted:
https://github.com/lasersonlab/pepsyn/commit/a5969213e0a0ed5d514d7c5a730b93fcb78a5d2a#diff-f49d6b1aa970e78e21b21b1bf6d4d81c5317aaa79ca38ace6932ebb32ab0f043L21
and should now actually be
https://github.com/lasersonlab/pepsyn/blob/a5969213e0a0ed5d514d7c5a730b93fcb78a5d2a/pepsyn/codons.py#L21
So it looks like you're still running an older version of pepsyn.

 I uninstalled all the file and installed again with the latest version and it worked! Thanks a lot for providing this great pepsyn tool!


Update 400-nextjs-prisma-client-dev-practices.mdx

Hello! I ran into a little error when following the docs for instantiating a Prisma Client in a Next.js app using Typescript. It isn't a bug within Prisma itself, but rather a typing issue of the global object in Node.
I'm pretty sure Global type on NodeJs.Global was removed in @node/types 16.0.0. Getting a "Namespace 'NodeJS' has no exported member 'Global'" error. Replacing it with typeof globalThis does the trick.
Perhaps this is just due to the version of @types/node that next.js installs automatically, but here are the current versions I'm running:
Node - 16.0.0
Next.js -  11.1.0
@prisma/client - 2.29.1
prisma: 2.29.1

Hey @aaronvonkreisler , let us know if you'd like to make the suggested changes to this PR. 😄

Hey @molebox & @millsp, I went ahead and added the suggested changes in a new commit. Let me know if you have any thoughts or suggestions around this new change. Thanks!


Swiftly should ignore expired GPG keys

While I installed swiftly, I saw output like the following:
$ curl -L https://swiftlang.github.io/swiftly/swiftly-install.sh | bash
--[SNIPPED]--
Importing Swift's PGP keys...
gpg: key D441C977412B37AD: public key "Swift Automatic Signing Key #1<EMAIL_ADDRESS>imported
gpg: key 9F597F4D21A56D5F: public key "Swift 2.2 Release Signing Key<EMAIL_ADDRESS>imported
gpg: key 63BC1CFE91D306C6: public key "Swift 3.x Release Signing Key<EMAIL_ADDRESS>imported
gpg: key EF5430F071E1B235: public key "Swift 4.x Release Signing Key<EMAIL_ADDRESS>imported
gpg: key 7638F1FB2B2B08C4: public key "Swift Automatic Signing Key #2<EMAIL_ADDRESS>imported
gpg: key 925CC1CCED3D1561: public key "Swift 5.x Release Signing Key<EMAIL_ADDRESS>imported
gpg: key FAF6989E1BC16FEA: public key "Swift Automatic Signing Key #3<EMAIL_ADDRESS>imported
gpg: key 925CC1CCED3D1561: "Swift 5.x Release Signing Key<EMAIL_ADDRESS>1 new signature
gpg: key F167DF1ACF9CE069: public key "Swift Automatic Signing Key #4<EMAIL_ADDRESS>imported
gpg: key 925CC1CCED3D1561: "Swift 5.x Release Signing Key<EMAIL_ADDRESS>1 new signature
gpg: key F167DF1ACF9CE069: "Swift Automatic Signing Key #4<EMAIL_ADDRESS>1 new signature

Most of the keys are expired:
$ gpg --list-keys
--[SNIPPED]--
pub   rsa4096 2015-11-19 [SC] [expired: 2017-11-18]
      7463A81A4B2EEA1B551FFBCFD441C977412B37AD
uid           [ expired] Swift Automatic Signing Key #1<EMAIL_ADDRESS>
pub   rsa4096 2015-11-28 [SC] [expired: 2017-11-27]
      1BE1E29A084CB305F397D62A9F597F4D21A56D5F
uid           [ expired] Swift 2.2 Release Signing Key<EMAIL_ADDRESS>
pub   rsa4096 2016-05-31 [SC] [expired: 2018-05-31]
      A3BAFD3556A59079C06894BD63BC1CFE91D306C6
uid           [ expired] Swift 3.x Release Signing Key<EMAIL_ADDRESS>
pub   rsa4096 2017-06-14 [SC] [expired: 2019-06-14]
      5E4DF843FB065D7F7E24FBA2EF5430F071E1B235
uid           [ expired] Swift 4.x Release Signing Key<EMAIL_ADDRESS>
pub   rsa4096 2017-11-07 [SC] [expired: 2019-11-07]
      8513444E2DA36B7C1659AF4D7638F1FB2B2B08C4
uid           [ expired] Swift Automatic Signing Key #2<EMAIL_ADDRESS>
pub   rsa4096 2019-03-22 [SC] [expires: 2025-03-19]
      A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
uid           [ unknown] Swift 5.x Release Signing Key<EMAIL_ADDRESS>
pub   rsa4096 2019-11-07 [SC] [expired: 2021-11-06]
      8A7495662C3CD4AE18D95637FAF6989E1BC16FEA
uid           [ expired] Swift Automatic Signing Key #3<EMAIL_ADDRESS>
pub   rsa4096 2021-11-08 [SC] [expires: 2025-11-09]
      E813C892820A6FA13755B268F167DF1ACF9CE069
uid           [ unknown] Swift Automatic Signing Key #4<EMAIL_ADDRESS>
I think expired keys are useless? Also, swiftly doesn't support downloading Swift 2/3/4 releases. And the Automatic Signing Keys 1/2/3 are apparently obsoleted by key 4. So I think swiftly should ignore those expired keys.

The keys come from the swift.org website (https://www.swift.org/keys/all-keys.asc). It might be better that the website stops serving expired keys. You could add an issue there.
There is nothing stopping swiftly installing swift 2/3/4. As long as the tar balls are available on swift.org it should work. I haven't tested swift 2 or 3 though.

Swift website has a page for active GPG keys (https://www.swift.org/keys/active/). I found it by google. Unfortunately that page isn't friendly to script and there seems to be no active-keys.asc file. On the other hand, I suspect all-keys.asc is for archive purpose so it probably should contain expired keys.
When I submitted the issue, I though gpg might have an option to skip expired keys when importing them. I googled a bit today. There seems no out-of-box way to do it. Also, based on some discussions on the net, gpg allows one to verify signature using expired keys.
So, while I think the current behavior is a little bit confusing to me, I don't have strong opinion about it. Feel free to close it if there isn't a simple way or it isn't worth the effort.

I think opening an issue on Swift.org website to provide a nice parseable way of getting the current keys is something we should be able to implement

I submitted an enhancement #776 in swift.org repo.


Fix debug msg

Going to lgtm this myself given that its a log message change.
/lgtm

@awgreene: you cannot LGTM your own PR.

:/


(PUP-5850) Revert "(PUP-5659) Validate all relationships"

Reverts puppetlabs/puppet#4620

:+1: on this is green.


How to run GitHub Actions Workflows from sub-projects?

Projen skips GitHub actions from the sub-projects.
Need to figure out a way to add them in.
The problem is that they all need to be in the root of the repo, which is outside the scope of the projen project outdir.

GitHub stale bot considered harmful

Hey @moltar ,
I've the same question and no clue yet: https://github.com/pepperize/projen-awscdk-construct/tree/next
The idea is to consolidate all our projen presets into one monorepo and then to publish them


test: table component

Closes #365
Description
create test for table components
Is this a breaking change (Yes/No):
No
Additional Information
very simple test case now
please let me know if you need test cases

@GensIto
Hi, thanks for the PR!
Please rename folder test to tests.

@hirotomoyamada
renamed🙏🏻 please check again


Enhancement: Allow only updating changed records during BulkMerge

Describe the enhancement
Allow only updating changed records during BulkMerge. This will eliminate unneeded writes to the table and preserve any modified date column. This maintains the efficiency of the sqlbulkcopy to a temp table for data transfer but allows more granularity in what modifications actually happen against the table.
               _connection.BulkMergeAsync<SomeObject>(entities, qualifiers,mappings,additionalQualifiers);

Additional Context
I think the easiest way is to simply have another parameter for additionalQualifiers that will add additional WHERE/OR clauses to the query, comparing these columns from source and destination tables and only updating where values do not match.

@jgranger36 - by design, RepoDB's does not have State Tracking functionalities and could not track any changes made to the data/row. With this, the possibility of updating only which data/row via BulkMerge is not possible. This is also true if you are using any Merge operations (i.e: MergeAll & Merge).
On the other hand, we pre-assume that your intention is to update the records, not merging it. Would you be able to utilize the BulkUpdate instead?

I think the easiest way is to simply have another parameter for additionalQualifiers that will add additional WHERE/OR clauses to the query, comparing these columns from source and destination tables and only updating where values do not match.

The MERGE functionality on the SQL Server is to INSERT/UPDATE/DELETE the data/row via the given qualitiers within the MERGE INTO statement. Those qualifiers can be extended via the qualifiers argument when calling the BulkMerge operation. Additional filter bindings to which data/row to MERGE are not possible.


Anjaney

Gave a brief explanation of our AI model in the README file.

Anjaney pls create the PR for the abhishekiiit:dev branch.


Demo is almost unreadable in "dark mode"

Firefox supports following the system choice, between "light mode" (default) and "dark mode". Chrome is still lagging behind in this regard, here a user AFAIK always be presented with the "light mode" regardless of the system choice.
In Firefox and presumably other browsers supporting this, the demo looks like so:

The easiest solution would probably be to just disable "dark mode" in the demo altogether, instead of "pretending" to support it.

DISCALIMER: I know very little of frontend including CSS.
The following seems to work:
diff --git a/demo/style.css b/demo/style.css
index 5f85acd..f0aa97f 100644
--- a/demo/style.css
+++ b/demo/style.css
@@ -4,7 +4,7 @@
   line-height: 24px;
   font-weight: 400;

-  color-scheme: light dark;
+  color-scheme: normal;
   color: rgba(255, 255, 255, 0.87);
   background-color: #242424;

@@ -83,7 +83,7 @@ button:focus-visible {
   outline: 4px auto -webkit-focus-ring-color;
 }

-@media (prefers-color-scheme: light) {
+@media {
   :root {
     color: #213547;
     background-color: #ffffff;


Integrate Jeremy's Fix for Annotation Elements

https://github.com/google/neuroglancer/pull/164/commits/a3e4c0d25dfad6d495e2f1a26972dfb41855b1a4
should be more like this, can be done while merging
https://github.com/google/neuroglancer/commit/a05650cd604887dd6ba8a23855a7afe99a89b7d0
https://github.com/seung-lab/neuroglancer/pull/360 will conflict if not merged first

Done - see #372


Default x86 and x86-64 architecture modules give wrong max_instr_size

Both AMD and Intel explicitly state that all their CPU's will refuse to encode anything above 15 bytes.
While it is possible to have a syntactically valid encoded instruction of more than 15, the size of these in bytes are theoretically infinite.
Sources:
Intel: Volume 2:  2.2.1
AMD: AMD64 Architecture Programmer’s Manual Volume 3: General Purpose and System Instructions section 1.1

As I mentioned in the previous PR, this variable is poorly named. It's not /actually/ the max instruction length, it's just the largest size buffer the architecture module will accept and there's no reason it can't be larger than the actual maximum instruction length. Consider:
>>> Architecture['mips32'].max_instr_length
8

Does that mean MIPS 32 has 8 byte instructions? Nope, just that the MIPS architecture will read 8 bytes at a time (it does this for reasons of delay slots, but there may be other reasons an architecture chooses to consume more bytes)
Unfortunately it's a lot of work and would break existing architectures to rename this particular variable so we have no plans to change it (or the defined value of 16 for x86) at this time. I will definitely make a change to the documentation for that particular property though so that. I'm totally on board with your assertion that the maximum real-world instruction you can get is 15, but I think you'll find that even if we changed this value, none of our disassembly would change at all. Our disassembler will only ever produce 15 byte instructions, we're merely choosing this length because it's more convenient as a buffer read length that allows optimization. If you do indeed find any issues with correctness of disassembly caused by this, I'd be surprised, but that would definitely be a bug! Until then, I'm closing this as a "wont fix" since it's behaving as intended, just not quite as you might expect based on the name of the variable.
So for not getting a more clear explanation of this previously, hopefully this helps clarify the purpose of this variable!

As I mentioned in the previous PR, this variable is poorly named. It's not /actually/ the max instruction length, it's just the largest size buffer the architecture module will accept and there's no reason it can't be larger than the actual maximum instruction length. Consider:
>>> Architecture['mips32'].max_instr_length
8

Does that mean MIPS 32 has 8 byte instructions? Nope, just that the MIPS architecture will read 8 bytes at a time (it does this for reasons of delay slots, but there may be other reasons an architecture chooses to consume more bytes)
Unfortunately it's a lot of work and would break existing architectures to rename this particular variable so we have no plans to change it (or the defined value of 16 for x86) at this time. I will definitely make a change to the documentation for that particular property though so that. I'm totally on board with your assertion that the maximum real-world instruction you can get is 15, but I think you'll find that even if we changed this value, none of our disassembly would change at all. Our disassembler will only ever produce 15 byte instructions, we're merely choosing this length because it's more convenient as a buffer read length that allows optimization. If you do indeed find any issues with correctness of disassembly caused by this, I'd be surprised, but that would definitely be a bug! Until then, I'm closing this as a "wont fix" since it's behaving as intended, just not quite as you might expect based on the name of the variable.
So for not getting a more clear explanation of this previously, hopefully this helps clarify the purpose of this variable!

Unfortunately that property doesn't have a dedicated setter/getter (which makes sense since it's a read only property of teh architecture) so I've documented it as a note on the Architecture class:
https://github.com/Vector35/binaryninja-api/commit/b47c5a64e466d2322a7072a3fd1d11aff5cfab43
Let me know if you have any suggestions on how to make the explanation better!

Unfortunately that property doesn't have a dedicated setter/getter (which makes sense since it's a read only property of teh architecture) so I've documented it as a note on the Architecture class:
https://github.com/Vector35/binaryninja-api/commit/b47c5a64e466d2322a7072a3fd1d11aff5cfab43
Let me know if you have any suggestions on how to make the explanation better!

Hey, so this extra explanation does now make sense to me.
So my major point of contention was not necessarily with fears of the assembly being incorrect (these should be handled in the disassembler anyway). But rather with that it would break user facing code that would naively try to check if there exists a possible preceding instruction, since these should be based on backtracking max_instr_length and having an extra byte here could change the output of that if you don't employ extra checks.
But as long as it's properly documented, like it is now, it should be fine I guess.

Hey, so this extra explanation does now make sense to me.
So my major point of contention was not necessarily with fears of the assembly being incorrect (these should be handled in the disassembler anyway). But rather with that it would break user facing code that would naively try to check if there exists a possible preceding instruction, since these should be based on backtracking max_instr_length and having an extra byte here could change the output of that if you don't employ extra checks.
But as long as it's properly documented, like it is now, it should be fine I guess.


Document MidiWriter.saveMIDI

Please document MidiWriter's saveMIDI method - I only found it through StackOverflow.

Well... http://grimmdude.com/MidiWriterJS/docs/Writer.html#saveMIDI
Em seg, 29 de abr de 2019 às 07:54, Lee Goddard<EMAIL_ADDRESS>escreveu:

Please document MidiWriter's saveMIDI method - I only found it through
StackOverflow
https://stackoverflow.com/questions/19192590/javascript-how-to-export-a-midi-file
.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/grimmdude/MidiWriterJS/issues/54, or mute the thread
https://github.com/notifications/unsubscribe-auth/ADY45IK2UBGBMSN4KZZSGETPS3HUXANCNFSM4HJCIGPQ
.

Didn't find that doc. Guess I thought the readme was exhaustive.
Thanks!
On Mon, Apr 29, 2019, 23:54 Pedro Alves Valentim<EMAIL_ADDRESS>wrote:

Well... http://grimmdude.com/MidiWriterJS/docs/Writer.html#saveMIDI
Em seg, 29 de abr de 2019 às 07:54, Lee Goddard<EMAIL_ADDRESS>escreveu:

Please document MidiWriter's saveMIDI method - I only found it through
StackOverflow
<
https://stackoverflow.com/questions/19192590/javascript-how-to-export-a-midi-file
.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/grimmdude/MidiWriterJS/issues/54, or mute the
thread
<
https://github.com/notifications/unsubscribe-auth/ADY45IK2UBGBMSN4KZZSGETPS3HUXANCNFSM4HJCIGPQ
.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/grimmdude/MidiWriterJS/issues/54#issuecomment-487757775,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAD5GMCV5JJFJQE2U2ZN6ZLPS5U7VANCNFSM4HJCIGPQ
.

Yep you can find it documented there.  Though, I sorta feel like it's better to just handle the save logic separately since you may want to use different options, etc.  Something like this:
const fs = require('fs');
const write = new MidiWriter.Writer(track);
const buffer = new Buffer(write.buildFile());
fs.writeFile('my-midi-file.mid', buffer, function (err) {
    if(err) throw err;
});

In any case, your module saved me a lot of time and allowed me to get on
with the music -- many thanks!
On Tue, Apr 30, 2019, 04:13 Garrett Grimm<EMAIL_ADDRESS>wrote:

Yep you can find it documented there. Though, I sorta feel like it's
better to just handle the save logic separately since you may want to use
different options, etc. Something like this:
const fs = require('fs');const write = new MidiWriter.Writer(track);const buffer = new Buffer(write.buildFile());fs.writeFile('my-midi-file.mid', buffer, function (err) {
if(err) throw err;
});
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/grimmdude/MidiWriterJS/issues/54#issuecomment-487802669,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAD5GMGJIY4RF77G5BGB23TPS6TLPANCNFSM4HJCIGPQ
.


Add an assert (once SizeObserver is gone) that you don't use 'size' during build.

It might be time for this assert now.


Zone Groups do not work

Describe the bug
Turning on a group or getting a group status does not work when the group is a 'zone'.
Flow to Reproduce
Inject > Group > Debug
UI Button > Debug
Expected behavior
When sending a status request, pressing the button in the UI or having the group change via another app, expecting a message to be sent from the node. When sending a message to turn on the lights in the group, expecting the lights to turn on. The button in the UI says 'Zone: Status queried successfully...'
Screenshots

Please complete the following information:

Node-RED version: 2.1.4
NodeJS version: 14.18.2
Device running Node-RED: Intel NUC via docker

Error in NodeRED:
UnhandledPromiseRejectionWarning: TypeError: Cannot create property 'command' on boolean 'false'
at processImmediate (internal/timers.js:464:21)
at HueGroup.applyCommands (/data/node_modules/node-red-contrib-huemagic/huemagic/hue-group.js:523:28)
at HueGroup._inputCallback (/data/node_modules/node-red-contrib-huemagic/huemagic/hue-group.js:95:54)
at /usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:204:26
at HueGroup.Node._emitInput (/usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:196:11)
at Object.trigger (/usr/src/node-red/node_modules/@node-red/util/lib/hooks.js:149:13)
at HueGroup.Node.emit (/usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:180:25)
at HueGroup.Node.receive (/usr/src/node-red/node_modules/@node-red/runtime/lib/nodes/Node.js:479:10)
at Immediate. (/usr/src/node-red/node_modules/@node-red/runtime/lib/flows/Flow.js:814:52)

After upgrading to 4.0.4 the zone groups seem to be working now. Although I am still getting the error in the NodeRED log.

If you didn’t already, can you please try to restart Node-RED completely and check again if you still see this error in your logs?

Restarted a few times and am still receiving the error. Although the group node seems to be working. The error is also often following by another message:
(node:17) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 6)


Cannot join etcd-only node to an all-role initial server

The current state of etcd-only nodes requires a specific order:
NODE1 etcd-only
curl -fL https://get.k3s.io | INSTALL_K3S_VERSION=v1.22.5-rc1+k3s1 sh -s - server --cluster-init --token demo --disable-apiserver --disable-controller-manager --disable-scheduler

NODE2 no etcd
curl -fL https://get.k3s.io | INSTALL_K3S_VERSION=v1.22.5-rc1+k3s1 sh -s - server --token demo --disable-etcd --server https://<NODE1 IP>:6443

NODE3 ALL ROLES
curl -fL https://get.k3s.io | INSTALL_K3S_VERSION=v1.22.5-rc1+k3s1 sh -s - server --token demo --server https://<NODE1 IP>:6443

If bringing up node3 first (with --cluster-init flag), then trying to join node1 (without cluster-init but with --server), node1 will fail to join and will not correctly start. Instead, it will loop with:
level=info msg="Waiting for API server to become available"
level=warning msg="Deploy controller node name is empty or too long, and will not be tracked via server side apply field management"
level=info msg="Failed to set etcd role label: failed to register CRDs: Get \"https://<IP_ADDRESS>:6444/apis/apiextensions.k8s.io/v1/customresourcedefinitions\": dial tcp <IP_ADDRESS>:6444: connect: connection refused"

We should enhance this functionality to allow any configuration to work. Some valid scenarios would be:

node1=etcd-only, node2=cp, node3=worker
node1=cp, node2=etcd-only, node3=worker
node1=etcd+cp, node2=all roles
node1=all roles, node2=etcd-only
node1=all roles, node2=cp

Edit to add more valid scenarios:
6. node1=etcd-only, node2=etcd-only, node3=etcd-only, node4=cp-only, node5=worker

When we fix this, let's add an ADR to capture some requirements for supported role combinations (--disable-x flags) and ordering.

I believe this issue is also affecting cluster creations in rancher when doing -only nodes. The following configs I saw fail in rancher:

3 nodes all roles, 2 nodes etcd-only, 1 node cp-only, 1 node worker-only.

Result here was:
3 nodes all roles are up and running, but no other nodes are
Same logs as shown in this issue description show up on the etcd-only nodes.
Other nodes have not started the k3s process at all and are stuck Waiting for etcd to be available

3 nodes etcd-only, 2 nodes cp-only, 3 nodes worker-only

Result here was:
No nodes are up and running. etcd-only nodes have two different repeating logs. One had:

Jan 11 23:11:17 maxk3split-maxk3splitetcd-ac4f3f1a-x8rxp k3s[2121]: time="2022-01-11T23:11:17.744386898Z" level=warning msg="servers addresses are not yet set"
Jan 11 23:11:22 maxk3split-maxk3splitetcd-ac4f3f1a-x8rxp k3s[2121]: time="2022-01-11T23:11:22.739308259Z" level=warning msg="Deploy controller node name is empty or too long, and will not be tracked via server side apply field management"
Jan 11 23:11:22 maxk3split-maxk3splitetcd-ac4f3f1a-x8rxp k3s[2121]: time="2022-01-11T23:11:22.740784566Z" level=info msg="Failed to set etcd role label: Get \"https://<IP_ADDRESS>:6444/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions\": dial tcp <IP_ADDRESS>:6444: connect: connection refused"

And the other two had:Jan 11 23:27:06 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:06.819345817Z" level=info msg="Waiting for API server to become available"
Jan 11 23:27:11 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:11.696957728Z" level=warning msg="Deploy controller node name is empty or too long, and will not be tracked via server side apply field management"
Jan 11 23:27:11 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:11.697868398Z" level=info msg="Failed to set etcd role label: Get \"https://<IP_ADDRESS>:6444/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions\": dial tcp <IP_ADDRESS>:6444: connect: connection refused"
Jan 11 23:27:16 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:16.696126485Z" level=warning msg="Deploy controller node name is empty or too long, and will not be tracked via server side apply field management"
Jan 11 23:27:16 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:16.697405484Z" level=info msg="Failed to set etcd role label: Get \"https://<IP_ADDRESS>:6444/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions\": dial tcp <IP_ADDRESS>:6444: connect: connection refused"
Jan 11 23:27:17 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: {"level":"warn","ts":"2022-01-11T23:27:17.060Z","caller":"clientv3/retry_interceptor.go:62","msg":"retrying of unary invoker failed","target":"passthrough:///https://<IP_ADDRESS>:2379","attempt":0,"error":"rpc error: code = DeadlineExceeded desc = latest balancer error: connection error: desc = \"transport: Error while dialing dial tcp <IP_ADDRESS>:2379: connect: connection refused\""}
Jan 11 23:27:17 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:17.060482368Z" level=info msg="Failed to test data store connection: context deadline exceeded"
Jan 11 23:27:21 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:21.696204907Z" level=warning msg="Deploy controller node name is empty or too long, and will not be tracked via server side apply field management"
Jan 11 23:27:21 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:21.696774378Z" level=info msg="Failed to set etcd role label: Get \"https://<IP_ADDRESS>:6444/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions\": dial tcp <IP_ADDRESS>:6444: connect: connection refused"
Jan 11 23:27:26 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:26.697017648Z" level=warning msg="Deploy controller node name is empty or too long, and will not be tracked via server side apply field management"
Jan 11 23:27:26 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:26.698441406Z" level=info msg="Failed to set etcd role label: Get \"https://<IP_ADDRESS>:6444/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions\": dial tcp <IP_ADDRESS>:6444: connect: connection refused"
Jan 11 23:27:31 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:31.696149687Z" level=warning msg="Deploy controller node name is empty or too long, and will not be tracked via server side apply field management"
Jan 11 23:27:31 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:31.696940670Z" level=info msg="Failed to set etcd role label: Get \"https://<IP_ADDRESS>:6444/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions\": dial tcp <IP_ADDRESS>:6444: connect: connection refused"
Jan 11 23:27:32 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: {"level":"warn","ts":"2022-01-11T23:27:32.063Z","caller":"clientv3/retry_interceptor.go:62","msg":"retrying of unary invoker failed","target":"passthrough:///https://<IP_ADDRESS>:2379","attempt":0,"error":"rpc error: code = DeadlineExceeded desc = latest balancer error: connection error: desc = \"transport: Error while dialing dial tcp <IP_ADDRESS>:2379: connect: connection refused\""}
Jan 11 23:27:32 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:32.064082348Z" level=info msg="Failed to test data store connection: context deadline exceeded"
Jan 11 23:27:36 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:36.697351901Z" level=warning msg="Deploy controller node name is empty or too long, and will not be tracked via server side apply field management"
Jan 11 23:27:36 maxk3split-maxk3splitetcd-ac4f3f1a-qvs4s k3s[2117]: time="2022-01-11T23:27:36.698639554Z" level=info msg="Failed to set etcd role label: Get \"https://<IP_ADDRESS>:6444/apis/apiextensions.k8s.io/v1beta1/customresourcedefinitions\": dial tcp <IP_ADDRESS>:6444: connect: connection refused"

No other nodes had started the k3s process and were stuck Waiting for etcd to be available

I believe it is all related to this issue, so this will become critical for GA of k3s in Rancher. Note these same issues do NOT show up with the same configurations for rke2.

@ShylajaDevadiga, @mdrahman-suse, and I just bisected a similar issue with cluster-reset restore to https://github.com/k3s-io/k3s/commit/05f1bc6e2a62a995564341b48e1191839f9b7e0f - I'm investigating a fix right now.

@rancher-max can you see what you get with the most recent RC?

It looks like it's still failing for me through rancher. Using config:
3 servers all roles, 2 nodes etcd-only, 1 node cp-only, 1 node worker only
What's interesting is that in this case, sometimes I see the 3 servers all roles come up and running and the others not, and sometimes I don't even see the 3 servers all roles come up (so nothing is up and running)

Yep, this is why Rancher CI won't pass right now when we bumped K3s/RKE2 versions
Do we know what version of K3s this broke in?

I'm particularly suspect of https://github.com/k3s-io/k3s/pull/4246
Rancher provisioning tests stop passing after crossing the threshold of the inclusion of that version i.e.
v1.21.5+k3s2 works, v1.21.6+k3s1 breaks.

Rancher provisioning tests stop passing after crossing the threshold of the inclusion of that version i.e.
v1.21.5+k3s2 works, v1.21.6+k3s1 breaks.

This is consistent with the behavior I see in Rancher 2.6.3 with k3s provisioning, so I believe @Oats87 is likely correct with the commit that broke this.

I can take this on for the next cycle, since it seems related to the agent ready channel stuff that I added.

Moving this to the next milestone since the QA team didn't have a chance to work on it for v1.22.6+k3s1

Did not get worked for the February release, let's reschedule to March.

Validated using v1.23.5-rc1+k3s1
Performed the following 5 scenarios:

Scenario 1: node1=etcd-only
Scenario 2: node1=all roles
Scenario 3: double etcd-only, node1=etcd-only
Scenario 4: double etcd-only, node1=all roles
Scenario 5: node1=cp only

Note that on scenario 5, there is an expected failure in starting k3s. It receives: level=fatal msg="invalid flag use; --server is required with --disable-etcd"


doc: fix example

fixes example introduced in PR #12
Took me some time to realise you have to instantiate RBush
Example suggests you can use it directly as a function...

npm run build-min failed with the latest version of uglify-js
More info at: https://github.com/mishoo/UglifyJS2/issues/3394
Fixed the buil by pinning uglify-js to the current semver patch version.
It's up to you to upgrade to the latest version.

Thanks!


How to manually init?

In relation to https://github.com/Armax/Pokemon-GO-node-api/issues/69, how can I manually initialize an object (i.e. I already have a valid access token and api_endpoint and don't need to log in again until the token expires)?
I'm thinking it's something like this:
var pokeio = new PokemonGO.Pokeio();

pokeio.playerInfo.username = 'johndoe';
pokeio.playerInfo.password = 'secret';
pokeio.playerInfo.provider = 'ptc';
pokeio.playerInfo.accessToken = 'xyz';
pokeio.playerInfo.latitude = 40.36915523640919;
pokeio.playerInfo.longitude = -111.75098587678943;
pokeio.playerInfo.altitude = 0;
pokeio.j = request.jar(new FileCookieStore(path.resolve('/tmp/', pokeio.playerInfo.username + '.pokemongo.json')));
pokeio.request = request.defaults({ jar: pokeio.j });

pokeio.playerInfo.apiEndpoint = api_endpoint;

Perhaps the Cookie Jar isn't really necessary? (that would be wonderful if it isn't)

I need this as well. Heck, because of the whole init->...->heartbeat thing makes a stateless approach painful (i.e. web service/api).
What I want to accomplish is, user call my api to sign in, and get the token and it's expiration. This way, user can request anything (within time interval, specifically for heartbeat) using that token without the need of re-login.

We're doing the same thing :)

Here's how far I got tonight: https://github.com/coolaj86/node-pokemap
I'm not sure if my deserialize isn't working because the servers in my region are down (because the normal way isn't working right now either) or if it's missing some parameters. I'll have to try again in the morning.

Without the heartbeat, Niantic will be more likely to be able to detect you are a bot and terminate the account.

yes you can change almost anything in the playerInfo and it works like a manual init

@d-pollard:
Why not let this lib focus on being the best way to interface with the API and let the client control the heartbeat?
People open the app, use it for 10 seconds, and close it all the time (or more likely it crashes). Having the browser or client control the request for the heartbeat may add a little bit of latency, but we're talking about mobile phones - latency is always terrible.
@Armax:
Docs for which things are and aren't required to be initialized? Is my list complete?

I've got the server and client both working now: https://github.com/Daplie/node-pokemap
I haven't implemented scanning yet, but instead of doing it on the backend, I'm probably going to let the web client handle it (just need to understand the logic around the s2cellid stuff a little better so I know the optimal places to reposition the gps coordinates).