Certificates are renewed but not stored

Do you want to request a feature or report a bug?
Bug
What did you do?
I have a lot of certificates. Many of them are correctly renewed and stored into consul but others don't seem to be stored at all. Sometimes, it works great. The minute later, somes certificates are not renewed correctly. Restarting Traefik instances do not solve the bug.
What did you expect to see?
time="2019-11-20T17:52:08Z" level=info msg="Renewing certificate from LE : {Main:www.example.com SANs:[example.com]}"
time="2019-11-20T17:52:08Z" level=info msg="legolog: [INFO] [www.example.com] acme: Trying renewal with 158 hours remaining"
time="2019-11-20T17:52:08Z" level=info msg="legolog: [INFO] [www.example.com, example.com] acme: Obtaining bundled SAN certificate"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [example.com] AuthURL: https://acme-v02.api.letsencrypt.org/acme /authz-v3/975020966"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [www.example.com] AuthURL: https://acme-v02.api.letsencrypt.org/ acme/authz-v3/975020968"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [example.com] acme: authorization already valid; skipping challe nge"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [www.example.com] acme: authorization already valid; skipping ch allenge"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [www.example.com, example.com] acme: Validations succeeded; requesting certificates"
time="2019-11-20T17:52:10Z" level=info msg="legolog: [INFO] [www.example.com] Server responded with a certificate."
time="2019-11-20T17:52:10Z" level=info msg="Renewed certificate from  LE: {Main:www.example.com SANs:[example.com]}"
time="2019-11-20T17:52:11Z" level=error msg="Datastore sync error: object lock value: expected 13648d3b-8aa9-4a32-8ec7-86fbf97a0ab1, got 0d653d64-c3e6-46ab-a68a-74051ffcbf1f, retrying in 492.746378ms"
time="2019-11-20T17:52:17Z" level=info msg="Renewing certificate in data store : {Main:www.example.com SANs:[example.com]} "
time="2019-11-20T17:52:17Z" level=info msg="Commit certificate renewed in data store : {Main:www.example.com SANs:[example.com]}"
time="2019-11-20T17:52:20Z" level=info msg="Certificate successfully renewed in data store: {Main:www.example.com SANs:[example.com]}"

The certificat is renewed and stored successfully. Traefik should use it.
What did you see instead?
time="2019-11-20T17:52:08Z" level=info msg="Renewing certificate from LE : {Main:www.example.com SANs:[example.com]}"
time="2019-11-20T17:52:08Z" level=info msg="legolog: [INFO] [www.example.com] acme: Trying renewal with 158 hours remaining"
time="2019-11-20T17:52:08Z" level=info msg="legolog: [INFO] [www.example.com, example.com] acme: Obtaining bundled SAN certificate"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [example.com] AuthURL: https://acme-v02.api.letsencrypt.org/acme /authz-v3/975020966"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [www.example.com] AuthURL: https://acme-v02.api.letsencrypt.org/ acme/authz-v3/975020968"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [example.com] acme: authorization already valid; skipping challe nge"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [www.example.com] acme: authorization already valid; skipping ch allenge"
time="2019-11-20T17:52:09Z" level=info msg="legolog: [INFO] [www.example.com, example.com] acme: Validations succeeded; requesting certificates"
time="2019-11-20T17:52:10Z" level=info msg="legolog: [INFO] [www.example.com] Server responded with a certificate."
time="2019-11-20T17:52:10Z" level=info msg="Renewed certificate from  LE: {Main:www.example.com SANs:[example.com]}"
time="2019-11-20T17:52:11Z" level=error msg="Datastore sync error: object lock value: expected 13648d3b-8aa9-4a32-8ec7-86fbf97a0ab1, got 0d653d64-c3e6-46ab-a68a-74051ffcbf1f, retrying in 492.746378ms"
time="2019-11-20T17:52:17Z" level=info msg="Renewing certificate in data store : {Main:www.example.com SANs:[example.com]} "
time="2019-11-20T17:52:17Z" level=info msg="Commit certificate renewed in data store : {Main:www.example.com SANs:[example.com]}"
time="2019-11-20T17:52:20Z" level=info msg="Certificate successfully renewed in data store: {Main:www.example.com SANs:[example.com]}"

The certificate seems to be renew, stored but it isn't. Traefik always uses the old certificate.

Output of traefik version: (What version of Traefik are you using?)
Version:      v1.7.14
Codename:     maroilles
Go version:   go1.12.8
Built:        2019-08-14_09:46:58AM
OS/Arch:      linux/amd64

defaultEntryPoints = ["http"]

[entryPoints]
        [entryPoints.http]
        address = ":80"

        [entryPoints.https]
        address = ":443"

[acme]
email = "<redacted>"
storage = "traefik/acme/account"
entryPoint = "https"
onDemand = false
onHostRule = true
acmeLogging = true

        [acme.httpChallenge]
        entryPoint = "http"

[consul]
endpoint = "consul:8500"
prefix = "traefik"
watch = true

[docker]
swarmMode = true
domain = "traefik"
endpoint = "tcp://docker-proxy:2375"
watch = true

I'm using a Docker Swarm stack to use Traefik. An instance lives on each server in order to be accessible from any public IP living in the swarm (even if not manager with socat-docker).
version: "3.4"
services:
    traefik_init:
        image: traefik:1.7
        command: "storeconfig -c /traefik_config.toml"
        networks:
            - traefik
        environment:
            LOGSPOUT: ignore
        deploy:
            replicas: 1
            restart_policy:
                condition: on-failure
            placement:
                constraints:
                    - node.role == manager
        depends_on:
            - consul
        configs:
            - traefik_config.toml

    docker-proxy:
        image: rancher/socat-docker
        networks:
            - traefik
        volumes:
            - /var/run/docker.sock:/var/run/docker.sock
        environment:
            LOGSPOUT: ignore
        deploy:
            mode: replicated
            replicas: 1
            placement:
                constraints:
                    - node.hostname == <redacted>
            resources:
                limits:
                    cpus: '0.10'
                    memory: 8M
                reservations:
                    cpus: '0.10'
                    memory: 8M

    traefik:
        image: traefik:1.7-alpine
        depends_on:
            - traefik_init
            - consul
        command:
            - "--logLevel=INFO"
            - "--consul"
            - "--consul.watch"
            - "--consul.endpoint=consul:8500"
            - "--consul.prefix=traefik"
        volumes:
            - /var/run/docker.sock:/var/run/docker.sock
        networks:
            - traefik-proxy
            - traefik
        ports:
            - target: 80
              published: 80
              mode: host
            - target: 443
              published: 443
              mode: host
        deploy:
            mode: global
            update_config:
                parallelism: 10
                delay: 10s
            restart_policy:
                condition: on-failure

    consul:
        image: consul:latest
        command: agent -server -bootstrap-expect=1
        volumes:
            - "consul-data:/consul/data"
        environment:
            - CONSUL_LOCAL_CONFIG={"datacenter":"us_east2","server":true}
            - CONSUL_BIND_INTERFACE=eth0
            - CONSUL_CLIENT_INTERFACE=eth0
        deploy:
            replicas: 1
            placement:
                constraints:
                    - node.hostname == <redacted>
            restart_policy:
                condition: on-failure
        networks:
            - traefik

networks:
    traefik-proxy:
        external: true
    traefik:
        driver: overlay

volumes:
    consul-data:

configs:
    traefik_config.toml:
        external: true

Hi @cmizzi , thanks for your interest and your feedback!
We are closing as a duplicate, given the error message Datastore sync error: Object lock value: expected <id>, to centralize the user requests and information.

What ? It fails but retries exponentially, and no error about a second fail. I've got this error for totally working certificate too. When storing a new entry thought Consul, the command seems to be restart after some delays. If fails again, try again with larger delay until a lot of retry. Here, the issue is only occuring once, that should means the there no more data sync error, am I wrong ?

Hi @cmizzi , you might want to ask this question on the other issue, or in the community forum to get an answer (I don't know so I cannot answer you) :)


Tapping searchBar does nothing

Steps to reproduce:

Launch demo app
Choose "Table View"
Scroll down
Tap on search bar

Expected behaviour: Search controller would expand
Actual behaviour:  Nothing happens
Ability to reproduce: 100%
Screenshot:

Sadly, no, updating the constraint instead of the frame does not extend the superview's frame.

As a solution override pointInside of controller's view
e.g. in Swift
class ScrollingView: UIView {
   @IBOutlet private weak var topConstraint: NSLayoutConstraint!

   override func pointInside(point: CGPoint, withEvent event: UIEvent?) -> Bool {
      var viewRect = self.bounds
      viewRect.origin.y = self.topConstraint.constant
      viewRect.size.height += -self.topConstraint.constant
      return viewRect.contains(point)
   }
}

Closing this issue. Please refer to this https://github.com/andreamazz/AMScrollingNavbar/issues/146


Fix metrics-api uml syntax

Fix minor uml syntax problem
before:

after:

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Codecov Report

Merging #25 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #25   +/-   ##
=========================================
  Coverage     33.89%   33.89%
  Complexity     1291     1291
=========================================
  Files           213      213
  Lines         13685    13685
  Branches       1094     1094
=========================================
  Hits           4638     4638
- Misses         8741     8742    +1
+ Partials        306      305    -1

Impacted Files
Coverage Δ
Complexity Δ

...l/src/main/java/com/alibaba/metrics/Striped64.java
60.18% <0%> (ø)
11% <0%> (ø)
:arrow_down:

Continue to review full report at Codecov.

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


IAM-like access control doesn't work with specified Resource key in policy

Issue
It seems like the IAM-like access control doesn't work when specifying the Resource key in the policy. Everthing works well with "Resource": "*" but without the wildcard the access always gets denied.
Expected behaviour
Moto respects the Resource key in the policy.
Example
@set_initial_no_auth_action_count(4)
@mock_s3
@mock_iam
def test_iam_resource_arn() -> None:
    s3_client = boto3.client("s3", region_name="us-east-1")
    s3_client.create_bucket(Bucket="my_bucket")

    user_name = "test-user"
    inline_policy_document = {
        "Version": "2012-10-17",
        "Statement": [
            {
            "Action": ["s3:*"],
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::my_bucket",
            "Sid": "BucketLevelGrants"
            },
        ]
    }
   # copied from https://github.com/getmoto/moto/blob/66683108848228b3390fda852d890c3f18ec6f2c/tests/test_core/test_auth.py#L21-L32
    access_key = create_user_with_access_key_and_inline_policy(
        user_name, inline_policy_document
    )

    s3_client = boto3.client(
        "s3",
        region_name="us-east-1",
        aws_access_key_id=access_key["AccessKeyId"],
        aws_secret_access_key=access_key["SecretAccessKey"],
    )

    s3_client.head_bucket(Bucket="my_bucket")

Output:
botocore.exceptions.ClientError: An error occurred (AccessDenied) when calling the ListObjects operation: Access Denied

Versions:

moto: 4.1.11
boto3: 1.26.69
botocore: 1.29.69
python: 3.11

Hi @Haegi, we currently don't take the Resource-key into account at all. Marking it as an enhancement to improve this area.


Different $ref path resolving in flatten and validate mode

Problem statement
go-swagger handles $ref paths differently in flatten and validate mode.
Swagger specification
test-spec.zip
Environment
swagger version: 0.25.0
go version: 1.14.2
OS: Windows
Steps to reproduce
I am using recommended docker mode to run go-swagger, setting concrete version 0.25.0 (see swagger.cmd) via cmd file.
I have my spec divided into files for every path and every model, in paths and models subdirectories respectively. I also have a root file swagger.yaml to bring all the paths together and another file pathParams.yaml to reuse RESTful path parameters for all types of items IDs.
All those files are located in swagger subdirectory of my project. If I try to validate my spec, I got:
C:\Users\Me\app\swagger>swagger validate swagger.yaml

The swagger spec at "swagger.yaml" is invalid against swagger specification 2.0.
See errors below:
- some references could not be resolved in spec. First found: open /app/swagger/paths/models/Error.yaml: no such file or directory

If I generate flattened json spec, it generates and validates correctly:
C:\Users\Me\app\swagger>swagger flatten swagger.yaml -o swagger.json
<no output, file is created>

C:\Users\Me\app\swagger>swagger validate swagger.json
2021/01/02 21:19:12
The swagger spec at "swagger.json" is valid against swagger specification 2.0

So it seems to me that go-swagger handles $ref paths differently in flatten and validate modes. I want to validate my spec as a part of CI pipeline and don't want to generate extra artifacts.
Moreover, when I try to use github.com/go-openapi/validate package to validate my app output against the spec - I got the "file not found" error while calling loads.Spec() / analysis.Flatten(). I hope solving that problem by understanding roots of this issue.

Any update/solution on this?

Any update/solution on this?

@SergeAx  @bharatlakhiyani
The behavior is correct on Linux: neither validate nor flatten wants to proceed through the invalid $ref.
It looks to me that you hit a Windows-specific issue. This particular one I did not know about, though.

There are still some windows issues with flatten, but I have certainly narrowed down the scope for them.
Would you please give it a shot?

@fredbi can I use Docker image quay.io/goswagger/swagger:dev, or should I build image myself from master?

@SergeAx  the dev tag takes latest master. So yes, this onboards latest fixes specifically for windows. I hope this would work for you.

@fredbi
It's still not working. I am using it on mac


Improvement Suggestion: Pythonic API for pyshiny

Hello PyShiny team,
Firstly, I'd like to express my appreciation for your effort in porting RShiny to Python.
However, I see that the current design of PyShiny's API is very similar to its R counterpart, which might be comfortable for R users transitioning to Python, but it's somewhat unintuitive for Python developers.
For instance, I noticed that the library requires functions/variables to be passed as strings. While this might be a common pattern in R, it's not the way Python developers typically work. Similarly with defining functions inside functions that are not just ad-hoc helper functions, I'd rather see them as methods.
For instance I took the streamlit-shiny-dash example.
The more pythonic API might look like that:
from shiny import App, UI, Reactive, Render
import pandas as pd
from plotnine import ggplot, aes, theme_bw, geom_point, scale_x_log10, scale_y_log10, geom_histogram

class MyAppUI(UI):
    def __init__(self):
        self.sample_slider = self.input_slider("Sample Size", 0, 1, value = 0.1)
        self.log_checkbox = self.input_checkbox("Log Scale")

        # placeholders for the elements which will be dynamically updated
        self.first_taxi_id_text = self.output_text()
        self.tip_plot = self.output_plot()
        self.amount_histogram = self.output_plot()

        sidebar = self.panel_sidebar(self.sample_slider, self.log_checkbox)
        main_panel = self.panel_main(self.h3(self.first_taxi_id_text), self.tip_plot, self.amount_histogram)

        self.layout = self.page_fluid(self.layout_sidebar(sidebar, main_panel))

class MyAppServer:
    def __init__(self, ui: MyAppUI):
        self.ui = ui
        dat = Reactive(self.load_data)
        sampled_dat = Reactive(self.sample_data, dat, self.ui.sample_slider)

        # Assign the output of the reactive functions to the UI placeholders
        self.ui.first_taxi_id_text.set_render_function(Render.text(self.first_taxi_id, sampled_dat))
        self.ui.tip_plot.set_render_function(Render.plot(self.create_tip_plot, sampled_dat, self.ui.log_checkbox))
        self.ui.amount_histogram.set_render_function(Render.plot(self.create_amount_histogram, sampled_dat))

    def load_data(self) -> pd.DataFrame:
        df = pd.read_csv('nyc-taxi.csv')
        return df

    def sample_data(self, df: pd.DataFrame, fraction: float) -> pd.DataFrame:
        return df.copy().sample(frac=fraction)

    def first_taxi_id(self, df: pd.DataFrame) -> str:
        return f'First taxi ID: {df["taxi_id"].iloc[0]}'

    def create_tip_plot(self, df: pd.DataFrame, log_scale: bool) -> ggplot.ggplot:
        plot = (ggplot(df, aes('tip_amount', 'total_amount')) + geom_point() + theme_bw())
        if log_scale:
            plot = (plot + scale_x_log10() + scale_y_log10())
        return plot

    def create_amount_histogram(self, df: pd.DataFrame) -> ggplot.ggplot:
        plot = (ggplot(df, aes(x='total_amount')) + geom_histogram() + theme_bw())
        return plot

class MyApp(App):
    def __init__(self):
        self.ui = MyAppUI()
        self.server = MyAppServer(self.ui)
        super().__init__(self.ui.layout, self.server)

app = MyApp()

I understand that this would involve a significant refactor of the current design and I don't want to argue this is the best API by any means (it might even not work due to some error that I made).
However, I genuinely believe a discussion around the more pythonic API could be very beneficial as it could improve the adoption of PyShiny in the Python community, and provide a better user experience for Python developers.
I would love to open this for discussion and hear the thoughts of others.
Best

Hi @pstorozenko, thank you for the feedback! We definitely thought twice and three times before going with the nested function approach (and for what it's worth, neither the ID strings nor [especially] the nested function approach are idiomatic R either, though modern front-end devs might find it all quite familiar).
I think the best sketch we came up with for a class-based server side was more like this:
class MyAppServer:
    def __init__(self, ui: MyAppUI):
        self.ui = ui

    @reactive.calc
    def load_data(self) -> pd.DataFrame:
        df = pd.read_csv('nyc-taxi.csv')
        return df

    @reactive.calc
    def sample_data(self) -> pd.DataFrame:
        return self.load_data().copy().sample(frac=self.input.sample_sider())

    @reactive.calc
    def first_taxi_id(self) -> str:
        return f'First taxi ID: {self.sample_data()["taxi_id"].iloc[0]}'

    @output
    @render.plot
    def tip_plot(self) -> ggplot.ggplot:
        plot = (ggplot(self.sample_data(), aes('tip_amount', 'total_amount')) + geom_point() + theme_bw())
        if self.input.log_scale():
            plot = (plot + scale_x_log10() + scale_y_log10())
        return plot

    @output
    @render.plot
    def amount_histogram(self) -> ggplot.ggplot:
        plot = (ggplot(self.sample_data(), aes(x='total_amount')) + geom_histogram() + theme_bw())
        return plot

This approach doesn't work today--our current decorator implementations don't know how to deal with methods (though they could).
A bigger problem is that, while this approach makes it obvious how to deal with static outputs/calcs/effects, it's not clear how this would generalize to dynamically creating those things. Perhaps if we went this route, we'd still need to continue to allow creating reactive objects out of non-method functions.
Finally, can I request that while we continue this discussion, you suspend disbelief and try the API as it exists today? I am curious whether you will find that this style works better than you think (though of course there is also value in making a good first impression).

I'm very interested to explore how OOP could help with reusability of component. I see an "enhancement" label was added and I would love to hear more about how this might work.

The Shiny module I made for chatstream does use a class with a __init__ method for the module's server function, and you could do essentially the same with an app's server function. I found the class-based structure to be helpful for mentally keeping track of the code.
But before you get too excited, here's what it doesn't do:

The outputs and reactive.Effects are not defined as class methods.

That said, here's what it does:

In its __init__ method, it instantiates a number of internal state variables as attributes on the object (like self.model). Some of these are reactive.Values and some are just regular variables.
The outputs and Effects are created in a method called _init_reactives, which is called by __init__.

https://github.com/wch/chatstream/blob/57a5fa1f9b577bf3957199bc6133439f322deb09/chatstream/__init__.py#L105-L435
You may be wondering why outputs and Effects are not class methods, but are instead created inside of the _init_reactives method. First, it's importnat to know that outputs actually wrap up some code that uses an @Effect decorator. So it's really just about Effects.
When @Effect is used, it registers the function to be executed when Shiny does a reactive flush (that's the part of the Shiny's reactive computing cycle where it runs reactive functions). Additionally, the Effect is scoped to a Session; it keeps track of the current Session when it is created. (Remember that each time a Session is created, Shiny calls the application's server function.)
So the reason that the @Effect and @output decorators are used within the _init_reactives method is because those decorators do the Session-scoped registration of the reactive function when they are used. If they were used at the class method level, they would not register the Effects with each Session.
If you were to define Effects and outputs as class methods, there would have to be a mechanism to actually register them when the __init__ method is called.

I just hacked together an implementation of a class-based app server. It is not robust at all, but it works and demonstrates roughly what the code could look like.
Live demo here
# pyright: reportUnusedFunction=false

import functools
from typing import Callable

import shiny.session
from shiny import App, Inputs, Outputs, Session, reactive, render, ui

# ======================================================================================
# Setup code
# ======================================================================================

class FunctionRegistry:
    def __init__(self) -> None:
        self.registry: list[str] = []

    def __call__(self, func: Callable[..., object]) -> Callable[..., object]:
        if func.__name__ in self.registry:
            self.registry.remove(func.__name__)

        self.registry.append(func.__name__)
        return func

register_output = FunctionRegistry()
register_Effect = FunctionRegistry()

class ShinyAppServer:
    output: Outputs

    def __init__(self) -> None:
        registry = register_output.registry
        for method_name in registry:
            method = getattr(self, method_name)

            self.output(method)

        for method_name in register_Effect.registry:
            method = getattr(self, method_name)

            reactive.Effect(method)

# This is needed only because render.xx functions don't expect `self`
def hide_self(func: Callable[..., object]) -> Callable[..., object]:
    @functools.wraps(func)
    def wrapper(*args: object, **kwargs: object):
        return func(*args, **kwargs, self=shiny.session.get_current_session())

    return wrapper

# ======================================================================================
# App definition
# ======================================================================================

app_ui = ui.page_fluid(
    ui.input_slider("n", "N", 0, 100, 20),
    ui.output_text_verbatim("txt"),
)

class MyAppServer(ShinyAppServer):
    def __init__(self, input: Inputs, output: Outputs, session: Session):
        self.input = input
        self.output = output
        self.session = session
        super().__init__()

    @register_output
    @render.text
    @hide_self
    def txt(self):
        return f"n*2 is {self.input.n() * 2}"

    @register_Effect
    def e1(self):
        print(f"n*2 is {self.input.n() * 2}")

app = App(app_ui, MyAppServer)


Subclassed Symbols that define __getitem__ break DenseMatrix

Here's a self-contained test
from symengine import Symbol, DenseMatrix
class MySymbol(Symbol):
    def __getitem__(self, x):
        pass
x = Symbol("x")
y = MySymbol("y")
DenseMatrix([x])  # works fine
DenseMatrix([y])  # SIGSEGV

In PyCalphad (https://github.com/pycalphad/pycalphad/issues/547), we have something where __getitem__ returns, effectively, a new MySymbol, and think ends up in some loop where MySymbol keeps getting created and eats all the system memory.

You'll have to do DenseMatrix([[y]]) as a workaround.

Thank you, I think this is working for my immediate need


Add .jsonc extension

Marks .jsonc files as jsonc.
Checklist:

[x] I am associating a language with a new file extension.

[x] The new extension is used in hundreds of repositories on GitHub.com

Search results for each extension:

https://github.com/search?p=1&q=extension%3Ajsonc+NOT+dkfgjdkfjd&type=Code

[x] I have included a real-world usage sample for all extensions added in this PR:

Sample source(s): https://github.com/neoclide/coc.nvim
Sample license(s): MIT

This PR adds the .jsonc extension that was in the initial draft of #4171. It was removed per this comment. I'm adding it back hoping that usage is high enough to accept it this time. Feel free to close out immediately if it isn't.

Could anyone explain how I would get GitHub to highlight this .jsonc file as jsonc? That was my intent with opening this PR, apologies for apparently misunderstanding how GitHub's highlighting works.
I see this section about issues with syntax highlighting but as far as I can tell the file isn't being recognized as a jsonc filetype so the issue happens before the upstream grammar is even applied.

@nathanshelly Changes to Linguist don't become visible on GitHub until there's a new release, which @lildude is in the process of preparing. You'll see the highlighting once #4816 goes live.

🤦♂ of course that makes perfect sense, thanks!


fix:typos

Description
fix typos
Type of change

This pull request fixes a bug in Radius and has an approved issue (issue link required).
This pull request adds or changes features of Radius and has an approved issue (issue link required).
This pull request is a minor refactor, code cleanup, test improvement, or other maintenance task and doesn't change the functionality of Radius (issue link optional).

Fixes: #issue_number
Auto-generated summary

🤖[deprecated] Generated by Copilot at 1e66c01
Summary
🐛🚚📝

This pull request fixes various typos in function names, parameter names, and comments related to the IsUCPQualified function and the MinimumTLSProtocolVersion type across different files in the codebase. The changes improve the consistency and readability of the code and are part of a larger refactoring effort.

There once was a function called IsUCPQualified
That checked if a resource ID was UCP-ified
But it had a typo
That made the code cry so
They fixed it and made it more simplified

Walkthrough

Fix typos in function name IsUCPQualified across multiple files (link, link, link, link, link, link, link, link, link, link, link, link). This function checks if a resource ID has a prefix of /planes which indicates that it belongs to a UCP plane. The files affected are pkg/cli/cmd/app/connections/compute.go, pkg/portableresources/processors/resourceclient.go, pkg/rp/v1/outputresource.go, pkg/ucp/resources/id.go, and pkg/ucp/store/cosmosdb/cosmosdbstorageclient.go.

/ok-to-test


Onboarding design

There are many steps involved from getting a user who starts out cold to using apps. Map out all the steps and make sure we support the user during every step. Cut out all the unnecessary steps or steps that can be deferred.
Then design the part of the onboarding flow that is in the web wallet. Besides efficient and helpful, we're also trying to make it exciting.

@jasperjansz to lay out specific changes already included in Figma designs for onboarding to this issue's description.

@jasperjansz will decompose this issue into new issues that correspond to the following:

All improvements to the existing sequential screens during initial authentication (e.g. illustrations, copy, layout for Secret Key and password screens)
Formatting the authenticated home screen for full screen mode
Add new CTAs to authenticated home screen (buy STX, register name, back up key, explore apps)

@jasperjansz please indicate any desired illustrations in the issues above and assign @eugeniadigon to them as needed.

closing in favour of specific issues I created for each individual screen


Register

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/20817
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.0 -m "<description of version>" 4ee2192da1d173d11eb2f719aea4b4e043c3073b
git push origin v0.1.0

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/21215
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.2.0 -m "<description of version>" e51174fcd117b59b45af25021fdf6c88a9ce406a
git push origin v0.2.0

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/21346
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.3.0 -m "<description of version>" ac079dd7053cb4704b788e4ec18980ec212e40bd
git push origin v0.3.0

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/21401
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.3.1 -m "<description of version>" 77a26378d0cfd9ca8baa8b891db784a436abcd81
git push origin v0.3.1

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/21410
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.3.2 -m "<description of version>" bbfaf6020886cba415387c3554363d48db1aa4a7
git push origin v0.3.2

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/22414
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.4.0 -m "<description of version>" c4801a62eb416bd194c3ff349f98e84d67132195
git push origin v0.4.0

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/23547
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.4.1 -m "<description of version>" 2a3f7345b926a26121a7d45b4158a691faa307af
git push origin v0.4.1

@JuliaRegistrator register()

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/27280
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.0 -m "<description of version>" 076d6dfc08fe9376cb3864541c8e75ff3d193826
git push origin v0.5.0

Registration pull request created: JuliaRegistries/General/27280
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.0 -m "<description of version>" 076d6dfc08fe9376cb3864541c8e75ff3d193826
git push origin v0.5.0

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/29701
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.1 -m "<description of version>" 0e2c5523d7fde8d162836d3885265aad61728a96
git push origin v0.5.1

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/33643
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.2 -m "<description of version>" a0872e520d23ec25d85ec633cfb87aa9c07bab05
git push origin v0.5.2

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/41894
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.3 -m "<description of version>" fdd69d7ec2421f01795b02df59f5293080660e32
git push origin v0.5.3

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/70875
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.4 -m "<description of version>" 760e3b86eabebccee2dd209088452bf94427d35c
git push origin v0.5.4

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/70994
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.5 -m "<description of version>" bdca8415247480adeb825420a1d1aa61ca6c1455
git push origin v0.5.5

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/80247
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.6 -m "<description of version>" 8beb7c7fd1c5ccc4f9a891a8829d9e59d90040fa
git push origin v0.5.6

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/83128
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.7 -m "<description of version>" 3f8a96fbbb8a79b2bc7a578e8977282ed9cde386
git push origin v0.5.7

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/84423
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.8 -m "<description of version>" 9a7e9ed3b65b188a7907c3e039d595e2409d07de
git push origin v0.5.8

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/84885
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.11 -m "<description of version>" ba225d75593ff92c9bca665528ff9ed5b5688c34
git push origin v0.5.11

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/89407
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.12 -m "<description of version>" f895dd941088e06305c5ed461b3f51682c0f83e0
git push origin v0.5.12

@JuliaRegistrator register()


Pass R errors through to Conbench

Closes #134. Builds on https://github.com/voltrondata-labs/arrowbench/pull/138 to take results with an error element and pass it through to Conbench properly. Improves some tests along the way.
Tests are passing locally, but I want to run this against a local Conbench instance to make sure nothing is malformed before merging.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

95 of 95 (100.0%)  changed or added relevant lines in 3 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.1%) to 87.38%

Files with Coverage Reduction
New Missed Lines
%

benchmarks/_benchmark.py
1
83.72%

Totals

Change from base Build<PHONE_NUMBER>:
0.1%

Covered Lines:
1551

Relevant Lines:
1775

💛  - Coveralls

The changes here are relatively simple and well-tested, so I'm going to merge this, but post-merge reviews are welcome; happy to do a follow-up is necessary. I'll keep an eye on buildkite to see if anything goes awry.


The ladder in getNews() contains unreachable code.

The getNews() selections in the if-else-if ladder with constants<PHONE_NUMBER> or larger fail to run.  I presume this in an issue with badly-formed integer constants, or how the smile information is saved.

I cannot repro this in the current version of pony clicker. Setting alerts() and manually setting muffin counts confirm that in Chrome, these code sections are in fact run. Was this in firefox?

It was in Chrome.  I noticed I was never getting those messages, so I
presume for some reason they were never pushed.
On Wed, May 20, 2015 at 9:12 PM, Erik McClure<EMAIL_ADDRESS>wrote:

I cannot repro this in the current version of pony clicker. Setting
alerts() and manually setting muffin counts confirm that in Chrome, these
code sections are in fact run. Was this in firefox?
--
Reply to this email directly or view it on GitHub
https://github.com/blackhole12/PonyClicker/issues/33#issuecomment-104086591
.

--
Trick Question

Keep in mind, those aren't minimum values, they are ranges - your smile amount must be between<PHONE_NUMBER> and<PHONE_NUMBER>000 to get the "Princess Twilight found overdosed on friendship, taken to rehab center!" message. This is on purpose, because those messages are supposed to reflect your current smile amount. If you have a gajillion smiles, you won't get those messages anymore.

Ah, I see.  I don't remember having seen them at all, but it's possible
those ranges just went by too quickly for me.
It's probably fine.
On Wed, May 20, 2015 at 9:26 PM, Erik McClure<EMAIL_ADDRESS>wrote:

Keep in mind, those aren't minimum values, they are ranges - your smile
amount must be between<PHONE_NUMBER> and<PHONE_NUMBER>000 to get the "Princess
Twilight found overdosed on friendship, taken to rehab center!" message.
This is on purpose, because those messages are supposed to reflect your
current smile amount. If you have a gajillion smiles, you won't get those
messages anymore.
--
Reply to this email directly or view it on GitHub
https://github.com/blackhole12/PonyClicker/issues/33#issuecomment-104089845
.

--
Trick Question

Closed, no repro.


[Armadillo] clapack installation order changes available features

Armadillo (added in #2954) has some optional functionality that depends on LAPACK being installed. If you use vcpkg to install clapack first and armadillo second then this functionality is enabled and works correctly. But if you use vcpkg to install armadillo first and clapack second then this functionality is disabled. This goes against the usual spirit of vcpkg, where extra functionality is enabled with feature packages, which ensures the required dependencies are installed.
Worse than this, if you use vcpkg to install clapack, then armadillo, then remove clapack, then you will get linking errors if you attempt to use armadillo. This is because vcpkg does not realise that armadillo has created an implicit dependency on clapack.
The detection of LAPACK and BLAS happens when Armadillo is configured (in its CMakeLists.txt and in files in cmake_aux/Modules). It is indicated by trace like this in its config-x64-windows.log:
-- Found OpenBLAS: D:/src/vcpkg/installed/x64-windows/lib/openblas.lib
-- Found LAPACK: D:/src/vcpkg/installed/x64-windows/lib/lapack.lib
--      MKL_FOUND = NO
--   ACMLMP_FOUND = NO
--     ACML_FOUND = NO
-- OpenBLAS_FOUND = YES
--    ATLAS_FOUND = NO
--     BLAS_FOUND = NO
--   LAPACK_FOUND = YES

The obvious solution is to make a feature package for the LAPACK/BLAS functionality, with a dependency on clapack/openblas. This would require the port to disable BLAS/LAPACK support if the feature is not selected, even if the libraries are available, to avoid ending up in the linking error situation. I think this would require patching the CMakeLists.txt so that OpenBLAS_FOUND and similar symbols are set to NO, or patching armadillo_bits/config.hpp (which comes from armadillo_bits/config.hpp.cmake) so that ARMA_USE_BLAS and ARMA_USE_LAPACK are always undefined if the feature package is not selected.
Example case
Here is a program that illustrates this behaviour:
#include <armadillo>
#include <iostream>
int main() {
    std::cout << arma::solve(arma::mat{{1, 2}, {3, 4}}, arma::vec{5, 11}) << "\n";
}

Here is the result after installing armadillo only (this error is expected when running without LAPACK):
error: solve(): use of LAPACK must be enabled

Here is the result after installing armadillo followed by clapack:
error: solve(): use of LAPACK must be enabled

Here is the result after installing clapack by followed armadillo:
1.0000
2.0000

Here is the build output after installing clapack, followed by installing armadillo, and finally uninstalling clapack:
1>------ Build started: Project: zarmatest, Configuration: Debug x64 ------
1>zarmatest.obj : error LNK2019: unresolved external symbol sgesv_ referenced in function "void __cdecl arma::lapack::gesv<double>(int *,int *,double *,int *,int *,double *,int *,int *)" (??$gesv@N@lapack@arma@@YAXPEAH0PEAN00100@Z)
1>zarmatest.obj : error LNK2019: unresolved external symbol dgesv_ referenced in function "void __cdecl arma::lapack::gesv<double>(int *,int *,double *,int *,int *,double *,int *,int *)" (??$gesv@N@lapack@arma@@YAXPEAH0PEAN00100@Z)

... and so on, you get the idea ...

The detection of LAPACK and BLAS happens when Armadillo is configured (in its CMakeLists.txt and in files in cmake_aux/Modules). It is indicated by trace like this in its config-x64-windows.log:
can try

edit port
add
vcpkg_configure_cmake(
    SOURCE_PATH ${SOURCE_PATH}
    PREFER_NINJA
    OPTIONS
        -DDETECT_HDF5=false
        -DBLAS_LIBRARY:FILEPATH=E:/tools/vcpkg/installed/x86-windows/lib/openblas.lib
        -DLAPACK_LIBRARY:FILEPATH=E:/tools/vcpkg/installed/x86-windows/lib/openblas.lib
)

Hi @arthur-tacca, thanks for reporting this issue!
This issue has been fixed in #6371, please update vcpkg and rebuild armadillo.
Thanks.

@JackBoosY Great job, thanks!


Forms progress

This issue is my high level todo list while implementing forms support.
For details on what is planned check #27.
For details on the current state have a look at the hyva-forms branch.

[x] Create basic types and templates (97ad1ed)
[x] Form config XML converter (5b52aadcd674113b95bd6e5c4160d8e94ffcdf6e)
[x] Test forms XML merging with ID attributes (ab2257b2809c76e1259b30c973c6dbfd555ed858)
[x] Create field declarations from field config (e272676)
[x] Form entity type determination (e5d0836)
[x] Entity loading (9a97b08)
[x] Extract groups from config (and entity/entity type if EAV) (e63c591)
[x] Extract fields from entity (e63c591)
[x] Merge form field declarations from entity with declarations from config (56eafb0)
[x] Render sections and groups
[x] Render fields by type
[x] Create hyva-forms.xsd (and add to config reader)
[ ] Entity saving
[ ] Render buttons
[ ] Add JavaScript support for buttons, fields and form submission (see #35)

Every essential part has been implemented. Currently a lot of manual testing is happening.


Build fails: Missing requirement: com.archimatetool.canvas 4.5.1.qualifier requires 'osgi.bundle; org.eclipse.core.runtime 0.0.0' but it could not be found

I'm getting this on FreeBSD 12 for version 4.5.1:
[INFO] Computing target platform for MavenProject: com.archimatetool:com.archimatetool.canvas:4.5.1-SNAPSHOT @ /usr/ports/misc/archi/work/archi-release_4.5.1/com.archimatetool.canvas/.polyglot.build.properties
[INFO] Resolving dependencies of MavenProject: com.archimatetool:com.archimatetool.canvas:4.5.1-SNAPSHOT @ /usr/ports/misc/archi/work/archi-release_4.5.1/com.archimatetool.canvas/.polyglot.build.properties
[INFO] {osgi.os=win32, osgi.ws=win32, org.eclipse.update.install.features=true, osgi.arch=x86_64}
[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed: com.archimatetool.canvas 4.5.1.qualifier
[ERROR]   Missing requirement: com.archimatetool.canvas 4.5.1.qualifier requires 'osgi.bundle; org.eclipse.core.runtime 0.0.0' but it could not be found
[ERROR]
[ERROR] See http://wiki.eclipse.org/Tycho/Dependency_Resolution_Troubleshooting for help.
[ERROR] Cannot resolve dependencies of MavenProject: com.archimatetool:com.archimatetool.canvas:4.5.1-SNAPSHOT @ /usr/ports/misc/archi/work/archi-release_4.5.1/com.archimatetool.canvas/.polyglot.build.properties: See log for details -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MavenExecutionException
*** Error code 1

Hi. Sorry but we don't support FreeBSD. You have to contact the person who created the port.

I am trying to create the port, and it breaks.
It looks like a Java error.

As we don't support (nor use Free BSD) we'll be of little help. It seems that this is related to eclipse, not Archi. I suggest you try to find how other people have created ports for other eclipse RCP applications (if any).

You know, rather than just copying and pasting a maven error log and saying "I'm getting this" why don't you actually say what it is you're trying to do? Saves my time and playing the "guessing game". OK, I'll play it...what Eclipse are using? How are you trying to build it? Does it compile? Why are you using Maven? Which version of Maven? Have you tried the Product export? Etc...

How are you trying to build it?

Trying to create the FreeBSD port in order to build it reproducibly.

Does it compile?

No.

Why are you using Maven?
I need to build it, vs. use pre-built jars. Maven seems to be the opnly option to build it.

Which version of Maven?
maven-3.6.1

Does it support the Maven Polyglot extension?
Probably not, polyglot-maven isn't yet ported to FreeBSD.

Have you tried the Eclipse Product export rather than Maven?
No, this likely isn't compatible with the port's build process (it needs to be fully automatic).

What version of Eclipse is it?
Eclipse isn't installed.

Is it compatible with standard Eclipse 4.11?
n/a

OK, thanks for more information.
Polyglot should work with that version of Maven. Clearly the top level pom.xml file is working with Java 11 because we are using it with Travis CI to run the unit tests (https://travis-ci.org/archimatetool/archi).
We don't use Maven to build Archi, we use the Product Export. There is a comment in the pom.xml file to remove comment markers to make a build - are you doing this?
At what point in the Maven build does it fail?

Surely the main issue is creating the executable for FreeBSD and the SWT files? Do normal jar files work on FreeBSD? What exactly is different about a FreeBSD port?

There is a comment in the pom.xml file to remove comment markers to make a build - are you doing this?

I remove the markers from:
        <!-- <module>com.archimatetool.editor.product</module> -->

but it still fails.

At what point in the Maven build does it fail?

Here is the full log: https://people.freebsd.org/~yuri/archi-failure.log

Do normal jar files work on FreeBSD? What exactly is different about a FreeBSD port

There are many ports that build jars which work fine.

I can't really help with this as I have no idea what causes the problem. Clearly the maven build is working on Linux.

Suggest comparing your build log with the one at Travis and figure out what the differences are. Also, check the maven build works on other platforms first, then try to figure out what is different.
Perhaps look for other example of Eclipse based builds for FreeBSD.

Update on this:
I just tried setting up the Archi build and test CI here on GitHub and got the same error. I tried adding a required version number to the required plug-ins but that didn't fix it.
The maven build works on Travis CI and locally.
For reference: https://wiki.eclipse.org/Tycho/Dependency_Resolution_Troubleshooting

It seems it's an issue with Maven 3.6.1. Maven 3.6.0 works,

See https://bugs.eclipse.org/bugs/show_bug.cgi?id=546463

I've tested with Maven 3.6.3 and it all seems to work now:
https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/
3.6.1 has a bug that leads to the "Missing requirement" error
3.6.2 fixed the bug in 3.6.1 but broke polyglot support
So, use either 3.6.0 or 3.6.3.
Unfortunately both Travis CI and GitHub CI Actions are using Maven 3.6.2. With Travis CI I am able to download and use 3.6.0 but I can't see how to do this with GitHub CI Actions.


fix: add metadata file to gitignore

Description
Add metadata file to .gitignore generated by unit test
Fixes #194
Type of change
Please delete options that are not relevant.

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

How Has This Been Tested?
Running hack/build.sh and check for changes in git status
Checklist:

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

/lgtm


240715_AMB - Fix for #253 - quotes within quoted strings

Fix for #253.
Also a couple minor code adjustments...

A tweak to QuickConvertorV2.ahk to prevent the splash window from interfering with msgbox's during testing (remove AlwaysOnTop).
Moved a comment from ConvertFuncs.ahk to 1Commands.ahk

Messed up pull request, will fix and resubmit


Three new proteomics trainings (DIA)

I generated three new tutorials in the proteomic topic teaching on how to perform DIA data analysis.
All three trainings are first drafts and will be optimized upon user feedback during the next few weeks.
We would like to use them as hidden GTN material, to get first teaching experience and feedback from course participants this friday.
Thank you very much for reviewing and merging.

@bgruening
Thank you very much, we will definitely go through the trainings and implement feedback which we will get during the upcoming course. =)

Here are the links for you workshop:
https://training.galaxyproject.org/training-material/topics/proteomics/tutorials/DIA_Analysis_MSstats/tutorial.html
https://training.galaxyproject.org/training-material/topics/proteomics/tutorials/DIA_Analysis_OSW/tutorial.html
https://training.galaxyproject.org/training-material/topics/proteomics/tutorials/DIA_lib_OSW/tutorial.html


fix Gene3D links

exclude G3DSA prefix in URL

I've fixed that in pombase2.bioinformatics.nz but not in the preview.  I'm going to do a bit more testing then I'll update preview tonight.

Fixed in the preview now.


This is handy for not comitting .vs profiles

Think will recreate this PR so it does not have reverts in it.

No need to make a different PR. You could squash the two commits together using git rebase -i and force-push to github - the PR would update itself.


createServerData not being compiled in non-route files

Should add test for this
Requires us to add serverResource babel plugin to non-route files as well

This is interesting. At first I'm thinking, so what.. But routeData is the only piece actually tied to the route I think.. What's interesting is having stuff like redirects happen somewhere nested in the component tree, but then again maybe that flexibility is a good thing. server is generic for sure.. but the extent of Actions and Data are interesting to consider. It might be enough to show best practices and keep things really flexible, but I do think the consequences are worth thinking on.

This applies for both createServerAction and createServerData..but also people need to be able to abstract a createServerData function in a different function, and import that and use it in routeData. Can't break that composability.
Server actions by default can be used anywhere obviously coz thats inside components.


Proposing tutorialinux youtube channel

Disclaimer: I run this channel

Hi, thanks for the contribution. But I don't think your contribution fits into the "Linux Configuration" category(some videos do have relevant content but not totally). Perhaps add it to https://github.com/rsapkf/goodies/blob/master/docs/science-technology-and-mathematics.md#tech with a shorter description?

Oh, weird -- maybe I should have proposed the link to the Linux Sysadmin Basics playlist instead? https://www.youtube.com/watch?v=bju_FdCo42w&list=PLtK75qxsQaMLZSo7KL-PmiRarU7hrpnwK
I saw Luke Smith's channel in this section and figured mine is almost boringly on-topic in comparison: https://www.youtube.com/channel/UC2eYFnH61tmytImy1mTYvhA/video (that's not a criticism; I think his channel is really fun).
I'm happy to propose it over in science-technology-and-mathematics instead though.


Removed branch creation from fetch by commit id

After discussing this issue (#3180) with @jeschu1 she suggested that when fetching by commit id we dont need to create a branch with the same name, so I removed the destination from the refspec.

@IlyaChistov can you show me what the output looks like from the agent log?  I just want to double check it does exactly what i'm thinking.  Thank You!

@jeschu1
Worker_20210525-100316-utc.log

/azp run

/azp run

/azp run


Is it possible to use polars_ds_extention in rust-polars directly?

Is it possible to use polars_ds_extention in rust-polars directly?

As far as I know, there is no easy way to directly port the package and its expressions to Rust, despite being written in Rust. However, I think it is possible. You might need to look into the proc macro that defines custom expressions and look into how polars registers its expressions. A better place to ask this question may be the polars discord

As far as I know, there is no easy way to directly port the package and its expressions to Rust, despite being written in Rust. However, I think it is possible. You might need to look into the proc macro that defines custom expressions and look into how polars registers its expressions. A better place to ask this question may be the polars discord

Thanks for you reply, I'll look into proc macro to solve this.


Cannot enter Node URL directly in Delegated Harvesting

I can select a node from the list box, but when I type the URL value directly, it shows "Invalid node" and I cannot link to it.

@xembook are you trying to input a custom node, or you're using one of the available peer nodes?

@xembook I guess this is duplicate https://github.com/nemgrouplimited/symbol-desktop-wallet/issues/1116.


NibOwnerLoadable & NibLoadable

This can be used together?
Cause one place use xib,  another use code.

Hi
The difference between the two protocols isn't wether you load them by XIB vs code but in how your XIB file is designed and wether your UIView subclass in your XIB is set as File's Owner or as root view.
So what I'd recommend you is to use NibOwnerLoadable only, because it works well when integrated with another XIB or storyboard… but can also be loaded by code. If you want to load a NibOwnerLoadable view by code simply create an instance of your view then can loadNibContent() on that instance and you're all set.

Yes, I know. My code like below:
`
// CustomView has xib and some propeties outlet.
final class CustomView: UIView, NibOwnerLoadable {  }
// AViewController has xib, and a CustomView, it can load it.
final class AViewController: UIViewController {
@IBOutlet weak var customView: CustomView!
}
// BViewController doesn't have xib, and a CustomView, it can load it.
final class BViewController: UIViewController {
fileprivate var customView: CustomView! = {
/*
load with code.
using nib methods it would occure an error, saying "[<NSObject 0x7f80896418b0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key 'xxxxx'."
*/
}()
}
`
I try to load it but it's error. How is the NibOwnerLoadable loading by code ? Like you demo?

What do you mean by your comment "using nib methods it would…"? What "nib methods" did you try to load your CustomView by code?
As suggested above, you should just be able to do this to load your CustomView by code:
final class BViewController: UIViewController {
  fileprivate var customView: CustomView! = {
    let v = CustomView(frame: .zero) // or whatever frame you want
    v.loadNibContent()
    return v
  }()
}

My NibOwnerLoadable code like below:
  fileprivate var customView: CustomView! = { let nib = UINib(nibName: "CustomView", bundle: Bundle.main) let views = nib.instantiate(withOwner: nil, options: nil)// Xcode will raise an NSUnknownKeyException while you have @IBOutlet propeties let view = views.first as! CustomView retrun view   }()
I didn't think of using "initWithFrame" then "loadNibContent".
Your reply is correct,  Thanks.


remove dup code

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes # (issue)
Type of change
What is it?

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Documentation update
[ ] Tests update
[X] Refactor

Checklist:

[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[X] New and existing unit tests pass locally with my changes
[X] I run make pre-commit to check fmt/vet/lint/test-no-fdo

Codecov Report
Base: 46.89% // Head: 46.79% // Decreases project coverage by -0.09% :warning:

Coverage data is based on head (e2d45b5) compared to base (ba3566c).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1786      +/-   ##
==========================================
- Coverage   46.89%   46.79%   -0.10%
==========================================
  Files          70       70
  Lines        9827     9815      -12
==========================================
- Hits         4608     4593      -15
- Misses       4766     4768       +2
- Partials      453      454       +1

Impacted Files
Coverage Δ

pkg/services/updates.go
69.64% <ø> (-0.56%)
:arrow_down:

pkg/services/devices.go
50.10% <0.00%> (-0.33%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Improvement idea for multiprocessor systems, current output is unclear

Description
Neofetch provides such output on dual xeon:
CPU: Intel Xeon E5405 (8) @ 2.000GHz
I think it would be a lot cleaner if it would be instead like this:
CPU: 2 x Intel Xeon E5405 (4) @ 2.000GHz
Neofetch version
7.1.0
neofetch verbose log

Just solved this in my fork HyFetch. (See commit https://github.com/hykilpikonna/hyfetch/commit/c176e6ffaef6394969159485fa9b5851df4d36f6)
I only have a single-cpu system but I'm pretty sure that it would work on a multi-cpu system as well. You can test this out!


I was run!

Simple need some dlls
libusb-1.0.dll
rtlsdr.dll
portaudio.dll
SDRSourceRTL2832U.dll
can recompile

You should find the DLLs in the regular install download from https://airspy.com/download/
Unfortunately they don't solve the problem as they won't be added as references, as you can see in the other issue tickets.


connect will support http2 ?

hi author, connect will support http2 ?

It already does.

can you help me some example @dougwilson  ?

http2.createServer(app)

it really simple ? 👍


CI. Adding file validation by hadolint/stylelint/remark linters.

Motivation and context
Adding file validation by hadolint/stylelint/remark linters.
How has this been tested?

Checklist

[x] I submit my changes into the develop branch
[ ] I have added description of my changes into CHANGELOG file
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[ ] I have linked related issues (read github docs)
[ ] I have increased versions of npm packages if it is necessary (cvat-canvas,
cvat-core, cvat-data and cvat-ui)

License

[x] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.
[x] I have updated the license header for each file (see an example below)

# Copyright (C) 2021 Intel Corporation
#
# SPDX-License-Identifier: MIT

Coverage increased (+0.02%) to 74.098% when pulling 1347b94310d89b89543a865cbebd931dd6f1a28d on dvkruchinin:dkru/ci-add-check-dockerfile-md-linters into d9f1798684f441b5de93c456898768985786aad5 on openvinotoolkit:develop.


[MXNET-173]fix acc metric shape miss match

Description
fix issue #2116
The root cause is label and pred_label  in 'acc' metric have different shapes during check_label_shapes. It's similar to 'ce' metric which works fine because it ravel the  label shape before check.
Flatten label and pred_label for equal comparison, and 'acc' needed flattened result anyway
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[x] The PR title starts with MXNET-173
[x] Changes are complete (i.e. I finished coding on this PR)
[x] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
[x] Code is well-documented:
For user-facing API changes, API doc string has been updated.
For new C++ functions in header files, their functionalities and arguments are documented.
For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
Check the API doc at http://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
[x] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[x] Flatten pre_label and label for equal comparison

Comments

If this change is a backward incompatible change, why must this change be made.
Interesting edge cases to note here

@reminisce @sandeep-krishnamurthy Can you review?

@roywei can you please add test for it? I see you checked "All changes have test coverage" but find no related change.

@hetong007  updated with unit test


Reflowing comments sometimes eats code

I'm not 100% sure when this does happen, and when it does not. But I've found a reproduction that works for me.
I'm running atom 1.9.9 and language-babel 2.34.0 on OSX. Reproduced on 2 systems, both running the same versions.
This is my example:
class Foo extends React.Component {
  // This is a long comment which extends beyond 80 characters and I would like to reflow it
  bar() {

  }
}

In this example, if I place my cursor on line 2 (the comment) and click Edit > Reflow Selection, lines 1, 2, and 3 get chewed together and reflowed. The result is this:
class Foo extends React.Component { // This is a long comment which extends
beyond 80 characters and I would like to reflow it bar() {

  }
}

While I would expect to get this:
class Foo extends React.Component {
  // This is a long comment which extends beyond 80 characters and I would like
  // to reflow it
  bar() {

  }
}

My workaround is to insert one blank line above and below the comment, then reflow it, and then remove the blank lines. It's not something I've observed in other languages in atom, so I'd guess it somehow relates to this package, but I could well be wrong, I mostly write javascript, so I haven't really tested in any other languages. Please feel free to redirect me to somewhere else if this is the wrong place for the bug report.

It seems like a bug in Atom!
Little bit complex but it appears that autoflow attempts to determine the line that the cursor is on is part of a paragraph. This eventually calls language-mode which eventually determines here that this line isn't a comment line because my grammar doesn't set the whitespace preceeding the // as a comment ( because it isn't! ) and therefore determines that this line is part of a paragraph including the line above.
You can see this by starting the comment in column 1 and doing a reflow and it works.
Two solutions:
Report this to the atom repo
Or
I can set comments of this type to include the whole line as a comment as does the default javascript grammar, even though this incorrect.

One further thing you can do is to mark the paragraph yourself. This stops atom trying to find a paragraph, which it seems quite bad at. If you select the whole line/s containing the comments and then reflow it works ok.

I decided to scope prefix whitespace on a new lines // comment. This should fix the issue with reflowing // syntax in release 2.35.0.
If myou have other issues with reflow let me know here. As I said above, if you do have issues marking the lines you want to reflow is more robust.

@gandm Awesome, thanks. I was winding up to suggest that as a stop gap, and I'll open an issue on atom linking here with your detailed explanation of what the issue is and what the fix might be. Thus, maybe the atom folks will fix it upstream, and then this change will no longer be necessary.
Thanks for the speedy reply and speedier resolution, will be wonderful to reflow without hesitation! 👍


Options expansion

PR to address Issue #3 along with the addition of many features to expand search capabilities for messages.  Finally, started work on functions to correct errors in log file headers as read from the files.


Simplified function to reduce work

Hello, first thanks for this amazing feature! It's really, really useful since it sounds like Big G doesn't want to share PopTimes with us via API. I was wondering if it would be possible to add a simplified function to this repo, for cases in which you only need PopTimes for one place and you already have place ID. It could be something like populartimes.IDget(api_key, ID). It would save time by reducing the amount of code to be executed with many benefits. I'm not familiar enough with Python, but I think that it wouldn't be hard to add it, since it should use only a part of what's already there. Thanks again.

Hey, you're welcome and thanks for the idea!
I changed get_current to get_id and added the popularity and other detail information to the response.

Many thanks, I'm glad you liked the idea. However, when I try it, I get back the error "The query string is malformed", though with only 2 params I'm pretty sure I wrote them in the right way :-) Could you please check if there is a leftover issue or it is just me? Thanks.

Ok, I tried again with some other IDs (if you want to reproduce: the first is Louvre Museum, the second is Eiffel Tower and the third is Sacre-Coeur basilica). The first one returns the error above, the second one runs fine but no popular time is returned (though they're present in the google search), while the third one is working exactly as expected. Is this a Google's issue (or even mine)?

Are you using those place id's?
Sacre-Coeur ChIJg8vfy1xu5kcRA1tGDNGsgHA
Louvre ChIJD3uTd9hx5kcR1IQvGfr8dbk
Eiffel Tower ChIJrbS_8-Fv5kcRzSjPvnUT03s
I don't get errors running this locally

Actually not, mine ar different, maybe because I get them via javascript instead of web service. To be precise:
Sacre-Coeur 7675909b2af3729b5a18a1649fc7926a51dcf2cc
Eiffel 78dcba4698e28ed666a2bf94fe08fabc0bb11ffe
Louvre 9a007d81ca8f47ed30ddaf39c4174ef773b351e0
I just tried yours and they work, even though the Eiffel one still does not report any popular time.

Ok, I never used the javscript IDs, how did you retrieve them?
It's strange that the Eiffel tower has no current popularity. For me it return a current popularity, only Louvre not as it's closed.
Could you provide the JSON response for the Eiffel tower?

IDs issue is solved, check post above if you didn't notice the edit ;-) Here is the Eiffel result (using the right ID)
{
"id":"ChIJrbS_8-Fv5kcRzSjPvnUT03s",
"name":"Eiffel Tower",
"address":"Tour Eiffel, 5 Avenue Anatole France, 75007 Paris, France",
"types":[
"premise"
],
"coordinates":{
"lat":48.8583698,
"lng":2.2944833
},
"rating_n":0,
"populartimes":[
]
}

I'm not sure what is causing this issue, I get a perfectly fine response (see below).
Could you provide more information on your system/python version?
It also seems as if there are some issues with the Eiffel tower, the response does for example not contain components specified in https://developers.google.com/places/web-service/details like rating or review.
{
  'id': 'ChIJrbS_8-Fv5kcRzSjPvnUT03s',
  'name': 'Eiffel Tower',
  'address': 'Tour Eiffel, 5 Avenue Anatole France, 75007 Paris, France',
  'types': [
    'premise'
  ],
  'coordinates': {
    'lat': 48.8583698,
    'lng': 2.2944833
  },
  'rating': 4.6,
  'rating_n': 34253,
  'current_popularity': 42,
  'populartimes': [
    {
      'name': 'Monday',
      'data': [
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        0,
        18,
        32,
        47,
        58,
        63,
        63,
        60,
        57,
        54,
        54,
        53,
        50,
        43,
        31,
        0
      ]
    },
    {
      'name': 'Tuesday',
      'data': [
        0,
       ...
}

Uh, that's weird. Tried again and still same response. System is Win7 and py version is 3.6.3. The script consists in two lines (+imports), one with the function call and one to dump json to a file; i'm running it with "py -3 filename.py" since I also have other Python versions.

I'm not sure where this problem is coming from it worked for me with Window and/or VPN.
Maybe try reinstalling the library.

Yes, I thought it might be that special characthers caused some troubles with e.g. format function. Anyway, it's actually quite hard to figure out where the problem happens. Looking at the output, I can surely say that error occurs before line 326, where "popularity" seems to be None. Figuring out why is indeed much harder, especially because yours works well. Do you have any idea about where to look and put breakpoints? Also, I compared the results of calling the API via web (using "detail_str") with Eiffel and Louvre, and the latter is longer, including more information, but again I can't imagine what should I be looking for.

Can you post the the complete contents of jdata? info should normally never be empty

By now I'm unable, I'll post it in the afternoon. Anyway I confirm that the trouble is within the indexes. I saved jsons from jdata for both Louvre and Eiffel. Going to [0][1][0][14] for the first one returns what is expected, the second is empty. I'll try to find the right indexes, but I actually have a possible explanation: might this be a problem of localization? I mean, depending on user language indexes may be different, is that possible?

So, I came to a conclusion. Since the problems are only in the third index, you could check if [i][14] is not null to determine i. I have very few knowledge in python, but at line 270 I changed the code to
info = jdata[0][1]
for i in range(len(info)):
   try:
      info=info[i][14]
   except IndexError:
      continue

This might not be the better solution, but it indeed works! I suppose that a little reworking on the code above should do the trick, handling any possible index variation (at least on the third).

Glad you could fix it! However, I would still like to reproduce the error or find out why there are additional parameters in your JSON response.
Could you provide the complete data from jdata?

Yep, and I think such kind of fix (to search for the right index) should work for any case out there. It's actually quite hard to provide the full jdata, especially to paste it here. However I'm almost sure it depends on the user language: additional data may be displayed depending on user language/setting, thus the variations in the indexes.

What language do you use, so I can maybe reproduce this and then update the code?
I tried a few different countries via VPN previously, but none of the replies had the same problem.

Italian. Another weird thing I noticed is that using the javascript places API for Eiffel Tower, some stuff is still missing, e.g. opening hours, rating and so on.

So, sadly I could not reproduce this with changed language settings... No idea what is going on.
And yeah, the Eiffel tower response is missing data that should be available.

It also seems as if there are some issues with the Eiffel tower, the response for the webservice detail request does for example not contain components specified in https://developers.google.com/places/web-service/details like rating or review.

I guess this is a strange behavior from Google's side, not sure what caused this. If some other people will report similar issues I would update the code.
Thx for the help trying to figure this out!

That's weird! Surely it's Google's fault, but I can't figure out why. Maybe it could be related to Google account, or API key or something else, but I'm still not sure since I can't remember of any particular setting. I'll try and keep the fix I wrote above (that by now seems to work well and looks like a simple & pretty way to solve the issue) and will let you know if I'll find out anything else. Thanks again!


Unique Email - allow blank

Hi, with the option REQUIRE_UNIQUE_EMAIL set to True,
Is there a way to allow emails to still be blank?

Make your emails null, not blank. An empty string is still a value in the DB, so the unique constraint will disallow you from having multiple values of the same.
Closing this issue.

Ok, but this causes problem in django admin page, since email appears to be required now, i cannot save without it complaining.

Ah, that's true. I'll look at that at some point, if you need it now, feel free to send in a PR.

I believe this could could be fixed by allowing changing this field by a setting similar to email's length and uniqueness.
https://github.com/madssj/django-longer-username-and-email/blob/master/longerusernameandemail/models.py#L33

One way to fix it would be to set the models .blank to be the same as the result of the call to REQUIRE_UNIQUE_EMAIL().


community(you): Integrate You.com conversational APIs

Description
You.com is releasing two new conversational APIs — Smart and Research.
This PR:

integrates those APIs as an LLM
streaming is supported

New Package?
Did I fill in the tool.llamahub section in the pyproject.toml and provide a detailed README.md for my new integration or package?

[x] Yes
[ ] No

Version Bump?
Did I bump the version in the pyproject.toml file of the package I am updating? (Except for the llama-index-core package)

[x] Yes
[ ] No

Type of Change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[ ] Added new unit/integration tests
[ ] Added new notebook (that tests end-to-end)
[ ] I stared at the code and made sure it makes sense

Suggested Checklist:

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[ ] I have added Google Colab support for the newly added notebooks.
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[x] I ran make format; make lint to appease the lint gods

Also @christeefy, we need to make some modification to BUILD files that pants uses, in order to get unit tests passing. To do this we have a couple of options:

(maybe easiest?) Add me as a contributor to your fork, and I can make the changes and push them up.
Install pants, and then remove the original BUILD file and subsequently run pants tailor :: in the project's root folder.

Thank you for all the comments and review @nerdai. I have applied all your feedback as requested, except for the PrivateAttr one.
I've also generated the BUILD files using pants as I don't have admin access to make you a contributor on the fork.
I've followed your instructions and used pants==2.19.0.

Thank you for all the comments and review @nerdai. I have applied all your feedback as requested, except for the PrivateAttr one.
I've also generated the BUILD files using pants as I don't have admin access to make you a contributor on the fork. I've followed your instructions and used pants==2.19.0.

Sounds good. Thanks -- it worked!

Hey there 👋 from You.com. Happy to help support here as well. We're going to invest a lot more in our public facing APIs, and building integrations with llama_index. Following along here and can answer any questions.

Hey there 👋 from You.com. Happy to help support here as well. We're going to invest a lot more in our public facing APIs, and building integrations with llama_index. Following along here and can answer any questions.

Cool! I think there's just one minor fix that needs to be done in order to land the PR (if you want to address it).
Alternatively, you may want to add Logan or myself or both as contributors to the fork so that we can make small fixes when necessary just to move your future PRs along more quickly.

Hey there 👋 from You.com. Happy to help support here as well. We're going to invest a lot more in our public facing APIs, and building integrations with llama_index. Following along here and can answer any questions.

Cool! I think there's just one minor fix that needs to be done in order to land the PR (if you want to address it).
Alternatively, you may want to add Logan or myself or both as contributors to the fork so that we can make small fixes when necessary just to move your future PRs along more quickly.

Yes! Let met get that setup.

Thanks for the quick review @nerdai! You're right on the example notebook. @rmcarthur will handle that in a subsequent PR, so that this PR is unblocked.


Bad data on display

I appear to have the BOARD_BLUE_6 unit, as all of the pins match up to that configuration, but I can't get anything to show on the display.
This unit uses a 12 pin 4 digit LED display, and I can't seem to find the magic combination of bits to make it work.  Would you be able to recommend a set based on this schematic, or would you be able to explain how I can interpret the '0b00000100' numbers to some up with something that works?
TIA

BLUE_6 refers to board color and the number transistors on the board. No transistors on your board. Even though the pinout matches your schematic, what you need to use is:
#define BOARD_TALKING      FALSE
#define BOARD_BLUE_6       FALSE
#define BOARD_BLUE_5_RELAY FALSE
#define BOARD_YELLOW_5     FALSE
#define BOARD_YELLOW_SMALL FALSE
#define BOARD_WHITE_SMALL  TRUE
#define BOARD_GREEN_SMALL  FALSE
#define COMMON_ANODE   FALSE
#define COMMON_CATHODE TRUE
#define PROC_IS_15W408AS FALSE
#define PROC_IS_15W404AS TRUE
#define PROC_IS_15F204EA FALSE
#define HAS_LDR TRUE
#define HAS_THERMISTOR TRUE
#define HAS_RELAY FALSE
#define DIGIT_3_FLIP FALSE
You'll have to determine if you have a common anode or common cathode LED and set the defines accordingly. Blue tends to be common cathode so start there, if it doesn't display switch to anode and recompile. I honestly don't remember if I've seen a blue CA.
One of these days, I need to take some photos and better document the types.

The pins should not remain low, the pin should return to logic high when the button is released. Start with the backup battery removed and when it powers up, you should have a 07:59 display. Pressing S1 should result in a "SEt" led display.
If no joy above, remove power (and the coin cell) and while holding down both S1 and S2, re-apply 5V power. This will clear the ram in the DS1302 and reset everything to defaults. You should then have the 07:59 display. If not, post what you see on the display. I'll keep the issue open until you get the unit working.

I was just able to get things working on my unit by using the WHITE_SMALL definition, and adjusting the SET_PORT_DRIVE parameter to P3M1 = 0x03.
Unfortunately it's quite dark in that configuration, unless I also set P3M0 = 0x3C.  I'm still quite new at this, but can both IO port configuration settings be set under the same SET_PORT_DRIVE? or is adding a second directive to main.c the best option?
Messing with the LED brightness is something I can take care of, so I'll close this issue.

as an addendum to this, I needed to install external pull-up resistors to from VCC -> P3.1/3.0  I wasn't able to adjust P3M1 and P3M0 to the extent that I could enable the internal pull-ups to the extent that they would actually work in this configuration
I'm not sure if this is a bad chip, or poorly designed board.

The external pullups are not required as P3.0 and 3.1 default to "quasi-bidirectional" so there is an internal pull-up in the circuit. Given that info, unless you've you're directly messing with P3M0 and P3M1 in your code, which you should not have to do, it sounds like a bad chip. I've never seen a bad one, never problem one with any of the STC devices but anything is possible.
In common anode mode, the code already sets P3M0 to 0x3C with the #define at line 329 in global.h. This enables high current mode output for P3.2->P3.5 which is the anode supply for each digit. P3M1 is left at its default of 0x00 in the code.
Common cathode mode sets all pins of P2 to be high current mode with line 334.
If the display is lit but dim to the point of being unviewable, try recompiling with the opposite polarity display and reflash. I seem to remember that is what happens when it's wrong. Knowing the displays can be either configuration, I measure them with the diode setting on a DMM and label them CA or CC with a sharpie to avoid later confusion as I have a box of every model I could find.
The dim display can also be a result of the LDR circuit. Measure the voltage across the LDR, it should approach zero volts in a bright room, it should go to 2-3 volts in darkness. If you have any doubts, you can force the setting to full brightness by setting the "brt" minimum to 63. The brightness defaults to 63:01 (bright:dark).  Change that to 63:63 and it will never dim regardless of the LDR voltage.

BTW, yeah, it's poor design too since there are no current limiting resistors in the LED circuit. STC documentation is somewhat conflicted on this issue. The latest document says the output is current limited, the earlier ones say a resistor is needed in high current mode.
As a result of no resistors to limit the current, the display will be brighter when a "1" is displayed due to this being the lowest number of segments and the overall available current is higher. The worst case is at 18 minutes past the hour where you have two segments on next to 7 segments on.
I've realized I could adjust for this by counting the number of on segments and reducing the digit on time but I've never gotten back around to spend the time on it. It might be problematic because of the variability in display brightness. The white leds tends to burn your retinas, green is ho-hum bright at best. FWIW, there is more discussion about display timing in issue #3.


test test_delegate_subscribe_unsubscribe sometimes fail

Bug Report
test_delegate_subscribe_unsubscribe sometimes fail

What version of TiKV are you using?

master branch
Steps to reproduce

call make test. And test_delegate_subscribe_unsubscribe will fail sometimes
thread 'delegate::tests::test_delegate_subscribe_unsubscribe' panicked at 'assertion failed: delegate.unsubscribe(DownstreamID(0), None)'
What did you expect?
test passed
What did happened?
sometimes failed
I tested it locally and I found that sometimes DownstreamID will be initialized to 1 instead of 0. But I have no idea why it happened temporarily
https://github.com/tikv/tikv/blob/f3a230996f4208948cf5e0a3d4e1583e388cdb6f/components/cdc/src/delegate.rs#L1047
And it causes the failure of assert!
A possible way to fix it may be using downstream.id to call assert! and delegate.unsubscribe instead of using DownstreamID(num)

/component test


File operations queue order

New items should not be appended to list end, but pushed into its beginning

The most significant place in the list view should be taken by the most recent operation

Irrelevant with the new operations view


Suggestions of upgrades for the CI system

While working on:

#46

I've noticed changes we could bring the CI:

Ubuntu 18 is EOL so we could move to the latest LTS
Maybe change "Install postgrex 0.17 (except on elixir 1.7.4)" to "Install latest Posgrex" in all cases?

Just ideas at this point, let me know what you think!

Addressed in #46, I'll close here for now.


Add "how to order" page for social care leavers

Context
Changes proposed in this pull request

Add two links to devices guidance page to link to two new how to order pages for ISS and SC
Add new view on how to order for Social care leavers
Add new view on how to order for ISS

Guidance to review

Visit https://dfe-ghwt-pr-1613.herokuapp.com/devices
Visit https://dfe-ghwt-pr-1613.herokuapp.com/devices/how-to-order-for-social-care
Visit https://dfe-ghwt-pr-1613.herokuapp.com/devices/how-to-order-for-independent-special-schools

 Create Social care leavers and ISS how to order page


Environment variable for Rancher custom tags

What does this PR do?

Offers the ability to set -e RANCHER_HOST_LABELS=yes when running docker-dd-agent.  This adds check_rancher_host_labels to the datadog.conf file to enable the collection of host labels from the Rancher API (when running in a Rancher cluster) which are then added to the host as tags in Datadog.  This feature is currently in PR here: https://github.com/DataDog/dd-agent/pull/3366

Motivation
Considering the work in this PR of dd-agent: https://github.com/DataDog/dd-agent/pull/3366 it made sense to update docker-dd-agent so this configuration option can be easily enabled when deploying the Datadog agent as a service in Rancher.
Please see the main PR for a full description of the motivation behind this work.
Additional Notes
This PR depends on this one: https://github.com/DataDog/dd-agent/pull/3366

Hi @hkaj, have fixed up the commit based on your comments.  Looks like a copy-and-paste error -apologies.

Hey there, it looks like we never ended up merging this PR, I apologize about this.
This PR was to get tags from rancher v1.x in agent 5. Rancher is now at 2.x, and operated a full switch to kubernetes, while the Datadog agent is now at version 6, and collects k8s labels natively. I will close this PR as I think it's not useful anymore, however feel free to comment if you disagree.
Again, sorry about not getting it merged.


Cz pr

Description
Change the "it's" to "its", it should be a typo.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[Yes ] This change requires a documentation update

A small typo


How to remove italics from the no options text?

I wish to remove the italics from the text - "No options found!" as it breaks the UI consistency. Any idea how to go about this?
Also, how can I change this text to say something else?

There's an emptyState prop

There's an emptyState prop

<AutoComplete emptyState={<Box> Nothing was found </Box>} />
or even
<AutoComplete emptyState={({value})=>(<Box> {value} was not found </Box>)} />

Perfect! Thanks, I couldn't find these in the documentation though. It wasn't very clear.
If you could update them with such examples, it would be helpful :)

I'll try my best. It's just time. I wouldn't mind a PR though.


Fix goroutine-leak in gsm

The client has to be closed, otherwise it will leak goroutines (~3 per unclosed client)

Thanks for this.


Enemy Randomisation Can Cause Game Crashes on Attack

TODO: Link an example (happened on Stream in Shadow's Flame Core)

Fixed in https://github.com/Knuxfan24/Sonic-06-Randomiser-Suite/commit/5421d96b3813f848bd24c25668123399f372e49c, was caused by a single missing letter in a switch statement.


updated Fastlane

This updates the fastlane version from 2.157.2 to 2.159.0.

Love it 👍

Due to compatible  issue. Set the status to on hold. cc @whiskey


[0.55.0] Metro Bundler can't listen on port undefined

[x] I have reviewed the documentation
[x] I am using the latest React Native version
[x] I have searched existing issues

I am following up on closed issue #18673. This still seems to be an issue. Here's a screenshot of what I'm experiencing. Is there something I am missing?

Environment

OS: macOS High Sierra 10.13.3
Node: 7.9.0
Yarn: Not Found
npm: 4.2.0
Watchman: 4.9.0
Xcode: Xcode 9.3 Build version 9E145
Android Studio: 3.1 AI-173.4670197
Packages: (wanted => installed)
react: 16.3.0 => 16.3.0
react-native: 0.55.0 => 0.55.0
Steps to Reproduce

react-native init AwesomeProject
cd AwesomeProject
react-native run-ios

Expected Behavior

Build Successful!
Actual Behavior

Metro Bundler can't listen on port undefined

You can find a fix here: https://github.com/facebook/react-native/commit/589eae1432cc4bbc16221f841e27b038099fd128

@shivawu The releases are cut very carefully, but there's just too many pieces to test at one time. That's why having people to use release candidates would prevent such obvious errors from leaking into production.
Recent issues have to do with runIOS which is not part of our manual and automated testing.

With this solution https://github.com/facebook/react-native/issues/18681#issuecomment-378441952 the metro bundler works. But, still appearing this error.

Yeah, I fixed both in 0.55.
https://github.com/react-native-community/react-native-releases/issues/11#issuecomment-378889572
On Thu, 5 Apr 2018 at 23:50 Mateo Guzmán<EMAIL_ADDRESS>wrote:

With this solution #18681 (comment)
https://github.com/facebook/react-native/issues/18681#issuecomment-378441952
the metro bundler works. But, still appearing this error.
[image: image]
https://user-images.githubusercontent.com/20783123/38393680-3285f4ee-38f1-11e8-9fee-4fcd385e2ca2.png
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/facebook/react-native/issues/18681#issuecomment-379087451,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACWcxvQXBEOP_1y35EfG4NMBnz4uyFXrks5tlpHBgaJpZM4TF1kc
.

@grabbou I upgraded to 0.55 and run react-native run-ios it build success but the simulator won't be triggered. so wired...

@grabbou Thank you for this temporary solution.

Here's my proposed fix:
https://github.com/facebook/react-native/commit/2ad34075f1d048bebb08ef30799ac0d081073150#r28448345
Waiting
for feedback and will release a patch.
I am really sorry for all the inconvenience issues with the command line
tools caused for you. For the future, we will make sure to pay even more
attention to commits affecting the CLI.
On Fri, 6 Apr 2018 at 09:10 Welly<EMAIL_ADDRESS>wrote:

@grabbou https://github.com/grabbou Thank you for this temporary
solution.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/facebook/react-native/issues/18681#issuecomment-379167892,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACWcxjyOpbbcu0SBIaxxVa4cZBKtLJAzks5tlxTqgaJpZM4TF1kc
.

Here's PR: https://github.com/facebook/react-native/pull/18721. I'll probably merge it today and once 0.55 is out, make a PR back to master to make sure it has all the fixes.

This doesn't happen with React 16.3.1 and React Native 0.55.4.


chore(state): Optimized v1LegacyLayout key creation.

This PR refactors the v1LegacyLayout key creation to improve its speed and reduce its memory usage.

PR checklist

~[ ] Tests written/updated~
[ ] Changelog entry added in .changelog (we use unclog to manage our changelog)
[x] Updated relevant documentation (docs/ or spec/) and code comments

Benchmarks:
BenchmarkKeys/StringConcat-11               116908806                9.999 ns/op           0 B/op          0 allocs/op
BenchmarkKeys/Preallocate-11                   302796864                3.968 ns/op           0 B/op          0 allocs/op

StringConcat is what's in main now. Preallocate is the refactoring in this PR.


77 added index.html.template and updated docs

We'll also want to delete the index.html file, as that will be stored in a separate private repository and incorporated at build time

@clarkepeterf The index.html has been removed from git. I still have my local copy as it is now ignored by git.


Renaming a distinct error type doesn't work as expected

Description:
$title.
Steps to reproduce:
type Error distinct error;

type MyError distinct Error;

Renaming MyError to E1 changes the code as follows
type Error distinct error;

type E1 distinct E1;

Affected Versions:
slbeta1-rc8

This is same as #29276 and caused by #30688


[BUG]perdayvolume for my bundle is not correct

Describe the bug
perdayvolume/throughput/indexed are not correct.
To Reproduce
longevity_syslog.zip
my bundle is very simple. Here's a table of result
egx cluster 3 node to send data via hec to a standalone splunk host

httpwaitresponse
payloadmaxsize
perdayvolum_total
Throughput
actual

false
256K
200
1477K/s 126G
130G

true
256K
200
1474K/s 126G
130G

true
256K
600
4054K/s 350G
355G

true
256K
900
5863K/s 504G
498G

true
256K
3000(hit bottleneck)
10907K/s 942G
1.01T

Additional context
version: 6.3.1

2 problems here:

throughput is less than half of actual throughput.
actual throughput is greater than perdayvolume, not in a acceptable range (+/- 10%)

Hi Yifeng, would you verify this is the latest version? Also, would you provide environment details such as which cluster, container, etc.

Some testing result:

Setting persistentQueueSize and queueSize with 500MB to 1GB does not take effect;
Using this pr https://github.com/splunk/eventgen/pull/192 does not work;

Still investigating on it...

@YifengMao would this be still valid? If not, may I close it?

@arctan5x I think this is still valid and not solved. This is also related to how we are going to measure the performance of Eventgen.

The issue is resolved. I verified in the test env.
splunk cluster: 3 indexers and 1 SH.
set the perday volume size as 1000GB.
Then, use 2 spl to check the indexed data size. The result is near 1000GB in either way.  The volume size deviation is less than 1%.
Here are the screenshots.