CrashLoopBackOff on the my-otel-demo-cartservice running on OpenShift

Bug Report
I am using the version 730:
https://github.com/open-telemetry/opentelemetry-demo/pull/730
Symptom
The cart service is not working, I can access the website, but cannot add items to the cart
I cleaned up everything in the cluster and apply the new version, but now, with the new version I can navigate on the application, open Jaeger and everything, but is failing when I try to add items to the cart.
the error:
Connecting to Redis: my-otel-demo-redis:6379,ssl=false,allowAdmin=true,abortConnect=false
2 Wasn't able to connect to redis
3 Unhandled exception. System.ApplicationException: Wasn't able to connect to redis
4 at cartservice.cartstore.RedisCartStore.EnsureRedisConnected() in /usr/src/app/src/cartstore/RedisCartStore.cs:line 89
5 at cartservice.cartstore.RedisCartStore.InitializeAsync() in /usr/src/app/src/cartstore/RedisCartStore.cs:line 62
6 at Program.
$(String[] args) in /usr/src/app/src/Program.cs:line 40
But as you can see here, Redis is accepting connection:
1:C 07 Feb 2023 18:34:44.280 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
2 1:C 07 Feb 2023 18:34:44.280 # Redis version=7.0.8, bits=64, commit=00000000, modified=0, pid=1, just started
3 1:C 07 Feb 2023 18:34:44.280 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
4 1:M 07 Feb 2023 18:34:44.286 * monotonic clock: POSIX clock_gettime
5 1:M 07 Feb 2023 18:34:44.291 * Running mode=standalone, port=6379.
6 1:M 07 Feb 2023 18:34:44.292 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
7 1:M 07 Feb 2023 18:34:44.292 # Server initialized
8 1:M 07 Feb 2023 18:34:44.292 # WARNING Your system is configured to use the 'xen' clocksource which might lead to degraded performance. Check the result of the [slow-clocksource] system check: run 'redis-server --check-system' to check if the system's clocksource isn't degrading performance.
9 1:M 07 Feb 2023 18:34:44.295 * Ready to accept connections

@Tiagodge thanks for reporting this.
How are you deploying the sample? (Docker or K8s)
Is the redis container running?
Which version of the demo are you using? (you have referred to 730, but this is from the docs, and not from the demo)

I deployed via helm chart using exactly this command:
helm install my-otel-demo open-telemetry/opentelemetry-demo
Yes, Redis pod is running and accepting connections as we can see on the pod log:
9 1:M 07 Feb 2023 18:34:44.295 * Ready to accept connections
This is the version I am using:
apiVersion: v2
appVersion: 1.3.0
dependencies:

condition: observability.otelcol.enabled
name: opentelemetry-collector
repository: https://open-telemetry.github.io/opentelemetry-helm-charts
version: 0.45.0
condition: observability.jaeger.enabled
name: jaeger
repository: https://jaegertracing.github.io/helm-charts
version: 0.66.1
condition: observability.prometheus.enabled
name: prometheus
repository: https://prometheus-community.github.io/helm-charts
version: 19.3.1
condition: observability.grafana.enabled
name: grafana
repository: https://grafana.github.io/helm-charts
version: 6.50.0
description: opentelemetry demo helm chart
home: https://opentelemetry.io/
icon: https://opentelemetry.io/img/logos/opentelemetry-logo-nav.png
maintainers:
name: dmitryax
name: puckpuck
name: tylerhelmuth
name: opentelemetry-demo
sources:
https://github.com/open-telemetry/opentelemetry-demo
type: application
version: 0.18.0

These two warnings are intriguing.  I don't see them on my side in any of the deployments I have running (also using Redis 7.0.10 now instead of 7.0.8)
6 1:M 07 Feb 2023 18:34:44.292 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
7 1:M 07 Feb 2023 18:34:44.292 # Server initialized
8 1:M 07 Feb 2023 18:34:44.292 # WARNING Your system is configured to use the 'xen' clocksource which might lead to degraded performance. Check the result of the [slow-clocksource] system check: run 'redis-server --check-system' to

Can you try reinstalling again?  Redis is up to 7.0.10 now, and though I doubt that would be the cause, I want to ensure we are all using the same version.

The Helm chart has been updated to work with OpenShift. There are a few special instructions you need to follow in the Helm chart's readme for OpenShift installation.


Support application/vnd.ms-excel.sheet.binary.macroenabled.12

Hi,
Thanks for great project!
Could you add support for application/vnd.ms-excel.sheet.binary.macroenabled.12?
Currently (version 1.2.1) extraction ends with:
textract.fromFileWithPath('18.xlsb', console.log);

{ [Error: Error for type: [[ application/vnd.ms-excel.sheet.binary.macroenabled.12 ]], file: [[ 18.xlsb ]]] typeNotFound: true } null

Looks like a casing problem (macroenabled  vs macroEnabled ) as textract does have support for this.  Should be a quick fix.  Want to get this into 1.3, though.  Been bogged down by work and sick kids lately but need to push through to get that out.


Lack of information on the Controller side

Hello,
During my work with RISE-V2G I've found a few situations where the Controller could use some more detail about the current progress than what is available now.
On the SECC side:

details of the CurrentDemandReq like the remainding time or the EVRESSSOC could be useful for the customer
current state (and change in the state) would be useful for various charge related processes: when to activate on isolation checking, when to turn on different PSU, etc.

I believe such situations would exist on the EVCC side as well.
I see two approaches here:
A) we could add more methods to IDCEVSEController and the respective interfaces. But there could be always cases that weren't thought of, and also this approach could make the interface cluttered
B) since V2GCommunicationSession is already Observable the controller could use this to subscribe events that expose a higher detail than available now. What I'm thinking of is that a notifyObserver would be called with the current state and the latest received and parsed message every time a message arrives.
I've opened this issue to discuss these possibilities. When there is a decision I'd be glad to send pull requests with the changes.

I'm happy to look at a proposal sent via a pull request and then engage a discussion based on this.

Closed due to inactivity.


Monticello metadata without 'version' file results in 0-length file being created (on Squeak)

Hi —
tl;dr: MCFileTreeAbstractReader>>#hasMonticelloMetadata might be better with an #and: than an #or:
When a repo has a 'monticello.meta' directory, but there is no 'version' file in it, e.g. [1], FileTree will currently (incorrectly?) try reading from that non-existent file, which in Squeak 5.3 will leave behind a 0-length file in its place.
This seems to be because:

MCFileTreeAbstractReader>>#hasMonticelloMetadata sees the presence of the 'monticello.meta' directory as a sign that the version file should be present;
MCFileTreeAbstractReader tries to read the version file;
MCFileTreeFileDirectoryUtils>>#readStreamFor:in:do: calls FileDirectory>>#fileNamed:do:  which in Squeak creates a FileStream on a new file (I believe)

I can craft a pull request if this seems reasonable.
Tested on Squeak 5.3
[1] https://github.com/SeasideSt/Grease/tree/master/repository/BaselineOfGrease.package/monticello.meta

Whoops, maybe this belongs in a FileTree repo instead...?

Yes, wrong repo, sorry.  Closing.


Shouldn't ifconfig down disable the radio?

I would expect that otIp6SetEnabled(false) effectively disables the radio, but this doesn't seem to be the case. Actually it seems Links::Disable is never used in the code. Is there any reason for that?

I cannot recall any specific reason for this.
I noticed this (that we never call Disable()) in past. To me it is reasonable to add this but may be careful if there happens to be any side-effects


Data Actions are recreated on each terraform request

Hey, I have a really simple script:
resource "genesyscloud_integration_action" "dataTableOfflineTransfer2" {
  name           = "DataTable Offline Transfer2"
  category       = "Genesys Cloud Data Actions"
  integration_id = data.genesyscloud_integration.gcIntegration.id
  secure         = false
  contract_input = jsonencode({
    "type" = "object"
    "properties" = {
      "KEY" = {
        "type" = "string"
      },
      "ConversationId" = {
        "type" = "string"
      },

    }
  })
  contract_output = jsonencode({
    "type" = "object"
  })
  config_request {

    request_url_template = var.dataActionOfflineTransfer
    request_type         = "POST"
    request_template     = "$${input.rawRequest}"
     headers = {
     Cache-Control = "no-cache"
     Content-Type = "application/json"
   }
  }
  config_response {
     translation_map = {}
     translation_map_defaults = {}
     success_template = "$${rawResult}"
  }
}

The main problem is that every time you call the terraform -apply command, that script delete actual configuration and re-create the same with diffrent ID , which makes it impossible to use Data Action in IVR Flow because the Unique ID changes every time.

Hi, if the integration_id, secure, contract_input or contract_output values change then a new resource is created. This is because the API does not allow these attributes to be updated on this resource.


[e2e]: generic schedule main multi-uses slsa3

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/2678195946
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.schedule.main.multi-uses.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.schedule.main.multi-uses.slsa3.yml
Trigger: workflow_dispatch
Branch: main
Date: Fri Jul 15 17:01:26 UTC 2022

Repo: https://github.com/slsa-framework/example-package/tree/main
Run: https://github.com/slsa-framework/example-package/actions/runs/2678940690
Workflow file: https://github.com/slsa-framework/example-package/tree/main/.github/workflows/e2e.generic.schedule.main.multi-uses.slsa3.yml
Workflow runs: https://github.com/slsa-framework/example-package/actions/workflows/e2e.generic.schedule.main.multi-uses.slsa3.yml
Trigger: workflow_dispatch
Branch: main
Date: Fri Jul 15 19:37:44 UTC 2022
Tests are passing now. Closing this issue.


refactor inline_var throws 'containing_statement is nil"

Hi this plugin looks amazing and I was excited about trying it out.
What I did:
Installed the plug-in according to the readme
in visual mod I place the cursor on a variable in and do ":Refactor inline_var"
What I expect
the variable gets inlined
What happens
I see the error: "containing_statement is nil"
the error is thrown here here
I was trying to figure out what this part of the code does and it looks like it is failing to fetch a referees to the symbol under the cursor for some reason. But I am a bit lost in this code base, so it would be grate if somebody could give me pointers on how to further investigate this.
Perhaps just forgot to install something, in that case I would be thankful is somebody pointed that out.

Could you share a minimal example of the code and language that you were trying to refactor when you found this error?

it is golang
package main

import "fmt"
var (
	PI = 3.14
)

func main() {

	fmt.Println("Hello, World!", PI)

}

It looks like we were only considering the short variable declarations. This should be fixed by #458


Added WKHTMLTOPDF entry

Project Name: WKHTMLTOPDF
Project URL: https://github.com/MihaelIsaev/wkhtmltopdf
Project Description:
Why it should be added to awesome-vapor:
[ ] Project has at least 15 stars (if it's a GitHub project)
[x] Project supports Swift 4
[x] Project supports at least Vapor 2
[x] I used correctly sized dash and ended the entry with a full stop 🤓

          1 Warning

:warning:
Too many changes (when adding, please keep it to one project per Pull Request)

  Generated by :no_entry_sign: Danger


Deprecate old layers endpoints?

Check that this is no longer used and fix it or delete it.
(/user/:user_domain)(/u/:user_domain)/api/v1/users/:user_id/layers/:id

If I recall correctly that endpoint was used to create custom base layers, but that might  have changed

At least GET is not working.

probaby layers are being rendered in the erb

There has been no activity on this issue for more several months. We are closing it. If you think this still needs to be addressed please open a new issue.


[Feature request] Change account name when importing new coin

[x] I have checked this feature was not yet requested.

Currently when you import a new coin from the hardware wallet you can't change the account name. You need to go to the account settings first, then change the name.
In the desktop app this is already implemented, this is very handy when you are adding a lot of accounts.
Part of the application
Adding new account/import

I think this issue can be closed now.
PR #862 closes this issue.


Version 2.0 with the breaking change Node > 16.0

Hi,
I just saw the new release for v2.0.0 just came out with breaking change Node >16.0.
Does it mean the new version will not work on the previous version of Node? Thanks :)

I upgraded nodejs to 19.0.0. It still works fine. :D


native: Update for libressl 3.5

Tested with libressl-3.5.3 on Gentoo using the libressl overlay (https://github.com/gentoo/libressl). Alternatively the code for older libressl versions could be removed, either way it doesn't really matter to me. I'm also not sure what is the last libressl version to work with tomcat-native.

I have an open umbrella ticket for LibreSSL in general. @markt-asf Should we continue to pursue to support LibreSSL?

If at all possible I would greatly appreciate if libressl support was not dropped since some people do still use it, although I would not mind dropping support for older libressl versions. With libressl 3.5 a lot of progress was made in bridging the gap between openssl and libressl.

If at all possible I would greatly appreciate if libressl support was not dropped since some people do still use it, although I would not mind dropping support for older libressl versions. With libressl 3.5 a lot of progress was made in bridging the gap between openssl and libressl.

I agree with you. Diversity is important, though I guess with 2.x we can safely raise the baseline here as well....

@michael-o I updated the first commit to remove the outdated code instead and set the first supported version as libressl 3.5.2 which is the first stable version of the 3.5.x releases. This is only enough to fix the build. In the second new commit I removed everything else that doesn't seem to be required for libressl anymore.
https://github.com/libressl-portable/portable/blob/5f5feb2bbc94a8cd8d101b6245c0d9b50f2a15ce/ChangeLog#L31

@michael-o I updated the first commit to remove the outdated code instead and set the first supported version as libressl 3.5.2 which is the first stable version of the 3.5.x releases. This is only enough to fix the build. In the second new commit I removed everything else that doesn't seem to be required for libressl anymore. Please review in case I am being overzealous in removing code, thanks!
https://github.com/libressl-portable/portable/blob/5f5feb2bbc94a8cd8d101b6245c0d9b50f2a15ce/ChangeLog#L31

Looking at the Gentoo discussion, for me as a BSD guy I don't see any reason to support LibreSSL compared to OpenSSL 3.0.0. Am I wrong? What are the compelling reasons from the against the discussion?

My main reasons are that libressl has a better track record with security and a significantly better build system. I also think its important to have viable alternative ssl implementations since it is so mission critical.
To be clear the main libressl user is OpenBSD who also maintains the project, but at least a few people are trying to still use it on Gentoo. As I understood one of the main concerns with keeping libressl was the maintenance burden, but with libressl 3.5 I was able to remove around 30 packages from the Gentoo overlay where the packages from the main repo worked instead.

My main reasons are that libressl has a better track record with security and a significantly better build system. I also think its important to have viable alternative ssl implementations since it is so mission critical.

On this I totally agree.

To be clear the main libressl user is OpenBSD who also maintains the project, but at least a few people are trying to still use it on Gentoo. As I understood one of the main concerns with keeping libressl was the maintenance burden, but with libressl 3.5 I was able to remove around 30 packages from the Gentoo overlay where the packages from the main repo worked instead.

I would recommend to raise this on<EMAIL_ADDRESS>

<EMAIL_ADDRESS>is cc'd on all these comments automatically.
I've no objection to libressl support in native 2.0.x. Nor to 3.5.2 being the minimum version.
Longer term, if there is demand for continued libressl support, there would need to be an appropriate Panama module

and a significantly better build system.

This is irrelevant, as downstream uses don't worry about build complexity. Build complexity may be a source of other issues, but it's not a good justification for wanting to use one library versus another.

I have built both on many platforms. It was a snap to build OpenSSL even on HP-UX. At runtme, this does not matter.

That being said, I am a big proponent of LibreSSL support if for no other reason than than to avoid a monoculture. Unfortunately, OpenSSL vs LibreSSL is a bit like comparing modern MS Edge, Chrome, and Opera and saying they are different browsers when they are significantly identical under the covers.

Here I do support @ChristopherSchultz. I want to avoid mono culture as well, but all of them are Chromium in different clothes.
From a runtime perspective, what is now better with LibreSSL compared to OpenSSL.
@ChristopherSchultz You maybe remember that I have started to improve the LibreSSL intergration, but it requires a lot of a time and I don't use LibreSSL. OpenSSL throughout.

there would need to be an appropriate Panama module

What exactly is this?

The plan is to migrate to Panama to avoid having to ship libtcnative at all, at which point everything is in Java. Right now, all the glue for the crypto library is in native C code in libtcnative which is potentially dangerous. Moving to Panama allows us to remove all native code that doesn't belong to the crypto library.

There used to be a comparison graph for libressl and openssl security issues showing how many security issues openssl introduced have never affected libressl, but its been years since I seen it and I am not sure where that was. However comparing the number of CVEs for libressl and openssl is a huge difference.

I'm going to really need a citation here. Forking a library, removing all the irrelevant code and claiming you have a new product with no security issues isn't really fair from a comparison perspective. If I fork OpenSSL to create ChriSSL tomorrow and just delete all the sources, I guarantee it'll never have any CVEs filed against it.

Arguably more people are submitting them for the latter.

Yes, CVEs are typically assigned to a single product. I'd be interested to see how many CVEs from the past few years filed against OpenSSL were also (silently) fixed in LibreSSL who gets a pass for those same issues.

I don't have the qualifications to conclusively argue which one is a better or worse ssl implementation[...]

I haven't studied the code, but I know a great deal of effort was put into simply removing code deemed unnecessary by the LibreSSL team. I have no idea how much re-writing of any code they have done since then. My guess is that they are still largely the same (minus the removals, of course).

there would need to be an appropriate Panama module

What exactly is this?

The plan is to migrate to Panama to avoid having to ship libtcnative at all, at which point everything is in Java. Right now, all the glue for the crypto library is in native C code in libtcnative which is potentially dangerous. Moving to Panama allows us to remove all native code that doesn't belong to the crypto library.

I still don't understand how it is going to solve #ifdef if you need conditional compilation...

I still don't understand how it is going to solve #ifdef if you need conditional compilation...

I'm not sure I understand. All the native code does away, so the "support" for LibreSSL goes into the Java code (the "Panama module") instead of libtcnative. I think @markt-asf's comment could be re-phrased as "let's plan to build LibreSSL support into the native-code-less Panama efforts already underway, rather than hacking them into the libtcnative C code we are hoping to phase-out."


tx-generator: add capability for PlutusV2 scripts

NB: This branch is rebased on jj/update-ledger, so it should only be merged on top of that. (EDIT: good to go ✅ )
This PR adds PlutusV2 capability to bench/tx-generator and prepares it to use the new SECP built-ins.

✅ -- The generator can now handle PlutusV2
✅ -- Flake input bump for plutus-apps, to include latest SECP scripts for benchmarking
✅ -- Script redeemers are now parametrizable in the generator, instead of hard-coded
✅  -- workbench integration

Additionally, workbench profiles plutus-secp-ecdsa and plutus-secp-schnorr have been defined. Those provide a benchmarking auto-loop script w/ a fitting redeemer targeted to use the respective SECP built-in.
In this PR, the cost model used is the one for protocol version 8.0 from preview.

bors r+

Very nice; this change enables consistently (and permamently) maintaining sets of protocol parameters and Plutus cost models. A great foundation for encoding a matrix of eras and protocol versions in workbench profiles.
Thank you Serge!

bors r+

bors r+


cli to replace python main_out.py

Addresses https://github.com/marrlab/DomainLab/issues/734
Seems to work fine. I have tested this commit as follows:
poetry build
pip install domainlab-0.4.3-py3-none-any.whl
domainlab -c ./examples/conf/vlcs_diva_mldg_dial.yaml

Codecov Report
Attention: 14 lines in your changes are missing coverage. Please review.

Comparison is base (54352be) 95.05% compared to head (29179fa) 94.78%.
Report is 2 commits behind head on master.

Files
Patch %
Lines

domainlab/cli.py
0.00%
14 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #740      +/-   ##
==========================================
- Coverage   95.05%   94.78%   -0.28%
==========================================
  Files         125      126       +1
  Lines        4911     4925      +14
==========================================
  Hits         4668     4668
- Misses        243      257      +14

Flag
Coverage Δ

unittests
94.78% <0.00%> (-0.28%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Addresses #734
Seems to work fine. I have tested this commit as follows:
poetry build
pip install domainlab-0.4.3-py3-none-any.whl
domainlab -c ./examples/conf/vlcs_diva_mldg_dial.yaml

nice work! Thanks!  Is there a way also to let the pytest cover this new file? Since without testing it will drag the coverage to be below 95% @agisga

@smilesun I have added some tests. At least on my machine they are passing.

Do you receive email that CI is broken for this PR? @agisga

Do you receive email that CI is broken for this PR? @agisga

Yes, sorry. I think this is because I added the entrypoint via poetry, but CI installed domainlab from setup.py and so the entrypoint isn't created for the domainlab in CI. Should I try to change the CI workflow to use Poetry?

=================================== FAILURES ===================================
_______________________________ test_entry_point _______________________________

self = [EntryPoint(name='markdown-it', value='markdown_it.cli.parse:main', group='console_scripts'), EntryPoint(name='tqdm', ...f2py.f2py2e:main', group='console_scripts'), EntryPoint(name='gdown', value='gdown.cli:main', group='console_scripts')]
name = 'domainlab'

    def __getitem__(self, name):  # -> EntryPoint:
        """
        Get the EntryPoint in self matching name.
        """
        if isinstance(name, int):
            warnings.warn(
                "Accessing entry points by index is deprecated.  "
                "Cast to tuple if needed.",
                DeprecationWarning,
                stacklevel=2,
            )
            return super().__getitem__(name)
        try:
            return next(iter(self.select(name=name)))
        except StopIteration:
>           raise KeyError(name)
E           KeyError: 'domainlab'

/opt/hostedtoolcache/Python/3.10.7/x64/lib/python3.10/importlib/metadata/__init__.py:352: KeyError

Do you receive email that CI is broken for this PR? @agisga

Yes, sorry. I think this is because I added the entrypoint via poetry, but CI installed domainlab from setup.py and so the entrypoint isn't created for the domainlab in CI. Should I try to change the CI workflow to use Poetry?

then I do not have to at you each time.  I posted the error above, what you suggested is related to
https://github.com/marrlab/DomainLab/issues/739
if changing to poetry could resolve both issues then fine

will this only be resolved on Thursday?

will this only be resolved on Thursday?

I'll try to get it done on Thursday. Sorry, I have a major deadline at work, so didn't really have time to look at GitHub. But tomorrow (Thursday) should be manageable.

@smilesun I fixed all checks here by having pytest executed through Poetry (see https://github.com/marrlab/DomainLab/pull/740/commits/230986665de908c4a6a73aed2009552fc92f1f97). Let me know if there are any other issues/questions.

@agisga , cool, great work, thanks!


Enhanced Exception Handling and Other Minor Fixes

A few fixes are implemented in this PR: Exception Handling, Proposed Improvements to Functional Programming Monads and Other Minor Fixes to Code Quality.
Exception Handling
Most prominently, the exception handling system has been enhanced. More exception classes are created to break down previously confusing exceptions into more comprehensible ones that tell you what went wrong, rather than just a catch-all exception category which obscures the true reason why an error has occurred.
Proposed Improvements to Functional Programming Monads
After observing some of the functional programming patterns which were used in the code, it has become clear that a functional programming interface which allows for inner functions to throw checked exceptions that would be floated back to the caller is necessary. There is a significant number of patterns whereby Optional was used in a manner that would not require the use of Optional in the first place.
In its place, I have proposed 2 new monads, ExOptional and ExFunction, which are the "exceptional" successor to the Optional monad. Do note that only the methods which I have observed being in use by the existing code base were implemented; more methods could be implemented in the future should the team see fit.
ExOptional mimics the behaviour of Optional, but it permits the use of functions that throw checked exceptions. These exceptions are floated back to the caller of the ExOptional methods. So far, only the map and flatMap methods support this exception floating behaviour.
ExFunction mimics the behaviour of the functional interface Function, by allowing users to declare functions that throw exceptions.
For example, the ExOptional class could be used to simplify this chunk of code:
public Optional<ReadOnlyTaskWise> readTaskWise(Path filePath) throws FileStorageLoadException {
    requireNonNull(filePath);

    Optional<JsonSerializableTaskWise> jsonTaskWise = JsonUtil.readJsonFile(
            filePath, JsonSerializableTaskWise.class);

    if (jsonTaskWise.isEmpty()) {
        return Optional.empty();
    }

    try {
        return Optional.of(jsonTaskWise.get().toModelType());
    } catch (IllegalJsonValueException ive) {
        logger.info("Illegal values found in " + filePath + ": " + ive.getMessage());
        throw new FileStorageLoadException(ive);
    }
}

into
public ExOptional<ReadOnlyTaskWise> readTaskWise(Path filePath) throws FileStorageLoadException {
    requireNonNull(filePath);

    try {
        return JsonUtil.readJsonFile(filePath, JsonSerializableTaskWise.class)
                .filter(x -> !x.isEmpty())
                .map(x -> x.toModelType());
    } catch (IllegalJsonValueException ive) {
        logger.info("Illegal values found in " + filePath + ": " + ive.getMessage());
        throw new FileStorageLoadException(ive);
    }
}

In the above code, the method readJsonFile returns an ExOptional, which can then be mapped with an anonymous ExFunction object x -> x.toModelType(), which throws IllegalJsonValueException.
The inspiration for these changes came from https://stackoverflow.com/questions/27644361/how-can-i-throw-checked-exceptions-from-inside-java-8-lambdas-streams, and the implementation was inspired by my work in CS2030S.
Other Minor Fixes to Code Quality
I have also made minor improvements to the code quality of the codebase, by redoing some functional programming code snippets, as well as renaming some existing functions and classes to better suit the needs of our app.

@JCSnap I have included a short snippet of how the new ExOptional and ExFunction is used to simplify code and enhance existing functional programming code in the code base.


Fix merging of result sets for unloaded files

reopens #506

Merging {file => [nil, 0, 1]} and {} results in {file => [nil, 0, 1]} (ok)
Merging {} and {file => [nil, 0, 1]} results in {file => [nil, nil, 1]} (0 is lost, this is the bug)

When merging two result sets, if a file is missing on the LHS, which means the file is not loaded, zeros for the file on the RHS will be lost.

@hanazuki Thanks!

@sferik Could you cut a patch release for this please?

@sferik Would also be ❤ for Homebrew to have a patch release for this (and https://github.com/colszowka/simplecov/pull/520). Let me know if I can help at all! Thanks for the awesome project 🎉


Make simple_form optional

For rails --api apps there is no purpose of having simple_form dependency, probably all frontend stuff should be moved to another gem (i. e. strongbolt-assets).

I agree, but I'm not so sure we will have the bandwidth to tackle this soon. Is Simple Form causing errors in your Rails API app or can you use it anyways?

No errors, just a warning [Simple Form] Simple Form is not configured in the application and will use the default values. Use rails generate simple_form:install to generate the Simple Form configuration. on start, so no hassle at all.


How to add Japanese shipping address

What I'm trying to achieve
Shipping in Japan
Steps to reproduce the problem

Purchase
Enter shipping address

What I expected to happen
Go to the payment screen
Screenshots

System information
Operating system: mac
Browser: chrome
Explanation
Using saleor
I am making a toy shopping mall. thank you.
I have one problem and I have a question.
Unfortunately we do not ship to your selected country.
Please enter an alternative shipping address or contact us, if you think that's a mistake.

I have a tester to ship to Japan. The following message appears. How do I add Japan to my shipping address?

This problem is solved.

That was due to lack of shipping methods in populatedb, we know that it might be confusing so we are planning to introduce some improvements in #3436


Offline web vscode Error

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.84.1
OS Version: Debian 12

Steps to Reproduce:

Disable your internet connection.
run this command on the CLI: code serve-web --without-connection-token --user-data-dir /home/myuser
open a browser and try to open vscode on the web: http://<IP_ADDRESS>:8000

So you can see this error:
error error getting latest version: Could not check for update: error requesting https://update.code.visualstudio.com/api/latest/server-linux-x64-web/stable: error sending request for url (https://update.code.visualstudio.com/api/latest/server-linux-x64-web/stable): error trying to connect: dns error: failed to lookup address information: Temporary failure in name resolution

serve-web will not work until you have an internet connection. If you have an internet connection once and go to the server, and then go offline later, it will fall back to reusing the last version it pulled. But it needs this at least once to download the VS Code server.


Fix skybox persistence

Adjust SkyBoxImageType enum to match native persistence layer.
Add tests to verify fixes to native persistence layer.
Corresponding native PR.

@Ellord207 @Josh-Schifter fyi.


Add file upload and download events and corresponding LakeFSFile hooks

Provides support for file read events (mode == "rb") and changes the hook event from PUT_FILE to the newly created FILEUPLOAD.

Codecov Report
Patch coverage: 87.50% and project coverage change: -0.15% :warning:

Comparison is base (2c2f9e5) 92.00% compared to head (325ad17) 91.85%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #85      +/-   ##
==========================================
- Coverage   92.00%   91.85%   -0.15%
==========================================
  Files           7        7
  Lines         350      356       +6
  Branches       54       56       +2
==========================================
+ Hits          322      327       +5
  Misses         13       13
- Partials       15       16       +1

Files Changed
Coverage Δ

src/lakefs_spec/spec.py
90.28% <83.33%> (-0.26%)
:arrow_down:

src/lakefs_spec/hooks.py
100.00% <100.00%> (ø)

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


8/2 PM Publish

Docs Build status updates of commit 341e4d0:
:clock10: Full build: the average full build time is 22 min(s) 23 sec(s), this is based on the last 187 build(s) for this repository.

Docs Build status updates of commit 341e4d0:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Update documentation on running tests

Thank you for the issue @ericwburden.  And thank you @m-dango .


fix bug to display members in TA role

Motivation and Context
There was a bug when switched to the TA role, members would not show up in the summary table.
Your Changes
Previous query was wrong for this purpose. Fixed it here.
Type of change (select all that apply):

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

Testing
tested via UI
Checklist

[x] I have performed a self-review of my own code.
[ ] I have verified that the pre-commit.ci checks have passed.
[ ] I have verified that the CI tests have passed.
[ ] I have reviewed the test coverage changes reported on Coveralls.
[ ] I have added tests for my changes.
[ ] I have updated the Changelog.md file.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 2 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 91.694%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
38811

Relevant Lines:
41705

💛  - Coveralls


how to create negative samples?

"To generate a single negative sample, a random reference bacterium and a random sample from the positive ClusterFinder set were selected. Each gene in the positive sample was replaced with a random gene from the reference bacteria, while considering only 1% of genes that were most similar in number of Pfam domains. In total, three samples were generated from each reference bacteria, producing 10 128 negative samples."
In theory, a lot of negative samples can be created. Have you tried to generate other numbers of negative samples for training?
And I don't figure out how to create a negative sample. In the above description, the operation object seems to be positive sample instead of reference bacteria.After removing the regions similar to MIBiG,How did you create negative samples？
Thank you very much!

Hi @wawpaopao we haven't experimented with other settings or other methods of generating negative sets. You can download our negative samples "GeneSwap_Negatives.pfam.tsv" in format supported for DeepBGC training from this release page: https://github.com/Merck/deepbgc/releases/tag/v0.1.0


Fix a couple of sequencer issues

Any background on why returning entries in sequenced order is helpful?

Well, it seems like GetSequencedEntries() should really return them in sequence order, but the way I discovered that it wasn't doing that was that it caused NextAvailableSequenceNumber() to return something way too low (because it just checks the last entry in the returned list.)  I could've fixed it there too by making that O(N) and scanning.

LGTM


Update Verifiers.sol

avoid returning valid, default to true
tests show 10-20 gas saved on both true and false conditions

@dannyadkins can you reopen this PR so that CI will run?


Parameterize default max gossip

Make gossip parameter configurable
sync:
      max_gossip: 10

We might want to add parameter to epoch/apps/aeutils/test/data/epoch_full.yaml

I did not add it to epoch_full.yaml because I don't believe this is something the user should fiddle with. As I posted before, we try to be friendly to other nodes using this variable. It is very likely that some users will see this value and say: let's send it to everyone, then my transactions get everywhere quickly.
We don't want users to put 1000 there. This would potentially break the system as a whole. Therefore, try to minimize use of this variable outside what we believe is a good value.

Single users setting it to 1000 wont make much difference... As long as we don't mention it in the main setup documents we should be fairly safe.

@ThomasAerts 👍


Feed in edge weights from head to TCN

Feed in edge weights into MLP feeding into IN steps of TCN

I guess the complication here is that calculating the edge weights "bottlenecks" the information you get from the network, so we could both calculate edge weights and reject bad edges and propagate the edge features through an MLP to receive a more complicated set of features? It's at least worth trying.

Also see #130

Already implemented (and toggleable)


Update jsx-alignment for TS 2.3

In TS 2.3, the attributes is a separate node type instead of an array.
To support it without requiring a version bump, make the attributes argument an union type, and grab the properties property if the argument is not an array.
c.f. https://github.com/Microsoft/TypeScript/blob/2e43c869b/lib/typescript.d.ts#L1019-L1020

Thanks for your interest in palantir/tslint-react, @Kovensky! Before we can accept your pull request, you need to sign our contributor license agreement - just visit https://cla.palantir.com/ and follow the instructions. Once you sign, I'll automatically update this pull request.


[SPARK-11243] [SQL] zero out padding bytes in UnsafeRow

For nested StructType, the underline buffer could be used for others before, we should zero out the padding bytes for those primitive types that have less than 8 bytes.
cc @cloud-fan

Merged build triggered.

Merged build started.

Test build #44132 has started for PR 9217 at commit 12613bd.

LGTM

Test build #44132 has finished for PR 9217 at commit 12613bd.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):\n  * class MutableUnsafeRow(val writer: UnsafeRowWriter) extends GenericMutableRow(null) \n

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/44132/
Test PASSed.

@davies  did you have a chance to add a test case yet?

Merged build triggered.

Merged build started.

Test build #44204 has started for PR 9217 at commit cf01d6d.

Test build #44204 has finished for PR 9217 at commit cf01d6d.

This patch fails Scala style tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):\n  * class MutableUnsafeRow(val writer: UnsafeRowWriter) extends GenericMutableRow(null) \n

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/44204/
Test FAILed.

Merged build finished. Test FAILed.

Merged build triggered.

Merged build started.

Test build #44207 has started for PR 9217 at commit 9ff3f66.

Test build #44207 has finished for PR 9217 at commit 9ff3f66.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/44207/
Test PASSed.

Thanks. I've merged this.


Fix a bug in use_original_dst option

Is it possible to somehow have a test that covers this?  I'm wondering if we could somehow have a virtual function that resolves the original address so that we can than test it? I'm fine getting this fix in to unblock you but if we could follow up with a test that would be great.

I think with the virtual function and a TestListenerImpl class we could probably test it pretty easily following along here:
https://github.com/lyft/envoy/blob/master/test/common/network/listener_impl_test.cc

Added a test as you suggested. PTAL.


Fix ccnt overflow in gpperfmon

For some reason gpmon_qexeckey_t structure used int16 for ccnt while all other GP code operates int32. This problem can cause ccnt overflow in gpperfmon packets.

Failed tests are caused by a bug in CI (now it is fixed)


fix: fix type assertion panic

ref: https://github.com/cectc/dbpack/issues/
Ⅰ. Describe what this PR did
fix #91
Ⅱ. Does this pull request fix one issue?
#91
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

Codecov Report

Merging #92 (81c88ef) into dev (194eff9) will decrease coverage by 0.00%.
The diff coverage is 0.00%.

:exclamation: Current head 81c88ef differs from pull request most recent head ab40a8d. Consider uploading reports for the commit ab40a8d to get more accurate results

@@            Coverage Diff             @@
##              dev      #92      +/-   ##
==========================================
- Coverage   41.66%   41.66%   -0.01%
==========================================
  Files          47       47
  Lines        5774     5775       +1
==========================================
  Hits         2406     2406
- Misses       3145     3146       +1
  Partials      223      223

Impacted Files
Coverage Δ

pkg/executor/single_db.go
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

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

LGTM


Add support for custom mapping when creating a new index using ElasticsearchDocumentStore

Is your feature request related to a problem? Please describe.
This is not related a problem, it's an additional functionality.
Describe the solution you'd like
I'd like to use a custom mapping when using ElasticsearchDocumentStore and creating a new index.
Describe alternatives you've considered
N/A
Additional context
This stems from this discussion.
As of now mappings are hardcoded here.

I'd like to take it up if no one is working on it!

Cool! @AnushreeBannadabhavi feel free to open a PR. :)


I can't load RxlifecycleAndroidKotlin2

I can't load  'com.trello.rxlifecycle2:rxlifecycle-android-lifecycle-kotlin:2.2.2'
This is an error message：
Duplicate class android.arch.core.util.Function found in modules classes.jar (android.arch.core:runtime:1.1.0) and common-1.1.1.jar (android.arch.core:common:1.1.1)

Go to the documentation to learn how to Fix dependency resolution errors.

Does this mean that it is duplicated with other open source libraries?

You should follow the advice it says - "Go to the documentation to learn how to Fix dependency resolution errors."
Again - I can't emphasize this enough - this forum is for bug reports for this specific library. What you've posted here (and repeatedly in the past few days) are support requests. I do not offer one-on-one support because I don't have time for it, sorry.

I'm very sorry, because it's me who takes over other people's projects. And it was my first exposure to RxLifecycle, so I couldn't tell if the problem with Kotlin refactoring was RxLifecycleor the rest of the project.
Again, I'm sorry for my previous irrational interruption.


initialize payload variable onInit-call

With the following payload.config.ts file:
import OAuthButton from "./OAuthButton";
import Media from "./collections/Media";
import Pages from "./collections/Pages";
import Topics from "./collections/Topics";
import Users from "./collections/Users";
import Footer from "./globals/Footer";
import LandingPage from "./globals/LandingPage";
import MainNavigation from "./globals/MainNavigation";

import { buildConfig } from "payload/config";
import { LexicalPlugin } from "payload-plugin-lexical";
import { oAuthPlugin } from "payload-plugin-oauth";

import path from "path";
const { CLIENT_ID, CLIENT_SECRET, MONGODB_URI } = process.env;
const SERVER_URL = process.env.SERVER_URL || "http://localhost:3000";
export default buildConfig({
  admin: {
    user: Users.slug,
  },
  collections: [Users, Pages, Media, Topics],
  globals: [MainNavigation, LandingPage, Footer],
  typescript: {
    outputFile: path.resolve(__dirname, "payload-types.ts"),
  },
  localization: {
    locales: ["fi", "en"],
    defaultLocale: "fi",
    fallback: true,
  },
  plugins: [
    LexicalPlugin({}),
    oAuthPlugin({
      mongoUrl: MONGODB_URI,
      clientID: CLIENT_ID,
      clientSecret: CLIENT_SECRET,
      authorizationURL: "https://accounts.google.com/o/oauth2/v2/auth",
      tokenURL: "https://www.googleapis.com/oauth2/v4/token",
      callbackURL: `${SERVER_URL}/oauth2/callback`,
      scope: ["profile", "email"],
      async userinfo(accessToken) {
        const user = await fetch(
          `https://www.googleapis.com/oauth2/v3/userinfo?access_token=${accessToken}`,
        ).then((res) => {
          if (!res.ok) {
            // eslint-disable-next-line no-console
            console.error(res);
            throw new Error(res.statusText);
          }
          return res.json() as unknown as {
            sub: string;
            name: string;
            given_name: string;
            family_name: string;
            email: string;
          };
        });
        return {
          sub: user.sub,

          // Custom fields to fill in if user is created
          name:
            user.name ||
            `${user.given_name} ${user.family_name}` ||
            "Teemu Teekkari",
          email: user.email,
        };
      },
      components: {
        Button: OAuthButton,
      },
      userCollection: Users,
    }),
  ],
});

and server.ts:
import dotenv from "dotenv";
import express from "express";
import payload from "payload";

dotenv.config();

const app = express();

// Redirect root to Admin panel
app.get("/", (_, res) => {
  res.redirect("/admin");
});

const start = async () => {
  // Initialize Payload

  await payload.init({
    secret: process.env.PAYLOAD_SECRET,
    mongoURL: process.env.MONGODB_URI,
    express: app,
    onInit: (payload) => {
      payload.logger.info(`Payload Admin URL: ${payload.getAdminURL()}`);
    },
  });

  app.listen(3001);
};

void start();

The plugin fails the oAuth login with an error stating no collection for slug "users", even though they exist. This seems to happen because the plugin imports payload happening prior to the proper initialization.
Proposed fix made with this PR is to instead of importing payload, we assign it to the variable in the onInit-function.

Hmm, seems like this error was due to some misconfiguration on our npm linking config, we were using a PNPM monorepo, after fixing the issue this works, so no need for this change.


darwin: abort() if (un)locking fs mutex fails

The pthread_mutex_lock() and pthread_mutex_unlock() calls logically
cannot fail in uv__fs_write() but let's check the return value anyway:
cosmic rays and memory corruption do happen.
R=@saghul - for when you're back.

LGTM


I want to do reward distribution of block producers each day

this is an issue I want to have reward distribution every day is it possible?

The system contract included in the eos repository allows claim rewards every 24 hours.  In producer_pay.cpp:
eosio_assert( ct - prod.last_claim_time > useconds_per_day, "already claimed rewards within past day" );

If current time minus last claim time (in microseconds) is greater than the number of microseconds in a day, claim processing will proceed.  If you want reward distribution more frequently, modify that file, recompile your system contract, and upload it to your chain.


WARP intune deployment

Which Cloudflare product does this pertain to?
Zero Trust
Existing documentation URL(s)
https://developers.cloudflare.com:2083/cloudflare-one/connections/connect-devices/warp/deployment/mdm-deployment/#windows
What changes are you suggesting?
Intune deployment not accurate; please work to correct it
Additional information
not able to deploy based on the process outlined

Hi @YQX77, we have updated the instructions in #12298. Feel free to open a new issue if you have additional documentation suggestions!


Update build instructions so it can build on macOS too

This is such a cool project!
I was trying to compile it on macOS, and I would get errors like:
conway.c:2:18: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
                 x,y,cx,cy,dx,
                 ^
                 int

After a bit of googling I found out how to tell gcc to use an older C standard which would then build successfully on macOS too. The reason why this is needed is because by default, gcc on macOS is an alias to clang as far as I can tell:
λ ~/Desktop/ gcc -v
Apple clang version 15.0.0 (clang-15<IP_ADDRESS>)
Target: arm64-apple-darwin23.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

All that is needed is the -std=c90 flag which works both for clang as well as gcc!
After doing that it builds and runs just fine for me both on linux as well as macOS.

It actually doesn't work:
$ gcc -std=c90 -w -o conway conway.c
conway.c:22:34: error: C++ style comments are not allowed in ISO C90
   22 | ,8,16);usleep    (80*1000);}}    // (c) Tsoding
      |                                  ^
conway.c:22:34: note: (this will be reported only once per input file)
$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/14.1.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --enable-languages=ada,c,c++,d,fortran,go,lto,m2,objc,obj-c++,rust --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://gitlab.archlinux.org/archlinux/packaging/packages/gcc/-/issues --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 14.1.1 20240522 (GCC)

But -std=gnu90 does the trick:
$ gcc -std=gnu90 -w -o conway conway.c
$ ./conway
................
................
................
................
....#...........
.....##.........
....##..........
................

For me it works both with gnu90 and c90:

I can also see this happening on my side:
$ clang -std=c90 -w -o conway conway.c
$ gcc -std=c90 -w -o conway conway.c
conway.c:22:34: error: C++ style comments are not allowed in ISO C90
   22 | ,8,16);usleep    (100*1000);}}   // (c) Tsoding
      |                                  ^
conway.c:22:34: note: (this will be reported only once per input file)

Clang is "gcc-compatible" but seems like gcc is more strict to the standard here.
GCC manual says that you cannot do this stuff with C90 - reference
@rexim could you revert/fix this patch?

I would personally vote for a fix because it doesn't compile at all without -std=gnu90.

Yes, reverting is a bad idea, as it would stop compiling on some systems like mine.
-std=gnu90 seems to work on both so it's a good middle ground!


Vickel: Watch bakewithzohi.com

Vickel requests the watch of the watch_keyword bakewithzohi\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

bakewithzohi\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ


Ts/statejs

I'm not sure what this is but it does look like the kind of pull request that should be discussed in advance.


CleanBC: Investigate PlugShare and API

Open in MURAL
CleanBC JIRA to GH Integration - CITZ – BCDS – Data Systems and Services

PO for APS indicated:

I understand this to mean that the API Gateway will give us an endpoint to access from the app and handling the exchange of credentials with the API from Flo EV (e.g. providing the token).  DevOps reps should touch base with APS reps if they are not familiar with their offering.

Copied from our JIRA issue:
Outcome
PlugShare’s API doesn’t appear to give driving directions to a charging location, but it does have lots to offer in finding charging locations and providing data about them.
An API key is required. A key can be requested at API Request Form . However this page currently says that only commercial licenses (i.e. not private or non-commercial) are available at this time. We would expect Clean BC to get and maintain an API key.
Key entities in their API (https://developer.plugshare.com/docs ) are Location, Station, and Outlet. A Location contains one or more Stations, and a Station contains one or more Outlets.
API for Location (https://developer.plugshare.com/docs/#location ) seems to be most useful to us. It has methods to:

Get Locations nearby (via lat/long or address)
Get Locations in a region via lat/long spans
Search Locations using a query, which can include the name of a city or state/province and several other attributes
Fetch Locations along a route, via a route (polyline of lat/longs) plus a distance in meters from the route


Missing Wav Files

Obviously the main reason is that there's nothing to extract/no folders for it but for carol roll, over half of the sounds are missing (Uso~!(No Kidding~!), Mattaku Mou (Oh... Come on!), Nyan(meow), Hoi, Nandeyanen (What the heck in Kansai intonation), Hai!, nh?, and Party!!) Maybe stems could fix the problem?

Or if you still have the files, adding them to a folder as said at the start.

It would really help if he did add all his commonly used audios like the Uso! and Hai! sound.

to be honest, those and mattaku mou are the only ones i care about. i'm desperate at this point

Yes, there's so many assets that BB needs to release. Like maybe his old Boyfriend soundfont? And these anime-like wavs.

Apparently someone got in contact with him to get one of the carol voice files which I wish i was able to do but it doesn't seem like there's anywhere to do that, although I doubt he'd notice.

dk why i bothered :/

how do u close issues

finally! i found them! they were in a vol 1 kawaii voice sample video

Video link?

https://www.youtube.com/watch?v=cbn8ktwYFWw

theres a few with forbidden symbols in the name so just copy and paste this into them ?

Give me the link, GoofyGuyWhoCantAnimate

sorry, thought you used it already, here https://www.youtube.com/watch?v=cbn8ktwYFWw

did you use it? because i needa delete that reply

oh, also here's the carol voices if you dont have them already https://github.com/bbpanzu/bb-fnf-mods/blob/29aa07eb8a448cf50bcdc8f445d82db46c3c85b3/FL Studio thingies/carol voice noted.mp3

Oh that's pretty interesting, I thought she used a voice actor.

no thats for the song

I know.

oh

I thought a voice actor was used for the song.

i mean it might be, it doesnt sound like him

No, listening to the raw audio it's either UTAU or some other vocaloid/AI Voice. It's definitely not a real person.

Oh, okay.

It's also just interesting to listen to the unedited source audio and seeing how it was all out of beat and how BB chopped it up perfectly.

true

started off with complaining about missing sounds to whatever this is

k now that i think of it, that does not sound real at all

even if they're 0cc files, its still annoying

0cc files are for famitrack I'm pretty sure, and the og versions of those songs are in their respective folders.


indexOfSlice buggy

scala> Vector(0,1).indexOfSlice(List(0,1)) // OK
res10: Int = 0

scala> Vector(0,1).indexOfSlice(Vector(0,1)) // 💥
res11: Int = -1

scala> Vector(0,1).lastIndexOfSlice(List(0,1)) // 💥
res14: Int = -1

Test case here: https://github.com/scala/scala/blob/2.13.x/test/files/run/kmpSliceSearch.scala#L33-L34, but need to replace SeqLike.indexOf(...) by xs.indexOfSlice(ys)

https://github.com/scala/scala/blob/2.13.x/test/files/run/seqlike-kmp.scala also shows a different output.

Yeah, that's the one I was talking about in gitter.
I'll try to turn everything into bug reports.  Still working on getting all the collections in.


git-spr subcomand panics with invalid memory address

As in title, any spr command throws a nil pointer error
 git spr update
> git rev-parse --show-toplevel
> git fetch
> git branch --no-color
> git rebase origin/develop --autostash
> github fetch pull requests
> git branch --no-color
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x1375c72]

goroutine 1 [running]:
github.com/ejoffe/spr/github/githubclient.(*client).GetInfo(0xc00012af30, {0x152b710, 0xc000122000}, {0x1529600, 0xc00012aee8})
        /Users/runner/work/spr/spr/github/githubclient/client.go:190 +0x112
github.com/ejoffe/spr/spr.(*stackediff).fetchAndGetGitHubInfo(0xc000130e40, {0x152b710, 0xc000122000})
        /Users/runner/work/spr/spr/spr/spr.go:448 +0x158
github.com/ejoffe/spr/spr.(*stackediff).UpdatePullRequests(0xc000130e40, {0x152b710, 0xc000122000}, {0x0, 0x0, 0x0}, 0x0)
        /Users/runner/work/spr/spr/spr/spr.go:113 +0x9b
main.main.func3(0xc000130f60)
        /Users/runner/work/spr/spr/cmd/spr/main.go:143 +0xdf
github.com/urfave/cli/v2.(*Command).Run(0xc0002098c0, 0xc00013f200)
        /Users/runner/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/command.go:163 +0x64a
github.com/urfave/cli/v2.(*App).RunContext(0xc000193040, {0x152b710, 0xc000122000}, {0xc000134000, 0x2, 0x2})
        /Users/runner/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:313 +0x81e
github.com/urfave/cli/v2.(*App).Run(...)
        /Users/runner/go/pkg/mod/github.com/urfave/cli/v2@v2.3.0/app.go:224
main.main()
        /Users/runner/work/spr/spr/cmd/spr/main.go:200 +0x1099

I think this might have come with the 0.9.2 upgrade. Will test 0.9.1.

Figured out the cause. In the 0.9.x versions of spr, if the GITHUB_TOKEN is not set it throws this nil pointer instead of providing  a warning to stdout like before.
When the GITHUB_TOKEN is set, it does not throw the nil pointer. But git spr update results in a panic: createPullRequest: was submitted too quickly panic.

I have confirmed that none of these issues are present in 0.8.5.

@jameskyle - can you please check if you still have this issue in the latest v0.10.0?

We are still seeing this with VERSION: 0.11.1 : 2023-03-30T17:52:16Z : 96da77ea

I've hit this today on 0.14.4 😱
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x2 addr=0x0 pc=0x10254e050]

goroutine 35 [running]:
github.com/ejoffe/spr/github/githubclient.formatStackMarkdown({{0x140000977ec, 0x8}, {0x14000097730, 0x28}, {0x140000977b9, 0x1f}, {0x102655c68, 0x0}, 0x0}, {0x1400033e3e0, ...})
	/Users/runner/work/spr/spr/github/githubclient/client.go:413 +0x60
github.com/ejoffe/spr/github/githubclient.formatBody({{0x140000977ec, 0x8}, {0x14000097730, 0x28}, {0x140000977b9, 0x1f}, {0x102655c68, 0x0}, 0x0}, {0x1400033e3e0?, ...})
	/Users/runner/work/spr/spr/github/githubclient/client.go:433 +0x74
github.com/ejoffe/spr/github/githubclient.(*client).UpdatePullRequest(0x1400000ca50, {0x102739030, 0x102a55460}, {0x102738f50, 0x1400000ca38}, {0x1400033e3e0, 0x3, 0x4}, 0x1400033a540, {{0x140000977ec, ...}, ...}, ...)
	/Users/runner/work/spr/spr/github/githubclient/client.go:524 +0x330
github.com/ejoffe/spr/spr.(*stackediff).UpdatePullRequests.func2(0x0?)
	/Users/runner/work/spr/spr/spr/spr.go:242 +0xcc
created by github.com/ejoffe/spr/spr.(*stackediff).UpdatePullRequests in goroutine 1
	/Users/runner/work/spr/spr/spr/spr.go:240 +0x108c

@maciektr I think your crash is #325.
I ran into this and setting GITHUB_TOKEN as suggested by @jameskyle fixed it for me.

@ejoffe Would it perhaps be possible to utilise git credential to get the token rather than relying on an environment variable? It should be as easy as
printf 'url=%s\n\n'<EMAIL_ADDRESS>| git credential fill

and parsing the output that looks like
protocol=https
host=github.com
username=ejoffe
password=ghp_***

I think this would be very useful functionality.


Update masking strategies guide with latest supported options

As of today our How-To: Configure Masking Strategies isn't accurate, as it says this:

Supported by fidesops policies

NullMaskingStrategy: Masks the input value with a null value.
... More strategies coming soon

I believe we support all masking strategies in the policies now too (thanks to #108 and #119), so we can update the docs to reflect that.

Targeting 1.2.0 for now as this should be a fairly quick update


general: legacy config variables deprecation message improvement

Since the update to latest master the following errors appear many times in the development console.
/Users/jmartinm/.virtualenvs/invenio-inspire/lib/python2.7/site-packages/werkzeug/local.py:338: RemovedInInvenio22Warning: Use a more specific variable from invenio/base/config.py instead
  return getattr(self._get_current_object(), name)

Problem here is that no reference to the actual problem is made, only a pointer to a line in the werkzeug library. This message should be improved if the aim is for the developer to make some fixes before Invenio 2.2 is released.

I found the line: https://github.com/inveniosoftware/invenio/blob/master/invenio/base/config.py#L87
And this is the commit: https://github.com/inveniosoftware/invenio/commit/ab641f6239b5a2edf79901e2da2a152e2ef37470
You can ask to @dset0x to help you to improve it :)
p.s. on invenio configuration loading, there is also another issue opened that can be connected: https://github.com/inveniosoftware/invenio/issues/3106

Thanks @hachreak , @dset0x can you have a look?

@jmartinm This patch should supply you with a stacktrace. It's probably a bit verbose to put in production however. https://gist.github.com/dset0x/da61b5ccf024049f90e2

As you can see in deprecation.py:deprecated, we make an effort to print the correct line. This works for direct invocations, but flask and werkzeug are more complex than that. Here's a sample traceback:
/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/local.py:312: RemovedInInvenio22Warning: Use a more specific variable from invenio/base/config.py instead
  obj = self._get_current_object()
  File "/usr/lib/python2.7/threading.py", line 783, in __bootstrap
    self.__bootstrap_inner()
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/serving.py", line 603, in inner
    passthrough_errors, ssl_context).serve_forever()
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/serving.py", line 462, in serve_forever
    HTTPServer.serve_forever(self)
  File "/usr/lib/python2.7/SocketServer.py", line 238, in serve_forever
    self._handle_request_noblock()
  File "/usr/lib/python2.7/SocketServer.py", line 295, in _handle_request_noblock
    self.process_request(request, client_address)
  File "/usr/lib/python2.7/SocketServer.py", line 321, in process_request
    self.finish_request(request, client_address)
  File "/usr/lib/python2.7/SocketServer.py", line 334, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "/usr/lib/python2.7/SocketServer.py", line 649, in __init__
    self.handle()
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/serving.py", line 203, in handle
    rv = BaseHTTPRequestHandler.handle(self)
  File "/usr/lib/python2.7/BaseHTTPServer.py", line 340, in handle
    self.handle_one_request()
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/serving.py", line 238, in handle_one_request
    return self.run_wsgi()
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/serving.py", line 180, in run_wsgi
    execute(self.server.app)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/serving.py", line 170, in execute
    for data in application_iter:
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/debug/__init__.py", line 88, in debug_application
    app_iter = self.app(environ, start_response)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask/app.py", line 1836, in __call__
    return self.wsgi_app(environ, start_response)
  File "/home/gs-sis/.virtualenvs/invenio/src/invenio/invenio/ext/legacy/__init__.py", line 119, in __call__
    response = self.app.full_dispatch_request()
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask/app.py", line 1479, in full_dispatch_request
    response = self.process_response(response)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask/app.py", line 1691, in process_response
    response = handler(response)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask_debugtoolbar/__init__.py", line 197, in process_response
    toolbar_html = self.debug_toolbars[real_request].render_toolbar()
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask_debugtoolbar/toolbar.py", line 45, in render_toolbar
    return template.render(**context)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/jinja2/environment.py", line 966, in render
    return concat(self.root_render_func(self.new_context(vars)))
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask_debugtoolbar/templates/base.html", line 73, in root
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/jinja2/runtime.py", line 193, in call
    return __obj(*args, **kwargs)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask_debugtoolbar/panels/config_vars.py", line 29, in content
    return self.render('panels/config_vars.html', context)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask_debugtoolbar/panels/__init__.py", line 28, in render
    return template.render(**context)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/jinja2/environment.py", line 966, in render
    return concat(self.root_render_func(self.new_context(vars)))
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask_debugtoolbar/templates/panels/config_vars.html", line 18, in root
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask_debugtoolbar/__init__.py", line 33, in _printable
    return repr(value)
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/local.py", line 312, in __repr__
    obj = self._get_current_object()
  File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/werkzeug/local.py", line 297, in _get_current_object
    return self.__local()
  File "/home/gs-sis/.virtualenvs/invenio/src/invenio/invenio/utils/deprecation.py", line 110, in new_func
    warnings.warn(message, category, stacklevel=3)
  File "/home/gs-sis/.virtualenvs/invenio/src/invenio/invenio/utils/deprecation.py", line 94, in warn_with_traceback
    traceback.print_stack()

As you can see the problem (kind of) originates in site-packages/flask_debugtoolbar/templates/panels/config_vars.html, which loops through a many key-value pairs for debugging purposes.
Solution 1
I could try to figure out werkzeug's codepaths and perhaps cut these stacktraces in half, but it's likely that I will fail - there is going to be way too many cases.
Solution 2
What I consider a perhaps more sane solution than that is a debugging workflow that looks like this:

You run the server
inveniomanage runserver
You see a deprecation warning (or any other warning) that you wish to tackle:
You determine a part the warning that you consider unique to it, say return getattr(self._get_current_object(), name)
Next time you run the server, you request more information on this warning:
INVENIO_EXPAND_WARNING='return getattr(self._get_current_object(), name)' inveniomanage runserver
This way, invenio knows to only print stacktraces with a warning line that contains the string in INVENIO_EXPAND_WARNING.

However, this solution is not ideal either. You may not manage to replicate the warning a second time.
Solution 3
We enable full stacktraces to a logfile when DEBUG=True.

Thanks for the update @dset0x
I am not sure what the best solution would be, but number 3 would get the job done as far as I can see.

@jmartinm I implemented it in the linked PR. Please give it a try when you have some time!

Without yet looking into the code, I added this commit and I get in the console:
/Users/jmartinm/.virtualenvs/invenio-inspire-next/lib/python2.7/site-packages/werkzeug/local.py:338: RemovedInInvenio22Warning: (u'Use a more specific variable from invenio/base/config.py instead', 'Full backtrace in the logfile if DEBUG is enabled')

But invenio.base.log does not contain any reference to that error.

@jmartinm There's a chance where we are accessing the said function but app is not yet initialize, in which case the code cowardly passes. If

your logfile has correct permissions and is otherwise written to by invenio, and
nothing is logged even when the warning is raised while the webpage is loading

it will require investigation.
Sorry for the problems caused. I'm still struggling to comprehend logging properly.

There are several points to clarify this issue:

Flask-DebugToolbar should be used only for debugging and any log messages that originates there should be ignored as it's touching all variables in on all stack levels (see bellow)

   File "/home/gs-sis/.virtualenvs/invenio/lib/python2.7/site-packages/flask_debugtoolbar/__init__.py", line 197, in process_response
    toolbar_html = self.debug_toolbars[real_request].render_toolbar()

Deprecation message should be improved by adding the name of the variable and correct stack level.
IMHO no other changes in logging needs to be done as the priority is to remove all invenio.config imports.

Flask-DebugToolbar should be used only for debugging and any log messages that originate there should be ignored as it's touching all variables in on all stack levels (see bellow)

Can do.

Deprecation message should be improved by adding the name of the variable and correct stack level.

Do you have any proposal as of how how to do that? This was part of "Solution 2", but it seems infeasible to me.

IMHO no other changes in logging needs to be done as the priority is to remove all invenio.config imports.

I'm not sure what you mean by this; what's the relationship between this and the removal of invenio.config?

Superseded by Invenio 3.


#852 Add and Improve Valkyrie French translations

Relates to this issue https://github.com/NPBruce/valkyrie/issues/852

Thanks for the pull request, please change the target branch to NPBruce:development.

replaced by #856
I discovered too late that I could just change the target branch


When I try training on my laptop ,some questions raised

Firstly, the picture blow shows that network structure misfits the pre-trained model parameter . I didn't change any module in mask rcnn network , are there some dismatches between pre-trained model and mask rcnn network?

Secondly , code here seem to  meet some problem : there no key named text in cfg as well as cfg.checkpoint_config.meta , anything wrong to my operations?
        cfg.checkpoint_config.meta = dict(
            mmdet_version=__version__, config=cfg.text)

https://github.com/open-mmlab/mmdetection/blob/53c647eac839aac788d719ba2c5f8215214cbdd8/tools/train.py#L57-L58

num_batches_tracked is added in new versions pytorch but they did not update the pretrained models, so this is normal.
cfg is not a dict but ConfigDict object.


Khelda, let me know if you need any contributor on video-scrub !

:D

Sure, appreciate it ;) Just random weekend experiments for now.


Job failed to load: undefined method `load_dj' for Syck:Module.

Submitted a job and ran a DJ worker and the job failed with an exception Job failed to load: undefined method 'load_dj' for Syck:Module.
This is my configuration

delayed_job version - 4.0.6
delayed_job_active_record - 4.0.3
Rails - 3.1.12
YAML ENGINE: YAML::ENGINE.yamler= 'syck'

Exception Trace
Job failed to load: undefined method `load_dj' for Syck:Module.
Handler: "--- !ruby/object:Delayed::PerformableMethod \nargs: \n- 198\n- 2015-02-25 01:08:41.226804 Z\nmethod_name: :set_favorite_last_accessed\nobject: !ruby/class SegmentReportQueriesController\n"
I debugged and this is what I found
The below code is from delayed/backend/base.rb For some reason the def load_dj defined in syck_ext.rb is not getting included.
def payload_object
  @payload_object ||= YAML.load_dj(handler)
  rescue TypeError, LoadError, NameError, ArgumentError, SyntaxError, Psych::SyntaxError => e
  raise DeserializationError, "Job failed to load: #{e.message}. Handler: #{handler.inspect}"
end

You don't need a new issue

This is a duplicate and it is discussed on #786


[Raspberry Pi] ARM architecture not supported

code-server version: latest
OS Version:  Raspbian 9.9 stretch

Description
Unable to start server:
pi@danpi:~ $ docker run -it -p <IP_ADDRESS>:8443:8443 -v "${PWD}:/home/coder/project" codercom/code-server --allow-http
docker: Error response from daemon: failed to create endpoint silly_babbage on network bridge: failed to add the host (veth4ce237b) <=> sandbox (vethd881caf) pair interfaces: operation not supported.

Steps to Reproduce

Run docker run -it -p <IP_ADDRESS>:8443:8443 -v "${PWD}:/home/coder/project" codercom/code-server --allow-http

@danhab99 Have you tried rebooting the Pi? From my research it looks like thag might be a possible resolution.

Did a reboot and tried running the command again, no change
pi@danpi:~ $ docker run -it -p <IP_ADDRESS>:8443:8443 -v "${PWD}:/home/coder/project" codercom/code-server --allow-http
standard_init_linux.go:207: exec user process caused "exec format error"

We don't currently distribute ARM binaries, but we're working on it

Bet. Close when ARM is supported.

https://github.com/cdr/code-server/issues/35 is currently tracking ARM releases. https://github.com/cdr/nbin/pull/7 is open to add ARM targeting support to our binary compiler

This has been highly requested in #35 btw, you can track what we have in place.
Next up is making the necessary modifications for code-server.

closing in favor of #35


Can't Start rtorrent When I Disable Autostart at Boot

I followed the solution on issue @68 to disable the automatic start on boot by commenting out the referenced lines on the user's crontab. Now when I call rt start I am told:
"No session lock file
Starting rtorrent
rtorrent has been started"
but when I enter rt, I am told "rtorrent is NOT running." When I add the -l flag, it also says "There were no problems encountered" in the file. The rutorrent log in the web browser says:
"No connection to rTorrent. Check if it is really running. Check $scgi_port and $scgi_host settings in config.php and scgi_port in rTorrent configuration file." I have not changed any of the networking settings after installation. I initially did this to prevent rtorrent from marking every completed torrent in the last session on boot as "Error."
EDIT: The nginx process still runs and I get the welcome message when I go to my local ip in a web browser.

@mjd119 , this is not the right place to bring your question as you have opened an issue which is for issue reporting, not support... Try screen rtorrent and rt restart. If you Google it you'll find plenty of guides to figure this out.


Stringify blocks as literal "|"

Is there a way to stringify blocks in literal format? e.g.
block: |
  A block
  of text

That's actually the default for your example, as the value is a multiline string:
YAML.stringify({ block: 'A block\nof text\n' })
// block: |
//   A block
//   of text

If you would like to set the format manually, that's also possible. You'll need to create a YAML document with your object's value as its contents, and then set the type of the scalar node:
const doc = new YAML.Document()
doc.contents = YAML.createNode({ block: 'A line of text' })
String(doc)
// block: A line of text

const node = doc.get('block', true)
node.type = 'BLOCK_LITERAL'
String(doc)
// block: |-
//   A line of text

any trick if I want to render all multiline strings in BLOCK_LITERAL without affecting all single line strings?


Arin has a big-ass head.

When Arin is saying this, his head gets huge. I know it's supposed to be like this, but is there supposed to be a background here or is it supposed to look like this?

Normal sprite, no matching background


lettuce cluster multiGet RedisCommandTimeoutException cause memory leak

I used lettuce 5.0.5.RELEASE and Spring Boot 2.0
and I write the code to multiGet value
  @Autowired
   private RedisTemplate<String, byte[]> redisTemplate;

        redisTemplate.opsForValue().multiGet(
            ids.stream()
                .map(RedisVideoProfileCache::genCacheKey)
                .collect(Collectors.toSet())
        )

Whenever I start the service for a long time, some app's  memory is leaked
I download a jmap to debug it
 num     #instances         #bytes  class name
----------------------------------------------
   1:       5668369<PHONE_NUMBER>  [B
   2:       9985354      455769512  [Ljava.lang.Object;
   3:       9797176      313509632  java.util.HashMap$Node
   4:       9700404      232809696  java.util.concurrent.CompletableFuture
   5:       8891675      213400200  java.util.ArrayList
   6:       3189943      127597720  io.lettuce.core.output.KeyValueListOutput
   7:       2802968      112118720  java.util.concurrent.CompletableFuture$BiRelay
   8:       3190015      102080480  io.lettuce.core.protocol.AsyncCommand
   9:       3190015      102080480  io.lettuce.core.protocol.Command
  10:       2358668       94346720  java.util.concurrent.CompletableFuture$UniWhenComplete
  11:       1077001       92868160  [C
  12:       3218728       77249472  io.lettuce.core.protocol.CommandArgs$KeyArgument
  13:       2399019       76768608  java.util.ArrayList$Itr
  14:       3190015       76560360  io.lettuce.core.protocol.CommandArgs
  15:        107450       76403064  [Ljava.util.HashMap$Node;
  16:       1572519       62900760  java.util.concurrent.CompletableFuture$UniApply
  17:       2411845       57884280  io.lettuce.core.KeyValue
  18:       3224435       51590960  java.lang.Integer
  19:        801185       32047400  io.lettuce.core.cluster.ClusterCommand
  20:        786213       31448520  java.util.concurrent.CompletableFuture$UniHandle
  21:       1251582       30037968  java.util.concurrent.CompletableFuture$CoCompletion
  22:        225886       29931880  [I
  23:        457000       25592000  org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation
  24:        786283       25161056  io.lettuce.core.DefaultConnectionFuture
  25:        826014       23765088  [Ljava.util.concurrent.CompletableFuture;
  26:        853506       20484144  java.lang.String
  27:        786652       18879648  io.lettuce.core.cluster.PooledClusterConnectionProvider$$Lambda$1028/1326396018
  28:        786652       18879648  io.lettuce.core.cluster.PooledClusterConnectionProvider$$Lambda$1030/1117636922
  29:        786652       18879648  io.lettuce.core.cluster.PooledClusterConnectionProvider$$Lambda$1031/481259366

the  byte[] used large than normal case
When I checked this app error log, I found large count RedisCommandTimeoutException
 less c67003c59bbb854f176124c48d4c172a0d7aff1b1d14725705a7d3e57aad9e4a.log  | grep ERROR | grep  "io.lettuce.core.RedisCommandTimeoutException: Command timed out" | wc
  12804<PHONE_NUMBER>372

less c67003c59bbb854f176124c48d4c172a0d7aff1b1d14725705a7d3e57aad9e4a.log  | grep ERROR | grep -v "io.lettuce.core.RedisCommandTimeoutException: Command timed out" | wc
     20     467    4835

I suspect this exception caused a memory leak, why ?

Reference documentation: https://lettuce.io/docs/
Wiki: https://github.com/lettuce-io/lettuce-core/wiki
Javadoc: https://lettuce.io/core/release/api/
Gitter Chat: https://gitter.im/lettuce-io/Lobby
Mailing list https://groups.google.com/d/forum/lettuce-redis-client-users or<EMAIL_ADDRESS>StackOverflow: https://stackoverflow.com/questions/tagged/lettuce
Twitter: If it's just a quick question you can ping our Twitter: https://twitter.com/LettuceDriver
Also have a look at the readme for more information on how to get support:
https://github.com/lettuce-io/lettuce-core/blob/master/README.md

Not quite sure this issue belongs here. A memory leak is memory that is allocated but never reclaimed. This isn't given here (as you have posted a one-time snapshot).
It's quite normal to see a lot of instances of futures, byte arrays and such until these get collected by the GC.
Should I increase the -xmx ?

Can you take a heap dump? If a lot of instances (CompletableFuture, AsyncCommand, …) cannot be GC'd, then we need to investigate where these instances are being held.

the heap dump is too large, give me some time to check it.
the histo：
jmap -histo:live 1 > a.histo
 num     #instances         #bytes  class name
----------------------------------------------
   1:       5131392<PHONE_NUMBER>  [B
   2:       8084532      390035360  [Ljava.lang.Object;
   3:       8770857      280667424  java.util.HashMap$Node
   4:       8900470      213611280  java.util.concurrent.CompletableFuture
   5:       7982156      191571744  java.util.ArrayList
   6:       2898244      115929760  io.lettuce.core.output.KeyValueListOutput
   7:       2557377      102295080  java.util.concurrent.CompletableFuture$BiRelay
   8:       2898245       92743840  io.lettuce.core.protocol.AsyncCommand
   9:       2898245       92743840  io.lettuce.core.protocol.Command
  10:       2173693       86947720  java.util.concurrent.CompletableFuture$UniWhenComplete
  11:       2926543       70237032  io.lettuce.core.protocol.CommandArgs$KeyArgument
  12:       2898245       69557880  io.lettuce.core.protocol.CommandArgs
  13:       2172816       69530112  java.util.ArrayList$Itr
  14:         66091       66272216  [Ljava.util.HashMap$Node;
  15:       1449163       57966520  java.util.concurrent.CompletableFuture$UniApply
  16:       2194895       52677480  io.lettuce.core.KeyValue
  17:       2884569       46153104  java.lang.Integer
  18:        725053       29002120  io.lettuce.core.cluster.ClusterCommand
  19:        724511       28980440  java.util.concurrent.CompletableFuture$UniHandle
  20:       1102491       26459784  java.util.concurrent.CompletableFuture$CoCompletion
  21:        724553       23185696  io.lettuce.core.DefaultConnectionFuture
  22:        760171       21127336  [Ljava.util.concurrent.CompletableFuture;

the heap dump leak suspects

I found the Circular References.

I found lettuce objects in another service.

I used mat to rebuild the heapdump.
<IP_ADDRESS>_Leak_Suspects.zip
<IP_ADDRESS>_Top_Components.zip

Watch out for the channel handlers (in particular CommandHandler) and the attached DefaultEndpoint. It's interesting to inspect the state of the connection, whether it's connected and how many instances of connections you have. If you don't have any concerns regarding data privacy issues with your heap dump, feel free to share it with me.

Why CompletableFuture reference its self?

I am having also a memory leak when using spring-session along with lettuce redis client.
What I have found is something similar as @shunminli found.
My versions are:
Spring-Session --> 1.3.3.RELEASE
io.lettuce, lettuce-core --> 5.1.0.RELEASE
biz.paluch.redis, lettuce --> 3.5.0.Final
What I've found was that a large array of bytes is created and constantly growing, until we reach the maximum heap available. After that the CPU usage without any request goes to 20/30% usage due to GC trying to release memory.
The problem is that I don't have lots of experience with profilers, and I am not able to find why there are 326MB of allocated bytes!
I already tried to give 2GB of heap and it gets filled pretty quickly as-well.

@shunminli Care to upgrade to the latest Spring Data release (Lovelace)? Spring Data Redis shares Redis Cluster connections by default so there's no need to use connection pooling.

my version
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-data-redis</artifactId>
  <version>2.0.4.RELEASE</version>

Upgrade lettuce version to 5.1.0.RELEASE fixed.


Crawler performance improvement

This improves crawler parallelization and CPU utilisation.
Before this crawler was creating one goroutine for each address that needs to be crawled(in one crawl interval) and it was placing Event in unbuffered channel (same for errors that were sent to err chan), on the other side blockchain listener was processing events from unbuffered channel, meaning one event at a time.
In other words many goroutines were waiting for the event chan to be freed.
Now it is added a buffered channel for both event and error with size equals to constants:
eventQueueMaxSize = 100
errorQueueMaxSize = 10
this could be something to watch over and tune it as needed.
Also blockchain listener is slightly updated to that it is processing each event in its own routine.
This drastically improves performances and now it is expected that server won't be crushing.
Note that this is not tested with realistic load, with max number of markets and big number of addresses.
@tiero @altafan please review.

That seems a nice improvement indeed.
@altafan thoughts?

Solve conflicts

I tested this by running the daemon... I can say that this is nice, I didn't saw any of those annoying warnings for accounts not funded after a trade anymore. Sometimes I see the message fee account funded. Trades can be served even if no warning was printed before, but not so concerned about it. It just means that there's still space for more improvements.
LGTM


Build with @grafana/toolkit

@algenty this plugin is looking really great.  Do you have any interest in converting it to use https://www.npmjs.com/package/@grafana/toolkit for the build?
I can help with that transition, and then we can support better cross version testing

Hi @ryantxu,
Thanks a lot :)
I don't know this tool, is it an official Grafana tool ?
Are you a member of team grafana ?
BR
Arnaud

is it an official Grafana tool?

Yes -- the goal is to share as much common tooling so plugins don't have to reinvent the wheel to use best practices.

Are you a member of team grafana?

Yes -- I joined grafana a few months back... after working with grafana plugins for many years

It's a good idea.
i need to convert Flowcharting in react and typescript before. there's a lot of work to do.

with toolkit, you can incrementally convert to typescript.  Converting the config UI to react will be difficult though!

Hi @ryantxu
Can you issue in grafana project please
https://github.com/grafana/grafana/issues/20148
I'am blocked


[MM-32910] Fix app store

Summary
gob can't deal with a map[apps.AppID]interface{} as it's an unknown type to it. We either need to use a []inferface{} or map[string]interface{}. I went with the latter as there are some code areas  that make use of the map and I wanted to keep the diff simple. Open for other suggestions.
Ticket Link
https://mattermost.atlassian.net/browse/MM-32910

Oops, sorry hit merge by accident, @iomodo if you disagree, please revert or submit separate fix(es)


scan inverted custom view

Description of the problem:
with a custom view i cannot scan inverted qrcode
`   barcodeScannerView = findViewById(R.id.zxing_barcode_scanner);
    CameraSettings settings = new CameraSettings();
    settings.setScanInverted(true);

   barcodeScannerView.setCameraSettings(settings);

    barcodeScannerView.setTorchListener(this);

    barcodeScannerView.getCameraSettings().setScanInverted(true);

    barcodeScannerView.getCameraSettings().setExposureEnabled(true);

    barcodeScannerView.initializeFromIntent(getIntent());

    Collection<BarcodeFormat> formats = Arrays.asList(BarcodeFormat.QR_CODE, BarcodeFormat.CODE_39);
    barcodeScannerView.setDecoderFactory(new DefaultDecoderFactory(formats));

    barcodeScannerView.decodeContinuous(callback);

    switchFlashlightButton = findViewById(R.id.switch_flashlight);
    viewfinderView = findViewById(R.id.zxing_viewfinder_view);

    // if the device does not have flashlight in its camera,
    // then remove the switch flashlight button...
    if (!hasFlash()) {
        switchFlashlightButton.setVisibility(View.GONE);
    }

    capture = new CaptureManager(this, barcodeScannerView);`

Which library version are you using? E.g. 3.2.0.
implementation('com.journeyapps:zxing-android-embedded:4.2.0') { transitive = false }
implementation 'com.google.zxing:core:3.3.0'
Which phone/tablet are you using, and which Android version does it run? (e.g. Samsung Galaxy S5,
Android 5.0)
android 10
Does the same happen on other devices or an emulator?
don't know
Can you reproduce the issue in the sample project included with the library? If not, can you
provide your own sample project or sample code that produces this error?
In the case of an error do you have a stack trace or adb logs?

any update please, I've the same issue.

Need more details here.
Does it work in the sample app (https://github.com/journeyapps/zxing-android-embedded/releases/tag/v4.3.0), but not with a custom view? Or not at all?
Do you have a sample of a barcode that fails to scan?
Are there any errors, or does it just not detect the barcode?

the sample app doesn"t have the custom example with the inverted option


Adding bash completion to lxc setup

 You should sign our Contributor License Agreement in order to get your pull request merged.


Document passing nil instead of a function to a C function

Fixes #1439

So fast!

Meh, a little too fast :P


Fix answer to 11008

bar() is a no-op as it does not assign to the same x that foo returns.
This stuff is really fiddly, I would very highly recommend writing a tool that can evaluate these expressions and verify that the answers are actually correct. In the past I've done this kind of instrumentation using a transform with esprima + escodegen (although those aren't the only tools for transforming js these days).

Thanks for the PR! This is a result of messy copy-pasting.
At this stage our goal is to have high-level discussions about question content, such as intent, coverage, and categorization. Once the test as a whole is more solidified, I think a tool as you suggest will be perfect to ensure all the fine details are correct.

Thanks again!


rfcdiff is broken

Describe the issue
The following is the output of trying to obtain a diff:
./rfcdiff: Error: Failed to create temporary directory '/tmp/rfcdiff-49297'.

Code of Conduct

[X] I agree to follow the IETF's Code of Conduct

Not a datatracker issue - better reported at support@, but this has already been addressed.

Robert Sparks @.***> writes:

Not a datatracker issue - better reported at support@, but this has
already been addressed.

@.***? :)
In any case, I'm not sure how I would know the difference. Should all issues be reported to support@ first and then issues opened later?
Thanks,
Chris.

If the URL says https://datatracker.ietf.org, then it's a datatracker bug.
rfcdiff is currently hosted at www.ietf.org, not on the datatracker - it's a separate application. (And it will be replaced with iddiff at author-tools.ietf.org soon)..
But generally speaking - look at the first part of the URL. If that doesn't make it obvious, use support@


Installing cabal2nix fails

Issue description
Installing cabal2nix (2.10.2) fails
Steps to reproduce
nix-env -f "<nixpkgs>" -i cabal2nix

installing 'cabal2nix-2.10.2'
these derivations will be built:
  /nix/store/a3rf3xi8zd1i5698rgaxw8n0ax5mzxfj-cabal2nix-2.10.2.drv
building '/nix/store/a3rf3xi8zd1i5698rgaxw8n0ax5mzxfj-cabal2nix-2.10.2.drv'...
setupCompilerEnvironmentPhase
Build with /nix/store/yc8an71h8cah8w6fw0xykjxl68a8j1h7-ghc-8.4.3.
ignoring (possibly broken) abi-depends field for packages
ignoring (possibly broken) abi-depends field for packages
unpacking sources
unpacking source archive /nix/store/62hrfkr64piwp10q9pzxirvqk6n33v1f-cabal2nix-2.10.2.tar.gz
source root is cabal2nix-2.10.2
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file cabal2nix-2.10.2/test/Main.hs
patching sources
compileBuildDriverPhase
setupCompileFlags: -package-db=/tmp/nix-build-cabal2nix-2.10.2.drv-0/setup-package.conf.d -j8 -threaded
[1 of 1] Compiling Main             ( Setup.hs, /tmp/nix-build-cabal2nix-2.10.2.drv-0/Main.o )
Linking Setup ...
configuring
configureFlags: --verbose --prefix=/nix/store/5bjzlxznk0iy601qcv6v8cvl4jlb5y0a-cabal2nix-2.10.2 --libdir=$prefix/lib/$compiler --libsubdir=$pkgid --docdir=/nix/store/ifcln27d5kk4sf6nl2fksy0f
9jdv6sf8-cabal2nix-2.10.2-doc/share/doc/cabal2nix-2.10.2 --with-gcc=gcc --package-db=/tmp/nix-build-cabal2nix-2.10.2.drv-0/package.conf.d --ghc-option=-j8 --disable-split-objs --enable-libra
ry-profiling --profiling-detail=all-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --enable-library-vanilla --en
able-library-for-ghci --ghc-option=-split-sections --extra-lib-dirs=/nix/store/3cnh0n698w18l5g933wrx22zvkhcj8ik-ncurses-6.1/lib --extra-lib-dirs=/nix/store/bi9nx8f8kl8apgd544hkx2dsvlvr4zix-g
mp-6.1.2/lib
Using Parsec parser
Configuring cabal2nix-2.10.2...
CallStack (from HasCallStack):
  die', called at libraries/Cabal/Cabal/Distribution/Simple/Configure.hs:958:20 in Cabal-<IP_ADDRESS>:Distribution.Simple.Configure
  configureFinalizedPackage, called at libraries/Cabal/Cabal/Distribution/Simple/Configure.hs:462:12 in Cabal-<IP_ADDRESS>:Distribution.Simple.Configure
  configure, called at libraries/Cabal/Cabal/Distribution/Simple.hs:596:20 in Cabal-<IP_ADDRESS>:Distribution.Simple
  confHook, called at libraries/Cabal/Cabal/Distribution/Simple/UserHooks.hs:67:5 in Cabal-<IP_ADDRESS>:Distribution.Simple.UserHooks
  configureAction, called at libraries/Cabal/Cabal/Distribution/Simple.hs:178:19 in Cabal-<IP_ADDRESS>:Distribution.Simple
  defaultMainHelper, called at libraries/Cabal/Cabal/Distribution/Simple.hs:115:27 in Cabal-<IP_ADDRESS>:Distribution.Simple
  defaultMain, called at Setup.hs:6:8 in main:Main
Setup: Encountered missing dependencies:
hpack >=0.29.6

builder for '/nix/store/a3rf3xi8zd1i5698rgaxw8n0ax5mzxfj-cabal2nix-2.10.2.drv' failed with exit code 1
error: build of '/nix/store/a3rf3xi8zd1i5698rgaxw8n0ax5mzxfj-cabal2nix-2.10.2.drv' failed

Technical details

system: "x86_64-linux"
host os: Linux 4.14.65-gentoo-nvidia, Gentoo, noversion
multi-user?: yes
sandbox: no
version: nix-env (Nix) 2.0.4
channels(root): "nixpkgs-18.09pre148461.bf1b50cbc8f"
channels(marcin): "nixpkgs-18.09pre151052.4477cf04b67"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixpkgs

Fixed in 1c02221724bb6456170dc1d9f8683e91d12cfd1d and 4e96a5fc5fa6bae61103abe93c3f19ceb9f20d76


Calls to setCustomDimension() are working on init but not on event (Angular App)

Hello,
We have been noticing that call to setCustomDimension() method in order to set or update Matomo Custom Dimension are no longer working when they are linked to user's actions.
Our case : Once the application loaded, we set 2 different dimesions to our company's Matomo :

user profile
customerName (both are business infos, stored as string)

Once the user clic on a given element of the app, we were sending a 3rd Custom Dimension : "isActive". And while it worked for a while, it seams to have stop working since last week. If sending this even on the app load like the other 2, no issues happens and the dimension is set. If waiting for any user event, it doesn't.
Have you ever heard or anything similar happening within an Angular app ?
Is there any logs or reproduction details that could help for troubleshooting this ?
Looking forward hearing from you !
ps : I'm fluent in French if that can help explaining better the issue

PS : we realised this morning that if we force the sending of a "classic' event just after using setCustomDimension, then the custom dimension is well sent.
For now we will force sending a 'mock' event instantly after setting custom dimension

Hi @R0mpo,
Note that custom dimensions are set for the next request, which is being sent using tracking methods such as trackPageView or trackEvent.
You can refer to matomo documentation for details: https://matomo.org/guide/reporting-tools/custom-dimensions/ and https://developer.matomo.org/api-reference/tracking-javascript
If you still have an issue, please provide a repro (Stackblitz...) so I can observe the described behavior.

Thank you for the precisions :)