Fix p2p version comparison test and logic

Motivation
See #2168
Changes

Fix version comparison logic

Test Plan

Added regression test for logic

TODO

[x] Discuss and decide what to do about test_diff_client_ver: we probably want to try connecting an older node rather than a newer one here

Make it possible to successfully run this test locally, don't override clientv2 docker image name

Addressed in #2131 in 5374ea0ca0f71391c9f6cf10789c1193df93bb0e

decide what to do about the case where clientv2 image needs a different set of command line flags

Most of the places these are used in the tests, they should be overridden. The only exception I've found is the p2p test. Need to discuss with everyone else how we want this test to work, but I suspect the answer here will be, manually create and push a docker image, set it in the config file, and set noreplace.

I don't see a problem with the latter solution.. this runs only a thin p2p node so it shouldn't require a lot of changes are rebuilding, though if we don't do an automatic process it's worth to somehow mention this in the tests or code so if someone changes something she will notice that the dockerimage should be updated.

I don't see a problem with the latter solution.. this runs only a thin p2p node so it shouldn't require a lot of changes are rebuilding, though if we don't do an automatic process it's worth to somehow mention this in the tests or code so if someone changes something she will notice that the dockerimage should be updated.

Agree on your point about documenting this, I can do that as part of this PR. Regarding the core logic of the test in question, do you agree that it should be testing that a bootstrap server running a newer client version (say, v0.2.0) should refuse to allow a client running an older version (say, v0.1.0) to connect to it? If so, I think we're on the same page here, and I can sort out the code. Thanks!

Confirmed on R&D call today that this is the goal - in the long term we want a more robust design here (e.g., versioning individual protocols) but in the short term we want nodes running newer versions of the protocol to refuse to bootstrap nodes running older versions. I'll make the necessary changes here and then mark this PR as ready to review and merge.

I reduced the scope of this PR to one simple fix of the logic. I'll handle updating the P2P test in #2131. @y0sher could you please review?

bors merge

bors merge

bors merge

bors merge

bors merge-

bors merge

bors merge

bors merge


Address issues raised in WCAG 2.2 accessibility audits

Brief
In this brief we will investigate the issues raised in the WCAG 2.2 audit of the Design System website, and put fixes in place if deemed necessary.
We will also revisit the decisions made following the WCAG 2.2 audit of govuk-frontend in 2023 to see if our opinion has shifted on addressing usability issues raised in that report. We retested govuk-frontend in July 2024 and no issues were raised, however it's worth revisiting the things we decided to not fix to see if we feel the same way a year later.
Epic lead
Owen
Driving role(s)
Anika, Hazal
Supporting roles
Kelly, Charlotte, beeps
Further detail
Website audit issues
Frontend audit issues (from 2023)
### Issues to be investigated
- [ ] https://github.com/alphagov/govuk-design-system/issues/4003
- [ ] https://github.com/alphagov/govuk-design-system/issues/4004
- [ ] https://github.com/alphagov/govuk-design-system/issues/4005
- [ ] https://github.com/alphagov/govuk-design-system/issues/4006
- [ ] https://github.com/alphagov/govuk-design-system/issues/4007
- [ ] https://github.com/alphagov/govuk-design-system/issues/4015
- [ ] https://github.com/alphagov/govuk-design-system/issues/4016
- [ ] https://github.com/alphagov/govuk-design-system/issues/4025
- [ ] https://github.com/alphagov/govuk-design-system/issues/4026

### Additional tasks
- [x] Set priorities of non-A issues
- [x] Discuss content issues with Calvin and agree approach
- [ ] https://github.com/alphagov/govuk-design-system/issues/4008
- [ ] https://github.com/alphagov/govuk-design-system/issues/3939
- [ ] https://github.com/alphagov/design-system-team-internal/issues/908
- [ ] https://github.com/alphagov/govuk-design-system/issues/3941
- [ ] https://github.com/alphagov/govuk-design-system/issues/3940

Closed as cycle finished. Issues moved to next brief


check_payment_data_is_captured called too soon in CheckoutSessionMixin

Issue Summary
check_payment_data_is_captured  pre_condition in the CheckoutSessionMixin  called before actually capturing the payment data. In the PaymentDetailsView we capture payment details during the call of handle_payment_details_submission method witch is called after the check_payment_data_is_captured . So if you want to check that payment details have been captured it will always fail.
Steps to Reproduce
It's essential that you provide enough information for someone else to replicate the problem you're seeing. Simply describing something that's broken on your current project is not enough!

override handle_payment_details_submission in the PaymentDetailsView  to handle payment details
override check_payment_data_is_captured in the CheckoutSessionMixin
validate a payment form in PaymentDetailsView with the action set to /checkout/preview

Technical details

Python version: Python 3.7.4
Django version: 2.2.12
Oscar version: 2.0.4

Basically this pre-condition was added within the commit - https://github.com/django-oscar/django-oscar/commit/fd20ea726884bc277e69736143cf1a8541bc9b19, please read the commit description and comment for this pre-condition.
I think it might help not to override check_payment_data_is_captured, but rather implement payment data validation in the handle_payment_details_submission method.


<GSSoC'21>Colour to B n' W

Hi, Sayan here. I'm a GSSoC'21 participant.
I found this project insightful and want to contribute in this project.
This feature is about to turning a image black and white and back.
Please assign me in this issue.

Already exists #25.


feat: add automated plant watering workshop for educators

TODO:

[x] update image assets to match workshop setup
[x] add details for setting up soil / coffee grounds and water in cups in relation to hardware components (include image examples)
[x] review process code to match expectations of workshop
[x] update slide deck with relevant content

Are there any protocols that need to be enabled on the Pi?

No, all components communicate over direct GPIO access that's available by default.

One note on the slide deck (14) - NO (on relay) - is that correct? I saw Normally Open in the codelab text.

In the slide, I wanted to be clear in the slide that the NO connection is on the relay module, which is more spelled out in the codelab text.


AVV_ERR_READY_TIMEOUT

sometimes fastify throw this error.
i've tried to call done inside the index.js in the declaration of fastify's plugin but dosen't worked
any help?
const err = new AVV_ERR_READY_TIMEOUT(name)
                   ^
AvvioError [Error]: Plugin did not start in time: 'fastify-kafkajs'. You may have forgotten to call 'done' function or to resolve a Promise
    at Timeout._onTimeout (C:\Users\gabri\projects\sandybox-api\node_modules\avvio\plugin.js:122:19)
    at listOnTimeout (node:internal/timers:569:17)
    at process.processTimers (node:internal/timers:512:7) {
  code: 'AVV_ERR_READY_TIMEOUT',
  fn: <ref *1> [AsyncFunction: fastifyKafkaJS] {
    default: [Circular *1],
    fastifyKafkajs: [Circular *1],
    [Symbol(skip-override)]: true,
    [Symbol(fastify.display-name)]: 'fastify-kafkajs',
    [Symbol(plugin-meta)]: { fastify: '>=2.0.0', name: 'fastify-kafkajs' }
  }
}

Node.js v18.16.0

@gabrifolli I had the same issue, especially after adding a consumers config. You need to increase Fastify's pluginTimeout.
What happens here is that the default timeout is 10s and kafka plugin takes around 30s for a consumer to connect, so configuring to be 60s worked really well.
const fastify = require('fastify')({
  pluginTimeout: 60000,
})


IPA performance and ultra low protocol

Hi,
I have data from the ultra low protocol.
Then I ran IPA with the default parameters using trimmed and deduplicated HIFI reads (theoretical coverage: 50X) :
ipa local --nthreads 20 --njobs 1 --tmp-dir tmp -i ../raw_fastq/deduplicated.ccs.fastq.gz
However my assembly is very poor:
final.p_ctg.fasta:
G.size: 65Mbp
# Contigs: 793
BUSCO: C:32.7%[S:32.0%,D:0.7%],F:2.1%,M:65.2%,n:1367

final.a_ctg.fasta:
G.size: 22Mbp
# Contigs: 873

The genome size is far from what I expect (450Mbp) and the BUSCO score is very low.

My assumption is that the ultra low protocol cause too much coverage bias. Do you have some recommended parameters to look at ?

How IPA deals with coverage bias ? the regions with very low coverage: are they discarded ?

Hi @ptranvan,
Can you check the contiguity statistics in the 10-assembly folder? It's possible that purge-dups is too stringent in this case and over-purging. Also in the 09 folder there's a coverage json file, can you post the contents here?
Best wishes,
Zev

hi @zeeev, thanks for your prompt answer. Indeed, it's a bit better but still incomplete:
10-assemble/p_ctg.fasta
G size: 318 Mbp
# Contigs: 12093
BUSCO: C:71.6%[S:68.2%,D:3.4%],F:6.9%,M:21.5%,n:1367

10-assemble/a_ctg.fasta
G size: 12 Mbp
# Contigs: 971
BUSCO: C:2.3%[S:2.3%,D:0.0%],F:1.3%,M:96.4%,n:1367

cat 09-ovl_filter/covstat.json
{
    "mean":<PHONE_NUMBER>514024,
    "std":<PHONE_NUMBER>41281,
    "median": 73.0,
    "min": 0,
    "max": 4453,
    "n": 4180758
}

Hi @zeeev, did you have the time to look at it ? Thanks !

Hi @zeeev, did you have the time to look at it ? Thanks !

Try hifiasm, I had a poor assembly using ipa with little of genome assembled, it was 24x coverage but using hifiasm it did a good job. Might be a coverage issue that your 50x isn't 50x and ipa struggles with lower coverage?

Hi @ptranvan,
I do not see anything out of the ordinary in the stats provided above. Given that HiFi assembly tools are really fast, I'd take @rob123king's suggestion. Which assembler will generate better stats depends on the genomes, I've seen it go either way. We'd be curious to see a comparison on your genome.
Thanks for reminding me about this ticket.
Best wishes,
Zev


test: Fixes TestCreateWorkflowDryRun. Closes #2618

Checklist:

[x] Either (a) I've created an enhancement proposal and discussed it with the community, (b) this is a bug fix, or (c) this is a chore.
[x] The title of the PR is (a) conventional, (b) states what changed, and (c) suffixes the related issues number. E.g. "fix(controller): Updates such and such. Fixes #1234".
[x] I have written unit and/or e2e tests for my change. PRs without these are unlike to be merged.
[x] Optional. I've added My organization is added to the USERS.md.
[x] I've signed the CLA and required builds are green.

This can be merged as soon as it is green.

Can be merged when green.


Patch CITE-seq L1 cDNA

Remove cDNA from DependsOn
Linked to the following issue: https://github.com/ncihtan/data-models/issues/436

Actions failed to trigger. On manual run the make JSON-LD step failed
https://github.com/ncihtan/data-models/actions/runs/9747789066
[Convert CSV to JSON-LD](https://github.com/ncihtan/data-models/actions/runs/9747789066/job/26901335256#step:7:15)
Cannot read properties of undefined (reading 'ref')

Thank you Adam! 🚀


ssh into app service issue

Does this occur consistently?
Repro steps:

Action: appService.StartSsh
Error type: ERR_TLS_CERT_ALTNAME_INVALID
Error Message: Hostname/IP does not match certificate's altnames: Host: xxxx. is not in the cert's altnames: DNS:.azurewebsites.net, DNS:.scm.azurewebsites.net, DNS:.azure-mobile.net, DNS:.scm.azure-mobile.net, DNS:*.sso.azurewebsites.net
Version: 0.19.0
OS: darwin
OS Release: 19.6.0
Product: Visual Studio Code
Product Version: 1.50.1
Language: en

Call Stack
new RequestError extension.bundle.js:225:1107125
Request.callback extension.bundle.js:225:1105766
Request.RP$callback [as _callback] extension.bundle.js:225:1105212
r._callback.r.callback.r.callback extension.bundle.js:201:4468
Request.emit events.js:223:5
Request.EventEmitter.emit domain.js:475:20
Request.onRequestError extension.bundle.js:201:13754
ClientRequest.emit events.js:228:7
ClientRequest.EventEmitter.emit domain.js:475:20
TLSSocket.socketErrorListener _http_client.js:406:9
TLSSocket.emit events.js:223:5
TLSSocket.EventEmitter.emit domain.js:475:20
emitErrorNT destroy.js:92:8
emitErrorAndCloseNT destroy.js:60:3
processTicksAndRejections task_queues.js:81:21

Could you provide detailed repro steps please?  Are you able to SSH via the Portal?

Yeap, I can ssh using “az” command also through portal.

Are you running through a proxy by chance?  VS Code may not be handling the proxy the same way as the az CLI or Portal.


docs: added minimum required clang version

added minimum required clang version to README
Documentation change checklist

[X] My documentation changes follow the same style as the rest of the documentation and any examples follow the coding style guide.
[X] I tested that my change works before raising the PR (via running doxygen, and testing examples).
[X] I have not moved any existing pages or changed any existing URLs without strong justification as to why.
[X] I have not generated content using AI or a desktop utility such as grammarly.

All good to me 👍


Implement model from xrt_dem_iterative2.pro

Your mission, if you choose to accept it, is to implement the DEM model from xrt_dem_iterative2.pro from SSWIDL.
Here are excerpts from the documentation for the SSWIDL routine.

XRT_DEM_ITERATIVE2
Estimate a DEM(T) curve, given some observations B_i in channels "i", and given the temperature response functions in every channel R_i(T). These functions satisfy the equation:
B_i = integral{ DEM(T) * R_i(T) * dT }
The inversion is ill-posed and technically fraught with perils.  This routine employs a forward-fitting approach: A DEM is guessed and folded through the R_i(T) to generate "model" observations. This process is iterated to reduce the chi-square between the actual and model observations. The DEM function is interpreted from some spline points, which are directly manipulated by the chi-square fitting routine (MPFIT.pro). There are N_i - 1 splines, representing the degrees of freedom for N_i observations. (Note that the number of temperature bins requested for the DEM solution are usually greater than N_i.)
To estimate errors on the DEM solution, this routine provides for Monte-Carlo iteration. On each iteration, the observations are varied normally by their sigma error, and then solved for a DEM. According to Monte Carlo theory, the distribution of DEM solutions is a measure of the error in DEM(T).

Are you working on this @namurphy ?
If not I'll have a play around with it :)

Similar code to estimate errors is used in multiple methods. I think Mark Cheung's code uses the same (https://iopscience.iop.org/article/10.1088/0004-637X/807/2/143/meta), and all will use a similar method to recover the SDO/AIA DN values from the DEMs

@hayesla - I don't have any plans to work on this, so please feel free to go ahead!

I've fallen deep in an IDL rabbit hole :P will have a proper stab at this over the weekend 👍


sorting subcommands

I don't see any option to sort subcommands in the actions menu. Currently the functions are ordered randomly:
https://cloud.githubusercontent.com/assets/1408720/7950189/4411b824-0965-11e5-905a-3a2b5df0efb3.jpg

Fixed!
You were right on the randomness. Those fields on the left were populated from a dictionary, which has no respect for ordering. Now fixed.
Thanks for the report!


Status updates and fixes in Capabilities article

What's changed, or what was fixed?
In the "Unlocking new capabilities for the web" article,

Updated the current status of the Shape Detection API and the Wake Lock API to match the status specified on the Chrome Status website.
Fixed some typos.

CC: @petele

:tada: This has been pushed live to https://developers.google.com/web/


Ensure https://cloud.axiom.co is the default AXIOM_URL

Shouldn't require being set by the customer for the standard case of them using Axiom Cloud

should we put the port @njpatel  https://cloud.axiom.co:443 is it necessary

no, that's only needed if the client is able expecting a non-default port


fix benthos.yaml config logic bug

no matter benthos run on streams mode or not, benthos.yaml is always needed, because some configuration can only be written in this file, please leave this file controlled by user itself

Hello,
Please check the env support implemented in 0.7.0 and see if that suits your needs.  There is definitely a bug in the config logic; having streams set to false shouldn't be disabling the rest of the block.  Let me mess with it this week and get it fixed, bear with me!

Hello
Now we have env support in version 0.7.2, but config logic still not fixed.
In stream mode, benthos.yaml still always be like this:
http:
  enabled: true
  address: <IP_ADDRESS>:4195
  root_path: /benthos
  debug_endpoints: false

But it should be like this:
http:
  enabled: true
  address: <IP_ADDRESS>:4195
  root_path: /benthos
  debug_endpoints: false
metirc:
  mapping: |
    meta = deleted()
  prometheus:
    push_url: "prometheus-pushgateway.monitoring:9091"
    push_job_name: benthos_push
    push_interval: 5s
    add_process_metrics: true
    add_go_metrics: true
logger:
  level: all
  format: json
  add_timestamp: true

@difabion

Thanks for the update - this makes sense and I don't remember if I considered the global configs in streams mode, sorry about that.  I would like to retain the config block at the end to inform a user that benthos is running essentially config-less.  Let me take a crack at a happy middle ground and propose it here.

bump


add concordance measures closes Add c-index measures #34

Codecov Report

Merging #38 (061d080) into main (5df587f) will decrease coverage by 1.84%.
The diff coverage is 88.23%.

@@             Coverage Diff             @@
##              main      #38      +/-   ##
===========================================
- Coverage   100.00%   98.15%   -1.85%
===========================================
  Files            8        9       +1
  Lines          274      325      +51
===========================================
+ Hits           274      319      +45
- Misses           0        6       +6

Impacted Files
Coverage Δ

src/Surv.jl
98.14% <50.00%> (-1.86%)
:arrow_down:

src/concordance.jl
89.58% <89.58%> (ø)

src/tools.jl
100.00% <100.00%> (ø)

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


Build failed when i try to build on windows 7 using script/build` script

Prerequisites

[x] Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
[x] Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
[x] Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
[x] Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
[x] Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
Build failed when i try to build on windows 7 using script/build` script
#Steps to Reproduce

go to the `{atom}/script/' directory on windows
type the build command and execute it.

Expected behavior: [What you expect to happen]

build success

Actual behavior: [What actually happens]
λ build
Node:   v6.10.3
Npm:    v3.10.5
Python: v2.7.13
Installing script dependencies
Installing apm
Installing modules done
Wrote Dependencies Fingerprint: F:\Home\atom\node_modules\.dependencies-fingerprint 522e392629c5debc77902c467346d6823fdcd4b1
Cleaning F:\Home\atom\out
Copying assets to F:\Home\atom\out\app
Transpiling packages with custom transpiler configurations in F:\Home\atom\out\app
 transpiling for package github
Installing modules done
Transpiling Babel paths in F:\Home\atom\out\app
Transpiling CoffeeScript paths in F:\Home\atom\out\app
Transpiling CSON paths in F:\Home\atom\out\app
Transpiling PEG.js paths in F:\Home\atom\out\app
Generating module cache for F:\Home\atom\out\app
Generating pre-built less cache in F:\Home\atom\out\app\less-compile-cache
Generating metadata for F:\Home\atom\out\app\package.json
Generating API docs at F:\Home\atom\docs\output\atom-api.json
Skipping symbol dumping because minidump is not supported on Windows
Running electron-packager on F:\Home\atom\out\app with app name "atom"
Packaging app for platform win32 x64 using electron v1.6.9
Copying non-ASAR resources to F:\Home\atom\out\Atom x64\resources
Error: ENOENT: no such file or directory, stat 'F:\Home\atom\script\resources\win\atom.cmd'
  at Error (native)
  at Object.fs.statSync (fs.js:1000:11)
  at Object.statSync (F:\Home\atom\script\node_modules\graceful-fs\polyfills.js:297:22)
  at Object.copySync (F:\Home\atom\script\node_modules\fs-extra\lib\copy-sync\copy-sync.js:21:84)
  at forEach.file (F:\Home\atom\script\lib\package-application.js:76:27)
  at Array.forEach (native)
  at copyNonASARResources (F:\Home\atom\script\lib\package-application.js:76:8)
  at runPackager.then (F:\Home\atom\script\lib\package-application.js:50:12)

Reproduces how often: [What percentage of the time does it reproduce?]

100% (when i try to build on windows, always occurred.)

Versions
You can get this information from copy and pasting the output of atom --version and apm --version from the command line. Also, please include the OS and what version of the OS you're running.
apm  1.18.1
npm  3.10.10
node 6.9.5 ia32
python 2.7.13
git 2.9.3.windows.1
visual studio 2015
windows 7
atom source target version:  5a8dce117541bef77d3b8404dbc55383cb278f16

Additional Information
I fixed the build script at {atom}/build/lib/package-application.js:74, following
path.join('resources', 'win', file) => path.join(CONFIG.repositoryRootPath, 'resources', 'win', file)
Current version
  } else if (process.platform === 'win32') {
    [ 'atom.cmd', 'atom.sh', 'atom.js', 'apm.cmd', 'apm.sh', 'file.ico', 'folder.ico' ]
      .forEach(file => fs.copySync(path.join('resources', 'win', file), path.join(bundledResourcesPath, 'cli', file)))
  }

Modified version
  } else if (process.platform === 'win32') {
    [ 'atom.cmd', 'atom.sh', 'atom.js', 'apm.cmd', 'apm.sh', 'file.ico', 'folder.ico' ]
       .forEach(file => fs.copySync(path.join(CONFIG.repositoryRootPath, 'resources', 'win', file), path.join(bundledResourcesPath, 'cli', file)))
  }

so then, solved the above issue.

I think this error occurs for you and not for others because we normally execute script/build from the directory above.  Your fix would however appear to let you do it either way so I'll test and try and get it merged.

@damieng  I think it did not work either way. I have tried executing both script/build and build in the script folder. I experience the same issue. I think there should be an issue on windows platform about building the project from source.

It is building fine here and on every single check-in on our Windows CI server so it's not a Windows-wide issue - it must be environment specific.  Can you open a new issue with your exact console input and output that you get when hitting this?  The original issue on here was a user issue as the script has to be executed from above so I'll close this one down.


feat: Auto-update docker-compose.yml

Modify update.sh so that it sets the latest version and SHA in docker/docker-compose.yml when new versions are available.
Update docker-compose.yml with the latest stable version. Also, changes formatting for this file, since it was generated with yq.

Resolves #448, #421
Let me know if there's anything I need to add.

Thanks this will help a lot


Fix typos.

This commit fixes lots of typos.

Coverage remained the same at 100.0% when pulling baeb5d1c4c9ff87c39a3ba719da09c37ceeba9bf on guptarohit:patch-1 into a88bd7acdf1124a4ab23c09329977c0edaaa8db4 on astorfi:master.

Coverage remained the same at 100.0% when pulling baeb5d1c4c9ff87c39a3ba719da09c37ceeba9bf on guptarohit:patch-1 into a88bd7acdf1124a4ab23c09329977c0edaaa8db4 on astorfi:master.

Please declare these changes in the Issues section.
Moreover please read the pull request policies in the Contributing section as well.
Thank you so much for your help and support.


Explicit histogram boundaries do not match the otel spec

What happened?
Steps to Reproduce
Initialize sdk-metrics and create a histogram with the default settings. Observe the chosen histogram buckets.
Expected Result
The chosen boundaries should match the metrics spec:

The Default Value represents the following buckets (heavily influenced by the default buckets of Prometheus clients, e.g. Java and Go):
(-∞, 0], (0, 5.0], (5.0, 10.0], (10.0, 25.0], (25.0, 50.0], (50.0, 75.0], (75.0, 100.0], (100.0, 250.0], (250.0, 500.0], (500.0, 750.0], (750.0, 1000.0], (1000.0, 2500.0], (2500.0, 5000.0], (5000.0, 7500.0], (7500.0, 10000.0], (10000.0, +∞). SDKs SHOULD use the default value when boundaries are not explicitly provided, unless they have good reasons to use something different (e.g. for backward compatibility reasons in a stable SDK release).

Specifically, the default boundaries should be [0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500, 10000].
Actual Result
The default boundaries in the node metrics sdk instead are [0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000], which is not as useful for e.g. bucketing slow RPCs.
Additional Details
It looks like the defaults are configured here in the sdk-metrics package.
OpenTelemetry Setup Code
No response
package.json
{
  "dependencies": {
    "@opentelemetry/api": "1.3.0",
    "@opentelemetry/sdk-node": "0.34.0",
    "@opentelemetry/sdk-trace-base": "1.8.0",
  }
}

Relevant log output
No response

Thanks for reaching out, looks like this spec change flew under the radar for us. :sweat:
AFAIK adding these buckets is not a breaking change, and other SDKs made this change after GA as well, so adding these should be safe. :slightly_smiling_face:

@pichlermarc  Can I take this up? I'm reading the documentation to get a better understanding.
I'll revert back to you with my findings.

/assign

@pichlermarc Can I take this up? I'm reading the documentation to get a better understanding. I'll revert back to you with my findings.

It's yours. :tada: Thanks for picking this up. :slightly_smiling_face:
If you have any questions, feel free to reach out here or on the CNCF Slack :slightly_smiling_face:

Great, I'll do that.
By using the default settings, I'm attempting to make a histogram.
https://opentelemetry.io/docs/reference/specification/metrics/api/#histogram-creation
While attempting to execute the npm test, I encountered a problem.
If I can't fix the problem below, I'll consult with the Slack team.

@Bharath-Ganesh were you able to resolve the issue? :thinking:
I did spin up a Windows VM and installed Node 14 and it looks like there seem to be some issues indeed, however I could not reproduce the exact problem from your screenshot.
Could you try if the same problem persists with Node 16? :thinking: Maybe there's a problem with some of our tooling.

I tried to spin up a Ubuntu VM to run the test, and it's still failing.
node version: 18

Interesting, could you include the actual error message in the logs? :thinking:
With node 18, you'll need to run the tests using NODE_OPTIONS=--openssl-legacy-provider as we're using an older version of webpack that needs this flag.

@ashutosh887 I wonder if @Bharath-Ganesh is still working on this, it may be worth syncing up with them to avoid some duplicate work. Feel free to open a PR then. :slightly_smiling_face:

@ashutosh887 I'm working on this. I got caught up with some work, sorry for the delay.

Thanks @pichlermarc
Sure @Bharath-Ganesh let me know if you need any help in this

Hey @Bharath-Ganesh are you still working on this?
cc: @pichlermarc

@ashutosh887 I'm pretty swamped. You could take this up.

Thanks @Bharath-Ganesh
@pichlermarc Please assign this issue to me


See https://github.com/scs/substrate-api-client/issues/218
Changes:
bump scale-codec v3, teaclave-sgx
increase some version numbers of substrate crates.

Also, could you update the cli to use the updated node? (see https://github.com/integritee-network/worker/issues/548#issuecomment-984395456)


[CT-2057] [Regression] Flaky generic tests on multiple threads in dbt 1.4.1

Is this a regression in a recent version of dbt-core?

[X] I believe this is a regression in dbt-core functionality
[X] I have searched the existing issues, and I could not find an existing issue for this regression

Current Behavior
Hello,
Our project faced failures in CI test jobs after upgrading to the latest DBT version (1.4.1). The failures were due to flaky generic tests.  After investigating the issue I was able to end up having 2 generic tests running on a single model, which causes the failure.
We are still running the older version 1.3.2 on main and everything is working fine and reliably.
The issue appears to be related to a concurrency/race condition problem. This was confirmed when the following was discovered:

Setting the number of threads to 1 caused the failing tests to pass.
Testing each of the two generic tests individually (by commenting out the other one) showed that they both succeeded.
Sometimes the mentioned tests succeed altogether, but it's rare.

The issues is related to:
https://github.com/dbt-labs/dbt-core/blob/main/core/dbt/compilation.py#L243
token = sqlparse.sql.Token(sqlparse.tokens.Keyword, ", ".join(c.sql for c in ctes))
parsed.insert_after(with_stmt, token)

Some of the CTEs don't have their sql attribute set:
[
    InjectedCTE(id='model.onb.int_loan_monitor__investment_derived_kpis_actuals', sql=None),
    InjectedCTE(id='model.onb.int_loan_monitor__investment_derived_kpis_scenarios', sql=None),
    ...
]

I'm not familiar with the algorithm how the entities of InjectedCTE are created in the concurrent mode, but it would be good to hear from you if you have any suggestions/workarounds for this error.
Expected/Previous Behavior
We expect all the tests to succeed in multi-threaded environment with DBT version 1.4.1
Steps To Reproduce
I haven't tried yet setting a new project and running tests on a clean setup, but based on our findings, we should focus on:

Set more than 1 thread in your profiles.yml
Create at least 2 generics tests for different fields on a single model (in our case not_null)
Run all generics tests for a single model:

pipenv run dbt --debug test --select model_name

Relevant log output
12:56:39.551807 [debug] [Thread-1 (]: Traceback (most recent call last):
  File ".local/share/virtualenvs/data-platform-s3J5s7em/lib/python3.10/site-packages/dbt/task/base.py", line 367, in safe_run
    result = self.compile_and_execute(manifest, ctx)
  File ".local/share/virtualenvs/data-platform-s3J5s7em/lib/python3.10/site-packages/dbt/task/base.py", line 304, in compile_and_execute
    ctx.node = self.compile(manifest)
  File ".local/share/virtualenvs/data-platform-s3J5s7em/lib/python3.10/site-packages/dbt/task/compile.py", line 37, in compile
    return compiler.compile_node(self.node, manifest, {})
  File ".local/share/virtualenvs/data-platform-s3J5s7em/lib/python3.10/site-packages/dbt/compilation.py", line 521, in compile_node
    node, _ = self._recursively_prepend_ctes(node, manifest, extra_context)
  File ".local/share/virtualenvs/data-platform-s3J5s7em/lib/python3.10/site-packages/dbt/compilation.py", line 319, in _recursively_prepend_ctes
    injected_sql = self._inject_ctes_into_sql(
  File ".local/share/virtualenvs/data-platform-s3J5s7em/lib/python3.10/site-packages/dbt/compilation.py", line 242, in _inject_ctes_into_sql
    token = sqlparse.sql.Token(sqlparse.tokens.Keyword, ", ".join(c.sql for c in ctes))
TypeError: sequence item 0: expected str instance, NoneType found

Environment
- OS: macOS 12.6.1 / Ubuntu 22.04.1
- Python: 3.10.8 / 3.10.9
- dbt (working version): 1.3.2
- dbt (regression version): 1.4.1

Which database adapter are you using with dbt?
bigquery
Additional Context
No response

@gastlich Thanks for opening! Are the two generic tests both defined on an ephemeral model? Or a model that depends on an ephemeral model?
The code you linked is related to how ephemeral models are compiled into downstream nodes (as CTEs). We made a few changes to that code in v1.4, which were behind-the-scenes refactoring and cleanup of our node types (https://github.com/dbt-labs/dbt-core/pull/6384/, https://github.com/dbt-labs/dbt-core/pull/6427). While those chnages shouldn't have had any functional effect, it's of course possible that this is an unintended consequence.
A clear & reliable reproduction case would help us get to the bottom of this.
I've tried reproducing with:
-- models/my_model.sql
{{ config(materialized = 'ephemeral') }}
select 1 as id

# models/config.yml
version: 2
models:
  - name: my_model
    columns:
      - name: id
        tests:
          - unique
          - not_null

But I haven't been able to reproduce the error. I'm able to run both tests with multiple threads successfully.

hello @jtcohen6 . Thanks for coming back to me so quickly :)
I've managed to recreate the issue on a clean project:
# schema.yml
version: 2

models:
  - name: int_eph_first
    columns:
      - name: first_column
        tests:
          - not_null
      - name: second_column
        tests:
          - not_null

  - name: fct_eph_first
    columns:
      - name: first_column
        tests:
          - not_null
      - name: second_column
        tests:
          - not_null

-- int_eph_first.sql
{{ config(materialized='ephemeral') }}

select
    1 as first_column,
    2 as second_column,

-- fct_eph_first.sql
{{ config(materialized='ephemeral') }}

with int_eph_first as(
    select * from {{ ref('int_eph_first') }}
)

select * from int_eph_first

Single-threaded outcome
20:40:24  Running with dbt=1.4.1
20:40:24  Found 2 models, 4 tests, 0 snapshots, 0 analyses, 334 macros, 0 operations, 0 seed files, 0 sources, 0 exposures, 0 metrics
20:40:24
20:40:24  Concurrency: 1 threads (target='dev')
20:40:24
20:40:24  1 of 4 START test not_null_fct_eph_first_first_column .......................... [RUN]
20:40:25  1 of 4 PASS not_null_fct_eph_first_first_column ................................ [PASS in 1.54s]
20:40:25  2 of 4 START test not_null_fct_eph_first_second_column ......................... [RUN]
20:40:26  2 of 4 PASS not_null_fct_eph_first_second_column ............................... [PASS in 0.82s]
20:40:26  3 of 4 START test not_null_int_eph_first_first_column .......................... [RUN]
20:40:27  3 of 4 PASS not_null_int_eph_first_first_column ................................ [PASS in 0.78s]
20:40:27  4 of 4 START test not_null_int_eph_first_second_column ......................... [RUN]
20:40:28  4 of 4 PASS not_null_int_eph_first_second_column ............................... [PASS in 1.03s]
20:40:28
20:40:28  Finished running 4 tests in 0 hours 0 minutes and 4.18 seconds (4.18s).
20:40:28
20:40:28  Completed successfully
20:40:28
20:40:28  Done. PASS=4 WARN=0 ERROR=0 SKIP=0 TOTAL=4

Multi-threaded outcome
20:41:51  Running with dbt=1.4.1
20:41:51  Unable to do partial parsing because profile has changed
20:41:52  Found 2 models, 4 tests, 0 snapshots, 0 analyses, 334 macros, 0 operations, 0 seed files, 0 sources, 0 exposures, 0 metrics
20:41:52
20:41:52  Concurrency: 10 threads (target='dev')
20:41:52
20:41:52  1 of 4 START test not_null_fct_eph_first_first_column .......................... [RUN]
20:41:52  2 of 4 START test not_null_fct_eph_first_second_column ......................... [RUN]
20:41:52  3 of 4 START test not_null_int_eph_first_first_column .......................... [RUN]
20:41:52  4 of 4 START test not_null_int_eph_first_second_column ......................... [RUN]
20:41:52  Unhandled error while executing test.jaffle_shop.not_null_fct_eph_first_second_column.19482e284e
sequence item 0: expected str instance, NoneType found
20:41:52  2 of 4 ERROR not_null_fct_eph_first_second_column .............................. [ERROR in 0.03s]
20:41:53  3 of 4 PASS not_null_int_eph_first_first_column ................................ [PASS in 1.30s]
20:41:53  1 of 4 PASS not_null_fct_eph_first_first_column ................................ [PASS in 1.32s]
20:41:53  4 of 4 PASS not_null_int_eph_first_second_column ............................... [PASS in 1.60s]
20:41:53
20:41:53  Finished running 4 tests in 0 hours 0 minutes and 1.61 seconds (1.61s).
20:41:53
20:41:53  Completed with 1 error and 0 warnings:
20:41:53
20:41:53  sequence item 0: expected str instance, NoneType found
20:41:53
20:41:53  Done. PASS=3 WARN=0 ERROR=1 SKIP=0 TOTAL=4

20:43:33.491653 [debug] [Thread-1 (]: Began running node test.jaffle_shop.not_null_fct_eph_first_first_column.47390b8f26
20:43:33.491759 [debug] [Thread-2 (]: Began running node test.jaffle_shop.not_null_fct_eph_first_second_column.19482e284e
20:43:33.491907 [debug] [Thread-3 (]: Began running node test.jaffle_shop.not_null_int_eph_first_first_column.7fd5ab6772
20:43:33.492013 [debug] [Thread-4 (]: Began running node test.jaffle_shop.not_null_int_eph_first_second_column.f4df3457a3
20:43:33.492243 [info ] [Thread-1 (]: 1 of 4 START test not_null_fct_eph_first_first_column .......................... [RUN]
20:43:33.492427 [info ] [Thread-2 (]: 2 of 4 START test not_null_fct_eph_first_second_column ......................... [RUN]
20:43:33.492551 [info ] [Thread-3 (]: 3 of 4 START test not_null_int_eph_first_first_column .......................... [RUN]
20:43:33.492669 [info ] [Thread-4 (]: 4 of 4 START test not_null_int_eph_first_second_column ......................... [RUN]
20:43:33.492995 [debug] [Thread-1 (]: Acquiring new bigquery connection 'test.jaffle_shop.not_null_fct_eph_first_first_column.47390b8f26'
20:43:33.493316 [debug] [Thread-2 (]: Acquiring new bigquery connection 'test.jaffle_shop.not_null_fct_eph_first_second_column.19482e284e'
20:43:33.493584 [debug] [Thread-3 (]: Acquiring new bigquery connection 'test.jaffle_shop.not_null_int_eph_first_first_column.7fd5ab6772'
20:43:33.493831 [debug] [Thread-4 (]: Acquiring new bigquery connection 'test.jaffle_shop.not_null_int_eph_first_second_column.f4df3457a3'
20:43:33.493952 [debug] [Thread-1 (]: Began compiling node test.jaffle_shop.not_null_fct_eph_first_first_column.47390b8f26
20:43:33.494067 [debug] [Thread-2 (]: Began compiling node test.jaffle_shop.not_null_fct_eph_first_second_column.19482e284e
20:43:33.494175 [debug] [Thread-3 (]: Began compiling node test.jaffle_shop.not_null_int_eph_first_first_column.7fd5ab6772
20:43:33.494293 [debug] [Thread-4 (]: Began compiling node test.jaffle_shop.not_null_int_eph_first_second_column.f4df3457a3
20:43:33.502155 [debug] [Thread-1 (]: Writing injected SQL for node "test.jaffle_shop.not_null_fct_eph_first_first_column.47390b8f26"
20:43:33.504563 [debug] [Thread-2 (]: Timing info for test.jaffle_shop.not_null_fct_eph_first_second_column.19482e284e (compile): 2023-02-07 20:43:33.502304 => 2023-02-07 20:43:33.504528
20:43:33.509717 [debug] [Thread-3 (]: Writing injected SQL for node "test.jaffle_shop.not_null_int_eph_first_first_column.7fd5ab6772"
20:43:33.512284 [debug] [Thread-4 (]: Writing injected SQL for node "test.jaffle_shop.not_null_int_eph_first_second_column.f4df3457a3"
20:43:33.512788 [error] [Thread-2 (]: Unhandled error while executing test.jaffle_shop.not_null_fct_eph_first_second_column.19482e284e
sequence item 0: expected str instance, NoneType found
20:43:33.516319 [debug] [Thread-1 (]: Writing injected SQL for node "test.jaffle_shop.not_null_fct_eph_first_first_column.47390b8f26"
20:43:33.516659 [debug] [Thread-3 (]: Timing info for test.jaffle_shop.not_null_int_eph_first_first_column.7fd5ab6772 (compile): 2023-02-07 20:43:33.504692 => 2023-02-07 20:43:33.516634
20:43:33.516912 [debug] [Thread-4 (]: Timing info for test.jaffle_shop.not_null_int_eph_first_second_column.f4df3457a3 (compile): 2023-02-07 20:43:33.509885 => 2023-02-07 20:43:33.516889
20:43:33.517100 [debug] [Thread-3 (]: Began executing node test.jaffle_shop.not_null_int_eph_first_first_column.7fd5ab6772
20:43:33.517922 [debug] [Thread-1 (]: Writing injected SQL for node "test.jaffle_shop.not_null_fct_eph_first_first_column.47390b8f26"
20:43:33.518077 [debug] [Thread-4 (]: Began executing node test.jaffle_shop.not_null_int_eph_first_second_column.f4df3457a3
20:43:33.526652 [debug] [Thread-3 (]: Writing runtime sql for node "test.jaffle_shop.not_null_int_eph_first_first_column.7fd5ab6772"
20:43:33.527066 [debug] [Thread-2 (]: Traceback (most recent call last):
  File "/Users/jacek.wojna/.local/share/virtualenvs/dbt-test-gTAqrA9S/lib/python3.11/site-packages/dbt/task/base.py", line 367, in safe_run
    result = self.compile_and_execute(manifest, ctx)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/jacek.wojna/.local/share/virtualenvs/dbt-test-gTAqrA9S/lib/python3.11/site-packages/dbt/task/base.py", line 304, in compile_and_execute
    ctx.node = self.compile(manifest)
               ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/jacek.wojna/.local/share/virtualenvs/dbt-test-gTAqrA9S/lib/python3.11/site-packages/dbt/task/compile.py", line 37, in compile
    return compiler.compile_node(self.node, manifest, {})
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/jacek.wojna/.local/share/virtualenvs/dbt-test-gTAqrA9S/lib/python3.11/site-packages/dbt/compilation.py", line 519, in compile_node
    node, _ = self._recursively_prepend_ctes(node, manifest, extra_context)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/jacek.wojna/.local/share/virtualenvs/dbt-test-gTAqrA9S/lib/python3.11/site-packages/dbt/compilation.py", line 317, in _recursively_prepend_ctes
    injected_sql = self._inject_ctes_into_sql(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/jacek.wojna/.local/share/virtualenvs/dbt-test-gTAqrA9S/lib/python3.11/site-packages/dbt/compilation.py", line 241, in _inject_ctes_into_sql
    token = sqlparse.sql.Token(sqlparse.tokens.Keyword, ", ".join(c.sql for c in ctes))
                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: sequence item 0: expected str instance, NoneType found

20:43:33.528679 [debug] [Thread-4 (]: Writing runtime sql for node "test.jaffle_shop.not_null_int_eph_first_second_column.f4df3457a3"
20:43:33.528863 [debug] [Thread-1 (]: Timing info for test.jaffle_shop.not_null_fct_eph_first_first_column.47390b8f26 (compile): 2023-02-07 20:43:33.494398 => 2023-02-07 20:43:33.528834
20:43:33.528994 [error] [Thread-2 (]: 2 of 4 ERROR not_null_fct_eph_first_second_column .............................. [ERROR in 0.04s]
20:43:33.529244 [debug] [Thread-1 (]: Began executing node test.jaffle_shop.not_null_fct_eph_first_first_column.47390b8f26
20:43:33.529416 [debug] [Thread-3 (]: Opening a new connection, currently in state init
20:43:33.530175 [debug] [Thread-2 (]: Finished running node test.jaffle_shop.not_null_fct_eph_first_second_column.19482e284e

@gastlich Thanks for the full reproduction case! I was able to reliably produce the error while running locally with 1.4.latest. I also saw the error after removing the tests on fct_eph_first, and defining tests on fct_eph_first only. I don't see the error while running with v1.3.
It sounds like the needed ingredients are:

two ephemeral models, one referencing the other
two generic tests defined on the second model
running dbt test with multiple threads

We'll need to dig in some more to understand what's actually going on behind the scenes. It sounds like a thread safety issue with _inject_ctes_into_sql / _recursively_prepend_ctes.

@gshank is this scheduled to be in a 1.4 release?


feat: add circle-button tooltips

Modest list-of-links quality of life improvements identified in the course of recently working on a list-of-links widget.

Formally deprecate Font Awesome icons in the context of list-of-links.
Accessibility improvement: don't truncate the aria-label view on the link title. Truncation navigates the tradeoffs of the visual effect of excessively long titles. In the case of a non-visual browser, this tradeoff should be navigated differently, in favor of the fuller title of what the thing is that's linked.
Feature: add tooltip on circle-button offering the full link title in the case where the visual display of the title is truncated.
Document icon in the context of list-of-links widget. (Also responsive to recent @jimhelwig feedback about the limitations of documentation-solely-by-example).
Improve out-of-the-box list-of-links example to be less random content copied from MyUW and more about list-of-links, including demonstrating link title truncation.

PR considerations checklist:

[x] Updates CHANGELOG.md to reflect this PR's change.
[x] This Contribution is under the terms of Individual Contributor License Agreements (and also Corporate Contributor License Agreements to the extent applicable) appearing in the Apereo CLA roster.

Credit to @Doug-Reed , @davidmsibley , and @vertein for un-sticking the ng-if usage to make the tooltip conditional. I was confused about when (not) to use {{ }} syntax.


uncommented truth GENIE vertex

Just uncommented the Genie filling of the vertex positions. You can see the difference before/after here.

An interesting point is that we see that the vertex/neutrino filling is only done when "things" are reconstructed in any of the two detectors. the 1st event doesn't have any reconstructed objects in liquid argon and no showers/tracks in MINERvA, so no vertex is filled. Maybe we want to change that at some point?

An interesting point is that we see that the vertex/neutrino filling is only done when "things" are reconstructed in any of the two detectors. the 1st event doesn't have any reconstructed objects in liquid argon and no showers/tracks in MINERvA, so no vertex is filled. Maybe we want to change that at some point?

Yeah, we may want to, though this would involve each reco branch filler having its own call into the TruthMatcher for otherwise unreconstructed triggers.  Probably for that to work correctly we'd want to add a new pure virtual function to IRecoBranchFiller so that every reco branch filler would have to implement it.  But I'd need to think more about whether that's the right approach, so I think we should press on with this PR and come back to that.  I added #58 so we don't forget forever.


Reset Range Bar

How can i reset this range bar left and right thumb position.

@ajayqualwebs found any solution, sorry its too late to ask.

@ajayqualwebs found any solution, sorry its too late to ask.

@TT1943 #54 this Pr has the fix for the reset issue, if possible can this merged?

@TT1943 #54 this Pr has the fix for the reset issue, if possible can this merged?


menu_items is an empty list

I added items to my main menu and when I query MainMenuItem, it properly returns a queryset of all my MainMenuItem objects.
However, in my custom template, the menu_items context is an empty list. What's causing this?
EDIT: The menu_items context is empty even when using default templates.

Same error +1

Hey @confuzeus / @Allan-Nava. Are your menu items linking to pages or custom urls? And are those pages all published and have a True value for show_in_menus?

Hi @ababic, Items are linking to regular pages and show_in_menus is true.

Hi @ababic, Items are linking to regular pages and show_in_menus is true.

Me too

I'm afraid I'm unable to reproduce this issue as described.
I followed these instructions to create a fresh wagtailmenus dev environment, loaded in the test fixtures, and everything worked as expected (with Django 3.0.6 + Wagtail 2.8.2):
https://wagtailmenus.readthedocs.io/en/stable/contributing/index.html#developing-locally
Can you provide any additional information that might help me recreate? For example, are you overriding menu/menu item models? Are you overriding any other defaults with settings?

It looks like the issue is present only on Django 3.0. On 2.2 everything works as expected.

I am trying to add "Handle" slugfield with "allow_unicode=True" and modified the Flatmenu. It got updated fine and i am able to add flat menus. we have been using get_top_level_items() to fetch the values to navigate in Homepage but it is returning empty. I am unable to see the headings on my Homepage. Kindly let me know if you need more details

@confuzeus @Allan-Nava or anyone else experiencing this issue, it would be super helpful if you could specify:

Which type of menu you are having the problem with
Whether you are using a custom menu model/class
Whether you are using a custom menu item model/class
Whether you are using the built-in menu tags or generating the menus some other way
What wagtailmenus-specific settings you have overridden for your project

I am still unable to reduce this error as reported with Django 3.0.6 + Wagtail 2.8.2, having followed the instructions from the docs. If you are absolutely sure that the problem is with wagtailmenus, and not your implementation, I am happy to investigate further, but I'll need to know far more information than has been provided so far.
To help rule out an issue with wagtailmenus, please try the following steps.

Follow these instructions to set up a local development environment with virtualenv:
https://wagtailmenus.readthedocs.io/en/stable/contributing/index.html#developing-locally
In the development app, add a models.py file and paste in the lines from the example at the end of this comment.
From the command line, run: python manage.py makemigrations development
Run: python manage.py migrate development
Run python mange.py runserver
Add the two lines from the example below to wagtailmenus/settings/development.py
In your browser, access the wagtail admin area using your superuser credentials
From the left menu, select Settings > Main menu (you'll see the custom 'Number' field at the top, and you should also see the custom 'String' field for each menu item)
Populate the menu (for the default site), selecting a few top-level pages for menu items, and adding some custom url items for good measure
From the left menu, select Settings > Flat menu, then click the 'Create' button at the top of the listing. (Again, you'll see the custom 'Number' field at the top, and you should also see the custom 'String' field for each menu item.)
Create a menu for the default site using the footer handle, selecting a few of the top-level pages for menu items and adding some custom url items for good measure.
View the home page for the front end of the site (e.g. http://<IP_ADDRESS>:8000/

You should see multiple versions of the main menu of the top of the page, with the custom menu items showing correctly.
At the very bottom of the page, you should also see 2 versions of the footer flat menu rendered, again, with custom menu items showing correctly.

Type

settings/development.py
WAGTAILMENUS_FLAT_MENU_MODEL = 'development.CustomFlatMenu'
WAGTAILMENUS_MAIN_MENU_MODEL = 'development.CustomMainMenu'

development/models.py
from django.db import models

from modelcluster.fields import ParentalKey

from wagtail.admin.edit_handlers import FieldPanel
from wagtailmenus.conf import settings
from wagtailmenus.models import (
   AbstractMainMenu, AbstractMainMenuItem,
   AbstractFlatMenu, AbstractFlatMenuItem
)

class CustomMainMenu(AbstractMainMenu):
   number = models.IntegerField(blank=True, null=True)
   content_panels = [FieldPanel('number')] + list(AbstractMainMenu.content_panels)

class CustomFlatMenu(AbstractFlatMenu):
   number = models.IntegerField(blank=True, null=True)
   content_panels = [FieldPanel('number')] + list(AbstractFlatMenu.content_panels)

class CustomFlatMenuItem(AbstractFlatMenuItem):
   string = models.CharField(max_length=255)
   menu = ParentalKey(
       CustomFlatMenu,
       on_delete=models.CASCADE,
       related_name=settings.FLAT_MENU_ITEMS_RELATED_NAME
   )
   link_page = models.ForeignKey(
       'wagtailcore.Page',
       verbose_name='link to page',
       blank=True,
       null=True,
       on_delete=models.CASCADE,
       related_name='+'
   )
   panels = [FieldPanel('string')] + list(AbstractFlatMenuItem.panels)

class CustomMainMenuItem(AbstractMainMenuItem):
   string = models.CharField(max_length=255)
   menu = ParentalKey(
       CustomMainMenu,
       on_delete=models.CASCADE,
       related_name=settings.MAIN_MENU_ITEMS_RELATED_NAME
   )
   link_page = models.ForeignKey(
       'wagtailcore.Page',
       verbose_name='link to an internal page',
       blank=True,
       null=True,
       on_delete=models.CASCADE,
       related_name='+'
   )
   panels = [FieldPanel('string')] + list(AbstractMainMenuItem.panels)

@shinchan28 Please can you try copying and pasting the above models into your project and see if things work for you after changing the settings as specified? (you don't have to delete your existing models - they can happily live alongside each other)

I have did the exact on my local env by and we are running the application on docker. My application is getting exited with code 3.
Code:
from django.db import models
from django.utils.translation import ugettext_lazy as _
from modelcluster.fields import ParentalKey
from wagtail.admin.edit_handlers import FieldPanel, PageChooserPanel, MultiFieldPanel
from django.utils import translation
from wagtailmenus.conf import settings
from wagtailmenus.panels import FlatMenuItemsInlinePanel
from wagtailmenus.models import (
AbstractMainMenu, AbstractMainMenuItem,
AbstractFlatMenu, AbstractFlatMenuItem
)
class CustomMainMenu(AbstractMainMenu):
number = models.IntegerField(blank=True, null=True)
content_panels = [FieldPanel('number')] + list(AbstractMainMenu.content_panels)
class CustomFlatMenu(AbstractFlatMenu):
number = models.IntegerField(blank=True, null=True)
content_panels = [FieldPanel('number')] + list(AbstractFlatMenu.content_panels)
class CustomFlatMenuItem(AbstractFlatMenuItem):
string = models.CharField(max_length=255)
menu = ParentalKey(
CustomFlatMenu,
on_delete=models.CASCADE,
related_name=settings.FLAT_MENU_ITEMS_RELATED_NAME
)
link_page = models.ForeignKey(
'wagtailcore.Page',
verbose_name='link to page',
blank=True,
null=True,
on_delete=models.CASCADE,
related_name='+'
)
panels = [FieldPanel('string')] + list(AbstractFlatMenuItem.panels)
class CustomMainMenuItem(AbstractMainMenuItem):
string = models.CharField(max_length=255)
menu = ParentalKey(
CustomMainMenu,
on_delete=models.CASCADE,
related_name=settings.MAIN_MENU_ITEMS_RELATED_NAME
)
link_page = models.ForeignKey(
'wagtailcore.Page',
verbose_name='link to page',
blank=True,
null=True,
on_delete=models.CASCADE,
related_name='+'
)
panels = [FieldPanel('string')] + list(AbstractMainMenuItem.panels)
Dev.py
WAGTAILMENUS_FLAT_MENU_MODEL = "main.CustomFlatMenu"
WAGTAILMENUS_MAIN_MENU_MODEL = "main.CustomMainMenu"

@ababic

@ababic please let me know if need more details

I have tried the same in my local environment with adding customMainmenu as per the above. Wagtail admin page is loading fine and i am able to enter the values in the fields as well, but the values are not passing to front end and my Homepage heading is empty
Please find the following code attached,
development.py
from django.db import models
from django.utils.translation import ugettext_lazy as _
from modelcluster.fields import ParentalKey
from wagtail.admin.edit_handlers import FieldPanel, PageChooserPanel, MultiFieldPanel
from django.utils import translation
from wagtailmenus.conf import settings
from wagtailmenus.panels import FlatMenuItemsInlinePanel
from wagtailmenus.models import (
AbstractMainMenu, AbstractMainMenuItem,
AbstractFlatMenu, AbstractFlatMenuItem
)
class CustomMainMenu(AbstractMainMenu):
number = models.IntegerField(blank=True, null=True)
content_panels = [FieldPanel('number')] + list(AbstractMainMenu.content_panels)
class CustomFlatMenu(AbstractFlatMenu):
handle = models.SlugField(
verbose_name=('handle'),
allow_unicode=True,
max_length=255,
help_text=("enter slug")
)
# Like pages, panels for menus are split into multiple tabs.
# To update the panels in the 'Content' tab, override 'content_panels'
# To update the panels in the 'Settings' tab, override 'settings_panels'
content_panels = (
    MultiFieldPanel(
        heading=_("MENU DETAILS"),
        children=(
            FieldPanel("title"),
            FieldPanel("site"),
            FieldPanel("handle"),
            FieldPanel("heading")
        ),
    ),
    FlatMenuItemsInlinePanel(),
)

class CustomFlatMenuItem(AbstractFlatMenuItem):
menu = ParentalKey(
CustomFlatMenu,
on_delete=models.CASCADE,
related_name=settings.FLAT_MENU_ITEMS_RELATED_NAME
)
link_page = models.ForeignKey(
'wagtailcore.Page',
verbose_name='link to page',
blank=True,
null=True,
on_delete=models.CASCADE,
related_name='+'
)
hover_description = models.TextField(
blank=True,
help_text=_(
"Provide the text to use for showing as description while showing child links"
))
open_in_new_window = models.BooleanField(default=False)

# Also override the panels attribute, so that the new fields appear
# in the admin interface
panels = (
    PageChooserPanel('link_page'),
    FieldPanel('link_url'),
    FieldPanel('url_append'),
    FieldPanel('link_text'),
    FieldPanel('hover_description'),
    FieldPanel('open_in_new_window'),
)

class CustomMainMenuItem(AbstractMainMenuItem):
string = models.CharField(max_length=255)
menu = ParentalKey(
CustomMainMenu,
on_delete=models.CASCADE,
related_name=settings.MAIN_MENU_ITEMS_RELATED_NAME
)
link_page = models.ForeignKey(
'wagtailcore.Page',
verbose_name='link to page',
blank=True,
null=True,
on_delete=models.CASCADE,
related_name='+'
)
panels = [FieldPanel('string')] + list(AbstractMainMenuItem.panels)
settings.py
WAGTAILMENUS_FLAT_MENU_MODEL = "main.CustomFlatMenu"
WAGTAILMENUS_MAIN_MENU_MODEL = "main.CustomMainMenu"
wagtail_settings.py
def get_menu_items(self, menu_handle):

    items = []
    menuItems = []
    try:
        menu = FlatMenu.objects.get(handle=menu_handle)
        items = menu.get_top_level_items()

    except Exception:
        pass
    if items:
        for item in items:
           handleSub = "navigation-" + (item.menu_text)
           menuItems.append({
                'href': item.relative_url(),
                'label': item.menu_text,
                'desc': item.hover_description,
                'openInNewWindow': item.open_in_new_window,
                'children': self.get_menu_items(handleSub)
            })

    return menuItems

def get_nav_api_representation(self):

    return {
            'contact_page_url': self.contact_page_url,
            'search_page_url': self.search_page_url,
            'mainMenuItems': self.get_menu_items('navigation-main'),
    }

def get_nav_json_representation(self):

    return json.dumps(self.get_nav_api_representation())

Wagtail_admin_page:

Home page:

@ababic : please let me know if you need more details

@shinchan28 It's always a bad idea to do except Exception: what do you get if you remove that from your get_menu_items() function/method? I imagine it will tell you that ._contextual_vals or ._option_vals haven't been set?
Menus are supposed to be rendered from the template tags included in the project, where these values are set as part of the process.

@shinchan28 Also, if you're going to use flat menus to define your 'main' menus (as your screenshot suggests), you should:

Remove any custom 'MainMenu' models
Add WAGTAILMENUS_MAIN_MENUS_EDITABLE_IN_WAGTAILADMIN = False to your project settings
Only use the {% flat_menu %} tag in templates to render menus

@ababic i am sorry. i am new to wagtail and i am trying to understand this code as well. This seems to be a bit complex for me as it is using the package functions. This header has been linked to the Footer. Kindly i need your advice to render the values.

@ababic i'll try as you suggested .

@shinchan28 And if you are only overriding a single existing field on CustomFlatMenu (which is already included in the content_panels on the AbstractFlatMenu class), you don't have to redefine content_panels for your model - you can remove those lines and save yourself the ongoing maintenance burden.

@ababic : it is working now .. thank you so much

Thanks @shinchan28. Glad you managed to get things sorted. I'll leave this issue open for now, as I'm not 100% sure you had the same issue as the other reporters.

Im having a similar issue. I thought it was the WT version i was using, so started again going back to wagtail version 2.9, and it will only render custom menu items, and NOT any internal page menu items

Having the same problem here.  My menu_items list is empty, but the template I have at templates/menus/main/menu.html is loading in.

@mochajazz / @JoeWHoward Are you 100% sure both show_in_menus and live are True for the pages you are expecting to appear?

I suspect there could be a conditional somewhere that is expecting a list (which is 'falsey' when empty) but is instead receiving a generator. However, I can't see why the Wagtail or Django version would make a difference there. This would really benefit from a little investigation by someone experiencing the issue... E.g. Adding a custom menu class with print statements indicating the state/types of objects at different points in the process, or even writing a tag to output type and state data in templates. I would have fixed it by now if I knew how to recreate, but need a lot more to go on unfortunately. And please please please share versions where possible.

@ababic Using Wagtail 2.11.3 and Django 3.1.2, I am now trying to implement a custom menu class for debugging (from your comment above on June 28) but I don't know where to set breakpoints to access menu_items (or where the list of menu items is being generated).  I am down to try to tackle this, but will need some guidance on how to go about chasing down the issue.
I've joined the Google support group, if you have otherwise a Slack or Discord I would be open to communicating through there.  I will keep playing around with it and try to find some answers for us both.

@JoeWHoward thanks so much!
First of all, it's worth trying different option combinations on the menu tag to see if they make a difference.
Second, have a browse at the source code for the original menu classes. The various class and instance methods involved in the process should all have docstrings explaining what they do, and are arranged roughly in execution order.
For main menus, first look for methods that make queries for pages and menu items... Try overriding these and printing querysets to check if they look correct early on in the process. This should help you figure out whether it's a problem with your data, or a problem with the query logic. From there, you can try overriding the querysets to see which filters make a difference to the result.
If that doesn't identify the problem, you can direct message me on Slack (I'm on the Wagtail one), and we can figure out where to go from there?

@JoeWHoward Happy new year! May I ask how your investigation went? Did you find the cause of the issue in your project?

@JoeWHoward Happy new year! May I ask how your investigation went? Did you find the cause of the issue in your project?

FYI, I found this error occurs when you are calling {{ menu_items }} directly, without invoking it through a template in {% main_menu template=...%}

For some reason, I haven't been able to replicate this issue at all since I opened this.
I doubt calling {{ menu_items }} directly is the issue because the context should already have been populated with the menu_items key. The issue might be in the code that populates the context.
Until I'm able to replicate this, I'll allow someone else to carry out investigations.

Personally, I think this issue should be closed, as there is not nearly enough information here to reproduce the issue. Please may I remind folks that this app is maintained entirely be volunteers (for free), none of whom are magical creatures who somehow know how you are using the app :) Please try to imagine all the information you'd need if you yourself were tasked with recreating/fixing the problem, and provide that level of information.

Good idea. I closed it before but it reopened somehow.


Static variables and typing

Hello,
what I would like to propose is not a change as such of the package, but a change in the way of using it.
I have recently been testing the package and it works great, I love it, but in general I hate having to create new instances of my controller whenever I want to use a variable.obs.
This hatred is not towards this package but in general in all flutter, I do not like to be creating instances in each file although sometimes it is necessary, and as I always hate it I usually use static variables that make it easier for me to use the variables globally without having than always be creating those instances.
That is why I wanted to suggest this change in the way of using it or that it be added as one more option to use for the package in the tutorial, since static variables are very powerful in that sense and more than one may like this option and decide like this by the use of the package (for example to my xD).
In addition, I would also like it to be explained that in the creation of the variables.obs it is not necessary to create it with the syntax of the tutorial so that there is no error by putting Int, that is:
var count = 0.obs;
but it can be created as follows:
RxInt count = 0.obs;
In this way, the strict Dart typing is still maintained, which is so useful and continues to specify that it is an Int but with the use of GetX, which I think is wonderful.
In this link I leave my github repository where I create the counter application using the method I mentioned above and I add the options to add, subtract and set the counter to 0, there are a few more lines but I simply wanted to demonstrate what I mention.
For the rest, this package has left me amazed with how good it is and how easy it is to implement, I was using bloc and provider and although they are very powerful it is a lot of trouble compared to getx what you have to do to start it and with getx is infinitely easier.
Thanks for creating this package, greetings!

using static variables in a GetXController is actually bad, since static variables are not disposed when the controller is removed from memory.
In general, you have 2 cases of reusing a variable

Share it with other classes (using GetXService)
Repeat it for every instance of a class (using mixins)

for example if I have an application with 5 views, each has its "separate" counter
mixin CounterMixin {
final counter = 0.obs;
}
class CounterController1 extends GetXController with CounterMixin   {
// other members here ...
}
class CounterController2 extends GetXController with CounterMixin   {
// other members here ...
}

But, if I have an application with 5 views, each "sharing" the same counter
class CounterService extends GetXService {
  final counter = 0.obs;
  // other members here ...
}

Hello @ahmednfwela,
Thanks for the examples, I did not know about the static variables and also I never thought about the mixin for this, not even knowing it before, what a head I have. Regarding the examples, the first one has served me very well, but the second one I do not quite understand how to apply it, if you could give an example, even with the test project that I had put in, I would appreciate it.
If you are busy there is no problem, the other example has worked for me too. Thanks again.

Think of the second scenario as having a "UserService" that stores info about the current logged in user.
In this case, each view will "share" the same user (rather than have a user for each view)
class UserService extends GetXService {
  final userInfo = Rxn<UserModel>();
}

Okay, now I understand, thank you.
I see that you have a lot of knowledge and since I am I would like to ask you if there is any way to do a double mixin, that is, I have tried this first:
class Variables {
  final RxInt counter = 0.obs;
}

class Variables2 {
  final RxInt counter2 = 0.obs;
}

class MyApp extends StatelessWidget with Variables with Variables2 {
// ....
}

crazy, yeah haha, it gave errors everywhere, but it was the easy test, then I tried this:
class Variables {
  final RxInt counter = 0.obs;
}

class Variables2 with Variables{
  final RxInt counter2 = 0.obs;
}

class MyApp extends StatelessWidget with Variables2 {
// ...
}

And this if it worked but when I tried to do the mixin with another class it gave me this error:

I don't know if it has to do with putting it in a class extended by StatelessWidget.
Apparently I can't double mixin this way, but is there a way to do it correctly?

mixins need to be declared as mixins
e.g.
mixin Variables {
  final RxInt counter = 0.obs;
}

mixin Variables2 {
  final RxInt counter2 = 0.obs;
}

class MyApp extends StatelessWidget with Variables, Variables2 {
// ....
}

or
mixin Variables {
  final RxInt counter = 0.obs;
}

mixin Variables2 on Variables {
  final RxInt counter2 = 0.obs;
}

class MyApp extends StatelessWidget with Variables2 {
// ...
}

Also here is the documentation on mixins : https://dart.dev/guides/language/language-tour#adding-features-to-a-class-mixins

Well, thanks, now if I understood everything, although in the link I saw that it says that unless you want to use the mixin as a normal class declare it with the keyword "mixin" instead of "class" and do not put a constructor, like this that my problem was not to put the commas to be able to put more mixins.
Thanks again for your good explanation.

Hi, thanks for your time for trying to build something new with Getx.
I agree with @ahmednfwela on the use of static variables within controllers. This can be dangerous because it prevents them from being disposed of properly.
Using mixins are a great way to respect DRY principles. You can also use inheritance to avoid repetition of code.
Well, I'm closing this, but if it's not enough, feel free to open other questions like this in the discussions tab.

Hello @jonataslaw,
I totally agree with respecting the DRY principles,
This is mainly why I created the question, because I don't like having to be creating so many instances of my classes, so thanks to both of you for the help and the clarification.
And without a doubt I will open other questions in order to help me improve or to help me again.
Thanks again and best regards.


New beaker image for evaluating OLMo-1.7 on Open-Instruct eval suite

updated the docker file & Added the new beaker image to README

This seems fine, why pin setuptools < 70 @nouhadziri?

@natolambert because it created an error with installing flash-attention: https://github.com/Dao-AILab/flash-attention/issues/453#issuecomment-2129831148
this is why, I added setuptools<70.0.0: https://github.com/Dao-AILab/flash-attention/issues/453#issuecomment-2129831148


Switch gh-pages/docs to use Material for MkDocs

This has all the features we want (including reusing the python markdown ecosystem, so we can modify it):
https://squidfunk.github.io/mkdocs-material/getting-started/
The setup for gh-pages is straightforward and we could even change it to happen only on successful release builds, if we wanted to only deploy docs when the release is green:
https://squidfunk.github.io/mkdocs-material/publishing-your-site/#with-github-actions
Various people have mentioned wanting something different from docs so getting switched to this as part of the reorganization would be a good idea as this gives us a lot more options for how to organize things. For example, we can use content tabs to avoid the need for so many foo_windows.md and foo_android.md files. There may still be a few useful ones, but in combination with a focus on linking out to source documentation vs duplicating our own (like linking to this to setup vulkan debugging on android, etc) we can cut down on our non-IREE-related docs quite a bit. This will make them easier to navigate for users, reduce discrepancy (you can clearly see today which people working on which things use which platforms, as the platform-specific docs all have slight different callouts that could be shared), and make it easier to maintain a smaller set of higher quality docs (vs copypasta/forking as we have now).

Ooh, this one looks neat and also powerful. I love the tab feature. :)

Ooh, this one looks neat and also powerful. I love the tab feature. :)

Yeah! It has search too, which will be super useful - right now it's easier to use crappy github search on our docs, and I never want to have to use github search :P

Yeah! It has search too, which will be super useful - right now it's easier to use crappy github search on our docs, and I never want to have to use github search :P


not an issue: tsconfig.json doesn't match npm package installed

The /node_modules/ng2-bootstrap/tsconfig.json files section specifies the following:
"files": [
"./typings/index.d.ts",
"./demo/custom-typings.d.ts",
"./ng2-bootstrap.ts"
]
however in VS2015 the build fails since expected folders are missing, in fact the entire demo and typings directories are missing from the version you get when running 'npm install ng2-bootstrap' and trying 'npm install https://github.com/valor-software/ng2-bootstrap.git' results in an installation with nothing but .md files - no javascript in the component folders (and also no demo folder). The build succeeds once the files entry is removed.

why do you care about tsconfig from npm?
ps: just did fresh install of ng2-bootstrap
all in place

why do you care about tsconfig from npm?
Because the tsconfig referencing non-existent directories causes my build to fail.
ps: just did fresh install of ng2-bootstrap
all in place
Do you mean you added the missing demo and typings directories to your distribution?

If you want demo page you need to clone repository.
If you want to use ng2-bootstrap you don't need it

Why is this closed?  This is an actual issue.
You shouldn't be including items from your build process in the NPM module, especially if it breaks other peoples builds.
I'm encountering the same issue.  The way Visual Studio handles typescript is it parses through it's solution folder for ANY tsconfig (even folders excluded in your root level tsconfig).  Since the package includes a  tsconfig.json, with folder and file references that are NOT in the release, the packages is causing build failures for Visual Studio users.
Seeing as how these files have no use for people using the NPM package (they should only care about the *.js and *.d.ts files), why are they included at all?  There are a bunch of files that are of no help to the user at the root level of the package (tsconfig, protractor.conf, gulpfile.js, just a bunch of build stuff).

+1 Reopen this, it is an issue with the latest build still and Visual Studio
I just wasted an hour trying to figure out what the cause of my error messages was.

I have no problems with VS Code...

@valorkin should we exclude the tsconfig.json from the npm package? Would it do any harm?


Connection refused by npm to install Create-React-App

Some how, the npm doesn't allow me to install create-react-app package. After some momment, the installation stoped by the timeout and it returns that the connection has been refused to the server.
npm ERR! request to https://registry.npmjs.org/create-react-app failed, reason: connect EHOSTUNREACH 2606:4700::6810:1023:443

I dont think this is a problem with npm or create-react-app but rather with your network configuration.
Can you access npmjs.org or npmjs.com in your browser?

i have also these problem when run npm init react-app my-app, i had try to use vpn over my connection but didn't work, also try via yarn but didn't help.

Hey, I found my error. Just switch to another network, cause I'm connecting to my Wifi-forwarder and the internet logics their is kinda dumb. Just change the Wifi.

Hi, for me that’s not true beacuse i change my connection and there is not different , i found my problem for init create-react-app with yarn or npm, that was for my npm registration url for private url, so i comment it from npm config and was solved for me,

Hey, I dunno. But when I change my Wifi, it just fix it magicly :)))

don't touch it if it's working :) ;)

i am having the same issue


Does not work

I have a very simple example like this, and it does not work with version 1.0
import React, { Component } from 'react';
import {Router, Route} from 'react-router';

class App extends Component {
  render() {
    return (

App

        {this.props.children}

    );
  }
}

class Sub extends Component {
  render() {
    return (

Sub

    );
  }
}

React.render(
  (<Router>
    <Route path='/' component={App}>
      <Route path='sub' component={Sub} />
    </Route>
  </Router>),
  document.getElementById('content')
);

The error I got is TypeError: undefined is not an object (evaluating 'type.toUpperCase') (anonymous function)bundle.js:12373 webpack-dev-server.js:1:973.

Ohhhhh!!! I just realized that the downloaded version is 0.13.3. When I was reading through the doc, I thought the new version has been official.


User-Agent haeder is not set properly

The User-Agent header is always incorrectly set to contentful-management.java/${project.version} .

Reported incorrectly, actually from an old version.


Make sleeve/fastdp status visible in Prometheus

Feature Request
Our Problem
We had a firewall rule in our test environment that allowed ipsec. This wasn't present in production. As a result weave downgraded all the connections to sleeve, leading to severe latency issues.
The request
Would it be possible to expose the sleeve/fastdp state in Prometheus? We'd like to add alerting so we can't be bitten by this situation in future without being told about it.

I think you should be able to monitor for weave_flows going to zero, or maybe absent(weave_flows)

But directly exposing the state is a great idea too.

Ah, thanks for the tip. Looks like that would be sufficient right now to give us an idea of status :)


Really long dropdowns in modal can't scroll

components: Modal, Dropdown
reactstrap version #8.0.0
import method es
react version #16.8.6
bootstrap version #4.3.1

What is happening?
I have a Dropdown button in a Modal dialogue that has about 70 choices in it.  It is really long and the user needs to scroll to see the bottom choices.  However, the button choices aren't scrolling.  I've tried both with and without the scrollable=true on the modal setting.  Each one has undesirable behavior.
Without scrollable property - Nothing scrolls at all; can't get to bottom of drop down list
With scrollable property - It scrolls the content of the modal for about half the height of the drop down list, and then scrolls/jumps (on some screens) down the list
What should be happening?
I'd like to have either the modal or drop down button list scroll when the user scrolls the mouse.  I'm open to other suggestions on how to accomplish this as there are many layers of content on top of each other and this may be hard to correct.
Steps to reproduce issue
Go to Stackblitz (below).  For each of the two examples click the button to open the modal, then click the dropdown to open the list.  Try to scroll to the bottom of the list.
Error message in console
No errors
Code
https://stackblitz.com/edit/react-tmhtw7

same issue here, even onClick not working correctly with scrollable content

I was able to fix this with the modifiers attribute.  See (currently incorrect) docs for modifiers on dropdowns page.  I submitted a docs bug #1710 to fix a small issue.

I am facing a similar issue. I have posted it in this StackOverflow link


Support Vue.js as a Vue plugin

Vue plugin reference
Then the SDK can be used to develope a Vue app (or Vue components), with this.$bot or syntaxes like this.

why don't those guys mixin https://vuejs.org/v2/guide/mixins.html by
themselves?
momocow<EMAIL_ADDRESS>于2018年10月25日周四 上午11:36写道：

Vue plugin reference https://vuejs.org/v2/guide/plugins.html
Then the SDK can be used to develope a Vue app (or Vue components), with
this.$bot or syntaxes like this.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/momocow/node-cq-websocket/issues/37, or mute the
thread
https://github.com/notifications/unsubscribe-auth/ARha8WFvL3X6dGcfMmgrUGiKKCERLXSJks5uoTG6gaJpZM4X5bxL
.


Refs #28404 -- Split test_null_display_for_field() test.

@e11bits Thanks :+1: Welcome aboard :boat:


Escape HTML tags in plain_text_emails_converted_to_html.md

Description of the change: Wrap HTML tags in Markdown code blocks
Reason for the change: They were rendering as tags, which was horrible
@ksigler7

 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.

hey @SLaks, that does look bad, so thanks for the catch, and thanks for the fix! If you can go ahead and sign the CLA, I can merge this right away.

@SLaks I'd love to be able to merge this. Can you please sign the CLA?

I have been instructed that I am not able to sign the SendGrid CLA in its present form.

Hey, @SLaks -
We are currently talking to your legal team to figure out what we can do. Sorry about this!

Hey @SLaks - thanks again for this pull request. I am going to close this for now, since it's been sitting here for more than 90 days. If our legal team does work things out, we can reopen it.


🧹 Better handling of exceptions in get_email_code

Refactored the sign_in method for a more modular approach
Changing logger.error instances to exceptions in get_email_code

Resolves #362

Nice! Does this also handle the issue of making the login flow more dynamic based on what is being prompted for?

@mrooney no, not yet, though it does make that project clearer. I wanted to get this done first before I made the flow more dynamic.

@mrooney back over to you!  Once this merges, I'll work on the more dynamic sign-in flow.

@burkematthew okay, I was having trouble following the diff, but I think I am understanding it better on a second read. So those changes aren't related to the PR title directly, but is basically breaking up one super long function into little parts, that are then called in the same order as before? And in the future, we can add more detection to decide when to call each one?
Are there any potential regressions you could imagine with this? It seems hard to test manually because we can't necessarily control which flow/UI we get 100%, but were you able to test it with the various switches we can provide?

@mrooney yes I know it made the main change a little more unclear, but I thought it helped understand where exceptions could arise in the overall login flow.
I will go through some more testing iterations to verify, but it all worked without issue when I was working on this. And really there shouldn't be any regressions unless I just copied/compartmentalized the flow wrong. Again, I'll go through a few more times to verify it's all as expected.

@mrooney all the tests I ran looked good; no issues.
@jaron-l anything else you want to add here?

FYI, once we get this merged, I'll go ahead and start on the more dynamic MFA handling.

FYI, once we get this merged, I'll go ahead and start on the more dynamic MFA handling.

@burkematthew got it, LGTM, approved and merged! I want to unblock you but if @jaron-l has any concerns please do bring them up and we can address them in the next PR :)

@burkematthew got it, LGTM, approved and merged! I want to unblock you but if @jaron-l has any concerns please do bring them up and we can address them in the next PR :)


 I use windows 10

I had made a game for android and I put some AdMob and then I exported the apk file. I tried it on my phone, it worked as well on others phone. When I tried to publish my app it gave an error "You have to cancel debug and you uploaded a file that was signed on debugging" I tried to uncheck the signed but it gave another error I also tried to turn off export with debugging but then it gave an error when it was exporting. Also, it says in comments after exporting that jarsigner signature does not include a timestamp. I have no idea what to do. I have been trying to solve this problem for two weeks but I  have done nothing. I am very sad and I can't find any documentation. PLEASE HELP :(

This is a question more suited for the Q&A, open one there with more details about the error (which seems to be related to not exporting the game signed with release key).
https://godotengine.org/qa/

Please ask this question on one of our other community channels, this is not an engine issue.


Missing points from gnocchi drew as zeros

When there are missing points from gnocchi, e.g. there are no data with the granularity in the metric, the missing values are represented as 0 value. This makes the graphs awkward, e.g. when ceilometer samples the CPU usage in 10 minutes interval, but using the 5 minutes aggregation in Gnocchi, the graph looks like a sawtooth wave. I think missing values should be null and the null values can be interpolated then.

I have found that periodically, gnocchi does cleanup the data. The zero values are dropped and the sawtooth wave is only visible for the last six hours of active data collection. Perhaps @sileht can provide some insight into how we would increase the frequency of this cleanup. I would also suggest including a set of reference config, yaml, and ini files for Gnocchi and Ceilometer in the documentation. This would simplify deployment.

what version of gnocchi are you using? gnocchi does not backfill missing data (unless you explicitly provide a backfill value when aggregating across multiple series)

I think we should allow people to select the behavior with a tick box.


Proposal for LANG-1421

replace test annotation and assertions in ObjectUtilsTest with junit5
implementation of allNull and anyNull

Coverage increased (+0.003%) to 95.255% when pulling 4270dfcdbf34c24323034ad13d744cfe71d05137 on sparsick:1421-anyNull into 910f5427b37999bda04a7768f507f7baae34a118 on apache:master.

I closed this PR because the method anyNull was already implemented and merged in commit https://github.com/apache/commons-lang/commit/ee6c682ed5fa8c1b33aa1d52a1e2f088b0191b6b


cytoscape.js version spec in bower.json breaks downstream builds

I'm using cytoscape.js-cose-bilkent project transitively. In the library I'm using, it has a dependency on version "^1.3.6", which is currently resolving to 1.5.2. Unfortuntely, this version has a depedency on cytoscape.js with version specification "^2.4.0 | ^3.0.0", which is not resolving for me (bower version 1.3.12 is giving me: bower ENORESTARGET  Tag/branch ^2.4.0 | ^3.0.0 does not exist). Is this a version specification error, or maybe my bower version is just too old, or maybe there's something else going on?

@mj3cheun This needs ||

@maxkfranz Yup sorry, fixed pushed and ready for patch publish

The fix is published on version 1.5.3. Try updating, thanks.

Awesome! Thanks.


Update the default 404

What type of suggestions?
Unclear Documentation
What page is concerned?
No response
What is the issue?
Update the default 404 for something better.
Code of Conduct

[X] I agree to follow this project's Code of Conduct

https://github.com/facebook/docusaurus/discussions/6030

Duplicate of a newer issue https://github.com/kubefirst/docs/issues/721 where it's better explained.


php-pecl-redis: "link parse error, delete link" fills up logs

I've got lots of lines like this in the ssdb.log:
2015-02-21 13:47:03.696 [WARN ] server.cpp(245): fd: 19, link parse error, delete link
Even a very simple session (from php-pecl-redis tcpdump) produces this error:
telnet server 8888
Trying x.x.x.x...
Connected to x.x.x.x.
Escape character is '^]'.
*2
$3
GET
$3
FOO
$-1
QUIT
Connection closed by foreign host.

After searching the code (src/net/link.cpp) I figured out that the QUIT command (used by php-pecl-redis 2.2.5-1.el7) produces this error. I'm not a programmer so I'm not able to fix this issue (from link.cpp it seems that there is no designated way to handle the QUIT command or to close the link without an error).

ok, I've patched php-pecl-redis to only use the newer RESP protocol for the QUIT-cmd as well. Now ssdb does not produce any errors anymore.
--- redis-2.2.5/library.c.orig	2014-03-19 16:41:37.000000000 +0100
+++ redis-2.2.5/library.c	2015-02-21 20:58:30.453621088 +0100
@@ -1232,7 +1232,7 @@
     redis_sock->dbNumber = 0;
     if (redis_sock->stream != NULL) {
 			if (!redis_sock->persistent) {
-				redis_sock_write(redis_sock, "QUIT" _NL, sizeof("QUIT" _NL) - 1 TSRMLS_CC);
+				redis_sock_write(redis_sock, "*1" _NL "$4" _NL "QUIT" _NL, sizeof("*1" _NL "$4" _NL "QUIT" _NL) - 1 TSRMLS_CC);
 			}

 			redis_sock->status = REDIS_SOCK_STATUS_DISCONNECTED;

Hi, @neverloop, yes, ssdb ONLY support the newer redis protocol. You are doing the right thing to patch php-pecl-redis!


apt-get update fails because of dokku alt

Reading package lists... Error!
E: Encountered a section with no Package: header
E: Problem with MergeList /var/lib/apt/lists/dokku-alt.github.io_dokku-alt_en
E: The package lists or status file could not be parsed or opened.
When I look at /var/lib/apt/lists/dokku-alt.github.io_dokku-alt_en, I see HTML from GitHub about a page not being there but may take up to 30 minutes.

Having the same issue as well :(

I did clean up gh-pages. It should fix your issues.
It should be sufficient to do:
apt-get update -y
But if not, please:
rm -rf /var/lib/apt/lists/dokku-alt.github.io_dokku-alt_*
Thanks!

Totally helped! Thanks!


On Failed request Cookie is deleted

Hi,
I see that when I have any kind of failure then the cookie for authentication stored for the session seems to be cleaned, or at least this is what happens to me. After a call that fails the next calls will not work again.
Am I doing something wrong?

That sounds like expected behavior by NSURLConnection. My advice would be to send an Authorization HTTP header with each request. AFHTTPClient makes it convenient to persist credentials across requests to the same URL, so you may want to check that out.


Setting up

Hi, I've finally got around to trying out the resource provider 2.0.
I tried porting it over based on the readme here and your medium article for my project and it didn't seem to be working, was getting this error:
Execution failed for task ':generateDevelopmentDebugResourceProvider'. A problem occurred starting process 'command 'unzip''
( Don't know if it's because I'm using multiple build flavours? )
So I tried it in a completely new blank android project to see if that worked and the build succeeded but the ResourceProvider class wasn't getting generated at all.
I don't know if I'm just setting it up wrong but some guidance would be much appreciated. Even just a sample project with the new plugin working as intended would be helpful, so I have a point of reference to go from.
Thanks

What happens if you just go to the command line and type unzip

There's a sample project here: https://github.com/Comcast/resourceprovider-utils

Yeah it doesn't recognize the unzip command, is that an in-built windows command?
If so do you know where abouts the executable is so I can add it to my path, googling hasn't helped me out much

ah whoops, I only tested on mac and linux.

Ok, I think I can swap the unzip command out for "jar xf"
Can you verify that the "jar" command works on windows?

On it's own "jar" doesn't work, but "java -jar" does

can you try to find the jar exe?  outlined here: https://stackoverflow.com/a/8453600/502463

Looked through it, looks like the jar exe's location depends on how you have the JDK setup.
With that post the JDK (and the jar exe) is part of the java install, but looking at my personal setup, it's using the embedded JDK/JRE with the jar exe at C:\Program Files\Android\Android Studio\jre\bin
I'm guessing the right place to look would be the same JDK location set in the Project Structure in Android Studio, but I have no idea if that's something you can access from a plugin.
I would say you could get the value of the JAVA_HOME env variable but looks like it isn't set if you're using the embedded jdk

I can switch the plugin to use the jar command, you'll just need to either find it and add it to your path, install the JDK, or create an alias for it.

If that's the only solution to this then it'll have to do.
Thanks for looking into this so quickly, much appreciated

@DantheCodingGui  can you please retest with version 1.3.1?  Again, you'll need to have the jar command on your system PATH, so you might have to install the JDK/JRE

Good news, with jar added to the path I'm not getting any unzip errors.
Bad news, looks like it's failing on another command, 'bash' (I'm gonna guess that won't work on windows)

D'oh.  Thanks for being the guinnea pig for windows compatibility.  So windows actually does have a bash shell, you just have to turn it on.  You can try this?
https://www.laptopmag.com/articles/use-bash-shell-windows-10

No Problem :)
Installed bash, command works in a windows cmd shell. I'm getting "Process 'command 'bash'' finished with non-zero exit value 127"
I will say though, even if we could get bash to work I'd appreciate it if it was a shorter term solution and would ask if you could look into any other potential ways of getting the plugin working. If I were the only developer on my project it would be one thing, but it's an enterprise app so not ideal with a team of developers.

I'd love to develop a solution for you, I just don't have access to a windows machine or vm.  I'm working on getting one setup.
the bash command I'm using is to organize the expanded R file classes into a text file that I then use to generate the code.  the bash command is:
find ${rClassDir.absolutePath} -name '*.class' | xargs javap -p > rclass.txt
if you want to translate that into a windows shell command I can implement it for you.  I just have no way to test it.

@DantheCodingGui I think I have a fix for you.... can you confirm that the "javap" command works from your windows shell?

@dapp Yep it does, same dir as jar.exe so already in my path

Awesome, I should have a fix for you by eod

Look forward to it!

Just publish v1.3.2, give it a shot and see if it works for you.  I still haven't been able to test on windows, but I eliminated the bash command, and it's tested and working for me on my mac.

Success!!...kinda
With a blank project i'm getting Resource Provider generated, having some issues with my existing project so i'll have to do some digging. Also found a few other issues but i'll open them separately.


Themes: changing theme colors in settings running out of sources does not update color anymore

Not sure why.

Not able to reproduce.

Running from sources,
Set

	"workbench.colorCustomizations": {
		"statusBar.background": "#ff0011"
	}

save settings
status bar color changes

Maybe you have workspace settings?
Best ist to debug it... browser/workbenchThemeService

@aeschli on macOS?

An issue with the file watcher on my end.


Editing only sometimes re-calculates the answer

After editing the radio buttons (gender), the answer is re-calculated.
but, if i change the number fields (age, years working, years in country) it is not recalculated
Notes:
A request will need to be sent to OpenFisca every time a change is requested.

fixed in #139


missing words in phrase

"or by taking action an external FIDO2 device" doesn't make sense; perhaps "or by taking an action like inserting an external FIDO2 device"

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

ID: 90cabf96-7b2b-9eb6-c428-ff4b44a97312
Version Independent ID: 922d390b-52b6-db2a-0aab-f338e8c21b85
Content: Dev guide - Web Authentication - Microsoft Edge Development
Content Source: microsoft-edge/dev-guide/windows-integration/web-authentication.md
Product: microsoft-edge
GitHub Login: @erikadoyle
Microsoft Alias: edoyle

I agree it could be clearer.
What I was trying to convey: Even if the FIDO device is already inserted, the user will need to take action on the device (like touch the button or scan their finger on the device) to confirm they are present. This behavior is to prevent malware from silently using your FIDO device.

How about "or by taking action [on] an external FIDO2 device"? I'll update it. Thanks @marypcbuk and @idamlaj !


Adding support for Windows

Feature Request
I tried pip installing Memray on my windows PC but I failed. The error showed that "Memray only supports Linux platforms."
By any chance is there a way of adding support for windows? I'm happy to work on a windows port if it's in the cards (and if I get the hang of the project internals)

Hi, I tried installing memray on a Windows PC and it failed with error:
RuntimeError: memray does not support this platform (win32)

Is this resolved?

No, it's not. We don't support Windows and it's unlikely that we will ever do. Please check https://bloomberg.github.io/memray/supported_environments.html#supported-operating-systems for more info

I saw, thank you