text:
add a source debug build

Adds make debug.. allows a developer to build a source debuggable version of skopeo. For example, using delve.
Signed-off-by: Mike Brown brownwm@us.ibm.com

@duglin ptal

@mtrmac Switched to a make ... DEBUG=1 pattern

rebased...

Merged, thanks!

Bah, I can’t merge this manually it seems.
@mikebrow do you want to try rebasing again?  Sorry about that… Or we can wait a few days for @runcom or somebody else with admin status on this project to allow force-pushing.

Saw the merge and stopped watching for additional messages, sry bout that.  Rebased.

authors: mikebrow mtrmac runcom


text:
Properly refcount routes, fix accidental withdrawal of routes

Description

Discovered in https://github.com/projectcalico/calico/issues/6074 and
https://github.com/projectcalico/calico/pull/6282.
BGPConfiguration and Services both provide static routes. Should they
provide the same route, we need to properly reference count them in
order to prevent accidental route withdrawals.
Example:

BGPConfiguration contributes 10.0.0.1/32
Service A contributes 10.0.0.1/32
BGPConfiguration withdraws 10.0.0.1/32, replaces with 10.0.0.0/24

We need to make sure we keep advertising 10.0.0.1/32, as contributed by the Service, even
though BGPConfiguration no longer contributes that prefix.
We actually have two layers of reference counting involved here - the
RouteGenerator reference counts prefixes since multiple services can
contribute the same CIDR, and the client further reference counts
prefixes from the RouteGenerator and BGPConfiguration.
It's possible we could consolidate to a single layer, but it seems
conceptually correct and easier to test if we do this in two stages.
Related issues/PRs

Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

Fix occasional incorrect withdrawal of Service IPs over BGP when changing BGPConfiguration.

Reminder for the reviewer
Make sure that this PR has the correct labels and milestone set.
Every PR needs one docs-* label.

docs-pr-required: This change requires a change to the documentation that has not been completed yet.
docs-completed: This change has all necessary documentation completed.
docs-not-required: This change has no user-facing impact and requires no docs.

Every PR needs one release-note-* label.

release-note-required: This PR has user-facing changes. Most PRs should have this label.
release-note-not-required: This PR has no user-facing changes.

Other optional labels:

cherry-pick-candidate: This PR should be cherry-picked to an earlier release. For bug fixes only.
needs-operator-pr: This PR is related to install and requires a corresponding change to the operator.

Realized that the client code wasn't properly sending single updates for routes and reject routes, so working on some new commits to make sure it only sends a route if it needs to do so, and withdraws any that shouldn't be there in a more reliable way.

source: gharchive/pull-request

repo: projectcalico/calico

license_type: permissive

license_source: github-api


text:
libnetwork-plugin should support a configurable location for the Docker API

At the moment it only works with the default docker.sock location

Actually, we use an EnvClient so we support all the standard env vars - e.g. DOCKER_HOST so maybe this just needs a docs change

@gunjan5 looks like this just needs retest / documentation work.

so this doesn't seem to work at 2 places at least:

calicoctl node run command always mounts the default /var/run/docker.sock right now
When I manually configure and start dockerd to listen to a tcp port dockerd -D -H tcp://172.17.8.101:2376 & and set the env var DOCKER_HOST=tcp://172.17.8.101:2376 when starting calico-node, it starts fine:

$ docker run --net=host --privileged --name=calico-node -d --restart=always -e NO_DEFAULT_POOLS= -e CALICO_LIBNETWORK_ENABLED=true -e ETCD_ENDPOINTS=http://172.17.8.101:2379 -e ETCD_AUTHORITY= -e ETCD_SCHEME= -e NODENAME=calico-01 -e CALICO_NETWORKING_BACKEND=bird -e DOCKER_HOST=tcp://172.17.8.101:2376 -v /run/docker/plugins:/run/docker/plugins -v /var/run/docker.sock:/var/run/docker.sock -v /var/run/calico:/var/run/calico -v /lib/modules:/lib/modules -v /var/log/calico:/var/log/calico -v /run/docker/plugins:/run/docker/plugins calico/node:latest

$ docker ps
DEBU[2333] Calling GET /v1.24/containers/json
CONTAINER ID        IMAGE                COMMAND             CREATED             STATUS              PORTS               NAMES
8a9152c19ceb        calico/node:latest   "start_runit"       3 minutes ago       Up 3 minutes                            calico-node

BUT, when I try to add a docker network, I get this:
$ docker network create --driver=calico --ipam-driver=calico-ipam myCaliNet2
DEBU[2134] Calling POST /v1.24/networks/create
DEBU[2134] form data: {"CheckDuplicate":true,"Driver":"calico","EnableIPv6":false,"IPAM":{"Config":[],"Driver":"calico-ipam","Options":{}},"Internal":false,"Labels":{},"Name":"myCaliNet2","Options":{}}
DEBU[2134] Allocating IPv4 pools for network myCaliNet2 (7ef44b18007ad0565f6178a9e2f51e4b60c72feca6500088168e4836193e1d30)
DEBU[2134] releasing IPv4 pools from network myCaliNet2 (7ef44b18007ad0565f6178a9e2f51e4b60c72feca6500088168e4836193e1d30)
ERRO[2134] Handler for POST /v1.24/networks/create returned error: datastore for scope "global" is not initialized
Error response from daemon: datastore for scope "global" is not initialized

Not sure we want to add any docs for this in this state, unless I'm doing something wrong? @tomdee

@gunjan5 That second error is probably because you didn't set a data store for your dockerd

--cluster-store=etcd://a.b.c.d:2379

We need to mark this as a release blocker or kick it out of the v1.0.0 release.  @tomdee @gunjan5

calicoctl node run command always mounts the default /var/run/docker.sock right now

This is just a calicoctl issue, not a calico/node or libnetwork issue so shouldn't block this as far as I can tell.

@caseydavenport I will create another issue in calico-containers for the calicoctl issue, it shouldn't block this, and I'm retesting the other one and if that works we can close this

ok so after passing --cluster-store=etcd://a.b.c.d:2379 it seems to work, I'm able to create networks and able to ping across the hosts. I have created an issue for calicoctl node run mounting /var/run/docker.sock https://github.com/projectcalico/calico-containers/issues/1388
Closing this issue since libnetwork-plugin works as expected

Reopening as I don't think you've solved this.
As as user, if I'm using the libnetwork-plugin through calico/node started with calicoctl, I can't choose the DOCKER_HOST still, or am I missing something?
I see you've raised projectcalico/calico-containers#1388 but that doesn't solve my concern above.

@tomdee I've created an issue in calico-containers for this (linked #1404). Since it doesn't require a change in libnetwork-plugin I will close this issue and carry on in calico-containers

source: gharchive/issue

authors: caseydavenport gunjan5 tomdee

repo: projectcalico/libnetwork-plugin

license_source: bigquery


text:
Missing assets for httpx in pdtm API

pdtm version:

v0.0.4
Current Behavior:

Expected Behavior:

httpx should be installed.
Steps To Reproduce:

Run pdtm -i httpx

Anything else:

Assets for httpx are missing in pdtm API but are present in httpx's repository.

@ggranjus thank you, it was cache issue, should be fixed now.

authors: ehsandeep ggranjus

repo: projectdiscovery/pdtm

license: MIT


text:
Move a FileSet to a different work - Wire Frame

 Issue by cam156
Thursday Mar 26, 2015 at 18:46 GMT
Originally opened as https://github.com/projecthydra/sufia/issues/1000

Create a wireframe and flow for moving a FileSet from one work to the other
This could be similar to moving files between collections.

 Comment by mtribone
Monday Dec 14, 2015 at 20:00 GMT

@mjgiarlo I'd say parking lot item, perhaps. We've committed to upload and editing, dashboard, and creating collections. It could be a part of editing, but we haven't broken them down just yet. Also might be an opportunity for an individual assignment to get code moving. I don't see it in the sprint wireframes.

 Comment by mjgiarlo
Monday Dec 14, 2015 at 19:16 GMT

@mtribone Would you say this is in scope for the Sufia UI WG, or more a parking lot item?

 Comment by mjgiarlo
Monday Dec 14, 2015 at 20:30 GMT

OK, I'm moving this to the 7.1.0 milestone instead of 7.0.0 to reflect that this is parking lotted. Thanks, @mtribone!

 Comment by mjgiarlo
Friday Jun 10, 2016 at 16:47 GMT

Refs #1074.

repo: projecthydra-labs/hyrax


text:
Orders/1062 multiple products order

Closes #1062
Should wait until #1063 is also closed before merging.

I realized there's a bit of a logic error in the total_cost method. It has to do with how ActiveRecord is going to fetch the data given an array of ids. Basically the array with duplicates will have those duplicate values tossed out, so if an order had any duplicate product_ids you're going to be short on the products count if you compared the lengths of it and the original params length.
total_cost is going to need to be updated to handle the situation where duplicate products might exist in an order.

Looks good, let's merge this with the UX work into a new branch and test there.

authors: AnkyrinRepeat stackus

repo: projectjellyfish/api


text:
swagger download should handle ms.portal.azure.com

Get a CORS issue when downloading swagger from ms.portal.azure.com

Fixed in fusion portal
https://github.com/projectkudu/AzureFunctionsPortal/commit/21d2dfba09e5fe26947464cedc4d77c3654d3ea1

authors: christopheranderson soninaren

repo: projectkudu/AzureFunctionsPortal


text:
Infra: add gradle, main branch CI, renovate

Configured CI on main branch push and regular pull_request.
This should help running CI for #2

@XN137: Can you please take a look at it again?

repo: projectnessie/iceberg-catalog-migrator


text:
chore: release 1.3.0

:robot: I have created a release *beep* *boop*
1.3.0 (2021-06-30)
Features

Accept .jsx and .tsx extensions (976b72b)
Add custom Preact JSX support behind flag (9797450)
Add support for http/https imports (8bc5e04)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/projectsophon/df-plugin-dev-server/releases/tag/v1.3.0 :sunflower:

repo: projectsophon/df-plugin-dev-server


text:
Update dependency quay.io/enix/x509-certificate-exporter to v2.13.0

This PR contains the following updates:

Package
Update
Change

quay.io/enix/x509-certificate-exporter
minor
2.12.1 -> 2.13.0

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

This one looks safe to merge according to https://github.com/enix/x509-certificate-exporter/releases/tag/v2.13.0

authors: simu vshn-renovate

repo: projectsyn/component-cert-exporter


text:
Handle SCALE=1 in Framebuffer

The framebuffer and linebuffer modules take a SCALE parameter. Scale is used to enlarge a framebuffer to match a display size, for example a 320x180 framebuffer is scaled up by 4x to fill a 720p display. This issue occurs when the scale is set to 1: i.e. no scaling up.
The scale parameter is used to size vectors with $clog2, but the current implementation isn't correct when the scale is 1.
Consider this example from linebuffer.sv:
parameter SCALE=1     // scaling factor (>=1)
logic [$clog2(SCALE)-1:0] cnt_v, cnt_h;  // scale counters

$clog2(1) returns 0, so our vectors are set to:
logic [-1:0] cnt_v, cnt_h;

This works in Yosys and Vivado, but Verilator rightly complains about this.
Once we decide how to fix examples in /lib we can apply the same fix to the sprite modules in FPGA Graphics (which aren't currently in the library). Create a separate ticket for this.
GitHub search: Use of SCALE in /lib

This has been resolved by #108.
Not all designs use the new framebuffer yet, but they will shortly.

repo: projf/projf-explore


text:
changed talk presenters for last talk day01

added speaker Ales Koprivnikar to last talk on day01 - as requested by rob via email @RichiH @juliusv - please review and deploy

:+1:

authors: bastischubert juliusv

repo: promcon/website


text:
geth accept error

I1105 16:25:30.644935 server.go:1934] http: Accept error: accept tcp 127.0.0.1:8545: accept4: too many open files; retrying in 1s
I1105 16:25:31.660103 server.go:1934] http: Accept error: accept tcp 127.0.0.1:8545: accept4: too many open files; retrying in 1s
I1105 16:25:32.694325 server.go:1934] http: Accept error: accept tcp 127.0.0.1:8545: accept4: too many open files; retrying in 1s
I1105 16:25:33.697415 server.go:1934] http: Accept error: accept tcp 127.0.0.1:8545: accept4: too many open files; retrying in 1s
I1105 16:25:34.708284 server.go:1934] http: Accept error: accept tcp 127.0.0.1:8545: accept4: too many open files; retrying in 1s
I1105 16:25:35.766081 server.go:1934] http: Accept error: accept tcp 127.0.0.1:8545: accept4: too many open files; retrying in 1s
I1105 16:25:36.767862 server.go:1934] http: Accept error: accept tcp 127.0.0.1:8545: accept4: too many open files; retrying in 1s
I1105 16:25:37.779899 server.go:1934] http: Accept error: accept tcp 127.0.0.1:8545: accept4: too many open files; retrying in 1s
I1105 16:25:38.819855 server.go:1934] http: Accept error: accept tcp 127.0.0.1:8545: accept4: too many open files; retrying in 1s

It might be related to the ballot consumer not properly removing filters.
It would be better to create a separate new web3 instance in each relevant ballot step and to reset() it when the step is done.

close in favor of #95

license: mit


text:
Update for prometheus-community

Update the codebase for the new prometheus-comunity location.

Replace Travis with CircleCI.
Update to standard Prometheus Makefile.common
Update all Go references.
Drop vendor/ dir
Update vendoring to use Go modules.

Signed-off-by: SuperQ superq@gmail.com

There's more work to do, but this gets us mostly done for setting up builds and releases.


text:
Bug: sent Opsgenie responder not correct

What did you do?
Send alerts to Opsgenie with responders configured like this:
- name: opsgenie
  opsgenie_configs:
  - send_resolved: true
    http_config: {}
    api_key: <secret>
    api_url: https://api.opsgenie.com/
    message: A new alert from Alert Manager!!! Something went wrong
    description: '{{ template "opsgenie.default.description" . }}'
    source: '{{ template "opsgenie.default.source" . }}'
    responders:
    - name: On Call Primary
      type: schedule
    - name: Alert Secondary if no Primary ACK for 5 minutes
      type: escalation
    - name: Alert Whole Team if no ACK for 10 minutes
      type: escalation
templates:
- /etc/alertmanager/default.tmpl

What did you expect to see?
I expect the responder fields alert detail on Opsgenie dashboard should contain all responders On Call Primary, Alert Secondary if no Primary ACK for 5 minutes...
What did you see instead? Under which circumstances?
I only see the team is the responder when I open the alert detail in Opsgenie dashboard:

I should see something like this (test alert created on opsgenie dashboard):

Environment

System information:
insert output of uname -srm here

uname -srm
Linux 4.14.146-120.181.amzn2.x86_64 x86_64

Alertmanager version:
insert output of alertmanager --version here

alertmanager --version
alertmanager, version 0.19.0 (branch: HEAD, revision: 7aa5d19fea3f58e3d27dbdeb0f2883037168914a)
  build user:       root@587d0268f963
  build date:       20190903-15:01:40
  go version:       go1.12.8

Alertmanager configuration file:

global:
  resolve_timeout: 1h
  http_config: {}
  smtp_hello: localhost
  smtp_require_tls: true
  pagerduty_url: https://events.pagerduty.com/v2/enqueue
  hipchat_api_url: https://api.hipchat.com/
  opsgenie_api_url: https://api.opsgenie.com/
  opsgenie_api_key: <secret>
  wechat_api_url: https://qyapi.weixin.qq.com/cgi-bin/
  victorops_api_url: https://alert.victorops.com/integrations/generic/20131114/alert/
route:
  receiver: notifs-serious-alerts
  group_by:
  - alertname
  - severity
  - environment
  routes:
  - receiver: opsgenie
    match:
      oncall: "true"
  group_wait: 30s
  group_interval: 5m
  repeat_interval: 6h
inhibit_rules:
- source_match:
    severity: critical
  target_match:
    severity: warning
  equal:
  - environment
receivers:
- name: notifs-serious-alerts
  slack_configs:
  - send_resolved: true
    http_config: {}
    api_url: <secret>
    channel: '#notifs-serious-alerts'
    username: '{{ template "slack.default.username" . }}'
    color: '{{ template "slack.serious_alerts.color" . }}'
    title: '{{ template "slack.serious_alerts.title" . }}'
    title_link: '{{ template "slack.serious_alerts.title_link" . }}'
    pretext: '{{ template "slack.default.pretext" . }}'
    text: '{{ template "slack.serious_alerts.text" . }}'
    footer: '{{ template "slack.default.footer" . }}'
    fallback: '{{ template "slack.default.fallback" . }}'
    callback_id: '{{ template "slack.default.callbackid" . }}'
    icon_emoji: '{{ template "slack.default.iconemoji" . }}'
    icon_url: '{{ template "slack.default.iconurl" . }}'
- name: opsgenie
  opsgenie_configs:
  - send_resolved: true
    http_config: {}
    api_key: <secret>
    api_url: https://api.opsgenie.com/
    message: A new alert from Alert Manager!!! Something went wrong
    description: '{{ template "opsgenie.default.description" . }}'
    source: '{{ template "opsgenie.default.source" . }}'
    responders:
    - name: On Call Primary
      type: schedule
    - name: Alert Secondary if no Primary ACK for 5 minutes
      type: escalation
    - name: Alert Whole Team if no ACK for 10 minutes
      type: escalation
templates:
- /etc/alertmanager/default.tmpl

Logs:
no logs related to this bug

level=debug ts=2019-12-05T15:14:17.659Z caller=cluster.go:306 component=cluster memberlist="2019/12/05 15:14:17 [DEBUG] memberlist: Failed to join 172.17.81.3: dial tcp 172.17.81.3:9094: connect: no route to host\n"

It seems more like an OpsGenie question. From https://docs.opsgenie.com/docs/alert-api#section-create-alert:

Teams, users, escalations and schedules that the alert will be routed to send notifications. type field is mandatory for each item, where possible values are team, user, escalation and schedule. If the API Key belongs to a team integration, this field will be overwritten with the owner team. Either id or name of each responder should be provided.You can refer below for example values.

Does your API key belong to a team integration?

thanks. it does belong to team integration. I will try a different API key to see if this still a bug

thanks for helping me out. I couldn't find how to generate a non-team integration  API key. but this is not a bug.

Are you on a free or essentials plan? If yes, the limitation is documented

For Free and Essentials plans, you can only add the integrations from the Team Dashboards, please use the alternative instructions given below to add this integration.

@simonpasquier thanks for very helpful information. I'm on the Essentials plan. so what can we put as a responder? I tried a single responder (escalation/team/schedule) but all of them were not working (didn't create an alert on Opsgenie). Only when I try multiple responders at the same time, it works.

I don't know, it would be a question for the OpsGenie support.

authors: sandangel simonpasquier

repo: prometheus/alertmanager


text:
Alert store not calling callback when an alert is deleted

The garbage collection process within the store is in charge of
determining if an alert is resolved, deleting it, and then communicating
this back to the callback set.
When an alert was explicitly deleted, these were not being communicated
back to the callback and caused the metric to report incorrect results.
Fixes #2619

The metrics in alertmanager are for pure operational reasons IIRC and are not meant to reflect the UI or the state of alertmanager. "Fixing" them might break users. (Note: I could be wrong)

My point is that if you want accurate metrics it might be better to implement a new collector.

authors: gotjosh roidelapluie


text:
Adding a custom path to the http server for health checks

Hi guys, I am using the library to implement a grpc service running on mesos (via aurora) and using the prometheus port to handle health checks as well as exporting metrics. I wonder therefore if there is an easy way to add a new path to the http server used within. In other words, I want port:/internal/status or similar to return empty HTTP:OK without any metrics.
Thanks and cheers,
Simon

The included http server is just to get you going quickly. You're free to implement your own, and in general I'd expect most users to hook in the handler to your existing http server rather than using start_http_server.

Great, thanks!
I'll try something like the following:
class HealthRequestHandler(BaseHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200)
        self.send_header('Content-type', 'text/html')
        self.end_headers()
        if self.path == "/internal/status":
            self.wfile.write(bytes("{\"status\":true}", "utf8"))
        else:
            self.wfile.write(generate_latest(core.REGISTRY))
        return

    def log_message(self, format, *args):
        return

def start_health_server(port, addr=''):
    class HealthRequestServer(threading.Thread):
        def run(self):
            httpd = HTTPServer((addr, port), HealthRequestHandler)
            httpd.serve_forever()
    t = HealthRequestServer()
    t.daemon = True
    t.start()

Would be handy indeed, for quick and easy metrics servers not having to use /metrics as their health check.

authors: analytically brian-brazil s-j


text:
wip: consul: Initial implemenation of catalog filter support

Adds support for the filter argument to ListCatalog API calls to Consul during service discovery.
Consul recently added support to List Catalog API for the filter parameter.  This is scheduled to go out in Consul 1.14, so I wanted to propose the change ASAP. The change is backwards compatible with existing Consul versions as they will ignore the new field.
This address a gap in which Prometheus must query (and set watches for) large swaths of a catalog to make later drop decisions during the relabel phase based on metadata/tag/node information. By allowing the operator to select services of interest during the ListCatalog step, we can reduce the number of RPC calls being made to Consul. This change helps mitigate Consul RPC load for large catalogs.
TODO:

[ ] Update test to include new filter argument

See https://github.com/hashicorp/consul/issues/9422

Looking at this during the bug scrub again.
Since there was no follow-up, we'll close this now, but we would love further work on this, may it be by @dekimsey or anyone else.

My apologies, I missed the initial reminder ping a few months ago after a recent job switch. IIRC the only blocker was to add testing. I'll set aside some time to work on this. I would like to see it get merged.
@roidelapluie I marked it as deprecated because the upstream Consul project indicated that field as deprecated. I'll simply comment the field is deprecated by the upstream instead as recommended.
@beorn7 Sorry for dropping the ball on this. It was important to me at $lastjob because we couldn't scan our large consul catalog. But I was able to work around it with some very kludgy terraform generating Prometheus config which reduced the immediate pressure.
Thank you for the reminders!

Thank you for doing that!

repo: prometheus/prometheus


text:
PromQL explain view: Support set operators

FYI @roidelapluie not for your review, but maybe interesting :)


text:
Fix variable 'notifier' collides with imported package name.

Fix variable 'notifier' collides with imported package name 'github.com/prometheus/prometheus/notifier', changed to 'notifierManager'.

Thanks!

authors: aixeshunter brian-brazil


text:
expose kubernetes node metrics on discovered kubernetes pods

We use kubernetes discovery with role: pod as our primary way to discover kubernetes services. Unfortunately, pod labels / annotations do not include properties of the node like instance type or region.
This change adds node labels to pods, so that discovered pods include information about the node that runs them.

Because our targets are pods, we found it non-trivial to dynamically label them with even the pod name.
However, I agree that it'd be really bad UX to break existing use cases, so I've added a configuration option to the kube sd config to enable this functionality.

I'm not too sure about this one. My feeling is that this is a case of "to make the easy things easy, and the hard things possible", and extending service discovery with this feature introduces inconsistencies such as what does podNodeLabels do when enabled for node, ingress or service roles?

I'm not quite sure I understand the second part; but knowing about the runtime environment of a workload is very important for monitoring, since otherwise we might totally miss issues that are correlated to availability zone, for example.
I think that should be easy, not merely possible; and needing another scraped third party cluster component plus relatively complex join queries everywhere is not easy.
On the second point, the flag is only valid for pods, and is rejected otherwise:
 		if c.Role != "pod" && c.PodNodeLabels {
				return fmt.Errorf("pod_node_labels can only be used with role=pod")
			}

I don't know, I don't think joining is hard, and node metadata may change over time, while the target is actually static. I think the target should only have target identifying labels, everything is additional metadata that should be added at query time.

While I understand the reasoning behind your opinion, it does not seem consistent with the Prometheus documentation on labels:

Use labels to differentiate the characteristics of the thing that is being measured:

Identifying properties of the location where a workload is being run seem like important differentiating characteristics.
Furthermore, the Node a Pod is running on never changes, so a given named pod will always run on the same node. The node's AZ never changes, so a given node will always have the same AZ. Which is to say, many of the node labels are in fact constant. Not all, of course, but that's true also of pods, or prometheus targets in general.
In fact, for the use cases I have in mind, this won't even result in an increase in cardinality.

@brancz can this be closed?

authors: brancz codesome pdbogen


text:
Expose seriesToChunkEncoder

Signed-off-by: yeya24 yb532204897@gmail.com

seriesToChunkEncoder is very handy to encode samples to XOR chunks with 120 samples limit. It would be very useful to expose it publicly for reuse.
Please let me know if this pr makes sense. I am also thinking about making seriesToChunkEncoderSplit configurable as a parameter. Now it is a const value 120 so we can only create maximum 120 samples chunks.  But sometimes we want to create a very large chunk for testing purposes.

cc Cortex maintainers as this is something you might want to use too @pracucci @pstibrany

cc Cortex maintainers as this is something you might want to use too @pracucci @pstibrany

Thanks Bartek. Cortex itself doesn't use this directly anywhere, as far as I know, but our blocks conversion tool may benefit from using this.

authors: bwplotka pstibrany yeya24


text:
Add exit code constants in promtool

This PR adds constants for the exit codes in promtool for readability.
It was not clear to me what exit code 3 was suppose to indicate in promtool main.go. Back in this PR, it is documented to be "one or more lint issues": https://github.com/prometheus/prometheus/pull/2605#discussion_r111264047
Signed-off-by: jessicagreben jessicagrebens@gmail.com

@LeviHarrison Thanks for catching the rulesUnitTest and checkSD file, I will add those.  I don't think it needs to be a type over int. I would rather leave as is if thats ok with you.

Sounds good

@darshanime Do you know what exit code 2 is suppose to mean for in the promtool/sd.go file (code)?

I think exit code 2 fits there because cfg.NewDiscoverer() is validating the discovery config.
Overall though, I'm not sure if it makes sense to have the exit code 2 anywhere because it's not uniform across Promtool commands. Either we use it (when appropriate) in all commands or none.

@LeviHarrison I agree. I will use exit 2 where appropriate but I will change the other uses of it to exit 1.

It seems that configErrExitCode is currently defined as when there's an error with config.LoadFile(), which is only executed in that place in sd.go and in main.go:
https://github.com/prometheus/prometheus/blob/59f7ef06d0002e818c73642c963d49f3ccf3d70e/cmd/promtool/main.go#L340-L343
In that instance though, an exit code isn't directly returned, so it ends up being the normal failureExitCode. In light of this and just general ambiguity around the code (why can't it just be failureExitCode?), I think we should just drop it altogether.

@LeviHarrison sounds good. I will make that change.

By the way, @roidelapluie will changing the exit codes for the check service-discovery command be a problem for our stability guarantees? It's made a release already. I think exit codes are a relatively minor change, but I thought I'd check with you anyway.

In this case this is more a bugfix than a change.

authors: JessicaGreben LeviHarrison roidelapluie


text:
Breakdown generic writeOffsetTable

This is a broken down piece of https://github.com/prometheus/tsdb/pull/627
With this, I am avoiding allocating slice headers for postings by having the name and value as separate fields. This saves quite some allocs.
[Don't merge until Prometheus 2.11 is out]

This saves quite some allocs.

Any sense of how much? 10%? 20%?

I don't have numbers for individual optimizations. All combined numbers is in this comment https://github.com/prometheus/tsdb/pull/627#issuecomment-503453181. I will try to get number for each optimizations.

So the gains are mostly allocs.
benchmark                                                                                old ns/op       new ns/op       delta
BenchmarkCompaction/type=normal,blocks=2,series=1000000,samplesPerSeriesPerBlock=51-8     12824719385     12761476707     -0.49%

benchmark                                                                                old allocs     new allocs     delta
BenchmarkCompaction/type=normal,blocks=2,series=1000000,samplesPerSeriesPerBlock=51-8     15845398       14839951       -6.35%

benchmark                                                                                old bytes      new bytes      delta
BenchmarkCompaction/type=normal,blocks=2,series=1000000,samplesPerSeriesPerBlock=51-8     2074569456     2074402112     -0.01%

I am not sure the minor improvement in allocs is worth this change.

I would still like to have it. Multiple small improvements will add up to a big gain. And the absolute gain from this PR will be bigger in different scenarios (more number of label-values and series than the benchmark).

authors: codesome cstyan

repo: prometheus/tsdb


text:
Replace USB Source with new V4L2 Source - in reflection with new V4L2 Sink.

Replace the old USB Source -- which was improperly named from the beginning -- with a new V4L2 Source that streams from any compatible V4L2 Device, a USB webcam included.
Remove the following USB Source API's:

dsl_source_usb_new
dsl_source_usb_device_location_get
dsl_source_usb_device_location_set

New V4L2 Source API's
/**
 * @brief creates a new, uniquely named V4L2 Source component.
 * @param[in] name unique name for the new Source
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SOURCE_RESULT otherwise.
 */
DslReturnType dsl_source_v4l2_new(const wchar_t* name,
    const wchar_t* device_location);

/**
 * @brief Gets the device location setting for the named USB Source.
 * @param[in] name unique name of the V4L2 Source to query.
 * @param[out] device_location current device location setting.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SOURCE_RESULT otherwise.
 */
DslReturnType dsl_source_v4l2_device_location_get(const wchar_t* name,
    const wchar_t** device_location);

/**
 * @brief Sets the device location setting for the named USB Source. The service
 * will fail if the given device-location is in use unique.
 * @param[in] name unique name of the USB Source to update.
 * @param[in] device_location new device location setting to use.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SOURCE_RESULT otherwise.
 */
DslReturnType dsl_source_v4l2_device_location_set(const wchar_t* name,
    const wchar_t* device_location);

/**
 * @brief Sets the dimensions for the named V4L2 Source to use.
 * Set width and height to 0 to use the default device dimensions.
 * @param[in] name unique name of the source to output.
 * @param[in] width frame width for the V4L2 Device in pixels.
 * @param[in] height frame height for the V4L2 Device in pixels.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SOURCE_RESULT otherwise.
 */
DslReturnType dsl_source_v4l2_dimensions_set(const wchar_t* name,
    uint width, uint height);

/**
 * @brief Sets the frame-rate as a fraction for the named V4L2 Source.
 * Set fps_n and fps_d to 0 to use the default device frame-rate.
 * @param[in] name unique name of the source to query
 * @param[in] fps_n frames per second numerator
 * @param[in] fps_d frames per second denominator
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SOURCE_RESULT otherwise.
 */
DslReturnType dsl_source_v4l2_frame_rate_set(const wchar_t* name,
    uint fps_n, uint fps_d);

/**
 * @brief Gets the device name setting for the named V4L2 Source.
 * @param[in] name unique name of the V4L2 Source to query.
 * @param[out] device_name current device name setting.
 * Default = "". Updated after negotiation with the V4L2 Device.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SINK_RESULT otherwise.
 */
DslReturnType dsl_source_v4l2_device_name_get(const wchar_t* name,
    const wchar_t** device_name);

/**
 * @brief Gets the device file-descriptor setting for the named V4L2 Source.
 * @param[in] name unique name of the V4L2 Source to query.
 * @param[out] device_fd current device file-descriptor setting.
 * Default = -1. Updated after negotiation with the V4L2 Device.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SINK_RESULT otherwise.
 */
DslReturnType dsl_source_v4l2_device_fd_get(const wchar_t* name,
    int* device_fd);

/**
 * @brief Gets the device flags setting for the named V4L2 Source.
 * @param[in] name unique name of the V4L2 Source to query.
 * @param[out] device_flags device flags setting. One or more of the
 * DSL_V4L2_DEVICE_TYPE flags. Default = DSL_V4L2_DEVICE_TYPE_NONE. The
 * value is updated at runtime after negotiation with the V4L2 device.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SINK_RESULT otherwise.
 */
DslReturnType dsl_source_v4l2_device_flags_get(const wchar_t* name,
    uint* device_flags);

/**
 * @brief Gets the current picture brightness, contrast, and saturation settings
 * for the named V4L2 Source.
 * @param[in] name unique name of the V4L2 Source to query.
 * @param[out] brightness current brightness level, or more precisely, the
 * black level. Default = 0.
 * @param[out] contrast current picture color contrast setting or luma gain.
 * Default = 0.
 * @param[out] saturation current picture color saturation setting or chroma gain.
 * Default = 0.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SINK_RESULT otherwise
 */
DslReturnType dsl_source_v4l2_picture_settings_get(const wchar_t* name,
    int* brightness, int* contrast, int* saturation);

/**
 * @brief Gets the picture brightness, contrast, and saturation settings
 * for the named V4L2 Source to use.
 * @param[in] name unique name of the V4L2 Source to update.
 * @param[in] brightness new brightness level, or more precisely, the
 * black level. Default = 0.
 * @param[in] contrast new picture contrast setting or luma gain.
 * Default = 0.
 * @param[in] saturation new picture color saturation setting or chroma gain.
 * Default = 0.
 * @return DSL_RESULT_SUCCESS on success, DSL_RESULT_SINK_RESULT otherwise
 */
DslReturnType dsl_source_v4l2_picture_settings_set(const wchar_t* name,
    int brightness, int contrast, int saturation);

Merged into the v0.28.alpha dev branch


text:
Why one repository for each major version?

I mean, just tagging the versions wasn't enough? 🤔

Because its this way more convenient to us.

All right, it's a very cool lib btw. Propel3 looks like illuminate/database + doctrine/doctrine2 perfect union, can't wait for the stable release and find other libs using it.

authors: marcj odahcam


text:
Vue improvements

I had little time to take a look at the Vue examples and made some improvements.
I tried to improve the onSelect of some AutocompleteItem component :
:onSelect="handleSelectHeading(1)"
// or
@select="handleSelectHeading(1)"

But I got a typescript issue :
Type '($event: Event) => void' is not assignable to type 'VoidFunction & ((payload: Event) => void)'.

I tried to improve the onSelect of some AutocompleteItem component :
:onSelect="handleSelectHeading(1)"
// or
@select="handleSelectHeading(1)"

But I got a typescript issue :

Because AutocompleteItem has onSelect as a prop, not an emit at this moment. This component is auto generated, and it would need to change the script to make it an emit.

authors: ManUtopiK ocavue

repo: prosekit/prosekit


text:
🛑 nftschool.dev is down

In b7efa12, nftschool.dev (https://nftschool.dev) was down:

HTTP code: 0
Response time: 0 ms

Resolved: nftschool.dev is back up in 16ff320 after 34 minutes.

repo: protocol/upptime-pln


text:
What Url do I goto to get a auth token and how is it used ?

Good sample but I can't figure out what I call to get a token that I can then .. I guess put in the header using fiddler to call the protected API .  Help  ?

The template uses IdentityServer4 and the Token endpoint is available via IDS Discovery Endpoint. The discovery endpoint is available via /.well-known/openid-configuration relative to the base address of your AuthServer. For example, if you perform a GET request to the following endpoint:
https://<YOUR-AUTHSERVER-DOMAIN>.well-known/openid-configuration
you will then be presented with the following JSON schema below:
{
    "issuer": "https://<YOUR-AUTHSERVER-DOMAIN>",
    "jwks_uri": "https://<YOUR-AUTHSERVER-DOMAIN>/.well-known/openid-configuration/jwks",
    "authorization_endpoint": "https://<YOUR-AUTHSERVER-DOMAIN>/connect/authorize",
    "token_endpoint": "https://<YOUR-AUTHSERVER-DOMAIN>/connect/token",
    "userinfo_endpoint": "https://<YOUR-AUTHSERVER-DOMAIN>/connect/userinfo",
    "end_session_endpoint": "https://<YOUR-AUTHSERVER-DOMAIN>/connect/endsession",
    "check_session_iframe": "https://<YOUR-AUTHSERVER-DOMAIN>/connect/checksession",
    "revocation_endpoint": "https://<YOUR-AUTHSERVER-DOMAIN>/connect/revocation",
    "introspection_endpoint": "https://<YOUR-AUTHSERVER-DOMAIN>/connect/introspect",
    "device_authorization_endpoint": "https://<YOUR-AUTHSERVER-DOMAIN>/connect/deviceauthorization",
    "frontchannel_logout_supported": true,
    "frontchannel_logout_session_supported": true,
    "backchannel_logout_supported": true,
    "backchannel_logout_session_supported": true,
    "scopes_supported": [
        "SampleApi",
        "offline_access"
    ],
    "claims_supported": [],
    "grant_types_supported": [
        "authorization_code",
        "client_credentials",
        "refresh_token",
        "implicit",
        "urn:ietf:params:oauth:grant-type:device_code"
    ],
    "response_types_supported": [
        "code",
        "token",
        "id_token",
        "id_token token",
        "code id_token",
        "code token",
        "code id_token token"
    ],
    "response_modes_supported": [
        "form_post",
        "query",
        "fragment"
    ],
    "token_endpoint_auth_methods_supported": [
        "client_secret_basic",
        "client_secret_post"
    ],
    "id_token_signing_alg_values_supported": [
        "RS256"
    ],
    "subject_types_supported": [
        "public"
    ],
    "code_challenge_methods_supported": [
        "plain",
        "S256"
    ],
    "request_parameter_supported": true
}

You can that the Token Endpoint can be accessed at: https://<YOUR-AUTHSERVER-DOMAIN>/connect/token
The template automatically handles requesting a token for you. At line 61 of Infrastructure/Installers/RegisterApiResources.cs class, You can find that the Discover Endpoint is injected as a Singleton. This means that everytime you instantiate an HttpClient object, the Discovery endpoint is binded automatically, allowing you to call the token endpoint directly without configuring them all over again.
You can see how it is being configured at Services/AuthServerConnect.cs class. And you can see how the token is automatically requested and set a Bearer Authorization header when you call a protected resource at Infrastructure/Handlers/ProtectedApiBearerTokenHandler.cs class.
Requesting a JWT Token Sample
To request a token manually, you can do something like this in Postman:
curl -X POST
   https://<YOUR-AUTHSERVER-DOMAIN>/connect/token
  -H 'Content-Type: application/x-www-form-urlencoded'
  -d 'client_id=<SUPPLY_CLIENTID_HERE>&client_secret=<SUPPLY_SECRET_HERE>&grant_type=client_credentials'

Note that the client_id, client_secret and scope MUST be registered in your AuthServer.
When the credentials you supplied for requesting a JWT token is valid, it should return something lke this:
{
  "access_token": "<JWT TOKEN STRING>",
  "expires_in": 3600,
  "token_type": "Bearer",
  "scope": "SampleApi"
}

Accessing Protected APIs Sample
curl -X GET \
  https:\\localhost:44321/api/v1/sample \
  -H 'Authorization: Bearer <JWT TOKEN STRING> \
  -H 'Content-Type: application/json' \
  -H 'Host: https://localhost:44321' \

That's it! If you are new to IdentityServer4, you should checkout the official docs for more information: http://docs.identityserver.io/en/latest/

Dumb question. What is   ?   That's some totally different server ?   I assumed the app was all self contained

It's not dumb at all! It's perfectly understandable. We ask questions so we can learn :) Yes, the AuthServer should be in a separate server to decouple it from your API apps.
Can I close this issue now?

So this authserve is a totally separate project?  I am used to the classic forms authentication and tokens where everything is in one project so this has me confused. So I download this thing called identity server first and then run your code ?

The template assumed that your AuthServer is in separate project because it is designed for microservice approach. You can still integrate AuthServer and combine it with your UI and APIs as you like. You just need to configure AuthServer yourself. Here's a great article explaining how you can setup IDS4 with ASP.NET Core: https://www.scottbrady91.com/Identity-Server/Getting-Started-with-IdentityServer-4

Ok. I am totally unfamiliar with that. So Ill see if I can set that up.

Cool! To help you better understand more, you can think of this template as ApiResource for your IDS4 AuthServer.

repo: proudmonkey/ApiBoilerPlate


text:
Upgrade ibc to v5 - Fixed

Description
I accidentally broke PR 1022, and it was closed. This is a recreation of it.
This upgrades IBCv2 -> IBCv5 following the currently published migration steps.
IBCv2 -> IBCv3: This includes ICS-27. I updated Provenance to use interchain accounts (ICA), and to initialize only the host portion of it. I do not add controller support because we have not implemented an IBC auth module to control an ICA on another chain.
IBCv3 -> IBCv4: We used IBCv2.3 and do not need to include the fix for slash denoms. This was already included in 2.3.
IBCv4 -> IBCv5: This is currently in beta, and migration steps may need to change in the future.
Note: An issue will need to be created to discuss the supported host messages. Another issue will need to be created for controller support.
closes: #1008

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against correct branch (see CONTRIBUTING.md)
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Wrote unit and integration tests
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added relevant godoc comments.
[ ] Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
[ ] Re-reviewed Files changed in the Github PR explorer
[ ] Review Codecov Report in the comment section below once CI passes

Verified that the upgrade handler successfully worked.
3:44PM INF Initializing ICA
3:44PM INF created new capability module=ibc name=ports/icahost
3:44PM INF port binded module=x/ibc/port port=icahost
3:44PM INF claimed capability capability=2 module=icahost name=ports/icahost
3:44PM INF Finished initializing ICA
3:44PM INF Starting migrations. This may take a significant amount of time to complete. Do not restart node.
3:44PM INF migrating module bank from version 3 to version 4
3:44PM INF migrating module authz from version 1 to version 2
3:44PM INF migrating module feegrant from version 1 to version 2
3:44PM INF migrating module gov from version 2 to version 3
3:44PM INF migrating module staking from version 2 to version 3
3:44PM INF migrating module transfer from version 1 to version 2
3:44PM INF migrating module upgrade from version 1 to version 2
3:44PM INF adding a new module: reward
3:44PM INF migrating module auth from version 2 to version 3
3:44PM INF Successfully upgraded to: ochre-rc1 with version map: map[attribute:2 auth:3 authz:2 bank:4 capability:1 crisis:1 distribution:2 evidence:1 feegrant:2 genutil:1 gov:3 ibc:2 interchainaccounts:1 marker:2 metadata:3 mint:1 msgfees:1 name:2 params:1 reward:1 slashing:2 staking:3 transfer:2 upgrade:2 vesting:1 wasm:1]

Also verified that the module was setup for the ica host.
[taztingo/1008-upgrade-ibc-to-v5][~/work/provenance-relayer]$ ./build/provenanced q interchain-accounts host params
allow_messages:
- '*'
host_enabled: true

Don't merge this until #1016 is merged.

There is a potential security issue with ICA, and we may want to hold off on this until they have a fix. They are planning to add the fix into release v5.0.0.

authors: SpicyLemon Taztingo

repo: provenance-io/provenance


text:
arrayAgg and UnexpectedNull

I'm new to esqueleto (and pretty new to Yesod/Persistent) so I apologize if I'm missing something obvious :) I am getting the following error, and I think I understand why, but I'm not sure how to fix it (from yesod devel's log:
column number 8 is out of range 0..-1
column number 8 is out of range 0..-1
16/Sep/2015:12:05:59 -0700 [Debug#SQL] SELECT "client"."id", "client"."name", "client"."email", "client"."partner_id", "client"."tier", "client"."notes", "client"."created_at", "client"."updated_at", array_agg("consultant"."id")
FROM "client" LEFT OUTER JOIN "plan" ON "plan"."client_id" = "client"."id" LEFT OUTER JOIN "consultant" ON "consultant"."id" = "plan"."consultant_id"
GROUP BY "client"."id"
; []
16/Sep/2015:12:05:59 -0700 [Error#yesod-core] UnexpectedNull {errSQLType = "_int4", errSQLTableOid = Nothing, errSQLField = "", errHaskellType = "Int64", errMessage = ""} @(yesod_2gNoBIsCQyuFa0Zr5VzFu6:Yesod.Core.Class.Yesod ./Yesod/Core/Class/Yesod.hs:628:5)

My query looks like:
runDB $ do
    select $ from $ \(client `LeftOuterJoin` plan `LeftOuterJoin` consultant) -> do
    on (consultant ^. ConsultantId ==. plan ^. PlanConsultantId)
    on (plan ^. PlanClientId ==. client ^. ClientId)
    groupBy (client ^. ClientId)
    return (client, arrayAgg (consultant ^. ConsultantId))

The schema is essentially that Clients have many Consultants through Plans, and I am trying to return an array of ConsultantIds for each Client. Since not all Clients have Plans at any given time, it is the case that the consultant ids array may be {NULL}. I have verified that the generated SQL looks and works like the SQL I would write by hand, so the marshaling back into haskell types is what is suspect.
And as I understand it, this is probably where the error is coming from: Persistent is expecting a list of numbers to marshal, like {1,2,3}, but doesn't know what to do with an element of NULL. The desired behavior is to have it throw away the null, so that {NULL} becomes [], but I'm not sure how to do this. Is it possible?
Thank you for this great library, btw. I have been consistently surprised by how intuitive it has been.

I think that today is your lucky day, as this bug may have already been fixed!  Can you try using persistent-postgresql-2.2.1?

Wow, yes. I've spent longer in the checkout line at a grocery store than I did waiting for this fix. Awesome :)
For anyone else reading this, the only change I had to make to my code above was lifting my arrayAgg projection into Maybe with just, so:
runDB $ do
    select $ from $ \(client `LeftOuterJoin` plan `LeftOuterJoin` consultant) -> do
    on (consultant ^. ConsultantId ==. plan ^. PlanConsultantId)
    on (plan ^. PlanClientId ==. client ^. ClientId)
    groupBy (client ^. ClientId)
    return (client, arrayAgg (just $ consultant ^. ConsultantId)) -- <--- note just

Otherwise you will get PersistMarshalError "int64 Expected Integer, received: PersistNull", but this makes perfect sense, of course.
Cheers @meteficha!

authors: meteficha mohanzhang

repo: prowdsponsor/esqueleto


text:
CM-286 Informacion de enfermedad no es populada durante busquedas de …

…bovinos

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-bovine/61/

Refer to this link for build results (access rights to CI server needed):
http://utils.brazilsouth.cloudapp.azure.com:8080/job/ci/job/continuous-integration-bovine/62/

authors: jenkins-cema merlindk

repo: proyecto-cema/bovine-be


text:
Not Downloading all Videos.

In Mongo M202 Oct 2015 Course
Video for following topics  are not getting downloaded.

Reference numbers for disaster recovery & Quiz
Downtime tolerance matrix & Quiz
Systems with low tolerance for downtime and data loss & Quiz
Can I address downtime and data loss with just 2 nodes? & Quiz
Meeting downtime and data loss requirements
Considering capacity with downtime and data loss addressed

Only 24 videos are downloaded.
Thanks for the gr8 work

Just tested agains M202 and downloaded all available videos in the course without any issues.

Same issue here.  On m101n it is not downloading all videos.  For example it skips the first 2 segments CRUD and the Mongo Shell  and Secrets of the Mongo Shell  and goes straight to Intro to BSON.

@arashpath @RacerEvan55 what OS are you on?

Windows 10
latest version of node
python 3.4.3
I kicked off a download again this morning,  will report back tonight to see if it worked this time.

looks like it is intermittent, and where the code builds the list of youtube videos (not the actual downloading part)
I just tried it with M102 week 2.  First time I ran it, it found 9 videos.  2nd and 3rd times 23 videos.

Yes it is intermediate.
Can be avoided if we login via website and attempt to play some videos before downloading all.
Else it will skip videos from 2nd to 5th.

@arashpath are you referencing M102?

Pushed new version to npm with a slight change to the streams mongo-edu v0.2.22 .
Video lists depend on the responses from the mongodb servers so if there is no response for the particular webpage or webpage response is partial there is nothing to list hence on odd occasions you get different video count.
I run 10x separate tests on OSX, win7 and win8 and have seen this count issue happening once.
BTW what is your broadband speed?

authors: RacerEvan55 arashpath przemyslawpluta

repo: przemyslawpluta/mongo-edu


text:
Compile fails on Linux Mint 21.1

I have deleted my $PS2DEV path before upgrading my toolchain. Did all the steps. Made sure all the dependencies are installed. Fails with fatal: ambiguous argument 'origin/iop-v11.3.0': unknown revision or path not in the working tree.
Here's a snippet below:
Making clean in .
Making clean in doc
Making clean in doc
Making clean in po
Making clean in po
Making clean in doc
Doing clean in libiberty
Doing clean in readline
Doing clean in zlib
Making clean in po
Making clean in readline
rm -f ./so_locations
 rm -f size objdump ar strings ranlib objcopy addr2line readelf elfedit
Making clean in po
make[4]: warning: -j8 forced in submake: resetting jobserver mode.
Making clean in po
 rm -f as-new
make[4]: warning: -j8 forced in submake: resetting jobserver mode.
 rm -f nm-new strip-new cxxfilt bfdtest1 bfdtest2 testsuite/gentestdlls
make[4]: warning: -j8 forced in submake: resetting jobserver mode.
rm -f ./so_locations
Doing clean in libctf
 rm -f ld-new
rm -f ./so_locations
rm -f ./so_locations
fatal: ambiguous argument 'origin/iop-v11.3.0': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
../scripts/002-gcc-stage1.sh: Failed.
../scripts/002-iop.sh: Failed.
../scripts/001-toolchain.sh: Failed.

This doesn't seem to be an issue anymore. Reopen if this is not the case

authors: signer-ink-beast uyjulian


text:
Add multi-type support to set_preference

I'm working on PR 33616 of home assistant. Currently the set_preference function only support boolean strings as the value of setting. This PR fixes the problem so that setting can be other types like integers or dictionaries so that I can hide protocol details from Home Assistant.

yeah, this thing kinda silly, dunno why it received only strings.
anyway, looks good 👍

authors: freekode shenxn

repo: pschmitt/roombapy


text:
Exclude in-press articles from the emails

We also need to document the status of "In Progress" and "In Press" publications and what triggers an OA Email.
Relevant Basecamp conversation:  https://3.basecamp.com/4206247/buckets/15288919/messages/3962719813

Noting that the issue name is a little ambiguous. I think we need to exclude in-press articles from the emails.

The values of the statuses of Publications that are not the above three are: "Unpublished", "E-pub ahead of print", "In press", and "Submitted".  There is only one with a status of "In press" (lowercase p).  We might want to keep this one and just manually change it to "In Press".  The rest are mostly Pure imports.  They also tend to not be non-Journal Articles.

repo: psu-stewardship/researcher-metadata


text:
Save Title in the final result CSV

Not only URL/DOI

This has been done in the commit: https://github.com/ptorija/DOI-Extractor-OEG/commit/4f8431676c1461d2a2ad4307d515deb8069f631f

authors: dgarijo ptorija

repo: ptorija/DOI-Extractor-OEG


text:
Add screenshotbase.com

[x] My submission is formatted according to the guidelines in the contributing guide
[x] My addition is ordered alphabetically
[x] My submission has a useful description
[x] The description does not have more than 100 characters
[x] The description does not end with punctuation
[x] Each table column is padded with one space on either side
[x] I have searched the repository for any relevant issues or pull requests
[x] Any category I am creating has the minimum requirement of 3 items
[x] All changes have been squashed into a single commit

Thank you!

authors: marcelscruz screenshotbase

repo: public-apis-dev/public-apis


text:
Api v3

New Library working along with API v3 requirements.
It includes:

API v3 usage
Click caching
Multiple beacon confirmation (both url and javascript ones)
New visibility tracker to ensure IAB conditions
Usage of WebView UA in all outcoming connections.

Coverage increased (+16.4%) to 16.414% when pulling f5a2ed27347e47fc0fc0aa8ffdf7c248c7942b54 on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

👍

waiting for QA before merging

Coverage increased (+16.4%) to 16.414% when pulling 03a318c841d90e3550590f77659727c27ae40651 on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

 (15) Rewrite iOS library to support API v3 [18]

Coverage increased (+16.4%) to 16.386% when pulling 5c395e34d709c44f0aae1df1198fcafe7d98e652 on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+16.2%) to 16.17% when pulling b31e763cdc432851e63db093a33f28055feffe64 on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+17.9%) to 17.885% when pulling 64c5bfe121707a049a6c26854b3af51f8d6462ab on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+17.8%) to 17.755% when pulling 64c5bfe121707a049a6c26854b3af51f8d6462ab on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+17.8%) to 17.755% when pulling 12bf6978b2f650776a8e25baf98e8ad315ad8d40 on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+17.8%) to 17.755% when pulling 737e42d187c71f2a6295701e189cf3de9607a91b on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+26.7%) to 26.729% when pulling 49427a69b8c4d36533599bb587a4e0ce1752c223 on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+26.7%) to 26.729% when pulling dc4bd99e0bb2d8b98316849b1696a171116284ef on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+26.7%) to 26.729% when pulling dc4bd99e0bb2d8b98316849b1696a171116284ef on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+26.6%) to 26.626% when pulling 1dcb9617a3ddfa7634389b25f99fb3f6cc093dc4 on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Coverage increased (+26.6%) to 26.626% when pulling e038eb6190f866722e16e082600cc2020cf20dbe on api_v3 into 0afbfc1010a9c7fb67aa0b65ea64eb2662314714 on development.

Approved by QA

authors: RagnarR cerberillo coveralls

repo: pubnative/pubnative-ios-library


text:
git clone not working

When I try to use this module, or install it via NPM, it does not seem to work.
it complains with
Error: Cannot find module 'babylon/lib/parser'
when I look into the babylon install, this module does not seem to be available.
This is probably related with https://github.com/babel/babylon/commit/beb8db62646081a88b8db31fe95d4b37aa28d98f that migrates bundling to rollup.

We could submit a pull request to add a parseExpression method to babylon's export.
I think we should also think about how we avoid parsing the expressions multiple times once we move to babel-code-gen.  This probably means attaching parsed expressions to the tokens & AST.

Yeah unfortunately that seems to be the only way to move forward.

@ForbesLindesay I don't understand what you mean by

think we should also think about how we avoid parsing the expressions multiple times once we move to babel-code-gen. This probably means attaching parsed expressions to the tokens & AST.

In my understanding, once an expression is transformed into AST and added to the AST tree in code gen, it is not reparsed. Or do you mean keeping a cache of parsed expressions in case the come up frequently ?

I think he meant the Pug AST, so every Code or InterpolatedCode node will have a Babylon AST attached to it.

For info I created https://github.com/babel/babylon/issues/210 to ask babylon's maintainers if they think this module's internals is the best approach for the most efficient parseExpression

Yes, I meant the pug ast.  We parse the js expressions in the pug lexer to verify that they are valid JavaScript.  It feels a little bit wrong that we then re-parse them to decide if they are constant using constantinople in pug-code-gen and then parse them yet again in pug-code-gen in order to generate the output AST.

Oh I understand. if the pug-lexer already has the AST (or can be modified to have the AST) we should definitely use this :-). I also agree on constantinople.

Created a new PR https://github.com/babel/babylon/pull/213 with a parseExpression method on babylon. @TimothyGu can you confirm it would allow to do what you had in mind with is-babylon-expression ?

authors: ForbesLindesay TimothyGu jeromew

repo: pugjs/is-expression-babylon


text:
Undefined values hashing

var obj = {
  key: undefined
};

When I'm trying to create a hash from object what contains undefined value:
TypeError: undefined is not a function
  at Object.dispatch (/Users/harri/Projects/Repos/object-hash/index.js:94:48)
  at /Users/harri/Projects/Repos/object-hash/index.js:114:41
  at Array.forEach (native)
  at _object (/Users/harri/Projects/Repos/object-hash/index.js:111:21)
  at Object.dispatch (/Users/harri/Projects/Repos/object-hash/index.js:94:48)
  at hash (/Users/harri/Projects/Repos/object-hash/index.js:83:31)
  at objectHash (/Users/harri/Projects/Repos/object-hash/index.js:33:10)
  at Test._cb (/Users/harri/Projects/Repos/object-hash/test/index.js:104:15)
  at Test.run (/Users/harri/Projects/Repos/object-hash/node_modules/tape/lib/test.js:56:14)
  at Object.next [as _onImmediate] (/Users/harri/Projects/Repos/object-hash/node_modules/tape/lib/results.js:66:15)

Serialising undefined value solves the problem.
Best regards,
Harri

And next case objectHash.MD5(undefined); throws exception "Object argument required." - is it correct behaviour?

authors: harrisiirak rchzh

repo: puleos/object-hash


text:
Typed provider configuration

This adds strong typing around our CI configuration options.
Currently our config is just a bag of values, which has led to repos specifying options which have no effect on CI (e.g. parallel:, makeTemplate: etc.).
This adds types for all of our available options and will fail if ci-mgmt.yml specifies an unrecognized option. For backwards compatibility we continue to allow existing no-op params in order to not break existing providers.

Is there any option to conbine the defaults into the parser too so we don't have to maintain the defaults file separately?

Is there any option to conbine the defaults into the parser too so we don't have to maintain the defaults file separately?

Sure! I kept it around since this is already a pretty big change but that's very doable.

Would be nice to not have the documentation duplicated between the types and the defaults at some point, but that could be a follow-up task.

Agree and created https://github.com/pulumi/ci-mgmt/issues/1146

We'll also need a roll-out plan for fixing any bad fields in config files.

We should get build failure issues for any providers specifying some bad fields not allow-listed here, and I can fix those as needed. Otherwise cleaning these up isn't urgent (arguably not worth doing). IMO it's more important that the boilerplate repos reflect the correct usage and I think you already took care of that.

authors: blampe danielrbradley

repo: pulumi/ci-mgmt


text:
Add Newsletter section to website

Problem description
Add a section to the website that documents how to create a newsletter and publishing checklist

I definitely see the value of having a section on the website (or somewhere) for archived newsletters, but if this issue means to track the need for how-to documentation that wouldn't be relevant to external contributors, it'd probably be better relocated to something else, like pulumi/marketing. Okay if I move it there?

This is currently handled through Hubspot as one-offs: e.g., https://info.pulumi.com/pulumi-in-2019-and-looking-ahead-to-2020?

the work item is:
Add a section to the website that documents how to create a newsletter and publishing checklist .. iow, it would include how to make sure the newsletter GETS to the site ... and makes sure a preview is sent before sending to the masses, and that "smart send" is enabled, etc.

authors: cnunciato ericrudder spara

repo: pulumi/docs


text:
PATCH 0042-Revert-Merge-pull-request-35678-from-hashicorp-b-elb.patch

Revert-Merge-pull-request-35678-from-hashicorp-b-elb.patch
This workarounds a bridge bug temporarily

Looks like the details on this is are in https://github.com/pulumi/pulumi-aws/issues/3427

I was checking up on this with @VenelinMartinov  today. The patch is under test, which is good. The fix is incoming in the next bridge release.
I can confirm that:
go test -run TestRegress3421 passes on bridge c535463784ef8465c6c85c0a6e56461054c38579

But it still fails on v3.84.0.
So we should be able to drop this during the next round.

repo: pulumi/pulumi-aws


text:
ID was missing the signalR element

I'm  Trying to create a Signal R resource using the azure provider, but even though it got created, Pulumi throws an error.
Program.cs
static Task<int> Main()
    {
        return Deployment.RunAsync(() => {

            // Create an Azure Resource Group
            var resourceGroup = new ResourceGroup("resourceGroup");

            //Creates a Signal R service
            var SignalR= new Pulumi.Azure.SignalR.Service($"Signalrfoo-dev",new Pulumi.Azure.SignalR.ServiceArgs(){
                ResourceGroupName= resourceGroup.Name,
                Sku = new Pulumi.Azure.SignalR.Inputs.ServiceSkuArgs{
                    Capacity = 1,
                    Name = "Free_F1",
                }
            });

            return new Dictionary<string, object?>
            {
                {"SignalR:ConnectionString", SignalR.PrimaryConnectionString}
            };
        });
    }

Pulumi Version:

v1.11.1

Expected Behaviour:

Pulumi should not report any error and should return the connection string as an output as stated on the code

Actual Behaviour:

Pulumi creates the resource on azure, but returns this error:
* creating urn:pulumi:dev::Test-Pulumi-with-Git::azure:signalr/service:Service::signalrfoo-dev: ID was missing the signalR element

Steps to reproduce:

Create new Pulumi Project with azure-csharp template
Paste the code or create a Signal R Service
Run the command pulumi up and confirm or pulumi up --yes

Hi @dimm91
I ran your code and got
Do you want to perform this update? yes
Updating (dev):
     Type                           Name            Status
     pulumi:pulumi:Stack            azure-cs-dev
 +   ├─ azure:signalr:Service       Signalrfoo-dev  created

Outputs:
  + SignalR:ConnectionString: "Endpoint=https://signalrfoo-dev673ffb64.service.signalr.net;AccessKey=<redacted>=;Version=1.0;"

Resources:
    + 1 created
    1 changes. 2 unchanged

Duration: 4m19s

Are you sure this is the exact code that you used?

Hi @mikhailshilkov, I did and, the result was the same mentioned earlier, pretty weird that we have different results.
I'm attaching an image of the result.

Can be that we are using different versions?

I'm on
<ItemGroup>
    <PackageReference Include="Pulumi.Azure" Version="1.12.0-preview" />
  </ItemGroup>

You?

I'm on

  <ItemGroup>
    <PackageReference Include="Pulumi.Azure" Version="1.14.0-preview" />
  </ItemGroup>

A-ha... reproduced with 1.14! This appears to be this issue https://github.com/terraform-providers/terraform-provider-azurerm/issues/5715
It's going to be fixed in 2.0 of the provider (to be released soon).

repo: pulumi/pulumi-azure


text:
bump example deps

This bumps all the minimum deps for the example provider to make use of all the new features

I believe this PR is stale and these deps have already been updated; please reopen if I am wrong!

authors: jaxxstorm mjeffryes


text:
Content Creator: Request Access to CMS

As a Content Creator I want request access to a CMS so that I can create content for my project.
Feature: Request Access
  As a Content Creator
  I want to request access to a CMS
  So that I can create content for my project.

  Scenario: Request access from CMS admin
    Given that we require a Content Creator to access a password protected CMS
    When they attempt to access the CMS
      And they don't have CMS credentials
    Then they are presented with the option to request access to the CMS
      And that option will open a mail client with the mailto: directed at the administrator

[ ] gain access / request access from admin

blocked by the need to send email: https://github.com/punchcard-cms/punchcard/issues/149

repo: punchcard-cms/punchcard


text:
Make DefaultDragHandler.CanStartDrag virtual

Hi! Thank you for the great library!
I want to inherit from DefaultDragHandler to ignore NumericUpDown from MahApps as you did with TextBox, ComboBox, etc.
As I can see there is no reason to not allow to override CanStartDrag.

@Hinidu :+1:

Thank you for the blazingly fast response! :+1:

@Hinidu -> gong-wpf-dragdrop 1.0.0-ALPHA013

@punker76 awesome!


text:
reverse --(no-)dev logic for composer install just like composer upda…

…te --dev is the default behaviour

Don't know if I made it clear but this fixes dev: false option. You simply can't get composer NOT to install dev dependencies unless you pass --no-dev as --dev is the default behavior.

repo: puphpet/puppet-composer


text:
[Bug]: TimeoutError: Navigation timeout of 30000 ms exceeded

Minimal, reproducible example
import { writeFileSync } from 'fs';
import puppeteer from 'puppeteer';

(async () => {
	const browser = await puppeteer.launch({
		headless: 'new',
	});
	const page = await browser.newPage();

	const html = `

                <meta charset='UTF-8' />
                <meta name='viewport' content='width=device-width, initial-scale=1.0' />
                <meta http-equiv='X-UA-Compatible' content='ie=edge' />
                <title>
                        Invoice
                </title>

                            Product
                            Price
                            Quantity
                            Total

                            Product 1
                            $10.00
                            2
                            $20.00

                            Product 2
                            $15.00
                            1
                            $15.00

                            Product 3
                            $5.00
                            3
                            $15.00

        `;

	await page.setContent(html, { waitUntil: 'networkidle0' });

	const pdf = await page.pdf({
		format: 'a4',
		printBackground: true,
		displayHeaderFooter: true,
		headerTemplate: ' ',
		footerTemplate: `

                        /

            `,
		margin: { bottom: '20mm', left: '20mm', right: '20mm', top: 0 },
	});

	await page.close();
	await browser.close();
	writeFileSync('invoice-test.pdf', pdf);
	return pdf;
})();

Error string
TimeoutError: Navigation timeout of 30000 ms exceeded
Bug behavior

[X] Flaky
[X] PDF

Background
I've been using this code for over a long period of time (at least a year or more). We use a handlebars template, that outputs some HTML. Then we create a PDF via Puppeteer. As of my latest NPM packages updates, this has become an issue that occurs from time to time, and leaves behind a lot of dead processes.
I couldn't get the example to error locally or on the server, but it happens on both Ubuntu 22.04 servers we have NodeJS API and plain script.
.cache/puppeteer/chrome contains the following:
linux-1056772  linux-1083080  linux-113.0.5672.63  linux-114.0.5735.133  linux-117.0.5938.92  linux-118.0.5993.70

Expectation
Work as it always has, without errors/timeout.
Reality
Image here for context:

I'm guessing maybe the import in the CSS creates the issue ?
Puppeteer configuration file (if used)
No response
Puppeteer version
21.4.1
Node version
16.18.1
Package manager
npm
Package manager version
9.6.3
Operating system
Linux

@OrKoN Here is the issue

I'm guessing maybe the import in the CSS creates the issue ?

Does removing the CSS import cause an issue?

It does launch chrome, as i can pull the PDF via our dashboard UI. Most of the time the processes are created then killed again automatically, but after some time when i SSH into the servers i have the result seen in the image in my original post.

I just reproduced the error via my API:
I have a list of invoice in a table, and i can select multiple.
Selecting 20 invoices will send 20 different requests to the API.
const invoice = await this.$axios.$get(`/api/v1/invoice/${ID}`, {
			headers: {
				Accept: 'application/pdf',
			},
			params: {
				account: this.$accessor.user?.customerID,
			},
			responseType: 'blob',
		});
		```

At some point it will hit my example from the post above. I have 8 instances running via PM2, and after hitting each one once, the next 12 PDFs fail.
Has any of the latest updates created a kind of locking mechanism ?

@SK-FComputer no, but it's a browser so parallel runs is not exactly a priority. Still could you get the logs with dumpio: true and could you make sure that the browser gets close even if there is an error? Current sample code would leave the browser hanging if an error happens.

writeFileSync('invoice-test.pdf', pdf);

I assume that parallel runs use the same destination file?

Also, it would great if you could share the CDP log DEBUG=puppeteer:* for the run where there are hanging processes remainging.

The parallel runs returns the buffer, and the API returns this data. No file is written.
Shouldn't it create a browser per run ? Even in the same NodeJS api instance ?

Are these the exact arguments you launch with on the server?
const browser = await puppeteer.launch({
		headless: 'new',
	})

this would create a new browser instance per run and a fresh temporary profile directory. But if you provide a custom profile directory, then it might not work concurrently.

Are these the exact arguments you launch with on the server?
const browser = await puppeteer.launch({
		headless: 'new',
	})

this would create a new browser instance per run and a fresh temporary profile directory. But if you provide a custom profile directory, then it might not work concurrently.

Yes this is the exact arguments

Dumpio:
[1834901:1834901:1025/130232.060055:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:32773/devtools/browser/eaa71e4f-aad9-4de5-aa38-31dbadac88c2
[1834968:7:1025/130232.249280:ERROR:command_buffer_proxy_impl.cc(127)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[1834980:1834980:1025/130232.342700:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:33089/devtools/browser/b61793dd-eb5c-4d3e-93cd-5d2eaa6cc448
[1835065:7:1025/130232.566808:ERROR:command_buffer_proxy_impl.cc(127)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[1835066:1835066:1025/130232.615929:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:33595/devtools/browser/2174628e-999d-45ad-a01b-1bbb838043a2
[1835183:1835183:1025/130232.956007:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:45245/devtools/browser/8d973a38-2f4b-4945-bdc0-c512029f2a7e
[1835288:1835288:1025/130233.224097:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:41357/devtools/browser/666a6f87-c2d1-4242-9c93-2bc2b1f67980
[1835379:1835379:1025/130233.508201:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:35349/devtools/browser/87887db8-1f52-482b-a153-db38f08e0685
[1835457:7:1025/130233.676131:ERROR:command_buffer_proxy_impl.cc(127)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[1835484:1835484:1025/130233.854259:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:45571/devtools/browser/8c4f7f57-8178-4dd2-b2eb-2d42f36ddb4d
[1835575:1835575:1025/130234.176449:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:37971/devtools/browser/54686d5b-16eb-4200-a8f8-fab8e6ead193
[1835611:1835611:1025/130234.320617:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:46753/devtools/browser/1680e4bb-115f-4daa-901c-6f523f280a24
[1835758:7:1025/130234.498229:ERROR:command_buffer_proxy_impl.cc(127)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[1835792:1835792:1025/130234.763998:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:33711/devtools/browser/8ba97d00-5504-4f9e-8422-0964355a4e49
[1835825:1835825:1025/130234.948100:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:34933/devtools/browser/63f4b91d-aee6-4f08-8a93-8a94f213f2ba
[1835959:7:1025/130235.130048:ERROR:command_buffer_proxy_impl.cc(127)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[1835978:1835978:1025/130235.284342:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:46839/devtools/browser/1912bcc0-84f9-480d-8e40-51d805ad0f11
[1836063:7:1025/130235.448650:ERROR:command_buffer_proxy_impl.cc(127)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[1836061:1836061:1025/130235.512068:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:40477/devtools/browser/3a4730b6-ff92-400a-9f93-58eec6e1c328
[1836190:1836190:1025/130235.868348:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:33517/devtools/browser/0048a921-e73e-4144-9b30-faca25af2865
[1836267:1836267:1025/130236.143983:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:34341/devtools/browser/54041d92-ea8a-47a0-9ff9-855f164df6d4
[1836363:1836363:1025/130236.366469:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:45951/devtools/browser/814d2719-47cd-405b-aedd-1ec93d9c88be
[1836506:1836506:1025/130236.712376:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:39211/devtools/browser/07a14229-22ca-44ed-96e9-9358922700c4
[1836555:7:1025/130236.905783:ERROR:command_buffer_proxy_impl.cc(127)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[1836605:1836605:1025/130237.028115:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:36039/devtools/browser/9df15e4d-2775-4a69-9400-abd9222fae0d
[1836696:1836696:1025/130237.325068:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:35759/devtools/browser/9dccce6d-5f2a-42bb-ac9d-598d6a7327c4
[1836777:7:1025/130237.458736:ERROR:command_buffer_proxy_impl.cc(127)] ContextResult::kTransientFailure: Failed to send GpuControl.CreateCommandBuffer.
[1836815:1836815:1025/130237.684735:ERROR:policy_logger.cc(154)] :components/enterprise/browser/controller/chrome_browser_cloud_management_controller.cc(163) Cloud management controller initialization aborted as CBCM is not enabled.
DevTools listening on ws://127.0.0.1:39261/devtools/browser/5b97b1a7-c602-434b-bd89-6706c109e885

Making sure that the browser closed only resolved the error of hanging processes, the timeout still occurs.

@OrKoN If i read the debug output correctly, each browser has an unique ID. I double checked.
I will try removing the import next, but i have a feeling that's not it, when it always is 8/20 that is succesful.
The count would be more dynamic if the import in the CSS was failing

@SK-FComputer could your server be out of resources? note that the new headless consumes as much resources as the headful browser? is there enough disk space and enough memory?

It does report a funny virtual memory even for 1 PDF:

However one PDF download per API instance is always fine. When looking at the top of htop, the memory only increases a couple 100 mb, and i have 3 out of 32 GB used only.

@OrKoN The issue only exists in the case where the loadbalancer hits a generating instance

@OrKoN Can confirm with the CSS import the issue is with the import.
Tested multiple times with removing and adding again.
The issues arising is dynamic, most of the times 8 PDFs out of 20 gets genereated.
Doesnt look like a resource issue, the usage looks the same with and without

Also can confirm, not an issue with version 21.3.3

Also can confirm 21.3.8 is the last good version for me, 2.4.0 and 2.4.1 doesn't work.
Issue with roll to chrome 118 or ?

@SK-FComputer Can you try to run your code with version 21.4.1 and use PUPPETEER_EXECUTABLE_PATH env or executablePath property of the launch command - pointing to the old binary installed by 21.3.8.
(Path should be something like <Your-Path>/.cache/puppeteer/chrome/linux-117.0.5938.149/chrome-linux64/chrome)
That way we will know if the roll introduced the issue.
Also have you tried using, to see if using Incognito will help with this issue?
const context = await browser.createIncognitoBrowserContext();
const page = await context.newPage();

I confirm the issue on Puppeteer 21.4.1 with
{waitUntil: 'networkidle0'}

It was working perfectly until version 21.3, but on 21.4.1 it goes on timeout error.
Inspecting the page with devtools and network panel, there is no network activity but Puppeteer still waits until reaching the timeout.
Using
{waitUntil: 'load'}
// or
{waitUntil: 'domcontentloaded'}

it works as usual.

@daniele-orlando do you have the CDP log for this? (I am not able to repro this on my Mac, although it is 13). Note that networkidle0 means that Puppeteer waits for the networkidle event from the browser.

@Lightning00Blade I tried with the executeablePath and the issue is with the 118 chrome.
Using linux-117.0.5938.149/chrome-linux64/chrome didn't cause the issue with latest version of Puppeteer

@OrKoN Incognito didn't work with latest version of chrome.

@SK-FComputer can you create a test script demonstrates the issue? We would need to file the bug for Chrome but first we need to understand what exactly is going wrong.

My problem is that i can't reproduce it locally or on server with the error.
Uses same chrome and puppeteer version that fails on my servers.
Local: Arch 6.5.8-arch1-1 (BTW)
Servers: Ubuntu 22.04
The only thing that is different is that it uses PM2 for loadbalancing on server.
'use strict';

const Hapi = require('@hapi/hapi');
const { default: puppeteer } = require('puppeteer');

async function createPDF(html) {
	let browser;
	try {
		browser = await puppeteer.launch({
			headless: 'new',
		});
		const page = await browser.newPage();

		await page.setContent(html, { waitUntil: 'networkidle0' });

		const pdf = await page.pdf({
			format: 'a4',
			printBackground: true,
			displayHeaderFooter: true,
			headerTemplate: ' ',
			footerTemplate: `

                            /

                `,
			margin: { bottom: '20mm', left: '20mm', right: '20mm', top: 0 },
		});

		await page.close();
		await browser.close();
		return pdf;
	} catch (error) {
		console.error(error);
	} finally {
		if (browser !== null) {
			await browser.close();
		}
	}
}

async function PreResponseToPDF(request, response) {
	const {
		pdf: { html },
	} = request.app;

	const PDF = await createPDF(html);

	return response.response(PDF).code(200).type('application/pdf');
}

const init = async () => {
	const server = Hapi.server({
		port: 3000,
		host: 'localhost',
	});

	server.route({
		method: 'GET',
		path: '/pdf',
		handler: (request, h) => {
			request.app = {
				pdf: {
					html: `

                            <meta charset='UTF-8' />
                            <meta name='viewport' content='width=device-width, initial-scale=1.0' />
                            <meta http-equiv='X-UA-Compatible' content='ie=edge' />
                            <title>
                                    Invoice
                            </title>

                                        Product
                                        Price
                                        Quantity
                                        Total

                                        Product 1
                                        $10.00
                                        2
                                        $20.00

                                        Product 2
                                        $15.00
                                        1
                                        $15.00

                                        Product 3
                                        $5.00
                                        3
                                        $15.00

                    `,
				},
			};
			return 'Hello World!';
		},
		options: {
			ext: {
				onPreResponse: [
					{
						method: PreResponseToPDF,
					},
				],
			},
		},
	});

	await server.start();
	console.log('Server running on %s', server.info.uri);
};

process.on('unhandledRejection', (err) => {
	console.log(err);
	process.exit(1);
});

init();

We had some other reports related to PM2. I think it was mostly that PM2 might run a different Node version and people reported issues with the older Node version. Perhaps it's something of the same sort here if PM2 is the only difference.

Doesn't seem to be the issue, PM2 is using the correct and only node version installed:

This issue occurs with version 22.12.1 for example.
Works with version 22.5.x as expected for example.

Operating System
macOS
14.5

authors: Lightning00Blade OrKoN SK-FComputer daniele-orlando kireerik

repo: puppeteer/puppeteer


text:
preferCSSPageSize not working

Steps to reproduce
Tell us about your environment:

Puppeteer version: 1.17.0
Platform / OS version: Debian Stretch
URLs (if applicable): N/A
Node.js version: 8.16

What steps will reproduce the problem?
Please include code that reproduces the issue.
I try to generate a PDF with a page with a @page css element,
@page {
     size: a3 !default;
}

otpions transferred to puppeteer are :
{ path: 'output.pdf',
  margin: { top: '1cm', bottom: '1cm', left: '1cm', right: '1cm' },
  format: 'A4',
  landscape: true,
  preferCSSPageSize: false,
  printBackground: true }

What is the expected result?
I except to get a A4 landscape PDF
What happens instead?
I get an A4 portrait PDF.
if i modify the webpage CSS to
@page {
  size: auto;
}

i have the correct behaviour, so the preferCSSPageSize option is ignored and @page css is forced

the same issue, seems @page CSS is with the highest priority. for now, I just remove @pages CSS and only use the puppeteer options to control print style.


text:
Queued request hangs on some pages

Steps to reproduce
Tell us about your environment:

Puppeteer version: 1.18.1
Platform / OS version: Linux debian9 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u5 (2017-09-19) x86_64 GNU/Linux
URLs (if applicable): https://tvn.pl
Node.js version: v10.15.3

What steps will reproduce the problem?
When I try to queue requests at some point I don't receive requests or response related events.
Please include code that reproduces the issue.
`
const puppeteer = require('puppeteer');
export class RequestQueue2 {
constructor() {
    this.queue = [];
    this.paused = false;
    this.inputCounter =  0;
    this.outputCounter = 0;
}

onRequestArrived(requestFn) {
    this.inputCounter++;
    if (this.paused) {
        this.queue.push(requestFn);
    } else {
        this.paused = true;
        requestFn();
    }
}

onRequestFinished(request) {
    console.log(`request finished:${request.url()}`);

    this.outputCounter++;
    if (this.queue.length > 0) {
        this.queue.shift()();
    } else {
        this.paused = false;
    }
}

get openRequestCount() {
    return this.inputCounter - this.outputCounter;
}

}
(async () => {
const browser = await puppeteer.launch(
{
headless: false,
devtools: true,
args: ['--disable-web-security', '--no-sandbox'],//TODO because of iframe
defaultViewport: {
width: 1280,
height: 839,
deviceScaleFactor: 1,
isMobile: false,
hasTouch: false,
isLandscape: true
}
});
const page = await browser.newPage();
page.setViewport({width: 1280, height: 852});
await page.setRequestInterception(true);
const requestQueue = new RequestQueue2();

page.on('request', (request) => {
    requestQueue.onRequestArrived(() => {
        console.log(`continue request :${request.url()}`);
        request.continue();
    });
});

page.on('requestfinished', (request) => {
    console.log(`request finished:${request.url()}`);
    requestQueue.onRequestFinished(request);
});

page.on('requestfailed', (request)=>{
    console.log(`request failed:${request.url()}`);
    requestQueue.onRequestFinished(request);
});

await page.goto('https://tvn.pl', { timeout : 60000});

})();
`
What is the expected result?
Code should progress further through all the requests. Instead chrome requests queue keeps getting bigger. There is no such issue for example with https://onet.pl
What happens instead?
Code hangs on last resumed (continued) request.

Did you ever find a solution to this by chance? I'm having the same problem


text:
update concat module, remove ensure in fragment resources

Ensure isn't valid in concat 4 and up for the fragment resources.  This PR removes those and bumps the version requirement for concat

 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.

authors: CLAassistant suckatrash

repo: puppetlabs-operations/jfryman-nginx


text:
(SERVER-2801) Use extension processing method directly

The type checking when getting extensions out of a CSR is more
restrictive than in bouncy caste's own functions. This commit updates us
to use their getInstance method for extensions, which is less brittle.
Our type checking breaks when updating to BC 1.63, which switched from
using DER types to using DL types when parsing pretty much everywhere.

For refernce: https://github.com/bcgit/bc-java/blob/master/core/src/main/java/org/bouncycastle/asn1/x509/Extension.java#L271-L283

The commit in BC that caused the trouble: https://github.com/bcgit/bc-java/commit/35983d13426db3451494efa04b95b27e369942a1

(nit) you wrote bouncy caste in the commit message

authors: Magisus mwaggett

repo: puppetlabs/jvm-ssl-utils


text:
(FOR REVIEW) (SERVER-325) flush jrubies after max requests

NOTE: this is not ready for merge yet.  I still need to do some work to address feedback from @camlow325 from #416 .
I have, however, done the work of rebasing this onto the latest stable, and wouldn't mind a few eyes to make sure I didn't screw up any of the recent changes that had landed around http client timeouts, borrow timeout, etc.

It's looking like it's going to take longer than I hoped to get the full set of changes into a mergeable state.  I'm going to close this PR and open another one that just has the basic refactoring stuff in it, and try to get that merged ASAP.  Then I'll open an additional PR that contains the actual flushing changes.

repo: puppetlabs/puppet-server


text:
Recursively manage only user/group for dbpath

Retain idempotency and manage only user/group recursively when
mongodb::server used on dbpath directory already containing the
data. To retain the permissions and to speedup the operation the
unix 'chown' command used.
Signed-off-by: Maksim Malchuk maksim.malchuk@gmail.com

Should fix issues described https://github.com/puppetlabs/puppetlabs-mongodb/pull/310#issuecomment-229029980

+1 to mend owner/group only, don't  touching original permissions of data files.

this PR depends on https://github.com/puppetlabs/puppetlabs-mongodb/pull/316
please merge it first

@EmilienM could You please review and merge?

So I'm testing this change in OpenStack CI: https://review.openstack.org/392563
Let's see if it's idempotent this time.

So the tests passed fine and it looks good to me. I would wait for @mwhahaha last review. We also need to look why Puppet 3 jobs are failing.

:+1:

@mmalchuk Can you rebase this change, I'm wondering if it this was addressed by #332 or #333. I tested the change itself in #338 and it passes now.

Fixed by https://github.com/puppetlabs/puppetlabs-mongodb/pull/339
@mmalchuk thanks for your fix!

authors: EmilienM mmalchuk mpolenchuk mwhahaha

repo: puppetlabs/puppetlabs-mongodb


text:
chore(main): release 1.1.0

:robot: I have created a release beep boop
1.1.0 (2024-06-30)
Features

ci: add a workflow to release npm package on every release (dc2d13b)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.1.0
:sunflower:


text:
🛑 PMB is down

In 7091cdb, PMB (https://pmb.unmer.ac.id/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: PMB is back up in 0f619cb.

repo: pusimgit/upptime


text:
Change axis start in single diode IV curve example

I think the graph in this example of modeling IV curves using a single-diode circuit equivalent model would look better if the x-axis (voltage) and y-axis (current) started at zero.

This is just a minor stylistic preference; it is more to serve as an easy issue that is worth holding off fixing so that it remains available for a new contributor to fix during the upcoming pvlib user group meeting in Copenhagen.

Or, add axis lines at x=0 and y=0

authors: RDaxini cwhanse

repo: pvlib/pvlib-python