Allow seller to reposition profile cover image

Right now the profile cover image is set to be as a cover and it's automatically centered (default behaviour). We should allow sellers to reposition it by dragging the image in the preview when they update/create their profile and also define if they want it to be cover or contain.

depends on https://github.com/bosonprotocol/core-components/issues/512


correct the capitalized

Please makes sure these boxes are checked before submitting your PR, thank you!

[ ] Make sure you follow Element's Contributing Guide.
[ ] Rebase before creating a PR to keep commit history clear.
[ ] Add some descriptions and refer relative issues for you PR.

因为 src/locale/lang 里面的 zh-cn.js 要改名为 zh-CN.js


Add vertical slider option

Added a new option 'slide-v' and replaced 'slide' with 'slide-h'. 'slide' has been left for backwards compatibility.

Changed the API to slide and vertical-slide.


Seems lots of package installing issues with requirements.txt

I have tried to run "neptune send experiment_manager.py --environment keras-2.0-gpu-py3 --worker gcp-gpu-medium --config neptune_config.yaml -- train_evaluate_predict_pipeline --pipeline_name glove_lstm"
but got lots of package installation issues. I tried to comment out some in requirements.txt, but seems they are so many. Any solution for this? Or I just missed something in configuration? Thanks.

I have just cloned the repo from master to new env on ubuntu 16.04 installed ran pip install neptune-cli --upgrade and ran the script you pasted above. My model is training.
What OS are you using?

I am using Mac OS now. Are they really related to the OS? Cause I have not set up the local environment on my laptop, and just send the files to Neptune cloud. I guess all the packages in requirements.txt will be installed in the Neptune machine, correct? And my local machine just played the 'sending' role.

@jakubczakon @ymcdull,
Can you send us entire error message? We will take a closer look at it.
In principle, it is correct, that all requirements are installed on the VM that runs your experiment in the cloud.
I assume that you have installed neptune-cli on your machine. Recently, we have updated neptune to the new version, that is 2.6. Make sure that you have the latest version installed locally: pip3 install neptune-cli -U.
Best,
Kamil

@kamil-kaczmarek thanks Kamil. I have tried to pip upgrade my neptune-cli, but the same error happens here:
[pip] Collecting attrdict==2.0.0 (from -r /tmp/tmp5bi6stj8 (line 1))
[pip]   Downloading attrdict-2.0.0.tar.gz
[pip] Collecting affine==2.0.0.post1 (from -r /tmp/tmp5bi6stj8 (line 2))
[pip]   Downloading affine-2.0.0.post1-py3-none-any.whl
[pip] Collecting appdirs==1.4.3 (from -r /tmp/tmp5bi6stj8 (line 3))
[pip]   Downloading appdirs-1.4.3-py2.py3-none-any.whl
[pip] Collecting Babel==1.3 (from -r /tmp/tmp5bi6stj8 (line 4))
[pip]   Downloading Babel-1.3.tar.gz (3.4MB)
[pip] Collecting backports-abc==0.5 (from -r /tmp/tmp5bi6stj8 (line 5))
[pip]   Downloading backports_abc-0.5-py2.py3-none-any.whl
[pip] Collecting backports.functools-lru-cache==1.4 (from -r /tmp/tmp5bi6stj8 (line 6))
[pip]   Downloading backports.functools_lru_cache-1.4-py2.py3-none-any.whl
[pip] Collecting backports.shutil-get-terminal-size==1.0.0 (from -r /tmp/tmp5bi6stj8 (line 7))
[pip]   Downloading backports.shutil_get_terminal_size-1.0.0-py2.py3-none-any.whl
[pip] Collecting backports.ssl-match-hostname==<IP_ADDRESS> (from -r /tmp/tmp5bi6stj8 (line 8))
[pip]   Downloading backports.ssl_match_hostname-<IP_ADDRESS>.tar.gz
[pip] Collecting backports.weakref==1.0.post1 (from -r /tmp/tmp5bi6stj8 (line 9))
[pip]   Downloading backports.weakref-1.0.post1-py2.py3-none-any.whl
[pip] Collecting beautifulsoup4==4.4.1 (from -r /tmp/tmp5bi6stj8 (line 10))
[pip]   Downloading beautifulsoup4-4.4.1-py3-none-any.whl (81kB)
[pip] Collecting bleach==1.5.0 (from -r /tmp/tmp5bi6stj8 (line 11))
[pip]   Using cached bleach-1.5.0-py2.py3-none-any.whl
[pip] Collecting boto==2.47.0 (from -r /tmp/tmp5bi6stj8 (line 12))
[pip]   Downloading boto-2.47.0-py2.py3-none-any.whl (1.4MB)
[pip] Collecting bunch==1.0.1 (from -r /tmp/tmp5bi6stj8 (line 13))
[pip]   Downloading bunch-1.0.1.zip
[pip] Collecting bz2file==0.98 (from -r /tmp/tmp5bi6stj8 (line 14))
[pip]   Downloading bz2file-0.98.tar.gz
[pip] Collecting bzr-etckeeper==0.0.0 (from -r /tmp/tmp5bi6stj8 (line 15))
Sentry is attempting to send 1 pending error messages
Waiting up to 10 seconds
Press Ctrl-C to quit
What I did is comment out the bzr-etckeeper line in requirements.txt, but later other packages will have the similar issue.

@kamil-kaczmarek following are messages from stderr:
[pip]   Could not find a version that satisfies the requirement bzr-etckeeper==0.0.0 (from -r /tmp/tmp5bi6stj8 (line 15)) (from versions: )
[pip] No matching distribution found for bzr-etckeeper==0.0.0 (from -r /tmp/tmp5bi6stj8 (line 15))
Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py", line 138, in
execute()
File "/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py", line 119, in execute
install_requirements()
File "/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py", line 51, in install_requirements
install_pip_requirements(os.environ['PIP_REQUIREMENTS'])
File "/usr/local/lib/python3.6/dist-packages/deepsense/neptune/job_wrapper.py", line 44, in _check_pip_install_result
raise RuntimeError('pip failed to install the requirements. '
RuntimeError: pip failed to install the requirements. For more details, see the stdout/stderr channels.

@jakubczakon @ymcdull ,

I assume that you successfully installed the latest neptune-cli, that is 2.6.1.
Please double check, if you are using the latest version of the requirements.txt on branch master.
We will try to reproduce your error.


Mac OS: Cannot select non-contiguous lines of text

Holding down ⌘ while making text selections does not behave as expected. The correct behavior on Mac OS is to select non-contiguous blocks of text.

Correct Behavior:
Text Edit (Mac OS default editor)

Sublime

Atom

VSCode Version: Code 1.10.2 (8076a19fdcab7e1fc1707952d652f0bb6c6db331, 2017-03-08T13:56:35.908Z)
OS Version: Darwin x64 16.4.0
Extensions:

Extension
Author
Version

empty-indent
DmitryDorofeev
0.2.0

githistory
donjayamanne
0.2.0

python
donjayamanne
0.6.0

tslint
eg2
0.8.1

vscode-npm
fknop
3.3.0

csharp
ms-vscode
1.8.0

mono-debug
ms-vscode
0.15.3

debugger-for-chrome
msjsdiag
2.6.0

indent-rainbow
oderwat
0.4.1

vscode-icons
robertohuertasm
7.3.0

final-newline
samverschueren
0.3.2

Steps to Reproduce:

Open any file
Hold down Command while selecting text with a mouse

Please use Alt until #3130 is implemented. Please also feel free to upvote #3130


Stop using closure for inproc transport state machine

Fixes #17855 by eliminating the use of closures for the inproc transport's own state machine and then making the necessary adjustments to make sure that appropriate logic was being set despite the use of direct calls (rather than closures) - the latter particularly applied for asynchronous events like cancellations and failures. The problem in #17855 was that the closure needed to hold a reference to its underlying stream but was not doing so (and making it do so was challenging since the closure could be invoked at different points and it was hard to track when it would no longer be invoked.)
This PR takes a different tack than #17921 (which I've now closed) and should be a better approach since it eliminates the use of the closure (which is performance-problematic and also error-prone because of introducing asynchronous behavior).

I have tested this internally for 1000x runs of some of the failing tests

Cool side-effect: this reduces the # of locks per iteration for most of the inproc microbenchmarks by 20-33% percent.

Friendly pig.


CSRF protection

Is your feature request related to a problem? Please describe.

Bocadillo currently provides no CSRF protection mechanism. We've just merged in support for cookies (see #6), so we should definitely consider adding a token-based CSRF mitigation helper.
Describe the solution you'd like

TBD
Describe alternatives you've considered

TBD
Implementation ideas

TBD
Additional context

Discussion continued from #213

@zgoda I've ported our discussion from #212 over here. :+1:

WTForms. Deform has one too but it's not as straightforward as in WTForms.

I see. Ideally, we'd probably want CSRF protection not to depend on a third-party form library, and I think that this is doable.

Anyway, with working session implementation CSRF protection is pretty simple, it's just passing token back and forth.

Yup, I had never looked at how CSRF protection was implemented before, but it seems pretty straight-forward. This old Flask snippet gives a good idea of how that might be implemented. My guess is that an HTTP middleware could do the trick.
However, the snippet has several quirks that make it a) not directly applicable to Bocadillo (the session is attached to the request object) and b) insecure (we probably want to salt the token to prevent BREACH attacks).
Probably a more inspiration-worthy implementation is that of Django.
I don't think the implementation would be that straight-forward, but I do agree that we should try and get something out for this.

Django is large, monolithic, tightly coupled and provides everything you may need to do your web application, at least backend wise. It grew out of internet branch of local newspaper in some small town in Kansas, USA.
In another corner you have Flask which grew out of April Fools joke and just integrates couple projects by one man from Austria. And people started writing extensions to integrate other chunks of code with it.
It's really your choice - implement form processing on your own or go Flask way and let other people do that with extension/plugin/glue.

There's probably a middleground to be found between the Django monolith and the Flask do-everything-else-yourself philosophy, especially when it comes to security. :-)

implement form processing on your own

As a matter of fact, Bocadillo already has form parsing with data = await req.form(). This allows to inspect the contents of the HTML form sent by the client, regardless of any extra validation we may want to do (e.g. with WTForms, TypeSystem, or any other validation library).
I'll quote Tom Christie's answer to https://github.com/encode/typesystem/issues/55 in which OP asked whether TypeSystem would allow to perform CSRF token checks:

Short: Yes, but it’s the responsibility of Middleware, plus the developer including the CSRF token in the templates.

I agree with this, and I think CSRF token middleware (along with providing a csrf_token function in templates) is one of those things that we can have built-in without making any further assumptions on downstream form validation, which remains up to the developer.
Besides, I believe it's the framework's duty to make building secure apps easy out of the box. If this was released as an extension (even an official one), I'm afraid people would use forms without CSRF by default because, honestly, it's not the most user-friendly mitigation mechanism.

This issue has gone stale — I'm closing it for now, as I don't think CSRF is still a need today.


Memory spikes when using plugins with<EMAIL_ADDRESS>

We recently upgraded from graphql-mesh v0 to @graphql-mesh/compose-cli v1 + Hive Gateway as recommended by the migration guide.
Here are our relevant dependencies and versions:
"dependencies": {
    "@envelop/core": "^5.0.1",
    "@graphql-hive/gateway": "^1.0.8",
    "@graphql-mesh/compose-cli": "^1.0.2",
    "@graphql-mesh/supergraph": "^0.8.6",
    "graphql": "^16.8.1",
    "graphql-yoga": "^5.6.0",
  },

Here's our config:
import { defineConfig } from "@graphql-hive/gateway";
import plugins from "@app/plugins/init";

export const gatewayConfig = defineConfig({
  supergraph: "supergraph.graphql",
  port: 8000,
  plugins: () => [...plugins],
  executionCancellation: true,
  upstreamCancellation: true,
  pollingInterval: oneYearInMs,
});

Before V1, memory usage was a plateau and stable. After upgrading to use hive gateway, we immediately observed unstable memory utilization.

Zooming in, every 15 to 30 minutes, there is a sharp spike in memory.

Our only clue was this release note in mesh v0.98.7 that referenced memory leaks from plugins.
We're using a mix of homegrown plugins that perform various functions such as datadog tracing and graphql-armor vendor plugins. We ran a short experiment to turn them all off and didn't observe any memory spikes:

To isolate against the possibility of the content of our plugins being the issue, we created a barebones empty plugin to see if we still saw a memory spike just with that, and we did. Using the below config, with just a plugin that hooks into onFetch and onExecute, we still saw a memory spike after around 20 minutes.
export const gatewayConfig = defineConfig({
  supergraph: "supergraph.graphql",
  port: 8000,
  plugins: () => [
    {
      onFetch: () => {},
      onExecute: () => {},
    }
  ],
  executionCancellation: true,
  upstreamCancellation: true,
  pollingInterval: oneYearInMs,
});

This made it seem clear to us that there must be some memory leakage going on within the plugin infrastructure that could be similar to the issue referenced in the graphql-mesh release notes.

We're running the gateway on a docker container in a kubernetes pod. The docker container is running node 20.14.0.

We had some fights with Node and memory spikes in the past. Am wondering whether that's the case here too? Can we start by updating the Node in the container to the upcoming LTS (starting tomorrow) v22.10.0?

It's overall constant, but we do get generally lower traffic overnight. The spikes are consistently every 15-20 minutes, but not exactly.

Spikes are also during lower traffic?

Upgrading node to 22.10.0 fixed our issue. Thank you!


POC: Limited AST for preTransforms in TypeScript

Okay!
DO NOT MERGE.
With regards to my comment here, I've created this POC.
It took a bit longer time than I expected, since I wasn't very familiar with Rust or how to write SWC plugins before this.
A few things to note:

It's only the swc/transform plugin that has been updated - I haven't touched babel yet.

I haven't put any thought into where I've placed the TypeScript definitions. I just wanted to get it to work.
I've only tested it with playground/next.
It feels like the "forBuild"-idea is solid, but objects can have references as well, so we can probably simplify it if this idea is viable.
The default options (packages/swc-plugin/src/transform.ts#L43) could be specified in the swc/babel plugin as defaults.

It's very rough, and messy at the moment. But due to the time difference from Sweden to Japan, I wanted to get it out there before you go to sleep.
The idea is that library authors might want to extend the functionality of the engine. This would allow for that.
I imagine an api like this:
function myPlugin() {
  return {
    transforms: [{
      from: {
        specifier: '__preCreateTheme',
        source: 'my-theming-library'
      },
      to: {
        specifier: '__createTheme',
        source: 'my-theming-library'
      }
    },
  };
}

const withKazeStyle = createKazeStylePlugin({
  swc: true, cssLayer: true, plugins: [
    myPlugin(),
  ]
});

Then my __preCreateTheme would create a serialisation that matches what needs to be done.
Again, super early draft of my idea. I haven't had much time to work on it in code. But I think it's pretty flushed out conceptually.
Please take a look @taishinaritomi :)
Edit:
I also think that with this concept, we could remove the preTransform -plugins from babel and swc and adapt the new one I've written, to do all the work for us. Maybe. Just a thought!

I feel very good about it.
Will review tomorrow.😎

This feature is so great that I want to incorporate it into kaze-style. 🎉
The simple abstraction of AST is very nice.
There are a few areas of concern.

I would like to write the transform option like this.

const withKazeStyle = createKazeStylePlugin({
  swc: true,
  cssLayer: true,
  transforms: [{
      from: {
        specifier: '__preCreateTheme',
        source: 'my-theming-library'
      },
      to: {
        specifier: '__createTheme',
        source: 'my-theming-library'
      }
    }],
});

I would like to change Kind: 0 in Limited AST to type: "String".
#122

Thank you for suggesting the best POC.
How do you plan to work on this PR?

Nice!
Both of the changes you are suggesting make sense. I don't really know when I'll have proper time to work on this. Feel free if you have time before me. Next week will be very busy for me with work.
But I'm glad you like the idea! I'll play more with it today.

Okey!
I will implement it, probably within the next week.
I would appreciate your feedback once it is completed.

Hi @Zn4rK !!
We have been working on the implementation of the new Compiler in #123 and have now completed the implementation of LimitedAST and the transforms option to some extent.
Please try it out.
We are now in the process of implementing #120.
However, I have little knowledge of webpack's childCompiler and am having difficulty implementing it.
If possible, I would like your help.


Constructor with self alias dropping outer let expressions

From this code:
type Test (x: int) =
    new () as this =
        let x = 42
        new Test(x)

FCS AssemblyContents API sees the extra constructor as:
member .ctor(unitVar0) = ((Test..ctor (x); this.contents <- [I_ldarg 0us]()); [I_ldarg 0us]().init@7-13 <- 1)

The outer let expression is missing, so variable x is unbound.
If the as this is removed, the let is exposed properly:
member .ctor(unitVar0) = let x: Microsoft.FSharp.Core.int = 42 in Test..ctor (x)

Tested with FSharp.Compiler.Service 11.0.4

@Jand42 Thanks for the bug report


Ability to delete account

Is your feature request related to a problem? Please describe.
As a user, I may decide I want to remove my account and all content associated with it.  We need an endpoint to delete our accounts.

Describe alternatives you've considered
We could disable accounts, but deleting it provides better security.

@codyseibert  Are you working on this ?

Nope

okay! I got this


Can I import the oxlintrc.json content directly?

I have an oxlintrc.json file, can I import the content directly?
oxlintrc.json like this
{
    "env": {
      "browser": true
    },
    "globals": {
      "foo": "readonly"
    },
    "settings": {},
    "rules": {
      "eqeqeq": "warn"
    }
}

Not currently @TommcyOWO , but I will make an update soon to include oxlintrc files.

Version 1.0.4 added config files support.


Revamp of automatic constructors

I'm currently working on a proposal to fix some concerns with the current constructor spec.
The text of the proposal is quite long so I moved it in the website as a NEP http://nitlanguage.org/nep/automatic_constructors_revamp.html
The current thread is to be used a discussion on it.
Ping @Morriar since the proposal has a nice documentation impact.

I like the idea of the auto constructor to reify the new signature (number and order of parameters).
The NEP does not tell anything about error handling. Is this annotation checked at compile time?


Incorrect command in documentation

The docs/source/development.rst file currently instructs users to install dependencies using the following commands:
 conda install --file requirements.txt --file tests/requirements.txt and
conda install -y --file requirements.txt \  --file tests/requirements.txt \ --file docs/requirements.txt
However, these commands are incorrect. It should be:
conda install --file requirements.txt --file requirements-dev.txt and
conda install -y --file requirements.txt \ --file requirements-dev.txt \ --file docs/requirements.txt
I suggest updating the documentation to reflect the correct command for installing dependencies.

Thanks for reporting, would you like to submit a pull request with the correction?

Sure, will do that.

Fixed by #110. Thank you for your contribution!


Assert equals for map of byte arrays is broken

TestNG Version
6.10
Expected behavior
given: Map<String, byte[]> Assert.assertEquals() should do a deep compare
Actual behavior
It appears to be doing an ID compare on the byte arrays
Is the issue reproductible on runner?

[ ] Shell
[X] Maven
[ ] Gradle
[ ] Ant
[ ] Eclipse
[X] IntelliJ
[ ] NetBeans

Test case sample
            Map<String, byte[]> m1 = new HashMap<>();
            m1.put("1", "test".getBytes());
            Map<String, byte[]> m2 = new HashMap<>();
            m2.put("1", "test".getBytes());
            Assert.assertEquals(m1, m2);

This worked as expected in 6.8.8

The behavior changed with #870
And the related test is there https://github.com/cbeust/testng/blob/master/src/test/java/test/asserttests/ArrayEqualityAssertTest.java#L88

In that case it would be nice to have an Assert.assertEqualsDeep() or something. I was very surprised that working tests started failing when I updated to the latest version.

Sure. Maybe could you propose something? :)


Not rendering correctly when pushed to Github/Netlify

It works great when I view the website locally, but when deployed it's not working correct. take a look at https://www.connectthoughts.com/
I've used quite a few hugo Themes and never had issues with github/netlify.
I love this theme and will be great if you can help with it.
I also received this email from Netlify.
Insecure mixed content detected in
rajganesh
Although you have enabled HTTPS on your site, we’ve detected some content that’s still being served over an HTTP connection. This phenomenon, called mixed content, happens when both HTTP and HTTPS are being used to load the same page.
Mixed content impacts the security and user experience of your site, and prevents browsers from protecting your users from malicious attacks.
We’ve added some information to your deploy log to help you find the problem. Most major browsers also provide tools to help you find and fix mixed content. They alert you about mixed content in the JavaScript console. To find this console, you can right-click in any page of your site, select “Inspect Element”, and then select “Console”.
Google’s Developer Guides provide a more extensive description about this problem and its solution.

Do I need to disable any integrity checks?

I figured it out. I had to use https in the base URL


Glance rewrite

This is a core refactor and rewrite, which should improve stability.

:tada: This PR is included in version 4.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


⚠ Bofrost.lu has degraded performance

In 43ec361, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1948 ms

Resolved: Bofrost.lu performance has improved in fedcc39 after 13 minutes.


What is the max size of hyperfile upload support?

Hi question regarding https://github.com/tableau/hyper-api-samples/tree/main/Community-Supported/publish-hyper where it shows how to create only one hyper file and upload to Tableau server. I am trying to do the same: I have 30G of CSV data on s3, I am planning to download it locally, and convert them to hyper files.
Question:

can I break my table's data into several hyper files and upload to Tableau server separately?
what is the max size of hyper file can be uploaded from local to Tableau server? assuming I am using the python client.

Thanks!

Hey--I don't think there's a max size TSC can handle. From TSC's doc:

This method checks the size of the data source and automatically determines whether the publish the data source in multiple parts or in one operation.

Additionally, the below examples should help get you started with Multi-Table publishing and working with S3 data:

https://github.com/tableau/hyper-api-samples/tree/main/Community-Supported/publish-multi-table-hyper
https://github.com/tableau/hyper-api-samples/tree/main/Community-Supported/s3-to-hyper

Let me know if you have any further questions!

@tsjoblad thank you for your quick response! I will take a look! Thanks again!

Sure thing, feel free to reopen if you want to talk about either!


Fixed the broken links within README.md

Please update in the .githooks/readme-template.md so the githook commit process won't overwrite this change

okey, but I'm not sure if I should delete my first commit.

Looks good to me.  I'll be squashing into the project so it'll be one commit when we are done!


ValidateSetAttribute enhancement: support set values to be dynamically generated from a custom ValidateSetValueGenerator

Close #3744
Currently ValidateSetAttribute accepts only explicit constants as valid values. This is a significant limitation. Sometimes we need to get valid values dynamically, ex., Azure VMs, logged-on users and so on. The PR add follow possibilities:

pass a custom type (a valid values generator) implementing IValidateSetValuesGenerator interface to get valid values dynamically.
pass a custom type (a valid values generator) derived  from CachedValidValuesGeneratorBase abstract class to get valid values dynamically and cache the list to share with other ValidateSetAttribute attributes.

We support valid values generators on PowerShell and C#.

Still thinking out loud - the cache maybe belongs in the generator, but maybe we provide some helpers to manage it - perhaps as an abstract base class.

Wouldn't that be too intrusive? IValidateSetValuesGenerator looks very powerful.
If we want such cache in the generator it seems we should migrate from IValidateSetValuesGenerator interface to ValidateSetValuesGenerator class and force users to inherite from the class. Maybe we stop on IValidateSetValuesGenerator? Now we have 'generic' caching internally in ValidateSet so maybe we'll leave the users full freedom in IValidateSetValuesGenerator?

I had feedback in the form of a PR to TabExpansionPlusPlus  that caching should be built-in.

Do you mean that the cache has to work between different ValidateSet instances? With validValuesGeneratorType key?

Many cmdlets have parameters that are common, e.g. there are 72 commands in AzureRM.Compute that accept -ResourceGroupName.
On my machine, it takes >1s to query the resource group names
So I think a cache that works across ValidateSet instances would be very helpful.

@lzybkr

I had feedback in the form of a PR to TabExpansionPlusPlus that caching should be built-in.
It feels almost more often than not that I implement some sort of custom completion caching. But often with less than stellar aging/expiration.

I had to rebase to get autoloading of helper modules.
Global valid values cache was added. The only question is. I clean up this cache never. Should we add clean-up and where? Although it seems superfluous.

@lzybkr Could you please continue the code review?

Is this definitely limited to 'binary' cmdlets? Has anyone tested this using a PS declared class?

@lfshr Scripts is supported - see tests in the PR. We will edit the PR description after completing this work.

@iSazonov absolutely brilliant, v good work! Well done @lzybkr for the solution. (I take full credit for the moan that instigated it 😛)

This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a temporary error. The following address(es) deferred:
<EMAIL_ADDRESS>Domain jig.ch has exceeded the max emails per hour (209/200 (104%)) allowed.  Message will be reattempted later
------- This is a copy of the message, including all the headers. ------
------ The body of the message is 5430 characters long; only the first
------ 5000 or so are included here.
Received: from o4.sgmail.github.com ([<IP_ADDRESS>]:33553)
by rs111.nsresponse.com with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128)
(Exim 4.89)
(envelope-from<EMAIL_ADDRESS>id 1dJ3YW-000ecy-9S
for<EMAIL_ADDRESS>Thu, 08 Jun 2017 14:57:22 -0500
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=github.com;
h=from:reply-to:to:cc:in-reply-to:references:subject:mime-version:content-type:content-transfer-encoding:list-id:list-archive:list-post:list-unsubscribe;
s=s20150108; bh=hShJWcvT9Pb6uxla7Fnd9iixHHM=; b=Y3gswrT8hSHg3Sug
3nESvwqFy3i0f7kr1bXJ62TWl0X//POn4qUMScz6eJ9NDbdycbPyASBXc4zv8B7T
nHUY0pDTfrXlDmwYHgDei3Y9FrXvzTi1dsgppciKhx2QZS0Nq19xTbjzEnkFH9Vc
WoLLO7uWPKx1QBTyMC8ZholprWs=
Received: by filter0986p1mdw1.sendgrid.net with SMTP id filter0986p1mdw1-9547-5939ABF5-38
2017-06-08 19:56:37.867097011 +0000 UTC
Received: from github-smtp2a-ext-cp1-prd.iad.github.net (github-smtp2a-ext-cp1-prd.iad.github.net [<IP_ADDRESS>])
by ismtpd0005p1iad1.sendgrid.net (SG) with ESMTP id exs5qSK6Sb6QZKnfIy_g2Q
for<EMAIL_ADDRESS>Thu, 08 Jun 2017 19:56:37.840 +0000 (UTC)
Date: Thu, 08 Jun 2017 12:56:37 -0700
From: Jason Shirk<EMAIL_ADDRESS>Reply-To: PowerShell/PowerShell<EMAIL_ADDRESS>To: PowerShell/PowerShell<EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>In-Reply-To<EMAIL_ADDRESS>References<EMAIL_ADDRESS>Subject: Re: [PowerShell/PowerShell] Add dynamically generated set in
ValidateSetAttribute for binary cmdlets (#3784)
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="--==_mimepart_5939abf5a8c90_eb33fcd63a97c3c955a8";
charset=UTF-8
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: lzybkr
X-GitHub-Recipient: schittli
X-GitHub-Reason: subscribed
List-ID: PowerShell/PowerShell <PowerShell.PowerShell.github.com>
List-Archive: https://github.com/PowerShell/PowerShell
List-Post<EMAIL_ADDRESS>List-Unsubscribe<EMAIL_ADDRESS>https://github.com/notifications/unsubscribe/AH5iMem0-KOQppPU-TNvlDnqKHpXiN22ks5sCFH1gaJpZM4Nazg4
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address<EMAIL_ADDRESS>X-SG-EID: DAOE8jsA1R6juA5Oy75tmkOSGcm/2gf22STf7FTBCw/DIaYvSgqsQIQbJ5dG6AlB/z5qcYlJTCG5FM
dlENOGDddCcMVTWy32QMl98dlaCymYgMf5SsqKmZmWgA6ODAfB02J179/rg5geiDt0CpQKkz1Z/N3Q
sOFFSENCfxSqD6sEkTCCsbvDwMaAWGnd4kdAY8hsTaznGuPsAEndVYfd6A==
X-Spam-Status: No, score=-3.0
X-Spam-Score: -29
X-Spam-Bar: ---
X-Ham-Report: Spam detection software, running on the system "rs111.nsresponse.com",
has NOT identified this incoming email as spam.  The original
message has been attached to this so you can view it or label
similar future email.  If you have any questions, see
root@localhost for details.
Content preview:  lzybkr commented on this pull request. > + else + { + var
validValuesGenerator = (IValidateSetValuesGenerator)Activator.CreateInstance(validValuesGeneratorType);
+ var validValues = validValuesGenerator.GetValidValues()?.ToArray(); + var
cacheEntryCreationTime = DateTime.Now; + validValuesCacheEntry = new ValidValuesCacheEntry(validValuesGenerator,
validValues, cacheEntryCreationTime); + validValuesCache.TryAdd(validValuesGeneratorType,
validValuesCacheEntry); + } + if (validValuesCacheEntry.validValues == null)
+ { + throw new ValidationMetadataException( + "ValidateSetGeneratedValidValuesListIsEmpty",
+ null, + Metadata.ValidateSetGeneratedValidValuesListIsEmpty); + } + _validValues
= validValuesCacheEntry.validValues; [...]
Content analysis details:   (-3.0 points, 5.0 required)
pts rule name              description

0.0 URIBL_BLOCKED          ADMINISTRATOR NOTICE: The query to URIBL was blocked.
See
http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block
for more information.
[URIs: github.com]
-0.0 SPF_PASS               SPF: sender matches SPF record
-0.0 T_RP_MATCHES_RCVD      Envelope sender domain matches handover relay
domain
-1.0 RCVD_IN_MSPIKE_H2      RBL: Average reputation (+2)
[<IP_ADDRESS> listed in wl.mailspike.net]
-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%
[score: 0.0000]
0.0 HTML_MESSAGE           BODY: HTML included in message
-0.1 DKIM_VALID_AU          Message has a valid DKIM or DK signature from author's
domain
0.1 DKIM_SIGNED            Message has a DKIM or DK signature, not necessarily valid
-0.1 DKIM_VALID             Message has at least one valid DKIM or DK signature
X-Spam-Flag: NO
----==_mimepart_5939abf5a8c90_eb33fcd63a97c3c955a8
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: 7bit
lzybkr commented on this pull request.

               else

               {

                   var validValuesGenerator = (IValidateSetValuesGenerator)Activator.CreateInstance(validValuesGeneratorType);

                   var validValues = validValuesGenerator.GetValidValues()?.ToArray();

                   var cacheEntryCreationTime = DateTime.Now;

                   validValuesCacheEntry = new ValidValuesCacheEntry(validValuesGenerator, validValues, cacheEntryCreationTime);

                   validValuesCache.TryAdd(validValuesGeneratorType, validValuesCacheEntry);

               }

               if (validValuesCacheEntry.validValues == null)

               {

                   throw new ValidationMetadataException(

                       "ValidateSetGeneratedValidValuesListIsEmpty",

                       null,

                       Metadata.ValidateSetGeneratedValidValuesListIsEmpty);

               }

               _validValues = validValuesCacheEntry.validValues;

Sure, you could add CacheExpiration to IValidateSetValuesGenerator, but it would be something extra that some generators have no need for.
I agree we should clean up validValuesCache - and ideally, I think that cache is optionally available to generators but not required. This is why I suggested an abstract base class that generators could derive from.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/PowerShell/PowerShell/pull/3784#discussion_r120983547
----==_mimepart_5939abf5a8c90_eb33fcd63a97c3c955a8
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
@lzybkr commented on this pull request.

In src/System.Management.Automation/engine/Attributes.cs:
> +                    else
+                    {
+                        var validValuesGenerator = (IValidateSetValuesGenerator)Activator.CreateInstance(validValuesGeneratorType);
+                        var validValues = validValuesGenerator.GetValidValues()?.ToArray();
+                        var cacheEntryCreationTime = DateTime.Now;
+                        validValuesCacheEntry = new ValidValuesCacheEntry(validValuesGenerator, validValues, cacheEntryCreationTime);
+                        validValuesCache.TryAdd(validValuesGeneratorType, validValuesCacheEntry);
+                    }
+                    if (validValuesCacheEntry.validValues == null)
+                    {
+                        throw new ValidationMetadataException(
+                            "ValidateSetGeneratedValidValuesListIsEmpty",
+                            null,
+                            Metadata.ValidateSetGeneratedValidValuesListIsEmpty);
+                    }
+                    _validValues = validValuesCacheEntry.validValues;

Sure, you could add CacheExpiration to IValidateSetValuesGenerator, but it would be something extra that some generators have no need for.
I agree we should clean up validValuesCache - and ideally, I think that cache is optionally available to generators but not required. This is why I suggested an abstract base class that generators could derive from.
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or mute the thread.

@lzybkr Could you please continue the code review?

I have a feeling that this will make many folks happy, but it will fall short for others, mostly around wanting access to some context, e.g. the cmdlet or some of the already bound parameters.

@lzybkr Shall we continue with the "some context"?

It seems we catch a race condition on slow OSX. 😕

Wasn't there a CLR bug we were hitting on Mac related to defining classes? Maybe @daxian-dbw remembers.

If you want to investigate options for providing more information to the generator - I could imagine wanting to know the command, maybe the command ast, the actual parameter the attribute is applied to, and maybe the already bound parameters.

I tried to think about it. If we cache and share the generator, we can't store the context in it and should pass it as a parameter.  Even if we send engineIntrinsics from Validate() to ValidateElement we cannot send it in a generator - we get valid values with the ValidValues property, and we use the property in Intellisense completers. Although engineIntrinsics contains current cmdlet info it does not contain current binding parameter info.
That way requires too much effort. 😕 Is there another way?

We can add an interface:
public interface IExtendedValidateArguments
{
    void Validate(object arguments, EngineIntrinsics engineIntrinsics, /* extra args*/);
}

Then:
    public abstract class ValidateArgumentsAttribute : CmdletMetadataAttribute
    {
        //...

        internal void InternalValidate(object o, EngineIntrinsics engineIntrinsics, /* extra args */)
        {
            if (var extended = this as IExtendedValidateArguments) {
                extended.Validate(o, engineIntrinsics, /* extra args */ );
            } else {
                Validate(o, engineIntrinsics);
            }
        }

And lastly implement that interface for ValidateSetAttribute.
Alternatively, we can move the type test to the parameter binder to avoid passing extra arguments if that is expensive somehow.

Thanks! I still don't see how fix the ValidValues  property for completers. It seems we need a new method in the interface?

After thinking a bit more about this, what I would want is [ValidateCompleterSet]
It would combine two features: IArgumentCompleter for getting values, and ValidateSet for limiting what can be passed to the function/cmdlet.
That way we could also get the tooltips etc, and have the validation based on the CompletionText of the CompletionResult.
I understand I'm a bit late to this party...

@lzybkr I believe we should stop and merge because here we cannot resolve the problem with ValidValues public property while we share valid values generators.
It seems the @powercode's idea (thanks!) opens alternative way.

I'm fine with merging soon - but the test failure needs to be worked out.
I'll be very busy for the next 1.5 weeks, much of the time offline, so don't be too concerned if you don't see any response from me.

I think this is almost ready to be merged -- 2 more comments to be addressed.

I believe we should stop and merge because here we cannot resolve the problem with ValidValues public property while we share valid values generators.

I don't have the context of the 'the problem with ValidValues', can you please elaborate it a bit? But no matter what, it should not block this PR and the further discussion should be captured in an issue.

@daxian-dbw
From lzybkr optional idea:

I could imagine wanting to know the command, maybe the command ast, the actual parameter the attribute is applied to, and maybe the already bound parameters.
...
We can add an interface:
public interface IExtendedValidateArguments

The idea is to pass a context to a valid value generator.
Using the new interface we can pass the context to Validate() but we have public property ValidValues - I don`t see how we can pass the context to the property. The root of the problem is that we cache and share the generator. If we add "context" to the cache, the effectiveness of the cache will decrease to 0.

/cc @joeyaiello  We are near a Milstone - 996 repo forks :-)

I will merge this PR soon. I assume #3744 is fixed by this PR, so for further enhancement discussion, please open a new issue to continue.
@iSazonov now that the design and implementation are complete, could you please update the PR description with a summary of the design and new functionalities? We need that information for the documentation.

@daxian-dbw I added the PR description - please review.

@iSazonov Perfect! Thank you for the great work!

Many thanks @lzybkr for ideas and helps!

Hi everyone,
I found this PR when searching for exactly the same solution: how to implement validateSet from a dynamically generated array of subfolders in a PS script. I see that this is merged, but is there any documentation about this? If not, could you please either point me to the test where I can see it in action or just drop a couple lines to illustrate it? And one more question: if I run Windows 10 1709, do I need to update PowerShell to have this working?
Thanks!

@Menelion Generally you should open a new issue for this kind of thing rather than comment on a closed PR you can reference a PR in an issue by doing #3784 and it will appear like this: #3784
You can find some documentation of the API here https://docs.microsoft.com/en-us/dotnet/api/system.management.automation.ivalidatesetvaluesgenerator?view=pscore-6.0.0
This features was added in PowerShell Core 6.0.0. To use, your PowerShell code must run in PowerShell Core 6.0.0 or newer.
You can find example usage here in this PR or at https://github.com/PowerShell/PowerShell/blob/master/test/powershell/Language/Classes/Scripting.Classes.Attributes.Tests.ps1

where I can see it in action or just drop a couple lines to illustrate it?

@Menelion You could see our tests which was added in the PR.

I am trying to use this, but I always get The type or namespace name 'IValidateSetValuesGenerator' could not be found (are you missing a using directive or an assembly reference?)
I am using the latest PowerShellStandard.Library (5.1.0-preview-06). How can I reference this interface?

That interface was introduced in 6.0.0, so you would need to reference to https://powershell.myget.org/feed/powershell-core/package/nuget/System.Management.Automation


Enable Windows testing on AppVeyor

Hi!
Issue #419 mentions Windows testing as a step towards a new release.
This PR adds setup for testing on AppVeyor.  The tests are running on my fork here:
https://ci.appveyor.com/project/donv/axlsx
This PR also includes adjusting the Gemfile to work with Ruby 1.9.x.
Slightly ironically, the tests succeed on Ruby 1.9.3 while there are only two failing tests for Ruby 2.0+.  I leave fixing the two failing tests for another committer 😄 .
After merging this PR, the build needs to be activated in AppVeyor.  I would be happy to do that, but I would need admin access to this repo to enable commit callback hooks.

Hi @donv - Thank you for sorting out the rake issue.
While I'm satisfied with TravisCI, I have no objection to having configuration for running unit tests via AppVeyor if you are interested in setting it up.
The comments on #419 are related to integration testing and knowing that the expected workbook opens and is correct in Excel.

I'd be happy to set up testing with AppVeyor.  The process is simple, but I need commit rights to the repository.

I have set up testing on AppVeyor now here
https://ci.appveyor.com/project/donv/axlsx-c5ddf
Two tests are failing with encoding problems.  Not sure how to fix it.
@randym I think it would be better if you set up the build with your account instead of mine.  The process is very easy, and I can help you if you get stuck.
Go to https://www.appveyor.com/ and sign up using GitHub and choose "New project".


error in firebase-get-to-know-flutter codelab page

In main.dart code of 5th steps(add RSVP functionality) in firebase-get-to-know-flutter codelab page
      routes: [
        GoRoute(
          path: 'forgot-password',
          builder: (context, state) {
            final arguments = state.queryParameters;  // This code seems being written incorrectly
            return ForgotPasswordScreen(
              email: arguments['email'],
              headerMaxExtent: 200,
            );
          },
        ),
      ],

I think it needs to be modified like below
final arguments = state.uri.queryParameters;
Thank you

PTAL @ericwindmill

You're correct, thank you for filing an issue @Dobbinci

PTAL @ericwindmill


Feat: Add a Subscribe Section to the Events Page

Describe the feature
Description:
We would like to enhance user engagement by adding a "Subscribe" section on the Events page. This feature will allow users to stay informed about upcoming events, including game nights, tournaments, and special events.
Proposed Implementation:
Subscribe Section Title:
"Stay Updated!"
Description:
"Subscribe to our newsletter to be the first to know about exciting game nights, tournaments, and special events!"
Fields:
Name (Input Field)
Email (Input Field)
Button:
"Subscribe Now"
Benefits:

Encourages users to join our mailing list.
Keeps the subscription process simple and user-friendly.
Increases engagement and participation in future events.

Acceptance Criteria:

The subscribe section is visually appealing and matches the overall design of the Events page.
Form validation ensures that the Name and Email fields are properly filled out before submission.
On successful submission, users receive a confirmation message.

Storage:
All user inputs will be stored in a subscriber file, creating a list of subscribers for future communications.
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I have starred the repository
[X] I'm a gssoc-24-extd contributor
[X] I want to work on this issue

@RamakrushnaBiswal please assign this issue to me i will make it.

not needed @Mohitranag18


Build fails on Windows with rcedit.exe "exit code 1. Fatal error: Unable to commit changes"

Description
Whenever it reached 60-65% it fails.
Then There comes an error, It starts packaging and stops at 80%
Steps to reproduce issue
nativefier "http://maps.google.com" or any url
Details

Tried with a dozen sites
Tried running in different directories
Tried CMD, Bash

C:\WINDOWS\system32>nativefier "http://maps.google.com"
  packaging [===================================               ] 69%Packaging app for platform win32 x64 using electron v1.7.9
Error: rcedit.exe failed with exit code 1. Fatal error: Unable to commit changes
    at ChildProcess.<anonymous> (C:\Users\hpp\AppData\Roaming\npm\node_modules\nativefier\node_modules\rcedit\lib\rcedit.js:68:16)
    at ChildProcess.emit (events.js:159:13)
    at maybeClose (internal/child_process.js:943:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:220:5)
  packaging [========================================          ] 80%

@WinningRed thanks for the feedback. Sadly I can't reproduce the issue, could you:

Provide all the information requested by the issue template
Try on another machine and help us isolate what could be causing the problem.

Description
rcedit.exe failed with exit code 1. Fatal error: Unable to commit changes
Steps to reproduce issue

nativefier "http://medium.com"

Details
Q: Are you nativefying a public website?
A : Yes, but without domain name
Q: Feature request? Have you looked at nativefier --help to see if an existing option could fit your needs?
A : Yes

Full nativefier command used to build your app: nativefier "http://medium.com"
Version of Nativefier (run nativefier --version): v7.5.4
Version of node.js (run node --version): v6.10.0
OS: Windows

Downloading tmp-15260-1-SHASUMS256.txt-1.7.9
[============================================>] 100.0% of 2.93 kB (2.93 kB/s)
Packaging app for platform win32 x64 using electron v1.7.9
Error: rcedit.exe failed with exit code 1. Fatal error: Unable to commit changes
    at ChildProcess.<anonymous> (C:\Users\neon\AppData\Roaming\npm\node_modules\nativefier\node_modules\rcedit\lib\rcedit.js:68:16)
    at emitTwo (events.js:106:13)
    at ChildProcess.emit (events.js:191:7)
    at maybeClose (internal/child_process.js:877:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)

I have got it fixed by using this command :
cd C: or cd X where X is the path to folder.
I was trying to build in C:\Windows\System32 but that's not possible as It is a Windows directory.

Upgrade Your Node Js... :)

@onyet did that, but issue persits

Hi @rkorebrits. Following @WinningRed 's suggestion, can you try explicitly passing the output folder to somewhere you have access rights? For example,
nativefier --name "AppName" "https://*snip*" C:\Users\Richard\AppName

Thanks @ronjouch
I was already running the app from C:\Users\Richard\ and also ran the CMD as administrator. Tested with your suggestion, but no luck. No idea what is causing this.. I have reinstalled nativefier, but the same issue persists.
Is it possible to generate a Windows package from Ubuntu? When I run it on my VM, it works fine, but only creates a package for linux
C:\Users\Richard>nvm use 8
8.0.0
Now using node v8.0.0 (64-bit)

C:\Users\Richard>nativefier --name "AppName" "https://***" C:\Users\Richard\AppName
  packaging [==============================                    ] 61%Packaging app for platform win32 x64 using electron v1.8.4
  packaging [===================================               ] 69%Error: rcedit.exe failed with exit code 1. Fatal error: Unable to set icon
    at ChildProcess.<anonymous> (C:\Users\Richard\AppData\Roaming\npm\node_modules\nativefier\node_modules\electron-packager\node_modules\rcedit\lib\rcedit.js:68:16)
    at emitTwo (events.js:125:13)
    at ChildProcess.emit (events.js:213:7)
    at maybeClose (internal/child_process.js:887:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:208:5)
  packaging [========================================          ] 80%
C:\Users\Richard>

"Is it possible to generate a Windows package from Ubuntu? When I run it on my VM, it works fine, but only creates a package for linux"

@rkorebrits it is, you'll need WINE, and we also have rcedit trouble there ( https://github.com/jiahaog/nativefier/issues/375 ), but give it a try. You'll want to use flag --platform windows to enforce a target that is not the same as the build host.

Okay. Is there no flag to do something with the icon? Just realised that I posted to a thread that has a different error code than mine

nativefier --name "googwin" "https://www.google.ca/"
This worked however..

I found another clue about this bug... it seems that it won't recognize icons that are inside the C drive (or boot drive, perhaps?). But, when I moved the same icon file from C drive into somewhere else (mine is E), it seems to be working just fine.
Seems like the rcedit.exe is the root cause of this bug, after all.

change your build script take  a look at this
https://www.christianengvall.se/electron-packager-tutorial/
that work for me

Hi @rkorebrits. Following @winningred 's suggestion, can you try explicitly passing the output folder to somewhere you have access rights? For example,
nativefier --name "AppName" "https://*snip*" C:\Users\Richard\AppName

Great, thats the main problem, the directory final path

Disabled Dropbox Sync and it worked. Some people disabled anti-virus. Just make sure no external process is locking/reading files.


Exclude class-path header from manifest fixes #66

As #66 describes, shadowJar task includes class-path header which lists shadow dependencies in MANIFEST.MF
Checking johnrengelman/shadow#324, it seems like built-in shadow configuration is "reserved" for the purpose to exclude dependency from resulting executable jar, which indeed needs manifest's class-path attributes
This PR tries not to include class-path in manifest by defining new "shadowed" configuration which indicates a dependency should not be merged into resulting jar

Confirmed that:

docs/example project worked after publishing to maven local
MANIFEST.MF in decaton-processor doesn't contain Class-Path attribute

resulting jar by local publish.
shadowed dependencies are correctly included in dependencies section as compile scope
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.linecorp.decaton</groupId>
  <artifactId>decaton-processor</artifactId>
  <version>0.0.41-11-SNAPSHOT</version>
  <name>Decaton</name>
  <description>High throughput asynchronous task processing on Apache Kafka</description>
  <url>https://github.com/line/decaton</url>
  <licenses>
    <license>
      <name>The Apache License, Version 2.0</name>
      <url>https://www.apache.org/licenses/LICENSE-2.0</url>
    </license>
  </licenses>
  <developers>
    <developer>
      <name>Decaton developers</name>
<EMAIL_ADDRESS>    </developer>
  </developers>
  <scm>
    <connection>scm:git:git@github.com:line/decaton.git</connection>
    <developerConnection>scm:git:git@github.com:line/decaton.git</developerConnection>
    <url>git@github.com:line/decaton.git</url>
  </scm>
  <dependencies>
    <dependency>
      <groupId>com.linecorp.decaton</groupId>
      <artifactId>decaton-common</artifactId>
      <version>0.0.41-11-SNAPSHOT</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.linecorp.decaton</groupId>
      <artifactId>decaton-client</artifactId>
      <version>0.0.41-11-SNAPSHOT</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.micrometer</groupId>
      <artifactId>micrometer-core</artifactId>
      <version>1.5.1</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>
</project>


add if-async module

conditional async execution for async.js

Thanks for the suggestion, but I'm going to pass on this.


PATCH calls fails for registry 2.4.0 when using IAM Instance profile

I tried searching for this issue and didnt see anyone report it.
We were using the docker registry 2.3.0 and upgraded to 2.4.0 (we use S3 for storage using IAM Instance Profile).
There were no issues with push/pull/delete calls when using 2.3.0.
When we started testing the registry upgrade to 2.4.0 we see that,
The PULL works fine.
When doing push the PATCH calls to the registry fails, with unauthorized errors,
We haven't tried the delete image operation yet, and would be trying that tomorrow.
One behavior that was strange was the PUSH for images having just POST calls work as expected, however when images pushed make PATCH calls, the calls fail.
The configuration we are using is as follows,
storage:
    cache:
        blobdescriptor: inmemory
    s3:
        region: us-east-1
        bucket: myregistrybucket
        encrypt: true
        secure: true
        v4auth: true
        chunksize: 5242880
    redirect:
        disable: true
    delete:
        enabled: true

Am I missing something ? Is there a mandate to pass the accesskey and secretkey parameters,
The documentation did say to leave it blank for using instance profile, so do i have to even mention the parameters with "" strings or it should handle with my existing configuration.
Thanks.

Does your IAM profile have the necessary permissions?  They changed between 2.3 and 2.4:
https://github.com/docker/distribution/blob/master/docs/storage-drivers/s3.md#s3-permission-scopes

Mine runs into a very similar issue where push works but pull will fail like yours, and the IAM user has been given full permissions, see in https://github.com/docker/docker/issues/22852#issuecomment-220780910 @RichardScothern

did you make any progress with this issue? @mv012004

@timfeirg : can you post your registry logs?
What happens when you copy the sample IAM (posted above?)
Also, can you test your setup with the legacy S3 driver? Change the name in the configuration file from s3 to s3goamz.

@RichardScothern  I changed to s3goamz, then push/pull both fail:
$ docker push localhost:22258/testpush
The push refers to a repository [localhost:22258/testpush]
f6ebe8abdaea: Retrying in 11 seconds
acc5ea83ac4e: Retrying in 11 seconds
85ffd1e01e05: Retrying in 11 seconds
e81197a5814f: Retrying in 11 seconds
481104fae705: Retrying in 11 seconds
1df93d8925b8: Waiting
fd6d078b083f: Waiting
89713c868c2d: Waiting
79a2dc487d51: Waiting
5f70bf18a086: Waiting
be4afcadee58: Waiting
2f12183dca17: Waiting
63538fa1c3d0: Waiting
4300ce4f67ba: Waiting

$ curl http://<IP_ADDRESS>:22258/v2/ainur/tags/list
{"errors":[{"code":"UNKNOWN","message":"unknown error","detail":{"DriverName":"s3goamz","Enclosed":{"StatusCode":400,"Code":"InvalidRequest","Message":"The authorization mechanism you have provided is not supported.
I think you'll need to do some troubleshooting.  Did this stop working with a specific version of the registry?  Are you able to push/pull with a filesystem backend?  What do the daemon logs (in debug mode) and the registry logs display when the errors occur?

@RichardScothern

I'm using registry github.com/docker/distribution v2.4.1, I've tried older versions but they all didn't work.
using the local filesystem backend works fine, but we're trying to migrate to s3.
daemon logs are provided in https://github.com/docker/docker/issues/22852#issuecomment-220775622
if I change s3goamz back to s3, pushing will work, while pull still won't.

in fact the only error logs are inside docker daemon logs, any chance that this was actually a docker issue?

setting REGISTRY_STORAGE_REDIRECT_DISABLE=true circumvents the problem so it must be somewhere in the generation of the s3 download redirect url the problem occurs.

hi @mkm85 that's interesting!
What exactly is the error returned when you curl the redirect URL issued for cn-north-1

The error returned from s3 is:
HTTP/1.1 401 Unauthorized
...
UnauthorizedAccessYou are not authorized to perform this operation9F0259105348B6F1cXQZ3v89RsNrcxq8Hp/dTiBLB3HFAqX9DZLQjbbpbdLpFlK9enufKiONgIuVReiGZHSiJn5gtwA=
One thing that seems odd is that the security token in the redirect url from the registry has 10 %2F in it: X-Amz-Security-Token=FQoDYXdzENn%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwE....
Is it s3-aws or s3-goamz which is used when the s3 storage driver is chosen?

I found that i have the same problem.
I noticed that in China you need a "ICP license" to enable your account for presigned url's (as that's considered publishing information)
https://www.amazonaws.cn/en/about-aws/china/faqs/
Without this license AWS / S3 china by default seems to deny any presigned url requests.
I've checked and it seems i can't disable the http redirect in docker registry at all nowadays..
my config:
version: 0.1 log:   level: debug   fields:     service: registry storage:     s3:       accesskey: AKIAxxxxxxxx       secretkey: /pcaasdlkh+asc8uljkhac       region: cn-north-1       bucket: company-docker     redirect:       disable: true http:     addr: :5000     secret: oiasclkjaljsc
secrets, keys and bucket anonymized..

@cetex thank you for that information. I wonder if we should include that in our documentation.

I've checked and it seems i can't disable the http redirect in docker registry at all nowadays..

That shouldn't be correct. Do you have an HTTP capture or docker daemon logs showing this redirect happening?

Closing as outdated. Please verify if the issue is still present in the latest release or on the main branch and reopen if need be.


doc: add more file explorer structures

Hi Eric!

added Robin Wieruch's suggested file structure as discussed.

Let me know if you would like me to add any of the other file structures or have any feedback for this.
In addition, I'm happy to look through the current file structures and add files / reformat the descriptions to be consistent.
Cheers.

@kane-chang I'm so sorry I haven't had time to look at this, it has been a crazy week at work. First off, thanks for opening the PR! At first glance, it looks great. I'm just going to approve this to deploy to Vercel to take a quick look and will get it merged tomorrow. Thanks again!

Wow, Vercel really makes it easy. Lol, approved, thanks again @kane-chang


Added es.batch.write.ignore.existing option

If es.batch.write.ignore.existing is set to true then es-hadoop will ignore existing documents during a bulk create operation (#307).

It looks like the error condition DocumentAlreadyExistsException is hard coded in this PR. Can that be easily generalized?
In this case it looks like you want to ignore existing documents but other use cases might include handling version conflicts and malformed mappings.

@costin, what would be your suggestions for the pull request?

I am too having the same issue but in my case, the exception to ignore is VersionConflictEngineException caused when an older version of the same document is indexed. This PR handles only DocumentAlreadyExistsException making it too specific. Can we let the user set a list of exceptions to ignore while indexing? Can it be set in the configuration itself? Please comment on this approach so that I can send a new PR with these changes.

I'm also running into the issue where a bulk import is failing due to an ignorable version conflict exception ("Found unrecoverable error [Conflict(409) - [VersionConflictEngineException[...]]").  I'm using external version numbers where a version conflict means my batch job attempted to overwrite a more recent document with stale data.  In those cases I want to quietly ignore the failure and continue.

Smae here, we have a complex external version number system, and we're fine with ignoring the exception gracefully (or at least quietly) in some specific cases. This feature would really come in handy.

If you are using Apache Spark there is native client integration lib for ElasticSearch: https://github.com/SHSE/spark-es
It allows you to "tune" each individual indexing request (version, operation type, index name, error handling, etc).

Thank you for your post. I don't know why the author have not merge this pull request. So i decide to rebuild using this patch myself.

Hi SHSE,
According to the docs and ElasticsearchException.java line 530:
// 54 was DocumentAlreadyExistsException, which is superseded by VersionConflictEngineException
Could you add check for this class and merge-in last version?

@costin It would be useful to ignore non existing documents with bulk update too

Hi,
Is there a roadmap to accept this pull request?
We also have a need for this.  Any way I can help?

Hi,
I'd like to use this feature. Any update on when it will be merged?

This PR is very old, has conflicts with the main line and seems to overlap with #693. Can anyone give good use cases or reasons for ignoring errors on create or update calls that couldn't be fixed with improved upsert functionality in the connector?

I am closing this PR. I have opened a new issue #1064 to discuss allowing users to decide for themselves what to do when exceptions are raised via registered error handlers.


Accessibility [Menu]: Screen readers initially not announcing first menuItem in a menu

[ X ] The issue is present in the latest release.
[ X ] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
When the user opens a menu, the screen reader does not announce the focussed/first item within the menu.
Expected Behavior 🤔
Once a user opens a menu, the first menuItem that is focussed should be announced by the screen reader.
Steps to Reproduce 🕹
https://codesandbox.io/s/mui-icon-button-menu-gomtg
Steps:
With the relevant screen readers enabled:

Tab to the Icon Button
Press Space or Enter to Open the menu
Once opened, notice that the first item in the list does not get announced by the relevant screen readers

Context 🔦
It would be great if the relevant screen readers could announce the text of the first menu item once the menu is opened.
Your Environment 🌎

Tech
Version

OS
windows 8, 10

Material-UI
v4.7.0

React
v16.12.0

Browser
Chrome

Screenreader
Jaws, ChromeVox

Hello, this is my first time here, but I would like to try to contribute in some way with accessibility.
@declanmagee When testing with VoiceOver, it worked as expected. Could you or someone with windows confirm if the error persists?
If so, I can try to configure a virtual machine to check further.

@beatrizrezener Delighted to have you here! Feel free to point out any other accessibility issues you find, or to take a look at existing ones.

I have the same or similar issue for <Menu> where it would anounce "Menu with zero items". I believe this is caused by the transition. Eitherway, remiving the transition <Menu transitionDuration={0}> fixes that issue and it announces then properly eg "Menu with three items"

I have the same problem where the menu transition causes the screenreader to announce that a menu is empty, even though it is not. This is a very serious bug for users who rely on screenreaders and can make an application well nigh unusable.
This workaround--disabling the transition--works. But it is disappointing to see a bug like that remain outstanding for so long.


Developer Relations Job

We're seeking a passionate Developer Relations Specialist to contribute to this open-source project and community on an hourly basis. You'll play a vital role in building and nurturing a thriving developer community around our projects.
Responsibilities:

Foster a welcoming and inclusive community on GitHub and other relevant platforms.
Create and maintain clear and accessible documentation, tutorials, and code samples.
Engage with developers through issues, pull requests, and discussions on GitHub.
Identify and address developer pain points, providing timely support and solutions.
Organize and participate in online and offline community events (meetups, conferences, etc.).
Collaborate with the development team to improve the developer experience.
Track and analyze community metrics to measure the success of developer relations efforts.
Develop high-quality code samples and tutorials that demonstrate the project's capabilities and best practices.
Ensure that code samples and tutorials are well-structured, easy to follow, and up-to-date.
Gather feedback from developers on code samples and tutorials to improve their effectiveness.
Compile newsletters and reports around the projects progress. this might be auto-generated or manually generated.

Note
This project requires lots of communication, being proactive and resourceful. Able to work alone without supervision.
Salary
10k-15k EGP per month for part-time commitment, depending on experience.
How to Apply
Email us your resume along with the following to hello{at}asasiyat.org

Links to blogs, posts, tutorials, that you built overtime around technical topics (preferably opensource).
Full-stack experience, please describe the projects you worked on. (opensource stacks preferred)
Track record in participation in events, or communities.
Fluent in Arabic and English written forms.
List of opensource projects or technologies you are closely following, and why?

@mfouad I have applied and am highly interested in this opportunity. I look forward to hearing from you.


Remove nncf dependency from openvino configs

Fixes https://github.com/huggingface/optimum-intel/actions/workflows/test_openvino_basic.yml

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Add PyPy 5.7.1

https://morepypy.blogspot.com/2017/04/pypy-571-bugfix-released.html

almost but not quite!

Merged.

For next time: make sure you chmod +x these formula!

Deployed to cedar-14.

Deployed to heroku-16.

For next time: make sure you chmod +x these formula!

Thank you, I'll try to remember that!


about com.google.guava:guava:31.1-jre

It seems that implementation 'com.google.guava:guava:31.1-jre' needs to add google() in repositories

I can't download it in mavenCentral()


ENH: Improve issues to pages script

ENH: Improve issues to pages script encapsulation
ENH: Allow the issues to pages script to accept parameters
ENH: Move issues to pages script to dedicated folder
BUG: Avoid trying to access object property if None

I tried using your fork's URL @Remi-Gau, and the changes do not break things/the script works as expected/as before.
However, changing the URL match regex to match the section title in your issues (Link to the project) just for testing purposes makes the script run be stuck on that line. So not sure if the same with happen with any pattern. This may be an issue.
As time permits, I plan to move the methods to another module and probably add a few test so that things are made robust. Hopefully to avoid the above kind of things to a given extent.


RuntimeError: The size of tensor a (241) must match the size of tensor b (240) at non-singleton dimension 3

RuntimeError: The size of tensor a (241) must match the size of tensor b (240) at non-singleton dimension 3
I get this error when I try to run eval.py.
Does anyone get this error as well and know how to fix it?
Thanks!

I got the same error


Carla 0.9.x Apollo bridge

Hi everyone.
Is your feature request related to a problem? Please describe.
There is missing connection to Carla simulator or documentation how to do it.
Describe the solution you'd like
I would like to connect Carla with Baidu Apollo project. Solution which can use Carla ROS bridge (https://github.com/carla-simulator/ros-bridge).
Describe alternatives you've considered
There used to be some kind of bridge for older version of Carla from nemodrive (https://nemodrive-docs.readthedocs.io/projects/nemodrive-apollo/en/latest/index.html) but even this one didn't work perfectly.
Thank you

Hi @volprjir , can you tell us the version of Apollo you used?
From Apollo 3.5.0, we have changed the dependency from ApolloROS To CyberRT.
So, the ros-bridge may not work for CyberRT.
Thank you!

Hi @gruminions, to be honest, I'm not sure how to find out the version as when I click on Check Version button in Dreamview I get apolloauto/apollo:dev-x86_64-20180906_2002. But I used this repo:
https://github.com/nemodrive/apollo
I also tried to use official repo, but I'm not able to use the bridge there. Now I understand why as you mentioned CyberRT. Anyway, can you please help me how to connect the simulator with the last Apollo version, please?
Thank you

@gruminions: I'm currently in touch with person from Carla development team and he will support this connection from their side. Can you please let me know where can I find some kind of expected data format or data types so we can map Carla data to Apollo? Thank you

@gruminions: I'm currently in touch with person from Carla development team and he will support this connection from their side. Can you please let me know where can I find some kind of expected data format or data types so we can map Carla data to Apollo? Thank you

Hi, maybe you can refer to rosbag_to_record, a tool for converting data from rosbag to record.
You can know the format of most of the data from this tool.

Is there any similar command line tool to rostopic for CyberRT?

@volprjir Hi, you can check LGSVL simulator which already supports connecting with Apollo 3.5. You can see the demo here. You can try it with their Apollo 3.5 fork.

Ok, now I know that I can use cyber_monitor for listening data. If I combine this tool with cyber Apollo demo I can se channels and messages. I'm wondering how can I send data to this connection with python script. How should I start?

@gruminions Is it possible to run two separate containers of 3.5 version on one computer for testing purposes? I suceeded to change ports, but it seems that both containers are still somehow connected, so if I run bootstrap.sh in one container, it tries to run bootstrap.sh in second container too (which fails)

@luqiang21 Thank you for the link. I'm able to send speed or percentage of steering wheel by python script from the apollo docker . I'm just trying to run this script out of docker so I'm able to sed the commands from Carla. Can you please help me with that?

@volprjir To send commands from outside docker, maybe you need to compile cyber outside which will be complicated. I don't have successful experience on this.

@volprjir
I have run a python example outside of apollo docker. I run a script outside the docker:
python cyber/python/examples/listener.py

then start a talker inside the docker:
python cyber/python/examples/talker.py

I can success get connected but I receive this error below:
WARNING: Logging before InitGoogleLogging() is written to STDERR
I0423 11:29:35.165530 24978 global_data.cc:153] [cyber_py] host ip: <IP_ADDRESS>
========================================================================================================================
E0423 11:29:35.766544 25002 segment.cc:233] [cyber_py] get shm failed.
E0423 11:29:35.766624 25002 segment.cc:85] [cyber_py] init failed, can't read now.
E0423 11:29:36.767777 25002 segment.cc:233] [cyber_py] get shm failed.
E0423 11:29:36.767860 25002 segment.cc:85] [cyber_py] init failed, can't read now.
E0423 11:29:37.769208 25002 segment.cc:233] [cyber_py] get shm failed.
E0423 11:29:37.769312 25002 segment.cc:85] [cyber_py] init failed, can't read now.
E0423 11:29:38.770581 25002 segment.cc:233] [cyber_py] get shm failed.
E0423 11:29:38.770668 25002 segment.cc:85] [cyber_py] init failed, can't read now.

I will try to solve it and try again.

Could we summarize the options to connect Apollo to Carla?

Cyber Python API (examples)
LGSVL Bridge

Is there any other option?

[Cyber C++ API]  +  [Carla C++ API]

@gruminions We decided to start with the bridge with Apollo 3.0. So we have a script which passes data from CARLA simulator to Apollo. There are speed, brake, throttle. GPS, Velodyne64 and Camera L modules are shinning green. Although we are not able to let Apollo drive car in CARLA. I'm pretty sure, there is a problem that CAN module is in UNKNOWN state. If I try to run Localization module, I'll get this in data/log/localization.out
E0502 13:22:14.038951 5268 msf_localization.cc:152] map: /apollo/modules/map/data/demo/local_map E0502 13:22:14.039369 5268 msf_localization.cc:153] lidar_extrin: modules/localization/msf/params/velodyne_params/velodyne64_novatel_extrinsics_example.yaml E0502 13:22:14.039381 5268 msf_localization.cc:154] lidar_height: modules/localization/msf/params/velodyne_params/velodyne64_height.yaml E0502 13:22:14.040738 5268 msf_localization.cc:221] Ant imu lever arm file: modules/localization/msf/params/gnss_params/ant_imu_leverarm.yaml F0502 13:22:14.044245 5268 localization_lidar.cc:58] Reflectance map folder is invalid!  Check failure stack trace: [ WARN] [1556796132.973815682]: transport file: /home/tmp/ros/etc/ros/transport_mode.yaml is not map [ WARN] [1556796132.973893887]: Parse transport_mode file failed
and for perception this:
[NVBLAS] NVBLAS_CONFIG_FILE environment variable is NOT set : relying on default config filename 'nvblas.conf'
[NVBLAS] Cannot open default config file 'nvblas.conf'
[NVBLAS] Config parsed
[NVBLAS] CPU Blas library need to be provided
F0502 13:23:18.427935  9710 syncedmem.hpp:18] Check failed: error == cudaSuccess (38 vs. 0)  no CUDA-capable device is detected
Check failure stack trace:
[ WARN] [1556796197.326429606]: transport file: /home/tmp/ros/etc/ros/transport_mode.yaml is not map
[ WARN] [1556796197.326576369]: Parse transport_mode file failed
Can you please help us how to let Apollo drive?

Closed due to inactivity. If the problem persists, pls feel free to reopen it or create a new one and refer to it.


Copying of changlab_to_nwb code into this repo

@luiztauffer  I see that on the htk_loader branch, some of the code that I gave you guys is copied in here. Some of that might be confusing because a lot of it is outdated or is specific to our private changlab_to_nwb repo (so it's code that won't even run).
For example, ecogvis.functions.tdt_to_nwb.chang2nwb hosts a lot of outdated code but also the updated electrodes table function. I think it would be best to remove everything that is not being used and create a specific file to contain functions that are being used like elecs_to_electrode_table.

Hi @jrliu95, I was refraining from removing anything that wasn't being substituted by my own version, since I don't know how much of that you guys might end up using in the future, so I thought of leaving as reference
But I agree with you, all that unused code might confuse more than help.
I'll clean it up

much cleaner now!

Looks much better, thanks!


[Example] Update performance table of M2 Max, the previous scores did…

…n't enable the Metal framework

Hello, I am a code review bot on flows.network.
It could take a few minutes for me to analyze this PR. Relax, grab a cup of coffee and check back later. Thanks!


Error thrown when switching from SAFE_MODE to NORMAL manager state

Describe the bug
While testing the changes for #3711 I was using accumulo org.apache.accumulo.manager.state.SetGoalState. Every time I switch the goal state from SAFE_MODE to NORMAL the following shows up in the logs:
2023-08-22T13:30:51,611 [manager.EventCoordinator] INFO : State changed from NORMAL to SAFE_MODE
2023-08-22T13:30:51,744 [manager.EventCoordinator] INFO : [Normal Tablets]: 1 tablets are UNASSIGNED
2023-08-22T13:30:51,744 [manager.EventCoordinator] INFO : [Metadata Tablets]: 2 tablets are HOSTED
2023-08-22T13:31:11,805 [manager.EventCoordinator] INFO : State changed from SAFE_MODE to NORMAL
2023-08-22T13:31:11,805 [manager.Manager] ERROR: Error occurred reading / switching manager goal state. Will continue with attempt to update status
java.lang.IllegalStateException: Access to Fate should not have been initialized prior to the Manager finishing upgrades. Please save all logs and file a bug.
	at org.apache.accumulo.manager.Manager.setManagerState(Manager.java:310) ~[accumulo-manager-2.1.2-SNAPSHOT.jar:2.1.2-SNAPSHOT]
	at org.apache.accumulo.manager.Manager$StatusThread.run(Manager.java:767) ~[accumulo-manager-2.1.2-SNAPSHOT.jar:2.1.2-SNAPSHOT]
	at org.apache.accumulo.core.trace.TraceWrappedRunnable.run(TraceWrappedRunnable.java:52) ~[accumulo-core-2.1.2-SNAPSHOT.jar:2.1.2-SNAPSHOT]
	at java.lang.Thread.run(Thread.java:829) [?:?]

The goal state always seems to switch correctly. I'm not too sure whats going on here or if this is truly a bug but wanted to double check.
The error is thrown here:
https://github.com/apache/accumulo/blob/fcaf4d35a67089b60b87f19f7f1a32e1d74a75df/server/manager/src/main/java/org/apache/accumulo/manager/Manager.java#L308-L315
Versions (OS, Maven, Java, and others, as appropriate):

Affected version(s) of this project: 2.1.3-SNAPSHOT (fcaf4d35a67089b60b87f19f7f1a32e1d74a75df)

To Reproduce
Steps to reproduce the behavior (or a link to an example repository that reproduces the problem):

setup accumulo with uno
set the goal state to safe mode: accumulo org.apache.accumulo.manager.state.SetGoalState SAFE_MODE
set the goal state back to normal: accumulo org.apache.accumulo.manager.state.SetGoalState NORMAL

We attempted to fix a similar issue in #2990. I think maybe we skipped a spot. The code shouldn't be checking fateRef directly, but rather through the fate() method created in #2990, which blocks for a small period of time while we wait for the fate object to be ready. I'll open a PR for this.


Pcrypto error

Issue type
[ ] Feature request
[X] Bug report
[ ] Documentation
[ ] Housekeeping

Environment

Python version:  3.6
NetBox version:  actual 2.1.2. future 2.3.6

Description
Hi
i'm trying to upgrade Netbox from Python 2 to Python 3,
My Os is Centos 7.
Trying to do these steps.
https://netbox.readthedocs.io/en/latest/installation/migrating-to-python3/
i receive the error with pcrypto, and these projects is dead, reading informationg i trying to install pcryptodome, install succesfully.
The error
Command "/usr/bin/python3.6 -u -c "import setuptools, tokenize;file='/tmp/pip-install-78f0moc1/pycrypto/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-record-t0cce_nd/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-install-78f0moc1/pycrypto/
the pip3 freeze command output
asn1crypto==0.24.0
bcrypt==3.1.4
certifi==2018.4.16
cffi==1.11.5
chardet==3.0.4
coreapi==2.3.3
coreschema==0.0.4
cryptography==2.3
Django==2.0.7
django-cors-headers==2.4.0
django-debug-toolbar==1.9.1
django-filter==2.0.0
django-mptt==0.8.7
django-rest-swagger==2.2.0
django-tables2==1.21.2
djangorestframework==3.8.2
graphviz==0.8.4
gunicorn==19.8.1
idna==2.7
itypes==1.1.0
Jinja2==2.10
lxml==4.2.3
Markdown==2.6.11
MarkupSafe==1.0
natsort==5.3.3
ncclient==0.5.3
netaddr==0.7.18
openapi-codec==1.3.2
paramiko==2.4.1
Pillow==5.2.0
psycopg2==2.7.5
py-gfm==0.1.3
pyasn1==0.4.3
pycparser==2.18
pycryptodome==3.6.4
PyNaCl==1.2.1
pytz==2018.5
requests==2.19.1
simplejson==3.16.0
six==1.11.0
sqlparse==0.2.4
uritemplate==3.0.0
urllib3==1.23
I read the #1819 article.
Tries  to remove and install again pcryptodome and execute again
pip3 install -r requirements.txt
with same error
Any idea??

Ok forget it's an error from my side, the requirements.txt appear the name of the pycrypto package.
replace for pycryptodome and works fine.


Laravel Testing: Storage fake "Maximum function nesting level of '256' reached, aborting"

Laravel Version: 8.x
PHP Version: 7.4.11
Database Driver & Version: MariaDB 10.5.6

Description:
I have written a few tests for my own project but I am facing a strange error... My test should test if a image passes the validation rules, gets uploaded and really exists under the given path. For that I am mocking my storing as described in the docs with Storage::fake.
Also, I am using this technique to mock the Storage::fake path for the spatie media library which I am using.
This is my test:
/** @test */
public function a_logged_in_user_deletes_his_avatar_passes_fake_storage()
{
    $fake_storage_disk = 'users';
    Storage::fake($fake_storage_disk);

    config()->set('filesystems.disks.userFiles', [
        'driver' => 'local',
        'root' => Storage::disk($fake_storage_disk)->getAdapter()->getPathPrefix(),
    ]);

    $user = User::factory()->create();
    $this->actingAs($user);

    $filename = Str::random(20) . '.jpg';
    $file = UploadedFile::fake()->image($filename, 200, 200);

    $response = $this->json('POST', route('user.avatar.update', $user->name), [
        'avatar' => $file
    ]);

    $response->assertStatus(302);
    $this->assertTrue(Storage::disk($fake_storage_disk)->exists($user->id . '/' . $filename));

    $response = $this->json('POST', route('user.avatar.delete', $user->name), [
        'value' => 1
    ]);

    $response->assertStatus(302);
}

Here now comes the problems:

When running this tests (or even all tests where I test if I can upload an image and it exist) in row, it works like a charm. No problem at all!

When running ALL my tests, I get the problem that $this->assertTrue(Storage::disk($fake_storage_disk)->exists($user->id . '/' . $filename)); fails because it is saying Unable to assert that false is true. This actually means, the file doens't exists.

However, when I am trying to dd(Storage::disk($fake_storage_disk)->exists($user->id . '/' . $filename)) to check where the problem is I get this error:

Tests\Feature\User\LoggedIn\DeleteAvatar\UserTest::a_logged_in_user_deletes_his_avatar_fails_required_fake_storage
Error: Maximum function nesting level of '256' reached, aborting!

/Users/jantrier/Desktop/Programmieren/MyWebsiteProject/vendor/facade/ignition/src/DumpRecorder/MultiDumpHandler.php:13

/Users/jantrier/Desktop/Programmieren/MyWebsiteProject/vendor/facade/ignition/src/DumpRecorder/DumpRecorder.php:34

/Users/jantrier/Desktop/Programmieren/MyWebsiteProject/vendor/facade/ignition/src/DumpRecorder/MultiDumpHandler.php:13

[Repeats 256 times]

/Users/jantrier/Desktop/Programmieren/MyWebsiteProject/vendor/facade/ignition/src/DumpRecorder/DumpRecorder.php:34

/Users/jantrier/Desktop/Programmieren/MyWebsiteProject/vendor/symfony/var-dumper/VarDumper.php:50

/Users/jantrier/Desktop/Programmieren/MyWebsiteProject/vendor/symfony/var-dumper/Resources/functions/dump.php:38

/Users/jantrier/Desktop/Programmieren/MyWebsiteProject/tests/Feature/User/LoggedIn/DeleteAvatar/UserTest.php:52

What also confuses me is why he is throwing this error in this line $this->assertTrue(Storage::disk($fake_storage_disk)->exists($user->id . '/' . $filename)); and not at the beginning when initializing Storage::fake. However, I get the same error when trying to dd(..) the Storage::fake...
Any ideas on how to solve this or where the problem is? Also, why the heck does it work when running it as a single test and also with other uploading tests but when running it with ALL other tests I have it fails?
Kind regards and thank you!
Steps To Reproduce:
Take my test code

I'm not sure if infinite recursion or happening or you just have a really big call stack.
But, another question that comes to mind is why is $fake_storage_disk users while your call to config is updating a userFiles disk?

Closing pending inactivity. Feel free to reopen.


stripBom.stream is not a function

C:\Users\source\repos\SinglePageApplicationCoreSample\SinglePageApplicationCoreSample\node_modules\vinyl-fs\lib\src\getContents\streamFile.js:8
.pipe(stripBom.stream());
^
TypeError: stripBom.stream is not a function
at streamFile (C:\Users\source\repos\SinglePageApplicationCoreSample\SinglePageApplicationCoreSample\node_modules\vinyl-fs\lib\src\getContents\streamFile.js:8:20)
at WriteStream. (C:\Users\source\repos\SinglePageApplicationCoreSample\SinglePageApplicationCoreSample\node_modules\vinyl-fs\lib\dest\writeContents\writeStream.js:16:5)
at WriteStream.g (events.js:260:16)
at emitNone (events.js:72:20)
at WriteStream.emit (events.js:166:7)
at finishMaybe (_stream_writable.js:468:14)
at afterWrite (_stream_writable.js:347:3)
at onwrite (_stream_writable.js:337:7)
at WritableState.onwrite (_stream_writable.js:89:5)
at fs.js:1990:5
at FSReqWrap.wrapper [as oncomplete] (fs.js:1957:5)
Process terminated with code 1.

This looks like a dependency resolution issue. Your gulp is using<EMAIL_ADDRESS>and strip-dom@latest doesn't seem to have a stripBom.stream method. Try the following:
# Wipe and re-install node modules
rm -r node_modules
npm install

If that doesn't fix the issue, then I'll need to know your version of node, npm, gulp, vinyl-fs, gulp.spritesmith, and strip-bom (though this is unrelated to the issue)
Closing eagerly as I think wiping/reinstalling node_modules should resolve the issue

vinyl-fs version 3.0.2

Did you read that after you reinstall the node_modules? If so, then the issue is probably fixed
<EMAIL_ADDRESS>doesn't have the file lib/src/getContents/streamFile.js referenced in the stack trace:
https://github.com/gulpjs/vinyl-fs/tree/v3.0.2/lib/src

Is the error message exactly the same as the one you pasted? And how did you resolve the package versions? npm ls?

It is working now.. due to the old version of vinyl-fs used in local project.
thanks @twolfson  for your help (Y)

Great! Glad to hear everything is fixed =)


Custom server documentation for v2.x

I am using dnscrypt-wrapper v0.4.0 to run my own server on Debian. I'm having trouble figuring out how to connect to it using dnscrypt-proxy v2.0.4.
The documentation explains how to use public resolvers. I read https://github.com/jedisct1/dnscrypt-proxy/wiki/How-to-setup-your-own-DNSCrypt-server-in-less-than-10-minutes but those directions give me the following error:
[FATAL] Unsupported key in configuration file: [servers]

I tried providing the stamp string in various other ways in the configuration to no avail. How can I connect to just one custom server?

Add your stamp here
## Optional, local, static list of additional servers
## Mostly useful for testing your own servers.

[static]

# [static.'google']
# stamp = 'sdns://AgUAAAAAAAAAACDyXGrcc5eNecJ8nomJCJ-q6eCLTEn6bHic0hWGUwYQaA5kbnMuZ29vZ2xlLmNvbQ0vZXhwZXJpbWVudGFs'

Change [static.'google'] to a name you would like to use then add it too # server_names = ['scaleway-fr', 'google', 'yandex']
Don't forget to remove the leading #

I did that. Now it appears to be trying to connect to my server on port 443, but the service is hosted on port 5353. How do I specify which port to use?

The port number is encoded in the stamp.
You can use https://stamps.dnscrypt.info to adjust it. Paste the old stamp, add :5353 to the host name, and copy the new stamp.

Can I adjust the stamp locally like so, without submitting information about my resolver to a third party?

Yes, of course!
And actually, https://stamps.dnscrypt.info doesn't submit anything, it's computed locally in javascript by your browser.


Update name (WinUI 3 Controls Gallery --> WinUI 3 Gallery)

Description

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Changing the title of the application is a good idea, but we should keep the directory structure consistent between the two versions (WinUI 2 and WinUI 3) to facilitate cherry-picks and looking at differences. Let's see how we can minimize the differences between the two branches.

Changing the title of the application is a good idea, but we should keep the directory structure consistent between the two versions (WinUI 2 and WinUI 3) to facilitate cherry-picks and looking at differences. Let's see how we can minimize the differences between the two branches.

@bpulliam I just updated the main folder name to "WinUIGallery" for both the WinUI 2 and the WinUI 3 Gallery. Let me know what you think!

Out of curiosity, is there a good reason to have a WinUI 3 and a WinUI 2 branch? If I were to fix a bug, I think it would be easier for me if I can make one pull request that targets both the WinUI 3 and WinUI 2 version at the same time. What do you think @gregwoo-microsoft and @bpulliam ?

That's a great point and we once considered that option but there were 2 main drawbacks to doing this:

The main branch would take up 2x more space (as both WinUI Galleries would be there)
We are increasingly focused on developing the WinAppSDK so having the WinUI 3 Gallery in the main branch better reflects our current focus & investments

Let me know what you think!

That's a great point and we once considered that option but there were 2 main drawbacks to doing this:

The main branch would take up 2x more space (as both WinUI Galleries would be there)
We are increasingly focused on developing the WinAppSDK so having the WinUI 3 Gallery in the main branch better reflects our current focus & investments

Let me know what you think!

Thank you for the insights, that makes sense. Given those drawbacks, I think naming the both the same and keeping them on separate branches is a good way to move forward here!

Closing this as it is a copy


rebuild.sh complains about needing --module-dir

Attempting to build on Ubuntu 18.04, when it got to the the vendor/rebuild.sh, it gave an error to the extent of electron-rebuild not knowing where node_modules was and suggesting to specify it with --module-dir.
Was able to get it to work successfully by modifying the line to read
.bin/electron-rebuild -f -e=electron --module-dir ..

Closing out as it is a development workflow thing rather than an actual issue with the app


Unit test case for ocmp_ina226

Summary
Unit test case for ocmp_ina226
Valid configuration has been taken from the /ec/platform/oc-sdr/cfg/OC_CONNECT_GBC.c, /ec/platform/oc-sdr/cfg/OC_CONNECT_SDR.c and /ec/platform/oc-sdr/cfg/OC_CONNECT_RF.c   for the test cases.
Test Plan
Run Unit Tests (make clean test) and verify that all tests pass including new test cases.
Run firmware build and verify no error is reported.
Issues
#85

Logs:
ocmp_ina226_logs.docx


Ros2 Humble runtime error with real hardware

Hi,
I am trying to launch the ur robot driver with an ur10e on real hardware and I get a runtime error.
I attach a screenshot in which you can see the command and the error.

Ubuntu 22.04
ROS Humble
UR10e

This looks like you are running into #677 and you don't have an up-to-date system. Could you try updating your system and try again?

I already updated my system but still I get the same error.

No need to compile ros2_control from source.
What is the output of apt list ros-humble-ur-client-library ros-humble-ur-robot-driver ros-humble-controller-manager?

Ur robot driver and ur client library are installed from source.
ur-robot-driver: commit f7b880249161a21cc4906ae6ca56aa6a19fa7c15 (HEAD -> humble, tag: 2.2.8, origin/humble)
ur-client-library: commit 2e69bc165da0ad22fe9a1a3417e7eaa4b082ebac (HEAD -> master, origin/master, origin/HEAD)
ros-humble-controller-manager: /jammy,now 2.28.0-1jammy.20230626.183643 amd64 [installed]

Did you try rebuilding from scratch / using the binary installed packages? Because, this really should not be an issue anymore.

I found out the problem. If the client library is compiled and installed outside of the colcon workspace and in a local directory , I get the error. If I clone it inside the ros2 workspace and compile it with colcon, the problem is solved.

Then I'll go ahead and close this. Feel free to comment / reopen.


Allow BuildPack to use a custom template in .render()

Proposed change
Currently the base template is defined as a global and used by name in BasePack.render(). As such, there's no easy way of modifying it without duplicating a lot of code. I'd like to propose a modification to BasePack.render() or BasePack class so that it can be instantiated with an arbitrary template.
Alternative options
Any implementation of the proposal will be a noop for repo2docker, as it will be still using the same template.
Who would use this feature?
Anyone wanting to slightly modify the basic template, or anyone wanting to reuse the logic from BasePack.render() on their custom template.
How much effort will adding it take?
It should be a fairly straight forward to change current behavior of BuildPack to initialize it with template as an attribute or pass template to .render() as arg/kwarg.
Who can do this work?
I'll provide PR upon reaching consensus.
Example implementation
diff --git a/repo2docker/buildpacks/base.py b/repo2docker/buildpacks/base.py
index 89c31d5..b79cae7 100644
--- a/repo2docker/buildpacks/base.py
+++ b/repo2docker/buildpacks/base.py
@@ -200,6 +200,8 @@ class BuildPack:
         self.log = logging.getLogger('repo2docker')
         self.appendix = ''
         self.labels = {}
+        self.template = TEMPLATE
+        self.entrypoint_file = ENTRYPOINT_FILE
         if sys.platform.startswith('win'):
             self.log.warning("Windows environment detected. Note that Windows "
                              "support is experimental in repo2docker.")
@@ -453,7 +455,7 @@ class BuildPack:
         """
         Render BuildPack into Dockerfile
         """
-        t = jinja2.Template(TEMPLATE)
+        t = jinja2.Template(self.template)

         build_script_directives = []
         last_user = 'root'
@@ -554,7 +556,7 @@ class BuildPack:
             dest_path, src_path = self.generate_build_context_filename(src)
             tar.add(src_path, dest_path, filter=_filter_tar)

-        tar.add(ENTRYPOINT_FILE, "repo2docker-entrypoint", filter=_filter_tar)
+        tar.add(self.entrypoint_file, "repo2docker-entrypoint", filter=_filter_tar)

         tar.add('.', 'src/', filter=_filter_tar)

Sounds good. I think you should make these be traitlets, rather than just instance variables. Otherwise +1