text:
How to get slashes in routes working without dynamic nesting

Please. Anyone. Just one working example of how to route urls with more than one slash (for the route itself). I spent a Sunday on this but no luck.
I'm using Nuxt as a central part in building a customized and server side rendered MEVN stack (the N might as well stand for Nuxt).
For the sake of the future I would really like to keep a url structure with domain/route/category/subcategory/slug - the name of the controlling route being permlink.
Dynamic nested routes haven't been any success, though.
As an alternative some hacks with encodeURIComponent(someurl) and decodeURIComponent(someurl) have been tested. This seems closer, but still no breakthrough. Perhaps it's just a matter of putting the encodes and decodes right.
Works: http://localhost:8085/permlink/tyskland-baenkesaet-test-med-tags-jan
Works: http://localhost:8085/permlink/england%2Fjord%2Ftester-med-fast-ord-testord
404: http://localhost:8085/permlink/england/jord/tester-med-fast-ord-testord
404: http://localhost:8085/permlink/udvandrerne/baenke-drastisk-udrensning-fremhaever-vigtigt
Then I've tested the extendRoutes way. After the best of my abilities I've sucked a lot up up from 1592, 1542, 1234, 1032, 275, 112 among others.
Only result is still 404, when it comes to the urls including slashes after /permlink. Have also tested without the dynamic component \pages\permlink\_permlink.vue to give "more room" for the extended route - but same same.
Please take a look at one of all my tested configurations in nuxt.config.js:
    router: {
        extendRoutes (routes, resolve) {
          routes.push({
            name: 'permlinkindex',
            path: '*',
            component: resolve(__dirname, '~/pages/permlinkindex.vue')
          })
        }
      },

Is this simply caused by a bug with backslashes in windows?
My setup:

Windows 10
NPM 5.3.0
Node 8.1.2
Nuxt 1.0.0-rc11

Any help - or just a little push - would be much appreciated.

Hi @JLKM,
Have you tried with the page name: _.vue ?
It creates a route with the path as * and the name is all.

Thanks a lot for your fast advice, which I've tested right away - the best I could.
Unfortunately I'm not quite aware, where to put the _.vue file. So I tested various locations:
1. In permlink-folder hierachy
Files:
F:\data\fullstack\mean\pages\permlink.vue
F:\data\fullstack\mean\pages\permlink_permlink.vue
F:\data\fullstack\mean\pages\permlink__.vue
F:\data\fullstack\mean\pages\permlink___.vue
F:\data\fullstack\mean.nuxt\router.js:
		{
			path: "/permlink",
			component: _62527d7c,
			name: "permlink",
			children: [
				{
					path: ":?/:?",
					component: _d33c5bc8,
					name: "permlink--",
					children: [
						{
							path: ":?",
							component: _753511f3,
							name: "permlink---"
						}
					]
				},
				{
					path: ":permlink?",
					component: _70a2b506,
					name: "permlink-permlink"
				}
			]
		},

Result:
Bingo (0 subfolders): http://localhost:8085/permlink/tyskland-baenkesaet-test-med-tags-jan
Bingo (0 subfolders): http://localhost:8085/permlink/udvandrerne%2Fgenerelt%2Foverskrift-ordet-noget-tekst-skriver
404 (2 subfolders): http://localhost:8085/permlink/udvandrerne/generelt/overskrift-ordet-noget-tekst-skriver
2. Without hierarchy
Files:
F:\data\fullstack\mean\pages\permlink.vue
F:\data\fullstack\mean\pages\permlink_.vue
F:\data\fullstack\mean.nuxt\router.js:
		{
			path: "/permlink",
			component: _62527d7c,
			name: "permlink",
			children: [
				{
					path: ":?",
					component: _312c2a93,
					name: "permlink-"
				}
			]
		},

Result:
404 (0 subfolders): http://localhost:8085/permlink/tyskland-baenkesaet-test-med-tags-jan
404 (0 subfolders): http://localhost:8085/permlink/udvandrerne%2Fgenerelt%2Foverskrift-ordet-noget-tekst-skriver
404 (2 subfolders): http://localhost:8085/permlink/udvandrerne/generelt/overskrift-ordet-noget-tekst-skriver
3. The radical solution
Only one file at the /pages/-root:
F:\data\fullstack\mean\pages_.vue
F:\data\fullstack\mean.nuxt\router.js:
{
path: "/:",
component: _d096e886
}

*Result:*
404 (0 subfolders): http://localhost:8085/permlink/tyskland-baenkesaet-test-med-tags-jan
404 (0 subfolders): http://localhost:8085/permlink/udvandrerne%2Fgenerelt%2Foverskrift-ordet-noget-tekst-skriver
404 (2 subfolders): http://localhost:8085/permlink/udvandrerne/generelt/overskrift-ordet-noget-tekst-skriver

As you see: No * in the generated routes.js.
What did I miss? Is it something in my setup?

pages/permalink/_.vueshould be enough in your case.

Hello there.
I am trying to build a website where the route matches a json file on my server. Adding a JSON File would "create" another page.
Let say for instance that going to the page /rub1/article1 will try to load the json file "article1.json" in the folder "rub1" in the static folder.
Tried both solution with _.vue and extendRoutes.
Both solutions works great until I try to get a json file that doesn't exists.
Let say a user tries to load rub1/article666 that doesn't exists
The page calls the json file, which doesn't exists, but the route is being catched by the  nuxt "catchall" route, proceed to the same vue component, that now tries to load the article666.json.json according to the route, which doesn't exists... and so on
Crashes the server everytimes.
I struggle to find a way to prevent the router to loop more than once.
Any ideas ?
Thanks

authors: JLKM Norbz alexchopin


text:
Layout seems not working

I got a blank page when I navigate to a page with a different layout, but it got rendered if I reload that page manually.

Please check https://github.com/nuxt/nuxt.js/tree/dev/examples/custom-layouts
If it cannot resolve you problem, pls offer a repo can reproduce your issue. 😃

material-lite-design package is the culprit, it removes the layout root element on page load. Fix it by wrapping it with one more div. Thank you for answering.

source: gharchive/issue

authors: clarkdo nugrahawahyu

license: MIT

license_type: permissive

license_source: github-api


text:
How to run a script every time page is loaded?

My client sent me an HTML template that heavily relies on jQuery. The app itself runs on nuxt. I have a js file that contains a whole lot of $(function(){...}). Now I don't know how to run this file on each page transition.
So far, I have tried:

Creating a plugin inside plugins dir that looks like:

 export default async ({ app }) => {

     app.router.afterEach((to, from) => {
         require('~/static/js/base-init.js');
     })
 }

here base-init.js has all those jquery code

Adding mounted (inside default.vue layout) but that doesn't work either.

Does anyone have a clue?

This question is available on Nuxt community (#c8654)

@avks hello did you find the solution to this? having similar issues

@joecutter see here

authors: avks joecutter


text:
Page flickers/jumps to top before navigating to new page

Version
v2.4.5
Reproduction link
https://codesandbox.io/s/rw2y50vzkp?fontsize=14&view=preview
Steps to reproduce

Open the reproduction link
Allow the project to finish building and then open the sandbox preview URL in a new window for maximum effect, e.g: https://rw2y50vzkp.sse.codesandbox.io/
Scroll down right to the bottom of the page and click any of the page links to go to a new page.
The page will be redirected and sent to the top of the new page.

What is expected ?

Navigating to a new page shouldn't cause content on page to flicker before navigating to the new page.
Page shouldn't "jump" / "flash" before directing as it is noticeable .

What is actually happening?

Navigating to new pages from links further down pages is causing the content to appear for a few ms after the page is sent to the top -> and then being redirected to the new page.
This doesn't happen all of the time, but most of the time it does. The problem isn't noticable when clicking navigation links in the header as you're already at the top of the page and a scroll-behaviour isn't needed.

Additional comments?
This behaviour has been noted previously, however, I seem to be facing the same problem and have tried all of the suggestions mentioned online, on Stack Overflow and on the Nuxt JS Github.

This bug report is available on Nuxt community (#c8913)

Any update on this

This issue can still be reproduced.

This issue can still be reproduced.

/cc @manniL Just commenting to find out what the status of this is and whether anyone has been able to implement a fix

This is not really a bug perse. The issue is that scrollBehaviour is a vue-router feature with fires synchronously by default while nuxt loads the new page component asynchronously through a transition.
scrollBehaviour can be asynchronous as well, if you change your scrollBehavior fn as follows so its called after the transition to the new page component finishes your issue doesnt show:
// nuxt.config.js
import Vue from 'vue'
...
  router: {
    scrollBehavior(to, from, savedPosition) {
      return new Promise(resolve => {
        Vue.nextTick(() => {
          setTimeout(() => resolve({ x: 0, y: 0 }), 0);
        });
      });
    }
  },

authors: pimlie sts-ryan-holton


text:
Issue: Inline window.__NUXT__ script

When I generate my project, it always contains a little piece of inline script:

How can I get this to a separate file to match my CSP settings?
Versions

nuxt: v2.14.3
node:v 12.1.0
yarn: 1.22.4

Reproduction

Create project
nuxt generate
Check the source code (at the bottom)

What is Expected?
Seperate file with this JS code in it
What is actually happening?
It stays in the source code and the browser is reporting an error:
Refused to execute a script because its hash, its nonce, or 'unsafe-inline' appears in neither the script-src directive nor the default-src directive of the Content Security Policy.

Would love to see resolution to this — seems important!

any progress on this? I can't config csp

authors: adam-gipril phongvuhyuet sjoerdloeve


text:
Support assetsInclude

Describe the feature
I would like to see the assetsInclude config from Vite supported in the Nuxt configs. I have a few .gltf files that are a part of my assets directory, but currently can't get them to be included during the build. The workaround is to have them in the public directory.
Additional information

[ ] Would you be willing to help implement this feature?
[ ] Could this feature be implemented as a module?

Final checks

[X] Read the contribution guide.
[X] Check existing discussions and issues.

Have you tried:
export default defineNuxtConfig({
  vite: {
    assetsInclude: [/\.gltf/]
  }
})

If that's not working, maybe a reproduction could be a helpful first step?

I tried using regular expression for that too and it doesn't seem to work.
I have reproduced the issue here:
https://stackblitz.com/edit/github-1mvead
When you run npm run build, the .gltf file doesn't get copied over.

You don't seem to be using them during the build at all. Is there a reason you don't want them in the public/ folder? (Normally this is where you would put assets that you don't want to be transformed as part of a build process. It allows Nuxt to set appropriate cache headers, for example...)

In my real use case, I do need to import the file into my Vue component. From my understanding, I can't do that using the public/ directory.

Maybe you can update the repository to show how you are using it?

I unfortunately could not upload a .glb file, which is just the binary version of the .gltf file probably due to the size, but I did update my code here to show how I usually import the model,
https://stackblitz.com/edit/github-1mvead?file=components%2Ftest.vue%3AL19

The use case there really seems better suited to the public/ directory. It's not included in the build other than being referenced via string. Vite doesn't process that at all other than to copy it across. Try including it in ~/public/assets (or similar) and referencing via assets/ rather than _nuxt/assets/...

Ok, using the public folder does work. Though I may need to process the file in the future during the build step, but that is currently not yet required for me.

repo: nuxt/nuxt


text:
Hydration error, rogue  being rendered

Environment

Operating System: Windows_NT
Node Version:     v18.12.1
Nuxt Version:     3.7.0
CLI Version:      3.7.0
Nitro Version:    2.6.1
Package Manager:  npm@9.1.2
Builder:          -
User Config:      alias, devtools, modules, content, runtimeConfig, imports, typescript
Runtime Modules:  @nuxt/content
Build Modules:    -

Reproduction
https://stackblitz.com/edit/github-v9wco7?file=app.vue
Describe the bug
I get a consistent Hydration error for a very simple template (repro link above). The error is:

And in the repro can be seen to warn about the same span element.
In my local build inspecting I can also the see the element present in the dom on the client:

But the span is not part of my template.
I am unsure as to why this extra element is being injected, I have no additional plugins beyond core nuxt and the repro also shows this with a minimal project setup.
Additional context
No response
Logs
[Vue warn]: Hydration node mismatch:
- Client vnode: table
- Server rendered DOM:
  at <Index onVnodeUnmounted=fn<onVnodeUnmounted> ref=Ref< undefined > >
  at <RouteProvider key="/authorities" vnode= Object route= Object  ... >
  at <RouterView name=undefined route=undefined >
  at <NuxtPage>
  at <Default ref=Ref< undefined > >
  at <LayoutLoader key="default" layoutProps= Object name="default" >
  at <NuxtLayoutProvider layoutProps= Object key="default" name="default"  ... >
  at <NuxtLayout>
  at <App key=3 >
  at <NuxtRoot>

Hi there! This is caused by the <ClientOnly>
 element. Not an expert on this field, but I suspect that because of Nuxt trying to drop in a placeholder in this place, and  inside a  is invalid, the mismatch happens. You could move the <ClientOnly> to somewhere else:

              <ClientOnly>
                Load more
              </ClientOnly>

(see https://stackblitz.com/edit/github-v9wco7-jhapot?file=app.vue) or try something else with v-if/v-show.

Hi there! This is caused by the <ClientOnly>
 element. Not an expert on this field, but I suspect that because of Nuxt trying to drop in a placeholder in this place, and since  inside a
 is invalid, the mismatch happens. You could move the <ClientOnly> to somewhere else:

      <ClientOnly>
        Load more
      </ClientOnly>

(see https://stackblitz.com/edit/github-v9wco7-jhapot?file=app.vue) or try something else with v-if/v-show.

nailed it, I never knew it could be this opinionated, is there anywhere that lists these sort of issues or has the most common to watch out for? Haven't come across it in the documentation or is it a case of trial and error?

@cmcnicholas good question. What works for me is: in General, if you go against semantic html rules (e.g. nesting  inside a  or a  inside a ) you will get ssr mismatches. In this particular example it was hard to catch, because it was no obvious error in your code. What also often works to debug SSR errors is to gradually remove parts of the HTML/Components until the error disappears. Which brings you to the cause. (Often it's some date that is getting rendered differently on server & client because of timezones.
But maybe a nuxt core maintainer has more insights on this :)

You can also define a placeholder (component or simply tag) via the template of <ClientOnly> to avoid such mismatches 👍
See https://github.com/nuxt/nuxt/blob/main/packages/nuxt/src/app/components/client-only.ts#L17C71-L17C71
<ClientOnly placeholder-tag="tfoot">...</ClientOnly>

@manniL thanks for pointing out! Did not know that. So you could set a tfoot as placeholder and it should work.

authors: cmcnicholas madebyfabian manniL


text:
Nuxt generates incorrect types when use pick with transform

Environment

Operating System: Linux
Node Version:     v16.20.0
Nuxt Version:     3.7.0
CLI Version:      3.7.3
Nitro Version:    2.6.2
Package Manager:  npm@9.4.2
Builder:          -
User Config:      -
Runtime Modules:  -
Build Modules:    -

Reproduction
https://stackblitz.com/edit/github-udceba?file=app.vue
Describe the bug
If we change/add another field (bar) in the transform callback and then pick it - Nuxt will show us TS error (nuxi typecheck) but works correctly in runtime:
Type '"bar"' is not assignable to type '"id" | "foo"'.

Expected:

correct types when use pick and transform together
do not allow to use pick and transform together

Additional context
No response
Logs
No response

I would expect that only pick or transform are used - not both. Perhaps we could document this, or update types to disallow.

@danielroe I've opened a PR to improve documentation about pick and transform. Hope will be useful!

@danielroe opened another PR since I've messed up things in the previous PR 🙄

authors: danielroe enkot noppytinto


text:
Chunk ordering in Nuxt 3 (When generating)

Environment

Operating System: Darwin
Node Version:     v20.9.0
Nuxt Version:     -
CLI Version:      3.10.0
Nitro Version:    -
Package Manager:  pnpm@8.12.1
Builder:          -
User Config:      -
Runtime Modules:  -
Build Modules:    -

Reproduction
I don't understand what determines the sorting order of loading chunks.
One fine day, the chunks got confused and began to be sorted in a different order.
On the first screen as it was before:

It can be seen that default.[hash].css is at the beginning of the list and has a rel="stylesheet" parameter
<link rel="stylesheet" href="/_nuxt/default.414593af.css">

But at some point the generation gave me this:

Our link with default.[hash].css flew down somewhere and changed the rel to prefetch and added a attr as="style"
<link rel="prefetch" as="style" href="/_nuxt/default.414593af.css">

Describe the bug
Please help me figure out who controls the order and types of links, where I can find this information
Additional context
No response
Logs
No response

The package responsible is https://github.com/nuxt-contrib/vue-bundle-renderer. It renders the links. But they are then finally rendered/ordered by https://github.com/unjs/unhead. (You can even enable experimental.headNext to optimise their order automatically.)
Feel free to open an issue in either package (or here) with a reproduction 🙏

authors: Gumper-x danielroe


text:
Add documentation Nuxt3+websocket on same port

I have spent all day trying to figure out why proxy'ing socket.io through nuxt did not work. All the modules like nuxt-socket-io could not help me to achieve this. After deep diving into h3 and nitro code I noticed that h3 does not support upgrade requests (which makes sense from nuxt3) design perspective.
So I think we should openly document this and advise people to use a proxy in front of nuxt3 if they want to put everything on the same url / port.

🔗 Linked issue

❓ Type of change

[x] 📖 Documentation (updates to the documentation or readme)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

Nuxt3 and socket.io cannot be on same port, even when using proxy or various npm modules.

https://github.com/nuxt/nuxt/issues/19199
https://github.com/nuxt/nuxt/issues/14786
📝 Checklist

[ x] I have linked an issue or discussion.
[x ] I have updated the documentation accordingly.

Thank you @bf for mentioning this. Given thart you tried to make production server work with nuxt.socket.io, what would be a solution to this problem? Is it possible without changing nuxt.socket.io's code?
Currently I am forced to run a nuxt dev build on my server which makes it work, but of course ideally I would like a production build on my server.
Thank you this is of great help to me!

@dataexcess yesterday I tried everything.
Problem with the nuxt-socket-io module is:

it does not work with nuxt3 yet
the maintainer has closed all issues because he was upset with people asking for help
the maintainer is inactive since january

So yesterday I sat down and did a deep dive into nuxt, nitro and h3. I tried nitro poxy feature in various ways, I tried creating own server-middleware, creating proper nitro plugin, creating server-only routes. The only solution that ended up working for me was runnig a proxy in front of nuxt which checks if the incoming request is to /socket.io/  or not. In the end I figured out it was because h3 does not support the upgrade request.
HOWEVER, I just noticed that nuxt-devtools seems to run a websocket on the same port as nuxt at ws://127.0.0.1:3000/__nuxt_devtools__/entry. This is unlike vite which runs a websocket on port 24678 to circumvent the whole proxying of upgrade: websocekt requests problem.
We should check nuxt-devtools source code to see how they do it.

Relevant sourcecode from nuxt-devtools is https://github.com/nuxt/devtools/blob/3b33a602b34fe7a48dd4bb7f747941d1ebed4448/packages/devtools/src/module-main.ts  and https://github.com/nuxt/devtools/blob/3b33a602b34fe7a48dd4bb7f747941d1ebed4448/packages/devtools/src/rpc.ts
The problem with the nuxt-devtools websocket approach is that it is not working in production, see https://github.com/nuxt/devtools/blob/3b33a602b34fe7a48dd4bb7f747941d1ebed4448/packages/devtools/src/module-main.ts#L25
So my goal was to find something where I have exactly the same websocket setup in development and in production.
I know that you can always run the websocket on a different port and merge both via nginx reverse proxy in deployment. However, I wanted to remove this logic from nginx and put it into the javascript part of my app.

Ok interesting!
Yes I am quite annoyed and disappointed with the nuxt.socket.io maintainer as he describes in his 'contributing' page: "Since the nuxt-socket-io has reached a stable state I'm currently disabling the "issues" feature, since it encourages more whining than actual problem solving"
I am not sure how opening an issue saying that the project does not work on nuxt3 as is claimed on the read me of his project would be sonsidered 'whining' sigh.
That aside, as I understand from your thorough research (thank you for this!) it would be possible simply by running the nuxt.socket.io websocket server on a differenet port right? I am just unsure how to do this exactly. I am using nginx already on my server so I thought about this as a nginx config setup:
server {
       #name / ssl / etc....

        location / {
                add_header 'Access-Control-Allow-Origin' '*' always;
                proxy_pass https://localhost:3001;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection 'upgrade';
                proxy_set_header Host $host;
                proxy_cache_bypass $http_upgrade;

                client_max_body_size 100M;
        }

       location /socket.io/ {
               add_header 'Access-Control-Allow-Origin' '*' always;
                proxy_pass https://localhost:3002;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection 'upgrade';
                proxy_set_header Host $host;
       }
}

In this case all traffic to websockets would be routed to the sockets server right? The only problem I am having is that I don't know how to actually start this websocket server on port 3002 (using nuxt.socket.io) There is a 'url' field in the io object in the nuxt.config.js file but that is the one that is used from the client side if I understand it correctly... so that should be set to https://mysite.com and not https://localhost:3002.
Do you have any idea? Or am I doomed to ditch nuxt.socket.io and go for your other solution.. :( hoping to still make it work with my current code.
Any help much appreciated!

Just ditch nuxt-socket-io. Please don't blame the maintainer, he is obviously a bit overwhelmed with the situation. Open-source is a horrific thing because most of the time nobody pays you for anything and then people come to you for support and complain.
If you want to use nginx to merge both ports into one, then just create a nuxt server plugin (nitro plugin) like this:
// plugins/socket.io.ts
import { Server } from 'socket.io';

export default defineNitroPlugin((nitroApp) => {

const io = new Server(3000, {
  serveClient: false,
  cors: {
      origin: '*',
  }
});

io.engine.on("connection_error", (err) => {
  console.log("socket.io connection error", err)
})

io.on('connection', (socket) => {
  console.log('Connection', socket.id)
})

io.on('connect', (socket) => {
  socket.on("error", (msg) => {
    console.log("socket error", msg)
  })

  socket.emit('message', `welcome ${socket.id}`)
  socket.broadcast.emit('message', `${socket.id} joined`)

  socket.on('message', (data) => {
    console.log('message received: %s', data)
    socket.emit('message', { data })
  })

  socket.on('disconnecting', () => {
    console.log('disconnected', socket.id)
    socket.broadcast.emit('message', `${socket.id} left`)
  })
});
})

Thank you I will try this code!
I am not blaming the maintainer I am really grateful for his work and I understand it is not easy. But to get rid of the issues section all-together seems a bit drastic to me personally. At least people can just mention what is not working and make other people aware before using this in development mode expecting for it to work in production (especially when it is stated in the read me file) I am not even saying he should fix the issue immediately but at least he could update the read me file so people in the future will not run into the same issue as I have.
Actually now that I think of it I could/should make a pull request editing the read me file mentioning just this.

@bf Thank you your code did the trick 🙏

@pi0 @Atinux What do you think - would this be good to add to the Nuxt docs? Or maybe as an example in https://github.com/nuxt/examples?

Please hold on this till adding ws support to to nitro. Custom preset like this can be broken in the future if we recommend.

@bf Is there a working example project for this by any chance? I'm not sure where exactly to put the code snippets.

Please hold on this till adding ws support to to nitro. Custom preset like this can be broken in the future if we recommend.

Is there any timeline for ws support in nitro? Its needed if you want to use subscriptions in graphql (https://github.com/tobiasdiez/nuxt-graphql-server/issues/23).

linking issue this is waiting on: https://github.com/nuxt/cli/issues/108

This is now outdated as Nitro comes with first-class websocket support (on the same port) and I think we can close now. Let me know if you think there is anything more to update here and I'll happily reopen. 🙏

source: gharchive/pull-request

authors: bf danielroe dataexcess pi0 timstrasser tobiasdiez


text:
RadioGroup lacks optionAttribute and valueAttribute

Description
The RadioGroup component lacks the optionAttribute and valueAttribute which Select and SelectMenu have, so you're forced to map existing object properties to label and value.
Also, in the context of a radio button, perhaps optionAttribute might be best-called labelAttribute.
Additional context
I'd be happy to PR this; looks like quick win.
I note that the docs would also need updating.

The RadioGroup has an optionAttribute and valueAttribute props 🤔
https://github.com/nuxt/ui/blob/dev/src/runtime/components/forms/RadioGroup.vue#L66-L73

Maybe time for me to book an eye test 😂

Actually, what it really is, is that the SelectMenu component has a full section on usage objects, but Select and RadioGroup do not:
https://ui.nuxt.com/components/select-menu#objects
I think they should at least mention it's supported, and link to the SelectMenu section for more info.
Want me to PR @benjamincanac ?

The Select mentions objects at the beginning: https://ui.nuxt.com/components/select#usage and RadioGroup always takes objects but it does miss the section about value-attribute indeed.

The sidebar sections are inconsistent too, which is a shame as the API is!
I'll see if I can find some time this week to tweak.

authors: benjamincanac davestewart

repo: nuxt/ui


text:
empty value for UInput with type number

Description
Empty value for UInput with type number sets an empty string to the model. This results in a type error instead of a required error for validation. It makes me, and probably the end users, confused. Can this be somehow resolved?

Have you tried using v-model.number?


text:
fix(DropdownMenu): correct checkbox binding in DropdownMenu.CheckboxItem

🔗 Linked issue
Resolves #2892
❓ Type of change

[ ] 📖 Documentation (updates to the documentation or readme)
[x] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
This PR fixes the DropdownMenu.CheckboxItem, which now uses the modelValue property instead of :checked and @update:checked. According to the official documentation (https://reka-ui.com/docs/components/dropdown-menu#checkboxitem), the :checked and @update:checked properties are no longer available.
📝 Checklist

[ ] I have linked an issue or discussion.
[ ] I have updated the documentation accordingly.

Thanks for the fix! Would you mind doing the same thing on the ContextMenu in the same PR? :)

I'm wondering if we should not use the same syntax as well: :model-value="item.modelValue" @update:model-value="item.onUpdateModelValue". What do you think?

I also agree to change it so that it is the same as the renka ui, it will make maintenance easier in the future

Can you take care of it or do you want me to do it?

You can do it, I won't have time now to make all the changes and test it

authors: EvertonWingert benjamincanac


text:
Fix for duplicate row IDs in log_parsing output

Description

Use the index of the incoming DF as the source of the doc field not the first column of the sequence_ids
Fix typeo in docstring for TableInfo::num_indices (unrelated)
Remove declaration for unimplemtned/unused function in python/morpheus/morpheus/_lib/include/morpheus/stages/deserialize.hpp (unrelated)

Closes #2029
By Submitting this PR I confirm:

I am familiar with the Contributing Guidelines.
When the PR is ready for review, new or existing tests cover these changes.
When the PR is ready for review, the documentation is up to date with these changes.

/merge

repo: nv-morpheus/Morpheus


text:
🛑 NVIDIA AI Enterprise Hub is down

In 1f9dee2, NVIDIA AI Enterprise Hub (https://nvaie.lab.novaglobal.com.sg) was down:

HTTP code: 0
Response time: 0 ms

Resolved: NVIDIA AI Enterprise Hub is back up in e03ed03.

repo: nvgsg/lab-upptime


text:
🛑 NVIDIA AI Enterprise Hub is down

In b106268, NVIDIA AI Enterprise Hub (https://nvaie.lab.novaglobal.com.sg) was down:

HTTP code: 0
Response time: 0 ms

Resolved: NVIDIA AI Enterprise Hub is back up in 7749a48.


text:
🛑 PufferAI HPC Portal is down

In 7a32c6f, PufferAI HPC Portal (https://hpc.lab.novaglobal.com.sg) was down:

HTTP code: 0
Response time: 0 ms

Resolved: PufferAI HPC Portal is back up in ce20341.


text:
🛑 Kubeflow ML Platform is down

In a30499d, Kubeflow ML Platform (https://kubeflow.lab.novaglobal.com.sg) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Kubeflow ML Platform is back up in 20fd2fa.


text:
🛑 PufferAI HPC Portal is down

In 1b8a15d, PufferAI HPC Portal (https://hpc.lab.novaglobal.com.sg) was down:

HTTP code: 0
Response time: 0 ms

Resolved: PufferAI HPC Portal is back up in b3ebe17.


text:
🛑 NVIDIA AI Enterprise Hub is down

In 97e6ba0, NVIDIA AI Enterprise Hub (https://nvaie.lab.novaglobal.com.sg) was down:

HTTP code: 0
Response time: 0 ms

Resolved: NVIDIA AI Enterprise Hub is back up in 4b24d8d.


text:
🛑 Kubeflow ML Platform is down

In d9cbfad, Kubeflow ML Platform (https://kubeflow.lab.novaglobal.com.sg) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Kubeflow ML Platform is back up in 1dcc2b3.


text:
🛑 Kubeflow ML Platform is down

In 32319c1, Kubeflow ML Platform (https://kubeflow.lab.novaglobal.com.sg) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Kubeflow ML Platform is back up in b64ffb2.


text:
Add Flake command

@nvie, please check this PR. It closes #75 issue. I don't know VimScript but this command declaration seems to work in my ~/.vimrc:
set number relativenumber
set background=light

call plug#begin()
Plug 'davidhalter/jedi-vim'
Plug 'nvie/vim-flake8'
Plug 'itspriddle/vim-shellcheck'
Plug 'alx741/vinfo'
Plug 'morhetz/gruvbox'
call plug#end()

if (empty($TMUX))
  if (has("nvim"))
    "For Neovim 0.1.3 and 0.1.4 < https://github.com/neovim/neovim/pull/2198 >
    let $NVIM_TUI_ENABLE_TRUE_COLOR=1
  endif
  "For Neovim > 0.1.5 and Vim > patch 7.4.1799 < https://github.com/vim/vim/commit/61be73bb0f965a895bfb064ea3e55476ac175162 >
  "Based on Vim patch 7.4.1770 (`guicolors` option) < https://github.com/vim/vim/commit/8a633e3427b47286869aa4b96f2bfc1fe65b25cd >
  " < https://github.com/neovim/neovim/wiki/Following-HEAD#20160511 >
  if (has("termguicolors"))
    set termguicolors
  endif
endif

colorscheme gruvbox
command! Flake :call flake8#Flake8()

Amazing, thanks so much, @EmilySeville7cfg!

license_source: bigquery


text:
New shell always reverts to system version

I am trying to make all new terminal sessions uses the stable version of node that I have installed.
Here is output of 'nvm ls'
         v0.12.7
->       v4.2.6
         system
default -> stable (-> v4.2.6)
node -> stable (-> v4.2.6) (default)
stable -> 4.2 (-> v4.2.6) (default)
iojs -> N/A (default

I've also added this to my .bashrc file
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm

nvm use stable

When I open a new terminal I can see the output Now using node v4.2.6 (npm v2.14.12)
But when I run node -v I get v0.12.7 I then have to run nvm use stable again and then it works as expected.
Any suggestions would be welcome, perhaps I've missed a step or misconfigured something?

This is by design. nvm alias default node will make it stick.
Make sure you're also using the latest version of nvm itself, just in case :-)

Hi
I just updated to version 0.31.0 I was on 0.29.0 before.
I tried 'nvm alias default node' via shell and also in bashrc but neither has made a difference.
Noticed when I run 'nvm current' it prints out system when opening a new window.
Thank you

@gunnx can you provide nvm debug and nvm ls output?

Output of 'nvm ls' on a new terminal window:
        v0.12.7
         v4.2.6
->       system
default -> node (-> v4.2.6)
node -> stable (-> v4.2.6) (default)
stable -> 4.2 (-> v4.2.6) (default)
iojs -> N/A (default)

Output of nvm debug on new terminal window
nvm --version: v0.31.0
$SHELL: /bin/bash
$HOME: /Users/user1
$NVM_DIR: '$HOME/.nvm'
$PREFIX: ''
$NPM_CONFIG_PREFIX: ''
nvm current: system
which node: /usr/local/bin/node
which iojs:
which npm: /usr/local/bin/npm
npm config get prefix: /usr/local
npm root -g: /usr/local/lib/node_modules

It seems like you probably have something in your bash profile files that's setting the $PATH, after nvm is sourced. Can you gist your .bashrc and/or .bash_profile, with any sensitive parts edited out?

I've merged the files into one here:
https://gist.github.com/gunnx/ee7b86b6c44aaebb3c459453670957bd

@gunnx yup, that's the problem. in bash_profile, you're sourcing bashrc first - and then after that, https://gist.github.com/gunnx/ee7b86b6c44aaebb3c459453670957bd#file-bash-extract-txt-L9-L10 take over the PATH and take precedence. I'd recommend moving https://gist.github.com/gunnx/ee7b86b6c44aaebb3c459453670957bd#file-bash-extract-txt-L3 to the bottom of bash_profile to fix it.

thanks @ljharb that did the trick, much appreciated!

I you have this line in side ~/.zshrc file just comment that out.
export PATH="/usr/local/opt/node@8/bin:$PATH"

authors: gunnx ljharb w4-alibek

repo: nvm-sh/nvm


text:
Feature Request: Allow querying the bot for current player count / triggering leaderboard on demand

It would be great if you could ask the discord bot how many players are currently connected. This info already exists, since it shows with the leaderboard, but it would be great to have on-demand.
For example: When someone types "!stats" in Discord, the bot would respond with
Active Players
Online now: 0
Players today: 3
This week: 6
All time: 6

This feature would depend on Discord Connector having an actual bot presence. Which is a future feature, but not currently possible. I definitely want to add this when we get to that point!

This would be great! At the moment everyone in my discord is complaining about "spam" from the bot. Would be great with just on demand info.
Another cool bot feature would be if one could send command to the bot. Much alike the minecraft DiscordSRV which forwards the console to a channel and also accepts commands.

authors: kristoferen lazerleif nwesterhausen

repo: nwesterhausen/valheim-discordconnector


text:
Fetch whole DB

Hi,
Thanks for the great lib
I have a question. One thing that was bizarre in the original library, it fetched the total IndexedDB into memory and query from that. Do you follow the same pattern or it is implemented another way?

See issue #4
Does that do what you are looking for?

authors: fericode nwestfall

repo: nwestfall/BlazorDB


text:
.net framework error result of  bad pathing

Its looking for stuff in an actount that doesnt exist on my machine.
c:\Users\nwool\Documents\Visual Studio 2017\P.....
im guessing its using the path of the compiled machine instead of %APPDATA% of the end user
`See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentNullException: Value cannot be null.
Parameter name: uriString
at System.Uri..ctor(String uriString)
at MultiMiner.UX.ViewModels.ApplicationViewModel.InstallBackendMinerLocally(MinerDescriptor miner) in c:\Users\nwool\Documents\Visual Studio 2017\Projects\MultiMiner\MultiMiner.UX\ViewModels\ApplicationViewModel.cs:line 2219
at MultiMiner.Win.Forms.MinerForm.ShowNotInstalledMinerWarning() in c:\Users\nwool\Documents\Visual Studio 2017\Projects\MultiMiner\MultiMiner.Win\Forms\MinerForm.cs:line 2580
at MultiMiner.Win.Forms.MinerForm.ScanHardwareLocally() in c:\Users\nwool\Documents\Visual Studio 2017\Projects\MultiMiner\MultiMiner.Win\Forms\MinerForm.cs:line 2875
at MultiMiner.Win.Forms.MinerForm.SetupApplication() in c:\Users\nwool\Documents\Visual Studio 2017\Projects\MultiMiner\MultiMiner.Win\Forms\MinerForm.cs:line 2221
at System.Windows.Forms.Form.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4470.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
MultiMiner.Win
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.Win.exe
MultiMiner.UX
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.UX.DLL
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4395.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4488.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
MultiMiner.Engine
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.Engine.DLL
MultiMiner.Utility
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.Utility.DLL
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4488.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
MultiMiner.CoinApi
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.CoinApi.DLL
MultiMiner.Xgminer.Api
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.Xgminer.Api.DLL
MultiMiner.Xgminer
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.Xgminer.DLL
MultiMiner.MobileMiner
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.MobileMiner.DLL
MultiMiner.Discovery
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.Discovery.DLL
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
System.Management
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4435.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Management/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Management.dll
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4470.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4341.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
Microsoft.GeneratedCode
Assembly Version: 1.0.0.0
Win32 Version: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
Microsoft.GeneratedCode
Assembly Version: 1.0.0.0
Win32 Version: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
MultiMiner.Remoting
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.Remoting.DLL
Microsoft.GeneratedCode
Assembly Version: 1.0.0.0
Win32 Version: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
MultiMiner.CoinWarz
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.CoinWarz.DLL
MultiMiner.WhatToMine
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.WhatToMine.DLL
Microsoft.GeneratedCode
Assembly Version: 1.0.0.0
Win32 Version: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
Newtonsoft.Json
Assembly Version: 6.0.0.0
Win32 Version: 6.0.8.18111
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/Newtonsoft.Json.DLL
System.Numerics
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
System.Runtime.Serialization
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4455.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Serialization/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll
System.Xml.Linq
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml.Linq/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll
System.Data
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4455.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
MultiMiner.Services
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.Services.DLL
MultiMiner.Blockchain
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.Blockchain.DLL
MultiMiner.ExchangeApi
Assembly Version: 4.3.1.382
Win32 Version: 4.3.1.382
CodeBase: file:///C:/Users/arcai/AppData/Local/MultiMiner/MultiMiner.ExchangeApi.DLL
Microsoft.CSharp
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4161.0
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.CSharp/v4.0_4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll
System.Dynamic
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4161.0
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Dynamic/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Dynamic.dll
Anonymously Hosted DynamicMethods Assembly
Assembly Version: 0.0.0.0
Win32 Version: 4.8.4470.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/mscorlib/v4.0_4.0.0.0__b77a5c561934e089/mscorlib.dll
Microsoft.GeneratedCode
Assembly Version: 1.0.0.0
Win32 Version: 4.8.4161.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
`

Same. Though it looks like the exception doesn't necessarily imply that it was due to "bad pathing"; all we know is that the System.Uri constructor is getting null where it should be getting a string.
The paths originally on "nwool"'s computer are just the debugging symbols, I think.

And formatting broke on your post, it interpreted the dashes as markdown header underlines ^^

authors: DeadpoolDoc svArtist

repo: nwoolls/MultiMiner

license: mit


text:
建议为sftp增加默认排序方式设置

现阶段sftp的默认排序较乱，每次手动设定按名称-类型排序后进入下一个文件目录又会使排序变乱，在寻找文件的体验上不太友好。

在删除文件后排序也会乱掉 v1.9.3

repo: nxshell/nxshell


text:
Suggestion: CPU affinity and async queue

I'm brainstorming a state management without state (it will respond reactively for messages sent to an Stream (a event bus), so, for example, when a database record is saved, a message saying that entity has changed is published then the StreamBuilder filters those messages to update all parts that should react to a change in that table).
While doing this, I've noticed that "state" is CPU dependent. For instance:
var _currentCount = 0;

Future<NewCountMessage> delayedIncrement(IsolateContext context) async {
  await Future.delayed(const Duration(seconds: 1));

  _currentCount++;

  return NewCountMessage(_currentCount);
}

Future<void> setInitialValue(IsolateContext context) async {
  _currentCount = context.arguments.nearest();

  return NewCountMessage(_currentCount);
}

This code runs fine when using only 1 CPU (because there will be only one isolate and _currentCount will be bound to it).
While running on multiple CPU's, isolate_supervior queue those methods in different "threads". That's nice, that's what we want to ensure we can use all CPU's, but, for this particular piece of code, I must use always the same supervisor (otherwise there will be a lot of copies of _currentCount).
This is what I'm doing to implement affinity:
import 'package:isolate_supervisor/isolate_supervisor.dart';

typedef IsolateFuture<T> = Future<T> Function(IsolateContext);
typedef IsolateStream<T> = Stream<T> Function(IsolateContext);

class Thread {
  static final instance = Thread._();
  Thread._();

  final _supervisors = List<IsolateSupervisor>.generate(
    IsolateSupervisor.availableProcessors,
    (index) => IsolateSupervisor.spawn(count: 1, lazily: false),
  );

  Future<T> run<T>(int cpu, IsolateFuture<T> isolateFuture, [List<dynamic> params]) {
    return _supervisors[cpu % _supervisors.length].compute(isolateFuture, params);
  }

  void start<T>(int cpu, IsolateFuture<T> isolateFuture, [List<dynamic> params]) {
    _supervisors[cpu % _supervisors.length].compute(isolateFuture, params);
  }

  Stream<T> stream<T>(int cpu, IsolateStream<T> isolateStream, [List<dynamic> params]) {
    return _supervisors[cpu % _supervisors.length].launch(isolateStream, params);
  }
}

The idea here is to have one cpu slot (even if it doesn't exist) to each background work I can do (for example, 0 for database (where SQFLite database is global in its supervisor, 1 for web calls (where HttpClient is global to its supervisor) and 2 for some generic work (such as image manipulation, etc.).
Also, would be lovely if the supervisor could work with a stream that is executed in a isolate.
For example:
import 'dart:async';

import 'thread.dart';

class Mediator {
  static final instance = Mediator._();
  Mediator._();

  final _streamController = StreamController.broadcast();

  Stream get messageStream => _streamController.stream;

  void publish(dynamic message) {
    _streamController.add(message);
  }

  void isolate<T>(IsolateFuture<T> isolateFuture, [List<dynamic> params]) {
    Thread.instance
        .run(0, isolateFuture, params)
        .then((response) => _streamController.add(response))
        .catchError((error) => _streamController.addError(error));
  }
}

That code allows me to send messages without need to await them, then they are processed somewhere else (notice the last function: it is processed in an isolate that returns the response message so I can broadcast it).
This allows me to do things like this:
import 'package:flutter/material.dart';
import 'package:isolate_supervisor/isolate_supervisor.dart';

import 'kfx/mediator.dart';

@immutable
class NewCountMessage {
  final int count;

  const NewCountMessage(this.count);
}

var _currentCount = 0;

Future<NewCountMessage> delayedIncrement(IsolateContext context) async {
  await Future.delayed(const Duration(seconds: 1));

  _currentCount++;

  return NewCountMessage(_currentCount);
}

Future<void> setInitialValue(IsolateContext context) async {
  _currentCount = context.arguments.nearest();

  return NewCountMessage(_currentCount);
}

Future<void> main() async {
  Mediator.instance.isolate(setInitialValue, [15]);
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatelessWidget {
  const MyHomePage({Key key, this.title}) : super(key: key);

  final String title;

  void _incrementCounter() {
    Mediator.instance.isolate(delayedIncrement);
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            const Text('You have pushed the button this many times:'),
            StreamBuilder<NewCountMessage>(
              stream: Mediator.instance.messageStream.where((e) => e is NewCountMessage).cast<NewCountMessage>(),
              builder: (context, snapshot) {
                final style = Theme.of(context).textTheme.headline4;

                if (snapshot.hasData == false) {
                  return Text("0", style: style);
                }

                if (snapshot.hasError) {
                  return Text(snapshot.error.toString(), style: style);
                }

                return Text(snapshot.data.count.toString(), style: style);
              },
            ),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: const Icon(Icons.add),
      ),
    );
  }
}

The idea here is to be able to call a database load method without having to await it, execute it on an isolate and them broadcast the results for whatever number of StreamBuilders interested in that particular message (I can filter the stream even for the Id of the table, so it will update itself only if it displaying the record with id = x).
I'm still thinking how I would do dependencies (for example: an insert in the table X should broadcast a message Y so all StreamBuilders showing data from that table are updated). I can't manipulate the event bus in the isolate (because it would be a copy of it)
BTW, what is the purpose of IsolateContext.sink? Can I use it to comunicate with the main thread? If so, how I do that?

Another related suggestion:
In the above sample, the counter is delayed 1 second (emulating some slow web call, for example). If you hit the button 3 times, all increments are called in a sequence (so the entire code will run in 3 seconds).
It would be awesome if we could create parallel tasks (those 3 buttons click would still run on an isolate, but it would run in parallel on the event loop, like the main thread would do).

Hi @JCKodel 👋
Thanks for opening an issue!
Theoretically it is possible to implement parallel tasks in isolate, but it may lead to some rescrictions: for example, it will become impossible to cancel a one specific task (because as far as I know, there isn't a way to cancel a Future).
Further implementation needs to be considered.

Yes, IsolateContext.sink is added for more agile interaction with the main thread, mostly while working with tasks by the IsolateSupervisor.execute method.
Also, by using the IsolateContext.compute method, you can return the value in advance by sink methods. This action will complete the execution of compute with the returned value. And the task in the isolate will remain active and will be able to perform additional operations, like closing connection with the database.

The idea to CPU affinity is interesting, I will try to implement this feature in the next version.
I am thinking maybe we can have something like IsolateSupervisor[0].compute. Perhaps you have any suggestions on how to do this more conveniently?

You can just use IsolateSupervisor.execute within your Mediator class. Kind of:
class Thread {
  IsolateTask<T> run<T>(int cpu, IsolateFuture<T> isolateFuture, [List<dynamic> params]) {
    return _supervisors[cpu % _supervisors.length].execute(isolateFuture, params);
  }
}

class Mediator {
  final _streamController = StreamController.broadcast();

  void isolate<T>(IsolateFuture<T> isolateFuture, [List<dynamic> params]) {
    final task = Thread.instance.run(0, isolateFuture, params);
    _streamController.addStream(task.output);
  }
}

Hope that helps 👍
P.S. Im completing central registry for values that can be used across isolates now, I can’t estimate deadlines yet.

authors: JCKodel nxtSwitch


text:
🛑 Harmony Bot Website is down

In 30613e8, Harmony Bot Website ($HARMONY_WEB) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Harmony Bot Website is back up in 14b0780.

repo: nxvvvv/uptime


text:
🛑 Harmony Bot is down

In dc556d9, Harmony Bot ($HARMONY) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Harmony Bot is back up in dbca700.


text:
Prod deploys before beta is finished

We need the prod deploy to await the dev deploy

Per Andrew, pods should be healthy in dev before starting prod. This will allow integration tests to be run to validate the environment.

Duplicated by https://github.com/nycmeshnet/meshdb/issues/731

Right now, there's nothing in our CI that stops prod2 from going out whether or not dev3 is crashlooping. There ought to be a way to gate deployments based on Datadog monitors/metrics.

authors: Andrew-Dickinson WillNilges james-otten

repo: nycmeshnet/meshdb


text:
Update Webhooks Ip Addresses

An Array is expected, not an object. ListResponse was generating the wrong result.
https://nylas.atlassian.net/browse/TW-2596
License
I confirm that this contribution is made under the terms of the MIT license and that I have the authority necessary to make this contribution on behalf of its copyright owner.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (d5fb9f8) 78.53% compared to head (386577f) 78.53%.

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #213   +/-   ##
=========================================
  Coverage     78.53%   78.53%
  Complexity      199      199
=========================================
  Files            29       29
  Lines           722      722
  Branches         69       69
=========================================
  Hits            567      567
  Misses          117      117
  Partials         38       38

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

authors: atejada codecov-commenter

repo: nylas/nylas-java


text:
nylas --background doesn't open N1 in the background

Are there any related issues?
Not that I can tell.
What operating system are you using?
Ubuntu 16.04
What version of N1 are you using?
Nylas N1 0.4.40

Bug?
Do you have any third-party plugins installed?
No
Is the issue related to a specific email provider (Gmail, Exchange, etc.)?
No
Is the issue reproducible with a particular attachment, message, signature, etc?
Probably not.

Feature Request?
Does this feature exist in another mail client or tool you use?
It used to work correctly here in N1.

Just to clarify...
I have a startup script that runs nylas --background. However, in a recent update, this now brings up the main N1 interface instead of opening in the background.

Same for me, the program does not start in the background with "nylas --background" (on Ubuntu 16.10).

Same here. nylas --background in the startup script doesn't open in the background for me on Ubuntu Gnome 16.04, but rather the main interface opens (as if the --background option has no effect).

Same problem here, running nylas-mail --background opens a window with the "Welcome" image.  Running without the background option works just fine.
Related issues: None
OS: Ubuntu Gnome 17.04
Nylas version: 2.0.14
Third-party plugins: No
Not related to a specific email provider, message, etc.

Same problem, Ubuntu 17,04 and Nylas Mail 2.0.32

Ahhh gotcha. Cheers for the links.

repo: nylas/nylas-mail


text:
Stop spamming, read the regulations of GDPR.

Hi,
I haven't heard back from anyone on the team and was wondering if Nylas APIs integrations are of any interest to you?
If it makes sense to talk, let me know how your calendar looks. You can also schedule a time to speak here.
If this is not your department, who is the appropriate person for me to talk to?
Kristina Oh
Account Executive @ Nylas
(415) 484-3106
Chat with me here.
To unsubscribe from these emails, reply with unsubscribe in the subject line.
On Jun 1, 2018 5:25 PM, "Kristina Oh" kristina@nylas.com wrote:
Hi,
Nylas can add a lot of value when it comes to integrating email, calendar and contacts into your platform. I'd love to share how we're doing this, and how we've helped our customers save eng time and increase revenue through our APIs.
If you'd like to enhance your customer experience, and free up your development time, please book in a time to speak with me via the link in my signature below.
Looking forward to hearing from you!
Kristina Oh
Account Executive @ Nylas
(415) 484-3106
Chat with me here.
To unsubscribe from these emails, reply with unsubscribe in the subject line.
On May 30, 2018 10:15 PM, "Kristina Oh" kristina@nylas.com wrote:
Hi,
I hope I'm not bothering you -- could you please get me in contact with the person at YetiForce in charge of engineering or product?
I'd like to share how Nylas can save YetiForce money and time through our email, calendar, and contacts APIs, while driving end user engagement in your platform.
Read how we've helped Pipedrive, Velocify and Leadgenius to do this - We can do the same for YetiForce!
Kristina Oh
Account Executive @ Nylas
(415) 484-3106
Chat with me here.
To unsubscribe from these emails, reply with unsubscribe in the subject line.
On May 28, 2018 6:45 PM, "Kristina Oh" kristina@nylas.com wrote:
Hi Pabiszczak,
We know it's a pain when your product roadmap stalls because you're fixing bugs for mailbox connections.
Let Nylas do it for you - we power the email, scheduling, and contacts sync for CRMs like Pipedrive, Lever and Infusionsoft though our out of the box integrations, freeing up time for your eng and product team to focus on higher priority items.
Let's chat to see how we can work with YetiForce to do this - you can book in a time to speak in the calendar link below.
Kristina Oh
Account Executive @ Nylas
(415) 484-3106
Chat with me here.
To unsubscribe from these emails, reply with unsubscribe in the subject line.
On May 24, 2018 8:46 PM, "Kristina Oh" kristina@nylas.com wrote:
Hi Pabiszczak,
I tried giving you a call a couple of days ago and was hoping we could schedule a time to discuss email, calendar and contacts integration for your current product offering.
Are you the right person to have this conversation with?
If not, could you please put me in contact with either your Head of Product and/or Head of Engineering?
Kristina Oh
Account Executive @ Nylas
(415) 484-3106
Chat with me here.
To unsubscribe from these emails, reply with unsubscribe in the subject line.
On May 22, 2018 4:28 PM, "Kristina Oh" kristina@nylas.com wrote:
Hi Pabiszczak,
My name is Kristina, and I came across your company on my search for platforms that could benefit from our email, calendar and contacts API. Are you the right person to be speaking with about these integration capabilities for YetiForce?
Companies like Pipedrive, Velocify, and Infusionsoft currently use our out of the box integrations to access 100% of all mailbox providers (Gmail, Exchange, and IMAP) and provide their customers with direct emailing, scheduling, and contact syncing - saving their eng and product teams up to 18 months of development time.
Would love to speak with you on how YetiForce and Nylas can collaborate. When would be a good time to speak?
Alternatively, you can book in a time through the link in my signature below!
Looking forward to it.
Kristina Oh
Account Executive @ Nylas
(415) 484-3106
Chat with me here.

Sorry about this – we've notified our sales team. You shouldn't receive any more emails from us.
Regards,

rly?

Hi Pabiszczak,

Sending one last email to gauge interest in exploring our email, calendar and contacts APIs.
I know our integrations will add a lot of value to YetiForce, and would love the opportunity to share this with you.
Any interest on your end in moving the conversation forward? If so, please email me directly or book in a time with me here - https://my.timekit.io/kristina
Kristina Oh
Account Executive @ Nylas
(415) 484-3106
Chat with me here.

Sorry, wires got crossed. That should be fixed now.
Again, my apologies.

authors: bpabiszczak khamidou


text:
better error handling

better error handling for certain situations, especially when pasting in multiple components.
if one of the pasted components errors out (e.g. gives a 502 or 500 error), this will error out the whole operation rather than silently failing to paste

Coverage decreased (-0.4%) to 74.276% when pulling 08faaab45e522b34874f020315948455ec6b7629 on server-errors into 5411dcb81cd77a1b6a7949ca0c75767fb1dc1ec3 on master.

authors: coveralls nelsonpecora

repo: nymag/clay-kiln


text:
Bottom sheet animation doesn't work with "height: 'auto'"

I have a simple bottom sheet mounted with fade animation setting, and I'm trying to set the height of it according to the content. It works with setting the container style with height: 'auto' (like the code below), but that cancels the slide bottomsheet animation totally, it justs fades away a second later. Is there a way to do this?
customStyles={{      container: {          height: 'auto',          maxHeight: 300,      } }}

egger issue!
please update.

Add animationType the animation will be less raw while waiting for an update

repo: nysamnang/react-native-raw-bottom-sheet


text:
sortMethodArguments ... privateInputs.length Cannot read properties of undefined (reading 'length') on TokenContractV2

With this minimal code
import { AccountUpdateForest, method, PublicKey, TokenContractV2, UInt64 } from 'o1js';

export class MinaToken extends TokenContractV2 {
  @method
  async approveBase(updates: AccountUpdateForest) {
    this.checkZeroBalanceChange(updates);
  }

}

Create a simple zkApp instance
const zkAppPrivateKey = PrivateKey.random();
const zkAppPublicKey = zkAppPrivateKey.toPublicKey();
const zkApp = new MinaToken(zkAppPublicKey);

It's error
D:\projects\create-mina-token\contracts\node_modules\o1js\src\lib\proof-system\zkprogram.ts:812
  for (let i = 0; i < privateInputs.length; i++) {
                                    ^

TypeError: Cannot read properties of undefined (reading 'length')
    at sortMethodArguments (D:\projects\create-mina-token\contracts\node_modules\o1js\src\lib\proof-system\zkprogram.ts:812:37)
    at method (D:\projects\create-mina-token\contracts\node_modules\o1js\src\lib\mina\zkapp.ts:133:29)
    at __decorateClass (file:///D:/projects/create-mina-token/contracts/src/MinaToken.ts:1:374)
    at <anonymous> (d:\projects\create-mina-token\contracts\src\MinaToken.ts:5:9)
    at ModuleJob.run (node:internal/modules/esm/module_job:218:25)
    at async ModuleLoader.import (node:internal/modules/esm/loader:329:24)
    at async loadESM (node:internal/process/esm_loader:34:7)
    at async handleMainPromise (node:internal/modules/run_main:113:12)

Node.js v20.10.0

The code works in my environment.
What might happen for you is that the @method decorator doesn't work as expected in your environment. Check out the TS config of our project template, which among other things configures decorator support: https://github.com/o1-labs/zkapp-cli/blob/main/templates/project-ts/tsconfig.json

It seem to be due to the use of tsx
If build with tsc and run it works fine. Thanks

authors: Chomtana mitschabaude


text:
add Lightnet to README

We have basic getting started zk commands in the README, so let's add zk lightnet with links to the docs

closing in favor of the community-contributed PR, which I updated with approved language https://github.com/o1-labs/zkapp-cli/pull/562
move along, nothing to see here (anymore)
make today awesome!


text:
Cursor is not black enough in the light color theme

The cursor assumes the same color as the adjacent character in light color theme and is often quite difficult to notice. It would be great to make the cursor thicker and distinctly black-color in the light color theme.

Adding caret-color: black; to the .paren-soup class in paren-soup-light.css appears to fix this in chrome, but not in firefox. In the firefox inspector it says "invalid property value", even though the docs indicate I'm using it correctly...

I added the CSS property I mentioned.

authors: kumarshantanu oakes

repo: oakes/Nightlight

license: unlicense


text:
[VL] Forbid unsupported write using velox

What changes were proposed in this pull request?
This pr does two things:

Forbid velox write with ctas. It can be supported in Spark3.4
Forbid velox dynamic partition and bucket write. As mentioned at https://github.com/oap-project/gluten/issues/2042, it would fail if we use dynamic partition write with velox. There is a lot of work need to be done. This pr just throw exception in advance when contains partition or bucket.

How was this patch tested?
add test

cc @JkSelf @zhouyuan thank you

repo: oap-project/gluten


text:
Remove "sudo" from Velox.md

"sudo" should not be used in the sample commands.
Users should elevate privileges knowingly rather than through copy-paste
This also fixes a typo in one of the commands (misplaced sudo)

Velox's setup_ubuntu.sh use sudo to install dependencies. We put it here because sudo isn't installed in ubuntu22.04 in docker.

Since it is stale, I will close it, you can reopen it if have new progress.

authors: FelixYBW estoianovici jinchengchenghh


text:
[NSE-153] Fix incorrect quries after enabled Decimal

Fixed: https://github.com/oap-project/native-sql-engine/issues/153

@rui-mo , I submitted this FIX, let's have a check

https://github.com/oap-project/native-sql-engine/pull/154/commits/ce59227a7e96da01494de33a0b25055313bae5c4 fixed Q54

repo: oap-project/native-sql-engine


text:
Fix type in decimal_avg and decimal_sum while spilling

We have been playing around with spill in partial aggregate when we noticed velox crashes when it read data back from spill in partial aggregate. This happens when input type is of ShortDecimal like decimal(12,4).
Both these agg function produces intermediate sum of LongDecimal irrespective of input. So when input is of LongDecimal it works but in case of ShortDecimal this respective dynamic type cast fails producing null pointer causing crash.

cc: @zhouyuan

cc @liujiayi771

@rui-mo For sum agg, this probloem has been fixed in upstream PR. But for avg agg, I think the intermediate type will always been int128_t, as discussed in https://github.com/facebookincubator/velox/pull/6020/files#r1302694957, it seems that TSumResultType in this modification will always be int128_t.

@mskapilks could you please help to review this patch? https://github.com/facebookincubator/velox/pull/6020
@rui-mo actually has a new branch based on meta/velox (https://github.com/oap-project/velox/tree/update) which will become the new "main" branch soon.
thanks, -yuan

authors: liujiayi771 mskapilks rui-mo zhouyuan

repo: oap-project/velox


text:
runtime-sdk: Use gas for authentication

A squashed version of #150 for easier review.

I've rebased #150

authors: kostko pro-wh

repo: oasisprotocol/oasis-sdk


text:
grpc error details, protobufjs variant

this other library has a smaller bundle size impact

also typescript declarations :heart_eyes:

error preview

npm goes in alphabetical order and not topological order :skull:

here's me putting the proto stuff outside of src

gotta add the compiled proto to the package.json files list

oh also adding changelog


text:
Fix license headers of source code

The license headers of Tradista source code are not correct. Indeed, the headers currently in use should be used when the related project is owned by the Apache Foundation, which is not the case of Tradista.
The aim of the ticket is to change the headers so they become correct headers for a project under Apache 2 license, not owned by the Apache Foundation.
In addition, SPDX will be used so automation of license detection is eased.
Version : 2.1.0

It will be part of v2.2.0

repo: oasuncion/tradista


text:
Removed spaces when sending parameters in header for some implementations

I've noticed that some oauth-server implementations choke on the empty space after a key so that the rest of the parameter-keys in the header don't get evaluated and the server will throw a 400 Bad Request.
Since this is probably a wrong implementation on the server-side, it isn't that big of a problem in this lib. But it can't be wrong to make the client more flexible to work with these situations without breaking things; this commit fixes the problems I was facing. Existing test modifications consist of making them work without the spaces after a comma, which they do now.
I am just going ahead and send in this pull request; decide for yourself if it is going to be pulled in.
My project def. needs this patch; caused me headaches and several hours of digging and poking around in Wireshark ;)

Hi,
I have recently come onboard to help maintain oauth-xx.
Thank you so much for your contribution, really, big or small, help is always welcome.
But this is a very old pull request and therefore I have to assume this problem has probably already been solved by somebody else and this PR was forgotten in time.
It would be very good if you could rebase or re-patch this so we can all merge this.
If you do believe there is any chance this issue has not been fixed, please click on re-open and I will come help you with it.
Best,
James Pinto.

authors: karb thejamespinto

repo: oauth-xx/oauth-ruby


text:
How to renew the access token, when oauth2 drops the refresh token?

Hi,
My API provider uses a standardized OAuth 2.0 token-based authentication flow. Now I get stuck on finding a way to refresh the access token.
2.7.1 :001 > require 'oauth2'
2.7.1 :002 > client = OAuth2::Client.new('client_id', '', grant_type: 'refresh_token', site: 'site', token_url: 'token_url', redirect_uri: 'redirect_uri')
2.7.1 :003 > client.auth_code.authorize_url(access_type: 'offline')
2.7.1 :004 > tokens = client.auth_code.get_token('auth_code', 'grant_type': 'authorization_code')
2.7.1 :005 > tokens.refresh_token
 => nil

According to the API guide, the response attributes are
{
  "access_token": "string",
  "expires_in": 0,
  "refresh_token": "string",
  "refresh_token_expires_in": 0,
}

But as shown in line 5, the tokens.refresh_token was nil. It looks like it's intentional per https://github.com/oauth-xx/oauth2/issues/321. How am I supposed to renew the access token, since a refresh token is required when using refresh token grant?
Here is the error. I waited until the access token expired, then tried to renew it:
2.7.1 :006 > tokens.expired?
 => true
2.7.1 :007 > new_tokens = tokens.refresh!
Traceback (most recent call last):
        1: from (irb):95
RuntimeError (A refresh_token is not available)

Did I miss anything?

I honestly do not know how to accomplish the flow you want, and have never done it myself.  If you do figure it out please document the solution here, or contribute documentation to the readme, or wiki.
This gem is on life support!
Any effort you could put into figuring out how to solve #321 would be greatly appreciated.  I doubt I will have time to invest in solving this bug myself.  This gem is too large a project to be maintained by a tiny team of people who only use it for narrow use cases.  We are always looking for more maintainers #307 !  Please lend a hand if you can.  I have a plan to dedicate more of my time to supporting this gem soon, but it keeps getting delayed, because the world is on fire, and I only have 24 hours in a day.
I volunteered to maintain this gem because it is important to the community, and the Ruby community matters to me, but I and the other maintainers are stretched thin.  I hope more people will step up to improve this tool!

I feel you and thank you for your contribution to the community!
Unfortunately I couldn't find a way and had to roll my own solution instead of using a gem.
There are two issues here:
First of all, which is also the issue I encountered above. The gem drops refresh token on the Authorization Grant response. The graph below is from the Introduction section in RFC6749
  +--------+                                           +---------------+
  |        |--(A)------- Authorization Grant --------->|               |
  |        |                                           |               |
  |        |<-(B)----------- Access Token -------------|               |
  |        |               & Refresh Token             |               |
  |        |                                           |               |
  |        |                            +----------+   |               |
  |        |--(C)---- Access Token ---->|          |   |               |
  |        |                            |          |   |               |
  |        |<-(D)- Protected Resource --| Resource |   | Authorization |
  | Client |                            |  Server  |   |     Server    |
  |        |--(E)---- Access Token ---->|          |   |               |
  |        |                            |          |   |               |
  |        |<-(F)- Invalid Token Error -|          |   |               |
  |        |                            +----------+   |               |
  |        |                                           |               |
  |        |--(G)----------- Refresh Token ----------->|               |
  |        |                                           |               |
  |        |<-(H)----------- Access Token -------------|               |
  +--------+           & Optional Refresh Token        +---------------+

               Figure 2: Refreshing an Expired Access Token

   The flow illustrated in Figure 2 includes the following steps:

   (A)  The client requests an access token by authenticating with the
        authorization server and presenting an authorization grant.

   (B)  The authorization server authenticates the client and validates
        the authorization grant, and if valid, issues an access token
        and a refresh token.

  Omitting steps (C) to (F) as they are irrelevant...

   (G)  The client requests a new access token by authenticating with
        the authorization server and presenting the refresh token.  The
        client authentication requirements are based on the client type
        and on the authorization server policies.

   (H)  The authorization server authenticates the client and validates
        the refresh token, and if valid, issues a new access token (and,
        optionally, a new refresh token).

As we can see from step (B), the first refresh token must be included in the response so it can be used to renew access token in step (G), while the gem dropped it on purpose.
Secondly, as of the Optional Refresh Token in step (G), which is being discussed in #321. According to the refresh token section in RFC6749
1.5.  Refresh Token

   Refresh tokens are credentials used to obtain access tokens.  Refresh
   tokens are issued to the client by the authorization server and are
   used to obtain a new access token when the current access token
   becomes invalid or expires, or to obtain additional access tokens
   with identical or narrower scope (access tokens may have a shorter
   lifetime and fewer permissions than authorized by the resource
   owner).  Issuing a refresh token is optional at the discretion of the
   authorization server.  If the authorization server issues a refresh
   token, it is included when issuing an access token

We can see that Issuing a refresh token is optional at the discretion of the authorization server. So if the authorization server decided to issue a refresh token, does it really make sense for the gem to drop it?
Update, I took another look at the section which is mentioned by @matt-glover in the same github issue, and now I understand why he decided to drop the refresh token.
He was referring to 4.4.3. Access Token Response in the Client Credentials Grant section, which is a different workflow.
If you would take a look at the 4.1. Authorization Code Grant section, which clearly states that a refresh token could be included in the response.
4.1.4.  Access Token Response

   If the access token request is valid and authorized, the
   authorization server issues an access token and optional refresh
   token as described in Section 5.1.  If the request client
   authentication failed or is invalid, the authorization server returns
   an error response as described in Section 5.2.

   An example successful response:

     HTTP/1.1 200 OK
     Content-Type: application/json;charset=UTF-8
     Cache-Control: no-store
     Pragma: no-cache

     {
       "access_token":"2YotnFZFEjr1zCsicMWpAA",
       "token_type":"example",
       "expires_in":3600,
       "refresh_token":"tGzv3JOkF0XG5Qx2TlKWIA",
       "example_parameter":"example_value"
     }

In summary, it's "at the discretion of the authorization server" to return a refresh token or not. The gem should present any data received from the server to the user unopinionated. If a refresh token is not necessary, the server simply will not return it in the first place. I don't think the gem should make the decision to drop it or not.

@evanhdc Thanks for the work you put in here.  I will work on these changes for a version 2.1 release, now that v2 is finally (after 5 years!) done.

Since #321 is mentioned here, I'm assuming you are using client credentials grant.
If so, you can get new access token anytime using client credentials.
You don't need to refresh them at all.
That's why RFC 6749 doesn't define refresh token in such flow.

@nov That makes sense, but an argument that was made elsewhere is that the server should know what it is doing.  If there is a refresh token this gem should send it along without attempting to enforce some arbitrary rule that only applies to a specific use case.

yeah, passing given values without modification is OK as a library.
But the answer to the question "How to renew the access token, when oauth2 drops the refresh token?" is DO NOT REFRESH.

authors: evanhdc nov pboling


text:
Add style props for section container

Add style props for styling section container.

Closing as duplicate of #247

authors: chinloongtan iRoachie

repo: oblador/react-native-collapsible


text:
Missing check-circle-outline icon for MaterialDesign

[x] Review the documentation: https://github.com/oblador/react-native-vector-icons
[x] Search for existing issues (including closed issues): https://github.com/oblador/react-native-vector-icons/issues

Environment
macOS Mojave 10.14.15
iOS 12.2
react-native-vector-icons 4.6.1

Description
I attempted to use this icon https://material.io/tools/icons/?icon=check_circle_outline&style=baseline in a component and found that it was not available.

Reproducible Demo
import React, { Component } from 'react';
import Icon from 'react-native-vector-icons/MaterialIcons';

export default class MissingIconComponent extends Component {
    public render() {
        return (<View><Icon name="check-circle-outline" /></View>);
    }
}

Meant to use check_circle_outline, the icon is still not found after this change.

name should be "md-checkmark-circle-outline" not check_circle_outline?

That didn't work for me. I tried "md-checkmark-circle-outline", "md_checkmark_circle_outline", "checkmark-circle-outline", and "checkmark_circle_outline" with no luck.

A temporary fix is to use the Community Material icon - the same icon name should produce the same icon. I haven't figured out why though...
'react-native-vector-icons/MaterialCommunityIcons';

I have same issue when using Checkbox Component. There is any fix of it?

Check that your icon name conforms to the required naming convention.
https://oblador.github.io/react-native-vector-icons/
In your case you missed the dash between check and box.
Try check-box-outline-blank.
Op made the same mistake not using check-circle.

Sorry, wrong repository to report :pray:

repo: oblador/react-native-vector-icons


text:
Multicolor icons fonts with icomoon

How i can generate a multicolor icon?
i have added this icon to icomoon

and it generated this selection.json

{
      "icon": {
        "paths": [
          "M768.043 1002.667c71.296-51.755 191.957-161.237 191.957-243.072 0-66.347-48.341-105.941-95.061-105.941-51.968 0-71.296 35.797-96.939 78.208-25.685-42.411-45.013-78.208-96.939-78.208-46.72 0-95.061 39.637-95.061 105.941 0 81.835 120.661 191.317 192.043 243.072v0 0z",
          "M660.629 130.987c23.552 0 42.667 19.115 42.667 42.667s-19.115 42.667-42.667 42.667c-23.552 0-42.667-19.115-42.667-42.667s19.115-42.667 42.667-42.667v0zM660.629 258.987c47.061 0 85.333-38.272 85.333-85.333s-38.272-85.333-85.333-85.333c-47.061 0-85.333 38.272-85.333 85.333s38.272 85.333 85.333 85.333v0zM790.037 271.616l-502.101 511.659-236.501-237.739 501.12-502.869h237.483v228.949zM832.704 280.32v-258.987c0-11.819-9.515-21.333-21.333-21.333h-267.691c-5.675 0-11.136 2.219-15.147 6.272l-522.325 524.203c-8.277 8.32-8.277 21.76 0 30.080l266.667 268.16c4.011 4.011 9.472 6.272 15.147 6.272h0.085c5.675 0 11.136-2.347 15.104-6.357l523.392-533.333c3.883-4.011 6.101-9.387 6.101-14.976v0zM786.325 976.128c-84.437-63.872-170.667-155.733-170.667-216.576 0-52.949 37.461-84.608 73.728-84.608 36.139 0 50.048 20.352 75.52 62.677l3.2 5.248c7.723 12.757 28.715 12.757 36.48 0l3.157-5.248c25.515-42.325 39.381-62.677 75.563-62.677 36.224 0 73.685 31.659 73.685 84.608 0 60.8-86.187 152.661-170.667 216.576v0zM883.307 632.277c-49.536 0-75.819 27.179-96.981 59.051-21.163-31.872-47.403-59.051-96.939-59.051-57.216 0-116.395 47.616-116.395 127.275 0 111.531 180.309 245.461 200.832 260.395 3.755 2.688 8.192 4.053 12.544 4.053 4.437 0 8.789-1.408 12.544-4.096 20.565-14.933 200.747-148.907 200.747-260.352 0-79.659-59.136-127.275-116.352-127.275v0z"
        ],
        "attrs": [
          {
            "fill": "rgb(237, 64, 62)"
          },
          {
            "fill": "rgb(0, 0, 0)"
          }
        ],
        "isMulticolor": true,
        "isMulticolor2": false,
        "grid": 0,
        "tags": [
          "list-to-eat"
        ],
        "colorPermutations": {
          "1129207541198208213123764621255171013850561": [
            {
              "f": 4
            },
            {
              "f": 0
            }
          ]
        }
      },
      "attrs": [
        {
          "fill": "rgb(237, 64, 62)"
        },
        {
          "fill": "rgb(0, 0, 0)"
        }
      ],
      "properties": {
        "order": 35,
        "id": 44,
        "name": "list-to-eat",
        "prevSize": 32,
        "code": 59686,
        "codes": [
          59686,
          59687
        ]
      },
      "setIdx": 0,
      "setId": 0,
      "iconIdx": 33
    },

but i see this in my app

I'm guessing it's an issue with your source file: borders/lines are not supported. But ultimately I'm not sure if multiple colors are supported by Icomoon.

@sarovin  +1 how to multi color, do you solve it

+1 Same issue

IcoMoon gives me the following warning when downloading my font:

Multicolor glyphs take more than one character code and cannot have ligatures.
Font glyphs cannot have more than one color by default. Using CSS, IcoMoon stacks multiple glyphs on top of each other to implement multicolor glyphs. As a result, these glyphs take more than one character code and cannot have ligatures.
To avoid multicolor glyphs, re-import your SVG after changing all its colors to a single color.

This won't work unfortunately :(
Instead I'm using individual SVG files with react-native-svg-uri. It works! 👍

Closing this as it's not actionable for me.

authors: anubhavDaffodil cooperka oblador sarovin tofrookie


text:
Fix line-height to icon size

React Native Vector Icons passes style props down to React Native's Text component. Because RNVI does not specify a line-height value, the Text component defaults to lineHeight: 'normal'. This can result in icons that are taller than expected when using RNVI with React Native Web, because, as stated on MDN:

Desktop browsers (including Firefox) use a default value of roughly 1.2, depending on the element's font-family.

This PR ensures the icon size is always passed as the lineHeight to avoid this issue.

Does this affect native in any way? If so should we only include it for web maybe?

I'm closing this due to inactivity/no response from author.

why closed it? it is also affect in android @oblador

authors: dsongman jeffie oblador


text:
Allow implicit globals.

Runtimes can now be constructed with a whitelist of implicit global names. For each name, a corresponding reference that would be otherwise unresolved is now implicitly resolved to an variable whose value is the global. Unlike “reserved” globals (references to which are not considered inputs), implicit globals are treated as inputs, and thus can be overridden with local variables.
I see two downsides with this approach:

The global value is captured at the time the referencing variable is defined. This means it’s not a good idea to reference globals that change over time (such as, I dunno, window.status?). Fortunately for all use cases I can think of, the globals we want to reference are immutable, such as Blob or ImageData.

Referencing an implicit global is less efficient than a reserved global: it requires creating an implicit variable and being passed through as an input. A more efficient approach would track potential global references separately, not treat them as inputs if they are global references, replacing them with inputs if they are masked by a local variable. But that’s not currently possible as it would involve changing the variable definition function, which needs to list the inputs (including global references) as arguments. But perhaps this is acceptable, or perhaps it would be better to consider more general optimizations to the runtime?

With this change in place, we could remove some reserved globals from notebook-compiler (such as restricting it to language built-ins such as Array, Infinity, isNaN, etc.), and define a larger set of implicit globals in notebook (that includes browser features such as fetch, File, FileList, etc.).

Interesting!
Both concerns 1 and 2 seem fine to me for now — currently we're the only ones with interesting reactive global values that change over time (now, width) ... not the window object.
A future optimization change could also optimize unmasked globals by splicing them into the list of arguments, and passing them directly into variable._definition.apply() — instead of resolving them as inputs for each re-computation.
The more important UI change for us to make here, in my opinion, is to distinguish the two classes of "globals" for our authors. After this, globals and built-ins should probably have different (but similar) colors — and clear messaging about the fact that it's alright to shadow a "global", but you can't shadow a reserved "built-in".
Also it's a little murky to me where you draw the line: Why shouldn't you be able to mask Array, or isNaN? JavaScript lets you do it. Why is FileList less untouchable?

We could relax the reserved list in the future, and perhaps eliminate it completely in favor of the implicit list, but I’m a little worried about the overhead of doing that so I don’t want to do that with this PR.
Two other thoughts:

The implicit globals list could default to Object.getOwnPropertyNames(window), perhaps filtering to those values that are not undefined.

The globals could be specified as a function rather than an iterable, in which case the function would be called and return the value for the corresponding global; if this value is undefined, then the reference will be unresolved (and throw a ReferenceError). That means we could define the global function simply as name => window[name], with no hard-coded list, but the downside is that a notebook could likewise set a global which could lead to nondeterministic (or… less deterministic, anyway) behavior.

1: Out of curiosity, Object.getOwnPropertyNames(window) is currently 910 names long on Chrome! That's a lot of globals to pre-emptively define...
I do like option number 2 a fair amount. The onus can be on the author not to use globals in an unsafe way, and we can just lazily try to look up globals as they are used. The problem with that approach seems to be more with our syntax highlighting. Without a list of known globals, our highlighter will have to assume that every valid identifier you type could be a valid reference, and will be unable to grey-out typoed identifiers.
... Unless we adopt a hybrid approach, and pass Object.getOwnPropertyNames(window) to the CodeMirror for highlighting, while deferring the construction of notebook-runtime variables for global references until they're evaluated.

authors: jashkenas mbostock

repo: observablehq/notebook-runtime

license: ISC


text:
List available paths on root path

This PR adds a new handler for / to return a list of available API paths. The purpose of this is to improve discoverability of the API paths and to improve the user experience.
The changes also including bumping the signal packaged user for internal server and adds some missing docs.

@matej-g please can you provide an example of the response that we get from this change?
To @squat 's point in the previous PR - we don't want to be leaking any sensitive information to the world.

It basically lists the routes but only as patterns, i.e. the actual tenant names etc. are not substituted. Example:
{
  "paths": [
    "/api/logs/v1/{tenant}/*",
    "/api/metrics/v1/{tenant}/*",
    "/api/v1/{tenant}/*",
    "/{tenant}"
  ]
}

Looks good to me. Is it possible to list the valid HTTP verbs per path?

Hah, funnily enough when I tried to list it with methods, I'm seeing we simply accept any method on any endpoint. I think we should be returning 405 for the ones which do not apply. I'm creating a ticket for this. I would then suggest to revisit this once we have the incorrect methods behaving correctly.

repo: observatorium/api


text:
Pod affinity Support

Currently, Api Compact Ruler and store-memcached do not support podAntiAffinity
Query/thanos-query-frontend/store-shard has the following
  affinity:
    podAntiAffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
      - podAffinityTerm:
          labelSelector:
            matchExpressions:
            - key: app.kubernetes.io/name
              operator: In
              values:
              - thanos-query
          namespaces:
          - open-cluster-management-observability
          topologyKey: kubernetes.io/hostname
        weight: 100

Recevie has the following
      preferredDuringSchedulingIgnoredDuringExecution:
      - podAffinityTerm:
          labelSelector:
            matchExpressions:
            - key: app.kubernetes.io/name
              operator: In
              values:
              - thanos-receive
            - key: app.kubernetes.io/instance
              operator: In
              values:
              - observability-observatorium
          namespaces:
          - open-cluster-management-observability
          topologyKey: kubernetes.io/hostname
        weight: 100
      - podAffinityTerm:
          labelSelector:
            matchExpressions:
            - key: app.kubernetes.io/name
              operator: In
              values:
              - thanos-receive
            - key: app.kubernetes.io/instance
              operator: In
              values:
              - observability-observatorium
          namespaces:
          - open-cluster-management-observability
          topologyKey: topology.kubernetes.io/zone
        weight: 100

Suggest to keep consistence to use the following:
      preferredDuringSchedulingIgnoredDuringExecution:
      - podAffinityTerm:
          labelSelector:
            matchExpressions:
            - key: app.kubernetes.io/name
              operator: In
              values:
              - xxx
          topologyKey: kubernetes.io/hostname
        weight: 30
      - podAffinityTerm:
          labelSelector:
            matchExpressions:
            - key: app.kubernetes.io/name
              operator: In
              values: xxx
          topologyKey: topology.kubernetes.io/zone
        weight: 70

Any suggestions? @squat @metalmatze

Starting in v1.17, failure-domain.beta.kubernetes.io/zone is deprecated in favor of topology.kubernetes.io/zone

Yes, updating the topology label is definitely a must, I think :) We might not have done it, as we're somewhat waiting for our cluster to get to that Kubernetes version - I might be wrong though.
I'm not too concerned about not having explicit antiAffinity for most of these components. The receiver is the most critical and it's good we have it on there. The others are optional, and if you want to work on it, I'm happy to accept those changes.

Hmm, I don't see any pods using the deprecated topology keys; I am pretty sure we made a push to update them several months ago

Yes. the topology label already was updated to use the new one.
I think the API is also a critical one that we should have it, because there may have latency issue.
I will work on it. Thanks.

authors: clyang82 metalmatze squat

repo: observatorium/operator


text:
Update sbt-typelevel to 0.5.3

About this PR
📦 Updates org.typelevel:sbt-typelevel from 0.4.22 to 0.5.3
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.typelevel", artifactId = "sbt-typelevel" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.typelevel", artifactId = "sbt-typelevel" }
}]

labels: sbt-plugin-update, early-semver-major, semver-spec-minor, version-scheme:early-semver, commit-count:n:2

Superseded by #414.


text:
Drop table

What problem were solved in this pull request?
Issue Number: drop table
Problem:
What is changed and how it works?
由于词法解析和语法解析原本代码里就带有
我在此修改了stmt 和executor 然后再storage里修改了handle db 和table 具体的代码实现逻辑是table里面的内容
具体可以看注释
此pr还增加了一些方便调试的内容。
Other information

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Morri77 seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

看起来是误提交。
不过.clang-tidy和clang-format的代码看起来挺有意思，可以提交上来吗？

authors: CLAassistant bannuanzz hnwyllmm

repo: oceanbase/miniob