text:
Make regular expressions work case insesitive

Make default regular expressions work case insensitive
Harmonize whitespacing
Update readme, docs and demo

Thanks for your MR! It is released with version 2.1.5.
Cheerz 🎉

Thanks for your MR! It is released with version 2.1.5.
Cheerz 🎉

authors: heiCode visualjerk

repo: visualjerk/quill-magic-url


text:
psql: error: connection to server at "172.16.9.33", port 5001 failed

cann't connect to 5001 port remotely:
psql -h 172.16.9.33 -p 5001 -U postgres -d mydb
psql: error: connection to server at "172.16.9.33", port 5001 failed: server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.

curl http://172.16.9.30:8008/replica?lag=100MB&tag_datacenter=db-2
[1] 150559
root@ansible:/home/administrator# {"state": "running", "postmaster_start_time": "2024-12-11 06:56:19.133868+05:00", "role": "primary", "server_version": 170002, "xlog": {"location": 1677889372160}, "timeline": 5, "replication": [{"usename": "replicator", "application_name": "db-3", "client_addr": "172.16.9.32", "state": "streaming", "sync_state": "async", "sync_priority": 0}, {"usename": "replicator", "application_name": "db-2", "client_addr": "172.16.9.31", "state": "streaming", "sync_state": "async", "sync_priority": 0}], "dcs_last_seen": 1733927378, "tags": {"datacenter": "db-1"}, "database_system_identifier": "7446320060672743578", "patroni": {"version": "4.0.4", "scope": "postgres-cluster", "name": "db-1"}}
[1]+  Done                    curl http://172.16.9.30:8008/replica?lag=100MB

curl http://172.16.9.31:8008/replica?lag=100MB&tag_datacenter=db-2
[1] 150560
root@ansible:/home/administrator# {"state": "running", "postmaster_start_time": "2024-12-11 09:25:19.389569+05:00", "role": "replica", "server_version": 170002, "xlog": {"received_location": 1677889372160, "replayed_location": 1677889372160, "replayed_timestamp": "2024-12-11 17:26:03.718353+05:00", "paused": false}, "timeline": 5, "replication_state": "streaming", "dcs_last_seen": 1733927390, "tags": {"datacenter": "db-2"}, "database_system_identifier": "7446320060672743578", "patroni": {"version": "4.0.4", "scope": "postgres-cluster", "name": "db-2"}}
[1]+  Done                    curl http://172.16.9.31:8008/replica?lag=100MB

curl http://172.16.9.32:8008/replica?lag=100MB&tag_datacenter=db-2
[1] 150561
root@ansible:/home/administrator# {"state": "running", "postmaster_start_time": "2024-12-11 06:11:03.515908+05:00", "role": "replica", "server_version": 170002, "xlog": {"received_location": 1677889372160, "replayed_location": 1677889372160, "replayed_timestamp": "2024-12-11 17:26:03.718353+05:00", "paused": false}, "timeline": 5, "replication_state": "streaming", "dcs_last_seen": 1733927390, "tags": {"datacenter": "db-3"}, "database_system_identifier": "7446320060672743578", "patroni": {"version": "4.0.4", "scope": "postgres-cluster", "name": "db-3"}}
[1]+  Done                    curl http://172.16.9.32:8008/replica?lag=100MB

ss -ntlp | grep 6432
LISTEN 0      4096         0.0.0.0:6432      0.0.0.0:*    users:(("pgbouncer",pid=1625,fd=7))
LISTEN 0      4096         0.0.0.0:6432      0.0.0.0:*    users:(("pgbouncer",pid=1626,fd=7))
LISTEN 0      4096         0.0.0.0:6432      0.0.0.0:*    users:(("pgbouncer",pid=1623,fd=7))
LISTEN 0      4096         0.0.0.0:6432      0.0.0.0:*    users:(("pgbouncer",pid=1621,fd=7))

 psql -h 172.16.9.31 -p 5432 -U postgres -d mydb
Password for user postgres:

psql -h 172.16.9.31 -p 6432 -U postgres -d mydb
Password for user postgres:

I have
pgbouncer_processes: 4
pgbouncer_default_pool_mode: "transaction"

Connections to the 5000, 5432, 6432 port are working, but to 5001 no connection!
PostgreSQL version 17.2
Is it due to any misconfiguration?

check haproxy logs, that's the service listening to port 5001

Solved by committing # balancer_tags="datacenter=db in the inventory

source: gharchive/issue

repo: vitabaks/autobase

license: MIT

license_type: permissive

license_source: github-api


text:
Adding screenshot of output of launch VNC script

Needed for updating the guide https://github.com/vital2/vital-development/wiki/Spinning-up-VMs-on-Xen, see issue https://github.com/vital2/vital-development/issues/60

Adding this screenshot to guide

source: gharchive/pull-request


text:
textarea background is gray with courier like font - how to change it?

text area (in display mode, before clicked to switch to edit mode) is gray with courier like font (see picture) - the styling is applicable only in edit mode. How to change initial styling (before edit) ?

You would have to create your own css file and create a definition for pre {} that defines the font-family and color that you want to use.

That works, thank you!

authors: bojannyc ckosloski

repo: vitalets/angular-xeditable


text:
Feature: Display data table content in Allure report

The problem
I'm using Allure for Playwright as a reporting tool (https://github.com/allure-framework), and content of Data Table is not displayed in report.

Steps "framework opens storybook "core components core", story "currency" and feature "currency" with controls:" should be expandable, with data table values presented there (at least it was like this at my previous work where we used webdriverio + allure)
Solution
I'm not quite sure if it's achievable or not, as quick search in their repo didn't show anything related to data table and playwright, but perhaps there's some workaround.
https://github.com/search?q=repo%3Aallure-framework%2Fallure-js datatable&type=code
As far as I know, Allure is quite popular reporting tool, so possibly this feature request might be very welcomed.

I've found that allure supports step parameters that could be a great way to show data tables:

https://github.com/allure-framework/allure2/pull/211

Although in allure-playwright docs I don't see an option to pass step parameters (only suite parameters). I've tried to call allure.parameter() and it sets parameter on suite level, not step level. Maybe you can look deeper on that.
Here are two relevant discussions on displaying dataTables in allure:

https://github.com/orgs/allure-framework/discussions/1528
https://github.com/allure-framework/allure2/issues/355

Lookin at CucumberJSAllureReporter by your link I think the most suitable workaround is  to utilize allure.attachment method. For example:
Feature: todo page

    Scenario: adding todos
        Given I am on todo page
        When I add todos:
          | title  | description         |
          | todo 1 | very important item |
          | todo 2 | can be skipped      |

Step definition:
When('I add todos:', async ({ page }, dataTable: DataTable) => {
  const csvDataTable = dataTable.raw().map(r => r.join(',')).join('\n');
  await allure.attachment("Data table", csvDataTable, 'text/csv');
});

Allure report - requires a few extra clicks, but shows needed data:

@alescinskis could you show a screenshot how allure report with data table looked at your prev work?

@vitalets thanks for the info. I think it looked similar to your screenshot, and it certainly wouldn't be an issue in my case to make few clicks, as long as data table information is present.
Where are you importing allure from in your example? I'm getting TS2339: Property  attachment  does not exist on type  typeof allure  if I import { allure } from "allure-playwright";.
Unfortunately I cannot provide any old allure report screenshots from my previous work.

I've used exactly import { allure } from 'allure-playwright';. My version of is allure-playwright is:
npm show allure-playwright version
2.9.2

Could you check your version?

Yes, that helped, for some strange reason I was running a very old version of allure-playwright - 2.4.0

Eventually I had to fallback to 2.6.0, as for some reason the formatting of the report changed, despite my attempts to change settings
https://github.com/orgs/allure-framework/discussions/2160

I've created playwright config similar to yours - with project "chrome". With suiteTitle: false it does not show filename in report. Maybe you looked on some outdated report as well?
With suiteTitle: false:

With suiteTitle: true:

allure-playwright version is 2.9.2

I've tried again 2ith 2.9.2 but to no avail.
I've double-checked that allure-results folder is removed prior to launching tests.
playwright.config.ts has this:
  reporter: [
    [
      'allure-playwright',
      {
        detail: false,
        suiteTitle: false,
      },
    ],
  ],

I've restarted Intellij IDEA and invalidated cache, but I get this result:

I don't understand what I'm doing wrong :/

Magic..
Lets check version of allure itself. For me it's:
$ allure --version
2.22.0

for me:
% allure --version
2.23.0

I usually just do rm -rf allure-results in the folder with reports, but I've tried also what you've suggested allure generate --clean && allure open and have suiteTitle: false, but it still results in path-to-file in the report

Could you try on a brand new project with only playwright (no playwright-bdd)?

Hi!
I've tried new clean playwright project (the default that comes with playwright setup), installed "allure-playwright": "^2.9.2", and everything works as intended
reporter: [
    [
      "allure-playwright",
      {
        detail: false,
        suiteTitle: false,
      },
    ],
  ],

I've noticed that I was missing devDependancy `"@types/node": "^20.8.9",` in my project, but I added it to my project, updated allure-playwright, gave another try and yet issue is the same, so it's not caused by lack of this particular dependency.

updated allure-playwright

To what version did you update allure-playwright?

2.9.2

@alescinskis could you add playwright-bdd to that brand new project, to ensure that there is no impact from it?
For your main project lets try to make deeper clean up:

remove all allure stuff rm -rf allure-results allure-report
remove node_modules
run npm i
run tests again and open allure report with allure generate --clean && allure open
🤞

Installed playwright-bdd to new project, new project wasn't impacted by that.
Tried deep clean up for my project, didn't help, still seeing path to file.
I don't know, maybe it's something in the config file...
import { defineConfig, devices } from '@playwright/test';
import { defineBddConfig } from 'playwright-bdd';

/**
 * Read environment variables from file.
 * https://github.com/motdotla/dotenv
 */

const testDir = defineBddConfig({
  paths: ['tests/e2e', 'tests/visual-regression'],
  require: ['tests/steps/*.ts'],
  outputDir: 'tests/bddgen/',
  featuresRoot: 'tests/',
  importTestFrom: 'tests/commonUtils/browserSetup.ts',
});
/**
 * See https://playwright.dev/docs/test-configuration.
 */
export default defineConfig({
  testDir,
  snapshotPathTemplate: 'tests/{testFileDir}/screenshots/{projectName}/{arg}{ext}',
  /* Run tests in files in parallel */
  fullyParallel: true,
  /* Fail the build on CI if you accidentally left test.only in the source code. */
  forbidOnly: !!process.env.CI,
  /* Retry on CI only */
  retries: process.env.CI ? 2 : 0,
  /* Opt out of parallel tests on CI. */
  workers: process.env.CI ? 1 : undefined,
  /* Reporter to use. See https://playwright.dev/docs/test-reporters */
  reporter: [
    [
      'allure-playwright',
      {
        detail: false,
        suiteTitle: false,
      },
    ],
  ],
  /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
  use: {
    launchOptions: {
      ignoreDefaultArgs: ['--hide-scrollbars'],
    },
    /* Base URL to use in actions like `await page.goto('/')`. */
    baseURL: process.env.CI_ENVIRONMENT_URL || 'http://localhost:9001/',
    screenshot: 'only-on-failure',
    /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
    trace: 'on-first-retry',
  },

  /* Configure projects for major browsers */
  projects: [
    {
      name: 'chrome',
      use: { ...devices['Desktop Chrome'], channel: 'chrome' },
      retries: 1,
    },
    {
      name: 'firefox',
      use: { ...devices['Desktop Firefox'] },
      retries: 1,
    },
    {
      name: 'webkit',
      use: { ...devices['Desktop Safari'] },
      retries: 1,
    },
    /* Test against mobile viewports. */
    {
      name: 'chrome-mobile-portrait',
      use: {
        userAgent:
          'Mozilla/5.0 (Linux; Android 12.0; Moto G (5)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.5938.62 Mobile Safari/537.36',
        viewport: {
          width: 412,
          height: 915,
        },
        deviceScaleFactor: 3,
        isMobile: true,
        hasTouch: true,
        defaultBrowserType: 'chromium',
      },
      retries: 1,
    },
    {
      name: 'chrome-mobile-landscape',
      use: {
        userAgent:
          'Mozilla/5.0 (Linux; Android 12.0; Moto G (5)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.5938.62 Mobile Safari/537.36',
        viewport: {
          width: 915,
          height: 412,
        },
        deviceScaleFactor: 3,
        isMobile: true,
        hasTouch: true,
        defaultBrowserType: 'chromium',
      },
      retries: 1,
    },
  ],
});

oh wow I've realised what was causing this issue.
so in config file I had allure-playwright but I was launching tests by command npx bddgen --tags='@storybook and (not @localisation)' && npx playwright test core/select --reporter=allure-playwright --workers=4... which appears to be re-writing the defaults. Once I removed --reporter and gave it another try allure report was presented correctly without displaying path to file. Oooof.

And we didn't check the command you are using for running tests!
Well, it's good that there is no deeper problem in code :)

Hi @vitalets - Am trying to configure the below steps in hooks instead of having it in each step where I pass my dataTable.
const csvDataTable = dataTable.raw().map(r => r.join(',')).join('\n');
await allure.attachment("Data table", csvDataTable, 'text/csv');
for example, We tried using the below step in hooks for Given,
Given('.*', async function({$step, allure,param}) {
console.log("test given step");
if ($step.dataTable) {
const markdownTable = $step.dataTable.raw().map(r => r.join(',')).join('\n');
await allure.addAttachment("Data table", markdownTable, 'text/csv');
}
});
But this function is not getting executed. Can you help us or let us know how it can be configured in hooks?

Hi @dpjp ! Let me clarify - you want to automatically attach to allure each step that has DataTable, right?
If yes, we need 2 things to be added to playwright-bdd:

support BeforeStep / AfterStep hooks
add $step.dataTable property

Then we will be able to have the following:
// possible syntax
AfterStep(async ({ $step, allure }) -> {
  if ($step.dataTable) {
    const markdownTable = $step.dataTable.raw().map(r => r.join(',')).join('\n');
    await allure.addAttachment("Data table", markdownTable, 'text/csv');
  }
});

authors: alescinskis dpjp vitalets

repo: vitalets/playwright-bdd


text:
Excessive logging in Keenetic syslog with monitoring enabled

Hello,
Is there a way to avoid or disable Excessive logging in Keenetic syslog when monitoring is enabled?
These messages are repeated every collection interval (interval_sec=30)
(using collector with docker image latest=1.1.1)

Oct 20 11:25:47 ndm
Json::Object: AppendMember: duplicate key: "bioset".
Oct 20 11:25:47 ndm
Core::Syslog: last message repeated 14 times.
Oct 20 11:25:47 ndm
Json::Object: AppendMember: duplicate key: "RtmpCmdQTask".
Oct 20 11:25:47 ndm
Json::Object: AppendMember: duplicate key: "RtmpWscTask".
Oct 20 11:25:47 ndm
Json::Object: AppendMember: duplicate key: "HwCtrlTask".
Oct 20 11:25:47 ndm
Json::Object: AppendMember: duplicate key: "ser_task".
Oct 20 11:25:47 ndm
Json::Object: AppendMember: duplicate key: "RtmpMlmeTask".
Oct 20 11:25:47 ndm
Json::Object: AppendMember: duplicate key: "nginx: worker process".
Oct 20 11:25:47 ndm
Core::Syslog: last message repeated 2 times.

really appreciate your help if we can fix this

authors: FlyingHavoc avorotyagin

repo: vitaliy-sk/keenetic-grafana-monitoring


text:
Any way to know if you're in a PWA?

Wondering if there's anyway to apply conditional styling based on whether or not you're within a PWA. Would be nice to have if not.

@watzon you can check nuxt integration impl. here https://github.com/vite-pwa/nuxt/blob/main/templates/pwa.client.ts#L15 , check the link

authors: userquin watzon

repo: vite-pwa/docs


text:
fix: prompt for update logic

With current version multiple clients get auto updated once the service worker receives the first update: with logic included on PR https://github.com/vite-pwa/vite-plugin-pwa/pull/394
With current changes, it is working properly, also tested on Firefox.
There are a few combinations using isUpdate and isExternal: these 2 flags from workbox-window are defined as boolean | undefined, when installed|activated events fired, undefined values have special meaning.
As an example, with only one client:

on first visit we receive isExternal: false with no isUpdate
on update, we receive isExternal: false and isUpdate: true and showSkipWaitingPrompt  being called from waiting event.

Problems comes when we have a few clients, for example, 2 tabs in first browser instance and another browser instance:
On first visit we receive isExternal: false with no isUpdate only in the first one client visiting the app, other clients will not receive the event
On update it is more complex, since we can have a few combinations, here the tests I've made with previous setup (building between tests):
Test 1:
Reloading app in tab1:

tab 1 receives isExternal: false and isUpdate: true
tab 2 receives isExternal: false with no isUpdate
second instance receives isExternal: false with no isUpdate

Click prompt reload button from tab1, all clients being updated, then build again.
Test 2:
Reloading browser instance 2:

tab 1 receives isExternal: false and isUpdate: true
tab 2 receives isExternal: false and isUpdate: true
second instance receives isExternal: false and isUpdate: true

Click prompt reload button from browser instance 2, all clients being updated, then build again.
Test 3:
Reloading browser instance 2:

tab 1 receives  isExternal: false with no isUpdate
tab 2 receives  isExternal: false with no isUpdate
second instance receives isExternal: false and isUpdate: true

Click prompt reload button from tab2 in browser instance 1, all clients being updated.
It seem on next update isExternal depends on the client that fires the update.

do not merge, I'm checking if we can switch event listener from installed to activated.

Master @antfu can you please review this PR? <3

repo: vite-pwa/vite-plugin-pwa


text:
Invalid hook call when using react-colorful package

I am seeing an Uncaught TypeError and getting Invalid hook call warnings when using plugin-react-swc and react-colorful package.
This happens when rendering <HexColorPicker></HexColorPicker>
Uncaught TypeError: Cannot read properties of null (reading 'useRef')
    at useRef (react.development.js:1630:21)
    at U (ColorPicker.tsx:22:19)
    at renderWithHooks (react-dom.development.js:16305:18)
    at mountIndeterminateComponent (react-dom.development.js:20074:13)
    at beginWork (react-dom.development.js:21587:16)
    at beginWork$1 (react-dom.development.js:27426:14)
    at performUnitOfWork (react-dom.development.js:26557:12)
    at workLoopSync (react-dom.development.js:26466:5)
    at renderRootSync (react-dom.development.js:26434:7)
    at recoverFromConcurrentError (react-dom.development.js:25850:20)

Warning: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
1. You might have mismatching versions of React and the renderer (such as React DOM)
2. You might be breaking the Rules of Hooks
3. You might have more than one copy of React in the same app

"react": "^18.2.0",
"react-dom": "^18.2.0"
"@vitejs/plugin-react-swc": "^3.5.0"

No issue after replacing with plugin-react.
"@vitejs/plugin-react": "^4.2.1",

I did bun create vite, select react + TS + SWC && bun add react-colorful && inserted <HexColorPicker /> into App.tsx and everything rendred as expected without errors

I did bun create vite, select react + TS + SWC && bun add react-colorful && inserted <HexColorPicker /> into App.tsx and everything rendred as expected without errors

@ArnaudBarre So I'm on Windows and I did npm create vite@latest with the same steps as you did above (but using yarn) and it did render without any errors.
In my original post, I was using HexColorPicker from a separate local package, so I'm not sure if this is the issue. but I tried to reproduce with the following, and I began to see errors. (using yarn btw)
Local Package:
{
  "name": "test-color",
  "private": true,
  "version": "0.0.0",
  "main": "index.ts",
  "dependencies": {
    "react-colorful": "^5.6.1"
  },
  "devDependencies": {
    "@types/react": "^18.2.43",
    "react": "^18.2.0",
    "react-dom": "^18.2.0"
  },
  "peerDependencies": {
    "react": "^18.2.0",
    "react-dom": "^18.2.0"
  }
}

import * as React from 'react';
import { HexColorPicker } from "react-colorful";

export const Color = () => {
  return <HexColorPicker></HexColorPicker>;
};

export * from './Color';

Test Project:
"dependencies": {
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "test-color": "../test-color"
},

import { Color } from "test-color";

Strangely the error did disappear after removing the local package, adding react-colorful directly, then adding back the local package and removing react-colorful. Not sure if something is being cached but that's what I noticed. However, after removing node_modules and lock file, error reappeared again.

So yeah probably you're hitting the reason number 3.: 3. You might have more than one copy of React in the same app
You should use a workspace manager to avoid that

We faced a similar issue with nested packages, the two things that helped:

using this plugin + putting react in the dedupe option
switch to @vitejs/plugin-react

It's weird that this error shows up for one plugin, but not the other. I can provide a minimal repro if that will be helpful.

Yeah this is because this plugin doesn't dedupe. I think this is better this way but I don't want to break people that really on this. You should use a workspace package manager to ensure you have only one version of React used across your packages that are used together. Not every tool will to the dedupe so it's better to avoid depending on Vite to do this (and worse not being sure which version you're running)

I'm closing the issue for now.
Although I agree that the discrepancy between the two plugins is not great, I think that when it appears it reveals fragile setup that as worth fixing and not hiding via a Vite specific feature.
I will instead remove the dedupe option in the next major of the Babel plugin

authors: ArnaudBarre LacombeJ infomiho

repo: vitejs/vite-plugin-react-swc


text:
Establish a mechanism that can intervene in the sass / scss importer

Clear and concise description of the problem
Currently, vite seems to be overriding the importer option of the css preprocessor option.
I want to make additional settings so that it will not be overwritten, or perform a special import. (For example, json importer)
If you have time to work, we are considering submitting a PR.
Suggested solution
Below is the implementation location for setting the preprocessor option.
https://github.com/vitejs/vite/blob/6d602a0a4d2c1e77ded1344d59733eb93d4009c3/packages/vite/src/node/plugins/css.ts#L907-L916
At this location, you should be able to merge user-configured importers or importers injected by custom plugins as a list.
Alternative
I can't think of an alternative to this request so far.
Additional context
As an option in sass's JavaScript API, the importer is defined to be able to accept multiple list settings.
https://github.com/sass/node-sass#importer--v200---experimental

@bsunderhus
Thank you!

repo: vitejs/vite


text:
HMR does not work when using local reverse proxy via Docker/Caddy

Describe the bug
I am using a custom https domain for local development, behind a caddyfile reverse proxy via Docker compose.
I navigate to https://app.mysite.local and it renders fine
However, the vite HMR websocket can't connect. So it reloads the page. Infinitely.
I know this isn't the first time this bug has been reported - I have read many, many of the related bug reports and nothing works. This is the only thing that keeps us from adopting vite. Every other bundler I have used can handle this (I assumed was common?) use case.
My config is below:
import tailwindcss from "@tailwindcss/jit";
import reactRefresh from "@vitejs/plugin-react-refresh";
import presetEnv from "postcss-preset-env";
import { defineConfig } from "vite";
import { VitePWA } from "vite-plugin-pwa";

export default defineConfig({
  server: {
    host: "0.0.0.0",
    origin: "https://app.domain.local",
    hmr: {
      host: "app.domain.local",
      port: 443,
      protocol: "wss",
    },
    port: 1234,
  },
  plugins: [
    reactRefresh(),
    VitePWA(),
  ],
  css: {
    postcss: {
      plugins: [
        tailwindcss,
        presetEnv({ stage: 1 }),
      ],
    },
  },
});

Reproduction
https://github.com/JoinFreeWorld/StudentPortal/tree/jason/vite_attempt
System Info
System:
    OS: macOS 12.0.1
    CPU: (12) x64 Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
    Memory: 2.99 GB / 32.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 16.0.0 - ~/.nvm/versions/node/v16.0.0/bin/node
    Yarn: 1.22.10 - ~/.nvm/versions/node/v16.0.0/bin/yarn
    npm: 7.10.0 - ~/.nvm/versions/node/v16.0.0/bin/npm
  Browsers:
    Chrome: 98.0.4758.80
    Firefox: 96.0.1
    Safari: 15.1

Used Package Manager
npm
Logs
`client.ts:28 WebSocket connection to 'wss://app.notmyrealdomain.local/' failed: `

Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

i also have the HMR not work problem when use nginx proxy. My vite HMR websocket can connect, but page not refresh.
here is my discussions address: https://github.com/vitejs/vite/discussions/6839

As far as I can tell, the port directive is being completely ignored. When using with svelte-kit and caddy reverse proxy:

settings within svelte.config.js:
	server: {
		hmr: {
			host: 'hs-ui.gurucomputing.com.au',
			protocol: 'wss',
			port: '443'
		}
	},

can't see any reason why the server will continue to try to connect on port 8080. Also tried with clientPort to no effect.

Seems to be a bug introduced in 2.9.0, you can lock to 2.8.6 as a temporary workaround.

Seems to be a bug introduced in 2.9.0, you can lock to 2.8.6 as a temporary workaround.

the bug was reported long before 2.9.0 was released.
The following works for me after update to 2.9.0:
  server: {
    host: '0.0.0.0',
    port: 80,
    strictPort: true,
    hmr: {
      clientPort: 443,
    },
  },

Seems to be a bug introduced in 2.9.0, you can lock to 2.8.6 as a temporary workaround.

the bug was reported long before 2.9.0 was released.
The following works for me after update to 2.9.0:
  server: {
    host: '0.0.0.0',
    port: 80,
    strictPort: true,
    hmr: {
      clientPort: 443,
    },
  },

I'd seen the previous reports but was unaffected, with 2.9.0 it started to affect me, your config due to binding to port 80 would require me to run with admin privileges, however it did lead to the discovery that adding 'strictPort' and setting to true fixed the original problem with no further changes necessary, so while the following produces the error in 2.9.0 (and works in 2.8.6):
server: {
  https: true,
  hmr: {
    host: "app.domain.com",
    port: 443,
    protocol: "wss",
  },
},

This does not produce the error ion 2.9.0:
server: {
  https: true,
  strictPort: true,
  hmr: {
    host: "app.domain.com",
    port: 443,
    protocol: "wss",
  },
},

The docs state strictPort: true will exit if the port is already in use rather than trying the next available port, I'm not entirely sure why adding that would fix this specific issue for me.

I tried the configuration above & got a Error: listen EACCES: permission denied 127.0.0.1:443
  vite v2.9.1 dev server running at:

  > Local: https://localhost:4003/
  > Network: use `--host` to expose

  ready in 369ms.

  > Inspect: https://localhost:4003/__inspect/

WebSocket server error:
Error: listen EACCES: permission denied 127.0.0.1:443
    at Server.setupListenHandle [as _listen2] (node:net:1355:21)
    at listenInCluster (node:net:1420:12)
    at GetAddrInfoReqWrap.doListen [as callback] (node:net:1559:7)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:74:8)
  > Routes:
     https://localhost:4003/
     https://localhost:4003/404/
     https://localhost:4003/companies/
     https://localhost:4003/rebalance/
     https://localhost:4003/companies/:company_locator/
     https://localhost:4003/rebalance/portfolios/
     https://localhost:4003/rebalance/portfolios/:portfolio_name/
     https://localhost:4003/rebalance/portfolios/new/
  > Server modules: https://localhost:4003/_m/*

so every now and then I follow up on this and check to see if the issue has been addressed
i saw that in 2.9.0 this was supposedly addressed, but I have yet to be able to figure out a config that does the trick
vite documentation is still pretty lacking it seems for handling anything but the most basic case
has anyone found a configuration that:

supports having a local caddy dockerfile reverse proxy (so http://localhost:3000 proxies to https://app.domain.local)
does not endlessly force refresh the page because the websocket needs to reconnect

I've been able to get it so that if I go directly to https://localhost:3000 things work, but that is not what I want to happen

authors: MikeT117 btakita deathmaz lzr900515 rossPatton routerino


text:
typeface-* package optimization causes massive slowdown

Do NOT ignore this template or your issue will have a very high chance to be closed without comment.

Describe the bug
Using typeface-* packages causes massive slowdown to the point it causes the system to freeze for some minutes. This problem occurs when vite tries to optimize .woff2 files.
Adding the corresponding package to exclude in dependency optimization of vite.config.js removes this issue.
Note: I haven't tried self hosting the .woff2 myself.
Reproduction
Repoduction link: https://github.com/Namchee/tetikus-playground/tree/vite-deps-opts
Branch: vite-deps-opts
Steps to reproduce:

Clone the repository
Install all required dependency
Run npm run dev

System Info

required vite version: 1.0.0rc4
required Operating System: Windows 10 Build 2004
required Node version: 12.18.2
Optional:

npm/yarn version 6.14.6
Installed vue version (from yarn.lock or package-lock.json) 3.0.0-rc.1
Installed @vue/compiler-sfc version 3.0.0-rc.1

Logs (Optional if provided reproduction)
npm run dev

> tetikus-playground@0.0.0 dev D:\OS\tetikus-playground
> vite --debug

vite v1.0.0-rc.4
  vite:config env mode: development +0ms
  vite:config env: {} +1ms
  vite:config config resolved in 4ms +2ms
  vite:resolve (node_module entry) typeface-inter -> inter.css +0ms
  vite:optimize skipping typeface-inter (entry is not js) +0ms
  vite:resolve (node_module entry) vue -> dist/vue.runtime.esm-bundler.js +4ms
  vite:optimize optimizing vue (imports sub dependencies) +3ms
[vite] Optimizable dependencies detected:
vue
Pre-bundling them to speed up dev server page load...
(this will be run only when your dependencies have changed)

  Dev server running at:
  > Network:  http://172.18.0.1:3000/
  > Network:  http://192.168.43.104:3000/
  > Local:    http://localhost:3000/

  vite:server server ready in 2756ms. +0ms
  vite:hmr         / imports /:/src/main.js +0ms
  vite:rewrite (skipped) / +0ms
  vite:rewrite /: serving from cache +0ms
  vite:rewrite (skipped) / +8ms
  vite:rewrite /: serving from cache +155ms
  vite:rewrite (skipped) / +156ms
  vite:rewrite /src/main.js: rewriting +42ms
  vite:rewrite     "vue" --> "/@modules/vue.js" +2ms
  vite:hmr         /src/main.js imports /@modules/vue.js +209ms
  vite:resolve (node_module entry) typeface-inter -> inter.css +3s
  vite:rewrite     "typeface-inter" --> "/@modules/typeface-inter/inter.css?import" +3ms
  vite:hmr         /src/main.js imports /@modules/typeface-inter/inter.css +3ms
  vite:rewrite     "./App.vue" --> "/src/App.vue" +1ms
  vite:hmr         /src/main.js imports /src/App.vue +2ms
  vite:rewrite     "./index.css" --> "/src/index.css?import" +1ms
  vite:hmr         /src/main.js imports /src/index.css +1ms
  vite:rewrite (skipped) /vite/client +62ms
  vite:resolve (optimized) vue.js -> node_modules\.vite_opt_cache\vue.js +0ms
  vite:rewrite /@modules/vue.js: no imports found. +11ms
  vite:resolve (node_modules) typeface-inter/inter.css -> node_modules\typeface-inter\inter.css +8ms
  vite:hmr ws client connected +84ms

risk - There are upcoming breaking changes: removeDeprecatedGapUtilities
risk - We highly recommend opting-in to these changes now to simplify upgrading Tailwind in the future.
risk - https://tailwindcss.com/docs/upcoming-changes
  vite:rewrite (skipped) /src/index.css?import +7s
  vite:rewrite (skipped) /@modules/typeface-inter/inter.css?import +326ms
  vite:sfc D:\OS\tetikus-playground\src\App.vue parsed in 26ms. +0ms
  vite:rewrite /src/App.vue: rewriting +32ms
  vite:rewrite     nothing needs rewriting. +1ms
  vite:sfc D:\OS\tetikus-playground\src\App.vue parse cache hit +12ms
  vite:sfc /src/App.vue template compiled in 29ms. +29ms
  vite:rewrite /src/App.vue?type=template: rewriting +36ms
  vite:rewrite     "vue.js" --> "/@modules/vue.js" +1ms
  vite:hmr         /src/App.vue?type=template imports /@modules/vue.js +7s
  vite:resolve (node_modules) typeface-inter/Inter Web/Inter-ExtraBold.woff2 -> node_modules\typeface-inter\Inter Web\Inter-ExtraBold.woff2 +8s
  vite:resolve (node_modules) typeface-inter/Inter Web/Inter-SemiBold.woff2 -> node_modules\typeface-inter\Inter Web\Inter-SemiBold.woff2 +8ms
  vite:resolve (node_modules) typeface-inter/Inter Web/Inter-Regular.woff2 -> node_modules\typeface-inter\Inter Web\Inter-Regular.woff2 +3ms
  vite:resolve (node_modules) typeface-inter/Inter Web/Inter-Medium.woff2 -> node_modules\typeface-inter\Inter Web\Inter-Medium.woff2 +2ms
  vite:rewrite (skipped) /@modules/typeface-inter/Inter%20Web/Inter-Medium.woff2 +776ms
  vite:rewrite (skipped) /@modules/typeface-inter/Inter%20Web/Inter-Regular.woff2 +9ms
  vite:rewrite (skipped) /@modules/typeface-inter/Inter%20Web/Inter-SemiBold.woff2 +3ms
  vite:rewrite (skipped) /@modules/typeface-inter/Inter%20Web/Inter-ExtraBold.woff2 +5ms

The typeface-* package will not be optimized by vite, the optimizer only work for js module.
Look like the slowdown caused by compiled taiwandcss, you should enable cache  inside chrome devtools to let http cache worked.

authors: Namchee underfin


text:
fix: deps optimizer idle logic for workers (fix #8479)

Description
Fix repro in #8479:
https://github.com/RtVision/vitejs-alpha-repro
I thought current tests were covering this case, I'll work on a test in another PR. Or later in this one.

What is the purpose of this pull request?

[ ] Bug fix
[ ] New Feature
[ ] Documentation update
[x] Other

Tests have been added, I'm going to merge this one as it is a critical fix and then release a new alpha.


text:
Error: No "exports" main defined in package.json

Describe the bug
Unable to run tests. Getting the following error Error: No "exports" main defined in /home/madhank/Desktop/git/learn-dsa/node_modules/vitest/package.json
Stack trace:
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Suites 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯

 FAIL  bin/src/data-structures/single-linked-list/single-linked-list.spec.js [ bin/src/data-structures/single-linked-list/single-linked-list.spec.js ]
Error: No "exports" main defined in /home/madhank/Desktop/git/learn-dsa/node_modules/vitest/package.json
 ❯ src/data-structures/single-linked-list/single-linked-list.spec.ts:1:0

⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Unhandled Error ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
RangeError: Invalid count value
 ❯ generateCodeFrame node_modules/vitest/dist/chunk-vite-node-externalize.0791f2ed.mjs:10294:35
 ❯ node_modules/vitest/dist/chunk-vite-node-externalize.0791f2ed.mjs:10168:50
 ❯ printStack node_modules/vitest/dist/chunk-vite-node-externalize.0791f2ed.mjs:10258:32
 ❯ printError node_modules/vitest/dist/chunk-vite-node-externalize.0791f2ed.mjs:10163:3
 ❯ processTicksAndRejections node:internal/process/task_queues:96:5
 ❯ DefaultReporter.printTaskErrors node_modules/vitest/dist/chunk-vite-node-externalize.0791f2ed.mjs:7488:7
 ❯ DefaultReporter.reportSummary node_modules/vitest/dist/chunk-vite-node-externalize.0791f2ed.mjs:7434:7
 ❯ DefaultReporter.onFinished node_modules/vitest/dist/chunk-vite-node-externalize.0791f2ed.mjs:7293:5
 ❯ DefaultReporter.onFinished node_modules/vitest/dist/chunk-vite-node-externalize.0791f2ed.mjs:7627:5

Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: No "exports" main defined in /home/madhank/Desktop/git/learn-dsa/node_modules/vitest/package.json
    at new NodeError (node:internal/errors:372:5)
    at throwExportsNotFound (node:internal/modules/esm/resolve:472:9)
    at packageExportsResolve (node:internal/modules/esm/resolve:693:7)
    at resolveExports (node:internal/modules/cjs/loader:482:36)
    at Function.Module._findPath (node:internal/modules/cjs/loader:522:31)
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:919:27)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (/home/madhank/Desktop/git/learn-dsa/src/data-structures/single-linked-list/single-linked-list.spec.ts:1:1) {
  code: 'ERR_PACKAGE_PATH_NOT_EXPORTED'
}

Reproduction
Repo - https://github.com/madhank93/learn-dsa and run the command npm run test
System Info
System:
    OS: Linux 5.14 Ubuntu 20.04.4 LTS (Focal Fossa)
    CPU: (8) x64 Intel(R) Core(TM) i5-10210U CPU @ 1.60GHz
    Memory: 9.78 GB / 15.40 GB
    Container: Yes
    Shell: 5.8 - /usr/bin/zsh
  Browsers:
    Chrome: 103.0.5060.134
    Firefox: 103.0
  npmPackages:
    vitest: ^0.18.0 => 0.18.0

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

We managed to silence the error by removing this line:
https://github.com/vitest-dev/vitest/blob/main/packages/vitest/package.json#L28

@yacinehmito Upgrading the package didn't work for me as well. So I delete the entire repo and cloned it again. Not sure this is the right thing to do.

On our end, the culprit was eslint-import-resolver-alias. Its last version is 4 years old, at a time where ESM support was not a topic.
Node's resolution logic assumes that it's running in CommonJS, so it was looking for a require field in the relevant export in package.json. There was none, so it crashed with this error.
We fixed the problem by using eslint-importe-resolver-customer-alias, which is more recent and specifies to Node's resolver that ESM is used, so that it looks at the import field instead.

I was having similar issues, error messages like that:
1:1   error    Resolve error: Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: No "exports" main defined in /home/fthebaud/Workspace/de.idnow.vi.web.frontend/node_modules/vitest/package.json
    at new NodeError (node:internal/errors:371:5)
    at throwExportsNotFound (node:internal/modules/esm/resolve:453:9)
    at packageExportsResolve (node:internal/modules/esm/resolve:671:7)
    at resolveExports (node:internal/modules/cjs/loader:482:36)
    at Function.Module._findPath (node:internal/modules/cjs/loader:522:31)
    at findModulePath (/home/fthebaud/Workspace/de.idnow.vi.web.frontend/node_modules/eslint-import-resolver-alias/index.js:99:27)
    at Object.exports.resolve (/home/fthebaud/Workspace/de.idnow.vi.web.frontend/node_modules/eslint-import-resolver-alias/index.js:75:10)
    at v2 (/home/fthebaud/Workspace/de.idnow.vi.web.frontend/node_modules/eslint-module-utils/resolve.js:116:23)
    at withResolver (/home/fthebaud/Workspace/de.idnow.vi.web.frontend/node_modules/eslint-module-utils/resolve.js:121:14)
    at fullResolve (/home/fthebaud/Workspace/de.idnow.vi.web.frontend/node_modules/eslint-module-utils/resolve.js:138:22)  import/namespace

As suggested by @yacinehmito, replacing eslint-import-resolver-alias by the more recent eslint-import-resolver-custom-alias fixed the problem.

authors: fthebaud madhank93 yacinehmito

repo: vitest-dev/vitest


text:
TypeError: $setup.testFunc is not a function

Describe the bug
Hello!
I encountered a problem and tried many methods but could not solve it.
I used Vue3 to build my project. There's a function definded in

Please, open a pull request to the tool that you use for rendering Vue. Vitest doesn't provide anything out of the box, so this issue is out of our scope.

Please, open a pull request to the tool that you use for rendering Vue. Vitest doesn't provide anything out of the box, so this issue is out of our scope.

Sorry, but I don't quite understand what you mean.
I did not use any third-party tools for rendering Vue. I believe the sample code I provided uses the very common Vue3 syntax.

authors: hzferrari sheremet-va


text:
vitest fails to load typescript worker code in node (but does so correctly in browser mode)

Describe the bug
As already asked here, I'm looking for a way to execute tests in node while using node:worker_threads. Equivalent code works just fine in browser mode.
Reproduction
https://github.com/andreashuber69/vitest-repro
The following commands work as expected:

npm run test-browser
npm run test-node-js

The following doesn't work:

npm run test-node-ts

Apparently under node, test code isn't compiled to js first (as in browser mode), which is why the above produces the following error:
Error: Cannot find module '.../src/nodeWorker.js'
Attempts at importing tsx (see commented out code in ./src/nodeWorker.spec.ts) have failed with the following error:
TypeError: Unknown file extension ".ts" for .../src/nodeWorker.ts
(presented as a solution in this issue but apparently doesn't work any longer)
How can I use vitest with typescript code that uses node:worker_threads?
System Info
System:
    OS: Linux 6.8 Pop!_OS 22.04 LTS
    CPU: (8) x64 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz
    Memory: 24.06 GB / 31.20 GB
    Container: Yes
    Shell: 5.1.16 - /bin/bash
  Binaries:
    Node: 20.12.1 - /usr/local/bin/node
    npm: 10.5.0 - /usr/local/bin/npm
  Browsers:
    Brave Browser: 125.1.66.110
    Chrome: 125.0.6422.60
  npmPackages:
    @vitest/browser: ^1.5.0 => 1.5.0
    @vitest/coverage-istanbul: ^1.5.0 => 1.5.0
    vitest: ^1.5.0 => 1.5.0

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Browser mode is a totally different thing and it just happens that Vite's web worker support makes it work, but that doesn't naturally transfer to node worker threads. It's unlikely to have some magical feature on Vitest out-of-the-box as noted in https://github.com/vitest-dev/vitest/issues/3234#issuecomment-1518887878
Regarding tsx loader failing on Worker constructor, this seems like a well-known issue as current Node loader limitation:

https://github.com/privatenumber/tsx/issues/354
https://github.com/nodejs/node/issues/47747

The tsx issue suggests one workaround https://github.com/privatenumber/tsx/issues/354#issuecomment-1806081815 and that would probably work.

The equivalent cannot work just fine in the browser mode because the browser mode doesn't support node:worker_threads module.
If you are testing web worker, the recommendation is to use @vitest/web-worker package.

The equivalent cannot work just fine in the browser mode because the browser mode doesn't support node:worker_threads module.

With equivalent code I meant code implemented in terms of web worker, see test-browser script.

For anyone landing here looking for a solution: I didn't get it to work. I tried with the following line
        const tsx = new URL("../node_modules/tsx/dist/cli.mjs", import.meta.url);
        const worker = new Worker(tsx, { env: SHARE_ENV, argv: ["./src/nodeWorker.ts"] });

Both cli.mjs and nodeWorker.ts are found, but apparently the message posted on the main thread never makes it to the worker.

Oh right, tsx probably spawns extra process in between, so Node's out-of-the-box worker communication doesn't work.
Just reading back the original Node issue https://github.com/nodejs/node/issues/47747#issuecomment-2110589610, it might be that the fix is near in Node 22, but I just double checked it still doesn't work (and it actually breaks more for some use cases).
For the workaround on Node 20, I think you can use tsx/esm/api like this to wrap your worker. I just tested this approach here https://github.com/hi-ogawa/reproductions/blob/main/vitest-5757-ts-worker/src/ts-worker/index.mjs
import { Worker } from "node:worker_threads";

class TsWorker extends Worker {
	constructor(filename, options = {}) {
		options.workerData ??= {};
		options.workerData.__ts_worker_filename = filename.toString();
		super(new URL("./worker.mjs", import.meta.url), options);
	}
}

const worker = new TsWorker(new URL("./nodeWorker.ts", import.meta.url));

// worker.mjs
import { tsImport } from "tsx/esm/api";
import { workerData } from "node:worker_threads";

tsImport(workerData.__ts_worker_filename, import.meta.url);

For the workaround on Node 20, I think you can use tsx/esm/api like this to wrap your worker.

Indeed, that works. I've modified the vitest-repro accordingly and adapted the instructions for the reproduction to check out the original code.
Thank you very much!

If you don't want the stain of a non-typescript file on your filesystem (or just want to avoid the extra file)
import { type WorkerOptions, Worker } from "node:worker_threads";

const worker = /* JavaScript */ `
  import { createRequire } from "node:module";
  import { workerData } from "node:worker_threads";

  const filename = "${import.meta.url}";
  const require = createRequire(filename);
  const { tsImport } = require("tsx/esm/api");

  tsImport(workerData.__ts_worker_filename, filename);
`;

export class TsWorker extends Worker {
  constructor(filename: string | URL, options: WorkerOptions = {}) {
    options.workerData ??= {};
    options.workerData.__ts_worker_filename = filename.toString();
    super(new URL(`data:text/javascript,${worker}`), options);
  }
}

authors: andreashuber69 daniel-nagy hi-ogawa sheremet-va


text:
cask-repair: Double nested 'homebrew-cask' in path causing error.

Earlier today I was trying to update the subler cask, I have successfully ran cask-repair in the past so I didn't need to re-setup my environment. When trying it today I got the following error
cask-repair subler
Updating taps… Ignoring path homebrew-cask/
Updated 1 tap (homebrew/cask).
/usr/local/bin/cask-repair: line 123: cd: /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask/Casks/subler.rb
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask/homebrew-cask/Casks: No such file or directory

Failed to change to directory of subler.rb.

the first path
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask/Casks/subler.rb is valid, but for some reason it repeats 'homebrew-cask' twice.
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask/homebrew-cask/Casks: No such file or director

I've tried this both with my regular shell zsh and running it from bash and both throw the same error.

Can’t reproduce. What’s the output of brew info cask-repair?

@vitorgalvao
Script to quickly repair outdated/broken Casks from homebrew-cask
https://github.com/vitorgalvao/tiny-scripts
/usr/local/Cellar/cask-repair/0.40.4 (5 files, 26.2KB) *
  Built from source on 2019-01-31 at 18:40:06
From: https://github.com/vitorgalvao/homebrew-tiny-scripts/blob/master/cask-repair.rb
==> Dependencies
Required: hub ✔
Recommended: hr ✔
==> Options
--without-hr
	Build without hr support```

Ignoring path homebrew-cask/

This seems to be the clue. What’s the output of ls "$(brew --repository)/Library/Taps/homebrew"?

ls "$(brew --repository)/Library/Taps/homebrew"
homebrew-cask          homebrew-cask-eid      homebrew-cask-versions homebrew-dupes         homebrew-services
homebrew-cask-drivers  homebrew-cask-fonts    homebrew-core          homebrew-science

ls "$(brew --repository)/Library/Taps/homebrew/homebrew-cask"
CODE_OF_CONDUCT.md               LICENSE                          cmd                              homebrew-cask
CONTRIBUTING.md                  README.md                        developer                        tap_migrations.json
Casks                            USAGE.md                         doc                              travis-buddy-failure-template.md

There you go. The extra nested directory does exist on your system.
brew untap Homebrew/cask && brew tap Homebrew/cask, or remove the directory.

Thanks @vitorgalvao.
I've had homebrew cask installed on this machine for long enough there was bound to be some mis-upgraded issues. Untapping and retapping solved it.

authors: skunkworker vitorgalvao

repo: vitorgalvao/tiny-scripts

license: Unlicense


text:
Unable to get a list of guilds you are in

All the dependencies for the bot appear to be in place, but it looks like Discum's API for getting guilds is broken. Is this true or am I missing something obvious? Can I somehow dump them manually as suggested by your script? Here's the relevant settings and error in question:

Yeah so I think there a separate piece of code I put in as a side script that will just output guilds into a text file Sent from my iPhoneOn Oct 30, 2023, at 2:19 PM, VineST @.***> wrote:
All the dependencies for the bot appear to be in place, but it looks like Discum's API for getting guilds is broken. Is this true or am I missing something obvious? Can I somehow dump them manually as suggested by your script? Here's the relevant settings and error in question:
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

Great; where can I find that? Doesn't seem to be in this repo, unless it's buried in the main mudaeautobot.py somewhere. I see two example text files with guild and user config but no way to succinctly fill them with my appropriate data

I think this is caused by a limitation of the library im using when the amount of server one joins becomes just really large. I havent tested it yet but as the the script is just there not in the main script

I think this is caused by a limitation of the library im using when the amount of server one joins becomes just really large. I havent tested it yet but as the the script is just there not in the main script

From what I recall, the problem stems from some text channels having certain characters in the channel topic that causes the variable to be invalid. Can't remember what characters was causing it but I think it was mentioned in 1 of Discum's issues.

Fixed in https://github.com/Nixeld/Discord-S.C.U.M/commit/eaa07d0c30ea7aac1d2427f4fb6f26d8dcef2069

Fixed in https://github.com/Nixeld/Discord-S.C.U.M/commit/eaa07d0c30ea7aac1d2427f4fb6f26d8dcef2069

Oh nice I can now worry about the simpler things now

authors: Nixeld VineST vivinano

repo: vivinano/MudaeAutoBot


text:
Fix demo image

It's quite diff look and feel 😄

Thanks for your PR. That image was fixed on the last PR (#1)

authors: ianko jascodes

repo: vizor-ui/vizor


text:
Automatic detection of object deletion and automatic releasing of freed-up object IDs

Hi Vjeko,
In the Overview of AL Object Ninja on the Marketplace there has been this text for a while now:
Note: Automatic detection of object deletion and automatic releasing of freed-up object IDs is currently in development and will be included in the next version.
A new version has now been released, but I don't see this functionality in the change log. When will this be released?
Thank you in advance!

Hi tboudrezMprise,
The description in Marketplace simply gave some ideas of features I want to work on. This particular feature is in my backlog and I will deliver it when I get around to it. There is no promise in the description of when something is coming, just what is coming in the future.
I hope you understand this is my hobby project that I do on my own spare time for free. That's why I cannot commit to any firm timeline about anything.
/Vjeko

authors: tboudrezMprise vjekob

repo: vjekob/al-objid


text:
Adjust context menu position for bootstrap modal

The user can give posX and posY as props to adjust the current position of the context menu.

Hi @vkbansal, I am not seeing the merged code after executing npm install --save react-contextmenu. Can you tell me what is the problem here?

It is not published yet. Will publish in some time

Ok thanks @vkbansal for a quick reply :)
It will be really helpful if I can get an estimated date.
Thanks again.

Published as 2.9.3

Thanks :)

repo: vkbansal/react-contextmenu

license: mit

license_source: bigquery


text:
MonetaryAmountType doesn't work with @ElementCollection (hypersistence-utils-hibernate-60)

Entity X containing @ElementCollection of type Y, where Y has a field of type MonetaryAmount, does not pass Hibernate's "metadata building" phase and raises following exception:
org.hibernate.MappingException: Could not instantiate collection persister implementor org.hibernate.persister.collection.BasicCollectionPersister for collection-role ...

    @Entity(name = "Salary")
    @Table(name = "salary")
    public static class Salary {
        @Id
        @GeneratedValue
        private long id;

        private String other;

        @ElementCollection
        private List<SalaryComponent> components = new ArrayList<>();

        public long getId() {
            return id;
        }

        public void setId(long id) {
            this.id = id;
        }

        public List<SalaryComponent> getComponents() {
            return components;
        }

        public String getOther() {
            return other;
        }

        public void setOther(String other) {
            this.other = other;
        }
    }

    @Embeddable
    public static class SalaryComponent {
        @AttributeOverride(name = "amount", column = @Column(name = "salary_amount"))
        @AttributeOverride(name = "currency", column = @Column(name = "salary_currency"))
        @CompositeType(MonetaryAmountType.class)
        private MonetaryAmount value;

        public SalaryComponent(MonetaryAmount value) {
            this.value = value;
        }

        public SalaryComponent() {

        }

        public MonetaryAmount getValue() {
            return value;
        }

        public void setValue(MonetaryAmount value) {
            this.value = value;
        }
    }

Looking forward to your Pull Request that fixes the issue.

Exception is raised because org.hibernate.cfg.PropertyContainer, which is responsible for the creation of metadata for the @Embeddable class, incorrectly constructs metadata for the embeddable type, because MonetaryAmountMapper doesn’t have getters&setters for its fields.
org.hibernate.cfg.PropertyContainer's contstructor is getting passed DEFAULT for defaultClassLevelAccessType parameter, which is then set to AccessType.PROPERTY, which results in PropertyContainer’s constructor relying on getters, instead of fields, for populating persistingAttributes.
In other cases (non-@ElementCollection ones), AccessLevel.FIELD is being passed in, thus not requiring MonetaryAmountMapper’s getters and resulting in correct mapping by Hibernate.

As I explained in my High-Performance Java Persistence book, @ElementCollection is a bad idea anyway.
So, you are better off using a bidirectional one-to-many where the MonetaryAmount is just a basic property in the child entity.

I have a specific use-case: list, very short one, of value objects - something similar to the example I created in test PostgreSQLMonetaryAmountTypeElementCollectionTest: Salary that is comprised of a couple of value components. They don't have their id etc..

Fixed.

authors: Sarrruman vladmihalcea

repo: vladmihalcea/hypersistence-utils


text:
[Feature]: Support specifying quant_config details in the LLM or Server entrypoints

🚀 The feature, motivation and pitch
Background:
With the recent support for deepspeedfp quantization introduced in https://github.com/vllm-project/vllm/pull/4652 and https://github.com/vllm-project/vllm/pull/4690, a new issue has emerged due to the nature of the runtime quantization implementation. This implementation allows users to load an unquantized model and enable the quantization argument to reduce the memory footprint required for loading the model. However, the main challenge lies in the fact that the deepspeedfp implementation has a parameter num_bits that supports quantizing the weights down to either 8 or 6 bits, with the default value set to 8.
Problem Statement:
Currently, if a user wants to apply quantization="deepspeedfp", vLLM will only be able to quantize the model to num_bits=8 since that is the default value. The only way to change this behavior is by providing a quant_config.json file that explicitly defines the desired value for num_bits. This limitation restricts users from easily customizing the quantization settings without modifying the configuration file.
Proposed Solution:
To address this issue, we propose adding a new argument quant_kwargs=Union[str, Dict] to the common LLM() and OpenAI server interfaces in vLLM. This argument would accept either a dictionary of keyword arguments or a string that can be converted to a dictionary. The purpose of quant_kwargs is to allow users to override the default values or loaded config values for the quantization configuration.
By introducing this new argument, users gain the flexibility to specify custom quantization settings directly through the API, without the need to modify the quant_config.json file. This enhancement improves the usability and convenience of applying quantization in vLLM, enabling users to easily experiment with different quantization settings based on their specific requirements.
Alternatives
No response
Additional context
No response

Can you tag with RFC?

repo: vllm-project/vllm


text:
[Bug]: Error: No available node types can fulfill resource request

Your current environment

The output of `python collect_env.py`
Your output of `python collect_env.py` here

🐛 Describe the bug
I'm testing a Llama3.1-70B on two nodes with 2x8 L4 GPUs. It works fine with v0.5.4.
python -m vllm.entrypoints.openai.api_server --model /secondary/thies/Hermes-3-Llama-3.1-70B/ --tensor-parallel-size 16 --max-num-batched-tokens 8192 --gpu-memory-utilization 0.85 --distributed-executor-backend=ray
Now when I upgrade to master I get this error:
(autoscaler +7s) Error: No available node types can fulfill resource request {'node:<IP>': 0.001, 'GPU': 1.0}. Add suitable node types to this cluster to resolve this issue.
INFO 08-23 10:16:22 ray_utils.py:174] Waiting for creating a placement group of specs for 10 seconds. specs=[{'node:<IP>': 0.001, 'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}, {'GPU': 1.0}]. Check `ray status` to see if you have enough resources.

ray status says:
Node status
---------------------------------------------------------------
Active:
 1 node_fd78035d54d28a1357f3b6d412a3a6d11595cdb60f962e3b6ba51777
 1 node_493f441c8cd5c582361ee8634f5cd1c2cb3413983a27ae9a083d1d55
Pending:
 (no pending nodes)
Recent failures:
 (no failures)

Resources
---------------------------------------------------------------
Usage:
 0.0/128.0 CPU
 0.0/16.0 GPU
 0B/1.59TiB memory
 0B/372.53GiB object_store_memory

Demands:
 (no resource demands)```

Then why doesn't the IP address that ray is looking for match the one used during the cluster startup? Where exactly is the issue?

How did you solve this problem？
I encountered the same problem, I have two IPs, one is the public network connection IP1, and the other is the IP container communication IP2. My ray start is
IP2， But the ray looking for is ip1

I don't know how to change the IP which ray uses. I never tried, I just use the working one.
Did you check the routing of your network (outbound IP)?

Okay, the outbound IP addresses of my two containers are not compatible. Thank you for your reply！


text:
excerpt_separator  is rendered as text

When I specify a dedicated excerpt_separator such as  in my _config.yml file, then the following happens:

In my front-page index.html file, the excerpts are correctly cut off immediately at .
In the blog post itself,  does actually appear as textual content in the middle of the text, although it should actually be hidden since it is a html comment. For any reason, Redcarpet escapes the greater than < and less than > characters, thus rendering HTML comments unusable in markdown.

I do not want to use something like newlines \n\n as an excerpt_separator, because I want to be able to cut off an excerpt in the middle of a paragraph.
I am referring to the current Redcarpet version available at GitHub's Jekyll.

Alright, I switched to using the excerpt separator  in combination with the CSS rule .more { display: none; }. Not my top favorite solution but it works smoothly.

I had exactly the same issue and worked around it by changing the page and post layout to embed
{{ content | replace: '', '' }}
This cuts out the excerpt separator from the page and everything works as expected.

I cant get the {{ content | replace: '', '' }} trick to work, if I use another excerpt marker like end_exc it works. using a html comment feels better though. Ill keep looking.

Found a better solution: {{ content | remove_first: '', '' }}
Now you can use  as a global excerpt_separator in config.
You can use http://www.freeformatter.com/html-escape.html#ad-output to escape any word you want.

Where exactly are you putting
{{ content | remove_first: '', '' }}

is it supposed to replace {{ content}} like so?

    {{ content | remove_first: '', '' }}

This is still not working for me.  I guess I am putting the filter in the wrong place?

Here is where i put it: (post.html)
https://github.com/stylekit/stylekit.github.io/search?utf8=✓&q=remove_first
Here is my entire jekyll setup: https://github.com/stylekit/stylekit.github.io
Here is some context about this jekyll setup:
http://stylekit.org/blog/2016/01/06/The-Jekyll-Setup/
Good luck and cross your toes!

Thank!

authors: Lrtwjhs StefanKrauth eonist fkostadinov zswyche

repo: vmg/redcarpet


text:
Track latest reconciler-runtime

What this PR does / why we need it

migrate use of deprecated and now removed apis from reconciler-runtime
apply generics to reconcilers

Additional information or special notes for your reviewer
Keeping draft until reconciler-runtime is released, expected to be shortly after Kubernetes 1.27.

Codecov Report

Merging #407 (8bf427d) into main (e3107ee) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #407   +/-   ##
=======================================
  Coverage   69.88%   69.88%
=======================================
  Files          17       17
  Lines         943      943
=======================================
  Hits          659      659
  Misses        263      263
  Partials       21       21

Impacted Files
Coverage Δ

...ntions/v1alpha1/clusterpodconvention_validation.go
100.00% <100.00%> (ø)

.../apis/conventions/v1alpha1/podintent_validation.go
100.00% <100.00%> (ø)

pkg/controllers/podintent_reconciler.go
85.64% <100.00%> (-0.08%)
:arrow_down:

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

Closing this PR since I can't request changes on a PR that I opened.
@katmutua please open a new PR with only the changes necessary to upgrade reconciler-runtime/controller-runtime/k8s.io, leave all other business logic changes to another PR.

authors: codecov-commenter scothis

repo: vmware-tanzu/cartographer-conventions


text:
Update readme to include kubectl-buildkit dependency

kubectl-buildkit is now a prerequisite to running the e2e tests
https://github.com/vmware-tanzu/carvel-kbld/blob/develop/hack/test-e2e.sh#L10-L13

I see the readme has instructions to run the tests with minicube, that should take care of these prereqs

repo: vmware-tanzu/carvel-kbld


text:
Ensure TCE packages are tagged in Harbor

Feature Request
The Harbor OCI Registry will garbage collect (i.e. delete) images/bundles that do not have tags. TCE has encountered issues in the past where packages "disappear".  A package would be referenced by a tag, which then resolved to a SHA. The tag is removed from the image on Harbor.  Harbor runs GC and deletes the image. Any TCE cluster using a package repository that references that image will now fail to reconcile.
A tool, tagger, was created to scan the TCE Harbor project and add a tag to any image/bundle that does not already have multiple tags associated to it. We should run the tagger process in a workflow or on a scheduled basis to ensure that our images/bundles will always be tagged and available.
Describe alternatives you've considered
One means to ensure that an image/bundle always has 2 tags is to push the image/bundle with a program like imgpkg which will now automatically add a tag (that contains the SHA for uniqueness) to a newly created image/bundle. However, there is no guarantee that a user will use a newer version of imgpkg with this feature.
Additional context

@seemiller what's the status on this one?
I believe we just needed to get with @dvonthenen and knock this out.

Might need to create a robot account. I'll check that and get with @dvonthenen

@dvonthenen Can you use the robot$github-ci account, or should we make a new one?

@dvonthenen Can you use the robot$github-ci account, or should we make a new one?

Will take a look to see if we can.
What about the config.json file? where can I find that? I don't see it in the tagger folder.

the config.json references the Docker config that contains the login credentials. If you were to run tagger locally, it's mapping your ~/.docker/config.json to /root/.docker/config.json in the container.

gotcha

You can look at your own file on your local workstation. TBH, I'm not quite sure how it works since there aren't any creds actually in that file

authors: dvonthenen joshrosso seemiller

repo: vmware-tanzu/community-edition


text:
Create VDS task fails due to unsupported parameter

The variable vs_port is being passed in the networking tasks. This needs to be removed.

Looks like networkIOControl also needs to be removed.

The variables MTU, discovery_protocol, and discovery_operation need to be added to the networking tasks.

repo: vmware/ansible-role-vcenter


text:
Enable DAML on any cloud or local

As a user, I should be able to use DAML with any cloud or local file system.  DAML uses AWS S3 and SQS services now.

close

reopen


text:
Add column / info about used storage

Add column/info about the used storage for a project and/or an image.
Can be useful to see the big consumers.
Thanks

Considering the implementation of docker registry, the images actually share the storage, so it's cannot give accurate information like how much space is taken by which particular image.

This has been delivered, storage consumption at the project level

authors: carlosperezepfl reasonerjt xaleeks

repo: vmware/harbor


text:
pip安装的一些列模块都无法使用

ImportError: cannot import name 'CtpGateway' from 'vnpy_ctp' (/usr/local/lib/python3.8/site-packages/vnpy_ctp/init.py)
mac系统

vnpy_ctp只支持Python 3.7 64位的Windows/Linux
CTP官方就不支持Mac

from vnpy.gateway.ctp import CtpGateway
这个模块怎么替换呢

vnpy_ctp只支持Python 3.7 64位的Windows/Linux
CTP官方就不支持Mac

from vnpy.gateway.ctp import CtpGateway
这个模块怎么替换呢

直接在run.py中移除掉这个模块的加载就行

authors: FreAirLy vnpy

repo: vnpy/vnpy


text:
有开关可以方便的关闭界面的显示吗？

因为放在服务器上跑，不需要界面，只要有日志就好了，有开关可以很方便去关闭吗？

请参考Dev分支下的examples/CtaTrading

authors: JasonXZh vnpy


text:
Easier error displaying

When a story errors, if we could somehow grab a block of the files source code to display and then highlight the error'd line somewhere in the previewer, that'd be a huge thing for newer developers. It was one of my most requested features when I was working on it.

Regarding this, I figured out about ScriptContext.Error:Connect which can produce an error and also passes the file that errored. However, I'm unsure how we could highlight the line that errors as I don't see anywhere that passes the line number. Our best shot would to be somehow grab it from the stack trace or something. If you could look deeper into this in hopes of possibly finding something, that'd be great!

repo: vocksel/flipbook


text:
Instructions to deploy your own gallery

It would be great to add instructions in the README.md to deploy your own TLJH with the voila gallery.
For TLJH it could point to https://the-littlest-jupyterhub.readthedocs.io.
And for the gallery the extra steps to get installed.

https://github.com/voila-gallery/gallery/issues/10 has some right now

Nice. Ideally we can end up with something like this to automatically provision the machines on DO / OVH and so on:
curl https://raw.githubusercontent.com/jupyterhub/the-littlest-jupyterhub/master/bootstrap/bootstrap.py \
 | sudo python3 - \
   --plugin git+https://github.com/voila-gallery/gallery \
   --admin voila

@jtpio yeah, I think once #10 is closed (post-install systemd unit) we can use the command you just wrote here.

There will also be the question on how to build / rebuild the docker images.

Right that's the last item!

I'd say the way to do it is to write a small script that does the following:

Git pull the repo to get newest gallery.yaml
Run the build images script
Sleep for some time, and redo

We can then put this script in a systemd unit (I like doing that over putting it in a timer).
We should also add some logic to the JupyterHub service to only show gallery items that have an existing image. This prevents us from showing gallery items that will fail to launch since their images haven't been built yet.

1. Git pull the repo to get newest gallery.yaml

Maybe we could just fetch the gallery.yaml file instead, since it's the only file the build_images.py script needs to build new Docker images?

authors: jtpio yuvipanda

repo: voila-gallery/gallery


text:
How to use MaterialLookup in validateEntity

I create a MaterialLookup in Material Module. but when i try to use this in validateEntity function in SalesOrderItem module. it always says Scripts in not defined. How to use MaterialLookup in validateEntity?

Below code is also can be successfully running. I just confused why the MaterialLookup cannot be directly use.
protected validateEntity(row: SalesOrderItemRow, id: number) {
            if (!super.validateEntity(row, id))
                return false;

            row.MaterialName = MovieTutorial.Material.MaterialsRow.getLookup()
                .itemById[row.MaterialId].MaterialName;
            return true;
        }

You are in script code.

authors: PanChenhao volkanceylan

repo: volkanceylan/Serenity


text:
The tasks seems to be called twice when it should be one

Using the same code from https://github.com/voltrb/volt/issues/179, dunno if it is related.
This is the log when I type in one character. The task should be called once but seems like it is being called twice.
--- EDIT ---
The computation is being called twice in the beginning of def index of the controller as confirmed in the computation loop with puts.
Client log (I added in the resolve block, not in the gist version):
2015-05-02 21:39:05.769 page.js:15432 received result count 116
2015-05-02 21:39:05.769 page.js:15432 received result count 0

Server log:
[INFO] file changed, reloading server and client...
127.0.0.1 - - [02/May/2015 21:27:03] "GET / HTTP/1.1" 200 - 0.0143

[INFO] task QueryTasks#add_listener in 11.767ms
with args: "users", [["find", {"_id"=>"c4c274b14e1f047baf41b1eb"}]]

[DEBUG] Server: job_fulltext_search S

[DEBUG] keys: [:_id, :title]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]

...
...
...

[DEBUG] keys: [:_id, :company_id, :open, :title, :url, :job_type, :descriptions, :responsibilities, :requirements]
Job count 116

[INFO] task SearchTasks#job_fulltext_search in 214.69ms
with args: "S"

[INFO] task QueryTasks#add_listener in 165.531ms
with args: "jobs", [["find"]]

[DEBUG] Server: job_fulltext_search S
Job count 0

[INFO] task SearchTasks#job_fulltext_search in 86.566ms
with args: "S"

@pencilcheck sorry it took me so long to get to this one.  Would you mind pushing a simple project with the example code?

This is a long time ago, perhaps with the new project it will be fixed. Sorry I don't think I have the project code still. Even if I do it would be so old probably pointless. But if I remember correctly, you said in the server task it is run on the server and the client side.

I'm going to close this for now, and if you see it again, please reopen.  I think I fixed the issue a while back.  Thanks!

authors: pencilcheck ryanstout

repo: voltrb/volt


text:
Remove console logs

The console logs from this plugin are polluting the browser console in every page that I visit, which is distracting when doing development debugging.
Can you please remove and clean up all console statements from the code and only run these when you are testing/debugging?
Other than that great plugin, I don't know what Google was thinking.

Pushed an update to remove the logs.
https://github.com/volumetric/Bring-Google-View-Image-Back/commit/b11a872257520c9bd0304456773c40376e3d2fcc

authors: adamreisnz volumetric

repo: volumetric/Bring-Google-View-Image-Back


text:
Change CRC library

CRC was incorrect due to the default setting in the library not being correct by default. found solution in the issues tab and confirmed successful firmware example update using the provided pre compiled app.

Created another PR: https://github.com/vovagorodok/ArduinoBleOTA/pull/28

authors: Pikokosan vovagorodok

repo: vovagorodok/ArduinoBleOTA


text:
Update the bar items buttons

Update the bar item buttons to make it less confusing.
The icon displayed now shows the state of the action.
If the microphone is on mute, then the button will display a microphone with a line across.
Issue: Confusing UX in Speaker button #15

It seems that on little devices, the icons will introduce an issue with the defined @dimen/bar_item_icon_padding padding inside the drawable themselves.
We should make sure that devices with small width are reacting properly

It seems that on little devices, the icons will introduce an issue with the defined @dimen/bar_item_icon_padding padding inside the drawable themselves.
We should make sure that devices with small width are reacting properly

@codlab I just tested on a small screen (<480px wide) and the icons are actually not displayed properly, but it's because of the fixed dimension of the ImageView:
<dimen name="conferencebar_view_item_height">60dp</dimen>

The @dimen/bar_item_icon_padding padding has no impact on the icon display on low resolution screen.

@codlab I just tested on a small screen (<480px wide) and the icons are actually not displayed properly, but it's because of the fixed dimension of the ImageView:
<dimen name="conferencebar_view_item_height">60dp</dimen>

The @dimen/bar_item_icon_padding padding has no impact on the icon display on low resolution screen.

Since the issue was also appearing in the past, I will merge it right away, we will just need to create the proper swXdp filters for the various screens : the minimal ones first

Since the issue was also appearing in the past, I will merge it right away, we will just need to create the proper swXdp filters for the various screens : the minimal ones first

authors: FabienLavocat codlab

repo: voxeet/voxeet-uxkit-android


text:
[BUG] Interactive plots are not updating in response to selections in Jupyter notebooks

System information

OS Platform and Distribution:  Ubuntu 18.04 (remote), Win 10 (local)
FiftyOne installed from: pip install fiftyone
FiftyOne version (run fiftyone --version): fiftyone v0.11.1, Voxel51, Inc
Python version: Python 3.7.10 ( conda env)

Commands to reproduce
Follow the exact tutorial at:
https://voxel51.com/docs/fiftyone/tutorials/open_images.html
Except:

Jupyter notebook is launched in remote mode: jupyter notebook --no-browser --port=6008 --ip=0.0.0.0
The fifty session is started by: session = fo.launch_app(view=eval_view, auto=False), and the fifty APP is running on a new tab instead within the cell of jupyter.

Describe the problem
When following the tutorial to interactively visualize the object detection embeddings, after Lasso selection or box selection, there is no update view in the fifty APP.
What areas of FiftyOne does this bug affect?

[x] App: FiftyOne application issue
[ ] Core: Core fiftyone Python library issue
[ ] Server: Fiftyone server issue

Willingness to contribute
The FiftyOne Community encourages bug fix contributions. Would you or another
member of your organization be willing to contribute a fix for this bug to the
FiftyOne codebase?

[ ] Yes. I can contribute a fix for this bug independently.
[ ] Yes. I would be willing to contribute a fix for this bug with guidance
from the FiftyOne community.
[x] No. I cannot contribute a bug fix at this time.

Thanks, @wingvortex. I'm seeing this issue, as well. Stay tuned.

Hey guys, I'm not able to reproduce this on my setup (which was
remote: Ubuntu 18.04.5 LTS
local: macOS 11.3.1
browser: Chrome
Python: 3.8.10 (conda env)
FiftyOne: v0.11.1 (source build)

I got started like so:
# on remote
jupyter notebook --no-browser --port=1234 /path/to/open_images.ipynb

# on local

# connect to notebook
ssh -N -L 1234:localhost:1234 brian@voxelbb1.ddns.net

# setup App usage on default port 5151
ssh -N -L 5151:localhost:5151 brian@voxelbb1.ddns.net

# now open localhost:1234 in browser

Skipping to the relevant section in the notebook, I ran the following and was able to interact with plots as expected.
session = fo.launch_app(view=eval_view, auto=False)
# open localhost:5151 in another browser tab

bbox_area = F("bounding_box")[2] * F("bounding_box")[3]
areas = eval_view.values("predictions.detections[]", bbox_area)

plot = results.visualize(labels="predictions.detections.label", sizes=areas)
plot.show()

session.plots.attach(plot)

Variables that come to mind to me are:

Are you sure you ran session.plots.attach(plot)? This is required in order for the App to automatically update in response to plot selections
Is the fact that I'm using a source build the issue? (unlikely to me)
Is it a browser or local OS issue? (also seems unlikely to me)

Thanks, @benjaminpkane  @brimoor
Yes, session.plots.attach(plot) has been run.  Chrome and Edge browsers were both tested.
The complete code is:
import fiftyone as fo

# Load ground truth
val_dataset = fo.Dataset.from_dir(
    dataset_type=fo.types.COCODetectionDataset,
    data_path=IMG_PATH,
    labels_path=LABEL_PATH,
    label_field="ground_truth",
)
val_dataset.persistent = True

# Add predictions to dataset
val_dataset.merge_dir(
    dataset_type=fo.types.COCODetectionDataset,
    data_path=IMG_PATH,
    labels_path=PRED_PATH,
    label_field="faster_rcnn",
)

from fiftyone import ViewField as F

# Only contains detections with high confidence
high_conf_view = val_dataset.filter_labels("faster_rcnn", F("confidence") > 0.4)

# Evaluate the predictions in the `faster_rcnn` field of `high_conf_view`
results = high_conf_view.evaluate_detections(
    "faster_rcnn",
    gt_field="ground_truth",
    eval_key="eval",
    compute_mAP=True,
)

# Load the evaluation view
eval_view = val_dataset.load_evaluation_view("eval")

# Start APP
session = fo.launch_app(view=eval_view, auto=False)

# Computes the area of each predicted object
bbox_area = F("bounding_box")[2] * F("bounding_box")[3]
areas = eval_view.values("faster_rcnn.detections[]", bbox_area)

plot = results.visualize(labels="faster_rcnn.detections.label", sizes=areas)
plot.show()

# Attach plot to session
session.plots.attach(plot)

Here's a tweaked version of the above code that is semantically correct (compute_visualization() is required, not evaluate_detections()):
import fiftyone as fo
import fiftyone.brain as fob
import fiftyone.zoo as foz
from fiftyone import ViewField as F

dataset = foz.load_zoo_dataset("quickstart")
dataset.persistent = True

high_conf_view = dataset.filter_labels("predictions", F("confidence") > 0.4)

fob.compute_visualization(
    high_conf_view,
    patches_field="predictions",
    brain_key="pred_viz",
    num_dims=2,
    method="umap",
    verbose=True,
    seed=51,
)

results = dataset.load_brain_results("pred_viz")

session = fo.launch_app(view=high_conf_view, auto=False)
# session.open_tab()
# open localhost:5151 in new tab

bbox_area = F("bounding_box")[2] * F("bounding_box")[3]
areas = high_conf_view.values("predictions.detections[]", bbox_area)

plot = results.visualize(labels="predictions.detections.label", sizes=areas)
plot.show()

session.plots.attach(plot)

Hey @wingvortex @benjaminpkane. I was able to reproduce the issue when using pip install fiftyone rather than a source install.
It turns out that something in plotly>=5 introduced some backwards incompatible changes.
Installing the previous version of plotly should fix the issue!
pip install plotly==4.14.3

Thanks, @brimoor. Yes, you are right, the 'compute_visualization()' was missed out for the 'eval_view'. As your tweaked version showed, there is no need to run the evaluation here for this interactive plot demo.
In my case, the following way fixs the bug:
pip install plotly==4.14.3
jupyter labextension install jupyterlab-plotly@4.14.3
jupyter labextension install @jupyter-widgets/jupyterlab-manager plotlywidget@4.14.3

Without ' labextension install',  an error would pop out:  "Error displaying widget: model not found"

Good news: https://github.com/voxel51/fiftyone/pull/1981 resolves this issue! As of the next release (fiftyone>0.16.5), FiftyOne's plotly requirement will simply be plotly>=4.14.
In fact, the current FiftyOne release is actually already fully compatible with plotly>=5.2.1, so you can just manually install a newer plotly version and ignore FiftyOne's version complaints.

authors: benjaminpkane brimoor wingvortex


text:
Improve MongoDB 3.x support

This improves support for MongoDB 3.x, which currently doesn't work very well:

The output format of mongo --version has changed.
The behaviour of the localhost exemption mode has changed.
There is a new password hashing scheme based on SCRAM-SHA1.

See individual commits for details and rationale on each change.

This is very important change! please merge!

I'll look at fixing the test failures here when I'm back at work in the new year.  However, we've been running this branch in production with no problems so far.

I had to do some additional fixing to make this actually work for us, but with the fixes included in https://github.com/cybercom-finland/puppetlabs-mongodb/tree/0.17-fixes everything seems to work as it should, with authentication enabled, admin creation and a 3-node replica set.
The code should probably force the creation of the admin user for MongoDB >= 3.0 when authentication is not explicitly disabled.
The is_master facts and ruby code contain some pretty ugly regexp hacks. Is there really no better way to handle this? It also seems that every provider implements their own logic, which doesn't seem optimal either.
For example, I changed db_ismaster to only return the one field it's interested in (still wrapped in a json object and parsed so that it errors out if mongo returns garbage) and it seems to work much better. I don't know why the code tried to remove the non-parseable parts with regexps instead.

This module is essentially broken for 3.x versions as of now, this contains some good code to get started with adding proper 3.x support. Same as the user management the management of databases is also broken.
Debug: Request failed: 'Execution of '/usr/bin/mongo admin --quiet --host :27017 --eval printjson(db.getMongo().getDBs())' returned 1:
2017-01-16T13:32:20.348+0100 E QUERY    [main] Error: Empty host component parsing HostAndPort from ":27017" :

Has anyone looked at the test failures (relating to create_admin among other things)? I have not tested myself yet, but a colleague mentioned that the admin user is not created correctly even with this PR.
I'm guessing it wouldn't be merged until at least the tests can be improved and / or test failures corrected?

@wyardley most of the problems seem to be due to facts not working properly I think. Look at my  branch (link above) for a slightly fixed version that works. (caveat: at least it does for me)

@oranenj: have you made a PR of your fixes?

@wyardley: no. They're mostly just this branch + another PR plus a couple additional fixes that were enough to get my 3.4 replica set installed without errors. I don't have the time to massage them into a proper pull request unfortunately, but anyone is free to draw inspiration from them if it helps :)
But the gist of it seems to be that with 3.x you need to

assume that the admin db exists. which it should, unless your installation upgraded from 2.x and is broken, I guess.
Always enable auth, and when mongodb starts for the first time, connect via localhost to the admin db, ignore any errors, and create the admin user. This is the only operation allowed when there is no preconfigured user, and after you've added a user, you must reauthenticate with the user you created.

The above seems to work just fine even with replica sets. With the changes in this PR, There are some warnings when bringing up the first nodes of the set, but it stabilizes pretty nicely.

Any possibility of getting this merged soon?

@unixwitch are you willing to rework this after we do a Voxpupuli modulesync? This module is now in the Voxpupuli namespace.

ps - We can drop Mongodb 2.x support entirely if it makes things any easier.

#405 has what I'm thinking should be in 2.0.0 release, which would drop support for 2.x entirely.
If folks on this PR are interested in helping, please connect with me on IRC or Slack (in #voxpupuli); I think the plan is to rip out 2.x support entirely, so it may end up being easier to just rework some of this stuff and resubmit, but open to suggestions.
Unfortunately, the data types conversion will probably create some additional hassles in terms of rebasing.

@unixwitch are you willing to rework this after we do a Voxpupuli modulesync?

Sorry, I can't commit any time to this at the moment as we're very busy with some other internal work and we only use MongoDB in a couple of minor places.  I'm happy to test any proposed changes, though.
If you're removing 2.x support though (and presumably breaking backward compatibility at the same time), I think you can probably do this in a much cleaner way than I did here anyway.

@unixwitch no worries! It's been a long time since this was created. I will leave the PR open for now in case someone wants to rework it, and also just for reference.

Why is this still waiting after over a year? Is the puppet-mongodb module a dead project at this point?

@diranged, it is not dead. This PR as merge conflicts that must be resolved. You can cherry-pick the commits and rebase them if you want. Afterwards we can review and merge.

81ac1d7ff7267255f3de4653bd26c90feb0b829c took care of the version fact. I'm not entirely sure about the admin user creation and I'd like to see an updated PR with acceptance tests.

authors: DeathBorn bastelfreak diranged ekohl oranenj runejuhl tobias-urdin unixwitch wyardley

repo: voxpupuli/puppet-mongodb


text:
Fix edit button consistency

The button style is not consistent accross pages, so move the button in its own include file and rely on it where applicable.

would be nice if github could deploy it to a staging page.

authors: bastelfreak smortex


text:
use b.path API when appropiate

it looks like zig 0.12 shipped with both b.path() and .{ .path = "..."} ways to construct a LazyPath, however post-0.12, the latter is completely removed (well, you could use .src_path, but that's discouraged).
I'm PR'ing this as the change should be compatible with both 0.12 and master branch at the same time (I'm having to do some experiments with zig master)

Thanks !

repo: vrischmann/zig-sqlite


text:
Adding Coveralls to Actions Workflow

Issue #, if available:
Description of changes:
Travis CI had coveralls running too. This PR adds Coveralls Workflow to GitHub Actions.
Referred to: https://github.com/marketplace/actions/coveralls-github-action
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

GitHub Actions Workflow was not triggered because the file had a yaml syntax error. Correcting that and adding that to this PR.


text:
hung notes on pattern 1

not sure why pattern1 is considered "..." instead of "---".
how do i create "---" ?

Pressing "A" creates a note off.  When creating a new track, Sointu unnecessarily initialized pattern 0 with note offs. I've just pushed a commit removing this.
The reason for this is that internally, 0 = note off and 1 = hold. I should probably make 0 = hold as that's the default "empty" one would expect, but the reason why it is now like this is historical: this is the 4klang player stores them.

authors: esaruoho vsariola

repo: vsariola/sointu


text:
watermarking the pdf

Do you support watermarking on exported PDF？

https://github.com/vsch/flexmark-java/blob/master/flexmark-java-samples/src/com/vladsch/flexmark/java/samples/PdfConverter.java#L161
PdfConverterExtension.exportToPdf("/Users/vlad/src/pdf/flexmark-java.pdf", html, "", OPTIONS);

@sungmore, the PDF renderer is a thing wrapper around the HtmlToPdf library. It is indented only as a convenience for basic conversion.
If you require greater control over the PDF rendering it is probably easier to implement your own copy of PdfConverterExtension.java and change it to use the full features of the HtmlToPdf library for your project.
The extension is 150 lines of code so there is not much to its functionality.

@sungmore, the PDF renderer is a thing wrapper around the HtmlToPdf library. It is indented only as a convenience for basic conversion.
If you require greater control over the PDF rendering it is probably easier to implement your own copy of PdfConverterExtension.java and change it to use the full features of the HtmlToPdf library for your project.
The extension is 150 lines of code so there is not much to its functionality.

Thanks，sorry for another question:  if I want to create PDF stream to web. How should I do on
` public static void exportToPdf(OutputStream os, String html, String url, PdfRendererBuilder.TextDirection defaultTextDirection, ProtectionPolicy protectionPolicy) {
PdfBoxRenderer renderer = null;
try {
// There are more options on the builder than shown below.
PdfRendererBuilder builder = new PdfRendererBuilder();
        handleTextDirection(defaultTextDirection, builder);
        handleW3cDocument(html, url, builder);

        builder.toStream(os);
        renderer = builder.buildPdfRenderer();
        PDDocument document = renderer.getPdfDocument();

        if (protectionPolicy != null)
            document.protect(protectionPolicy);

        renderer.layout();
        renderer.createPDF();
    } catch (Exception e) {
        e.printStackTrace();
        // LOG exception
    } finally {
        try {
            if (renderer != null) {
                renderer.close();
            }
            os.close();
        } catch (IOException e) {
            // swallow
        }
    }
}`

authors: sungmore vsch

repo: vsch/flexmark-java


text:
Pass arguments to neovim

I need to pass --noplugin to neovim since some of the plugins I installed conflict with vscode.

You don't need to pass arguments. Just check exists('g:vscode') in your config and do what you want there:
if exists('g:vscode')
  set noloadplugins
  finish
endif

authors: justinmk rekaerst

repo: vscode-neovim/vscode-neovim


text:
Add Image view from gist

related: image view is broken.
should this displaly an image?

Originally posted by @RandomFractals in https://github.com/vsls-contrib/gistpad/issues/89#issuecomment-570792346

expected: .png and .svg from gists to work
not sure what that entails on your end, but those are very common image files used and shared in gists by devs.

Yeah this did work, but it may have regressed at some point. I’ll take a look today.

This should now be fixed!

I still get an error for that thumbnail.png:
https://gist.githubusercontent.com/domoritz/455e1c7872c4b38a58b90df0c3d7b1b9/raw/01f0fe739291d0aabf4c2e10651ff0b6652f4c38/thumbnail.png

authors: RandomFractals lostintangent

repo: vsls-contrib/gistpad


text:
Add "Card" library

Project URL
https://github.com/PaoloCuscela/Cards
Description
Cards brings to XCode the card views you can see in the new iOS XI Appstore.
Why it should be included to awesome-ios (optional)
Checklist

[X] Only one project/change is in this pull request
[X] Addition in chronological order (bottom of category)
[X] Supports iOS 9 / tvOS 10 or later
[X] Supports Swift 3 or later
[X] Has a commit from less than 2 years ago
[X] Has a clear README in English

          2 Warnings

:warning:
Please rebase to get rid of the merge commits in this Pull Request

:warning:
Found 1 link issue, a project collaborator will take care of these, thanks :)

Link issue by awesome_bot

Line
Status
Link

1270
301
https://github.com/west0r/SwiftyVK redirects tohttps://github.com/SwiftyVK/SwiftyVK

  Generated by :no_entry_sign: Danger

Hey @Yogesh-MV, unfortunately this is a dupe

authors: Yogesh-MV danger-awesome-ios lfarah

repo: vsouza/awesome-ios


text:
Add SpicyButton

Added SpicyButton
Project URL

https://github.com/lukecrum/SpicyButton
Description

Added SpicyButton to the button category
Why it should be included to awesome-ios (optional)
Checklist

[X] Only one project/change is in this pull request
[X] Addition in chronological order (bottom of category)
[X] Supports iOS 9 / tvOS 10 or later
[X] Supports Swift 4 or later
[X] Has a commit from less than 2 years ago
[X] Has a clear README in English

          1 Warning

:warning:
Found 1 link issue, a project collaborator will take care of these, thanks :)

Link issue by awesome_bot

Line
Status
Link

1269
301
https://creativesdk.adobe.com/ redirects tohttps://www.adobe.io/apis/creativecloud/creativesdk.html

  Generated by :no_entry_sign: Danger

Hey @lukecrum, thanks for contributing! Please fix the issue above so we can Merge your PR 😉

Oh, I must’ve missed that. Apologies

fixed ;)

No problem! Thanks for the quick fix

thanks for the quick merge!

authors: aaronjsutton danger-awesome-ios lfarah lukecrum


text:
PopupViewController

Project URL
https://github.com/dimillian/PopupViewController
Description
I've added PopupViewController to the readme, it's a UIAlertController drop in replacement with a lot of customisations options, and all written in Swift!
Checklist

[x] Only one project is in this pull request
[x] Addition in chronological order (bottom of category)
[x] Travis CI pass
[x] Supports iOS 7 or later
[x] Has a commit from less than 2 years ago
[x] Has a clear README in English

thanks.

authors: Dimillian vsouza


text:
Generate .tern-project with vue init

Following of https://github.com/vuejs/vue-cli/issues/404.

I'm not too convinced that we should add another config file to the template people have to know about ("what is this for? should I do something with it?"), especially when it's about something like ternjs (which is a great project, but ...) which is not required to use this template's functionality and olny used by a fraction of developers.

authors: LinusBorg Yamakaky

repo: vuejs-templates/webpack