Vite PWA not including correct path to images in manifest

I have a site with PWA img assets in
img/icons/imagename.png
I am trying to build the site with vite and vite-plugin-pwa to use it as a pwa.
The vite.config.js and the index.html are in the project root directory. Images are in img directory.
The problem is that when I run the build file places the imgs in the folder assets/imageName###.png
For example chrome192.png is placed in assets/chrome192.f25426fd.png
However, the manifest file generated upon build manifest.webmanifest still contains
        src: 'img/icons/chrome192.png',

The application tab for dev tools in chrome shows {rootURL}/img/icon/chrome192.png not found. Which is expected since the bundling with vite build places it in a different folder (assets).
Why does it not update the path of the images in the generated manifest.webmanifest?
Isn't that the whole point of the vite-plugin-pwa to keep track of the filenames that change upon build.
Another issue is that I have different routes eg: html/about
Inside the about.html generated on build, the web manifest path is given as:
<link rel="manifest" href="./manifest.webmanifest">

It uses this path instead of using ../manifest.webmanifest or maybe a path from the root without the ./ such as href="./manifest.webmanifest"
My vite.config.js is shown below
import { resolve } from 'path';
import { defineConfig } from 'vite';
import { VitePWA } from 'vite-plugin-pwa'
// import legacy from '@vitejs/plugin-legacy';

export default defineConfig({
  plugins: [
    VitePWA({
      includeAssets: ['img/icons/favicon.png', 'img/icons/maskable_icon.png' ],
      manifest: {
        name: 'Final Countdown',
        start_url: "/",
        short_name: 'Final Countdown',
        description: 'Awesome countdown App',
        theme_color: '#031c36',
        icons: [
          {
            src: 'img/icons/chrome192.png',
            sizes: '192x192',
            type: 'image/png'
          },
          {
            src: 'img/icons/chrome512.png',
            sizes: '512x512',
            type: 'image/png'
          },
          {
            src: 'img/icons/chrome512.png',
            sizes: '512x512',
            type: 'image/png',
            purpose: 'any maskable'
          }
        ]
      }
    })

  ],
  build: {
    rollupOptions: {
      input: {
        main: resolve(__dirname, 'index.html'),
        about: resolve(__dirname, 'html/about.html'),
        countdownList: resolve(__dirname, 'html/countdown-list.html'),
        fallback: resolve(__dirname, 'html/fallback.html'),
        today: resolve(__dirname, 'html/today.html'),
        formupload: resolve(__dirname, 'html/form-upload.html'),

      },
    },
  },
});

The code is hosted at this branch if you need to take a look at the full folder
https://github.com/RDjarbeng/countdown/tree/vitePWA
I have removed the previous manifest.json file that used to work before I started using the vite-plugin-pwa, because when it was included there were two manifest files in the build instead.
Have also tried using /img/icons/... for the paths and resolve(__dirname, img/icons/chrome192.png)
How do I get the PWA manifest and icons to sync with the image build files generated by the viteJS bundler and satisfy the PWA conditions?
How do I get the paths of html files not in the root folder to use the correct path to the manifest.webmanifest?
Also posted this on stack overflow
https://stackoverflow.com/questions/74074875/vitepwa-plugin-not-updating-generated-icons-in-manifest

@RDjarbeng there is an open issue about this, the problem is that any entry in src/assets folder will be transformed, so we will need to access to the bundle generated by Vite to change the webmanifest urls: I'll try to send a PR when I have time.
If you can move/copy those images to public folder (with the same structure, without assets folder), you can use glob pattern on includeAssets option, you will also need to change any import from those assets from your codebase and use it directly with / prefix in your src images.
If you just copy the images to public folder, you don't need to change your codebase.
includeAssets: ['img/icons/*.png']

@RDjarbeng I hvae it working on build, testing on dev:
/cc @alkanna

@userquin do you mean your manifest file is updating the paths even without creating a public folder?

@RDjarbeng I have it working on build, testing on dev:
/cc @alkanna

@userquin  I tried your option to use the public folder and the manifest now uses the images served from that folder. However the docs say the images included in the manifest will be added to the assets so this line did not seem necessary since it was doing this already
includeAssets: ['img/icons/*.png']

@RDjarbeng yes, but the referenced asset should be use in the codebase via static import (not in current version, I'm creating a PR to support icons on src/assets folder):

<template>

</template>

@userquin Noted. Thanks for your suggestion to use the public folder.

However, for the second issue the other pages which are inside html/pageName.html still have the manifest path as ./manifest.webmanifest. It has not given me a problem yet, it seems to locate the manifest when I open the files in the html folder directly. But I'm wondering if it should not be /manifest.webmanifest or  ../manifest.webmanifest since the manifest is in the root and not in the html folder?
Don't want any surprises in production if the user accesses the site without going through the home page.

@RDjarbeng about the includeAssets option: it is only required when you need some extra public assets excluded from the glob pattern, any entry on public will be copied to the root dist folder, you will need to include those elements into the sw precache manifest if workbox/injectManifest glob pattern not matching those assets (by default only html, css and js will be included on the sw precache manifest, check the link below).
About the icons, png are not included: don't mix these 2 concepts, Vite will always copy any entry on public folder but you will need to add any assets to the sw precache manifest to allow work offline. Check the warning here https://vite-plugin-pwa.netlify.app/guide/static-assets.html#globpatterns.
For example, if you have some font files (woff/woff2), you can add the extension to the workbox/injectManifest glob pattern or just include your fonts via includeAssets: ['**/*.{woff,woff2}'].
About webmanifest link you should the pwa plugin do its work and do no register yourself manually, it should be registered with absolute path from base, you don't need to register it manually.

@RDjarbeng I'll check later your repo, your are using MPA... you should use base prefix when adding the webmanifest link, if you just use / Vite should change it to /, beware using Vite 3+, the default is releative ./. I always configure base: '/' when enabling PWA.

@userquin  I added the glob pattern for the workbox parameter at first but it did not work so I added it to the includeAssets option. Now there's duplicate code. Should I remove the workbox parameter.
includeAssets: ["/*.{js,css,html,ico,jpg,png,svg,webmanifest}"],
workbox: {
globPatterns: ["/*.{js,css,html,ico,jpg,,png,svg,webmanifest}"],
},
The docs link you sent gives an option between generateSW and injectManifest but I just want to use the default. What is the default for vite? Do I use the includeAssets, workbox or injectManifest property?

@userquin
I assumed the default was workbox since it generates the service worker but it seems not to work when I use the parameter workbox: {...

@RDjarbeng if you're using previous glob pattern you don't need to add the includeAssets option.
The default strategy is generateSW that uses workbox entry to configure the sw build using workbox-build. The default registerType is prompt, so you will need to add a call to any of the virtual modules that pwa plugin exposes: if you want autoUpdate add registerType: autoUpdate'`

https://vite-pwa-org.netlify.app/guide/prompt-for-update.html
https://vite-pwa-org.netlify.app/guide/auto-update.html

about the original issue: if we don't include an static import for the assets in the codebase we'll get an erro lie this one:
Error while trying to use the following icon from the Manifest: https://localhost/src/assets/pwa-192x192.png (Download error or resource isn't a valid image)

Maybe we can add them to the bundle if missing...

Maybe, and you can also consider the case where the user prefers not to do this

but to use the old way of importing. I guess then the public folder will be the only option for them.

'if you're using previous glob pattern you don't need to add the includeAssets option.'
Tried the workbox property for glob patters again without the includeAssets and it worked. Don't know why it didn't work the first time, probably the service worker still running.

VitePWA({
      workbox: {
        //excluded gif
        globPatterns: ["**/*.{js,css,html,ico,jpg,png,svg,webmanifest}"],
      },
      manifest: {

Now it caches the assets with these extensions.
Thanks  @userquin

Gonna update the answer on stack overflow just in case anyone else is stuck with this. I've been stuck since July (close to 4 months) should have opened an issue earlier. Was convinced I could figure it out from the docs.😒

@RDjarbeng if you have any suggestion for the docs, anything can help ppl are welcome, sorry for that...

Maybe, and you can also consider the case where the user prefers not to do this

but to use the old way of importing:
<template>

</template>

I guess then the public folder will be the only option for them.

I'm doing some local tests... as you can see there are a lot of stuff involved on the PR: the dev plugin just works, the /src/assets/** just resolved by Vite

@RDjarbeng yes, but the referenced asset should be used in the codebase via static import (not in current version, I'm creating a PR to support icons on src/assets folder):

<template>

</template>

To improve the docs this approach you spoke of can be added. Once you finish the PR of course.
However, my issue with it is that not all users are familiar with static imports or want to use typescript. Maybe the docs can suggest using the public folder for the manifest icons for those who are still old school.

@RDjarbeng you can use it with or without typescript:

<template>

</template>

About public folder, it is here, in the first paragraph: https://vite-plugin-pwa.netlify.app/guide/static-assets.html#static-assets-handling.
Using  also working

all icons on PWA Web App Manifest option found under Vite's publicDir option directory, will be included in the service worker precache.

I don't think that solution works. This behavior did not stop this issue from occurring. It seems to only work if the images are referenced in the html not in the manifest or PWA plugin options. As it stands now users still have to use the public folder for the manifest icons if the image paths are not updated in the manifest.
Maybe because I can't see your changes.

@RDjarbeng this issue is for assets folder support, it is not related to Vite's publicDir option (defaults to public folder), check the vite.config.ts config file in the vue-router example (or any of the examples): there is no glob pattern, only including the svg on includeAssets.
You can check the src/assets.ts module, we use fast-glob to traverse public folder:

here we collect manifest icons: https://github.com/vite-pwa/vite-plugin-pwa/blob/main/src/assets.ts#L86
here collect icons paths: https://github.com/vite-pwa/vite-plugin-pwa/blob/main/src/assets.ts#L93

@RDjarbeng docs preview entry here: https://deploy-preview-397--vite-plugin-pwa-legacy.netlify.app/guide/static-assets.html#reusing-src-assets-images

I've got 2 problems with it.

The code examples  have  which I don't think is necessary since not everyone using vite is using VueJS. The comment   gives the impression the solution for vite-plugin-pwa given is for  VueJS even thought it works on other frameworks like React or just plain vanillaJs.

The user has to import the icon on another application to use it:

'any image under src/assets directory must be used in your application via static import or directly on the src attribute'

which means if there are 5 images to be included the user has to import them into the application if they want to use it in the manifest whether or not they use it in the application. This means unnecessary imports and setting images to hidden.
It is like a patch not a complete solution. I know you said that

'this issue is for assets folder support, it is not related to Vite's publicDir option'
but I think the docs should include an alternative if the user does not meet the 2 conditions given in the docs.

Also since you are importing the images in two places the developer has to keep track of changes in both places. When a change is made in one place (eg: the image file changes to ./src/assets/newlogo-192x192.png he has to make sure it is added in both places or risk errors. It would be better to have one place to change so you Don't Repeat Yourself.

I Will try to add the icon to the bundle if missing.
Vite Will not emit any asset under any folder that's not   being used (vía static import or vía src attr). For example, you can also create xxxx folder and use static import from this folder, it is no applied only to assets folder.
If you use an image in 1000 distinct places if you change it you must update those 1000 places. What do you expect if the icon is being used in multiple places? This plugin cannot do anything about this.
If the icon is only being used in the webmanifest icons, those icons should go to public folder. Why do you need to add those icons to assets folder? If the response is only to use file hashing,  the sw Will do it for you vía the revision entry in the sw precache manifest.

If the icon is only being used in the webmanifest icons, those icons should go to public folder.

@userquin  Okay, my suggestion will be to add this to the documentation as the simplest solution. But it's subjective you can choose whether to include it or not.
However adding the images to the public folder is the solution I will use in my case.
Apart from that everything looks okay on my side.👍

@RDjarbeng ok, I'll update docs with vanilla js/ts like on Vite docs also including a note about not using icons in the codebase

@RDjarbeng can you check update docs entry? found a new limitation and examples updated

@userquin Looks good 👌

I'm surprised this issue is still open, I thought this was fixed now? 🙃


Start top-level task without coroutine context

Hi,
Thank you for great library :)
I have small question:
should there be something like void start_on(scheduler, task) helper function that is similar to resume_on(scheduler, task), I guess, but will not return lazy task and start given task on given scheduler once process_event*() function called ?
I think, this is also something similar to what ASIO io_service::post() does.
Looking into test cases I can't find any way to start executing given task without mentioning co_await that will lead to another lazy task. Also, there is sync_wait(), but it's blocking :(
Just for example: here is peace of code:
cppcoro::io_service ui_executor;
cppcoro::io_service file_executor;

cppcoro::task<> load_file()
{
	auto f = cppcoro::read_only_file::open(file_executor
		, R"(test.txt)");
	// ...
	const auto read = co_await f.read();
	// ...
	co_await ui_executor.schedule();
	window.setTitle("done");
}

int main()
{
	std::thread file_thread([&]
	{
		while (...)
			file_executor.process_one_pending_event();
	});

	while (window.isOpen())
	{
		sf::Event event;
		while (window.pollEvent(event))
		{
		}

		{ // Logic update
			if (!load_started)
			{
				load_started = true;
				load_file(...);
			}
		}

		{ // UI update
			ui_executor.process_one_pending_event();
		}

		{ // Render
			window.display();
		}
	}

	// ...
}

load_file() is coroutine that need to be resumed by someone since there is no call to co_await, because it's top-level function in the main(). Also, sync_wait() can't be called because it will block UI (or whatever) thread.
There is possible work-around, like this:
	load_task = load_file(...);
	load_task.get_starter().start(
		cppcoro::detail::continuation{&dummy, nullptr});

but it uses internal function and is not very scalable since load_task need to be saved somewhere.
As I said in the beginning, is that possible to have something like:
	cppcoro::start_on(file_executor, load_file(...));

? Is that make sense ? Or am I missing proper way of doing such things ?
Thanks

I've recently added a type called async_scope that allows you to start executing multiple operations and later wait for them all to complete. This might help with your particular use-case.
eg.
cppcoro::io_service ioExecutor;
cppcoro::io_service uiExecutor;

cppcoro::task<> load_file() { ... }

int main()
{
  std::thread ioThread{ [&] { ioExecutor.run(); } };
  cppcoro::async_scope scope;
  while (window.isOpen()) {
    // ...
    if (!loadStarted) {
      scope.spawn(load_file());
      loadStarted = true;
    }
    // ...
  }
  cppcoro::sync_wait(scope.join());
  ioExecutor.stop();
  ioThread.join();
}

I'll close this for now. Please reopen if you find it doesn't suit your use-case well.


swap

What version of Wallet are you using?
beta 4
What is happening?
Asset 0x1bdeed96ee1e5eca0bd1d7eeeb51d03b0202c1faf764fec1b276ba27d5d61d89 decimals is not valid
steps to reproduce
no site https://fuellabs.github.io/swayswap/welcome/add-assets ta dando erro
How it should behave?

/ # @
What os are you seeing the problem on?
Windows Desktop
What browser?
Chrome
What is your browser version?
Versão 120.0.6099.130 (Versão oficial) 64 bits

Thanks for opening an issue, SwaySwap is no longer maintained, this is why you experienced the issues. We have updated the project readme to better inform other users.


[meta issue] HXL and data directly from and to SQL databases

TL;DR:

This issue is just to have a simple place to put information related to use of SQL storages. It may or not have more than proof of concepts
To add value (than merely over complicate an database dump to csv and an database import; that could be done by external tools and documentation) **any command line tool should at least read directly from one or more databases and allow create valid SQL file that could be used to import data again.

If this becomes too hard, at least we could document scripts to convert CSV to SQL

Interoperability (think plan taxonomies and how to save equivalent of HXL Hashtags as database column name) are the main objective, even if this mean just prepare documentation and cut performance features that could be used by external tools, not HXL using SQL database directly

The direct implication of this (this is my guess, not tested) is that most hxl parser tools, not just the libhxl-python (either directly if implemented or if using as library on tools like here) still likely to not optimize the commands as conversion to SQL select equivalents and still have to work with temporary files (that could still be acceptable fast)

In other words: hxl importers/exporters (in theory, not tested) could not break hard if you do not have memory (like some other data mining tools would fill your memory until your computer crash) but large datasets may be slow

Please note that even if we compare HXL tools with some programs that can load data from databases, most of them are also optimized for files on disk, or even have to load the entire dataset on memory

And some enterprise ones (if already are not expensive) seems to cost even an extra to allow work directly from database than their proprietary file format.
But even if HXL tools or HXL-proxy could not be like super optimized for Gigabyte size database processing (like 50ms response time with very optimized index and selects) it could still be useful for who would use HXL to merge several datasets on a single place

This issue is an draft. Some extra information may be edited/added later.

TL;DR of this post: maybe the HXLMeta (Usable Class) #9 could also have an local database to use as helper.

Maybe most databases accept HXL Hashtags without changes
Good thing: PostgreSQL actually accept # as first char of column names. (Also tested with MariaDB, so maybe do exist others)
On last week's I was aware that only SQLite accepted almost everything as column name, so I was concerned on what use to replace # and + on almost every other database engine. But since maybe current databases actually allow both # and +, this simplify a lot!
Tests with csvsql

See https://github.com/wireservice/csvkit/blob/master/csvkit/utilities/csvsql.py

The csvsql used SQLAlchemy. The file actually is not that complex so in worst case scenario could be just Implement same thing. (But as reference: as expected the csvsql exporting from genetic csv files may be OK, but not tested yet if types would be more generic)
BUT since on issue HXLMeta we're already mapping more exact StorageTypes (and this is likely to take much more time to get right) I think that for exporting from HXLated datasets to most common SQL database, we may no need at all something like SQLAlchemy.
But for importing to HXL tools, some abstraction like SQLAlchemy (at least for python HXL tools) definely worth looking at.
SQLite as potential alternative to have an local collections of taxonomies

See this old comment https://github.com/OCHA-DAP/hdx-python-country/issues/7#issuecomment-762495928

In addition to country/territory codes (and without resorting to load the entire P-Codes for local usage) do exist some taxonomies (at least the one for language codes) that I think eventually would be useful to have near the computer running complex inferences. On @HXL-CPLP we're already drafting taxonomies like words used to represent true/false on different languages, so maybe would be possible to make some taxonomies so important that the user could build own cache. One good initial candidate could be booleans (using 2 letter ISO codes as namespace, something like +v_un_bool for 6 UN languages and +v_eu_bool for an draft of 20+ European ones) and some way to a person "merge" more than one external source of reference.
I'm not fully sure if this would be really necessary (and, in fact, for a few tables, even a folder with plain HXLated CSVs would work). But for cases like the booleans, just a canonical single table would not be ideal (if not because of the user, then because of make harder to implement on the fly)
But anyway, in both cases (local SQLite or CSVs) something that could "build" an local database but one that could persist across executions (and also one that could work offline so if really used a lot on worst case scenario neither Google Drive could get hate limited or blocked) seems a totally win-win.


Added sudo to sed operation

Added sudo to sed operation that was writing to a system service file. Causes process to abort due to permissions.
Fixes # (issue)
Crash while running the get_current_xcash_wallet_data function as normal user without root elevation.
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?
Running it on a clean  bare ubuntu 18.04 instance
Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My changes generate no new warnings

Thanks @jelgersma for testing this and looking through the autoinstaller!
I do most of my setups as root (yes I know lol) so we only had a few people testing as non root, and non root was not given as much time on testing with the script.


sam local not properly deserializing event body

Description:
When executing an http-post request on a Java SAM local API, SAM local does not appear to properly deserialize the body of the request into a POJO object.
If I define my lambda to take a APIGatewayProxyRequestEvent, however, I can see the body contains the appropriate JSON to deserialize the object. In fact, if I pass the body to a Jackson deserializer in my handler, it properly deserializes into the POJO object.
This Lambda also works properly if deployed on AWS.
Steps to reproduce the issue:

Create a Java Lambda handler that takes a POJO object for a post request
curl the handler with JSON data appropriate to deserialize into the POJO object

Observed result:
The POJO object passed to your Lambda handler has all null fields
Expected result:
The POJO object passed to your Lambda should have fields with the data defined in your post request body
Additional environment details (Ex: Windows, Mac, Amazon Linux etc)
Debian 8
Output of sam --version:
$ sam --version
SAM CLI, version 0.6.0
Optional Debug logs:
In the logs below, notice how the constructed string representation contains a body with JSON containing a value for "jobId" but the printed KeyRequest POJO object in the handler at the bottom has jobId of null.
$ sam local start-api --debug
2018-11-07 10:24:36 local start-api command is called
2018-11-07 10:24:36 3 resources found in the template
2018-11-07 10:24:36 Found Serverless function with name='GetKeyFunction' and CodeUri='./target/dealer.jar'
2018-11-07 10:24:36 Trying paths: ['/home/username/.docker/config.json', '/home/username/.dockercfg']
2018-11-07 10:24:36 Found file at path: /home/username/.docker/config.json
2018-11-07 10:24:36 Found 'auths' section
2018-11-07 10:24:36 Found entry (registry=u'registry.compclout.com', username=u'wit')
2018-11-07 10:24:36 Found entry (registry=u'comp-docker.repositories.comp.com', username=u'batserve')
2018-11-07 10:24:36 http://localhost:None "GET /v1.35/_ping HTTP/1.1" 200 2
2018-11-07 10:24:36 3 resources found in the template
2018-11-07 10:24:36 Successfully parsed location from AWS::Include transform: ./swagger.yaml
2018-11-07 10:24:36 Trying to download Swagger from ./swagger.yaml
2018-11-07 10:24:36 Reading Swagger document from local file at /local-ssd/username/development/gitProjects/dealer/main/./swagger.yaml
2018-11-07 10:24:36 Resolved Sub intrinsic function: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/arn:aws:lambda:${AWS::Region}:123456789012:function:LambdaFunction/invocations
2018-11-07 10:24:36 Extracted Function ARN: arn:aws:lambda:${AWS::Region}:123456789012:function:LambdaFunction
2018-11-07 10:24:36 Found '1' APIs in resource 'ApiGatewayApi'
2018-11-07 10:24:36 Found '1' API Events in Serverless function with name 'GetKeyFunction'
2018-11-07 10:24:36 Removed duplicates from '2' Explicit APIs and '0' Implicit APIs to produce '1' APIs
2018-11-07 10:24:36 1 APIs found in the template
2018-11-07 10:24:36 Trying paths: ['/home/username/.docker/config.json', '/home/username/.dockercfg']
2018-11-07 10:24:36 Found file at path: /home/username/.docker/config.json
2018-11-07 10:24:36 Found 'auths' section
2018-11-07 10:24:36 Found entry (registry=u'registry.compclout.com', username=u'wit')
2018-11-07 10:24:36 Found entry (registry=u'comp-docker.repositories.comp.com', username=u'batserve')
2018-11-07 10:24:36 Mounting GetKeyFunction at http://<IP_ADDRESS>:3000/keys [POST]
2018-11-07 10:24:36 You can now browse to the above endpoints to invoke your functions. You do not need to restart/reload SAM CLI while working on your functions changes will be reflected instantly/automatically. You only need to restart SAM CLI if you update your AWS SAM template
2018-11-07 10:24:36 Localhost server is starting up. Multi-threading = True
2018-11-07 10:24:36  * Running on http://<IP_ADDRESS>:3000/ (Press CTRL+C to quit)
2018-11-07 10:24:40 Constructed String representation of Event to invoke Lambda. Event: {"body": "{\"jobId\":1234}", "httpMethod": "POST", "resource": "/keys", "queryStringParameters": null, "requestContext": {"httpMethod": "POST", "requestId": "c6af9ac6-7b61-11e6-9a41-93e8deadbeef", "path": "/keys", "extendedRequestId": null, "resourceId": "123456", "apiId": "1234567890", "stage": "prod", "resourcePath": "/keys", "identity": {"accountId": null, "apiKey": null, "userArn": null, "cognitoAuthenticationProvider": null, "cognitoIdentityPoolId": null, "userAgent": "Custom User Agent String", "caller": null, "cognitoAuthenticationType": null, "sourceIp": "<IP_ADDRESS>", "user": null}, "accountId": "123456789012"}, "headers": {"Content-Length": "14", "X-Forwarded-Proto": "http", "X-Forwarded-Port": "3000", "Content-Type": "application/json", "Host": "localhost:3000", "Accept": "*/*", "User-Agent": "curl/7.38.0"}, "stageVariables": null, "path": "/keys", "pathParameters": null, "isBase64Encoded": false}
2018-11-07 10:24:40 Found one Lambda function with name 'GetKeyFunction'
2018-11-07 10:24:40 Invoking com.comp.ci.core.handler.GetKeyHandler::handleRequest (java8)
2018-11-07 10:24:40 Environment variables overrides data is standard format
2018-11-07 10:24:40 Loading AWS credentials from session with profile 'None'
2018-11-07 10:24:40 Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane
2018-11-07 10:24:40 Changing event name from before-call.apigateway to before-call.api-gateway
2018-11-07 10:24:40 Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict
2018-11-07 10:24:40 Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration
2018-11-07 10:24:40 Changing event name from before-parameter-build.route53 to before-parameter-build.route-53
2018-11-07 10:24:40 Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search
2018-11-07 10:24:40 Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section
2018-11-07 10:24:40 Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search
2018-11-07 10:24:40 Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section
2018-11-07 10:24:40 Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask
2018-11-07 10:24:40 Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable config_file from defaults.
2018-11-07 10:24:40 Loading variable credentials_file from defaults.
2018-11-07 10:24:40 Loading variable data_path from defaults.
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable credentials_file from defaults.
2018-11-07 10:24:40 Loading variable config_file from defaults.
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable metadata_service_timeout from defaults.
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable metadata_service_num_attempts from defaults.
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Looking for credentials via: env
2018-11-07 10:24:40 Looking for credentials via: assume-role
2018-11-07 10:24:40 Looking for credentials via: shared-credentials-file
2018-11-07 10:24:40 Found credentials in shared credentials file: ~/.aws/credentials
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable region from config file with value 'us-east-1'.
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable region from config file with value 'us-east-1'.
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable profile from defaults.
2018-11-07 10:24:40 Loading variable region from config file with value 'us-east-1'.
2018-11-07 10:24:40 Resolving code path. Cwd=/local-ssd/username/development/gitProjects/dealer/main, CodeUri=./target/dealer.jar
2018-11-07 10:24:40 Resolved absolute path to code is /local-ssd/username/development/gitProjects/dealer/main/target/dealer.jar
2018-11-07 10:24:40 Decompressing /local-ssd/username/development/gitProjects/dealer/main/target/dealer.jar

2018-11-07 10:24:41 Trying paths: ['/home/username/.docker/config.json', '/home/username/.dockercfg']
2018-11-07 10:24:41 Found file at path: /home/username/.docker/config.json
2018-11-07 10:24:41 Found 'auths' section
2018-11-07 10:24:41 Found entry (registry=u'registry.compclout.com', username=u'wit')
2018-11-07 10:24:41 Found entry (registry=u'comp-docker.repositories.comp.com', username=u'batserve')
2018-11-07 10:24:41 http://localhost:None "GET /v1.35/images/lambci/lambda:java8/json HTTP/1.1" 200 None
2018-11-07 10:24:41 Looking for auth config
2018-11-07 10:24:41 Looking for auth entry for 'docker.io'
2018-11-07 10:24:41 No entry found
2018-11-07 10:24:41 No auth config found
2018-11-07 10:24:41 http://localhost:None "POST /v1.35/images/create?tag=java8&fromImage=lambci%2Flambda HTTP/1.1" 200 None

Fetching lambci/lambda:java8 Docker container image......
2018-11-07 10:24:41 Mounting /tmp/tmp3bV0Zi as /var/task:ro inside runtime container
2018-11-07 10:24:41 http://localhost:None "POST /v1.35/containers/create HTTP/1.1" 201 196
2018-11-07 10:24:41 http://localhost:None "GET /v1.35/containers/2ff4391bd85bf869e10d951025dc49191bca7f8c88a0210d83e7d00525e20c7c/json HTTP/1.1" 200 None
2018-11-07 10:24:41 http://localhost:None "GET /v1.35/containers/2ff4391bd85bf869e10d951025dc49191bca7f8c88a0210d83e7d00525e20c7c/json HTTP/1.1" 200 None
2018-11-07 10:24:41 http://localhost:None "POST /v1.35/containers/2ff4391bd85bf869e10d951025dc49191bca7f8c88a0210d83e7d00525e20c7c/start HTTP/1.1" 204 0
2018-11-07 10:24:41 Starting a timer for 15 seconds for function 'GetKeyFunction'
2018-11-07 10:24:41 http://localhost:None "GET /v1.35/containers/2ff4391bd85bf869e10d951025dc49191bca7f8c88a0210d83e7d00525e20c7c/json HTTP/1.1" 200 None
2018-11-07 10:24:41 http://localhost:None "POST /containers/2ff4391bd85bf869e10d951025dc49191bca7f8c88a0210d83e7d00525e20c7c/attach?stream=1&stdin=0&logs=1&stderr=1&stdout=1 HTTP/1.1" 101 0
Nov 07, 2018 3:24:42 PM com.fasterxml.jackson.databind.ext.Java7Support <clinit>
WARNING: Unable to load JDK7 types (annotations, java.nio.file.Path): no Java7 support added
START RequestId: bfc2614e-d243-4a7a-afc4-8b28cc2aa395 Version: $LATEST
2018-11-07 15:24:43 bfc2614e-d243-4a7a-afc4-8b28cc2aa395 ERROR GetKeyHandler:72 - GetKeyHandler received null request id
com.comp.ci.core.exception.BadRequestException: 400
	at com.comp.ci.core.handler.GetKeyHandler.handleRequest(GetKeyHandler.java:73)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)

END RequestId: bfc2614e-d243-4a7a-afc4-8b28cc2aa395
REPORT RequestId: bfc2614e-d243-4a7a-afc4-8b28cc2aa395	Duration: 71.93 ms	Billed Duration: 100 ms	Memory Size: 512 MB	Max Memory Used: 75 MB
2018-11-07 10:24:43 http://localhost:None "GET /v1.35/containers/2ff4391bd85bf869e10d951025dc49191bca7f8c88a0210d83e7d00525e20c7c/json HTTP/1.1" 200 None
2018-11-07 10:24:43 http://localhost:None "DELETE /v1.35/containers/2ff4391bd85bf869e10d951025dc49191bca7f8c88a0210d83e7d00525e20c7c?force=True&link=False&v=False HTTP/1.1" 204 0
################## Endpoint is : http://<IP_ADDRESS>:8000 ##################
################### request is : KeyRequest{jobId=null, callbackToken='null'} ###################
2018-11-07 10:24:43 No Content-Type given. Defaulting to 'application/json'.
2018-11-07 10:24:43 <IP_ADDRESS> - - [07/Nov/2018 10:24:43] "POST /keys HTTP/1.1" 200 -

Hello @jfuss! I ran into this issue as well today. Seeing that it's been a few months since this was opened, curious to know when this issue will be resolved. Running the latest version 0.18.0.
Appreciate the help!

@htambekar  would it be possible to share your code for this problem?

Thanks for all the comments here.
As you mentioned I tried to re-produce the issue on a simple project. I created a Java lambda from Hello World template, and change the method type to post. And then updated the method parameters inside lambda to List<String>. So my template and my function looks like this;
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: >
  issue-754

  Sample SAM Template for issue-754

Globals:
  Function:
    Timeout: 20

Resources:
  HelloWorldFunction:
    Type: AWS::Serverless::Function
    Properties:
      CodeUri: HelloWorldFunction
      Handler: helloworld.App::handleRequest
      Runtime: java8
      MemorySize: 512
      Events:
        HelloWorld:
          Type: Api
          Properties:
            Path: /hello
            Method: post

public class App implements RequestHandler<String, App.MyResultClass> {

    @Override
    public MyResultClass handleRequest(final List<String> request, final Context context) {
        System.out.println(request);
        return new MyResultClass(true, request.toString());
    }

    static class MyResultClass {
        boolean ok;
        String message;

        public MyResultClass(final boolean ok, final String message)
        {
            this.ok = ok;
            this.message = message;
        }

        public boolean isOk()
        {
            return ok;
        }

        public String getMessage()
        {
            return message;
        }
    }
}

When I invoke this locally, and pass list of strings as body of the request, it fails saying that it can't deserialize List<String> with object start tag. And if I deploy this application to my account and create a simple test in Lambda console, it will succeed.
The difference between triggering local API Gateway versus the Lambda tests, local API Gateway mimicks the way to invoke lambda from actual API Gateway through proxy integration
In order to work in this way, you need to define your class as follows;
public class App implements RequestHandler<APIGatewayProxyRequestEvent, APIGatewayProxyResponseEvent>

and you need to implement the handler method like this;
public APIGatewayProxyResponseEvent handleRequest(final APIGatewayProxyRequestEvent input, final Context context)

Inside the handleRequest method, you can access actual request body by calling input.getBody(). The body would be String representation of the actual request, so you can deserialize it there in order to use it.
I am resolving this ticket, please re-open it if the issue is different.
Thanks


Missing license

Could you maybe add a license for us to know if its okay to use this for our project?

I added a license, I don't know if it works but add a comment if you need more help or anything else.

Thank you so much! Your view was immensely helpful for me.


Add more macro button please!

Wish each macro button can be set as a key combination instead of corresponding to macro 1, macro 2...

Can you please explain what problem you are encountering and attempting to solve with the feature request? We are not sure what you mean.

For example, since there is currently only one macro button that can set a combination key, move A can be released in both left and right directions. I have set it as a macro button+directional key. So move B cannot set combination keys anymore

Can you please explain what problem you are encountering and attempting to solve with the feature request? We are not sure what you mean.

For example, since there is currently only one macro button that can set a combination key, move A can be released in both left and right directions. I have set it as a macro button+directional key. So move B cannot set combination keys anymore

This is not something we are looking to implement. Unique, per-move macro assignment that does not follow any other macro layouts out there will have to be maintained by another group as this is too specific and custom for our firmware.


Use /usr/share/keyrings in older-debian distribution for kubeadm installation.

This is a Feature Request
What would you like to be added
Older ubuntu-distros (before ubuntu 22.04) have keyring folder stored in /usr/share folder instead of /etc/apt/keyrings, we can mention there that in place of /etc/apt/keyrings in gpg -demirror and signed-by use /usr/share/keyrings.
Why is this needed
An alternate option instead of creating another directory /etc/apt/keyrings.

Adding the advice you suggest would contravene Debian's guidelines on systems security, so we shouldn't add it. Instead, people should create /etc/apt/keyrings as the existing docs suggest.
/sig security

Sure @sftim
/close


CUDA Error from the CPU version?

Whilst trying to load TheBloke/Llama-2-7b-Chat-GPTQ, I get the following:
CUDA error: no kernel image is available for execution on the device CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect. For debugging consider passing CUDA_LAUNCH_BLOCKING=1. Compile with `TORCH_USE_CUDA_DSA` to enable device-side assertions.

This surprises me because, although I have a GPU, it's ancient.  I got this error when I started with the GPU version, then I uninstalled that one and installed the CPU version.  Any ideas why I'd be seeing a CUDA error on a GPU version of the system?

I presume you are using autogptq mode?  What's  your command line?  I'm not aware if they support CPU: https://github.com/PanQiWei/AutoGPTQ .
For GGML, some binary wheels probably  have been compiled with specific arches in mind, and one might have to compile yourself as in the readme.

I'm not using the command line.  I'm using the Windows installer versions; it appears in the start menu.

Can you share a screenshot of what you are entering into the UI?  E.g. for GPTQ models one needs to use autogptq option nominally, although TheBloke changed many of his repositories to be just "main" for that option.

I get a similar error from h2oai/h2ogpt-4096-llama2-7b

If you are trying to use CPU, please add environment variable CUDA_VISIBLE_DEVICES and set as an empty string.  This forces the GPU to be ignored by torch/cuda.  I didn't make it possible to avoid using GPU from UI.

This works.  I'll leave open as a reminder that the CPU version of the installer should use the CPU.


An UI(maybe) bug causing .ipynb files can not be displayed

Type: Bug
I mainly use ssh for remote development. The bug is, when I directly open an .ipynb file on the ssh server, it can be opened, run, and can NOT be displayed.
Oddly enough, I then try to open an .ipynb file locally, it successfully displayed and the .ipynb file on the ssh server also displayed!  However, when I close the Vscode window where I open the local .ipynb file, and then I try to open an another .ipynb file on the ssh server, again, it can not be displayed, but can be run. Also, after closing the already opened file, it can not be displayed again.
I tried re-install Vscode but it doesn't work.  I'm currently using the latest windows 11. All Vscode and its extensions are the latest.
The bug doesn't exist on MAC OS Vscode.
 Could you send your remote-ssh logs and your jupyter extension logs? Also are there any errors surfacing in the developer tools when it fails to render the .ipynb file?

it can be opened, run, and can NOT be displayed.

Can you tell me what you mean exactly? Is it that the outputs don't show up? Maybe you can share a screenshot?

it can be opened, run, and can NOT be displayed.

Can you tell me what you mean exactly? Is it that the outputs don't show up? Maybe you can share a screenshot?

Hello collegue, I upload a pic and a video for your easy reference. The file is already open because I can run it by clicking "Run All" button, but, as you can see, nothing is displayed, and the remote note book is just keep loading and loading.
Weirdly, local notebook files can be loaded successfully,  and I have to open a local notebook so that the ssh notebook can be displayed.  If I close the ssh notebook and reopen it, again, it can not be loaded.

https://user-images.githubusercontent.com/49967356/204431677-77b43cd0-36f4-42ae-b155-7f24921703c9.mp4

Hello! Could you send your remote-ssh logs and your jupyter extension logs? Also are there any errors surfacing in the developer tools when it fails to render the .ipynb file?

Hello collegue, I actually didn't see any related errors output. you can see the 'dev tools' logs at https://github.com/microsoft/vscode/issues/166860, where we have the same issue.
Oh! There is one maybe:
加载 Web 视图时出错: Error: Could not register service workers: InvalidStateError: Failed to register a ServiceWorker: The document is in an invalid state.
I don't know if this is the error.
jupyter log:

ssh log:
[11:44:53.123] Log Level: 2
[11:44:53.126]<EMAIL_ADDRESS>[11:44:53.126] win32 x64
[11:44:53.133] SSH Resolver called for "ssh-remote+8号机", attempt 1
[11:44:53.133] "remote.SSH.useLocalServer": false
[11:44:53.134] "remote.SSH.showLoginTerminal": false
[11:44:53.134] "remote.SSH.remotePlatform": {"8号机":"linux"}
[11:44:53.134] "remote.SSH.path": undefined
[11:44:53.134] "remote.SSH.configFile": undefined
[11:44:53.134] "remote.SSH.useFlock": true
[11:44:53.134] "remote.SSH.lockfilesInTmp": false
[11:44:53.134] "remote.SSH.localServerDownload": auto
[11:44:53.134] "remote.SSH.remoteServerListenOnSocket": false
[11:44:53.134] "remote.SSH.showLoginTerminal": false
[11:44:53.134] "remote.SSH.defaultExtensions": []
[11:44:53.134] "remote.SSH.loglevel": 2
[11:44:53.134] "remote.SSH.enableDynamicForwarding": true
[11:44:53.134] "remote.SSH.enableRemoteCommand": false
[11:44:53.134] "remote.SSH.serverPickPortsFromRange": {}
[11:44:53.134] "remote.SSH.serverInstallPath": {}
[11:44:53.136] SSH Resolver called for host: 8号机
[11:44:53.136] Setting up SSH remote "8号机"
[11:44:53.140] Using commit id "6261075646f055b99068d3688932416f2346dd3b" and quality "stable" for server
[11:44:53.141] Install and start server if needed
[11:44:53.143] Checking ssh with "ssh -V"
[11:44:53.163] > OpenSSH_for_Windows_8.6p1, LibreSS
[11:44:53.163] > L 3.4.3
[11:44:53.165] Running script with connection command: ssh -T -D 63111 "8号机" bash
[11:44:53.167] Terminal shell path: C:\WINDOWS\System32\cmd.exe
[11:44:55.708] > d600dd4c3cfd: running

]0;C:\WINDOWS\System32\cmd.exe
[11:44:55.708] Got some output, clearing connection timeout
[11:44:55.739] > Acquiring lock on /home/zhuhaoran/.vscode-server/bin/6261075646f055b99068d3688932416f2346dd3b/vscode-remote-lock.zhuhaoran.6261075646f055b99068d3688932416f2346dd3b
Found existing installation at /home/zhuhaoran/.vscode-server/bin/6261075646f055b99068d3688932416f2346dd3b...
Checking /home/zhuhaoran/.vscode-server/.6261075646f055b99068d3688932416f2346dd3b.log and /home/zhuhaoran/.vscode-server/.6261075646f055b99068d3688932416f2346dd3b.pid for a running server
Looking for server with pid: 29205
[11:44:55.823] > Found running server...

Visual Studio Code Server

By using the software, you agree to
the Visual Studio Code Server License Terms (https://aka.ms/vscode-server-license) and
the Microsoft Privacy Statement (https://privacy.microsoft.com/en-US/privacystatement).

Checking server status on port 34977 with wget
d600dd4c3cfd: start
SSH_AUTH_SOCK====
DISPLAY====
webUiAccessToken====
listeningOn==34977==
osReleaseId==ubuntu==
arch==x86_64==
tmpDir==/run/user/1014==
platform==linux==
unpackResult====
didLocalDownload==0==
downloadTime====
installTime====
extInstallTime====
serverStartTime====
connectionToken==1a111a11-aaa1-111a-1111-aaa1111a1a11==
d600dd4c3cfd: end
[11:44:55.823] Received install output:
SSH_AUTH_SOCK====
DISPLAY====
webUiAccessToken====
listeningOn==34977==
osReleaseId==ubuntu==
arch==x86_64==
tmpDir==/run/user/1014==
platform==linux==
unpackResult====
didLocalDownload==0==
downloadTime====
installTime====
extInstallTime====
serverStartTime====
connectionToken==1a111a11-aaa1-111a-1111-aaa1111a1a11==

[11:44:55.823] Remote server is listening on 34977
[11:44:55.823] Parsed server configuration: {"serverConfiguration":{"remoteListeningOn":{"port":34977},"osReleaseId":"ubuntu","arch":"x86_64","webUiAccessToken":"","sshAuthSock":"","display":"","tmpDir":"/run/user/1014","platform":"linux","connectionToken":"1a111a11-aaa1-111a-1111-aaa1111a1a11"},"installUnpackCode":""}
[11:44:55.825] Starting forwarding server. localPort 63114 -> socksPort 63111 -> remotePort 34977
[11:44:55.826] Forwarding server listening on 63114
[11:44:55.826] Waiting for ssh tunnel to be ready
[11:44:55.826] [Forwarding server 63114] Got connection 0
[11:44:55.827] Tunneled 34977 to local port 63114
[11:44:55.827] Resolved "ssh-remote+8号机" to "<IP_ADDRESS>:63114"
[11:44:55.831] ------
[11:44:55.842] [Forwarding server 63114] Got connection 1
[11:44:55.845] >
[11:44:55.859] [Forwarding server 63114] Got connection 2
[11:44:56.380] [Forwarding server 63114] Got connection 3
dev log:

Kai mentioned an issue that he discussed with you @sandy081, with notebooks failing to open because of network requests being blocked due to settings sync, is there an open issue for that?
I also see

Error: Could not register service workers: InvalidStateError: Failed to register a ServiceWorker: The document is in an invalid state.

Do you know about that @mjbvz?
cc @rebornix

https://github.com/microsoft/vscode/issues/166584 shows network error messages as well
workbench.desktop.main.js:609   ERR read ECONNRESET: Error: read ECONNRESET
	at TCP.onStreamRead (node:internal/stream_base_commons:217:20)
workbench.desktop.main.js:609   ERR Error: Unavailable due to network problems
	at y.convertToSession (d:\Program Files\Microsoft VS Code\resources\app\extensions\microsoft-authentication\dist\extension.js:1:647681)
	at process.processTicksAndRejections (node:internal/process/task_queues:96:5)
	at async Promise.all (index 0)
workbench.desktop.main.js:609  WARN Settings Sync: Accounts are not initialized
workbench.desktop.main.js:609   ERR Client network socket disconnected before secure TLS connection was established: Error: Client network socket disconnected before secure TLS connection was established
	at connResetException (node:internal/errors:691:14)
	at TLSSocket.onConnectEnd (node:_tls_wrap:1585:19)
	at TLSSocket.emit (node:events:538:35)
	at endReadableNT (node:internal/streams/readable:1345:12)
	at processTicksAndRejections (node:internal/process/task_queues:83:21)

The latest 1.74 doesn't fix this bug

I also meet this problem, and I find that if I log in two user accounts on the server in different widows, both of them can load notebook

I met the issue too.  It works in localhost but desn't work in a remote server.
There is error in dev-log in the remote case.  Hope this is related.
ERR 'crypto.subtle' is not available so webviews will not work. This is likely because the editor is not running in a secure context (https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts).: Error: 'crypto.subtle' is not available so webviews will not work. This is likely because the editor is not running in a secure context (https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts).
    at t (http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:770:25540)
    at new R (http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:1324:3987)
    at l.j (http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:608:1296)
    at l.createInstance (http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:608:788)
    at y.createWebviewElement (http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:2182:41321)
    at Za.kb (http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:1956:6858)
    at Za.hb (http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:1956:642)
    at Za.createWebview (http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:1943:915)
    at http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:2412:7598
    at De.hc (http://<IP_ADDRESS>:8000/stable-e8a3071ea4344d9d48ef8a4df2c097372b0c5161/static/out/vs/workbench/workbench.web.main.js:2412:8001)

changing chinese in the ssh configuration file to english can sovle the problem.

Do I need to remove all Chinese characters from the config file? I removed some Chinese characters and the bug did not disappear.
https://github.com/microsoft/vscode/issues/166860#issuecomment-1439981516

It is ok! To remove all Chinese characters can resolve the bug!

It is ok! To remove all Chinese characters can resolve the bug!

Wow! I meet this bug, too. I have been disturbed by it until i found your discussion.
After removing all chinese characters, this problem disappeared in my computer. Thanks!

changing chinese in the ssh configuration file to english can sovle the problem.

It really works!!!

changing chinese in the ssh configuration file to english can sovle the problem.

how did you ever find this solution

@zhuhr213 Can you share your original ssh config? I tried adding Chinese characters to the Host but wasn't able to reproduce this. Were the character in the username perhaps?

@zhuhr213 Can you share your original ssh config? I tried adding Chinese characters to the Host but wasn't able to reproduce this. Were the character in the username perhaps?
of course, here is my original ssh config:

Host 15号机
HostName <IP_ADDRESS>
Port 11500
IdentityFile "C:\Users\zhuhr.ssh\id_rsa_2048"
User zhuhaoran
Host 8号机
HostName <IP_ADDRESS>
Port 10800
IdentityFile "C:\Users\zhuhr.ssh\id_rsa_2048"
User zhuhaoran
I just tried my original ssh config, and it still doesn't work.
And I changed "8号机" to "server8", and "15号机" to "server15" and it really works!

@mjbvz

This bug has been fixed in the latest release of VS Code Insiders!
@zhuhr213, you can help us out by commenting /verified if things are now working as expected.
If things still don't seem right, please ensure you're on version 833ac685084e2028b09753392b82c641c7025bbc of Insiders (today's or later - you can use Help: About in the command palette to check), and leave a comment letting us know what isn't working as expected.
Happy Coding!

@mjbvz  Bug fixed and it works well, thank you!


GraphAPIError: An active access token must be used to query information about the current user.

I get a token I go here: https://developers.facebook.com/tools/access_token/
token = "mytoken"
graph = facebook.GraphAPI(access_token=token, version='2.4')

profile = graph.get_object("me")
---------------------------------------------------------------------------
GraphAPIError                             Traceback (most recent call last)
<ipython-input-26-f393712ff5fc> in <module>()
----> 1 profile = graph.get_object("me")

/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/facebook/__init__.pyc in get_object(self, id, **args)
    102     def get_object(self, id, **args):
    103         """Fetchs the given object from the graph."""
--> 104         return self.request(self.version + "/" + id, args)
    105
    106     def get_objects(self, ids, **args):

/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/facebook/__init__.pyc in request(self, path, args, post_args, files, method)
    269
    270         if result and isinstance(result, dict) and result.get("error"):
--> 271             raise GraphAPIError(result)
    272         return result
    273

GraphAPIError: An active access token must be used to query information about the current user.

What's going on? The same goes basically to any query

First, this type of question should be posted to the forum at https://groups.google.com/forum/#!forum/pythonforfacebook .
Second, make sure you using the temporary user token and not the app token.

Sorry for not asking it there. Too used with github when it comes to issues.
So facebook api requires temporal token? Interesting. I've tried to use get_app_access_token() with my app_id and app_secret, and even with that generated token, when loaded class again with this generated token, it gives the same error. Would be nice to see some examples somewhere how to use this properly. I launch the application in daemon, I'd like to have a way of not changing token myself anywhere. Set it and for get it..

A discussion of the different types of access tokens can be found in the Facebook documentation. @lucasrangit is right that you should be using a user token with get_object("me").
I'm closing this since it isn't a bug, but you should post to the Google group if you have more trouble.


@conda-forge-admin, please add user @jblugagne

[x] I read the conda-forge documentation and could not find the solution for my problem there.

Issue:

Environment (conda list):

$ conda list

Details about  conda and system ( conda info ):

$ conda info

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I added user @jblugagne in conda-forge/delta2-feedstock#4.

Hi! This is the friendly automated conda-forge-webservice.
I tried to added user @jblugagne as requested, but the recipe already has maintainer @jblugagne so no changes were made.


Add bootstrap_form

🔗 Issue
#206
✍ Description
Added bootstrap_form gem and installed. I replaced all standard form helpers with bootstrap_form helpers. I also removed redundant labels and, wherever custom text is used for labels, added a label attribute with the custom text to the form helpers as per bootstrap_form conventions. Added asterisks to required fields.
Running rails assets:precompile caused the asterisks to properly appear in required fields.

@reyes-dev can you fix up the merge conflicts and open issues for the suggestions provided by @Ptrboro ? Once the merge conflicts are fixed, LGTM!
@Ptrboro thank you for reviewing this PR. Your thorough detailed focus is appreciated!

@edwinthinks Should each suggestion warrant a separate issue?

@edwinthinks Should each suggestion warrant a separate issue?

@reyes-dev either or works for me :)

Looks like Brakeman out scanner found a syntax error somewhere in this PR. Could we fix that and then I think its merging time!

LGTM!


Add check for no detections

Checks to see if _dets_to_formatted_mat returns no detections and returns early. Also added a check to see if any saliency maps were generated in GenerateObjectDetectorBlackboxSaliency.

LGTM, but CI is failing


Ns in locus flank

I was testing this catalog with ExpansionHunter and came across the following error message:
2024-09-06T16:55:43,[Initializing reference /pl/active/dashnowlab/data/ref-genomes/human_GRCh38_no_alt_analysis_set.fasta]
2024-09-06T16:55:43,[Loading variant catalog from disk /pl/active/dashnowlab/data/TRcatalogs/broad-tandem-repeat-catalog-release_v0.9/repeat_catalog.3x_and_9bp.hg38.merged_and_annotated.json]
2024-09-06T16:56:25,[Error loading locus 1-10001-10108-TAACCC: Flanks can contain at most 5 characters N but found 1000 Ns]

Ref used: https://downloads.pacbcloud.com/public/dataset/MAS-Seq/REF-pigeon_ref_sets/Human_hg38_Gencode_v39/human_GRCh38_no_alt_analysis_set.fasta
If you haven't come across this, perhaps this is specific to the reference genome? Which one did you test the catalog with?

I just replicated it with the Broad resource bundle version from here: https://console.cloud.google.com/storage/browser/genomics-public-data/resources/broad/hg38/v0
2024-09-06T17:12:04,[Initializing reference /pl/active/dashnowlab/data/ref-genomes/GATK-resource-bundle/resources_broad_hg38_v0_Homo_sapiens_assembly38.fasta]
2024-09-06T17:12:04,[Loading variant catalog from disk /pl/active/dashnowlab/data/TRcatalogs/broad-tandem-repeat-catalog-release_v0.9/repeat_catalog.3x_and_9bp.hg38.merged_and_annotated.json]
2024-09-06T17:12:46,[Error loading locus 1-10001-10108-TAACCC: Flanks can contain at most 5 characters N but found 1000 Ns]

Thanks for reporting this! I use https://github.com/bw2/ExpansionHunter which converts this error to a warning.
We could either exclude these loci from the EH version of the catalog, or ask people to use one of these forks:
https://github.com/bw2/ExpansionHunter or
https://gitlab.com/andreassh/ExpansionHunter

Wonderful, thank you! Do you think it makes sense to run one of those forks in general for all projects? Are they kept up to date with changes? I know the original isn't being actively maintained these days, but not sure if that is likely to change.

Also, the EH catalog has been updated to remove the N-error loci.

@bw2 could you please add the updated files without N-error loci? We want to test it specifically with the original ExpansionHunter for a reviewer request for another paper.

@hdashnow  the repeat_catalog_v1.hg38.1_to_1000bp_motifs.EH.json.gz already excludes the N-error loci identified by "filter_out_loci_with_Ns_in_flanks_from_expansion_hunter_catalog.py".
Are you still seeing this error?


Customize account selection/logon window

When acquiring a token with Get-MsalToken (latest version) without a LoginHint, the user gets presented a browser window with the option to select one of the already logged-in accounts or to log in with another account.
This window does not contain any information which application asks for logon data and for what reasons.
Is there a way to customize this browser windows or to add information to it?
If there is currently no way in MSAL.PS, but in MSAL itself, I would like to propose this as a new feature for MSAL.PS.
Thanks in advance!

The login page itself is controlled by Azure AD so MSAL cannot alter that. However, there may be options to customize the popup windows title bar or something. Regardless, this is probably not something that will change. The popup window should also already be a child window of the PowerShell console launching it.


Access  resources without token after enabled token based authorization

I have enabled token based authorization in postgraphql by using  --secret and its working fine.
But if I miss the 'Authorization' header in the request it will work same as a none token based execution.
Is it expected?

It sounds like you might not have implemented any security in your database schema? Have a read of this:
https://www.graphile.org/postgraphile/security/
and this:
https://www.graphile.org/postgraphile/postgresql-schema-design/#authentication-and-authorization

--secret only specifies the key to the signature of the jwt. The token itself is not encrypted. You can create jwt token yourself for example with https://jwt.io.
The postGraphQL-service must allow access to the database without token, otherwise you can't call the jwt creation functions.
With roles and/or an account_id (or whatever) and row level security on db level you can restrict actions.

Should this be closed @benjie ? This is documented well on the website now.


Show one tool after Hide doesn't show on the old position

Using the sample, you can hide one tool and show it, that works but the problem is when you show after hide, the tab is not shown on the old position.

Apparently it keep the good position when you dock it one time, but when you start the sample if you hide and show one tool the position is not kept, surely one save state is missing on the first add.


Pokemon Data Analysis

ML-Crate Repository (Proposing new issue)
:red_circle: Project Title : Pokemon Data Analysis
:red_circle: Aim : Analyze different pokemons depending on their features and attributes.
:red_circle: Dataset : https://www.kaggle.com/anatolinischakow/pokemon-data
:red_circle: Approach : Try to use 3-4 algorithms to implement the models and compare all the algorithms to find out the best fitted algorithm for the model by checking the accuracy scores. Also do not forget to do a exploratory data analysis before creating any model.
Hello, ML-Crate contributors, this issue is only for the contribution purposes and allocated only to the participants of SWOC 2.0 Open Source Program and JWOC '22 Open Source Program.

📍 Follow the Guidelines to Contribute in the Project :

You need to create a separate folder named as the Project Title.
Inside that folder, there will be four main components.

Images - To store the required images.
Dataset - To store the dataset or, information/source about the dataset.
Model - To store the machine learning model you've created using the dataset.
requirements.txt - This file will contain the required packages/libraries to run the project in other machines.

Inside the Model folder, the README.md file must be filled up properly, with proper visualizations and conclusions.

:red_circle::yellow_circle: Points to Note :

The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Follow Contributing Guidelines & Code of Conduct before start Contributing.
This issue is only for 'SWOC' and 'JWOC' contributors of 'ML-Crate' project.

:white_check_mark: To be Mentioned while taking the issue :

Full name :
GitHub Profile Link :
Participant ID :
Approach for this Project :
What is your participant role?

[ ] SWOC 2.0 Participant.
[ ] JWOC 2022 Participant.
[ ] Contributor

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

I am interested to work in this project.

The program will start from 15th July, after that this is going to be assigned. And please mention all the details when you comment next time.
@Nirvik07

@abhisheks008  I would like to work on this issue.
Name: Piyush Bhujbal
Approach: Considering the skills of each pokemon I shall prepare the data and then:

EDA
Data Visualizations
Feature Extractions

Participant ID: NA
Participant role: HSOC Participant

Issue assigned to you @PiyushBL45t


Handle all redirects

This is a follow up on #276

Just realized there's a bug here. Fixing.

[ch3195]


Scan for vulnerabilities is not enabled in cloned application

Create an application.
Create workflows with Scan for vulnerabilities enabled in CI.
Clone the application.
Scan for vulnerabilities is not enabled in the cloned application.

This issue is still present.


Ios and web view (android too?) don’t go to first unread message in stream/topic

When my users enter a topic with unread messages from the “unread messages” page, they expect to be taken to the first unread message, rather than to the top of the topic and have to scroll all the way down to the unread ones. Is it possible to go directly to the first unread message, when clicking on a topic? Maybe I missed something in setup or config/preferences?

Thanks @maltokyo for the report!
Does the issue #3457 describe what you're seeing?
I'm also particularly curious about this bit:

Ios and web view

Are you seeing this in the Zulip web app on iOS, or on a desktop? I don't think there's currently a known issue like this in the web app, so that would be quite helpful new information.

Yes #3457 describes what I experience in iOS app also. Same issue. So I
guess mines a duplicate. Will check also the web view again. Thank you for
taking up. My users get really frustrated with the mobile version not
scrolling to the unread section.
On Wed, 11 Sep 2019 at 02:28, Greg Price<EMAIL_ADDRESS>wrote:

Thanks @maltokyo https://github.com/maltokyo for the report!
Does the issue #3457 https://github.com/zulip/zulip-mobile/issues/3457
describe what you're seeing?
I'm also particularly curious about this bit:
Ios and web view
Are you seeing this in the Zulip web app on iOS, or on a desktop? I don't
think there's currently a known issue like this in the web app, so that
would be quite helpful new information.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/zulip/zulip-mobile/issues/3608?email_source=notifications&email_token=AAKS7WYRUKPKL73I2WKHTKLQJA3ULA5CNFSM4IVNPFNKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6M4CTI#issuecomment-530170189,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAKS7WZULTEM5COWJPEKKP3QJA3ULANCNFSM4IVNPFNA
.

Cool, thanks. Closing this in favor of #3457 .


0.54.3 version shows cluster as yellow with underrepl shards during shard relocation

The /_cluster/health API shows the cluster status as green but the crate-admin shows the status as yellow with underreplicated shards. When I click through to the tables it shows underreplicated shards on some tables. This was after an upgrade from 0.51.6 to 0.54.3 on a copy of our production cluster with 4 billion records and it took more than 10 minutes for the crate-admin to show a green state.
I was hitting /_cluster/health on the same system as I was viewing the crate-admin on.
I was also watching the /_cat/shards endpoint and there were no unassigned or initializing shards when the /_cluster/health API was showing green. However, there were relocating shards and as soon as there were no relocating shards the crate-admin showed green as well, so it looks like the crate-admin is incorrectly marking relocating shards as underreplicated.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/30069947-0-54-3-version-shows-cluster-as-yellow-with-underrepl-shards-during-shard-relocation?utm_campaign=plugin&utm_content=tracker%2F505663&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F505663&utm_medium=issues&utm_source=github).

hi @reversefold
while investigating this issue in the admin ui, we discovered that we actually do not expose the correct shard state information in the sys.shards table. we're discussing right now how to handle that and will come up with a solution asap.
we also found another issue which has been fixed already and will be available with the next hotfix.

Glad I'm helping to find these issues.

@reversefold we fixed this. it will be released in the next couple of days with 0.54.5.

Seems to be fixed.


MudChipField - Enter key is not always recognized.

I'm using the MudChipField on the CodeBeam site to see how it works and I don't see the 'Enter' key consistently working.  Sometimes it takes the enter key, sometimes I have to space first and then the enter key is registered.

Enter key feature did not released yet but showing on docs. Will come in this week


Issue 340 fix output tests

Description
Fix output tests for all models except NewmanTiedemannCapacitance.
Still a few things to fix for lead-acid, but opening a PR as there is already a fair bit in here
Fixes #340
Type of change

[x] Bug fix (non-breaking change which fixes an issue)

Key checklist:

[x] No style issues: $ flake8
[x] All tests pass: $ python run-tests.py --unit
[x] The documentation builds: $ cd docs and then $ make clean; make html

You can run all three at once, using $ python run-tests.py --quick.
Further checks:

[x] Code is commented, particularly in hard-to-understand areas
[x] Tests added that prove fix is effective or that feature works
[ ] Any dependent changes have been merged and published in downstream modules

Cool, will merge this. The problem was reading phi_e before updating it with the composite solution, i.e. using phi_e from the leading-order model to calculate the voltage


ld: library not found for -lWRAP

Following the instructions on compiling OpenCV 3 beta with opencv_contrib results in the following error. Any hint would be greatly appreciated.
[ 57%] Built target opencv_perf_imgcodecs
Linking CXX executable ../../bin/opencv_perf_videoio
[ 57%] Built target opencv_perf_videoio
Linking CXX shared library ../../lib/libopencv_video.dylib
[ 58%] Built target opencv_video
Linking CXX executable ../../bin/opencv_perf_video
[ 59%] Built target opencv_perf_video
Linking CXX shared library ../../lib/libopencv_bgsegm.dylib
ld: library not found for -lWRAP
clang: error: linker command failed with exit code 1 (use -v to see invocation)

I am on OSX 10.10.3.

My bad! It compiles just fine with OpenCV 3 RC1.


File Attributes: interface not documented

The table of allowed values for the attr attribute of file tags only defines config and template, but other text in the spec alludes to interface also being an allowed value. This may overlap with #114

Thanks for pointing this out. The table is correct and the "other text in the spec" describing "select" is an unintended "left over".
The file attribute interface was removed some time ago, when we found that there is no real difference between a template and an interface from a tooling perspective. Semantically here the interface was a template that would act as an "interface" (e.g. between two components) rather than being an example application template.


[BUG] - slog.Any can cause infinite loop if there is circular pointers in the struct

type Vertex struct {
	ID int
	This *Vertex
}
//try to use logger to log it when there is circular pointer
{
....
	g1 := Vetex{ID: 55}
	g.This  &g
	logger := slog.New(handler)
	logger.LogAttrs(context.Background(), slog.LevelError, "a", slog.Any("test", g))
}

Here is fix with limitation, to prevent infinite loop #28.
Please let me know, if it works for you.

this is one way to solve infinite loops better way is to als add opt-in cache
map[uinptr]string thats map pointer to field to the path to the field
and when you handle pointer/struct you can check if that pointer is in the cache and if it is you can format the log field from the stored path.


Refresh sample test data via new refresh command

Running make refresh-sample-testdata has been taking longer and longer as we ramp up the number of samples we have test data for and can now take at least five minutes.
This PR removes the refresh-testdata.sh script and adds a new refresh command to mal which will instead use Malcontent as a library to refresh the test data.
In my testing, it was at least three times faster and the output is 1:1 with the original script (which took a bit of doing with the TrimPrefixes field and making sure each path string was accounted for).
Anecdotal timing from my Framework:
$ time make refresh-sample-testdata
mkdir -p out
go build -o out/mal ./cmd/mal
./out/mal refresh
Sample data refreshed: 307/307 (progress/total)
Successfully refreshed test data for 307 samples

________________________________________________________
Executed in  123.80 secs    fish           external
   usr time   18.13 mins    0.00 millis   18.13 mins
   sys time    0.69 mins    4.74 millis    0.69 mins

My M1 Pro MBP took ~100 seconds and an i9-14900K took ~65 seconds.

Love it!
Future idea for improvement: take path names as an argument if you just want to update a single path name.


Improvement: Add method to delete pipeline

Added in GitLab 11.6 is a method to delete a pipeline.
https://docs.gitlab.com/ee/api/pipelines.html#delete-a-pipeline

@SamerAdra
This has been added and is available in release 4.9.18, please verify and close when you have a chance.

Works like a charm. Tested against GitLab 11.8.0-ee. Thank you @gmessner.


delete param

Description
There was a problem that errors were not given by giving default_value in the declare_parameter function.
Therefore, the declare parameter in the surround_obstacle_checker module was removed.
delete_param.webm
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[ ] I've confirmed the contribution guidelines.
[ ] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

@yamazakiTasuku Thanks for your contribute. Could you rename PR title based on this document?


[wip] Remove nvidia-cg-toolkit as input for retroarch.

Motivation for this change
Things done

[ ] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] OS X
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

see #15707

Makes sense to me. What remains to be done?

I'm trying to get it to work on Darwin still but it might be more difficult than I was expecting.

This should be ready if all tests pass.

This should be ready to merge.

@joachifm I'm just going to put it as "platforms.all" because there's no reason it shouldn't work on other platforms but I've only got it tested on Linux and Darwin.


hotspots: Animate more tastefully

Bounce five times, once every 5 seconds, rather than forever every 0.75 seconds. This reduces annoying user distraction and idle CPU/GPU consumption.
Fixes #13760.
Testing Plan: run-dev with ALWAYS_SEND_ALL_HOTSPOTS = True.

Thanks for fixing this!  It appears you removed the second scale parms in two places but left one of them as is.  Was that intentional or just oversight?


Empty index.php

I have several directories in my plugin and add an empty index.php to each of them for some extra security. Something like this:
<?php // Silence is golden.

However this triggers an error:
----------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
----------------------------------------------------------------------
 1 | ERROR | You must use "/**" style comments for a file comment
   |       | (Squiz.Commenting.FileComment.WrongStyle)
----------------------------------------------------------------------

I was wondering what would be the best way to fix it? Thanks.

You could just exclude all index.php files in your custom XML config file:
 <exclude-pattern>*/index.php</exclude-pattern>

I personally think the practice of empty index.php files is wrong. Leave it to the server configuration to hide directory listings.

While that would be the proper solution, unfortunately the 'average' WP user doesn't even know what "server configuration" is... so I'd advocate for requiring these empty index files.

We're not talking about an average user. We're talking about someone who is creating a Plugin or Theme, and things they need an empty index.php file. Those people can be educated. It's a pastable snippet of a line or two in. htacess.

I agree with @GaryJones that it usually doesn't make sense to include index.php files in every directory in an open source project. They are only needed in directories which need to be protected for some reason.
However, on the other hand, WordPress core does continue to include index.php files in every directory, so perhaps we should make provision for that in the WordPress-Core ruleset, at least.
Also, note that using .htaccess is only for servers that are using Apache. I don't know if other options like Nginx are commonly misconfigured in this way, or not, but if so, adding .htaccess really doesn't give complete protection, especially since Nginx is becoming more popular.

The other workaround it is to include a valid file comment in your index.php files of course:
<?php

/**
 * Do not modify the files in this folder.
 */

And just to add that indeed it is not the "average user" creating the plugin or theme but once finished and if the plugin or theme is distributed on w.org then the "average user" returns to the equation. :smirk:

As much as I dislike the use of empty index.php, if they are to exist, then I agree that:

use of a file-level DocBlock instead of an inline comment makes it more consistent with every other file.
the DocBlock should include a Summary, or Summary and Description, that explains why that empty file exists. This makes it less cryptic to those browser through the files. So, much like @ntwb suggests:

<?php
/**
 * Intentionally empty file.
 *
 * It exists to stop directory listings on poorly configured servers.
 */

@Drewapicture: Is this something we could decide upon and get into the Handbook, and fixed up in core, so it could then be checked against (if it exists) for plugins and themes?

There's already a ticket open for standardising file headers in core, so I've commented there.

I'm rethinking this. According to the handbook:

Whenever possible, all WordPress files should contain a header DocBlock, regardless of the file’s contents – this includes files containing classes. [emphasis in original]

Above I said this:

However, on the other hand, WordPress core does continue to include index.php files in every directory, so perhaps we should make provision for that in the WordPress-Core ruleset, at least.

It turns out that it isn't true. The only directories that include index.php files without any code or file level docblocks are those that don't contain bundled source code:
/wp-content/
/wp-content/plugins/
/wp-content/themes/

All of the the other directories that contain an index.php file are actually using them, that is, they contain code, and are accompanied by a file-level docblock.
So I suggest that we don't make special allowances for index.php files. WordPress can either update these files to have proper headers, or perhaps just exclude those directories from sniffing. Proposing we close this as wontfix.

In the meantime I'm going to stick the template hierarchy in an index.php file or two 😏
https://johnblackbourn.com/ascii-wordpress-template-hierarchy

Pinging @DrewAPicture for an opinion.

@GaryJones Which part specifically are you seeking an opinion on? I can get on board with adding file headers to the empty indexes purely for standardization sake if that's what you're asking.

@GaryJones Also, I disagree with your assertion that we aren't in fact talking about average users. The whole point of the indexes is to prevent listing on poorly configured user servers, which is where the plugins are going to live eventually. So it's absolutely about average users not even knowing their servers are configured poorly.

OK, to prevent listing content. And again, DirectoryIndex/Nginx/[insert confusing jargon here] is irrelevant to the users that are actually going to be hosting the plugins.

OK, to prevent listing content.

That makes sense. It's easy enough for a bad actor to find out what a site is likely to have in their wp-includes, but less so for their wp-content.

And again, DirectoryIndex/Nginx/[insert confusing jargon here] is irrelevant to the users that are actually going to be hosting the plugins.

I think we're talking about different aspects here, but it's irrelevant to the point in hand.
Question: Would you want  the Handbook to advise plugin and theme developers to use index.php files in their directories?
Question: Is the previous example code a) sufficient to meet the WPCS and WP Doc standards, and b) suitably descriptive wording?
<?php
/**
 * Intentionally empty file.
 *
 * It exists to stop directory listings on poorly configured servers.
 */

Question: Would you want the Handbook to advise plugin and theme developers to use index.php files in their directories?

No directories within the plugin should contain user content, because they'll be overwritten by updates. So this wouldn't be for the directories within the plugin, but directories that the plugin creates in /wp-content for storing content in.

I use this in the index.php file, hope it helps:
<?php // phpcs:ignore PEAR.Commenting.FileComment.Missing
// Silence is golden.

Ok. I agree with empty index.php. PHP manuals teach how to fill this file with code. I can't understand how a program should run when index.php is empty.

@AndrzejLan You should check out this amazing diagram Rarst made on wpse https://wordpress.stackexchange.com/a/26622/58895
index.php in a plugin is not the same as the one in the WordPress core. When the web request comes to your WP app the index.php file in the WordPress core will get 'pinged', and then the app execution will happen. The WP app will then execute the rest of the code, plugins included.

Even with the workaround mentioned here https://github.com/WordPress/WordPress-Coding-Standards/issues/451#issuecomment-139961024 (which is the only correct thing to do, removing index files is not adequate as others have already expressed here too), we still get one warning, which is the "there must be exactly one blank line after the file comment"
That warning only disappears if after that blank line actually comes something
EOF is not accepted as something valid and thus, it seems to trigger that warning, no matter what.
So, this triggers no notice:
<?php
/**
 * Intentionally empty file.
 *
 * It exists to stop directory listings on poorly configured servers.
 *
 * @package           Tkt_Send_Email_If
 */

echo 'this';

But this, does:
<?php
/**
 * Intentionally empty file.
 *
 * It exists to stop directory listings on poorly configured servers.
 *
 * @package           Tkt_Send_Email_If
 */

This is even happening after running the beautifier.
Thus, I think there is something we can improve here, which is, don't assume there should be some code after a file comment
Is this possible? Does this need a new ticket?

@TukuToi The sniff used for this is not a WPCS native sniff, but one from PHPCS itself, so if you want to open an issue about it, it should be done upstream.
As a plugin/theme developer, you're probably best off to ignore these empty index.php files from within your custom ruleset using this snippet:
	<!-- Exclude the 'empty' index files from some documentation checks -->
	<rule ref="Squiz.Commenting.FileComment">
		<exclude-pattern>*/index\.php</exclude-pattern>
	</rule>
	<rule ref="Squiz.Commenting.InlineComment.NoSpaceBefore">
		<exclude-pattern>*/index\.php</exclude-pattern>
	</rule>

... for when the file content is something like this:
<?php
/**
 * Nothing to see here.
 */

Or this code snippet:
	<!-- Exclude the 'empty' index files from some documentation checks -->
	<rule ref="Squiz.Commenting.FileComment">
		<exclude-pattern>*/index\.php</exclude-pattern>
	</rule>

... for when the file content is something like the index.php file you posted above.
Mind: this does presume you have no index.php files with actual code in your project! If you do, you'll need to adjust the exclude patterns to make sure those will still get scanned.

Thanks @jrfnl - since I also have theme code, that is my least preferred solution. I have reported this upstream, sorry I didn't realise that this is a PHP Sniffer issue rather than a WP Sniffer issue. Thanks!

@TukuToi No worries. FYI: The CONTRIBUTING.md doc has information about how to determine whether an issue is a WPCS issue or an upstream one.

This last issue has now been resolved in PHP_CodeSniffer 3.6.1 according https://github.com/squizlabs/PHP_CodeSniffer/issues/3384#issuecomment-882127645
3.6.1 was released October 11th 2021.
Thus every issue within this ticket is resolved - I guess it could be "closed" (even if it is a question and not a actionable task on WPCS side).


Uncaught TypeError: Cannot read property 'id' of null

[Enter steps to reproduce:]

Use Github tab in Atom Beta
Click on a file name from the tab while resolving merge conflicts

NOTE: This is not happening for all files. I'm not sure what the difference was with this particular file.
Atom: 1.19.0-beta3 x64
Electron: 1.6.9
OS: Mac OS X 10.12.5
Thrown From: Atom Core
Stack Trace
Uncaught TypeError: Cannot read property 'id' of null
At /Applications/Atom Beta.app/Contents/Resources/app/src/text-editor-component.js:2145

TypeError: Cannot read property 'id' of null
    at horizontalPositionsToMeasure.forEach (/Applications/Atom Beta.app/Contents/Resources/app/src/text-editor-component.js:2145:73)
    at Map.forEach (native)
    at TextEditorComponent.measureHorizontalPositions (/Applications/Atom Beta.app/Contents/Resources/app/src/text-editor-component.js:2141:45)
    at TextEditorComponent.measureContentDuringUpdateSync (/Applications/Atom Beta.app/Contents/Resources/app/src/text-editor-component.js:382:16)
    at scheduler.readDocument (/Applications/Atom Beta.app/Contents/Resources/app/src/text-editor-component.js:266:20)
    at ViewRegistry.module.exports.ViewRegistry.performDocumentUpdate (/Applications/Atom Beta.app/Contents/Resources/app/src/view-registry.js:191:15)
    at /Applications/Atom Beta.app/Contents/Resources/app/src/view-registry.js:3:65

Commands
     -2:40.2.0 core:save (input.hidden-input)
     -2:31.9.0 core:backspace (input.hidden-input)
     -2:30.2.0 core:save (input.hidden-input)
     -1:50.5.0 core:cut (input.hidden-input)
     -1:48.9.0 editor:newline (input.hidden-input)
     -1:48.6.0 core:paste (input.hidden-input)
     -1:47.9.0 core:backspace (input.hidden-input)
     -1:46.9.0 core:move-down (input.hidden-input)
     -1:46.6.0 editor:move-to-end-of-screen-line (input.hidden-input)
     -1:46.3.0 core:backspace (input.hidden-input)
  2x -1:45.2.0 core:save (input.hidden-input)
  2x -1:06.5.0 core:undo (atom-workspace.workspace.scrollbars-visible-when-scrolling.theme-one-dark-syntax.theme-one-dark-ui.find-visible)
     -0:58 core:copy (input.hidden-input)
  3x -0:54.1.0 core:backspace (input.hidden-input)
     -0:48 core:paste (input.hidden-input)
  2x -0:46.4.0 core:save (input.hidden-input)

Non-Core Packages
autoclose-html 0.23.0
autocomplete-robot-framework 3.3.0
busy-signal 1.4.3
file-icons 2.1.8
highlight-selected 0.13.1
intentions 1.1.2
language-javascript-jsx 0.3.7
language-robot-framework 2.2.0
linter 2.2.0
linter-eslint 8.2.1
linter-ui-default 1.6.2
minimap 4.28.3
minimap-highlight-selected 4.6.1
minimap-selection 4.4.0
prettier-atom 0.36.1

Thanks for the report!  Stacktrace looks pretty close to https://github.com/atom/atom/issues/14794 so closing as a duplicate - it sounds like you can reproduce with a specific file but if you can confirm if the error is reproducible in safe mode (atom --safe), please let us know in the issue!

We noticed that this is a duplicate of https://github.com/atom/atom/issues/14794. You may want to subscribe there for updates.
Because we treat our issues list as the Atom team's backlog, we close duplicates to focus our work and not have to touch the same chunk of code for the same reason multiple times. This is also why we may mark something as duplicate that isn't an exact duplicate but is closely related.
For information on how to use GitHub's search feature to find out if something is a duplicate before filing, see the How Can I Contribute? section of the Atom CONTRIBUTING guide.


Frontend?

What kind of frontend is planned for horseville?
Are custom ones allowed?

Custom frontends are absolutely possible (the code is open), but they won't be officially supported by us.


changes to allow use from script

Do not merge
These is an example of the changes I needed to make that make it easy to use crosswalk-app-tools from another JS script (grunt-crosswalk).
I basically move all the direct references to the process args and cwd into a parameter.
Let me know what you think. If you approve of the approach, I can clear it up and submit a real PR - or you can do that yourself, of you prefer.
(I'm not sure how that _locales thing got in there - I think you already fixed that somehow)

Please create an accompanying issue in jira.
About the changes, what about using the top-level command handler methods in Main, instead of channeling everything through run()? Then we could think of a way to make the Main object hold the environment in a way that was configurable from the outside.

https://crosswalk-project.org/jira/browse/XWALK-5105
I'll take a look at your suggestion (I already did and opted not to do that for some reason, but I forget why).

These issues have been addressed separately. Closing.


Upgrade to React 18

This includes adding the unit tests

@Birch - The latest bible-reference-rcl is at 1.2.0 and has the updates from SIL to React 18.
Note that GWE will also need updates to the CSS to accommodate the wider reference fields.


Text boxes wrong background colour

The text boxes in the main window are not (or should not be) editable, and therefore according to Microsoft's design guidelines of the era should be the same colour as the background.

Can you please provide a screenshot of the issue? It'll help me identify what's wrong

https://i.imgur.com/HN14Le0.png
Fom your post on the WACUP forum. The text boxes for the currently playing song, the sample rate and bitrate, and the box down the left of the window shouldn't be white. Being white makes it seem like those boxes are editable. For text boxes that aren't editable, they should be the same colour as the surrounding window. Not sure of the text colour.

I can see how that could cause for some confusion and I think I've seen classic skins follow this type of behavior
This is mostly just my own personal preference and painting the background to the same color as the window background, probably won't really make them stick out from the rest. (We could also argue that the visualizer box, the timer and the playback status are also entirely wrong but we'll ignore that for now :p )

You're talking about the visualiser in the main window? That's fine. The issue is the text boxes.
One of the major reasons for the rise in nostalgic views towards this era of computer GUI is because Microsoft was very consistent in their application of their style, and didn't (well not always) subvert the user's expectation. Something today's UIs do not take into consideration. Making the text boxes' backgrounds white makes them seem editable, which is not the case.
Personal preference? Well, okay. It's not true to the subject of your inspiration, however.

I'll think about this, but it's going to take some time before I can really commit to this project again, as real life takes precedence and I've shifted focus to maintaining Winamp Modern for WACUP for the time being

https://i.imgur.com/UGhSruN.png
For reference, here's an excerpt from The Windows Interface Guidelines For Software Design by Microsoft. It's not a great capture as you can't really see the difference between "Read-only" and "Static Text Field" and it's in monochrome.
Available at: https://archive.org/details/windowsinterface00micr

Thank you a ton for providing the resources for me to look into!
I can't make promises when I'll actually get to this, but it'll be done long before a new (and final) release is out


added scale property to chart configuration, by default is 1

New Pull Request
Now charts has the possibility to scale with the css transform
Fixes #1849
Type of change
Please delete options that are not relevant.

[X] Bug fix (non-breaking change which fixes an issue)
[X] This change requires a documentation update

Checklist:

[X] My code follows the style guidelines of this project
[X] I have performed a self-review of my own code
[X] I have commented my code, particularly in hard-to-understand areas
[X] My changes generate no new warnings
[X] I have added tests that prove my fix is effective or that my feature works
[X] New and existing unit tests pass locally with my changes

Thanks for the quick PR 😀
So, the chart scaling has to be done in CSS and property has to be set in JS options? Am I right?
How about scaling the chart in JS itself when we already have the chart.scale property?

You'r welcome! :smile:
Right now the only way to solve this limitiation without looping all the DOM is making the scalation in parallel, when CSS changes, JS must change manually.
Maybe this is not the perfect solution, but it really solve the point that chart shows correctly the tooltips because it some parent container has a scale (CSS or JS).
In case that you scale the chart by JS has the same point that scale in CSS in this case.


WSL 2 does not boot

Version
Microsoft Windows [Version 10.0.19044.1645]
WSL Version

[X] WSL 2
[ ] WSL 1

Kernel Version
<IP_ADDRESS>
Distro Version
Ubuntu 20.04
Other Software
No response
Repro Steps
Type wsl into the command promp
Expected Behavior
WSL Distro boots and become usable.
Actual Behavior
Process hangs and eventually terminates with the message:
A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

Diagnostic Logs
https://aka.ms/AAgnwh6

Attempted to unregister and reinstall Ubuntu causes the same issue:

Never fails, spend 1/2 a day working through an issue, then finally ask about it publically and the answer comes magically.
No idea the root cause of the issue, but taking some inspiration from here, I deleted the UbuntuOnWindows folder in my AppData. It was something to the effect of C:\Users\dhayes\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_xxxxxxxxxxxxx, reinstalled Ubuntu wsl --install -d Ubuntu, and everything booted up well. How that helps someone in the future.


Bug fix: Allow multiple relationships to be defined in one declaration.

I ran into some weird errors when I used has_many :foo, :bar to define two relationships in one declaration. I tracked it down to the fact that it was mutating the options hash in order to add class_name: Foo for the first relationship, which polluted the options for the second relationship.

@dougo Thanks!


[Buildkite] Unblock Pipeline

Extension
https://www.raycast.com/mskelton/buildkite
Description
Currently the status of a pipeline does not show as "Pending" or "Blocked" or whatever the official status is when it is requiring to be unblocked for the next stage eg to prod.
It would be awesome to be able to unblock a step from raycast without having to navigate to the browser.
Who will benefit from this feature?
everyone!!
Anything else?
some context of how easy this should be
https://forum.buildkite.community/t/unblocked-step-with-api-call/1006/2

@bennnym I don't use Buildkite actively anymore at my current role, so supporting the extension is a bit of a challenge now given my lack of access to real pipelines that I can test with. Happy to help guide you through what it would take to add this feature, but I'll need a bit of help.

Thanks @mskelton, I would need quite a bit of help seeing i am a python dev, but let me see how far I can get on my own. Appreciate the response !