Support for mouse-button copy and paste

sourcegit has good integration with the traditional clipboard, but does not seem to interact with Linux's mouse-button copy and paste (select text to copy it, then use a middle click to paste it). It would be nice if that worked too

I'm very sorry. For the follow reasons, this feature will not be planed.

This is not a cross-platform well-known copy-paste way
I've seen more than one of my friends that use the middle-button-press action as context menu trigger or other custom functions.
If you want to paste selected into anthor software, the copied text must exists in the system clipboard. However, this project will use the clipboard in some cases, for example, it will try to read repository URL from clipboard after a new Clone popup is just opened

Hello,
If I understand correctly, your answer is that users on most systems expect copy/paste to happen using ctrl+X and ctrl+V (or an equivalent) and that it would be wrong to mess with that when people are simply selecting text or performing a middle-click, just because some system out there uses a non-mainstream way of performing copy/paste.
If that is indeed what you meant, then I am glad to say that is not what I'm talking about here. I assume that Linux is not your OS of choice, so let me correct a few misconceptions :

what you call "the system clipboard", singular, is actually two distinct clipboards on Linux (or more accurately, on X11 systems)

one is the desktop-environment clipboard, which is the traditional copy/paste using ctrl+X and ctrl+V, it behaves exactly the same way on Linux that it does on Mac or Windows
another one is the X clipboard (look up "X selection" for more on this if you're curious), which exclusively relies on select + middle click, and does not interfere at all with the desktop-environment clipboard

most Linux users, while not necessarily savvy on the details, know they can (and expect to be able to) copy two texts at the same time, through two totally independent clipboards
adding support for mouse copy/paste therefore does not prevent the application from being cross-platform, on the contrary it allows it to be better integrated into some platforms without taking anything from the others
cross-platform UI libraries usually have built-in functionalities to handle this; for example I've worked with Qt in C++ in the past, and it has clipboard modes that can be used to specify which clipboard to put things into / pull things from

I'd say the real question here is whether the UI library used in this project does have support for this

I checked the ISSUES of AvaloniaUI and found some relevant information, see https://github.com/AvaloniaUI/Avalonia/issues/11011. Unfortunately, AvaloniaUI does not currently support this feature.


WebSocket error handler migration from carbon-transport to Ballerina

Migrated WebSocket error handler from carbon-transport to balleerina

Closing this PR and sent it via https://github.com/ballerinalang/ballerina/pull/2328


Integrate SSR with React

Is your feature request related to a problem? Please describe.
There are three configcat JS libraries, and the advantage of the SSR one over Node.js or React isn't clear. In my case, I'm using Remix, and the user ID is entirely on the server within the cookie derived session. I need the React.js render to match on both the server and client side.
Describe the solution you'd like
I would like a set of React components that can take the ConfigCat values passed from a server route loader and initialize the context of the react components.
Describe alternatives you've considered
I considered the react library, but like I mentioned, the client-side doesn't have a copy of the user-id. Passing it would expose the app to unnecessary data leakage.
I considered the Node.js library, but I didn't see the differences spelled out. While I'm running Remix on Node.js, it could run on other JavaScript engines like Cloudflare Workers.
Using the SSR library to as documented doesn't provide a clear way to optionally render UI components in a consistent manner between the server and client. I need the server to get the flags for the logged-in user and then both use them when rendering to HTML and distribute the settings to the client so it can also use the values while rendering.
Additional context
I wrote two files to aid me in this:
configcat.server.ts:
import type { SettingKeyValue } from "configcat-js-ssr";
import {
  createConsoleLogger,
  getClient,
  LogLevel,
  PollingMode,
  User,
} from "configcat-js-ssr";
import { get_process_env } from "~/utils";

const sdkKey = get_process_env("CONFIGCAT_SDK_KEY");

const configCatClient = getClient(sdkKey, PollingMode.AutoPoll);

export async function getConfigCatValues(
  identifier: string
): Promise<SettingKeyValue[]> {
  const userObject = new User(identifier);
  const settingValues = await configCatClient.getAllValuesAsync(userObject);
  return settingValues;
}

and configcat.tsx:
import type { ReactNode } from "react";
import { createContext, useContext } from "react";

import type { SettingValue } from "configcat-js-ssr";

import { getLogger } from "~/services/logging";

const logger = getLogger("configcat");

/**
 * Remix loader compatible type for ConfigCat SettingKeyValue
 */
interface SettingKeyValue {
  settingKey: string;
  settingValue?: SettingValue;
}

const ConfigCatContext = createContext<SettingKeyValue[]>([]);

export function useConfigCat(): SettingKeyValue[] {
  return useContext(ConfigCatContext);
}

export function useFeatureFlag<T extends SettingValue>(
  key: string,
  defaultValue: T
): T {
  const typeofDefaultValue = typeof defaultValue;
  if (
    defaultValue != null &&
    ["boolean", "number", "string"].indexOf(typeofDefaultValue) === -1
  ) {
    throw new TypeError(
      `Invalid type for 'defaultValue': ${typeofDefaultValue}`
    );
  }
  const context = useContext(ConfigCatContext);
  const settingValue = context.find((x) => x.settingKey === key)?.settingValue;
  if (settingValue == null) {
    return defaultValue;
  }

  if (typeof settingValue === typeofDefaultValue) {
    return settingValue as T;
  } else {
    console.error(
      `typeof of setting value (${typeof settingValue}) for setting '${key}' does not match type of defaultValue (${typeofDefaultValue})`
    );
  }

  return defaultValue;
}

export function ConfigCatProvider({
  children,
  value,
}: {
  children?: ReactNode | undefined;
  value: SettingKeyValue[];
}) {
  return (
    <ConfigCatContext.Provider value={value}>
      {children}
    </ConfigCatContext.Provider>
  );
}

And use like this:
export async function loader({ request }: LoaderArgs) {
  const session = await getSession(request.headers.get("Cookie"));
  const user = await requireAuthenticatedUser(request, session);
  const configCatValues = await getConfigCatValues(user.profile.username);

  const data: LoaderData = {
    configCatValues,
  };

  return json(data);
}

export default function Index() {
  const { configCatValues } = useLoaderData<typeof loader>();
}

  return (
    <ConfigCatProvider value={configCatValues}>
      <Outlet />
    </ConfigCatProvider>
  );
}

@laliconfigcat Thanks for the response and the clarification on the differences between SSR and Node.js on the server side.
I hope this provides some insperation for what others might want a bridge between server-side and client-side or future guidance on the ConfigCat libraries. This SSR library seems to be the most reasonable place to handle this situation because that's where developers would most likely want to bridge the two. To avoid a React hydration error on the client side, we can't wait for an Async http call to finish.

We recently introduced synchronous feature flag evaluation in our SDKS with the help of snapshots. Could that help you in the hydration error on client-side? https://configcat.com/docs/sdk-reference/js-ssr/#snapshots-and-synchronous-feature-flag-evaluation

@laliconfigcat I saw the documentation for the snapshot, but I also saw that getting a specific value for a specific user was after the snapshot. I mentioned that the user identification value was on the server-side, so I don't think the snapshot would prove useful in this case.
getAllValuesAsync on the other hand takes the User object as a parameter and outputs all the possible values that the render might need, whether it is server-side or client-side.


Square brackets are escaped incorrectly

System information:

Operating system: Windows 10
DBeaver version: 7.3.1 EA
Additional extensions: none

Connection specification:

Database name and version: Microsoft SQL Server 15.00.2000
Driver name: Microsoft JDBC Driver 8.2
Do you use tunnels or proxies (SSH, SOCKS, etc)?  SSH

Describe the problem you're observing:
Brackets are being escaped invalid when identifier already contains brackets.
Steps to reproduce, if exist:

Create table named 'Album'
Rename it to 'Album.Test'
Persist changes

This will generate following SQL statement:
EXEC master.sys.sp_rename N'master.dbo.Album' , N'[Album.Test]', 'OBJECT' GO

Which will rename 'Album' to '[Album.Test]' (with brackets)

Refresh schema to verify that table actually was renamed to '[Album.Test]'
Try to rename it again to 'Album'

This will generate another SQL statement:
EXEC master.sys.sp_rename N'master.dbo.[Album.Test]' , N'Album', 'OBJECT' GO

Which is incorrect. According to this answer on stackoverflow, valid statement would be:
EXEC master.sys.sp_rename N'master.dbo.[[Album.Test]]]' , N'Album', 'OBJECT' GO

As a feature request I propose to add connection configuration flag to allow to use QUOTENAME function to properly quote identifiers.

not reproducible against 21.1.2

steps 4-5 are still reproducible

We've fixed only escaping behavior.
Edge quotes still escape invalidly because it's hard to determine whether they're part of the identifier itself or just unnecessary quotes.

Verified


fix elastic percent typo

Motivation:
Explain the context, and why you're making that change.
To make others understand what is the problem you're trying to solve.
Modification:
Describe the idea and modifications you've done.
Result:
Fixes https://github.com/sofastack/sofa-rpc/issues/589
If there is no issue then describe the changes introduced by this PR.

Codecov Report

Merging #674 into master will decrease coverage by 0.05%.
The diff coverage is 0%.

@@             Coverage Diff              @@
##             master     #674      +/-   ##
============================================
- Coverage     72.38%   72.33%   -0.06%
  Complexity     1078     1078
============================================
  Files           364      364
  Lines         15127    15127
  Branches       2424     2424
============================================
- Hits          10950    10942       -8
- Misses         2916     2928      +12
+ Partials       1261     1257       -4

Impacted Files
Coverage Δ
Complexity Δ

...in/java/com/alipay/sofa/rpc/common/RpcOptions.java
100% <ø> (ø)
0 <0> (ø)
:arrow_down:

...lipay/sofa/rpc/client/ElasticConnectionHolder.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...java/com/alipay/sofa/rpc/module/LookoutModule.java
52.63% <0%> (-31.58%)
3% <0%> (-1%)

...y/sofa/rpc/bootstrap/DefaultProviderBootstrap.java
71.23% <0%> (-2.29%)
0% <0%> (ø)

.../main/java/com/alipay/sofa/rpc/event/EventBus.java
70.58% <0%> (-1.97%)
0% <0%> (ø)

...lipay/sofa/rpc/registry/consul/ConsulRegistry.java
50% <0%> (+0.57%)
19% <0%> (+1%)
:arrow_up:

...alipay/sofa/rpc/registry/zk/ZookeeperRegistry.java
63.25% <0%> (+0.6%)
0% <0%> (ø)
:arrow_down:

...com/alipay/sofa/rpc/context/RpcRuntimeContext.java
88.88% <0%> (+1.23%)
0% <0%> (ø)
:arrow_down:

Continue to review full report at Codecov.

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


[Error: Purchased failed for sku: {productId}: Unable to Complete Request] after cancel and resubscribe

Please use the Discussion board if you want to get some help. Please use issues to report bugs.

Description
I am using react native iap for inapp subscription.
I got the error below when i cancel the subscription and resubscribe the plan.
[Error: Purchased failed for sku:*Product ID Here*: Unable to Complete Request]

Currently I am using Storekit2 and react-native-iap version 12.
I've tried using Storekit1 and react-native-iap version 10, but nothing has worked well.
In Storekit1, error message converts to Unknown Error.
Also, I have native error message.
Error Domain=ASDErrorDomain Code=825 "No transactions in response" UserInfo={server-correlation-id=JTU2S7LDTNBIDXY5S7HMT3M22Y, client-environment-type=Sandbox, AMSServerErrorCode=0, NSDebugDescription=No transactions in response, storefront-country-code=KOR}
2024-10-08 16:00:56.048730+0900 PublicInstructorApp[10723:2593898] [Default] [StoreKit] Purchase did not return a transaction: Error Domain=ASDErrorDomain Code=825 "No transactions in response" UserInfo={server-correlation-id=JTU2S7LDTNBIDXY5S7HMT3M22Y, client-environment-type=Sandbox, AMSServerErrorCode=0, NSDebugDescription=No transactions in response, storefront-country-code=KOR}
[react-native-iap] Purchase Failed
["debugMessage": "Unable to Complete Request", "message": "Unable to Complete Request", "productId": "00instructor_monthly_subscription", "responseCode": "E_PURCHASE_ERROR"]

Environment:

react-native-iap: 12.15.2
react-native: 0.74.3
Platforms (iOS, Android, emulator, simulator, device): iOS (Test with Sandbox, real device)

To Reproduce
Steps to reproduce the behavior:

call requestSubscription method.
go to setting > appstore > sandbox and cancel the subscription.
go back to the app and call requestSubscription method again.
inapp subscription is well done, but it throw the error like i'd mentioned above.
The thing is that subscription is well applied in my sandbox account, and my backend server, but it throws an error on client side. (requestSubscription method throw the error.)

[Optional] Additional Context

I'm having the same problem right now, it started 1 hour ago.

I'm having the same problem right now, it started 1 hour ago.

It's back to normal, from what I understand this problem happens when you update some information on the main screen (inflight)

Did you solve it? @RuyVictor
i'm facing this issue when i subscribe -> cancel -> resubscribe

Did you solve it? @RuyVictor i'm facing this issue when i subscribe -> cancel -> resubscribe

any updates?

Did you solve it? @RuyVictor i'm facing this issue when i subscribe -> cancel -> resubscribe

There's nothing you can do, in my case I waited about 2 hours, but if the problem persists for you, in the subscription group, try changing the name of the subscription, or change the order, then save. Wait a few hours.


Updates to log test helpers

Updating @go.log_command to capture command output per #53 turned out to be more subtle and complex than anticipated. In the process, I extracted, refactored, and enhanced a few log test helper functions. Rather than clutter the PR that will contain the implementation of #53 with all these updates, I'm merging them now.
Eventually I'll have to properly test and package these utilities, so others who may want to write logging-focused tests can use them.

Extracting the log test utilities effectively falls under #40.

Coverage decreased (-0.05%) to 94.253% when pulling 4b475cc142ecdd453cdd271c441335cf6b6a8550 on log-test-helpers into 9bce50627a92339d43dfaa43ad3825792cec65a8 on master.


Multiple Outfiles, One Task, Incremental Building

My project has a bunch of folders with typescript files within them that need to be compiled into one js file per folder. I want to have incremental building, so I've used ts.createProject outside of the task. To accomplish this I'm calling createProject dynamically to create a project per folder, then referring back to those folders in the gulp task.
This seems like a lot of acrobatics to pull something fairly "standard" together. Also, it doesn't work the way I have it setup. Nothing is output, I think because the projects are not getting any file input as it stands currently.
Is there a simple way to do this that I'm overlooking? How do I pass in files to the tsProject like in the 2nd tap function I wrote below?
const gulp = require('gulp');
const ts = require('gulp-typescript');
const tap = require('gulp-tap');

const FOLDER_REGX = /src\/([^\/]*)/;

let projects = {};

gulp.src(['src/*', '!src/@types/**'])
		.pipe(tap(function (file, t) {
			let folderName = FOLDER_REGX.exec(file.path)[1];
			console.log(folderName);
			projects[folderName] = ts.createProject('tsconfig.json', {
				outFile: folderName + '.js'
			});
		}));

gulp.task('default', function(done) {
	return gulp.src(['src/*', '!src/@types/**'])
		.pipe(tap(function (file, t) {
			let folderName = FOLDER_REGX.exec(file.path)[1];
			return projects[folderName](); // executes ts.createProject()()
		}))
		.pipe(gulp.dest('build'))
		.on('end', done);
});

For anyone with a similar issue, I've switched to rollup for this particular use-case, seems to be a better fit for the job. Things are now working as I needed.


⚠ Bofrost.at has degraded performance

In 45b7089, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2175 ms

Resolved: Bofrost.at performance has improved in c2201bb after 9 minutes.


bug: The  tag in .menu has an abnormal style when it is focused and active

What version of daisyUI are you using?
v3.0.0
Describe your issue
The <a> tag in .menu has an abnormal style when it is focused and active

What browsers are you seeing the problem on?
Chrome
Reproduction URL (optional)
No response

Seeing the same, it seems to default to use the --n variable for neutral color as background, instead of using primary or --p like it did previously. Might be a regression.

Another workaround: I was already applying bg-primary to active menu items, so I changed it to bg-primary focus:bg-primary-focus and it also worked.

You could also remove focus from the element after it's clicked
const handleClick = () => {
  if (document.activeElement instanceof HTMLElement) {
    document.activeElement.blur();
  }
};


Fix the 'hosttools' bootstrapping build mode

After the rename of the enable-cxx-interop option to enable-experimental-cxx-interop (https://github.com/apple/swift/pull/42251) it was no longer possible to build with installed tools.
This change re-introduces the enable-cxx-interop option for backward compatibility

@swift-ci smoke test

Btw, I've setup a special crosscompile build of my Android toolchain that cross-compiles libswift only with a prebuilt official Swift toolchain for linux, ie without building the linux toolchain from source first as the current crosscompile of libswift assumes.
Would you like me to submit that here, gated under a flag? I'm not sure if you'd find that worth having upstream here.

I do not think this is the correct way to proceed. Let's discuss later today.


Is error in RNN(Layer)?

class RNN(Layer):
,,,
def init(self, hidden_size, in_size=None):
...
self.x2h = Linear(hidden_size, in_size=in_size)
self.h2h = Linear(hidden_size, in_size=in_size, nobias=True)    #here is problematic
if we code my_rnn = RNN(10, 1),  then  hidden_size =10, in_size =1
and  this will not work.
since h_t =  h_t-1 * h2h  will raise error (failed to shape match for matrix multiplication of 1 x 10  *  1 x 10)

and one more typo in here,   deep-learning-from-scratch-3/steps/step60.py
class BetterRNN(Model):
def init(self, hidden_size, out_size):
super().init()
self.rnn = L.LSTM(hidden_size)
self.fc = L.Linear(out_size)
def reset_state(self):
    self.rnn.reset_state()

def __call__(self, x):             #intended method here may be [forward]?
    y = self.rnn(x)
    y = self.fc(y)
    return y


added cancellation support to PTVS.

currently, it is using a hack to add the support since ILanguageClient doesn't provide a way for us to inject our CancellationStrategy at the right point.
but except the very first a few min once folder is opened, it should work as expected.

@huguesv can you take a look?

@heejaechang the rest looks good, thanks for doing this!

@huguesv addressed your feedback.

@huguesv I can't check this in. I don't have permission.


EXT1 All Low / Any High documentation mismatch. (IDFGH-1719)

Hello, I'm having trouble getting EXT1 wakeup working, and I would like to get a clarification on the ALL_LOW vs ANY_HIGH because header file and C source comments do not match.
esp_sleep.h
/**
 * @brief Logic function used for EXT1 wakeup mode.
 */
typedef enum {
    ESP_EXT1_WAKEUP_ALL_LOW = 0,    //!< Wake the chip when all selected GPIOs go low
    ESP_EXT1_WAKEUP_ANY_HIGH = 1    //!< Wake the chip when any of the selected GPIOs go high
} esp_sleep_ext1_wakeup_mode_t;

Technical Reference Manual V4.0
RTC_CNTL_EXT_WAKEUP1_LV 0: external wake-up at low level, 1: external wake-up at high level.

sleep_modes.c
    // Set logic function (any low, all high)
    SET_PERI_REG_BITS(RTC_CNTL_EXT_WAKEUP_CONF_REG, 0x1,
            s_config.ext1_trigger_mode, RTC_CNTL_EXT_WAKEUP1_LV_S);

// Set logic function (any low, all high)
does not match esp_sleep_ext1_wakeup_mode_t definition.

Can I get a clarification on the real behaviour of the EXT1 interrupt and the required logical states for wakeup. Further, are the RTC pins buffered with a schmitt trigger, will slow rise matter when using levels?

Comment is wrong
https://github.com/espressif/esp-idf/blob/02c7c3885e10c75772a3d0984c1cdbb6ad9484f3/components/esp32/sleep_modes.c#L554

ESP_EXT1_WAKEUP_ALL_LOW with just 1 GPIO setup.

You have only 2 options:
typedef enum {
    ESP_EXT1_WAKEUP_ALL_LOW = 0,    //!< Wake the chip when all selected GPIOs go low
    ESP_EXT1_WAKEUP_ANY_HIGH = 1    //!< Wake the chip when any of the selected GPIOs go high
} esp_sleep_ext1_wakeup_mode_t;

There is one option i can think of, write ULP code that is running in deep sleep, check pins value and wake up when value is 0.

pull up with 10K resistor, wakeup when any low detects

@surekhaibot for example, you can use a single input, pulled up with a resistor, and connect a couple of transistors between the input and the ground. Each base (or gate, in case of a FET) can be driven by a separate signal. This will result in "any low" logic with only a couple of additional external components.


Sensor activation date

Hello
In class ReceiveData.kt how about getting the sensor activation date ?
Ex: in Java:
Long sensorActivedDate = data_.getJSONArray("activeSensors").getJSONObject(0).getJSONObject("sensor").getLong("a");
Good new year
JotaMyke

Yes it is already on my list, but not have a high prio at the moment.
I akso have to take care for other sources...


Register .pkl in FileIO?

This is a low priority issue.
Ref: https://github.com/JuliaIO/FileIO.jl#adding-new-formats

Is .pkl the standard file extension for pickle format?

Unfortunately regular python pickle don't have magic bytes. We would need to scan through the whole file to see if it is potentially loadable by the pickler. Would that be acceptable?

Googling .pkl it seems that Python pickle is the only format that uses this extension.
add_format(format"PyPickle", "", [".pkl", ".p", ".pickle"], [idPickle])

If .p and .pickle extensions are not used commonly, we can register ".pkl" only.

BTW, it says pickle format is unsafe: https://docs.python.org/3/library/pickle.html. Does this package handle this security issue?

Pickle format is unsafe because it can execute arbitrary python functions by explicitly storing instructions to call those functions. But since we don't/can't map every python function into equivalent Julia ones, we won't encounter that security issue. You can safely "load" any legal pickle format file, even the malicious one, but they would just return a Pickle.Defer.
This brings up another issue. If we want to get the stored data correctly (i.e. without any Defer in it), it can only contain data of basic types (otherwise we need to manually add those function mapping with Pickle.jl). I'm not sure if this match the expectation when someone use FileIO.jl.

it can only contain data of basic types (otherwise we need to manually add those function mapping with Pickle.jl). I'm not sure if this match the expectation when someone use FileIO.jl.

As long as it's clearly documented somewhere in the Pickle README or raises a friendly error message, I think it already improves the usability. BSON as another Julia serialization format is also registered in FileIO and I haven't seen people complaining about this.

We could also register ".npy", ".npz" and pytorch's ".pt" or ".pth" support

I thought ".npy" and ".npz" are already supported now https://github.com/JuliaIO/FileIO.jl/pull/358?

Yes by NPZ.jl, but we can register Pickle.jl as an alternative

NPZ and Pickle are different. ".npy" and ".npz" are special format defined by numpy. You cannot load a numpy file by pickle and vice versa.
Usually there are no pickle format in numpy format, unless you're storing ndarray with object dtype. This means there're actually 2 different ways (format, to be precise) to serialize a ndarray in numpy. One is numpy's own format npy/npz, another one is numpy's extension of pickle format.

Some explanation about each format:

Pickle format: a stack machine bytecodes that help to build the serialized data by executing the instructions. Has instruction to call any function by function name, so most object are/can be restored by calling their constructor.

Pickle in python: The stack machine. Each python object has an extensible method that return the underlying data of that object. The function call instruction are always evaluated, which leads to the security issue.

Pickle.jl: An Julia implementation of the stack machine. We have a lookup table for those function call instructions, or return a Pickle.Defer if the mapping doesn't exist (which bypass the security issue).

Numpy:

numpy pickle: extending those methods for ndarray so it can be stored/load with pickle.
.npy format w/o object dtype: basically a direct write of the array data with some header (magic number, shape, size, dtype, etc.).
.npy format w/ object dtype: a mixture of pickle and .npy. The object is encode by pickle and serialized with .npy header.
.npz format: a zip of multiple .npy file.

Torch  Pickle: A modified pickle format

legacy format: Containing multiple pickle and a large chunk of array data. Those pickle are:

dict of system config (magic, endian, word size, ...)
Stored object. Tensors only contain descriptor without the actually data. Each Tensor descriptor have a storage key
a dict of storage key to chuck offset

new format: a zip with a pickle file for the stored object and multiple storage files. Each tensor storage is in a single file, so the file name is the storage key.

So npy/npz and torch pickle are not real pickle file, but some custom formats that use pickle format as part of its definition.

Thanks for the explanation, these formats were very confusing to me.
But still, Pickle.jl is able to load .npy file (in both formats?) and torch pickle files (in both formats?), right?

torch pickle? yes.
npy file? no, I didn't handle that, but shouldn't be too hard to add.


Issue with find/search when using "regex" and "match whole word" options

Issue Type: Bug
I found another minor issue with Find when using both the Regex and Match Whole Word options. I was trying to perform a regex-replace on all 4-letter words in a document. Using the regex .... did not match all occurrences, while the regex \w\w\w\w did. The regex \b....\b with both settings enabled also worked. :man_shrugging:

I searched past issues to make sure this wasn't a complete duplicate. This behavior seems somewhat related to other issues with Regex and "Match Whole Word" that I've been seeing, but it doesn't use an | character in the regex, so I thought it had an interesting behavior and wanted to report it.
Possibly related to issues: #23785, #99055
I hope you all are having a wonderful holiday season :heart:.

VS Code version: Code 1.52.0 (940b5f4bb5fa47866a54529ed759d95d09ee80be, 2020-12-10T22:43:50.597Z)
OS version: Linux x64 5.8.0-31-generic

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz (12 x 4085)

GPU Status
2d_canvas: unavailable_softwareflash_3d: disabled_softwareflash_stage3d: disabled_softwareflash_stage3d_baseline: disabled_softwaregpu_compositing: disabled_softwaremultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: disabled_offprotected_video_decode: disabled_offrasterization: disabled_softwareskia_renderer: enabled_onvideo_decode: disabled_softwarevulkan: disabled_offwebgl: unavailable_softwarewebgl2: unavailable_software

Load (avg)
1, 1, 1

Memory (System)
15.27GB (1.11GB free)

Process Argv
.. --no-sandbox --crash-reporter-id 50c9c1d9-bf46-49f4-9347-3534058b7b27

Screen Reader
no

VM
0%

DESKTOP_SESSION
ubuntu

XDG_CURRENT_DESKTOP
Unity

XDG_SESSION_DESKTOP
ubuntu

XDG_SESSION_TYPE
x11

Extensions (15)

Extension
Author (truncated)
Version

prettier-vscode
esb
5.8.0

rust-analyzer
mat
0.2.408

vscode-docker
ms-
1.8.1

python
ms-
2020.11.371526539

jupyter
ms-
2020.12.414227025

remote-ssh
ms-
0.62.0

remote-ssh-edit
ms-
0.62.0

cpptools
ms-
1.1.3

vscode-paste-image
mus
1.0.4

material-icon-theme
PKi
4.4.0

markdown-preview-enhanced
shd
0.5.13

vscode-lldb
vad
1.6.0

vscode-icons
vsc
11.0.0

debug
web
0.25.0

markdown-all-in-one
yzh
3.4.0

A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
openlogontheside:30221877
python763:30178808
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
python504:30227505
vswsl492:30211401
wsl2prompt:30224612
pythonvsdeb440cf:30233464
unusedprompt:30224610
folderexplorer:30224614
openfilemenucf:30224648
pythonvsded773cf:30233462

This seems to me like the expected behaviour. The . represents any character, including a space, so .... will find the following matches:
['test', ' wor', 'd co', 'de h', 'elp ', 'nope', ' fac', 't se']
Of those, most are rejected because they do not "match whole word", i.e., they do not end at word boundaries.

That's a plausible explanation of why it only highlighted every 4th word, but it's not what I'd expect when I enable "match whole word".

First, overlapping matching that are not valid with the options I selected should not inhibit matches that are valid.
Imagine if you searched for ana$ in "banana" and I told you the trailing banana doesn't match because it overlaps the middle banana that got disqualified for not being at end of line.  Luckily that's not how regexps work, the whole regexp including $ has to succeed — and the match be returned — before it can disqualify overlapping matches.
Now imagine I gave you a "Match At End Of Line" UI toggle that gave same excuse for ana.  Because first it searched ana without anchors, getting only the middle match, then disqualified it for not being at EOL.  Still surprising & disappointing!

Second, if it's possible for the toggle to behave equivalently to some regexp e.g. \b(....)\b, that's imho preferable.  "I know what it does, just saving some keystrokes" is better mental model than "it does magic".

BTW this still reproduces with 1.76.0 on linux (fedora 37).

Version: 1.76.0
Commit: 92da9481c0904c6adfe372c12da3b7748d74bdcb
Date: 2023-03-01T10:25:16.105Z
Electron: 19.1.11
Chromium: 102.0.5005.196
Node.js: 16.14.2
V8: <IP_ADDRESS>-electron.0
OS: Linux x64 6.1.8-200.fc37.x86_64
Sandboxed: No

It happens with search within a file editor (Ctrl+F).

It happens with Find in Files (Ctrl+Shift+F) when the file in question is open:

Something different — the Whole Words seems to be ignored?! — happens in Find in Files, when the file is closed.
This dependence on whether there is an open editor sounds related to #175794 (and might be a  much newer issue?)

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!


Porting Single server to Flexible server

This PR replaces PostgreSQL Single Server with Flexible Server.
A few open questions for you:

There's a third tier called "Memory-Optimized", should I make that an option? Is the goal to represent every tier? (I notice we only offer the cheapest version of each tier, so I assume complete comprehensiveness is not the goal)
I enabled zone-redundant high availability in the Bicep in order to match the 99,99% SLA, but that will affect the costs. I don't use that option in my standard samples, I use "Disabled". That lowers the SLA however. What's your preference?
Bicep warns about the fact that its outputting a password, but I guess you are okay with that, as you need the password for the app configuration, right? AZD got around that a different way, by inventing their own random password generator and approach.

Here are all the Bicep errors output by me deploying app service + PG, for the record:
A new Bicep release is available: v0.14.85. Upgrade now by running "az bicep upgrade".
/Users/pamelafox/Downloads/bicep 3/modules/postgresql/postgresql.bicep(71,1) : Warning outputs-should-not-contain-secrets: Outputs should not contain secrets. Found possible secret: output name 'db_password' suggests a secret [https://aka.ms/bicep/linter/outputs-should-not-contain-secrets]
/Users/pamelafox/Downloads/bicep 3/modules/postgresql/postgresql.bicep(71,29) : Warning outputs-should-not-contain-secrets: Outputs should not contain secrets. Found possible secret: secure parameter 'administratorPassword' [https://aka.ms/bicep/linter/outputs-should-not-contain-secrets]
/Users/pamelafox/Downloads/bicep 3/main.bicep(10,3) : Warning prefer-unquoted-property-names: Property names that are valid identifiers should be declared without quotation marks and accessed using dot notation. [https://aka.ms/bicep/linter/prefer-unquoted-property-names]
/Users/pamelafox/Downloads/bicep 3/main.bicep(11,3) : Warning prefer-unquoted-property-names: Property names that are valid identifiers should be declared without quotation marks and accessed using dot notation. [https://aka.ms/bicep/linter/prefer-unquoted-property-names]
/Users/pamelafox/Downloads/bicep 3/modules/app-service/app-service.bicep(79,18) : Warning simplify-interpolation: Remove unnecessary string interpolation. [https://aka.ms/bicep/linter/simplify-interpolation]

Thanks @pamelafox for this PR! I'll review it this week and add terraform support before merging.

You're right, we are not looking for completeness. We prefer doing 80% of the work right, and letting users update the templates themselves for the remaining 20% (we should simplify that path for them). So, I would not include memory-optimized tier. In the future, if we should introduce a tier, we should include Cosmos DB for Postgres
For now, I would remove the high availability from nubesgen but not from the template. So, if users want to use redundant, they only have one parameter to set in their main.bicep file to do it. In NubesGen v2, we plan to have an "options" system that would match offering these kinds of possibilities from the UI.
Yeah, I know. There are a few things security-wise we need to update. I also see in your output a few things that were accepted in earlier versions of Bicep and are now issuing a warning. I'll fix them as well. Thanks for the catch!

TODO

[ ] Review Bicep file & deployment
[ ] Remove high-availability option
[ ] Fix warnings related to quotes & interpolation
[ ] Implement Terraform version
[ ] Check UI
[ ] Publish

@pamelafox correct!

@cmaneu Okay, I made high ability into a param and updated the SLA accordingly.


Ondrej Michal - Mesh & Optimization settings

US-8268:
This part implements set and get functions for Mesh and Optimization settings incl. unit tests:
get_optimization_settings
set_optimization_settings
get_mesh_settings
set_mesh_settings
get_model_info

Excuse the changes in:
Examples/Cantilever/Demo1.py, Examples/main.py, RFEM/initModel.py, and UnitTests/test_MeshGenerationStatistics.py.
Those are just minor adjustment.


[FEATURE] Speed up rebuilding by getting checksum simultaneously

Is your feature request related to a problem? Please describe.
We can speed up the rebuilding by requesting the server block checksum and calculating the local block checksum simultaneously.
Describe the solution you'd like
See above.

The reason that failed replica reuse time and new replica rebuilding time are the same is:

Since there is actually no data on the receiver side for the new replica rebuilding case, client.getServerChecksum takes less time.

[instance-manager-r-3dab8865] [vol-r-793b61f8] time="2020-11-10T06:19:14Z" level=info msg="Sync batchInterval length 131072, total time 3.668229ms, checksum time 1.359858ms, percentage 37.0712406450088%"
[instance-manager-r-3dab8865] [vol-r-793b61f8] time="2020-11-10T06:19:14Z" level=info msg="Sync batchInterval length 131072, total time 2.857143ms, checksum time 741.813µs, percentage 25.963453701827316%"
[instance-manager-r-3dab8865] [vol-r-793b61f8] time="2020-11-10T06:19:14Z" level=info msg="Sync batchInterval length 131072, total time 2.603783ms, checksum time 760.654µs, percentage 29.213417554381454%"
[instance-manager-r-3dab8865] [vol-r-793b61f8] time="2020-11-10T06:19:14Z" level=info msg="Sync batchInterval length 131072, total time 3.549488ms, checksum time 1.706659ms, percentage 48.08183602818209%"

Though there is no writing for the failed replica reuse case, client.getServerChecksum takes a longer time and the client needs to calculate the local checksum.

[instance-manager-r-b148c9fb] [vol-r-839c225b] time="2020-11-10T06:33:56Z" level=info msg="Sync batchInterval length 131072, total time 1.479149ms, checksum time 1.478969ms, percentage 99.98783084057116%"
[instance-manager-r-b148c9fb] [vol-r-839c225b] time="2020-11-10T06:33:56Z" level=info msg="Sync batchInterval length 131072, total time 1.729528ms, checksum time 1.729388ms, percentage 99.99190530595631%"
[instance-manager-r-b148c9fb] [vol-r-839c225b] time="2020-11-10T06:33:56Z" level=info msg="Sync batchInterval length 131072, total time 1.980584ms, checksum time 1.980444ms, percentage 99.99293137781584%"
[instance-manager-r-b148c9fb] [vol-r-839c225b] time="2020-11-10T06:33:56Z" level=info msg="Sync batchInterval length 131072, total time 1.397808ms, checksum time 1.397618ms, percentage 99.98640728912697%"

As a result, the rebuilding time in both cases are almost the same in general.

It seems that removing the checksum mechanism won't speed up the rebuilding comparing with using 2 goroutines to handle checksums simultaneously. Because the client still needs time to read data from the local file.

A simple test result for this enhancement:
The time of rebuilding 10Gi data in ext4 filesystem of a Longhorn volume:
Before introducing this feature: 2min40sec;
After introducing this feature: 2min.
If necessary, we can use a larger data set to test the improvement.

Observations:
Cluster specs:
1 controlplane node  (4 vCPUs / 8 GB /160 GB)
3 worker nodes  (4 vCPUs / 8 GB /160 GB)
Rebuilding replica with 10 GB of data

Longhorn v1.0.2: 5 min, 47 seconds
Longhorn master: 5 min, 27 seconds

Rebuilding replica with 16 GB of data

Longhorn v1.0.2:  15 min, 7 seconds
Longhorn master: 12 min, 27 seconds

I just tested 50GB data rebuilding today. The result is almost the same as Mohamed's. I will re-check this feature later.

I just retry the test with some additional debug logs added. Here is the test step and the result :

Deploy Longhorn system with the master image
Deploy 2 engine images:

shuowu/longhorn-engine:master-1948 (Based on the longhornio/longhorn-engine:master and just add some addtional debug logs)
shuowu/longhorn-engine:v1.0.x-1948 (Based on the longhornio/longhorn-engine:master but revert the (sparse file sync) PR commits and add some additional debug logs)

Create and attach a volume, write 50GB data to it.
Crash and delete one replica. Check the rebuilding time of the volume with different engine images.

Result:

shuowu/longhorn-engine:master-1948
Time: around 42.5min
Log:

[vol-r-048aec79] time="2020-12-02T09:01:25Z" level=info msg="Sending file volume-snap-d2fe55bb-fb15-44ae-b0fe-5006554c3671.img to <IP_ADDRESS>:10004"
time="2020-12-02T09:01:25Z" level=info msg="source file size:<PHONE_NUMBER>0, setting up directIo: true"
......
[instance-manager-r-de3b0700] [vol-r-048aec79] time="2020-12-02T09:45:17Z" level=info msg="syncFileContent succeed: server checksum time 544619 ms, client checksum time 828134 ms, send time 1721255 ms"

shuowu/longhorn-engine:v1.0.x-1948
Time: around 50.7min
Log:

[vol-r-048aec79] time="2020-12-02T11:46:32Z" level=info msg="Sending file volume-snap-94e4b90e-3094-4941-b661-a698483135cc.img to <IP_ADDRESS>:10004"
time="2020-12-02T11:46:32Z" level=info msg="source file size:<PHONE_NUMBER>0, setting up directIo: true"
......
[vol-r-048aec79] time="2020-12-02T12:37:13Z" level=info msg="syncFileContent succeed: server checksum time 510819 ms, client checksum time 638785 ms, send time 1891356 ms"

The result is different. The main cause (besides the debug logs) may be the Longhorn system version is always master rather than upgrading from v1.0.2 to master comparing with the previous test. Currently, I am not sure if there are other modifications that degrade the overall rebuilding speed. I will test it as the next step.

Performance improvements in replica rebuild are very apreciated. I use Ubuntu nodes that ask for a restarts due updates almost every week and on every restart, all replicas on the node are rebuilted.
My current metric when rebuild a replica on SSD diskand 10 Gb/s network:
Size: 50 Gi
Actual Size:38.8 Gi
Time to rebuild a replica: 648s
Replica rate: (38.8Gi/648) = 61.3 MB/s

One possible explanation (thanks to the discussion with @mfbrj ):
In https://github.com/longhorn/sparse-tools/blob/c1877f4a574f57a461f7a69709defd20bc52718a/sparse/client.go#L95 , we depends on the holes to separate the sections for checksum.
But what if one section (data interval) is very big (hundreds of MB or even GB) but only changed a small amount, we will have to resync the whole section due to the difference of the checksum.
We should be able to sync more efficiently by cutting the big chunk of the data area into smaller pieces.

Testing instructions in a couple of comments in this issue: https://github.com/longhorn/longhorn/issues/2507
Split them up into multiple comments for context.

cc @khushboo-rancher @kaxing

Verified with Longhorn v1.1.2-head 06/21/2021
Validation - In Progress

Version
Data in Gi
Time taken to rebuild replica

V1.1.1
30
~16 mins

v1.1.2-head
30
~5 mins


OptiFine incompatibility

On Forge 1.20.1 with OptiFine installed, OptiFine throws a lot of OpenGL errors and shaders completely break when switching models in the gesture menu or testing models in-game. It doesn't always happen on the first switch but always on the second or third.

Has this been solved yet?


need proguard setting.

need proguard setting.
-keep class android.support.design.widget.TabLayout {
	private OnClickListener mTabClickListener;
	private float getScrollPosition();
}

because private access.
static {
      mGetScrollPosition = getAccessiblePrivateMethod("getScrollPosition");
      mTabClickListener = getAccessiblePrivateField("mTabClickListener");
}

Hi. I've added the following Proguard settings since v0.6.1. Is it not enough?
-keepclassmembernames class android.support.design.widget.TabLayout { *; }

hi, i am sorry. i changed v0.6.1. it's ok.


Destroy rendering sensors when sensor is removed

Signed-off-by: Ian Chen<EMAIL_ADDRESS>🦟 Bug fix
related to https://github.com/ignitionrobotics/ign-gazebo/pull/1170
Summary
Currently when a rendering sensor is removed, the objects in ign-rendering are not destroyed. This PR adds calls to destroy the rendering sensors. Otherwise when a new sensor is created with the same name, ign-rendering will complain that the sensor already exists.
Checklist

[x] Signed all commits for DCO
[ ] Added tests
[ ] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[ ] codecheck passed (See contributing)
[ ] All tests passed (See test coverage)
[ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge

updated camera test to remove the camera sensor and verify that resources are removed in sensors and rendering. 70ef88a


add polyphony for 1.0

This covers multiple pieces of development needed to have true polyphonic support.

allow multiple notes with different pitches to overlap on same channel when reading, writing MIDI
assign notes to matched pairs of CV and GATE for as many polyphonic notes as the setup allows
allow selecting and editing these notes (I have no idea how this will be implemented)

Design for selecting and editing:

select button toggles as now between edit duration/pitch, insert location, extend selection
vertical wheel for latter two states selects poly note (today it edits selection pitch)
add note with insert location slides notes over as it does today
add note with extend selection adds new poly note on top of existing score
cut note with insert location slides notes back as it does today
cut note with extend location removes selected notes without affecting rest of score
storage allows unlimited simultaneous poly notes
playback recycles notes as needed limited by user selectable poly channel count (up to 16)

Revised midi parsing to handle polyphony (only mono midi tested) (1.0.1)
Revised engine to play polyphony (only mono tested) (1.0.2)

First light: this polyphonic midi file from the wild parsed and played. (1.0.3)

Notes can be added, selected, and edited (pitch and duration) to form polyphonic chords and passages.

Polyphonic support is complete. Maybe there also needs to be a way to enter polyphonic phrases from external input, but I haven't thought about how that would work, so I'll close this for now.


Use Focal image of maven-eclipse-temurin

Without versioning, the latest Ubuntu version is used by default which is causing problems during running of the container

Encountered libc problems and apt signature problems

Build finished.

@ThorodanBrom is it only required while testing? dev.dockerfile doesn't require this change?

@ThorodanBrom is it only required while testing? dev.dockerfile doesn't require this change?

In dev.dockerfile, the final image being used is eclipse-temurin:11-jre-focal. In the test Dockerfile, we needed the maven image to be the final image, hence it's really necessary there.
But you're right, it might be best to do it for dev as well just to avoid any ambiguity.

Build finished.


Action escapes underscores and likely other characters unexpectedly.

Describe the bug
Action is escaping underscores from issue form parsing.
To reproduce

Create issue form with input and/or textarea field types

Create workflow triggered on new issue creation that parses issue form and passes output to step
    steps:
      - name: Cloning repository for reusable scripts
        uses: actions/checkout@v2

      - name: Parse issue form
        id: parse
        uses<EMAIL_ADDRESS>
      - name: Record issue form results
        uses: actions/github-script@v6
        env:
          ISSUE_FORM_JSON: ${{ steps.parse.outputs.data }}
        with:
          script: |
            const issueForm = JSON.parse(process.env.ISSUE_FORM_JSON)
            const jsonPretty = JSON.stringify(issueForm, null, 2)
            const body = `
            Nice!  Let's validate the issue form so we can get this thing done!
            <details>
              <summary>Issue Form Payload</summary>
              \`\`\`json
              ${jsonPretty}
              \`\`\`
            </details>
            `
            github.rest.issues.createComment({
              ...context.repo,
              issue_number: context.issue.number,
              body
            })

Create issue and verify processed JSON output with escaped underscores
{"repository-name":{"title":"Repository name","content":["check\\_underscores\\_2"],"text":"check\\_underscores\\_2"},"repository-description":{"title":"Repository description","content":["*No response*"],"text":"*No response*"},"repository-visibility":{"title":"Repository visibility","content":["Internal"],"text":"Internal"},"repository-justification":{"title":"Repository justification","content":["*No response*"],"text":"*No response*"},"repository-access":{"title":"Repository access","content":["@tinyfists/under\\_scores , read"],"text":"@tinyfists/under\\_scores , read"}}

Expected behaviour
There might be a good reason for this, so either:

Review whether this is intended and provide docs for users to de-escape text as needed
Modify action to de-escape text resulting from parsing

Additional context
No response

Thanks for the report, @andyfeller! That's definitely not intentional.
I'm missing the input data to reproduce this; can you add the case and expected results to the test cases, then we'll be able to fix that.

@PatrickHeneise : as always, I wish I could give you ✨ as a hubber!
Here's the issue body from my most recent test:

Repository name
check_underscores_2
Repository description
No response
Repository visibility
Internal
Repository justification
No response
Repository access
@tinyfists/under_scores , read

Thanks. Let me see what I can do

Alright, this is a little tricky ...
here's the test result (I just added the lines to test/test-issue-1.md and run with npm test):
    "repository-name": Object {
      "title": "Repository name",
      "content": Array [
        "check\\_underscores\\_2",
      ],
      "text": "check\\_underscores\\_2",
    },
    "repository-description": Object {
      "title": "Repository description",
      "content": Array [
        "*No response*",
      ],
      "text": "*No response*",
    },
    "repository-visibility": Object {
      "title": "Repository visibility",
      "content": Array [
        "Internal",
      ],
      "text": "Internal",
    },
    "repository-justification": Object {
      "title": "Repository justification",
      "content": Array [
        "*No response*",
      ],
      "text": "*No response*",
    },
    "repository-access": Object {
      "title": "Repository access",
      "content": Array [
        "@tinyfists/under\\_scores , read",
      ],
      "text": "@tinyfists/under\\_scores , read",
    },
   }

\\_ seems to come from the Markdown parser.
In the future, if this happens again for other characters, the easiest workaround would be if you can use code tags:
    "repository-access": Object {
      "title": "Repository access",
      "content": Array [
        "`@tinyfists/under_scores`",
      ],
      "text": "`@tinyfists/under_scores`",
    }

For the underscores, I added a fix here. I don't see any breaking changes, but it would be great if you could test it before.
Also, if you have more cases, please add them to test-issue-1.md or create a separate issue where we can make sure we cover all the possibilities and I don't break stuff with a new release :)

As always, thank you, Patrick!  I can work with @apdarr next week to bump the version and test it out!  I recognize this is a downstream issue, so appreciate your efforts to building a better product.
Anything a user can do to tell the parser to ignore or undo the escaping without having to bother you is always a plus.

Let's hope that's the only issue in the markdown parser :) and let me know if there's anything else. As mentioned, if you have  more cases that could be useful for testing, just add them to the test file and I'll add the test cases to it. Eventually I also want to support markdown frontmatter and a few other edge cases (ie paragraph with no heading) - when there's time.

Carving out some weekend time to test it now ...

Thank you!

No; thank you, Patrick! 🙇 I'm happy to be your biggest advocate!


Gradle plugin does not get applied to test-fixtures

Task List

[x] Steps to reproduce provided
[x] Stacktrace (if present) provided
[x] Example that reproduces the problem uploaded to Github
[x] Full description of the issue provided (see below)

Steps to Reproduce
See example.  Code in src/testFixtures/java that is referencing a micronuat class does not compile.
Expected Behaviour
MN Gradle Plugin should also be applied to test-fixtures (https://docs.gradle.org/current/userguide/java_testing.html#sec:java_test_fixtures)
Actual Behaviour
MN Gradle Plugin is not applied to test-fixtures.
I suspect the changes to fix this are required in MicronautLibraryPlugin.java. Similar to what is done for 'configureGroovy'.
Environment Information

Operating System: Windows
Micronaut Version: 2.3.3
JDK Version: 8

Example Application
https://github.com/jghandour/mn-test-fixtures-bug/

That is the correct way to do it. We can't make assumptions on which source sets to apply the plugin to


docs(EMPTY): fix broken link, updated description

Description:
At some point we’d need to move empty() examples to EMPTY so I just moved it now,
since I already moved my codebase to EMPTY and there’s still no description in official docs
Related issue (if exists):

LGTM, thanks for the fix!

Always a pleasure :)


Site Support  --get-duration Tag

I have a script called https://www.youphptube.com/.
It is an opensource script where people download and install their own video sites
I have hundreds sites spread over the internet, we use youtube-dl to download videos for other sites including youphptube too.
But when we trie to get the duration from one of our sites we got the message:
WARNING: Falling back on generic information extractor.

What is the proper way to write the metatags or info to let youtube-dl get all needed information.
I have tried to find an manual or something but I could not.
Thanks in advance
Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like this: [x])
Use the Preview tab to see what your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2017.10.29. If it's not, read this FAQ entry and update. Issues with outdated version will be rejected.

[ X ] I've verified and I assure that I'm running youtube-dl 2017.10.29

Before submitting an issue make sure you have:

[ X  ] At least skimmed through the README, most notably the FAQ and BUGS sections
[ X ] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[ ] Bug report (encountered problems with youtube-dl)
[ X ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add the -v flag to your command line you run youtube-dl with (youtube-dl -v <your command line>), copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'-v', u'http://www.youtube.com/watch?v=BaW_jenozKcj']
[debug] Encodings: locale cp1251, fs mbcs, out cp866, pref cp1251
[debug] youtube-dl version 2017.10.29
[debug] Python version 2.7.11 - Windows-2003Server-5.2.3790-SP2
[debug] exe versions: ffmpeg N-75573-g1d0487f, ffprobe N-75573-g1d0487f, rtmpdump 2.4
[debug] Proxy map: {}
...
<end of log>

If the purpose of this issue is a site support request please provide all kinds of example URLs support for which should be included (replace following example URLs by yours):

Single video: https://www.youtube.com/watch?v=BaW_jenozKc
Single video: https://youtu.be/BaW_jenozKc
Playlist: https://www.youtube.com/playlist?list=PL4lCao7KL_QFVb7Iudeipvc2BCavECqzc

Note that youtube-dl does not support sites dedicated to copyright infringement. In order for site support request to be accepted all provided example URLs should not violate any copyrights.

Description of your issue, suggested solution and other information
Explanation of your issue in arbitrary form goes here. Please make sure the description is worded well enough to be understood. Provide as much context and examples as possible.
If work on your issue requires account credentials please provide them or explain how one can obtain them.

The warning clearly tells you this site is not explicitly supported and extraction is delegated to generic extractor that may or may not succeed.

Hi, how do I make YouPHPTube youtube-dl suported?
Should I add some tag information? or change the youtube-dl code?

BTW, the issue is about the duration, title and thumbs works fine


[ITALIAN] Translated README in Italian

Translated readme file in italian.
Trying to translate all the docs files

Hello, thanks for your interest in translating the docs into Italian. In order to include docs in the main repo, we need the whole thing to be translated and kept up to date. I recommend you to check if something was already started and if it wasn't, create a fork and start coordinating with other contributors via the forum and discord. I'm sure you can get some help, translating the docs is a lot of work :)
Come back once you have something finished and reviewed by more people


Sprite minor performance improvements

I didn't benchmarked it but it sounds self speaking to me. Not sure it'll improve performance drastically but i think the calls are more consistent now.
This is a replacement for PR #5369

yeah : ./gradlew launchTestsLwjgl --args="SpriteBatchTest"


Allow nodes to specify their own icon using an 'icon' property of the…

… setting.data.key object

Hello, I'm so sorry for check your code today. It's too late.
I have change the code about zTree. I don't merge your code, because your code is incomplete.
Please pull the latest version in github.  Thank you very much.


In d3.histogram, the rightmost bin by default thresholds is too wide

Nice to meet you.
d3.histogram()(data) returns bins their width are automatically determined by default thresholds.
I understand that widths of middle bins are fixed and widths of edge bins (leftmost and rightmost) are less or equal to the fixed width. But sometimes the rightmost bin may have wider width.
For example, the result of code below has wider rightmost bin:
> d3.histogram()([9.8, 10, 11, 12, 13, 13.2])
[ [ 9.8, x0: 9.8, x1: 10 ], // width: 0.2
  [ 10, x0: 10, x1: 11 ], // width: 1
  [ 11, x0: 11, x1: 12 ], // width: 1
  [ 12, 13, 13.2, x0: 12, x1: 13.2 ] ] // width: 1.2 (!?)

I expect that the last part of bins should be:
  [ 11, x0: 11, x1: 12 ], // width: 1
  [ 12, x0: 12, x1: 13 ], // width: 1
  [ 13, 13.2, x0: 13, x1: 13.2 ] ] // width: 0.2

In src/hitogram.js#L33, the default thresholds are generated by:
 tz = range(Math.ceil(x0 / tz) * tz, Math.floor(x1 / tz) * tz, tz); // exclusive

I think that this Math.floor is not needed because result of range(a, b, c) already does not include b (isn't it?).

Merged as 18113f1afef5ed4e735057dbcaeac0911cb53551. Thank you!


Fix replay restarting on orientation change

Closes #1635

CI gfxreconstruct build queued with queue ID 321130.

CI gfxreconstruct build # 5524 running.


Migrate remaining old decl_* macros to the new pallet attribute macros

What does it do?
Migrate remaining old decl_* macros to the new #[pallet] attribute macros
part of #12248

polkadot address: 15XuanNimo5951s3RjFTPX1AvYVnCwfr3SDhb3AV4fQF3LpK

@KiChjang @shawntabrizi PTAL

@koushiro tests are still failing.

@koushiro tests are still failing.

Fixed

By the end of this PR, we should have no more use of decl_* in our codebase, so we should mark them as deprecated? @KiChjang WDYT?

bot rebase

bot merge

/tip small

bot merge

By the end of this PR, we should have no more use of decl_* in our codebase, so we should mark them as deprecated? @KiChjang WDYT?

We already have a PR for that: #12326, although I must say that perhaps what we should really do is remove them rather than simply deprecating them.


Option to change number of reviewers

We default now to up to 3.

What would the usage case for this look like?
E.g.
git-reviewer -num-reviewers=5 <path to git repo>

?

I'd keep it as -reviewers so it's less typing, but yes that's the idea.
Also, git-reviewer does take a path, but it just operates on the repo within the current directory. The path argument is only useful if you want to scope the contributions to a given directory or path.

OK, cool.  Thanks for the input


[TS migration] Migrate 'AvatarWithIndicator.js' component to TypeScript

Details
Fixed Issues
$ https://github.com/Expensify/App/issues/25034
PROPOSAL: N/A
Tests

Check if the avatar icon in the Sidebar is correctly rendered.
Check if it open Settings when pressed / clicked.

Offline tests
Same as above.
QA Steps
Same as above.
PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes

[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)

[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/20051562/fa9d0b29-c4f5-4246-a760-b5f62f59ae63

Android: mWeb Chrome
https://github.com/Expensify/App/assets/20051562/db59bda0-c3d4-4407-9380-be34bd3a1611

iOS: Native
https://github.com/Expensify/App/assets/20051562/7577f7f2-57ed-450c-b43a-13e46d8951b6

iOS: mWeb Safari
https://github.com/Expensify/App/assets/20051562/438628e2-7ebb-49b8-b19c-3d4eb6c6118b

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/20051562/3eac59ba-b805-4d52-a33f-beeeaef96aa2
https://github.com/Expensify/App/assets/20051562/70a52ab7-3d7a-4972-a1dc-34757c1edd78

MacOS: Desktop
https://github.com/Expensify/App/assets/20051562/92ce3084-4ca2-4229-8e7e-124cc4d5021e

Hi @fabioh8010 could you resolve conflicts?

@fabioh8010 bump on resolve conficts

Hi @robertKozik Fabio is OOO, I took over and conflicts are resolved now 😄

Bump @fabioh8010 - we also have some conflicts here

@Beamanator sorry for the late, this one fell through the cracks! Everything updated now!

Thanks! 🙌

@fabioh8010 @Beamanator all works well 👌🏼

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/Beamanator in version: 1.4.7-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/yuwenmemon in version: 1.4.7-4 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


FR-10654 - Tree shakable and Babel build migration

Add babel build scripts
Remove legacy rollup build scripts
Add use client to all client components (35028af)
Speedup playwright CI test by downloading specific browser (459316b)
FR-10677 - Add support for nodejs 18 and undici header validation (f43be61)

Fails

:no_entry_sign:
Please assign someone to merge this PR, and optionally include people who should review.

Typos for README.md

Line
Typo

2
Changes were made to packages/nextjs/package.json, but not to pack

2
were made to packages/nextjs/package.json, but not to packages/nextjs/y

2
age.json, but not to packages/nextjs/yarn.lock.Perhaps you

2
n, but not to packages/nextjs/yarn.lock.Perhaps you need to ru

4
Changes were made to packages/demo-saas-next12/package.json, but not to pack

4
to packages/demo-saas-next12/package.json, but not to packages/demo-saa

4
age.json, but not to packages/demo-saas-next12/yarn.lock.Perhaps you

4
to packages/demo-saas-next12/yarn.lock.Perhaps you need to ru

6
Changes were made to packages/demo-saas/package.json, but not to pack

6
re made to packages/demo-saas/package.json, but not to packages/demo-saa

6
age.json, but not to packages/demo-saas/yarn.lock.Perhaps you

6
but not to packages/demo-saas/yarn.lock.Perhaps you need to ru

10
/www.npmjs.com/package/@babel/cli'>@babel/cli<

10
/www.npmjs.com/package/@babel/plugin-proposal-class-properties'>@babel/plugin-prop

10
/www.npmjs.com/package/@babel/plugin-proposal-object-rest-spread'>@babel/plugin-prop

10
/www.npmjs.com/package/@babel/plugin-transform-object-assign'>@babel/plugin-tran

10
/www.npmjs.com/package/@babel/plugin-transform-react-constant-elements'>@babel/plugin-tran

10
/www.npmjs.com/package/@babel/plugin-transform-runtime'>@babel/plugin-tran

10
/www.npmjs.com/package/@babel/preset-env'>@babel/preset-env<

10
https://www.npmjs.com/package/**babel-plugin-module-resolver**'>babel-plugin-module-re

10
https://www.npmjs.com/package/**babel-plugin-optimize-clsx**'>babel-plugin-optimize-

10
https://www.npmjs.com/package/**babel-plugin-react-remove-properties**'>babel-plugin-react-rem

10
https://www.npmjs.com/package/**babel-plugin-transform-react-remove-prop-types**'>babel-plugin-transform

10
https://www.npmjs.com/package/**cross-env**'>cross-env,

10
https://www.npmjs.com/package/**pino**'>pino, <a hr

10
https://www.npmjs.com/package/**pino-pretty**'>pino-pretty

175
# babel-plugin-module-resolver

178
A [Babel](http://babeljs.io) plugin to add a new resolver for you

178
g your code using Babel. This plugin allows you to add new "root"

178
specific files, or even other npm modules.

182
This plugin can simplify the require/impo

199
Install the plugin

209
Specify the plugin in your .babelrc with the c

224
.babelrc.js version

225
Specify the plugin in your .babelrc.js file wi

248
babel-plugin-module-resolver can be configured and control

250
Are you a plugin author (e.g. IDE integration)

250
ugin-authors) for use in your plugins!

252
## ESLint plugin

252
## ESLint plugin

254
If you're using ESLint, you should use [eslint-plugi

254
using ESLint, you should use [eslint-plugin-import][eslint-plugin-import], and [

254
][eslint-plugin-import], and [eslint-import-resolver-babel-module][eslint-import-resolver-babel

254
olver-babel-module] to remove falsy unresolved modules. If you wa

254
relative paths, you can use [eslint-plugin-module-resolver](https://github.com/HeroProta

274
- IntelliJ/WebStorm: You can mark your m

274
- IntelliJ/WebStorm: You can mark your module dir

276
uages&Frameworks->JavaScript->Webpack. This will trick webstorm

276
ipt->Webpack. This will trick webstorm

295
MIT, see [LICENSE.md](/LICENSE.md) for details.

297
## Who is using babel-plugin-module-resolver ?

299
- Algolia: [InstantSearch.js](https://g

299
- Algolia: [InstantSearch.js](https://github.com/algolia/i

300
- Airbnb: [Lottie React Native](https:

300
- Airbnb: [Lottie React Native](https://github.

301
- AppDirect

302
- Callstack: [React Native Paper](https:/

303
- Codility

304
- Eleme: [Element](https://github.com

306
- FormidableLabs: [Victory Native](https://git

307
- OpenCollective: [OpenCollective](https://git

307
- OpenCollective: [OpenCollective](https://github.com/opencolle

309
- Uber: [Seer](https://github.com/ub

311
- Vuetify.js [Vuetify](https://github.com/

311
- Vuetify.js [Vuetify](https://github.com/vuetifyjs

312
- Zeit: [Next.js](https://github.com

312
- Zeit: [Next.js](https://github.com/zeit/next

313
- Zenika: [Immutadot](https://github.c

313
- Zenika: [Immutadot](https://github.com/Zenika/im

366
# babel-plugin-react-remove-properties

368
> Babel plugin for removing React properties

419
.babelrc

494
# babel-plugin-transform-react-remove-prop-types

496
> Remove unnecessary React propTypes from the production build.

538
addressed by default by this plugin.

540
cases, for example when using HOCs (High Order Components), like

540
High Order Components), like react-redux's connect, or component in

550
.babelrc

624
lassName` won't throw. It's a tradeoff between the size of the outpu

636
rgeting React libraries like [material-ui](https://github.com/callemall

656
tance, you can ignore all the npm modules:

678
ing Babel 7 or newer and your config is stored in [`babel.config.j

707
se this option to enable this plugin to run on components that ext

740
cking on the properties, that plugin should be safe to use.

747
:warning: The plugin is breaking that code if it e

755
[eslint-plugin-react has a rule forbid-foreign-pro

755
) that can help you make this plugin safer to use.

791
![banner](pino-banner.png)

798
low overhead](#low-overhead) Node.js logger.

827
If you would like to install pino v6, refer to https://github.c

827
ou would like to install pino v6, refer to https://github.com/

847
For using Pino with a web framework see:

849
* [Pino with Fastify](docs/web.md#fas

849
* [Pino with Fastify](docs/web.md#fastify)

850
* [Pino with Express](docs/web.md#exp

851
* [Pino with Hapi](docs/web.md#hapi)

851
* [Pino with Hapi](docs/web.md#hapi)

852
* [Pino with Restify](docs/web.md#res

852
* [Pino with Restify](docs/web.md#restify)

853
* [Pino with Koa](docs/web.md#koa)

853
* [Pino with Koa](docs/web.md#koa)

854
* [Pino with Node core http](docs/w

855
* [Pino with Nest](docs/web.md#nest)

874
In Pino terminology, we call all log

885
In many cases, Pino is over 5x faster than altern

885
In many cases, Pino is over 5x faster than alternatives.

891
Pino supports being bundled using

891
eing bundled using tools like webpack or esbuild.

891
d using tools like webpack or esbuild.

898
### Matteo Collina

898
### Matteo Collina

914
### James Sumners

932
Pino is an **OPEN Open Source Proj

936
See the [CONTRIBUTING.md](https://github.com/pinojs/pi

939
## Acknowledgments

941
ject was kindly sponsored by [nearForm](https://nearform.com).

1072
o master (git) / default (hg) branch.

1076
ters the files for the given [minimatch](https://github.com/isaacs/mi

1081
each file right before it is proccessed. This can be useful if Pretti

1093
Do not resolve prettier config when determining which files

Typos for CONTRIBUTING.md

Line
Typo

1
# Contributing to @frontegg/nextjs

1
# Contributing to @frontegg/nextjs

16
environment variable for demo porjects:

46
- Make sure you have node and npm installed.

53
ect on localhost:3000 using Next.js version 13+

54
ect on localhost:3000 using Next.js version 12+

Got false positives?

  Generated by :no_entry_sign: dangerJS against 594f4389db40464f23384160dba06918606d8fe0


120 allow admins to view and edit dos services

New manifest:
https://github.com/alphagov/digitalmarketplace-frameworks/pull/479
https://trello.com/c/U2Yd4CGD/120-allow-admin-view-and-edit-dos-services-update-prices-for-digital-specialists
As an admin on a supplier services page, when I click on edit, I should be able to edit all the details of the service except service essentials.

Pull in new manifest
Allow for nested dos multiquestion as per supplier edit services (https://github.com/alphagov/digitalmarketplace-supplier-frontend/blob/master/app/main/views/services.py#L482-L482)
Remove link to service for DOS as this is not public
Use framework + lot in template if service has no name
'add' link if multi question has no existing data otherwise 'edit'
Update/ add tests

The alignment is out in the list of services for a supplier:

Did you fix the alignment in that table? We should do that before getting this in.

@TheDoubleK To fix the alignment I've used a summary.field_name on the first cell in the table. This creates a td class="summary-item-field-first" element instead of a standard summary-item-field and solves the alignment problem.


Add support for importing project files

It would be handy if there was a simple way of including castlemock project files into docker image so those projects would be included when image is started. Perhaps additional argument to docker run... command could be path(s) to those project files.

I just noticed this issue for castlemock itself https://github.com/castlemock/castlemock/issues/179 - if this would be implemented than creating an image that imports a project would be possible by everyone on their own by creating custom dockerfile similar to the one in this repo, just with additional step of copying project file into the proper location


Katacoda introduction screens

The whole block, but particularly the text "Welcome" feels too big to me - the balance on later screens is much better
It need not say 'jocatalin'
block of code isn't in the same style as on later screens

@benhall can you advice on this?  the block of code was also mentioned here: https://github.com/ContainerSolutions/kubernetes-bootcamp/issues/11

@jocatalin I'm guessing you want this to look like it can be execute, but not actually run the code?

Actually the intent was to show just that those are kubectl commands (use a different styling) compared to plain text.

@jocatalin So it should have the black background?

@BenHall I would like to have a different styling compared to regular text. It shouldn't have the black background.


fix: set umask value even if /etc/login.defs did not set it before

What this PR does / why we need it:
Fixes the case when /etc/login.defs  does not contain a UMASK value by adding a check, and appending the desired configuration in this case.
Which issue(s) this PR fixes:
Fixes #2191

@fwilhe as discussed, you can take over this PR and fix the STIG feature with additional commits - thanks!


Specify a local package for llbuild-analyze

llbuild-analyze depends on tools support core and can therefore not be specified in the Package.swift of llbuild itself because SwiftPM depends on llbuild which defines targets with the same name.
To solve resolution errors in projects depending on SwiftPM we declare a local package for llbuild-analyze. Once the TSC targets in SwiftPM has been removed and are owned by tools support core we can merge the packages for llbuild and llbuild-analyze back.
SR-11437

@swift-ci please smoke test


Specify how to handle usernames and uids in ACIs (and groupnames & gids)

The spec should talk about user ids and group ids in containers.
ACIs contain ownership information about the files in two different forms:

uid and gid: numbers (mandatory fields)
username and groupname: strings (optional fields)

When the tarball is extracted, the mapping between uid/gid and username/groupname is lost. The spec does not mention whether to use uid/gid or username/groupname.
An ACI might not contain any /etc/passwd file.
If a container contains one mysql app and one apache app, they might want to run as users mysql and www-data respectively. The files in the apache aci might belong to user ID 33 but unless apache.aci contains /etc/passwd, uid=33 does not mean anything.
This issue was first mentioned in:

https://github.com/appc/spec/pull/207#issuecomment-77173130
https://github.com/coreos/rocket/issues/539#issuecomment-77167768

We are about to start adding security contexts to Kubernetes - the goals are to ensure the execution environment can be fully specified in a way that allows effective cross cluster resource sharing (fs, primarily).  The draft spec I linked is the pre implementation and I'm sure there are gotchas in the way.  A tradeoff we discussed is whether to be generic "run securely" or specific "run as this uid".  The doc leans more towards the latter, as it can be automatically inferred from the context in which pods are executed.

@smarterclayton : thanks for the notification. Is there a GitHub issue or a PR to follow the security contexts development in Kubernetes?

Not yet but when it exists I will cc it here.
----- Original Message -----

@smarterclayton : thanks for the notification. Is there a GitHub issue or a
PR to follow the security contexts development in Kubernetes?

Reply to this email directly or view it on GitHub:
https://github.com/appc/spec/issues/231#issuecomment-83675631

I think that running as a particular UID or UID based on filepath owner are the best options and currently in the spec. An external database, such as /etc/passwd, is too difficult to reason about and fix-up across multiple containers, if needed.
@jonboulle I think we should remove the ability to specify a "username" or "groupname" in the current spec. I had forgotten that was in there.

@philips: Regarding running as a filepath owner, is the idea that the ACI gets unpacked as the user you want it to run as, so all of the unpacked files are owned by that user?

I was told that some applications use getpwuid(getuid()) and this will not work in a container if NSS relies on /etc/passwd and it is not there. I don't know if the spec should do something about that?

I'm using getpwuid in a soon to be releases implementation, but its only possible since its done from within the container. But otherwise if the process wasnt in the mount namespace and already chrooted, it would use the hosts /etc/passwd.
Previously, we had looked it up at the host level and used a line reader to process it.

I just want to bring up the point that we should really consider the implications of how this will play with user namespaces. On Linux you have to provide a mapping of host uid/gid's to container uid/gid's. This also has implications with file permissions on the container FS since they'll be owned by the host IDs, rather than container IDs.
I know we don't want to make appc directly specific to Linux, but Linux you end up with some very specific constraints when trying to implement user/group isolation when using Linux.
Just wanted to bring this up.

One thing to handle user namespaces right is to extract the image file with the uid mappings applied. If the mapping for root was 100000 instead of 0, we just added 100000 to any uid/gid. We rolled out user namespace support in Apcera's containers almost a year ago and this worked well. It would look weird to the host, but not the container, and is more or less outside of the spec as an implementation detail for how it'll enforce the security it chooses to.

One thing to handle user namespaces right is to extract the image file with the uid mappings applied. If the mapping for root was 100000 instead of 0, we just added 100000 to any uid/gid.

Would the uid mapping defined statically in the image manifest, or would it be dynamically defined when a new pod is started? When the same ACI is executed several times simultaneously, would we use the same uid mapping, or a different uid mapping for each pod?
In order to isolate pods from each others, it would be better to use different mappings.
But when the executor uses overlayfs, the image not extracted for each execution but only one time when the image is fetched. The extracted files are stored once in the cache tree and the same directory from the cache tree is used as overlayfs lowerdir for all pods using that ACI. So unless overlayfs gets some dynamic uid-shifting feature, we cannot use both dynamic uid mappings and overlayfs.

On Apr 28, 2015, at 6:59 AM, Alban<EMAIL_ADDRESS>wrote:
One thing to handle user namespaces right is to extract the image file with the uid mappings applied. If the mapping for root was 100000 instead of 0, we just added 100000 to any uid/gid.
Would the uid mapping defined statically in the image manifest, or would it be dynamically defined when a new pod is started? When the same ACI is executed several times simultaneously, would we use the same uid mapping, or a different uid mapping for each pod?
In order to isolate pods from each others, it would be better to use different mappings.

That had been the plan for Kube in MT mode with userns.

But when the executor uses overlayfs, the image not extracted for each execution but only one time when the image is fetched. The extracted files are stored once in the cache tree and the same directory from the cache tree is used as overlayfs lowerdir for all pods using that ACI. So unless overlayfs gets some dynamic uid-shifting feature, we cannot use both dynamic uid mappings and overlayfs.

Could the presence of a user mapping range be a signal to the cache tree that the image needs to be cached by imageid+uidrange?

—
Reply to this email directly or view it on GitHub.

Mappings should likely be up to the host to decide rather than allow them to be specified by the ACI. However it is also hard to apply as a blanket rule when the container needs to access things externally. For instance, we do some basic work with shared storage over NFS, and ownership/permissions can be tricky because the NFS server sees files by the host's UID, not the container's.  So a file created by root inside the container is owned by like 100000 on the NFS server.
Some of the trade offs between things like external storage, file deduping, etc. should be up to the ACE implementation rather than in the spec, IMO.
An implementation that high container isolation may opt for dynamic mappings over dedupping files. An implementation may be on the opposite side as well.
Even in the linked mailing list, the uid shifting filesystem is something I'm almost to the point of trying to contract out for someone to implement. It would be useful for package caches to use a static mapping, and to have the actual container mounts be shifted. That way you get both.


Bug: Duration is incorrect for 10 AM start, 12 PM finish

See picture:

This should fix it: https://github.com/Vafilor/TimeTracker/commit/81c7ffdeb5b121b3752a894c96fce7f0605fb9b9
Please re-open issue if it is not resolved.


[Python][CI] Remove upper pin on pytest

Describe the bug, including details regarding any error messages, version, and platform.
The latest version of pytest (8.0.0) can't be used on our CI as it breaks couple of things. This issue is an umbrella issue for all needed fixes that would enable the removal of the upper pin on pytest:

[x] https://github.com/apache/arrow/pull/39850
[ ] https://github.com/lgpage/pytest-cython/issues/58 (disabling doctest-cython on our CI until the issue is solved upstream). CI failure can be found here: https://github.com/apache/arrow/actions/runs/7710390851/job/21013608732#step:6:6571)
[x] https://github.com/apache/arrow/issues/39957

Component(s)
Python

Issue resolved by pull request 40487
https://github.com/apache/arrow/pull/40487


Word wrap bug

Closes #
What new changes did you make? Tick all applicable boxes

[ ] Added new abbreviation
[x] Fixed something in the source code
[ ] Added a new feature
[ ] Fixed the docs (README.md, CONTRIBTUING.md, etc)

Describe the new changes you added.
I fixed a bug on #88

Share a screenshot of new changes

Thank you so much for the changes! You fixed an issue that has been here for a long time. But there is a tiny thing I think would be a great addition to your PR. That's if you are interested in fixing it.
As you can see below, the section above and the one below are not aligned. To me, this doesn't really look okay. Mabe we could create a gap so that the section above and the one below are aligned and the extra margin from the section above goes away.
What do you think? Will you go for it, or should I merge this pull request and create another issue?

@Njong392 I think you should merge this pull request and I will create another issue concerning that and work on it and if you want  to create the issue too I will be glad to work on the issue. Thanks


Firm up some QC report language

How should we refer to cell type methods as a phrase itself, e.g. "Cell type annotation method"? "Cell typing method"?
Feel free to comment in this issue with other phrases you notice we need to solidify! CC @jashapiro @allyhawkins

I'm going to vote we use "Cell type annotation" throughout.

Noting that I also am shifting wording in the supplemental report to "cell type annotation" and not "cell type assignment", where applicable. See some of those changes here - https://github.com/AlexsLemonade/scpca-nf/pull/535/commits/6114f615a711af7d8761ed362a057acde96d5520

When "inventorying" this text, also compare back to scpca-portal docs and ensure consistent language.

Spots to consider fixing:

assignment -> annotation https://github.com/AlexsLemonade/scpca-nf/blob/9a47fb05689e9475d3bede44c46ecea496533d2d/internal-instructions.md?plain=1#L125
A couple uses of cell type label in the supplemental QC report can be changed to cell type annotation, but I don't really think it's a problem. Sometimes we literally are talking about labels in a way that somewhat differs from an annotation.

scpca-portal is as expected, uses only "annotation."

Made the change needed in #555, so this issue is effectively set once that goes in.

Closed by #555


Feat: add dcristobalhMad to opentf manifesto

Added in https://github.com/opentffoundation/manifesto/pull/203


Kubernetes e2e suite.[sig-network] HostPort validates that there is no conflict between pods with same hostPort but different hostIP and protocol [LinuxOnly] [Conformance]

Note this is a Kubernetes 1.21 conformance test.
Cilium 1.10 rc0
Kubernetes 1.21 beta.1
Kops master branch
Test logs/outputs, artifacts etc:
https://prow.k8s.io/view/gs/kubernetes-jenkins/logs/e2e-kops-grid-scenario-cilium10-amd64/1371727866923847680

Probably a duplicate of https://github.com/cilium/cilium/issues/14287

If the test is validating connectivity to loopback address on host port, and expecting protocol differentiation, then yes, it's a duplicate of #14287.
From the logs -

Mar 16 07:54:37.240: INFO: Can not connect from e2e-host-exec to pod(pod1) to serverIP: <IP_ADDRESS>, port: 54323
Mar 16 07:54:37.240: FAIL: Failed to connect to exposed host ports

Same as https://github.com/cilium/cilium/issues/14287#issuecomment-739027677.

stderr:

nc -v -t -w 2 <IP_ADDRESS> 80
echo hostName
nc: connect to <IP_ADDRESS> port 80 (tcp) timed out: Operation in progress
command terminated with exit code 1

I don't have enough context to comment on this. @olemarkus Can you give some more information about this test?

Looks like. See https://github.com/kubernetes/kubernetes/blob/master/test/e2e/network/hostport.go#L61


OnButtonClicked event is called twice on every tap

OnButtonClicked is called twice since DoButtonPressed is called OnInputDown and OnInputClicked. Splitting out Clicked into it's own DoButtonClicked function prevents this from happening.
Overview
Changes

Fixes: #2524  .

Closing since this was already fixed for next release...


convert value of title to string

Page title is trimmed before being output, but if page title value is set to float, an error is thrown because it does not have the trim method.

Hey @e-e! Thanks for the PR could you please update your commit message and PR description regarding our guidelines? See here

@e-e Thank you very much for your PR, but I can't reproduce this on master. We already have a protection for this in place.
I assume you have experienced this on Ghost 0.11.x? If so, a PR for the LTS branch is welcome. Closing.

I was able to reproduce the error following the steps outlined in the original issue. According to the admin about page and the package.json file I am getting this error on version 1.4.


What torch version is originally used?

:wave:
Just a quick question: what torch and torchvision versions were originally used? requirements.txt file doesn't have any specific versions

We use torch 2.0.0.


Support for lambda logs with JSON-structured format

Issue details
AWS has recently introduced Lambdas with Logs with JSON structured format https://aws.amazon.com/blogs/compute/introducing-advanced-logging-controls-for-aws-lambda-functions/
This is how we can configure it with CloudFormation: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-loggingconfig.html#cfn-lambda-function-loggingconfig-logformat
This would be a great addition, because JSON structured logs are really useful, as we can use them in queries, data aggregation, etc.

Tracked upstream in https://github.com/hashicorp/terraform-provider-aws/issues/34455, we'll ship it as soon as the upstream is ready

Tracked upstream in hashicorp/terraform-provider-aws#34455, we'll ship it as soon as the upstream is ready

Bumping this as it has been released in Terraform AWS provider v5.32.0. Thanks @mikhailshilkov!

Thanks for bumping this @leungleoqin. This feature is present in the currently released provider, so I'm closing:
https://github.com/pulumi/pulumi-aws/blob/32a25bf835192640fadeba71ddf264123e9473fa/provider/cmd/pulumi-resource-aws/schema.json#L263173-L263176


Byte order reversal

Hi Lijun,
I am trying to port your code to MSP430 SPI to clock out Bluetooth packets. As you pointed out, both the byte order and bit order inside each byte are reversed for Bluetooth packets. However, I do not see any byte reversal in your code, only bit reversal for single bytes. Could you explain why? Is it has something to do with nRF24L01+?
thanks
TX

If you meant this part, the bytes from buf[1] to buf[4] were reversed from 0x8E89BED6.


perf: parallelize process cleanupDepsCacheStaleDirs

Description
cleanupDepsCacheStaleDirs could be parallelized.

Additional context

What is the purpose of this pull request?

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

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the PR Title Convention.
[ ] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

I didn't parallelize this one intentionally. It is fired without being awaited and there is no need to try to delete these folders as fast as possible, that is even taking resources from startup tasks. It would probably be better to delete them once Vite is idle.

Thanks for the tip.


Improve Export Debug Log feature

The Debug Log feature is very helpful for diagnosing problems with UTM and guests. However it has two flaws:

It is unclear what needs to be done to get a log, turning on the switch doesn't let the user know they have to start the VM again.

Clicking on the export button on macOS results in an iOS-like share sheet instead of a "Save as…" window like one might expect.

Should the debug logging be enabled by default? If the user can't remember what exactly happened to cause a crash, having the debug log available instead of having to try to reproduce it might be better?

@ktprograms There is a slight performance hit when enabling debug logging. Also there's privacy concerns if someone else accesses the log or you share the VM without knowing about the log.

@osy I see.
I think I can work on fixing the export interface, but there's two problems:

The exportDebugLog function in UTMData.swift first copies the debug.log to a temporary url. Would it be possible to just return the URL to the actual debug log?
SwiftUI has a .fileMover modifier which is simpler to use than NSSavePanel + FileManager but it doesn't seem to count as a User selected file. I don't mind using the NSSavePanel stuff but if .fileMover can work it's neater. Example usage of .fileMover: .fileMover(isPresented: $showing, file: URL(fileURLWithPath "/path/to/source/file")) { result in /* ignoring result but it always errors with: (source file) couldn’t be moved because you don’t have permission to access (destination folder) */ }. I tested that this exact example works in non sandboxed apps.

I think fileExporter is the right way but it requires a FileDocument which I was too lazy to implement. If you implement FileDocument then you don't have to copy the log to a temporary location.

The way I was thinking of implementing it is the UTMData.exportDebugLog function will return [srcLogPath], then there will be a NSSavePanel (which doesn't actually save since you need to provide your own save code) that on a file chosen will use fileManager.copyItem(at:to:).

For iOS, does UIActivityViewController do a copy or a move to the selected location?

For iOS, does UIActivityViewController copy the file or move it?