:memo: Minor typo and style

fix typos
more consistent grammar and style (final period, fix default)
adjust some wording

I noticed we're inconsistent between imperative and third person, but I haven't addressed as I don't know which form we want to use.

these are anvil help messages, if you want you could reapply the changes here as well:
https://github.com/foundry-rs/foundry/blob/5494c33bc7977b3537bd296e375431d938d44ca3/crates/anvil/src/cmd.rs#L31-L31

I just made the follow fixes, but they're tiny, let me know if I've missed anything
https://github.com/foundry-rs/foundry/pull/8029


css optimization skipped for single module builds

When using r.js to optimize a single module using the name and out options, require-css doesn't do css optimization.
The compress(css) function in css-builder.js checks for optimizeCss and skips optimization if that's set to 'none'.  However, r.js will overwrite optimizeCss with 'none' if an out option was specified with no cssIn option, with the reasoning that if you're doing a single module and it's not a css file then do no css optimization. That logic is great for normal r.js behavior, but for require-css it's likely that single js module you're optimizing contains some css you'd like to optimize as well.
Perhaps we need a different option to check instead of the existing r.js optimizeCss option since r.js does some strange logic with that one?  And if that's the case, how is that married with the existing check on optimizeCss since presumably people are relying on that option being checked?

Hi @guybedford I am facing this exact issue. Will the merge happen soon?

Is there a workaround for this? I am being bit by this issue

Me as well

I've recently joined to this module maintainer, and I reviewed this issue and dedicated PR. I kinda have some doubts, but still, I will research the problem deeper these days.
@darrenng-dpodium , @dingus9 , @Txabs  if you have some new ideas in this area, keep us posted.


Refactor runtime to avoid stack limits

Currently, the runtime blows the stack when processing large files. This is because the stack limits in browsers are relatively low:

https://stackoverflow.com/questions/7826992/browser-javascript-stack-size-limit

Note this doesn't occur directly on file read, but e.g., checking that a large list is a value blows the stack since it maintains 1 stack frame per element. We'll need to figure out how to (minimally?) refactor the runtime to enable large file processing or give up on it altogether. Explicit TCO is available:

https://github.com/glathoud/fext

But the problem spots may not be TCOable. We would have to then resort to making that code imperative which may open up a whole can of worms...

Note: the problem still occurs on Node, so it is a general stack blown-up issue rather than just a browser-specific issue.

(And to be clear, most languages won't allow stack blow-up of this magnitude. Python dies trying to naively count the lines of a 24k line file recursively.)

This problem doesn't in occur in Racket because they have implementation tricks to avoid a limited stack size:

https://stackoverflow.com/questions/49912204/why-there-is-no-such-thing-as-stack-overflow-in-racket

Of note, it seems like the strategy of making the runtime use "deep recursion" via explicit stacks and iteration might be the winner after all.


Issues for Android about replacing gzip using zstd

Hi
I am attempting to use zstd in Android App to replace gzip.In Android,use zstd dictionary to uncompress data which is compressed in backend server.After serveral tests,i found that zstd dictionary uncompress slower than gzip.Gzip cost about 6ms but Zstd dictionary cost about 33ms.
Is the test result reasonable？Zstd dictionary uncompress slower than gzip？
I found some body run into the same question(https://github.com/facebook/zstd/issues/501).  Terrelln tried to run a build optimized with -0s and got decompressed faster than before. Shall we provide an android arr package which is built optimized with -0s ？

Hmm, I was relying on the default optimization done by the NDK build, which is -O2. I think it's worth trying optimizing for size. I have just pushed a build change for it and will release it today so you can try.

v1.5.0-4 has the optimized for size Android build. Can you try it?

v1.5.0-4 has the optimized for size Android build. Can you try it?

Wonderful,i will try it in my app compared with the older version. The optimized result will feed back later.

v1.5.0-4 has the optimized for size Android build. Can you try it?

We'v tried in Android. No optimized for uncompressing data in android devices.

Hmm, strange, I have no idea what is the issue and how it can be better optimized.


Using board_config.h to define components and buses

Consider using board_config.h to define components and buses

For example code the says
#if defined(CONFIG_ARCH_BOARD_XXXXX) becomes #if defined(HAVE_MPU6500)
see https://github.com/PX4/Firmware/blob/master/src/drivers/drv_sensor.h#L75

Use the same mechanism that is afforded by xxx_timer_config.c to define io resets in fmu.cpp and IO defines .

@LorenzMeier - here is the issue and the wip
See master_micro_hal_device Wip - DO NOT MERGE https://github.com/PX4/Firmware/pull/4641
There are #defines of  PX4_I2C_OBDEV_{HMC5883} in board_configs.h that do not have that device on board but need the driver.
A board has a bus {spi|i2c}, a device is i2c and/or spi but it is wired to only one bus one way.
It can be on board or off board
For i2c the address is either the default - or there are strapping option and it can be strapped to an address.
So if a device is on board it is tied to one of the i2c or spi buses.
I think - if it is on i2c and has address strapping options pins that are strapped to the non defailt, then the board_config shoud define the stapped address:
PX4_I2C_OBDEV_HMC5883_ADDRESS the driver should use the device default address if none is provided by the board_config.h.
Then the i2c drivers should:
For PX4_I2C_BUS_EXPANSION and the default address or the cmd line options to select the address.
For PX4_I2C_BUS_ONBOARD if PX4_I2C_OBDEV_HMC5883_ADDRESS is not defined, then use the device default address.
for SPI device
Define and an entry based on definition of PX4_SPIDEV_{HMC} and probe for it

Update?

@dagar - No I need time or help to implement.

Hey, this issue has been closed because the label status/STALE is set and there were no updates for 30 days. Feel free to reopen this issue if you deem it appropriate.
(This is an automated comment from GitMate.io.)


Add a 3D suffix to relevant physics profiler categories

2D physics categories already had a 2D suffix: "Physics 2D"
See https://github.com/godotengine/godot-proposals/issues/2045.

Thanks!

Cherry-picked for 3.5.


fix(client): fix(client): translateNetworkFailure fails with NPE when no route to host

This one-liner change prevents a null pointer exception when host name resolution has failed. This can happen, e.g. when the phone has been left into flight mode, or when the network access has failed.
This bug was particularly nasty, as it prevented the normal error handling mechanism to operate (e.g. no OperationException would not be created).
Breaking changes

No breaking changes

Fixes / Enhancements

Fixed translateNetworkFailure() method to not throw an error because of accessing null address at "failure.address.host"

Docs

None added/updated

Can you rebase your branch against the latest beta and also make sure you sign your requests.

:tada: This PR is included in version 3.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add a shopping list to the application

Comprises a(n)

predefined item list, box for quantity and and 'add' button
Item list with quantity and 'increase / decrease' buttons and a check box
Check-out button


feature: Add follow button to all user pages

This feature will allow folks to save contributor repos. This feature should be available to logged in users and force login when clicked.
Things needed

API needs to be update to include follow on user table and a list of hearted users.
The button should turn to unfollow when clicked.

cc @pixelsbyeryc
https://www.figma.com/file/OpVX6WT7dmWqnwRuEvADMF/OpenSauced-—-Insights-(insights.opensauced.pizza)?node-id=5204%3A6170&t=T8av4JLONEnmJyCa-0

update: Instead of the "heart button," that was previously scoped, we are making this a follow button.

@bdougie, Should this completely replace the View on Github button?

Yes. View on GitHub was the compromise to put a button there.


Move SSR body template into DI system

The SSR body template is tightly coupled with the build system (fusion-cli) but this code lives in fusion-core. Moving the SSR body template into the DI system will allow fusion-cli to register its own SSR body template (ensuring it is always the correct code). This change also makes fusion-core and fusion-cli properly decoupled as presumably an alternative build system could register its own template as well.

!merge


neurips loader update

Many thanks for contributing to sfaira!
PR Checklist
Please fill in the appropriate checklist below (delete whatever is not relevant). These are the most common things requested on pull requests (PRs).

[X] This comment contains a description of changes (with reason)

Description of changes
Update of neurips data loader
Technical details
Both downloaded files contain multimodal data (multiome and cite), see feature types to subset
Additional context
Related discussion: https://github.com/theislab/sfaira/pull/439

Thanks @xlancelottx, this looks great! You'll need to run sfaira annotate once more on this data set to get meta data maps (tsv files) for ethnicity and sex as these meta data were newly added in this submission, you can leave the remaining tsvs as they are. Can you try that please?


using yeoman generator on this stack?

Hi,
Does yeoman auto generator work with your stack?
Or how do I configure (downgrade if required) to get it to work? generating new controllers, models, routes, views, .. automatically by copying user and article patterns.
Thanks

Hi @zenithtekla,
Greetings. A yeoman generator is on the roadmap but just not prepared yet. It looks like you'll have to manually base your project on mean-stack-relational.
Thanks


Is the Proxy Scenaio really unsupported by Data Source other than SQL Server and Azure Sources?

Hi Team,
I see the description that proxy scenario is not supported by data sources other than SQL Server and Azure Sources.
https://learn.microsoft.com/en-us/azure/purview/manage-integration-runtimes#proxy-server-considerations

But when I test this scenario with very basic configuration like below, scan succeeded.
Is this scenario really officialy unsuported? or unsupported for specifc conditions?
Kindly update the docs if it's now officially supported. Thank you in advance!

Below is detail:
1, setup proxy on Azure VM (using software squid on Ubuntu)
2, Configure SHIR using Proxy.

Connection test was also successfull.

3, Configure Purview Scan using SHIR.

4, Scan Completed Successfully.

5, Checked SHIR log and confirmed proxy was used for the scan.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 9e632aab-071d-60ae-748f-458c6e8715b1
Version Independent ID: 9089b4ae-3818-dcfb-f5e7-9118516bb167
Content: Create and manage Integration Runtimes - Microsoft Purview
Content Source: articles/purview/manage-integration-runtimes.md
Service: purview
Sub-service: purview-data-map
GitHub Login: @linda33wj
Microsoft Alias: jingwang

@yutaro113 - It may be that the scan will run correctly but some classifications will not be correctly applied. However, I'm reaching out to the engineering team to confirm. Thank you!

@yutaro113
Thanks for your feedback! We will investigate and update as appropriate.

@whhender
Thanks for your response

@yutaro113
We appreciate you bringing this to our notice; our team has been working on it. When it is fixed, the document will show it.
We are going to close this thread. if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.

Hi @RamanathanChinnappan-MSFT , @whhender , @AjayBathini-MSFT ,
Thank you for the document update and when I checked the updated docs, the point discussed here seems not reflected.
Kindly confirm just in case....

・Scan for MySQL via Proxy seems to be done successfully as summarized in this issue description, but is it not officially supported yet?
・Scan Support for SQL Server seems to be deleted by this update but is it now really not supporeted?

@yutaro113 - I'm working with engineering to get a little more clarity here. Thanks for your patience.


Doc: test issue

💭 Description
test issue for auto-label
👀 Have you spent some time to check if this issue has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

/enhancement


Bill of materials for schematics folders

Have been following this repo for past month or so. Amazing work and thank you for the resource.
Would it be possible to add a BOM to each schematics folder? I'd like to ensure I'm ordering the proper SOT pieces for the ESP8266 D1 Wemos boards that I'm having printed for my home openers. I can find plenty of resistors but, frankly, don't know if I should be snagging 1/4W, 1/10W, etc.
A simple BOM to go with each latest schematic would go a long way to supporting those of us who know just enough to be dangerous...
Thanks!

Very delayed response here, but from the perspective of resistors we're talking very low power so 1/2 a watt or less is fine.


Unknown error with WebSocket.

Submitting bugs
Can't compile code
HTTP::Server.new("::", 3030,
	HTTP::WebSocketHandler.new do |test|
		ws = HTTP::WebSocket.new("::", "/")
		spawn do
			ws.run
		end
	end
).listen

Logs - https://gist.github.com/MrSorcus/8235111bf53e283388c3d6013804f08e
Crystal 0.23.1 (2017-11-07) LLVM 4.0.1

Not much we can go on there, looks like the ecr executable filed to run properly. Does this happen outside of nixos?

https://play.crystal-lang.org/#/r/32t6
I don't have other OS now. But play.crystal-lang.org doesn't compile that code too.

@MrSorcus yes but for a different and unrelated reason.

Works with CentOS 7.

Looks to me as if it's only going to be reproducible on nixos. Please could you try the same thing again on crystal master, it has some improvements to the logging when macro runs fail, so we should be able to get some more information on the error at least.

[nix-shell:/nix/store/0ks0jiih2ximvpp7phn3vlsw39bjj8py-source]$ .build/crystal --version
Crystal 0.23.1 (2017-11-13)

LLVM: 5.0.0
Default target: x86_64-unknown-linux-gnu

Look like that problem with nix derivation, not with crystal, because example code compiling fine.
Sorry for disturb.
Close issue?

We'll close for now, and reopen if it turns out to be our issue.


Allow jsx fragments not to be aligned

This is a feature request.
Allow opening and closing tags for jsx fragments not to be on the same columns while require other jsx elements to be aligned. The purpose is to allow jsx fragments to act as brackets because <> and </> are small enough and could be used as brackets.
This can be achieved by handling a parameter for react/jsx-closing-tag-location, which disables aligning of fragments, but leaves aligning for components.
Example:
Let's there is a component with one child:
const Component = ({
  ...props
}) => (
  <Child1>
    ...
  </Child1>
)

if now it's needed to add another child then it's needed to convert children to be a fragment:
const Component = ({
  ...props
}) => (
  <>
    <Child1>         <-- extra change in git diff
      ...            <-- extra change in git diff
    </Child1>        <-- extra change in git diff
    <Child2>
      ...
    </Child2>
  </>
)

and so Child1 should indented to the right and this leads to not needed extra changes in git diff. This could be eliminated if it would be allowed for fragments to behave like brackets and to allow them to be unaligned like this
const Component = ({
  ...props
}) => <>
  <Child1>         <-- marked as unchanged in git diff
    ...            <-- marked as unchanged in git diff
  </Child1>        <-- marked as unchanged in git diff
  <Child2>
    ...
  </Child2>
</>

There are other approaches, but they look not so good.

Leaving <> on its own line, but not indented:

const Component = ({
  ...props
}) =>
<>
  <Child1>
    ...
  </Child1>
  <Child2>
    ...
  </Child2>
</>

this also causes lint errors.

turn off the linter rule react/jsx-closing-tag-location. This leads to too unaligned code.

I don’t agree that fragment syntax should be treated the same as array brackets - the first example imo is the correct one.
It would add a lot of complexity to the rule to make alignment options be different for any arbitrary element, fragment syntax or not, and i don’t think it’s warranted.

@ljharb I believe this question is of the same kind of using semicolons, tabs/spaces and so on. For me it is worth to have less noise in git diff. For another human it is worth to see jsx to be aligned.
Personally I will be happy with partially solution if react/jsx-closing-tag-location will be true by default but can take a parameter to disable it for fragments.

I don’t think it’s the same - which indentation kind to alwsys use, or whether to always or never use semis, aren’t the same as “let’s treat this one jsx element type differently than all the others”.

Fragment syntax is nothing more than sugar for React.Fragment, so it absolutely shouldn’t be treated differently there.

I don't agree that it is nothing more than sugar.
React.Fragment is a very special type of a component. It looks like a component, but actually it is not a component. It is impossible to develop something that behaves like React.Fragment, it is a built-in feature of react. The only reason, why fragments can be represented with a pseudo-component React.Fragment is to provide compatibility with existent tools and to give some time for those tools to adopt to a shorthand syntax. Even possibility of using React.Fragment for key prop is just a trade-off for syntax simplicity and usability.

That’s an argument for both fragment syntax and React.Fragment to be treated differently than other elements (although that means the component is different, but in no way is the element different), but not an argument to treat fragment syntax differently than React.Fragment.

Also, you’re wrong; React.Fragment can be fully polyfilled in React 16.0 or 16.1, and even partially polyfilled in any React.

I don't think my arguments is about shorthand and React.Fragment. Eslint is about syntax and looking, and <React.Fragment... looks like a component, but <> does not.
Anyway it can be just a bug of my eyes, but I believe there exists bunch of people with the same feature in their vision system.
React 16.0 supports arrays AFAIK, it was already prepared to support fragments.
And I really cannot imagine the way fragments could be implemented in React 15. I had tried to do this several times)

You’d do it by wrapping them in a div, basically.
I understand the aesthetic argument - but i think fragment syntax looks much more like an element than like an opening array bracket.

Then you could do it with mutating the DOM directly and using document fragments ¯_(ツ)_/¯ there’s lots of ways, but it’s not really the point.


Auto resumption

What does this PR do?
Add support for autoresume with distributed training.
What issue(s) does this change relate to?
Fixes CO-1238
While fixing this issue, we discovered a race condition that is related to this, that is CO-1270
Manual testing
Manually tested a script that makes a trainer, trains it, makes another trainer with autoresume, and verifies that the params and run name are the same. This was tested on multiples gpus on one node.
Multi node does not currently work, but I also can't really test/debug it because of limited capacity on our cluster.
Before submitting

[x] Have you read the contributor guidelines?
[ ] Is this change a documentation change or typo fix? If so, skip the rest of this checklist.
[x] Was this change discussed/approved in a GitHub issue first? It is much more likely to be merged if so.
[x] Did you update any related docs and document your change?
[x] Did you update any related tests and add any new tests related to your change? (see testing)
[x] Did you run the tests locally to make sure they pass?
[x] Did you run pre-commit on your change? (see the pre-commit section of prerequisites)

@hanlint I changed the num_concurrent_uploads default to 1. I experimented a bit, and at least on the demo example, if you checkpoint enough to want multiple upload workers, you end up bottlenecked on network communication with s3 (streaming data in and sending checkpoints out). With 1 worker, you should only end up with an invalid symlink if the job dies between finishing uploading the checkpoint and uploading the symlink (which is tiny). This would be quite unlikely, and even this issue could be resolved by having save_overwrite=True when using autoresume.


fix(STONEINTG-185): update ServiceMonitor

Prometheus has changed to use the service ServiceMonitors. Updating config to provide secret correctly.

/test all


Determine where File Access Check should live

tracking issue for v1 release, related poll: https://github.com/ocsf/ocsf-schema/discussions/224

Staying in System Activity for now, requirement on actor_process has been lowered


[UI Bug] Preview Pane in sidebar - image not sized to screen

When downloading images, the preview pane in the sidebar causes the sidebar to redraw very fast, for a very visually displeasing manner.
I would suggest that the Preview Pane has its own drawing area where it is scaled to fit perfectly. The long list of option can have a scrolling area if height is not enough but the Preview Pane is on its own and can redraw without part of it going out of the screen, or redrawing the long list of options.

I hope the app would show tiny thumbs of blog content prior to downloading. With selection of latest or from beginning or.. :) etc :)


subcarrier.cc needs #include  for std::tie

To compile out of the box on my system, I need to add #include <tuple> to subcarrier.cc which provides std::tie().
subcarrier.cc: In member function ‘void redsea::Subcarrier::demodulateMoreBits()’:
subcarrier.cc:168:9: error: ‘tie’ is not a member of ‘std’
std::tie(is_clock,biphase) = biphase_decoder_.push(symbol);
^~~
(compiling with Archlinux's gcc-multilib 6.2.1-1, this package provides the c++ stl)

Thanks a lot! Fixed in dev branch now.


Add firebase example

Description
As a firebase user, i want an example with firebase functions. Following the guide at firebase official docs is not enough to make the app work correctly.

Contribution welcome.
Closing because it's not a feature request.


Questions about the high-availability registration method of k3s

hello!
My k3s version is 1.20.2. I used the following high-availability implementation to form a cluster of 3 master nodes, but I am a little curious, that is, there is only one server specified in the k3s-agent.service file on the worker node. When this server goes down, logically, the worker node should lose contact with the cluster. However, in fact, the worker node and other master nodes that are not his server can still maintain the normal cluster status. May I ask, in high When available, how does the worker node still work normally when its server is down?
https://rancher.com/docs/k3s/latest/en/installation/ha-embedded/

The recommendation from the "HA with external DB" page applies to embedded etcd as well - you should supply a "a fixed registration address that is placed in front of the server nodes to allow agent nodes to register with the cluster". This could be an external load-balancer, DNS alias, etc.
Note that this is only necessary to make registration of new nodes HA, or in case of a complete replacement of all server nodes. Agents use the server address to bootstrap their configuration, but once that is complete they cache a list of servers and load-balance connections between them internally. The list of servers is cached to disk and re-loaded on startup.

you should supply a "a fixed registration address..."

@brandond You mean when running k3s ... --server https://<the fixed registration address here?> right? I did this and my fixed registration is address is the one from one my cloud-native load balancer and now I wonder if this was the right place (since the load balancer just pipes :6443 traffic).
And when running kubectl get nodes -o wide I get the node public IPs in INTERNAL-IP and no EXTERNAL-IP. Shouldn't the INTERNAL-IP' show the private IPs of the nodes which are all in a private network?

The registration address is the endpoint that you point new servers and agents at via the --server CLI flag. Once nodes have joined the clusters, the communicate directly with the servers via their IP addresses.
The Internal and External IPs are determined by the cloud provider, or in the case of the build-in k3s cloud provider, the arguments given to the --node-ip and --node-external-ip CLI flags. If your cloud infrastructure  gives you multiple interfaces, some with private IPs and some with public, you may need to manually configure K3s to tell it what these IPs are as it cannot figure them out on its own.

Good info thx, ...

with just --node-ip <private IP of the host executing k3s server/installer> servers find each other
with both, the aforementioned flag and --node-external-ip <public IP of the host executing k3s server/or the installer> secondary servers hang at [INFO]  systemd: Starting k3s

But actually the cluster doesn't need to connect within the cluster with public IPs anyway, so this might be neglectable, or is there any reason to let them advertise also with public IPs?
FWIW, the --server registration address is the one of the external load balancer targeting the hosts via their private IPs on :6443.
FWIW2, IDK if this works on any Linux distro but what I did to automate the IP retrieval:
...
  --node-ip `hostname -I | sed -En 's/^\S+\s(\S+)\s.*/\1/p'` \
  --node-external-ip `hostname -I | sed -En 's/^(\S+)\s.*/\1/p'`

I found myself wondering the same question here.
It seems this is just for initial bootstrapping of nodes. Eg only at registration time, and once registered it will try any control planes it knows about when restarting/rebooting?.
So for most 'home' cases, if you have relatively static servers, it would be fine to specify the first one. As the you won't be dynamically provisioning many nodes there (physical devices are unlikely to spontaneously appear and join the cluster).
This would still be HA once 'installed'?.


[Proposal] Module should allow to export some values

A module can declare a list of exported value.
On timoni.cue we should able to declare exported value like
// Define how Timoni should build, validate and
// apply the Kubernetes resources.
timoni: {
	apiVersion: "v1alpha1"

	export: [ {url: "redis://\(instance.config.metadata.name).\(instance.config.metadata.namespace).svc.cluster.local:\(instance.config.port)"}]

Then we should able to re-use these variables on bundle file as =>
bundle: {
    apiVersion: "v1alpha1"
    name:       "podinfo"
    instances: {
        redis: {
            module: {
                url:     "oci://ghcr.io/stefanprodan/modules/redis"
                version: "7.2.3"
            }
            namespace: "podinfo"
            values: maxmemory: 256
        }
        podinfo: {
            module: url:     "oci://ghcr.io/stefanprodan/modules/podinfo"
            module: version: "6.5.4"
            namespace: "podinfo"
            values: caching: {
                enabled:  true
                redisURL: redis.url
            }
        }
    }
}

This is a nice alternative to the bundle runtime, especially when you don't actually need runtime data in many cases. If my module produces one or more Kubernetes secrets, for example, being able to export their names for other instances to use is helpful.
Given that the CLI is mostly just transpiling a given CUE output into YAML (that happens to produce valid Kubernetes manifests), it's plausible you could add another reserved output (i.e., export as shown above) that is ingested and made available when the bundle is being processed.
I would propose the outputs appear in their own namespace, like: redis.outputs.url. Otherwise, you'll have collisions (i.e., what happens when an output is named namespace).

+1 for this. Same use case with the secrets/configs.
Although I'll ask if it is possible to just fully introspect/unify on any value within Timoni module?
I think its still useful to have a declared and expected interface like outputs but it would probably be also useful to have read access to everything. I.e. only use the values for unification of the module, but then be able to view the already concretized values from bundles.


S3 Compatible (Aruba) - whitespace filename fail to copy with v2 Auth

What is the problem you are having with rclone?
rclone sync fail to copy on a S3 bucket when there are white spaces in filename or path
What is your rclone version (eg output from rclone -V)
rclone v1.42-065-gf9eb9c89β

os/arch: linux/amd64
go version: go1.10.1

Which OS you are using and how many bits (eg Windows 7, 64 bit)
Linux Ubuntu Server 18.04
Which cloud storage system are you using? (eg Google Drive)
Other S3 Compatible, (Aruba Object Storage, not compatible with v4 signature)
The command you were trying to run (eg rclone copy /tmp remote:tmp)
rclone sync --ignore-existing /home/administrator/fileserver Aruba:backup.fileserver/fileserver
A log from the command with the -vv flag (eg output from rclone -vv copy /tmp remote:tmp)
2018/08/03 15:54:06 DEBUG : rclone: Version "v1.42-065-gf9eb9c89β" starting with parameters ["rclone" "-vv" "sync" "--ignore-existing" "/home/administrator/fileserver" "Aruba:backup.fileserver/fileserver"]
2018/08/03 15:54:06 DEBUG : Using config file from "/home/administrator/.config/rclone/rclone.conf"
2018/08/03 15:54:06 DEBUG : Using v2 auth
2018/08/03 15:54:07 DEBUG : Condivisioni/.DS_Store: Destination exists, skipping
2018/08/03 15:54:37 ERROR : Condivisioni/ServerAmica/backup SQLserver 2000/IacpBilancio2005.bak: Failed to copy: SignatureDoesNotMatch:
status code: 403, request id: , host id:
2018/08/03 15:56:01 INFO  : Condivisioni/ServerAmica/ServerAmica01/Canon_dr_3080c/DriveScanner/aec6712u/Utility/RESDEV.DLL: Copied (new)

I see you are using the v2 auth - does Aruba work with v4 auth?  I recommend using that if you can.
The v2 auth doesn't get used much.
Can you send the failing transaction with -vv --dump bodies please?
If you are having problem making v4 auth, probably the top tip is to leave the region blank.

Sorry for the late answer.
Here's the requested transaction, I've also tried leaving the region blank but that doesn't resolve the issue :(
2018/08/20 13:56:26 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2018/08/20 13:56:26 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2018/08/20 13:56:26 DEBUG : HTTP REQUEST (req 0xc420283800)
2018/08/20 13:56:26 DEBUG : POST /backup.fileserver/fileserver/Condivisioni/cartellina%20fustellata%20piscinastore.it.eps?uploads= HTTP/1.1
Host: r1-it.storage.cloud.it
User-Agent: rclone/v1.42-065-gf9eb9c89β
Content-Length: 0
Authorization: XXXX
Content-Type: application/postscript
Date: Mon, 20 Aug 2018 13:56:26 UTC
X-Amz-Acl: private
X-Amz-Meta-Md5chksum: wqTz5XsBILlNgXsaJy6k5w==
X-Amz-Meta-Mtime:<PHONE_NUMBER>
Accept-Encoding: gzip
2018/08/20 13:56:26 DEBUG : >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2018/08/20 13:56:26 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2018/08/20 13:56:26 DEBUG : HTTP RESPONSE (req 0xc424ed0400)
2018/08/20 13:56:26 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2018/08/20 13:56:26 DEBUG : HTTP RESPONSE (req 0xc424ed0900)
2018/08/20 13:56:26 DEBUG : HTTP/1.1 403 Forbidden
Connection: close
Content-Length: 110
Cache-Control: no-cache
Content-Type: application/xml
Date: Mon, 20 Aug 2018 13:56:26 GMT
Server: RestServer/1.0

SignatureDoesNotMatch

2018/08/20 13:56:26 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2018/08/20 13:56:26 ERROR : Condivisioni/cartellina fustellata piscinastore.it copia.eps.zip: Failed to copy: SignatureDoesNotMatch:
status code: 403, request id: , host id:
2018/08/20 13:56:26 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2018/08/20 13:56:26 DEBUG : HTTP RESPONSE (req 0xc424ed1100)
2018/08/20 13:56:26 DEBUG : <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
2018/08/20 13:56:26 DEBUG : HTTP RESPONSE (req 0xc424ed1400)
2018/08/20 13:56:26 DEBUG : HTTP/1.1 200 OK
Connection: close
Content-Length: 1422
Cache-Control: no-cache
Content-Type: application/xml
Date: Mon, 20 Aug 2018 13:56:26 GMT
Server: RestServer/1.0

Did the v4 auth work for files without spaces in the file name?
If so I'm kind of inclined to say that this is a bug in Aruba's S3 implementation.  Rclone works with a lot of S3 providers (AWS, Digital Ocean, Wasabi, IBM, Dreamhost, Minio...) and none of them have this problem with spaces in the file name.  Also rclone uses the official maintained by AWS go SDK which presumably does the signature calculation correctly.
I'll sign up for a trial account and see if I can work out what is happening.

I can't even see the buckets list with v4 auth

The response indicates that v4 auth should work I think.
Are there any docs you can see?
Could you lend me access to your account?  I can't make the free trial work!

any development about it? I'm in the identical situation.

The response indicates that v4 auth should work I think.
I set two remotes, onewith v2 and one with v4
rclone lsd remote_v4: gives "Failed to lsd: AuthMethodNotRecognized"
The one with v2 syncs perfectly except for filenames or directories with spaces

test/test dir/filename -> Failed to copy: SignatureDoesNotMatch
test/testdir/file name -> Failed to copy: SignatureDoesNotMatch
test/testdir/filename -> All OK

I'm sorry, I couldn't keep on trying so I've opted for another solution

I managed to reproduce this with s3
$ echo "hello" | rclone rcat --s3-v2-auth "s3useast:rclone-test-useast/dir/file with space2.txt"
2018/10/09 11:35:23 ERROR : file with space2.txt: Failed to copy: SignatureDoesNotMatch: The request signature we calculated does not match the signature you provided. Check your key and signing method.
	status code: 403, request id: 882D8CA9669576BB, host id: hKslnqX02qB2tqgb3xh4HoXgdcy1o9vg28mkT3RuC0GqKZ05WIaYwrNNUBWXXvYnXfV+cm04Hgw=
2018/10/09 11:35:23 Failed to rcat: SignatureDoesNotMatch: The request signature we calculated does not match the signature you provided. Check your key and signing method.
	status code: 403, request id: 882D8CA9669576BB, host id: hKslnqX02qB2tqgb3xh4HoXgdcy1o9vg28mkT3RuC0GqKZ05WIaYwrNNUBWXXvYnXfV+cm04Hgw=

So it is a bug in the v2 signer...
I'll re-open this - @gianlucacuomo click unsubscribe if you dont wish to see notifications.

I fixed the v2 signer working with AWS - can you test it works with Aruba please?
https://beta.rclone.org/branch/v1.43-139-g87ef3cc6-fix-2438-s3-v2-sign-beta/ (uploaded in 15-30 mins)
Thanks

can you test it works with Aruba please?

Seems to work perfectly, but....why windows? :) cant' troubleshoot the right way on win
test/test dir/filename -> All OK
test/testdir/file name -> All OK
test/testdir/filename -> All OK

Thanks for testing  I've merged this to master now so it will be in the latest beta in 15 mins and in the 1.44 release.


esrally.exceptions.InvalidSyntax: 'index' or 'data-stream' is mandatory and is missing for operation 'search'

track.json：
{% import "rally.helpers" as rally with context %}
{
  "version": 2,
  "description": "Tracker-generated track for cme",
  "indices": [
    {
      "name": "pdf_v2",
      "body": "pdf_v2.json"
    },
    {
      "name": "zn_v2",
      "body": "zn_v2.json"
    }
  ],
  "corpora": [
    {
      "name": "pdf_v2",
      "documents": [
        {
          "target-index": "pdf_v2",
          "source-file": "pdf_v2-documents.json.bz2",
          "document-count": 36250,
          "compressed-bytes": 107243297,
          "uncompressed-bytes": 618147656
        }
      ]
    },
    {
      "name": "zn_v2",
      "documents": [
        {
          "target-index": "zn_v2",
          "source-file": "zn_v2-documents.json.bz2",
          "document-count": 1411125,
          "compressed-bytes": 733857315,
          "uncompressed-bytes":<PHONE_NUMBER>
        }
      ]
    }
  ],
  "schedule": [
    {
      "operation": "delete-index"
    },
    {
      "operation": {
        "operation-type": "create-index",
        "settings": {{index_settings | default({}) | tojson}}
      }
    },
    {
      "operation": {
        "operation-type": "cluster-health",
        "index": "pdf_v2,zn_v2",
        "request-params": {
          "wait_for_status": "{{cluster_health | default('green')}}",
          "wait_for_no_relocating_shards": "true"
        },
        "retry-until-success": true
      }
    },
    {
      "operation": {
        "operation-type": "bulk",
        "bulk-size": 5000
      },
      "warmup-time-period": 120,
      "clients": 8
    },
    {
      "operation": {
        "operation-type": "force-merge"
      }
    },
    {
      "operation": {
        "operation-type": "search",
        "body": {
          "query": {
            "match_all": {}
          }
        }
      },
      "clients": 8,
      "warmup-iterations": 1000,
      "iterations": 1000,
      "target-throughput": 100
    }
  ]
}

esrally version: 2.6.0
Invoked command:  srally race --track-path=/root/tracks/cme/  --pipeline=benchmark-only  --target-hosts=<IP_ADDRESS>:9200 --client-options="basic_auth_user:'elastic',basic_auth_password:'EC05E3BB626EBB7FB06052614C453ACF'"
Configuration file:
[meta]
config.version = 17
[system]
env.name = local
[node]
root.dir = /root/.rally/benchmarks
src.root.dir = /root/.rally/benchmarks/src
[source]
remote.repo.url = https://github.com/elastic/elasticsearch.git
elasticsearch.src.subdir = elasticsearch
[benchmarks]
local.dataset.cache = /root/.rally/benchmarks/data
[reporting]
datastore.type = in-memory
datastore.host =
datastore.port =
datastore.secure = False
datastore.user =
datastore.password =
[tracks]
default.url = https://github.com/elastic/rally-tracks
[teams]
default.url = https://github.com/elastic/rally-teams
[defaults]
preserve_benchmark_candidate = false
[distributions]
release.cache = true

JVM版本: 1.8.0_331
OS version:
NAME="CentOS Linux"
VERSION="7 (AltArch)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (AltArch)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7:server"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

Steps to reproduce

esrally create-track --track=cme --target-hosts=<IP_ADDRESS>:9200 --client-options="basic_auth_user:'elastic',basic_auth_password:'EC05E3BB626EBB7FB06052614C453ACF'" --indices="pdf_v2,zn_v2" --output-path=~/tracks
Modify the track.json file and add force merge and search
srally race --track-path=/root/tracks/cme/  --pipeline=benchmark-only  --target-hosts=<IP_ADDRESS>:9200 --client-options="basic_auth_user:'elastic',basic_auth_password:'EC05E3BB626EBB7FB06052614C453ACF'"

ERROR logs :
2022-09-25 04:49:39,777 ActorAddr-(T|:40853)/PID:30317 esrally.actor INFO Capabilities [{'coordinator': True, 'ip': '<IP_ADDRESS>', 'Convention Address.IPv4': '<IP_ADDRESS>:1900', 'Thespian ActorSystem Name': 'multiprocTCPBase', 'Thespian ActorSystem Version': 2, 'Thespian Watch Supported': True, 'Python Version': (3, 8, 6, 'final', 0), 'Thespian Generation': (3, 10), 'Thespian Version': '1664081379574'}] match requirements [{}].
2022-09-25 04:49:39,826 ActorAddr-(T|:45199)/PID:30316 esrally.metrics INFO Closing metrics store.
2022-09-25 04:49:39,780 ActorAddr-(T|:40853)/PID:30317 esrally.actor INFO Capabilities [{'coordinator': True, 'ip': '<IP_ADDRESS>', 'Convention Address.IPv4': '<IP_ADDRESS>:1900', 'Thespian ActorSystem Name': 'multiprocTCPBase', 'Thespian ActorSystem Version': 2, 'Thespian Watch Supported': True, 'Python Version': (3, 8, 6, 'final', 0), 'Thespian Generation': (3, 10), 'Thespian Version': '1664081379574'}] match requirements [{}].
2022-09-25 04:49:39,827 ActorAddr-(T|:37783)/PID:30314 esrally.actor INFO Received a benchmark failure from [ActorAddr-(T|:45199)] and will forward it now.
2022-09-25 04:49:39,829 -not-actor-/PID:30302 esrally.racecontrol ERROR A benchmark failure has occurred
2022-09-25 04:49:39,784 ActorAddr-(T|:40853)/PID:30317 esrally.actor INFO Transitioning from [Status.INITIALIZING] to [Status.PROCESSOR_RUNNING].
2022-09-25 04:49:39,829 -not-actor-/PID:30302 esrally.racecontrol INFO Telling benchmark actor to exit.
2022-09-25 04:49:39,807 ActorAddr-(T|:40853)/PID:30317 esrally.actor INFO Transitioning from [Status.PROCESSOR_COMPLETE] to [Status.PROCESSOR_RUNNING].
2022-09-25 04:49:39,821 ActorAddr-(T|:40853)/PID:30317 esrally.actor ERROR Error in track preparator
Traceback (most recent call last):

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/actor.py", line 92, in guard
    return f(self, msg, sender)

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/driver/driver.py", line 538, in receiveMsg_WorkerIdle
    self.transition_when_all_children_responded(sender, msg, self.Status.PROCESSOR_RUNNING, self.Status.PROCESSOR_COMPLETE, self.resume)

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/actor.py", line 157, in transition_when_all_children_responded
    transition()

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/driver/driver.py", line 513, in resume
    self._seed_tasks(self.processors.get())

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/driver/driver.py", line 521, in _seed_tasks
    self.tasks = list(WorkerTask(func, params) for func, params in processor.on_prepare_track(self.track, self.data_root_dir))

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/driver/driver.py", line 521, in <genexpr>
    self.tasks = list(WorkerTask(func, params) for func, params in processor.on_prepare_track(self.track, self.data_root_dir))

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/loader.py", line 467, in on_prepare_track
    for corpus in used_corpora(track):

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/loader.py", line 434, in used_corpora
    param_source = operation_parameters(t, sub_task)

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/loader.py", line 425, in operation_parameters
    return params.param_source_for_operation(op.type, t, op.params, task.name)

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/params.py", line 40, in param_source_for_operation
    return __PARAM_SOURCES_BY_OP[op_type](track, params, operation_name=task_name)

  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/params.py", line 523, in __init__
    raise exceptions.InvalidSyntax(

esrally.exceptions.InvalidSyntax: 'index' or 'data-stream' is mandatory and is missing for operation 'search'

2022-09-25 04:49:39,830 ActorAddr-(T|:37783)/PID:30314 esrally.actor INFO BenchmarkActor received unknown message [ActorExitRequest] (ignoring).
2022-09-25 04:49:39,831 ActorAddr-(T|:34021)/PID:30315 esrally.actor INFO MechanicActor#receiveMessage unrecognized(msg = [<class 'thespian.actors.ActorExitRequest'>] sender = [ActorAddr-(T|:37783)])
2022-09-25 04:49:39,831 ActorAddr-(T|:45199)/PID:30316 esrally.actor INFO Main driver received ActorExitRequest and will terminate all load generators.
2022-09-25 04:49:39,832 ActorAddr-(T|:40853)/PID:30317 esrally.actor INFO ActorExitRequest received. Forwarding to children
2022-09-25 04:49:39,832 ActorAddr-(T|:37783)/PID:30314 esrally.actor INFO BenchmarkActor received unknown message [ChildActorExited:ActorAddr-(T|:34021)] (ignoring).
2022-09-25 04:49:39,834 ActorAddr-(T|:37783)/PID:30314 esrally.actor INFO BenchmarkActor received unknown message [ChildActorExited:ActorAddr-(T|:34021)] (ignoring).
2022-09-25 04:49:39,842 ActorAddr-(T|:45199)/PID:30316 esrally.actor INFO A track preparator has exited.
2022-09-25 04:49:39,843 ActorAddr-(T|:37783)/PID:30314 esrally.actor INFO BenchmarkActor received unknown message [ChildActorExited:ActorAddr-(T|:45199)] (ignoring).
2022-09-25 04:49:42,832 -not-actor-/PID:30302 esrally.rally INFO Attempting to shutdown internal actor system.
2022-09-25 04:49:42,834 -not-actor-/PID:30313 root INFO ActorSystem Logging Shutdown
2022-09-25 04:49:42,855 -not-actor-/PID:30312 root INFO ---- Actor System shutdown
2022-09-25 04:49:42,855 -not-actor-/PID:30302 esrally.rally INFO Actor system is still running. Waiting...
2022-09-25 04:49:43,856 -not-actor-/PID:30302 esrally.rally INFO Shutdown completed.
2022-09-25 04:49:43,856 -not-actor-/PID:30302 esrally.rally ERROR Cannot run subcommand [race].
Traceback (most recent call last):
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/rally.py", line 983, in dispatch_sub_command
    race(cfg, args.kill_running_processes)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/rally.py", line 761, in race
    with_actor_system(racecontrol.run, cfg)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/rally.py", line 791, in with_actor_system
    runnable(cfg)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/racecontrol.py", line 373, in run
    raise e
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/racecontrol.py", line 370, in run
    pipeline(cfg)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/racecontrol.py", line 71, in __call__
    self.target(cfg)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/racecontrol.py", line 309, in benchmark_only
    return race(cfg, external=True)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/racecontrol.py", line 267, in race
    raise exceptions.RallyError(result.message, result.cause)
esrally.exceptions.RallyError: Traceback (most recent call last):
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/actor.py", line 92, in guard
    return f(self, msg, sender)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/driver/driver.py", line 538, in receiveMsg_WorkerIdle
    self.transition_when_all_children_responded(sender, msg, self.Status.PROCESSOR_RUNNING, self.Status.PROCESSOR_COMPLETE, self.resume)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/actor.py", line 157, in transition_when_all_children_responded
    transition()
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/driver/driver.py", line 513, in resume
    self._seed_tasks(self.processors.get())
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/driver/driver.py", line 521, in _seed_tasks
    self.tasks = list(WorkerTask(func, params) for func, params in processor.on_prepare_track(self.track, self.data_root_dir))
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/driver/driver.py", line 521, in <genexpr>
    self.tasks = list(WorkerTask(func, params) for func, params in processor.on_prepare_track(self.track, self.data_root_dir))
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/loader.py", line 467, in on_prepare_track
    for corpus in used_corpora(track):
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/loader.py", line 434, in used_corpora
    param_source = operation_parameters(t, sub_task)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/loader.py", line 425, in operation_parameters
    return params.param_source_for_operation(op.type, t, op.params, task.name)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/params.py", line 40, in param_source_for_operation
    return __PARAM_SOURCES_BY_OP[op_type](track, params, operation_name=task_name)
  File "/opt/tutorial-env/lib/python3.8/site-packages/esrally/track/params.py", line 523, in __init__
    raise exceptions.InvalidSyntax(
esrally.exceptions.InvalidSyntax: 'index' or 'data-stream' is mandatory and is missing for operation 'search'

Hello! Thanks very much for your interest in Rally.
I'm assuming you closed this because you fixed your issue by adding an index name to the search operation.
Note that we'd like to direct user questions to the forums. If you can stop by there next time, we'd appreciate it. This allows us to use GitHub for verified bug reports, feature requests, and pull requests. There's an active community in the forums that should be able to help get an answer to your questions.


Adding API_KEY (x_cg_pro_api_key) support for https://pro-api.coingecko.com/api/v3 calls (pro version)

Add "x_cg_pro_api_key" to every call as this key is needed in coingecko pro version

Don't we also need to update the url to https://pro-api.coingecko.com/api/v3/?

@vilnik Yes, if you use the pro version, the base URL should be https://pro-api.coingecko.com/api/v3/

Tested and works great.
The only note – I would add URL override to pro-api host if key is provided, but not a big deal, you can override it by yourself, but would make sense to have it as a part of the MR.

hey guys has this been pulled into main?

Hi! This PR is going to be tested and released to master branch soon

Thanks for contributing!

is this live on pypi?

Hello!
Just released a new version pycoingecko v2.3.0 (also on pypi) including PRO API version support. See README & CHANGELOG for more info.


Portal URL Validation says "Invalid URL"

It says "Invalid URL" when it should be valid

Looks like now even the individual 'Schedule' feed is returning an empty iCal file, so this would be a dup of #18.
At least that means I can close this issue
Hahahah
ahahaaha
ah
HAHAHAHAjfdakl
ah;lkjfdsoijlkdsafJK;LDSAFJDSA 'FSn
FDS
JFKJD
LSAFFD
steeel beams can't melt semem knad
https://www.youtube.com/watch?v=hXlY9pZUknY
https://www.youtube.com/watch?v=hXlY9pZUknY
https://www.youtube.com/watch?v=hXlY9pZUknYhttps://www.youtube.com/watch?v=hXlY9pZUknY


Dependency management

How to categorize this issue?
/area usability
/kind enhancement
/priority normal
What would you like to be added:
I would like to see a dependency management with the following features

Specify dependencies between blueprints (e.g cf-for-k8s depends on istio)
Specify versions ranges for the dependency (e.g cf-for-k8s requires istio with a version greater than 1.7)
If I install one blueprint, which depends on another, the missing blueprint is automatically installed
One blueprint should be able to read installation values from a dependent blueprint (e.g. cf-for-k8s needs to get the credentials for an already installed docker registry, which was installed before, triggered by the kyma installation). It would be even better, if cf-for-k8s could trigger the creation of new credentials.
I'm not sure if there should be some kind of reference counting (istio should remain in the cluster, if cf-for-k8s is uninstalled but kyma is still installed).

If these features already exist, it would be nice to have a detailed description, how this works.
Why is this needed:
The motivation can be found here

@In-Ko closed because outdated and/or copied into internal project


Fix String#to_f for infinity, NaN and out of range

String#to_f generally does not accept values representing infinity or NaN. It would allow them if the first character is whitespace (and whitespace is enabled), them.
And it would also return infinity for values outside of the data type's range.
This patch fixes that and makes sure it fails when strtod/strtof return a non-finite value.
We should probably consider an option for parsing infinity and NaN. But for now this is just a simple bug fix.

Can we add specs that NaN INF without whitespaces also return nil?
Parsing those values should also consider localization. I agree to leave that out for now.

Seems I misinterpreted the condition. Infinity and NaN values are always accepted if whitespace: true (the default). So this fix is probably not good. But I really can't make any sense why toggling whitespace should have an effect on infinity and NaN.

The main bug is handling of values outside of range. That should fail instead of returning infinity and should be high priority for correctness.
The minimal fix for that would be to recognize if infinity value returned from strtod/strtof is actually infinity or just represents over- or underflow.

String#to_f returns infinity for values outside of the data type's range.

You mean this as in before this PR, right? Because
Before this PR: Float64::MAX.to_s.to_f32 # => Infinity
After this PR: Float64::MAX.to_s.to_f32 # => Unhandled exception: Invalid Float32: 1.7976931348623157e+308 (ArgumentError)

You mean this as in before this PR, right?

Yeah, the edit was probably somewhat disruptive to the message. I tried to fix that.


Why does readAllValues not using local cache in LocalCachedMap?

Expected behavior
LocalCachedMap.readAllValues() should be very fast, using local cache and should  not query redis.
Actual behavior
LocalCachedMap.readAllValues() cost 100ms+ to read 800+ POJO objects.
In redis-cli monitor, I saw incoming query by redisson
Steps to reproduce or test case
Redis version
Redisson version
2.14.0
Redisson configuration

I'll add methods to read data stored in local cache: readAllCachedValues, readAllCachedKeys, readAllCachedEntries.


Missing custom_data field for some types

According to the paddle docs: https://developer.paddle.com/api-reference/about/custom-data#api. These types miss the custom_data field: Customer, Address, Business

Thank you for reporting. It probably was added after I published the latest version. WIll add those too.

Fixed and published as<EMAIL_ADDRESS>https://github.com/kossnocorp/paddle-billing/blob/main/CHANGELOG.md#v100---2023-11-02


Update sqlite3 jdbc to <IP_ADDRESS>

See #1149

This now looks similar to before the update. There's some test causing the suite to die early in this and the other JDBC runs, but the tests are running with the new driver. Merging.


swamp/doc: make a separate readMe for tests overview

ATM, we have a test-swamp description in the tests directory. It's way much better to make a tests ReadMe.md explaining what we are testing and have some test report in it.
The existing Test Swamp ReadMe can be then moved to the swamp directory for more in-depth information

Grooming 16/11/2022:
Moving this doc readme to ITN


net/http: add support for creating proxied TLS connections

DialTLSContext is documented as only being used for non-proxied requests.
This is problematic because it means HTTPS CONNECT requests always use crypto/tls. This can violate business requirements and so on. (And can also lead to difficult to debug errors if you, uh, forget that DialTLSContext is only for non-proxied requests. Or if the proxy is added later.)
Ideally, Transport would have a Client(net.Conn, ...) net.Conn field that, if nil, would default to crypto/tls.

/cc @bcmills @bradfitz


Leader icon on map

Description

There's a little blue crown that's put on xeno leaders on the map. Parity! We have the sprite.
Reproduction

Screenshots

Additional context

Fixed by #4830


Add the missing More_time icon is missing

[ ] I have searched the issues of this repository and believe that this is not a duplicate.


Possible regression from Double Slash fix (#1019)

After updating to uws.js 17.4 some of my tests failed. When looking into why I've stumbled upon something that appears to be a regression resulting from the fix of my afformentioned issue so I thought I'd report it:
Test setup:

One route, .get("/foo"
Request sent to /foo/ and /foo/?bar

Result

17.3: Matches on the route
17.4: No route matched

Changing the route to be /foo/ makes it then match requests to /foo/ but not on /foo.
The way I get it a trailing slash in a request should not matter to whats actually matched, that was the case in 17.3 as having the route or request feature a trailing slash did not change the outcome.

Technically trailing slash is not the same URL (that's my interpretation at least): https://stackoverflow.com/questions/5948659/when-should-i-use-a-trailing-slash-in-my-url
/foo/ and /foo/?bar have segments like so:
["foo", ""]
While /foo only has ["foo"] so it's not the same URL.
You can redirect one to the other if you like

I almost though so, just wanted to make sure it's not an oversight. Alright, thank you.

I'll keep this closed (For now), but I'll add some info:
I've checked out how Express and Polka handle it. With both of them it does not matter if the route you define does or does not have a trailing slash, it will always match requests of both.
I dont know how much you care about compatability with the Node ecosystem as this is not built specifically for it, but seeing how it was working in the same fashion before maybe it might make sense to make it do so again.

Seeing how swiftly you usually respond I guess you arent subscribed to the Issue, so just to make sure you see the above: @alexhultman
I've also in the meanwhile checked how Nginx handles it, having a location without a trailing slash there will match requests with one, however if your location does have a trailing slash it will only match requests that have one too.

I thought we already agreed - they are different URLs. If you want to put the same handler on both cases, then do so. The other way around doesn't work.
If more people want this change then I can consider it but I don't plan on making any routing changes right now. Nobody else has reported this as an issue.


Improve request/response failure error messages

Error messages now look like:
"Request '{u'referenceId': None, u'end': None, u'readGroupIds': [], u'pageSize': None, u'pageToken': None, u'start': u'thisIsWrong'}' is not a valid instance of <class 'ga4gh._protocol_definitions.SearchReadsRequest'>; invalid fields: {u'start': u'thisIsWrong'}"

Issue #382

+1 modulo comments above.

@jeromekelleher @diekhans huh? continue, when used (properly) at the beginning of a loop is a perfectly clear flow control technique (unlike the wild-west of goto). I wasn't aware it was considered "bad". Cf. discussion here:
http://programmers.stackexchange.com/questions/58237/are-break-and-continue-bad-programming-practices
But feel free to educate me.

@macieksmuga I've never seen a case where
for x in something:
     if not condition(x):
          break
      loop_body()

was better than
for x in something:
    if condition(x):
         loop_body()

The second option makes it far clearer that we are conditionally evaluating loop_body() based on the value of x. Visual structure is important in Python, and we lose this link between visual structure and the semantics of the code by using continue. The only reason to use continue is so your code doesn't become indented too deeply, and this is a key tell-tale that your code is terrible in the first place.
At least ten dead puppies!

@jeromekelleher how can a litter-full of dead puppies not move my heart? Consider me convinced :)

@jeromekelleher pushed update, puppies saved

@jeromekelleher pushed update, no net puppy gain/loss this time

Thanks @dcolligan, merging.


fix the error that ratings.csv cannot be found in google storage

While running the original code, machine learning engine could not find the data file. The changes in this PR can fix this issue.

I signed it!


Invalid Helm release name

Can you please modify the folder name and remove the "_". During the dry run there is an error invalid release name. I believe this was caused by the _ in the folder name.

Can you paste the command here you tried along with the error?


Updated exif kaitai files

Fixed the exif .ksy files in the kaitai repo with https://github.com/kaitai-io/kaitai_struct_formats/pull/124 . Compiled the .ksy to python files and updated them in the contrib folder. Should fix #3360 and avoids error in mitmproxy 5.0.0 -> no fallback to raw content in view mode.

Hi!  I was also discussing the optimal solution for this with Kaitai - https://github.com/kaitai-io/kaitai_struct/issues/523

Thanks! 😄


Sandbox

Added this example to the sandbox.ejs page.
Added the navbar.ejs to the sandbox page.
Updated styles with bootstrap instead of using grid.js as first thought.

Checkout the /sandbox link to see it in action.

Looks great and is fully functional on my end. Merge whenever you would like.


Firmware upgrade E

may be combined with osgp/platform#275

Story: upgrade the firmware from the E meter
As grid operator
I want OSGP to be able to upgrade the firmware of a given E meter.
So that I the meter gets a new firmware version in order to work
correctly with the new version.

waiting for  OSGP/Platform#300

We assume the device needs 1 upgrade (not a few after each other) to be up-to-date


feat: Add page transition

Hello @RNAdvani,
Could you please update the transition from current one to something like what this site has https://dennissnellenberg.com/work.
Please align it more with our site's theme

is there any colour preference you wanna give me?

see the theme of the site... black and purplish

do check

There are issues:-

Consistency issues:- Make sure animation on every page transition should be like this:- incoming pink shade with text which remains in the middle and then outgoing pink shade and text goes along with it as the pink shade reaches the middle portion. Currently, the transition on every page is different.
In the music experience page -> music experience has stopped working due to transition. Make sure it doesn't affect working on the website.
your PR shows that you have added music as well... but it is already there on the website. Please make sure to pull all the changes and commit only relevant files.

theme of page transition is good rn... Good work on that.

No, @ParamThakkar123 there are some issues. I have mentioned above.

@RNAdvani any progress so far ??

yes i am working on it the reason of this issue is that each page has a motion div which abruptly forces that transition, I'll c what i can do

@RNAdvani, updates?

yes i am resolving it, i'll push tonight

mostly i would have to remove all animations from other pages to make the transition work as it is interrupting with the transition, can i do so?

mostly i would have to remove all animations from other pages to make the transition work as it is interrupting with the transition, can i do so?

There are no other animations on pages I think except page and word animations. Try without removing the existing animations. That's recommended.

Also this PR has some conflicts to resolve

@RNAdvani Updates?


IsCompleted cannot be found at runtime [Android]

Hi!
I am using FFImageLoading on Android and I am trying to use the property IsCompleted on a IScheduledWork.
Problem is it can not be found at runtime. When looking at old code, I can see a « Completed » that seems to have been renamed to « IsCompleted » (or the other way around?). Is it possible that the interface and the implementation do not share the same code ?
Method 'FFImageLoading.Work.IScheduledWork.get_IsCompleted' not found.

Repro:
Install latest version on a new Android project.
Use
var work = await ImageService.LoadUrl("an image").IntoAsync(MyView);
var completed = work.IsCompleted;

Is it possible that the interface and the implementation do not share the same code ?

I don't think so. Maybe you have mixed dll's (before changes and after changes) somewhere? Did you update all nuget packages?
BTW: You also can Use Success (LoadingResult param) or Finish (IScheduledWork param) events for that.

Any news?

I am sorry to make you wait, I have been stuck out of work for a few days. I will test that next week and close the issue if it is irrelevant.
I already had issues like that before on other packages, it is indeed probably nothing.

Sure, I'll close this one. Please, reopen the issue if you you'll still experience it. Cheers :)

Uninstalling / reinstalling the packages did the trick.
Something probably messed up the DLLs. Sorry for the bug report.


Update pom.xml

$subject

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/7286236440

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/7286236440
Status: success


Updates Python Workers examples to use new Python SDK API

The new Python SDK is now available in the latest version of Wrangler. It provides Python native implementations of classes like Response.
This PR modifies most of our Python examples to use the new APIs in the SDK.

[ ] The validator version that's currently in prod doesn't support these changes yet, so we need to wait for it to be updated before merging this.


Update to CUDA 12.4

This PR updates pynvjitlink to use CUDA 12.4. This depends on https://github.com/conda-forge/libnvjitlink-feedstock/pull/9.

Thanks Bradley! 🙏
Think we also need PR: https://github.com/conda-forge/cuda-nvcc-feedstock/pull/37

Think we have what we need. Trying to restart CI to see if that fixes the issue

Looks like the Conda builds completed successfully! 🎉
CI is still running

Awesome. After this CI run completes, I want to push one more change: ab2ec91af7588ffcab161053e00e5279806d6fc1 from #60, since it fixes a bug in the wheel testing script.

Is it worth putting that in its own PR?
Happy to merge that fix first

I saw enough of the CI output. I pushed the fix for wheel tests so we are testing the actual CI artifacts rather than nightly packages.

/merge

Looks like we do this the old school way


[Snyk] Upgrade @spectrum-web-components/field-group from 0.42.5 to 0.43.0

This PR was automatically created by Snyk using the credentials of a real user.![snyk-top-banner](https://github.com/andygongea/OWASP-Benchmark/assets/818805/c518c423-16fe-447e-b67f-ad5a49b5d123)
Snyk has created this PR to upgrade @spectrum-web-components/field-group from 0.42.5 to 0.43.0.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.

The recommended version was released on 22 days ago.

Release notes

Package name: @spectrum-web-components/field-group

0.43.0 - 2024-06-11v0.43.0

0.42.5 - 2024-05-24v0.42.5

    from @spectrum-web-components/field-group GitHub release notes

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:

🧐 View latest project report
📜 Customise PR templates
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Resolved with https://github.com/adobe/spectrum-tokens/commit/56a1624211d9d11e56f6fa063eca90e78dd89131


Instance match is always false

2022-11-08 20:33:32 | hook | INFO | Hook called with message ID a1cvIbCgasXJHxTjaxQgbHtypBX1L4JkuXyy4D5brps=, version 1, type stream.online (retry 0, type notification, date 2022-11-09T02:33:31.702890154Z)
-- | -- | -- | --
2022-11-08 20:33:32 | hook | ERROR | Hook called with the wrong instance (undefined)
2022-11-08 20:33:32 | hook | INFO | Hook called with message ID dQlsBkWJv2fGforKhu4NYBMBgbRL1oZ994BbbePDuPU=, version 1, type stream.online (retry 0, type notification, date 2022-11-09T02:33:31.702890154Z)
2022-11-08 20:33:32 | automator.handle | INFO | Automator stream.online event for coestar (retry 0)
2022-11-08 20:33:32 | automator.handle | INFO | coestar stream has ID<PHONE_NUMBER>1, started 2022-11-09T02:30:12Z

Previously, I had instance ID set to nin-prod1 and the subscription callback matched. Recently the logs have been saying the hook called with the wrong instance. After unsubscribing, and resubscribing, the hook has the correct instance ID in the callback but it says the instance match is false. Removing the instance ID, unsubscribing, and resubscribing also says instance match is false.

Software
Python version: (no output)
Python3 version: 3.9.2
Node.js version: 18.12.0
Docker: Yes
Backend type: ts-server
Backend version: 1.4.0
Backend git hash:
Frontend version: 2.1.11
Frontend build: production
Frontend verbose: 2.1.11 (2022-11-06T15:29:09.048Z / )

is that screenshot there when you have no instance id set?

Yes. And this is what it looks like when I do have an instance ID and it is the ID that is in the callback URL.

quite odd, i did change the list function but that shouldn't have changed the comparison

Works! Thank you so much!


Broken link for Docker for Windows x32

Description
There is broken link to download Docker for Windows x32 on 'Releases' page v.17.03.0-ce
Steps to reproduce the issue:

open Release page
navigate to tag v17.03.0-ce
try to download Windows 32bits client zip

Describe the results you received:
DNS error.
Link is broken https://tegett.docker.com/builds/Windows/i386/docker-17.03.0-ce.zip
Describe the results you expected:
ZIP archive is downloaded
Link should be https://get.docker.com/builds/Windows/i386/docker-17.03.0-ce.zip #

Thanks for reporting! ping @vieux PTAL


Instructions for MSBuild in the main readme.md are wrong.

Per the current readme.md:

<ItemGroup>
    <PackageReference Include="ILMerge" Version="2.15.0" />
  </ItemGroup>

  <Target Name="ILMerge">
    <!-- the ILMergePath property points to the location of ILMerge.exe console application -->
    <Exec Command="$(ILMergeConsolePath) /out:Merged.dll File1.dll File2.dll" />
</Target>

This has multiple problems... :-/
1.) The latest version of the package on the NuGet gallery is only 2.14.1208 -- so, the package reference fails.
2.) Even after updating the package reference, the ILMerge target will fail, because $(ILMergeConsolePath) is not defined (is there a targets file we need to import??)
3.) The comment refers to the property is the "ILMergePath" property (instead of ILMergeConsolePath) -- which is also not defined.

It's nice if you describe the msbuild as a task after build.

Concerning 2 and 3, at least in my case I could see from the output console that the ILMergeConsolePath was correctly defined.  You can also reconcile the discrepancy between the comment and the code by look at the package's build\ILMerge.props which is defining ILMergeConsolePath.
What worked for me followed the readme, updating the version, and making my paths absolute:
<Exec Command="$(ILMergeConsolePath) /out:"$(TargetDir)Merged.dll" "$(TargetDir)File1.dll" "$(TargetDir)File2.dll"" />

Not sure if there's a means to set the working directory, as that would be preferred.

I too am seeing this issue - ILMergeConsolePath isn't populated. If I look at ILMerge.props it's defined as <ILMergeConsolePath>$(MSBuildThisFileDirectory)..\tools\net452\ILMerge.exe</ILMergeConsolePath>


Even example code doesn't always work

I have made the setup you show us.
I can use the examples, like read the rpm and read the vin code etc. Although the examples doesn't always work. For example the rpm doesn't always show in the console. My connections am pretty sure they are good. Do you have any suggestion?
Also when i try to read different PID i cant make it work either. I try simple PID to keep the code same as the RPM example and if it works to move forward to something more complicated.  I try to read MAF sensor PID since it is very similar to RPM PID.
So i changed the code from the RPM example          CAN.read() != 0x0c       // correct PID
RPM PID   to this   CAN.read() != 0x10 since 0c is the rpm hex and 10 is the maf value and also change the calculation algorithm to match . But it doesn't work i get no data at all.

I suggest building a histogram of all the PIDs you're receiving, printing and resetting it every N seconds, and compare to the list of PIDs that you have for your vehicle.

The PIDs i try to use are basic. and definitely are supported by my ECU. RPM example works some times. I have to reset the arduino and car several times in order to see the RPM in the console. My connections are good. Because once it works it won't stop until i reset the car or arduino, then stops working.

Ah, perhaps this should be filed against https://github.com/sandeepmistry/arduino-OBD2 now that it's a separate library?

I used the library you suggested and those examples like RPM always work. Thanks!!


[PE-D][Tester A] The Find person command performs better than the UserGuide claims

The UserGuide says that only names are searched in the find command. However, I try to search with phone number but it also works.

If I search by UUID, it also works. It would be a pity not to mention that in UserGuide.

In the final example, I first add a person John with address Alex, and then try to find /Alex, 2 persons are listed. So I can assume that the real effect of find is to search by keyword.

Labels: severity.Medium type.DocumentationBug
original: JerryWang0000/ped#6

update the UG to show my great command!


styled() does not recognise React defaultProps in Typescript 3.0.1

Since Typescript introduced support for defaultProps recently, it would be nice to have styled-components recognise their presence.
Reproduction
Create a component with one required and one optional prop, set a default prop for the optional.
interface IProps {
  requiredProp: boolean
  optionalProp: string // Shouldn't need to be optional here
}

class MyComponent extends React.PureComponent<IProps> {
  static defaultProps = {
    optionalProp: 'fallback'
  }

  render() {
    const { requiredProp, optionalProp } = this.props
    return (
      <span>
        {requiredProp.toString()}
        {optionalProp.toString()}
      </span>
    )
  }
}

Then use that component, once as a normal react component and once as a styled-component:
const MyComponentStyled = styled(MyComponent)``

// No type error (expected) because optionalProp is defined in defaultProps
<MyComponent requiredProp />

// Type error (unexpected), styled() doesn't recognise optionalProp is defined in defaultProps
<MyComponentStyled requiredProp />

Expected Behavior
No type error when using MyComponentStyled without optionalProp.
Actual Behavior
Type error, because styled() doesn't seem to recognise optionalProp is defined in defaultProps
Property 'optionalProp' is missing in type '{ requiredProp: true; }'.
Environment
## System:
 - OS: Linux 4.15 Fedora 27 (Workstation Edition) 27 (Workstation Edition)
 - CPU: x64 Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz
 - Memory: 2.88 GB / 15.34 GB
 - Container: Yes
 - Shell: 4.4.19 - /bin/bash
## Binaries:
 - Node: 8.9.4 - /usr/bin/node
 - npm: 5.6.0 - /usr/bin/npm
## npmPackages:
 - babel-plugin-styled-components: ^1.5.0 => 1.5.1
 - styled-components: ^3.4.2 => 3.4.2
 - typescript: ^3.0.1 => 3.0.1

cc @Igorbek

Thank you for reporting. It is indeed a desired behavior. I'll think how could it be typed. The first idea is to forward defaultProps to styled component class; or, extract effective prop types from a original component.
I cannot commit to work on this in the next three weeks as I am on vacation.

Hey folks, TS typings for styled-components have been moved to DefinitelyTyped, so please feel free to move your issue there where you'll receive better community support.


Enhancement: extend 'spfx doctor' help with remark about recommendations

related to #1409, we should extend spfx doctor help with a remark clarifying that the recommendations are based on the officially supported versions and that other versions or package managers could work as well.

Waiting on additional information in #1409

Closing for now as #1409 was close due to lack of response


python311Packages.prophet: 1.1.4 -> 1.1.5

Description of changes
This PR bumps the version of prophet to 1.1.5
Here are the changelogs: https://github.com/facebook/prophet/releases/tag/1.1.5
This release removed some dependencies.
I also added optional dependencies which I missed when I added this package.
There are also some small refactors.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

@ofborg eval

Result of nixpkgs-review pr 264223 run on x86_64-linux 1

4 packages built:

python310Packages.prophet
python310Packages.prophet.dist
python311Packages.prophet
python311Packages.prophet.dist


Cast Command to generate ethersrs binding

Motivation
Cast Command to generate ethers-rs binding

Solution
Fixes #4132

@mattsse Cast bind will handle ABI and address inputs. Anything else to add?

how does this differ from forge bind exactly?

In forge bind, bindings are generated from project artifacts(which by default is /out/ directory). In this case, to create bindings, you can either provide a local ABI file or an etherscan address (similar to how you provide inputs to the cast interface).

lgtm - pls add the logic to resolve proxies as well

lgtm - pls add the logic to resolve proxies as well

Will add that.

@mattsse Any fix around here? Linting issue unrelated to code changes.


Record Video without live streaming

Hello,
Is it possible to record video without streaming to the RTMP server,
local device recording like a camera app.
Thanks

Yes


Release 2.0.3

Questions
Answers

Description?
Release 2.0.3

Type?
improvement

BC breaks?
no

Deprecations?
no

Fixed ticket?
N/A

How to test?
Release Test

@Progi1984 there is a regression maybe linked to the fix of the PR #8
https://drive.google.com/file/d/1E1fuphQoIwOb-XYFICAkBLMP5UiOoSjn/view
The visits counter is incremented even if the customers is not logged
See the video I create an order from FO when I change the status order visits change. I create an order from the BO the visits status is incremented

@Progi1984 there is a regression maybe linked to the fix of the PR #8
https://drive.google.com/file/d/1E1fuphQoIwOb-XYFICAkBLMP5UiOoSjn/view
The visits counter is incremented even if the customers is not logged
See the video I create an order from FO when I change the status order visits change. I create an order from the BO the visits status is incremented

@sarahdib Could you create an issue and linked to me ?

@sarahdib Could you create an issue and linked to me ?

@Progi1984  done :)

@Progi1984  done :)

Hello @Progi1984 ,
I have an issue with the logo of the module. The old logo is still displayed.
It might be related to https://github.com/PrestaShop/statsbestcustomers/pull/17 (the text is OK)
With PR #20 :

Without PR :

Otherwise, the rest is OK !
Thanks!

@florine2623 I'm not able to reproduce:

I think it's a browser cache problem, not related to this PR :thinking:

Hello @PierreRambaud ,
Thanks ! Indeed, after deleting my cache, everything is fine.
It is QA approved ✅

Thanks @florine2623


[Feature] create a Innersource ready report JSON formatted file

In case of full innersource ready compliance, create a JSON report and send it to the InnerSource registration service (target)

implemented a JSON report that is generated with every compliance check run and (currently) added to a registry Repo.
Issue is complete

Note: the JSON data is also added to the Issue as an expandable detail section


15-12-2020 17:21:36: > HTTP[050]: request body: got 337 bytes; EOF
15-12-2020 17:21:36: > HTTP[050]: body is small (337 bytes), prefetched before sending
15-12-2020 17:21:36: > HTTP[050]: HTTP request header:
15-12-2020 17:21:36: >   POST /ipp/print HTTP/1.1
15-12-2020 17:21:36: >   Host: localhost:60001
15-12-2020 17:21:36: >   User-Agent: CUPS/2.3.3op1 (Linux 5.9.0-4-amd64; x86_64) IPP/2.0
15-12-2020 17:21:36: >   Content-Length: 337
15-12-2020 17:21:36: >   Content-Type: application/ipp
15-12-2020 17:21:36: >   Date: Tue, 15 Dec 2020 16:21:36 GMT
15-12-2020 17:21:36: >
15-12-2020 17:21:36:   USB[3]: connection allocated, 1 in use: --- --- --- a--
15-12-2020 17:21:36:   HTTP[050]: connection 3 allocated
15-12-2020 17:21:36: > USB[3]: write: wanted 542 sent 542 total 542
15-12-2020 17:21:36: < USB[3]: read: wanted 4096 got 194 total 194
15-12-2020 17:21:36: < HTTP[050]: POST http://localhost:60001/ipp/print - 200 OK
15-12-2020 17:21:36: < HTTP[050]: HTTP response header:
15-12-2020 17:21:36: <   HTTP/1.1 200 OK
15-12-2020 17:21:36: <   Cache-Control: no-cache
15-12-2020 17:21:36: <   Connection: Keep-Alive
15-12-2020 17:21:36: <   Content-Length: 282
15-12-2020 17:21:36: <   Content-Type: application/ipp
15-12-2020 17:21:36: <   Keep-Alive: timeout=30
15-12-2020 17:21:36: <   Pragma: no-cache
15-12-2020 17:21:36: <   Server: Epson_IPP-Server/2.0.0
15-12-2020 17:21:36: <
15-12-2020 17:21:36: < USB[3]: read: wanted 4096 got 282 total 476
15-12-2020 17:21:36: < HTTP[050]: response body: got 282 bytes; EOF
15-12-2020 17:21:36:   USB[3]: connection released, 0 in use: --- --- --- ---
15-12-2020 17:21:38: > HTTP[051]: POST http://localhost:60001/ipp/print
15-12-2020 17:21:38: > HTTP[051]: request body: got 743 bytes; EOF
15-12-2020 17:21:38: > HTTP[051]: body is small (743 bytes), prefetched before sending
15-12-2020 17:21:38: > HTTP[051]: HTTP request header:
15-12-2020 17:21:38: >   POST /ipp/print HTTP/1.1
15-12-2020 17:21:38: >   Host: localhost:60001
15-12-2020 17:21:38: >   User-Agent: CUPS/2.3.3op1 (Linux 5.9.0-4-amd64; x86_64) IPP/2.0
15-12-2020 17:21:38: >   Content-Length: 743
15-12-2020 17:21:38: >   Content-Type: application/ipp
15-12-2020 17:21:38: >   Date: Tue, 15 Dec 2020 16:21:38 GMT
15-12-2020 17:21:38: >
15-12-2020 17:21:38:   USB[1]: connection allocated, 1 in use: --- a-- --- ---
15-12-2020 17:21:38:   HTTP[051]: connection 1 allocated
15-12-2020 17:21:38: > USB[1]: write: wanted 948 sent 948 total 948
15-12-2020 17:21:38: < USB[1]: read: wanted 4096 got 195 total 195
15-12-2020 17:21:38: < HTTP[051]: POST http://localhost:60001/ipp/print - 200 OK
15-12-2020 17:21:38: < HTTP[051]: HTTP response header:
15-12-2020 17:21:38: <   HTTP/1.1 200 OK
15-12-2020 17:21:38: <   Cache-Control: no-cache
15-12-2020 17:21:38: <   Connection: Keep-Alive
15-12-2020 17:21:38: <   Content-Length: 1090
15-12-2020 17:21:38: <   Content-Type: application/ipp
15-12-2020 17:21:38: <   Keep-Alive: timeout=30
15-12-2020 17:21:38: <   Pragma: no-cache
15-12-2020 17:21:38: <   Server: Epson_IPP-Server/2.0.0
15-12-2020 17:21:38: <
15-12-2020 17:21:38: < USB[1]: read: wanted 4096 got 1090 total 1285
15-12-2020 17:21:38: < HTTP[051]: response body: got 1090 bytes; EOF
15-12-2020 17:21:38:   USB[1]: connection released, 0 in use: --- --- --- ---
15-12-2020 17:21:38: > HTTP[052]: POST http://localhost:60001/ipp/print
15-12-2020 17:21:38: > HTTP[052]: request body: got 337 bytes; EOF
15-12-2020 17:21:38: > HTTP[052]: body is small (337 bytes), prefetched before sending
15-12-2020 17:21:38: > HTTP[052]: HTTP request header:
15-12-2020 17:21:38: >   POST /ipp/print HTTP/1.1
15-12-2020 17:21:38: >   Host: localhost:60001
15-12-2020 17:21:38: >   User-Agent: CUPS/2.3.3op1 (Linux 5.9.0-4-amd64; x86_64) IPP/2.0
15-12-2020 17:21:38: >   Content-Length: 337
15-12-2020 17:21:38: >   Content-Type: application/ipp
15-12-2020 17:21:38: >   Date: Tue, 15 Dec 2020 16:21:38 GMT
15-12-2020 17:21:38: >
15-12-2020 17:21:38:   USB[2]: connection allocated, 1 in use: --- --- a-- ---
15-12-2020 17:21:38:   HTTP[052]: connection 2 allocated
15-12-2020 17:21:38: > USB[2]: write: wanted 542 sent 542 total 542
15-12-2020 17:21:38: < USB[2]: read: wanted 4096 got 194 total 194
15-12-2020 17:21:38: < HTTP[052]: POST http://localhost:60001/ipp/print - 200 OK
15-12-2020 17:21:38: < HTTP[052]: HTTP response header:
15-12-2020 17:21:38: <   HTTP/1.1 200 OK
15-12-2020 17:21:38: <   Cache-Control: no-cache
15-12-2020 17:21:38: <   Connection: Keep-Alive
15-12-2020 17:21:38: <   Content-Length: 282
15-12-2020 17:21:38: <   Content-Type: application/ipp
15-12-2020 17:21:38: <   Keep-Alive: timeout=30
15-12-2020 17:21:38: <   Pragma: no-cache
15-12-2020 17:21:38: <   Server: Epson_IPP-Server/2.0.0
15-12-2020 17:21:38: <
15-12-2020 17:21:38: < USB[2]: read: wanted 4096 got 282 total 476
15-12-2020 17:21:38: < HTTP[052]: response body: got 282 bytes; EOF
15-12-2020 17:21:38:   USB[2]: connection released, 0 in use: --- --- --- ---
15-12-2020 17:21:39: > HTTP[053]: POST http://localhost:60001/ipp/print
15-12-2020 17:21:39: > HTTP[053]: request body: got 743 bytes; EOF
15-12-2020 17:21:39: > HTTP[053]: body is small (743 bytes), prefetched before sending
15-12-2020 17:21:39: > HTTP[053]: HTTP request header:
15-12-2020 17:21:39: >   POST /ipp/print HTTP/1.1
15-12-2020 17:21:39: >   Host: localhost:60001
15-12-2020 17:21:39: >   User-Agent: CUPS/2.3.3op1 (Linux 5.9.0-4-amd64; x86_64) IPP/2.0
15-12-2020 17:21:39: >   Content-Length: 743
15-12-2020 17:21:39: >   Content-Type: application/ipp
15-12-2020 17:21:39: >   Date: Tue, 15 Dec 2020 16:21:39 GMT
15-12-2020 17:21:39: >
15-12-2020 17:21:39:   USB[0]: connection allocated, 1 in use: a-- --- --- ---
15-12-2020 17:21:39:   HTTP[053]: connection 0 allocated
15-12-2020 17:21:39: > USB[0]: write: wanted 948 sent 948 total 948
15-12-2020 17:21:39: < USB[0]: read: wanted 4096 got 195 total 195
15-12-2020 17:21:39: < HTTP[053]: POST http://localhost:60001/ipp/print - 200 OK
15-12-2020 17:21:39: < HTTP[053]: HTTP response header:
15-12-2020 17:21:39: <   HTTP/1.1 200 OK
15-12-2020 17:21:39: <   Cache-Control: no-cache
15-12-2020 17:21:39: <   Connection: Keep-Alive
15-12-2020 17:21:39: <   Content-Length: 1090
15-12-2020 17:21:39: <   Content-Type: application/ipp
15-12-2020 17:21:39: <   Keep-Alive: timeout=30
15-12-2020 17:21:39: <   Pragma: no-cache
15-12-2020 17:21:39: <   Server: Epson_IPP-Server/2.0.0
15-12-2020 17:21:39: <
15-12-2020 17:21:39: < USB[0]: read: wanted 4096 got 1090 total 1285
15-12-2020 17:21:39: < HTTP[053]: response body: got 1090 bytes; EOF
15-12-2020 17:21:39:   USB[0]: connection released, 0 in use: --- --- --- ---
15-12-2020 17:21:39: > HTTP[054]: POST http://localhost:60001/ipp/print
15-12-2020 17:21:39: > HTTP[054]: request body: got 337 bytes; EOF
15-12-2020 17:21:39: > HTTP[054]: body is small (337 bytes), prefetched before sending
15-12-2020 17:21:39: > HTTP[054]: HTTP request header:
15-12-2020 17:21:39: >   POST /ipp/print HTTP/1.1
15-12-2020 17:21:39: >   Host: localhost:60001
15-12-2020 17:21:39: >   User-Agent: CUPS/2.3.3op1 (Linux 5.9.0-4-amd64; x86_64) IPP/2.0
15-12-2020 17:21:39: >   Content-Length: 337
15-12-2020 17:21:39: >   Content-Type: application/ipp
15-12-2020 17:21:39: >   Date: Tue, 15 Dec 2020 16:21:39 GMT
15-12-2020 17:21:39: >
15-12-2020 17:21:39:   USB[3]: connection allocated, 1 in use: --- --- --- a--
15-12-2020 17:21:39:   HTTP[054]: connection 3 allocated
15-12-2020 17:21:39: > USB[3]: write: wanted 542 sent 542 total 542
15-12-2020 17:21:39: < USB[3]: read: wanted 4096 got 194 total 194
15-12-2020 17:21:39: < HTTP[054]: POST http://localhost:60001/ipp/print - 200 OK
15-12-2020 17:21:39: < HTTP[054]: HTTP response header:
15-12-2020 17:21:39: <   HTTP/1.1 200 OK
15-12-2020 17:21:39: <   Cache-Control: no-cache
15-12-2020 17:21:39: <   Connection: Keep-Alive
15-12-2020 17:21:39: <   Content-Length: 282
15-12-2020 17:21:39: <   Content-Type: application/ipp
15-12-2020 17:21:39: <   Keep-Alive: timeout=30
15-12-2020 17:21:39: <   Pragma: no-cache
15-12-2020 17:21:39: <   Server: Epson_IPP-Server/2.0.0
15-12-2020 17:21:39: <
15-12-2020 17:21:39: < USB[3]: read: wanted 4096 got 282 total 476
15-12-2020 17:21:39: < HTTP[054]: response body: got 282 bytes; EOF
15-12-2020 17:21:39:   USB[3]: connection released, 0 in use: --- --- --- ---

@heiner99,
please, try to rename /usr/lib/udev/rules.d/71-ipp-usb.rules into /usr/lib/udev/rules.d/69-ipp-usb.rules
It will cause ipp-usb to start before /usr/lib/udev/rules.d/70-printers.rules will be executed, which might help.

I don't have .../70-printer.rules on my PC,
maybe  because I purged system-printer-config

Yesterday I took another PC for testing and there everything was fine.
The difference was ipp-usb 0.9.13.
So I downloaded 0.9.13 from github and compiled it.
I got one compile error:
./usbio_libusb.go:64:43: cannot use int32(err) (type int32) as type _Ctype_int in argument to _Cfunc_libusb_strerror
So I replace line 64 with: return "dummy-error" // C.GoString(C.libusb_strerror(int32(err)))
Now I compiled it without errors.
Cups was able to find my printer and printing was ok:
I hope this will help you.
main.log:
16-12-2020 07:10:44:   ===============================
16-12-2020 07:10:44:   ipp-usb started in "debug" mode, pid=2263
16-12-2020 07:10:44: + PNP Bus 001 Device 006: added
048b...log:
16-12-2020 07:10:44:
16-12-2020 07:10:44:   ===============================
16-12-2020 07:10:44: + Bus 001 Device 006: added ET-4750 Series
16-12-2020 07:10:44:   Device info:
16-12-2020 07:10:44:     Ident:         04b8-1129-583443523037373398-EPSON-ET-4750-Series
16-12-2020 07:10:44:     Manufacturer:  EPSON
16-12-2020 07:10:44:     Product:       ET-4750 Series
16-12-2020 07:10:44:     MfgAndProduct: EPSON ET-4750 Series
16-12-2020 07:10:44:
16-12-2020 07:10:44:   Device quirks:
16-12-2020 07:10:44:     Connection:
16-12-2020 07:10:44:
16-12-2020 07:10:44:   USB stack parameters
16-12-2020 07:10:44:     authorized_default:          -1
16-12-2020 07:10:44:     autosuspend:                 2
16-12-2020 07:10:44:     blinkenlights:               N
16-12-2020 07:10:44:     initial_descriptor_timeout:  5000
16-12-2020 07:10:44:     nousb:                       N
16-12-2020 07:10:44:     old_scheme_first:            N
16-12-2020 07:10:44:     quirks:
16-12-2020 07:10:44:     usbfs_memory_mb:             16
16-12-2020 07:10:44:     usbfs_snoop:                 N
16-12-2020 07:10:44:     usbfs_snoop_max:             65536
16-12-2020 07:10:44:     use_both_schemes:            Y
16-12-2020 07:10:44:
16-12-2020 07:10:44:   USB interfaces:
16-12-2020 07:10:44:     Config Interface Alt Class SubClass Proto
16-12-2020 07:10:44:        1       0      0   255    255     255
16-12-2020 07:10:44:        1       1      0   7      1       2
16-12-2020 07:10:44: *      1       1      1   7      1       4
16-12-2020 07:10:44:        1       2      0   255    170     1
16-12-2020 07:10:44:        1       3      0   7      1       2
16-12-2020 07:10:44: *      1       3      1   7      1       4
16-12-2020 07:10:44:        1       4      0   255    1       0
16-12-2020 07:10:44: *      1       4      1   7      1       4
16-12-2020 07:10:44:        1       5      0   255    1       0
16-12-2020 07:10:44: *      1       5      1   7      1       4
16-12-2020 07:10:44:
16-12-2020 07:10:44:   USB[0]: open: Bus 001 Device 006 Interface 1 Alt 1
16-12-2020 07:10:44:   USB[1]: open: Bus 001 Device 006 Interface 3 Alt 1
16-12-2020 07:10:44:   USB[2]: open: Bus 001 Device 006 Interface 4 Alt 1
16-12-2020 07:10:44:   USB[3]: open: Bus 001 Device 006 Interface 5 Alt 1
16-12-2020 07:10:44: > IPP request:
16-12-2020 07:10:44: > {
16-12-2020 07:10:44: >     VERSION 2.0
16-12-2020 07:10:44: >     OPERATION Get-Printer-Attributes
16-12-2020 07:10:44: >
16-12-2020 07:10:44: >     GROUP operation-attributes-tag
16-12-2020 07:10:44: >     ATTR "attributes-charset" charset: utf-8
16-12-2020 07:10:44: >     ATTR "attributes-natural-language" naturalLanguage: en-US
16-12-2020 07:10:44: >     ATTR "printer-uri" uri: http://localhost:60000/ipp/print
16-12-2020 07:10:44: >     ATTR "requested-attributes" keyword: all
16-12-2020 07:10:44: > }
16-12-2020 07:10:44:
16-12-2020 07:10:44: > HTTP[000]: POST http://localhost:60000/ipp/print
16-12-2020 07:10:44: > HTTP[000]: request body: got 151 bytes; closed
16-12-2020 07:10:44: > HTTP[000]: body is small (151 bytes), prefetched before sending
16-12-2020 07:10:44: > HTTP[000]: HTTP request header:
16-12-2020 07:10:44: >   POST /ipp/print HTTP/1.1
16-12-2020 07:10:44: >   Host: localhost:60000
16-12-2020 07:10:44: >   User-Agent: ipp-usb
16-12-2020 07:10:44: >   Content-Length: 151
16-12-2020 07:10:44: >   Content-Type: application/ipp
16-12-2020 07:10:44: >
16-12-2020 07:10:44:   USB[0]: connection allocated, 1 in use: a-- --- --- ---
16-12-2020 07:10:44:   HTTP[000]: connection 0 allocated
16-12-2020 07:10:44: > USB[0]: write: wanted 275 sent 275 total 275
16-12-2020 07:10:45: < USB[0]: read: wanted 4096 got 195 total 195
16-12-2020 07:10:45: < HTTP[000]: POST http://localhost:60000/ipp/print - 200 OK
16-12-2020 07:10:45: < HTTP[000]: HTTP response header:
16-12-2020 07:10:45: <   HTTP/1.1 200 OK
16-12-2020 07:10:45: <   Cache-Control: no-cache
16-12-2020 07:10:45: <   Connection: Keep-Alive
16-12-2020 07:10:45: <   Content-Length: 8642
16-12-2020 07:10:45: <   Content-Type: application/ipp
16-12-2020 07:10:45: <   Keep-Alive: timeout=30
16-12-2020 07:10:45: <   Pragma: no-cache
16-12-2020 07:10:45: <   Server: Epson_IPP-Server/2.0.0
16-12-2020 07:10:45: <
16-12-2020 07:10:45: < USB[0]: read: wanted 4096 got 4096 total 4291
16-12-2020 07:10:45: < USB[0]: read: wanted 4096 got 4096 total 8387
16-12-2020 07:10:45: < USB[0]: read: wanted 4096 got 450 total 8837
16-12-2020 07:10:45: < HTTP[000]: response body: got 8642 bytes; EOF
16-12-2020 07:10:45: < IPP response:
16-12-2020 07:10:45: < {
16-12-2020 07:10:45: <     VERSION 2.0
16-12-2020 07:10:45: <     STATUS successful-ok
16-12-2020 07:10:45: <
16-12-2020 07:10:45: <     GROUP operation-attributes-tag
16-12-2020 07:10:45: <     ATTR "attributes-charset" charset: utf-8
16-12-2020 07:10:45: <     ATTR "attributes-natural-language" naturalLanguage: en
16-12-2020 07:10:45: <
16-12-2020 07:10:45: <     GROUP printer-attributes-tag
16-12-2020 07:10:45: <     ATTR "copies-default" integer: 1
16-12-2020 07:10:45: <     ATTR "copies-supported" rangeOfInteger: 1-99
16-12-2020 07:10:45: <     ATTR "finishings-default" enum: 3
16-12-2020 07:10:45: <     ATTR "finishings-supported" enum: 3
16-12-2020 07:10:45: <     ATTR "sides-default" keyword: one-sided
16-12-2020 07:10:45: <     ATTR "sides-supported" keyword: one-sided two-sided-short-edge two-sided-long-edge
16-12-2020 07:10:45: <     ATTR "orientation-requested-default" enum: 3
16-12-2020 07:10:45: <     ATTR "orientation-requested-supported" enum: 3
16-12-2020 07:10:45: <     ATTR "media-default" keyword: na_letter_8.5x11in
etc...

Only for your information:
The first version which does not run OK on my PC is the version from 3.September:
ipp-usb-14bdcdbfb15ca3bcb0c1a9ea15c3b25d1f6635c5.zip

This is vary interesting observation, thank you!
May I ask you to comment line 533 in the usbtransport.go in the latest version:
err = conn.iface.SoftReset()

and retest.

Latest version from github with comment line 533 works fine on my PC.
Cups finds the printer and printing is ok.
Thanks you, Good work.
Only for your information:
Scanning with sane-airscan works.
Scanning with libsane1: failed to open device: escl:http://<IP_ADDRESS>:60000:out of memory

@alexpevzner thank you for the info! Then the moving ipp-usb rule before system-config-printer-udev rule is the most sensible thing to do right now. If ipp-usb doesn't take care of the device, then s-c-p-udev can get a shot... it would be nice to have a aggregated application for USB printers, which will first try IPP-over-USB solution and then printer application if the former fails.
@heiner99 escl comes from sane-backends project, so if you are willing, please report the issue you see there.

@zdohnal,
@heiner99 made a very good observation, that this problem was introduced in the ipp-usb 0.99.14, while 0.99.13 works well with his device. It helped me to quickly identify the root cause of this problem, so expect 0.99.15 to be released soon with the  appropriate fixes.
Out of memory bug in the sane-escl is probably fixed (at least, I've already seen it reported), but logistics of sane-backends package into distros is very slow, so nobody knows when this fix will reach your distro; sane-airscan never had such a problem.

To be more precise:

Latest version from github with comment line 533 works fine on my PC.
Cups finds the printer and printing is ok.
Scanning with sane-airscan works.
Scanning with libsane1: failed to open device: escl:http://<IP_ADDRESS>:60000:out of memory

Version 0.9.13
Cups finds the printer and printing is ok.
Scanning with sane-airscan works.
Scanning with libsane1 works.

Version 0.9.14 (and printer is switched off and on)
Cups finds the printer and printing is ok.
Scanning with sane-airscan works.
Scanning with libsane1 works.

Hi,
I've updated the sources to include the fix.
please, retest the latest github version, and if everything is OK, I'll release ot as 0.9.15

With latest version from github:
Cups finds the printer and printing is ok.
Scanning with sane-airscan works.
Scanning with libsane1: failed to open device: escl:http://<IP_ADDRESS>:60000:out of memory
Thanks you

Fixed in 0.99.15
Regarding out of memory error with libsabe1, this is sane-escl bug. As far as I remember (from reading<EMAIL_ADDRESS>mail list), this bug already known and fixed, but logistics of sane-backends to most distros is very slow, so most likely the fix has not yet reached your distro,
<EMAIL_ADDRESS>