Utopia-445/448: config feature flag endpoint

Description
This PR includes the following proposed change(s):

add new endpoint to read feature flag json
adding a volume and volumeMount to the API deployment config for openshift deployments

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Refactoring / Documentation
[ ] Version change

How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
Development Dependency Working Agreement

[x] My code DOES NOT include the importing of new dependencies into the DPIA ecosystem
[ ] My code DOES include the importing of new dependencies into the DPIA ecosystem
If new dependencies are being introduced to the DPIA ecosystem:
[ ] The functionality of the dependency drastically reduces code complexity and makes my changes more easily maintainable and readible
[ ] The dependency being introduced does not contain multiple layers of nested dependencies introducing maintainability complexity to the DPIA ecosystem

Frontend Development Changes

[x] N/A
[ ] I have performed a self-review of my own code
[ ] I have made corresponding changes to project documentation or diagrams that reflect my changes
[ ] New and existing unit tests pass locally with my changes
[ ] My code follows Airbnb React Style Guidelines

API Development Changes

[ ] N/A
[x] I have performed a self-review of my own code
[ ] My code follows standards and practices outlined in the BC Government API Development Guidelines
[ ] New and existing unit tests pass locally with my changes
[ ] My changes includes Swagger documentation updates that reflect the changes I am introducing

Definition of Done

@binggaofw @kushal-arora-fw I've added the volume and volumeMount changes to the API deployment config on your branch. feel free to review.

I've updated the PR name to reflect that UTOPIA 448 is also part of this change


Merge branch-UG-Marcus-V1.3 with Master

Codecov Report
Base: 55.11% // Head: 55.11% // No change to project coverage :thumbsup:

Coverage data is based on head (3a8d42d) compared to base (061bd5d).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff            @@
##             master     #136   +/-   ##
=========================================
  Coverage     55.11%   55.11%
  Complexity      466      466
=========================================
  Files           101      101
  Lines          2025     2025
  Branches        232      232
=========================================
  Hits           1116     1116
  Misses          841      841
  Partials         68       68

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

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


Translate Chinese

New language
Chinese
Additional remarks
No response

There are a lot of options here. Which one(s) do you need?

zh_CN

Thanks @zxjrm Chinese Simplified has been added. Thanks for helping out with the project!

@zxjrm unbelievable effort. You have translated the whole lot already! Thanks! This should appear in the next release.


[gdnative-sys] Pass cfg!(target_arch) for macOS

Add pass condition for macOS.
Thanks to nice rust-toolchain, it just works on both x86_64 and Apple silicon
Issue #981
Tested on

macOS 12.5, Apple M1 and x86_64

Thanks!


Allows parsing of YAML language files for reports.

Checks for a file extension of .yml or .yaml, and parses to JSON.
This is work to fix: https://github.com/kazupon/vue-cli-plugin-i18n/issues/25
Primarily allows the use of: vue-cli-service i18n:report --locales './src/i18n/locales/**/*.?(json|yaml|yml)'

Well done, @centerorbit!
Sorry for the late review.

Thanks! And no problem on the delay. Just glad I could help.


Broken Link in the "Service Principal for CI/CD" document

Broken Link in the "Service Principal for CI/CD" document
The Basic Python Template Link is broken in this paragraph of the page- https://learn.microsoft.com/en-us/azure/databricks/dev-tools/ci-cd/ci-cd-sp#set-up-azure-pipelines
The page shows 404- Not Found Error

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

ID: f6ce5919-f78e-7dca-96b0-a556aca82671
Version Independent ID: f6ce5919-f78e-7dca-96b0-a556aca82671
Content: Service principals for CI/CD - Azure Databricks
Content Source: databricks/dev-tools/ci-cd/ci-cd-sp.md
Service: azure-databricks
GitHub Login: @mssaperla
Microsoft Alias: saperla

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

@manjitsin
Thanks for your feedback! I've assigned this issue to the author who will investigate and update as appropriate.
@mssaperla
Please Review this.

Thanks for your dedication to our documentation. Unfortunately, we have been unable to review your issue and apologize for the delayed response. The requested updates have not yet been made. The timeline for resolution varies based on resourcing. We've created an internal work item (DOC-7184) to incorporate your suggestions. We are closing this issue for now, but feel free to comment here as necessary.
#please-close

#please-close


Added goa middleware to extract the token when present

related to: https://github.com/fabric8-services/fabric8-wit/issues/1502

@hectorj2f snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1555-1

@hectorj2f snapshot fabric8-wit image is available for testing.  docker pull docker.io/fabric8/fabric8-wit:SNAPSHOT-PR-1555-2

@aslakknutsen thanks for your review


Optimize delete_hierarchy_references for MySQL

For my setup when hierarchy table have over million rows, the original query takes over 5 sec making the rebuild! operation impossible; Proposed query takes less than 1ms on MySQL.
I'm not sure how to make the code aware of the DB engine and use the right query, feel free to patch a better solution.

Please re-open when conflicts have been resolved and all tests pass.


Support Multiple Query Include Values

Very much liking the package! I think we'll move to using it given it's complete generated type safety approach that should always align with the actual BigCommerce APIs. Well done!
As for this issue... It'd be great to allow multiple "include" values to be used:
  const product = await bc.v3.GET('/catalog/products/{product_id}', {
    params: {
      path: { product_id: 1 },
      header: { Accept: 'application/json' },
      query: { include: 'variants,images,primary_image' }, // this currently throws an error
    },
  });

If you're able to target the query "include" values and make them their own type I believe you could do something like below:
// generate stand alone types
type GetProductByIdQueryIncludeValue = "variants" | "images" | "custom_fields" | "bulk_pricing_rules" | "primary_image" | "modifiers" | "options" | "videos";
type GetProductByIdQueryInclude = `${GetProductByIdQueryIncludeValue},${GetProductByIdQueryIncludeValue}` | GetProductByIdQueryIncludeValue;

// rest operations
export interface operations {
  getProductById: {
    parameters: {
      query?: {
        include?: GetProductByIdQueryInclude; // use our generated stand-alone type
      };
    };
  };
};

I'm sure there's a generic that can be written to improve things but I think you get the point.
Thanks!

Thanks so much for the feedback, Aaron! Very happy to hear that the client's been of use to you 🙂
Apologies for the delay in getting back to you, just got back from a couple of weeks on travel for work. I like your suggestion a lot, and will play around with some generics/the generate script to see if I can automate this! Hope to get back to you soon 👍

Hi @nowlena!
I opened a pull request in the bigcommerce/api-specs repository that should fix the issue you raised:
https://github.com/bigcommerce/api-specs/pull/1527
If the PR is accepted, the include query parameter will be updated to accept a value of string[], such as:
const product = await bc.v3.GET("/catalog/products/{product_id}", {
  params: {
    path: { product_id: 77 },
    header: { Accept: "application/json" },
    query: { include: ["options", "images", "primary_image", "variants"] },
  },
});

Before (error):

After (no error):

I wanted to first try to fix the root cause of this issue at its source, hoping that the fix may help other developers using the api-specs repo for their own use cases; but, in the event that my PR can't be merged due to some unintended side effect, I'll re-explore a workaround implemented directly in this library like the one you suggested 🙂

Hi again, @nowlena! 👋
After a good bit of hard work from the BigCommerce DevDocs team, the team has gone through and fixed this problem for all query parameters in bigcommerce/docs#221.
To incorporate this work, I just released<EMAIL_ADDRESS>to NPM, and after updating locally, I'm able to send multiple query parameters as a typesafe array:
bc.v3
  .GET("/catalog/products/{product_id}", {
    params: {
      path: { product_id: 77 },
      header: { Accept: "application/json" },
      query: { include: ["variants", "images", "primary_image"] },
    },
  })
  .then((res) => {
    console.log(res.data);
  });

If you have a chance, feel free to test this on your end and let me know if you run into any problems! I'll mark this issue as completed in a couple weeks if I don't hear back.
All the best 🍻

Works perfect!
Thank you and the other BC members who helped out, what a great DX!


Pass visit_id, scan_number and instrument as part of visit metadata

We require knowing the instrument, scan_number and visit_id for passing information into the central processing stream.
This information may be recoverable from the attach_metadata decorator and must be preserved when handling for visit metadata is changed.

So you want this in the start document?

Yes. I've made the relevant ticket in dodal since the metadata attach is there (issue 666 get)
https://github.com/DiamondLightSource/dodal/issues/666
@tpoliaw needs this for forwarding to central msgbus

Arguably we should have
{
        "name": "start",
        "doc": {
            "uid": "44ca4429-ff8c-4495-8432-058b87c7f24c",
            "scan_id": 755659,
            "data_session": "cm12345-6"
            "instrument": "i22"
        }
    }

From which we can recover everything, and instrument is the only "non-standard" key on the StartDocument. Just need to integrate with the hooks for ScanNumber and DataSession.

@jacobfilik what are your thoughts on this?

I've linked to @tpoliaw as he was working on forwarding messages to the central RMQ instance.

Scan number, visit and if possible scan file path (or paths?) would be a good start. Associated DAQ ticket is here

We won't know the .h5 or .nxs file paths at the time the StartDocument is emitted: and those files won't have been created yet, but we could have all of them at the time of the StopDocument being emitted at the end of the scan?
We can guess where they are going to be, but the files won't be on disc yet.

I think being in the stop document would be fine. The processing won't be able to run before the scan is complete anyway.


Add SimpleMotorBase

Add abstract IntakeBase utilizing SpeedControllerGroups. forward(), backward(), stop() methods included.

Addresses request for roller intakes in #7

Abstract SimpleMotorBase for use with any motor groups.


Update headers for main screens (after send/receive redesign)

Change header's view on main, utxo, addresses and settings screens
https://zpl.io/bPxdmKL
https://zpl.io/VDBLM3W
https://zpl.io/bABYld8
https://zpl.io/25OMeK8

checked


Initialise mediation functions

This PR is not ready yet, but it was opened to begin discussion around mediation analysis for mia. Here, two new main functions are introduced: mediateColData and mediateAssay, both located in R/mediate.R. They depend on the mediation package and if this is not ideal these functions could be placed in an extension of mia.
mediateColData provides an easy way to run mediation analysis between 3 variables in the colData, while mediateAssay allows to run multiple mediation models for every taxon in an assay, or for every component of a reducedDim, and subsequently adjust significance for multiple comparison. They both leverage the mediation::mediate function under the hood.
mediateColData takes a tse object, three colData variables for outcome, treatment and mediator, respectively, plus other covariates from the colData and other arguments supported by mediation::mediate. It returns the output of the mediation model (similar to the output of lm or glm). Below is a self-contained example of how it works:
library(mia)
library(microbiomeDataSets)
library(mediation)
library(dplyr)
source("R/mediate.R")

tse <- OKeefeDSData()

tse <- transformAssay(tse,
                      method = "relabundance")

tse <- estimateDiversity(tse,
                         index = "shannon",
                         assay.type = "relabundance")

colData(tse)$bmi_group <- as.numeric(tse$bmi_group)

med_out <- mediateColData(tse,
                          outcome = "bmi_group",
                          treatment = "nationality",
                          mediator = "shannon",
                          covariates = "timepoint.within.group",
                          boot = TRUE, sims = 1000)

summary(med_out)

# Causal Mediation Analysis
#
# Nonparametric Bootstrap Confidence Intervals with the Percentile Method
#
# (Inference Conditional on the Covariate Values Specified in `covariates')
#
#                Estimate 95% CI Lower 95% CI Upper p-value
# ACME             0.1086       0.0344         0.19   0.004 **
# ADE             -0.4580      -0.6726        -0.24  <2e-16 ***
# Total Effect    -0.3493      -0.5484        -0.13  <2e-16 ***
# Prop. Mediated  -0.3110      -0.9781        -0.08   0.004 **
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#
# Sample Size Used: 222
#
#
# Simulations: 1000

plot(med_out)

mediateAssay iterates over the same code used for mediateColData. It takes the extra arguments assay.type and dim.type. If one of them is correctly specified, it runs mediation::mediate for every row of an assay or every column of a reducedDim slot, respectively. As output, it returns a dataframe with effect sizes and p-values for every taxon/component. Below is an example that requires variables from the previous example above:
tse <- transformAssay(tse,
                      method = "clr",
                      pseudocount = 1)

tse <- tse[ , tse$timepoint.within.group == 2]

med_res <- mediateAssay(tse,
                        outcome = "bmi_group",
                        treatment = "nationality",
                        assay.type = "clr",
                        boot = TRUE, sims = 300)

med_res %>%
  filter(ACME_adjpval > 0.05) %>%
  head() %>%
  knitr::kable()

Treatment
Mediator
Outcome
ACME_estimate
ADE_estimate
ACME_pval
ADE_pval
ACME_adjpval
ADE_adjpval
ACME_CI_lower
ADE_CI_lower

nationality
Uncultured Mollicutes
bmi_group
-0.1700134
-0.1986718
0.0066667
0.2133333
0.2888889
0.2133333
-0.0469092
0.1062497

nationality
Eubacterium ventriosum et rel.
bmi_group
-0.1087084
-0.2599768
0.0200000
0.0866667
0.4814815
0.0901333
-0.0100311
0.0607181

nationality
Eubacterium cylindroides et rel.
bmi_group
0.1010478
-0.4697330
0.0200000
0.0133333
0.4814815
0.0279570
0.2347390
-0.1674882

nationality
Lactobacillus salivarius et rel.
bmi_group
0.0816559
-0.4503411
0.0266667
0.0066667
0.4814815
0.0222222
0.1957793
-0.1609730

nationality
Bacteroides uniformis et rel.
bmi_group
0.2371214
-0.6058066
0.0266667
0.0133333
0.4814815
0.0279570
0.4490582
-0.2087500

nationality
Uncultured Selenomonadaceae
bmi_group
0.1084270
-0.4771122
0.0333333
0.0133333
0.4814815
0.0279570
0.2127692
-0.1225544

nationality
Parabacteroides distasonis et rel.
bmi_group
0.2731733
-0.6418585
0.0333333
0.0000000
0.4814815
0.0000000
0.5877062
-0.2688401

nationality
Catenibacterium mitsuokai et rel.
bmi_group
-0.0810081
-0.2876771
0.0466667
0.0800000
0.5515152
0.0845528
-0.0009472
0.0257356

More examples can be found in this repository

Great.

Input types: splitting functionality by colData and assay is one option. Another option is to split by univariate vs. multivariate. In such case you could do something like mediate(tse, outcome = ..., treatment = "nationality", assay.type = "clr", ...) and there the "outcome" could refer to colData variable, or to one assay feature (taxon). This would be recognized automatically. It is important to have a chance to run mediation also for colData but then the question is, what is the added value compared to just running the basic mediate::mediation function from the original package on just a single variable from colData.. And why not allow situations where multiple comparisons could be run for colData.. (e.g. if there are different derived indices in addition to Shannon diversity).. This is a more general design aspect of mia and might deserve some thought. On the other hand perhaps we could just go with this colData / assay split first and improve later.

Output: @TuomasBorman might comment but have been wondering if these functions should directly return augmented TreeSE objects as output. BUt I am not sure if it is feasible here. At least the examples should show how to add relevant pats of the results to the TreeSE object

Support for custom mediation functions. If possible, it would be idea to allow users to input also custom mediation functions. This will greately facilitate later innovation and comparisons. In practice, we should define how the inputs and ouputs of such function should look like and as long as the function follows those standards it could be anything. For instance, we have allow the "FUN" argument to insert entirely new dissimilarity measures in functions such as runNMDS: https://microbiome.github.io/mia/reference/runNMDS.html

We need an argument to choose from different methods, even if this would first provide only one method. Some other methods might like to take the entire assay rather than run for loop over features.

Looks nice!

I think it is better to have one function for one task if possible. For example, now we have 2 functions for cross-correlation which might just confuse user.

In this case one options would be getMediate(tse, outcome = "disease", mediator = "counts", treatment = "diet", outcome.type = NULL, mediator.type = NULL, treatment.type = NULL), where outcome,mediatorand treatment parameters are automatically fetched from colData/assay/reducedDim. -> give error if overlapping name --> user can manually specify with *type where it is searched

Yes, it could be added to metadata but I don't really see additional value. However, the function name could be getMediate to highlight that it does not return TreeSE.  (add* would return)

Thank you for the comments!
@TuomasBorman, if I understand correctly, you are suggesting that mediateColData and mediateAssay should be combined into a single function, right? It sounds like it would simplify the code, and make it possible to use single or multiple variables for any of the outcome, mediator and treatment arguments.
But then how should we standardise the output? Because when multiple analyses are run (mediateAssay), the most practical output is a data.frame of model statistics for every combination, whereas for a single analysis (mediateColData), the most informative output is the trained model itself (so you can do summary or plot on it).

@antagomir, so you would consider this implementation with mediation::mediate like one option out of many, right? And then other mediation functions such as the hdmed ones could be specified with FUN = ...? This would definitely make this function more generic and complete.
In this case, how would you control the suitability of the custom method? For example, the hdmed (high-dimensional mediation) funs are only appropriate for high-dimensional data like the assay (mediateAssay), but not for colData variables (mediateColData). Also for this aspect having two separate functions might be more convenient(?)

Well in fact also the arguments may be very different for different methods. That's why there is for instance runMDS, runNMDS, etc. and not a single runOrdination..  so perhaps it is not good to go very generic for now. Let's just finalize this for the mediation package.
Regarding comment from TB above: it is recommened in general that the function output should always be the same, regardless of the inputs. We could have that, and in addition the user could choose to include the resulting model/s in metadata slot (default FALSE but examples could show how to do this when necessary). This applies also to the assay case, it would be a list of output models.
Would that work?
Default output could indeed be a data frame with effect sizes and (adjusted) p-values.

Hi!
The getMediation function is ready for review. I still need to add more argument checks, comment code and add unit testing, but the main parts are there. Now there is a single function that can take mediators from the colData (mediator arg), the assays (assay.type) or reducedDims (dim.type). It can also return the original model in attr(med_df, "metadata")[[model_number]] when add.metadata = TRUE.
Caveats:

It is probably not ideal to allow the user to input multiple outcomes and treatments, because the outcomes might have different distributions and the treatments different control/treatment conditions, which preferably should be specified as the family, control.value and treat.value arguments.
Adding the option to select specific taxa/reduced dimensions as mediators would make the function more complicated. I think the user could simply subset the (Tree)SE object or specify number of dimensions when running ordination, and then feeding that object to getMediation.

@RiboRings if you can close the conversations one by one when they have been resolved that would be great, to keep track on what was solved and what not

Hi! I finally got back to this

Looks good, I will go this through in detail by tomorrow. I ran BiocCheck. There are at least multiple lines that were over 80 characters long.
I think code that we add should follow as closely as possible Bioconductor recommendations (it is harder to fix the code in the future). --> Can you run BiocCheck and fix the issues related to the lines that are added with this PR?

Ok, thank you for all the guidance!
I shortened the lines. Just as a reference, I also got this error when running BiocCheck:
* Checking for remote package usage...
    * ERROR: Package dependencies must be on CRAN or Bioconductor. Remove
      'Remotes:' from DESCRIPTION

Hmm - - perhaps we should move hitchip to mia then..

There are also SilvermanAGutData from miaTime that is used in unit tests. At some point, we are planning to submit miaTime to Bioconductor so this is temporal thing.
Adding miaTime to Remotes in DESCRIPTION means that miaTime is installed when mia is built. This might cause problems. So it might be better to remove it from there.
Options

Move hitchip data to mia --> We have to then move it back to miaTime when it is in Bioconductor.
Run examples only when miaTime is installed --> This means that examples are not run (because miaTime is not installed by default)
In addition to step 2, add miaTime installation step in the maediate examples. --> miaTime is installed only when documentation is built (not when user installs the package, as far as I know). However, there should be no installation steps in the documentation.

Maybe the option 3 is the best?

All options ok to me.
hitchip can move permanently to mia if this helps, there is no particular need to have it in miaTime. It was put there because we needed to limit the number of data sets in mia package and because hitchip had some time series in it

Maybe we could comment out the examples and remove miaTime from DESCRIPTION, and then uncomment the examples when miaTime is submitted to BioConductor?

Maybe we could comment out the examples and remove miaTime from DESCRIPTION, and then uncomment the examples when miaTime is submitted to BioConductor?

That was actually same to where I ended up after I thought this over night. --> So let's do that.
Instead of commenting out do:
if( require(miaTime) ){
 examples

}

miaTime is used some other places also, but they are not affected. They are already ran only if miaTime is installed. (vignette is not ran)

a shining idea

R CMD check fails due to warning:
❯ checking for unstated dependencies in examples ... WARNING
  'library' or 'require' call not declared from: ‘miaTime’

Also, for some reason miaTime is being installed even when it is not in DESCRIPTION:
miaTime                    0.1.21     2024-04-17 [1] Github (microbiome/miaTime@9fe9[771](https://github.com/microbiome/mia/actions/runs/8753409443/job/24023056975#step:4:791))

For me running the latest version of the "mediation" branch through checks throws warning

Warning in data(hitchip1006) : data set ‘hitchip1006’ not found
Error: object 'hitchip1006' not found

Also

checking tests ...
Running ‘testthat.R’^[[5~^[[5;5~^[[5;5~^[[6;5~
ERROR
Running the tests in ‘tests/testthat.R’ failed.
Last 13 lines of output:

[9]  2.5067 -  2.5100 == -0.00331
...
Backtrace:
▆

└─mia (local) testTransformations(tse) at test-5transformCounts.R:331:5
└─testthat::expect_equal(actual, compare) at test-5transformCounts.R:293:9

I added \donttest which should fix the issue of @RiboRings.
@antagomir I cannot reproduce your error. It runs fine in my local machine, and the same tests are also run in GHA. Although, it is good to investigate this further to get answer on why you get different results

Did not run, I disabled the examples

If this goes through automated tests then I think should be ok

Ubuntu:
* checking whether package ‘mia’ can be installed ... [30s/30s] WARNING
Found the following significant warnings:
  Warning: package ‘matrixStats’ was built under R version 4.5.0
  Warning: package ‘GenomicRanges’ was built under R version 4.5.0
  Warning: package ‘Biobase’ was built under R version 4.5.0
  Warning: package ‘SingleCellExperiment’ was built under R version 4.5.0

Mac
Error: Error: Failed to install 'mia' from local:
  unable to load shared object '/Users/runner/work/_temp/Library/cli/libs/cli.so':
  dlopen(/Users/runner/work/_temp/Library/cli/libs/cli.so, 0x0006): tried: '/Users/runner/work/_temp/Library/cli/libs/cli.so' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e' or 'arm64')), '/System/Volumes/Preboot/Cryptexes/OS/Users/runner/work/_temp/Library/cli/libs/cli.so' (no such file), '/Users/runner/work/_temp/Library/cli/libs/cli.so' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e' or 'arm64'))

That will be hopefully fixed soon when new Bioc is released. However R 4.5.0 is little bit odd since next Bioc devel is developed against 4.4.0. That is something to do with rworkflows, I think

Hi @TuomasBorman! Should I do anything to fix this? How should we proceed to merge this PR?

I haven't been able to fix the problem, however, everything should be ok if at least one of these runs work and there are no errors related to this PR. --> so we can merge without passing all these rules
(I asked from rworkflows maintainers if they know what is the problem, and they have not answered yet)

Seems ok, I will merge (I just updated NEWS). Thanks!


Wagtail 2.16.1 sub-classing AdminURLHelper leads to telepath exception if WAGTAIL_SLIM_SIDEBAR is enabled

Issue Summary
Extending the sidebar using the sub-classing described here leads an exception in telepath telepath.UnpackableTypeError: don't know how to pack object: <bound method PageIndexEditAdminURLHelper.index_url of <app_base.modeladmin.helpers.PageIndexEditAdminURLHelper object at 0x7f587d036d60>>
Steps to Reproduce

(for example) Start a new project with wagtail start myproject
Extend sidebar by following the instructions in https://docs.wagtail.org/en/stable/reference/contrib/modeladmin/primer.html#modeladmin-url-helper-class
Launch the Admin backend and log in, see it crash.

I have confirmed that this issue can be reproduced as described on a fresh Wagtail project: yes

Technical details

Python version: 3.9.6
Django version: 3.2.12
Wagtail version: 2.16.1
Browser version: Chrome 99
Running on Divio Cloud: https://latest-wagtail-reference-project.us.aldryn.io/admin (user/password)

A test repo is available here: https://github.com/elpatiostudio/wagtail-no-aldryn-addons

Hi @vladox - thanks for the report, and for putting together a test case demonstrating the issue.
In your test repo:
class DummyAdminURLHelper(AdminURLHelper):
    def index_url(self):
        return '/admin/pages/'

index_url should be defined as a property, rather than a method - the problem occurs because the ModelAdmin code is referencing url_helper.index_url (rather than url_helper.index_url()), expecting it to return a string to pass on to the front-end code - but it's getting back a bound method object instead, which the front-end code can't handle.
Adding @property above def index_url(self): fixes this.


Update README.md's

[ ] Ensure headings are correct (h1, h2, h3)
[ ] Ensure READMEs are properly represented on GitHub page
[x] Check image links
[x] Consolidate Android and IOS READMEs

Closing as this relates to last years rollout.


[Question] Manually adding java sources to compile sources

Is there any way to avoid manually adding java files to "compile sources" section in build phases of xcode project?
I would like to have subrepository in git, that would contain common (engine) files for couple projects.

You can use Gradle or Make to build your library, then use an External Build target that your app depends upon. That's how j2objc's JreEmulation Xcode project is set up.
In the future, another option is Bazel, an open-source version of the build system Google uses internally. It supports wildcarding source files in build rules, and its Objective C rules generate new Xcode projects automatically. However, its j2objc support is still being developed.
The alternative is to get a job at Apple and fix Xcode to be more supportive of large projects. ;-)

I updated the previous comment with links to its topics.


[Event Request] Codeunit 333 Req. Wksh.-Make Order – FinalizeOrderHeader

Could we please have a publisher OnAfterFinalizeOrderHeaderBeforePrintPurchaseOrder in function FinalizeOrderHeader 333 Req. Wksh.-Make Order?
local procedure FinalizeOrderHeader(PurchOrderHeader: Record "Purchase Header"; var ReqLine: Record "Requisition Line")
var
    ReqLine2: Record "Requisition Line";
    CarryOutAction: Codeunit "Carry Out Action";
    IsHandled: Boolean;
begin
    if ReqTemplate.Recurring then begin

    ...
    if not SuppressCommit then
        Commit();

    // >>>>>>>>>>>>>>>>>>>
    OnAfterFinalizeOrderHeaderBeforePrintPurchaseOrder(PurchOrderHeader, ReqLine);
    // <<<<<<<<<<<<<<<<<<<
    CarryOutAction.SetPrintOrder(PrintPurchOrders);
    CarryOutAction.PrintPurchaseOrder(PurchOrderHeader);
end;

[IntegrationEvent(false /*IncludeSender*/, false /*GlobalVarAccess*/)]
local procedure OnAfterFinalizeOrderHeaderBeforePrintPurchaseOrder(var PurchOrderHeader: Record "Purchase Header"; var RequisitionLine: Record "Requisition Line")
begin
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Azure Administrator can manage TRE data backup and restore

As an Azure Administrator I would like to be able to understand which configuration and data needs to be backed up and how to manage the backups and restores.
This will likely be a combination of enabling backup functionality as part of the solution where there is state from a technical perspective and documenting the considerations for each component.
It is also important that these stateful elements can be restored.
Acceptance Criteria:

[ ] The Azure Administrator is able to backup stateful core of the TRE components

[ ] The Azure Administrator is able to read considerations around what core TRE elements need backing up and why

[ ] The Azure Administrator can restore the core TRE and workspace infrastructure.

[ ] The Azure Administrator is able to backup stateful workspace components

[ ] The Azure Administrator is able to restore stateful workspace components into restore workspace infrastructure

@adishachar can we be a bit more specific here? where, how does the admin want to manage backup and restore of TRE config data? what specifically do they need to perform the task they want to perform?

Hello, Just deployed this and could use some guidance of backups and recovery in case of accidental data loss


[FEATURE] Add Task Templates to v2

Is your feature request related to a problem? Please describe.

https://docs.v1.argilla.io/en/latest/practical_guides/create_update_dataset/create_dataset.html#task-templates
Describe the solution you'd like

Describe alternatives you've considered

Additional context

@sdiazlor I would like to see this underneath something like.
rg.Settings.from_template("task")

If we implement this, the tasks can be aligned with transformers pipeline tasks but they can also align with the previous iteration. @burtenshaw WDYT?

Tackled here: https://github.com/argilla-io/argilla/pull/5426


Use std::backtrace::Backtrace

Once it becomes stable: https://github.com/rust-lang/rust/issues/53487.

Pr #31 uses it behind the nightly feature.


Bus arrival in-advance reminder on iOS app

I am a heavy user of the OneBusAway app. I use it twice a day to get to office and come back home. Usually, what time to leave office and go home is flexible. For me, I would leave around 6pm to 7pm. So I would prefer stay at office and work something not that serious until the bus is coming in 10 mins.
To achieve this, now I just frequently open the app, and keep refreshing the bus-stop schedule table. What I would prefer is that:

I will tell the app which bus-stop, how long for me to walk down there, at what range of time, which bus will I want to take.
When close to the time range, the app wakes up, starts keeping track of the target bus at the target bus-stop on behalf of me, and pops up an alert to kick me off the office in-advance.
I will check to the alert, walk down street, and meet the bus right away!
If I am in the middle of something, not checking the alert, no worries, the app will start tracking the next upcoming bus and repeat the same procedure until the pre-set time range is gone.

I believe this feature meets the intention creating this app: to help passenger better schedule their travel plan and save the idling time. Also I think this feature is technically feasible.
If you guys like the idea and give me a chance to contribute to the app, that would be fantastic, because this will be the first time for me to really join in a develop community and work on open source project.
I am open to any discussion on the feature details or the technical problems.
Sincerely,
Tim

Note that there is a duplicate issue for this - https://github.com/OneBusAway/onebusaway-iphone/issues/242.

this would be a cool feature for the eventual watchOS companion app.

Began working on this here for iOS.

@ualch9 please hang back on this. I lost track of this particular task but have about a week of time invested in solving this.


Invalid extra built-in type constructors

Issue description:
Some built-in types have an invalid constructor with a parameter named from.
e.g.:

Transform2D(Transform from).
Basis(Quat from). Actually, C++ Basis has this constructor, but it's not exposed to GDScript. If you try to use it from GDScript and place a breakpoint in the C++ constructor, it will never get called.

Those constructors are never added in register_variant_methods(). Calling them compiles fine though, no idea what they call.
This makes it really confusing to know which constructors should be exposed to C#...

Nevermind, looks like these are copy constructors generated for documentation, since these types can be implicitly converted. (See Variant::can_convert() and Variant::operator <*>() methods).


Couchdb 3376 fix mem3 shards fixes

This is a PR for a branch which is already used for PR.
It adds a few tests for the new features and a fix.
https://github.com/apache/couchdb/pull/476

Thanks!


comments hard to read when highlighted

comments are very hard to read when highlighted (vim c++). See dracula/vim#95
Screenshot

I really love dracula otherwise, but this has become too much of a pain point so I'm switching to jellybean for the time being

I second this. For (neo)vim I have adjusted this by changing the highlight color for the current line in my init.vim to make it darker than the background (so that it is distinguishable from the background and allows for greater contrast against the colors for comments). I checked for the hex code for hsl(231, 15%, 12%) and it is #1a1b23 (the background has the same first two arguments, but it is 18% at the end). I made this the highlighting for the current line by including
highlight CursorLine cterm=NONE ctermbg=234 guibg=#1a1b23
in my init.vim after calling syntax on. It would be great though if something similar could be made default (with better color choices from those more visually adept than myself) - this solution is hacky at best, and doesn't improve legibility for comments across the board for other editors, only for (neo)vim!

Oh the end result looks like this for me:

Agree this could/should be improved. Would like to hear other users opinion on the issue before we make any changes to the color palette 👍

I switched away from this theme because of this issue

me too :-( @Shrek6

Is there any forward progress on trying different values?


Explictly map inner objects that are not 'parent/child' or 'nested' types

Is this possible with elasticsearch-rails persistence?
Based on previous tire implementations, I thought something like the following would work:
Class Tweet
...
mappings do
  indexes :message, type: 'string'
  indexes :tags, type: 'string',
  indexes :lists do
    indexes :name, type: 'string',
    indexes :description, type: 'string'
    indexes :members do
      indexes :identifier, type: 'string'
      indexes :name, type: 'string'
    end
  end
end

But, the resulting mappings show 'lists' of type 'string' and I get an error when trying to import data (org.elasticsearch.index.mapper.MapperParsingException: failed to parse [lists]).  Here's the full error:
org.elasticsearch.index.mapper.MapperParsingException: failed to parse [lists]
    at org.elasticsearch.index.mapper.core.AbstractFieldMapper.parse(AbstractFieldMapper.java:416)
    at org.elasticsearch.index.mapper.object.ObjectMapper.serializeObject(ObjectMapper.java:557)
    at org.elasticsearch.index.mapper.object.ObjectMapper.serializeNonDynamicArray(ObjectMapper.java:688)
    at org.elasticsearch.index.mapper.object.ObjectMapper.serializeArray(ObjectMapper.java:607)
    at org.elasticsearch.index.mapper.object.ObjectMapper.parse(ObjectMapper.java:492)
    at org.elasticsearch.index.mapper.DocumentMapper.parse(DocumentMapper.java:542)
    at org.elasticsearch.index.mapper.DocumentMapper.parse(DocumentMapper.java:491)
    at org.elasticsearch.index.shard.service.InternalIndexShard.prepareIndex(InternalIndexShard.java:413)
    at org.elasticsearch.action.bulk.TransportShardBulkAction.shardIndexOperation(TransportShardBulkAction.java:435)
    at org.elasticsearch.action.bulk.TransportShardBulkAction.shardOperationOnPrimary(TransportShardBulkAction.java:150)
    at org.elasticsearch.action.support.replication.TransportShardReplicationOperationAction$AsyncShardOperationAction.performOnPrimary(TransportShardReplicationOperationAction.java:512)
    at org.elasticsearch.action.support.replication.TransportShardReplicationOperationAction$AsyncShardOperationAction$1.run(TransportShardReplicationOperationAction.java:419)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.elasticsearch.ElasticsearchIllegalArgumentException: unknown property [name]
    at org.elasticsearch.index.mapper.core.StringFieldMapper.parseCreateFieldForString(StringFieldMapper.java:331)
    at org.elasticsearch.index.mapper.core.StringFieldMapper.parseCreateField(StringFieldMapper.java:277)
    at org.elasticsearch.index.mapper.core.AbstractFieldMapper.parse(AbstractFieldMapper.java:406)
    ... 14 more

What am I missing?

As in the examples, I had been defining 'mapping' before 'attributes.'
In doing so, the call to 'attributes' caused the results of my prior call to 'mapping' to be overridden.
This is somewhat confusing behavior, especially with the way the examples are written with separate calls to mapping and attributes in that order.

Perhaps in the call to mapping, the "default" type of 'string' should only be assigned if mapping has not yet been defined? Or there should be a warning that mapping is being redefined... or at least made clear in the examples and docs, that the call to attributes will override any prior separate call to mapping for a given property.

I have fixed your example to be fully executable and tried to understand the issue:
require 'elasticsearch/persistence/model'

class Tweet
  include Elasticsearch::Persistence::Model
  mappings do
    indexes :message, type: 'string'
    indexes :tags, type: 'string'
    indexes :lists do
      indexes :name, type: 'string'
      indexes :description, type: 'string'
      indexes :members do
        indexes :identifier, type: 'string'
        indexes :name, type: 'string'
      end
    end
  end
end;

Tweet.mapping.to_hash
# => {:tweet=>
#  {:properties=>
#    {:created_at=>{:type=>"date"},
#     :updated_at=>{:type=>"date"},
#     :message=>{:type=>"string"},
#     :tags=>{:type=>"string"},
#     :lists=>
#      {:type=>"object",
#       :properties=>
#        {:name=>{:type=>"string"},
#         :description=>{:type=>"string"},
#         :members=>{:type=>"object", :properties=>{:identifier=>{:type=>"string"}, :name=>{:type=>"string"}}}}}}}}

Tweet.create_index! force: true
# => {"acknowledged"=>true}

puts Net::HTTP.get URI.parse('http://localhost:9200/tweets/_mapping?pretty')
# {
#   "tweets" : {
#     "mappings" : {
#       "tweet" : {
#         "properties" : {
#           "created_at" : {
#             "type" : "date",
#             "format" : "dateOptionalTime"
#           },
#           "lists" : {
#             "properties" : {
#               "description" : {
#                 "type" : "string"
#               },
#               "members" : {
#                 "properties" : {
#                   "identifier" : {
#                     "type" : "string"
#                   },
#                   "name" : {
#                     "type" : "string"
#                   }
#                 }
#               },
#               "name" : {
#                 "type" : "string"
#               }
#             }
#           },
#           "message" : {
#             "type" : "string"
#           },
#           "tags" : {
#             "type" : "string"
#           },
#           "updated_at" : {
#             "type" : "date",
#             "format" : "dateOptionalTime"
#           }
#         }
#       }
#     }
#   }
# }

Can you run the isolated example again and point me specifically to the place you see some kind of error?

Thanks for checking on this.  As I mentioned in my follow-up comment, I had been setting 'attribute' after 'mappings,' like the following:
class Tweet
  include Elasticsearch::Persistence::Model
  mappings do
    indexes :message, type: 'string'
    indexes :tags, type: 'string'
    indexes :lists do
      indexes :name, type: 'string'
      indexes :description, type: 'string'
      indexes :members do
        indexes :identifier, type: 'string'
        indexes :name, type: 'string'
      end
    end
  end

  attribute :message, String
  attribute :tags, String
  attribute :lists, Array[List]

end

The result of this is,
Tweet.mapping.to_hash
=> {:tweet=>{:properties=>{:created_at=>{:type=>"date"}, :updated_at=>{:type=>"date"}, :message=>{:type=>"string"}, :tags=>{:type=>"string"}, :lists=>{:type=>"string"}}}}

As you can see, 'lists' is mapped to 'string' instead of 'object.'
If 'attribute' is called before 'mappings' its ok.
Obviously I was confused as to the proper way to set attributes and mapping, partly because of the way the album/artists persistence example used both mappings and attribute.

Not for me:
Tweet.mapping.to_hash
=> {:tweet=>
  {:properties=>
    {:created_at=>{:type=>"date"},
     :updated_at=>{:type=>"date"},
     :message=>{:type=>"string"},
     :tags=>{:type=>"string"},
     :lists=>
      {:type=>"object",
       :properties=>
        {:name=>{:type=>"string"},
         :description=>{:type=>"string"},
         :members=>{:type=>"object", :properties=>{:identifier=>{:type=>"string"}, :name=>{:type=>"string"}}}}}}}}

But importantly, why are you using the indexes method at all for this?
Why not:
require 'elasticsearch/persistence/model'

class List
  # This shouldn't be Elasticsearch::Persistence::Model I think, but eg. Virtus
end

class Tweet
  include Elasticsearch::Persistence::Model

  attribute :message, String
  attribute :tags, String
  attribute :lists, Array[List], mapping: {
    type: 'object',
    properties: {
      name: { type: 'string' }
      # ...
    }
  }
end

puts Tweet.mapping.to_hash
# {:tweet=>{:properties=>{:created_at=>{:type=>"date"}, :updated_at=>{:type=>"date"}, :message=>{:type=>"string"}, :tags=>{:type=>"string"}, :lists=>{:type=>"object", :properties=>{:name=>{:type=>"string"}}}}}}

Why use indexes?
Because it wasn't clear I shouldn't based on the README and the examples (particularly album/artist, though it looks like one issue was changed).

We are getting different results for Tweet.mapping.to_hash - type of 'lists' is still 'string' when calling attribute after mappings.

class Member
  include Elasticsearch::Persistence::Model
  attribute :identifier, String
  attribute :name, String
end

class List
  include Elasticsearch::Persistence::Model
  attribute :name, String
  attribute :description, String
  attribute :members, Array[Member]
end

class Tweet
  include Elasticsearch::Persistence::Model
  mappings do
    indexes :message, type: 'string'
    indexes :tags, type: 'string'
    indexes :lists do
      indexes :name, type: 'string'
      indexes :description, type: 'string'
      indexes :members do
        indexes :identifier, type: 'string'
        indexes :name, type: 'string'
      end
    end
  end

  attribute :message, String
  attribute :tags, String
  attribute :lists, Array[List]

end

Tweet.mapping.to_hash
=> {:tweet=>{:properties=>{:created_at=>{:type=>"date"}, :updated_at=>{:type=>"date"}, :message=>{:type=>"string"}, :tags=>{:type=>"string"}, :lists=>{:type=>"string"}}}}

I need you to run the code I have posted and verify that you're seeing the same output as I do.
Then, and only then, we can progress to your code -- we need a common baseline.

Glad I found this issue, as it is not documented how to specify mapping for object attributes.
I should be made explicitly with an example in README, IMO.

I did the same but when I try to merge a nested association inside an index and do a save, I get a which is an instance of Hash(#70352839692580).

How should I pass the nested association to create a big index? Should I convert it?


Pass user requested prop to drivers

#61

@at-wat Hey, I just created an alternative approach to solve this, https://github.com/pion/mediadevices/pull/73. Please let me know what you think.

I feel like this approach is fine. But, I'm afraid that it can cause confusion to the adapter implementors or the caller for driver (even more confusing for people who want to use it directly) by having an extra parameter with the same type while the two parameters complement each other.

https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints

The MediaTrackConstraints dictionary is used to describe a set of capabilities and the value or values each can take on. A constraints dictionary is passed into applyConstraints() to allow a script to establish a set of exact (required) values or ranges and/or preferred values or ranges of values for the track, and the most recently-requested set of custom constraints can be retrieved by calling getConstraints().

It might be better that prop.Media has unexposed copy of user requested prop.Media and its getter.
@lherman-cs How do you think?

Oops, applyConstraints() and getConstraints() are the method of MediaStreamTrack. It doesn't help this case.

fixed by #73


Support opening lyrics in an external editor

This is supported by LyricShow3, so it would just be feature parity.
We currently watch the lyrics dir for changes so we can automatically detect those and update the loaded lyrics.
However that doesn't work if we're configured to save to a tag, so what we should probably do is create a temp file, open that in the external editor and then when the editor closes, read back the temp file and update lyrics wherever they should be updated.

External editor is on my wishlist yes. There are several possible ways to let user invoke it - one is another right-click item, another is an "Open external" button in the editor window. Why not both.
(Except the work needed to implement it, of course.)


Fixed issue forms

Details of Changes

Fixed issue templates to remove the code blocks.

Validation
Made a test issue in my fork: https://github.com/TheOnlyTails/Files/issues/2

Thank you!


Fix the issue_comment "RC publish" workflow

Using this https://github.com/actions/checkout/issues/331#issuecomment-1567674767 to get the RC publish workflow working.
See this for more info https://terraformationteam.slack.com/archives/C01C69KA23Y/p1694187601980789

publish rc

pub*****c

Oh, this runs the old version, dang


[BUG]: INCORRECT PADDING FOR GAMES CONTAINER 🪲

Description

The container which holds all the games is just have incorrect padding values, so that the container measurement itself looks imbalanced.
We want to solve this issue by providing right values so that the container would attain a balanced padding to improve the user interface.

Screenshots

CURRENT
DESIRED

Additional information
No response

Hey there @panwar8279 👋🏻
Please make sure to assign this issue to me asap to make the work done!
Thank you.

Hi @0xabdulkhalid , I have assigned this issue to you. Kindly complete within 3 days. Good luck!


Have logging functions return *logrus.Entry 's

The normal logrus functions return Entry objects which allow the use of syntax like:
log.WithField("somefield", "somevalue").Debug("message")
Since it's one of the big advantages of logrus, it'd be good if it was supported.

Sounds good to me in principle - we don't need it right now, but might want it at some point. Feel free to send a PR if you need it more urgently.

I've not seen the issue back then but see plenty of use cases for ourselves where we have no idea from which of thousands of sub-proccesses a log entry comes from.
@wrouesnel c.f. #6 for a solution


add C++ Server

[x]  add C++ Server using WebSocket

[x] add C++ Client using WebSocket

[x] support auto detect and recycle the socket connection resource that not available for a long time

[x]  a CI test to WebSocket Server

close now, should make another PR


Unable to simultaneously satisfy constraints

I am using xCode 9.4 and version XLPagerTabStrip -> 8.0.0, when i rotate iphone device in my console appears: Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want.
Then my app crash :(

Could you elaborate more on which are the constraints that causes the issue?
I tested the example app and it works properly. Please review the constraints you added to your child view cotnrollers.


Migrate from libc to rustix.

This migrates terminal_size from using libc directly to using rustix,
which eliminates a few unsafe blocks and manual error handling.
It does also add one new unsafe block, though this is because
terminal_size_using_fd is a public safe function that has a RawFd
argument. With I/O safety, which is expected to be stabilized in Rust 1.63,
there will be new guidance saying be that such functions should be unsafe.
It's not urgent to make any changes for this right now though.
This also updates the minimum Rust version to 1.48, which is about as
old as the previous minimum Rust version was when it was last updated.

(@sunfishcode out here, single-handedly upgrading the entire ecosystem to rustix 🎉 )

Released on crates.io as v0.2.0


[Utility] Design how Chain/Service IDs should be described

Objective
Design how Chain/Service IDs are
Origin Document
Part of work on #754
Goals

Clear definition of what a Chain/Service ID is

Deliverable

[ ] Updated README and all other documentation
[ ] Resolve all TODO comments related to this issue
[ ] Enable chain specific rewards & configurations

Non-goals / Non-deliverables
General issue deliverables

[ ] Update any relevant local/global README(s)
[ ] Update relevant source code tree explanations
[ ] Add or update any relevant or supporting mermaid diagrams

Testing Methodology

[ ] Task specific tests or benchmarks: make ...
[ ] New tests or benchmarks: make ...
[ ] All tests: make test_all
[ ] LocalNet: verify a LocalNet is still functioning correctly by following the instructions at docs/development/README.md
[ ] k8s LocalNet: verify a k8s LocalNet is still functioning correctly by following the instructions here

Creator: @adshmh
Co-Owners: @Olshansk

@adshmh We'll do this one together and I also added this deliverable:
- [ ] Enable chain specific rewards & configurations


Proposal: Add values schema json for chart created using helm create

Output of helm version:
version.BuildInfo{Version:"v3.0.0", GitCommit:"e29ce2a54e96cd02ccfce88bee4f58bb6e2a28b6", GitTreeState:"clean", GoVersion:"go1.13.4"}
Now that Helm v3 supports schema for values.yaml, in the form of values.schema.json file. I think it would be great to have the schema file as part of the chart created using helm create command. This way, the users are educated about the feature - as they will get curious about this new file
Also, honestly, I struggled to find the docs about values schema. Then I grepped the docs repo locally and found it out. 🙈 I think we need to make our docs better in terms of discoverability? introduce search or something? And we need to clearly have all the new features advertised and explained. Or else awareness will be less 😅 I could create a separate issue in docs repo itself to discuss the same

Ah. Looks like the search feature was not working 🙈 https://github.com/helm/helm-www/issues/377

I can work on a PR for this feature if it's accepted :smil

Why does the default chart require a JSON schema? In my mind, validating values using a JSON schema is an advanced topic that only a small subset of chart maintainers want to opt into. I don't feel like it's something that should be pushed onto newcomers especially given that it's an optional feature.

Hmm. Makes sense. How does a optional flag sound? Something like --with-values-schema. People who are aware of it and are advanced users and want to try it out, can get a sample file may be? But yeah, there's one thing. The default values.yaml for the chart is just too big. Writing a schema for all that, it will be too big and might be complex too
Just a thought. If we feel flag also won't be helpful, I think we can close this issue :)

I agree with @bacongobbler in https://github.com/helm/helm/issues/6985#issuecomment-557684234. I think it is not needed for the scaffold chart.

Consider the flag. Or else we can close 👍

I would suggest to close.


Can't play this video message

I tried with s3 url and not works, a local file neither. I prove another url and still not works. can u help me? thanks.

Assuming this is android? If so, android is very picky about videos. Try
with the demo videos and see if it works. If so then there's no issue with
the plugin. I don't know all the specifics about why android is so
difficult with the videos it will play. The two in the demo should work
fine though.
On Tue, Aug 30, 2016, 5:52 AM NNieto<EMAIL_ADDRESS>wrote:

I tried with s3 url and not works, a local file neither. I prove another
url and still not works. can u help me? thanks.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/bradmartin/nativescript-videoplayer/issues/32, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AFulhM03N2fj9rzs8Bi3xpAE8_8Jy5K9ks5qlAuDgaJpZM4JwZSj
.

@bradmartin Thanks man

Yea android video sucks sometimes :) took me awhile to learn that. Just
check the video encoding and format and I'm sure there might be a service
that you can upload it to that will check it works on android or not
On Tue, Aug 30, 2016, 8:39 AM NNieto<EMAIL_ADDRESS>wrote:

@bradmartin https://github.com/bradmartin Thanks man
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/bradmartin/nativescript-videoplayer/issues/32#issuecomment-243441345,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFulhLPSHEKtEhTFmqT1KcpKUrpqJK-Oks5qlDKIgaJpZM4JwZSj
.

@bradmartin Perfect, I'll check it and change my encoding format. Thanks


Update RLS component name

This is fix for issue #369
Description:
Component rls renamed to rls-preview so extension works as expected

@KalitaAlexey any reason why this isn't being merged?

Can this be merged?


Improvement for k8s.io/docs/concepts/cluster-administration/networking/

Too many listed a tabular suggestion will be great

I suggest: migrate https://kubernetes.io/docs/concepts/cluster-administration/networking/#how-to-implement-the-kubernetes-networking-model into the Reference section.
I don't think I would switch that to use a table, but there might well be a better way to present the list / a summary of the entries. Maybe {{ .Page.TableOfContents }} could help.
/language en
/kind cleanup


Set correct hierarchy for values

Signed-off-by: Alexandre Peixoto Ferreira<EMAIL_ADDRESS>

shit, I missed both of these before I did the reorg, can you reapply?

needs chart version bump


[#2391] Add @since tag to Project.findProperty()

Context
In relation to #2391. The method in Project which I was struggling recently in which version was added to declare compatibility range of my plugin.
Related release notes.
Contributor Checklist

[x] Review Contribution Guidelines
[x] Sign Gradle CLA
[N/A] Link to Design Spec for changes that affect more than 1 public API (that is, not in an internal package) or updates to > 20 files
[N/A] Provide integration tests (under <subproject>/src/integTest) to verify changes from a user perspective
[N/A] Provide unit tests (under <subproject>/src/test) to verify logic
[N/A] Update User Guide, DSL Reference, and Javadoc for public-facing changes
[N/A] Ensure that tests pass locally: ./gradlew quickCheck <impacted-subproject>:check

Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation including proper use of @since and @Incubating annotations for all public APIs
[ ] Recognize contributor in release notes

Good catch @szpak! Will be in Gradle 4.1.


CSS Capitalization Conventions

There seems to be quite a bit of seemingly random capitalization of CSS classes within the samples.
The pattern that seems to be present is something like:

Prefix with ms-
Components are PascalCase (DatePicker)
Properties (ms-TextField-field), Constants (ms-fontColor-white), and Sub-Components (ms-Icon--chevronRight) are camelCase.

Should these be made all lower case to conform with other similar web libraries? Or is there some precedent within other Office code that may be more important to conform to?

Very keen eye :) Our conventions actually follow very similar patterns to those in SUIT CSS, with some of the more information-dense "core" classes (e.g. ms-fontColor-white) being the sole intentional deviations (since they are very utility-like). We should probably publish those conventions so folks know what to snap to when contributing.
We chose SUIT's conventions for its scalable, namespaced, component-oriented approach--it lends itself very well to large projects and toolkits. It's also being used by several other MS web products (partially because of Fabric)--you'll notice OneDrive follows it as well.

Good answer. I've never seen SUIT CSS and have never thought of CSS as particularly scalable in the first place. This makes much more sense now.

Seems this issue is closed now. Thanks @Jahnp for the details.


Support for windows authnetication

Can IdentityServer4 takes Windows credentials and convert to IdetityServer4 token?

@venkatrv Seems like you are coming new into Identity Server and starting with Identity server 4. I am not sure if that is great idea because currently all of this is getting formalized. Please check out this podcast on .NET Rocks show https://www.dotnetrocks.com/default.aspx?ShowNum=863 where Dominick talks about the current state of the project.
That being said you can use Identity server 3 and there is an example of Windows Auth in there. I am no owner of this repo or related to this project :) but just my cents to help you.
Identity server 3 Windows Auth Example - https://github.com/IdentityServer/IdentityServer3.Samples/tree/master/source/WebHost (Windows Auth)

Thank you @lazyspark. Yes, you are right. I am new to IdentityServer and thought picking up the IdentityServer4 is better, because the previous one (IdentityServer3) is using old technology and MS may not invest in that technology anymore (I read these comments in the forum).
But you are right, IdentityServer4 may not be completely ready yet.
Ok, I will step back and dig into IdentityServer3. I am also looking for trusting one identity server with another  and my problem is to pass the token across windows domains. I hope this can be achieved by using Identity Server.

IdentityServer4 released 1.0.0, is there any news regarding Windows Authentication?


Update Gradle wrapper to 5.6

This change is

It seems like there are some issues with the Gradle upgrade and the shadow jar plugin that we use to build the Nomulus tool.

This is due to https://github.com/johnrengelman/shadow/issues/508. I'll push an update soon.


Fix builds on macOS

NOTE: I intend on keeping these commits separate and rebase them, for cleaner upstreaming, so expect force pushes.
Fixes #35 by dropping -U flag (see commit message for details).
Still needs a solution to fix macOS's dodgy support for weak symbols.
One solution is to just case over the platform [ "$(uname)" == "Darwin" ] and manually specify -Wl,-U,_ssm_throw (following advice from https://stackoverflow.com/a/51755953), but this isn't exactly elegant, and we'll have to do this for every weak symbol. I'm looking into an alternate approach that involves weak aliases, which according to http://maskray.me/blog/2021-04-25-weak-symbol is less error prone (perhaps more uniformly supported?) across different toolchains. Will need some help testing this out; @hmontero1205 @XijiaoLi and @kentjhall , do you have suggestions/cycles to help try some things out.

What are we using the weak and alias features for, again? We should keep the runtime library code as generic as possible since we're likely to keep running into compatibility problems like this.

The weak symbol was introduced to allow an implementation of ssm_throw to be overridden at link time. Our "default" implementation should be just for (;;) (rather than exit(), which is also not portable and whose behavior is extremely platform-dependent), since that's guaranteed to be platform-generic. However, that isn't very helpful when something does crash, since it will just silently hang.
Using a weak symbol. a platform-specific binding can make sure that a more reasonable implementation is used, e.g.,:
ld user_code.o
 + libssm.a // weak definition of ssm_throw
 + libplatform1.a // strong (normal) definition of ssm_throw
=> exe // uses definition given by libplatform1.a

whereas if it isn't specified by the platform, it will just default to the generic for (;;) implementation:
ld user_code.o
 + libssm.a // weak definition of ssm_throw
 + libplatform2.a // no definition of ssm_throw
=> exe // uses definition given by libssm.a

In these two scenarios, neither libssm.a nor user_code.o need to be recompiled.
The alternative is to introduce a preprocessor setting for this, e.g., something like:
#ifdef CONFIG_SSM_THROW_OVERRIDE
extern void ssm_throw(int reason, const char *file, int line, const char *func);
#define SSM_THROW(reason) ssm_throw(reason, __FILE__, __LINE__, __FUNC__)
#else
#define SSM_THROW(reason) for(;;)

The slight downside is that now we must be careful to compile every compilation unit with the same flags, which means that this is now something we need to expose in the interface of ssm-runtime's build system, and it's not something that ssm-runtime's Makefile can easily check for consistency. For instance, if you accidentally run:
$ make build/ssm-bool.o  # compiled with default spin implementation
$ # ... forget to clean up build/ssm-bool.o
$ CONFIG_SSM_THROW_OVERRIDE=1 make build/libssm.a # other object files compiled extern ssm_throw definition

Now linking against libssm.a is going to lead to some rather unexpected hangs only when those errors emanate from the stale  ssm-bool.o compilation unit, which as far as Make is concerned, is up to date.
That being said, using a config may just be our only option, because I don't really see any other platform-generic solution.

Following discussion with @sedwards-lab earlier today, I'm going to remove the weak symbol thing altogether. The symbol can still be overriden at link time by ensuring that the compilation unit defining ssm_throw comes before -lssm in the arguments passed to ld/cc.
@hmontero1205 , can you test and see if make test-throw works for you, as well as the regression tests?

(btw @sedwards-lab , should I fix that dangling else warning from libssm while I'm at it?)

Output for make:
hans@bigmac:~/columbia/sslang/lib/ssm $ make
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-bool.o src/ssm-bool.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-event.o src/ssm-event.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-i16.o src/ssm-i16.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-i32.o src/ssm-i32.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-i64.o src/ssm-i64.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-i8.o src/ssm-i8.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-scheduler.o src/ssm-scheduler.c
src/ssm-scheduler.c:306:7: warning: add explicit braces to avoid dangling else [-Wdangling-else]
      else
      ^
1 warning generated.
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-throw.o src/ssm-throw.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-top-act.o src/ssm-top-act.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-u16.o src/ssm-u16.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-u32.o src/ssm-u32.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-u64.o src/ssm-u64.c
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -c -o build/ssm-u8.o src/ssm-u8.c
rm -f build/libssm.a
ar -cr build/libssm.a  build/ssm-bool.o  build/ssm-event.o  build/ssm-i16.o  build/ssm-i32.o  build/ssm-i64.o  build/ssm-i8.o  build/ssm-scheduler.o  build/ssm-throw.o  build/ssm-top-act.o  build/ssm-u16.o  build/ssm-u32.o  build/ssm-u64.o  build/ssm-u8.o
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/clock examples/clock.c -Lbuild -lssm
examples/clock.c:192:37: warning: format specifies type 'unsigned long' but the argument has type 'unsigned long long' [-Wformat]
  printf("simulated %lu seconds\n", ssm_now() / SSM_SECOND);
                    ~~~             ^~~~~~~~~~~~~~~~~~~~~~
                    %llu
1 warning generated.
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/counter examples/counter.c -Lbuild -lssm
examples/counter.c:356:35: warning: format specifies type 'unsigned long' but the argument has type 'ssm_time_t' (aka 'unsigned long long') [-Wformat]
    printf("finished time %lu\n", ssm_now());
                          ~~~     ^~~~~~~~~
                          %llu
1 warning generated.
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/counter2 examples/counter2.c -Lbuild -lssm
examples/counter2.c:357:35: warning: format specifies type 'unsigned long' but the argument has type 'ssm_time_t' (aka 'unsigned long long') [-Wformat]
    printf("finished time %lu\n", ssm_now());
                          ~~~     ^~~~~~~~~
                          %llu
1 warning generated.
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/fib examples/fib.c -Lbuild -lssm
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/fib2 examples/fib2.c -Lbuild -lssm
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/fib3 examples/fib3.c -Lbuild -lssm
examples/fib3.c:181:37: warning: format specifies type 'unsigned long' but the argument has type 'unsigned long long' [-Wformat]
  printf("simulated %lu seconds\n", ssm_now() / SSM_SECOND);
                    ~~~             ^~~~~~~~~~~~~~~~~~~~~~
                    %llu
1 warning generated.
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/hello examples/hello.c -Lbuild -lssm
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/hello2 examples/hello2.c -Lbuild -lssm
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/onetwo examples/onetwo.c -Lbuild -lssm
examples/onetwo.c:152:35: warning: format specifies type 'unsigned long' but the argument has type 'ssm_time_t' (aka 'unsigned long long') [-Wformat]
    printf("finished time %lu\n", ssm_now());
                          ~~~     ^~~~~~~~~
                          %llu
1 warning generated.
./runexamples > build/examples.out
\e[32mEXAMPLES PASSED\e[0m
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/test_main test/test_main.c -Lbuild -lssm
./build/test_main > build/test_main.out || echo "\e[31mTEST_MAIN FAILED\e[0m"
\e[32mTEST_MAIN PASSED\e[0m
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/test-throw test/test-throw.c -Lbuild -lssm
cc -Iinclude -O -Wall -pedantic -std=c99 -g -DSSM_DEBUG  -o build/test-throw-override test/test-throw.c test/override-throw.c -Lbuild -lssm
timeout -v 0.01 ./build/test-throw >build/test-throw.out 2>&1 || true
timeout -v 0.01 ./build/test-throw-override >>build/test-throw.out 2>&1 || true
\e[32mEXAMPLES PASSED\e[0m

Note that

I had to install timeout via brew install coreutils
There's still warnings
The colors don't seem to be rendering (are we missing a -e flag on echo?)

False alarm, the regression tests are fine:
$ ./runtests.sh
blink...OK
doubleblink...OK
hello1...OK

Looks like I had some untracked files in the test directory and the suite was trying to test with them.

@sedwards-lab
echo is apparently not portable across operating systems (or even shells). On my macOS, echo doesn't seem to care about color escape sequences, even when I add a -e flag. Stackoverflow suggests using printf which is supposed to be more portable:
$ git diff
diff --git a/lib/ssm/Makefile b/lib/ssm/Makefile
index 6300a85..aa9ec79 100644
--- a/lib/ssm/Makefile
+++ b/lib/ssm/Makefile
@@ -32,21 +32,21 @@ ARFLAGS = -cr
 all : test-examples test_main test-throw

 test_main : build/test_main
-       ./build/test_main > build/test_main.out || echo "${RED}TEST_MAIN FAILED${RESET_COLOR}"
+       ./build/test_main > build/test_main.out || printf "${RED}TEST_MAIN FAILED${RESET_COLOR}\n"
        @(diff test/test_main.out build/test_main.out && \
-       echo "${GREEN}TEST_MAIN PASSED${RESET_COLOR}") || \
-       echo "${RED}TEST_MAIN OUTPUT DIFFERS${RESET_COLOR}"
+       printf "${GREEN}TEST_MAIN PASSED${RESET_COLOR}\n") || \
+       printf "${RED}TEST_MAIN OUTPUT DIFFERS${RESET_COLOR}\n"
 test-examples : examples
        ./runexamples > build/examples.out
        @(diff test/examples.out build/examples.out && \
-       echo "${GREEN}EXAMPLES PASSED${RESET_COLOR}") || \
-       echo "${RED}EXAMPLE OUTPUT DIFFERS${RESET_COLOR}"
+       printf "${GREEN}EXAMPLES PASSED${RESET_COLOR}\n") || \
+       printf "${RED}EXAMPLE OUTPUT DIFFERS${RESET_COLOR}\n"
 test-throw : build/test-throw build/test-throw-override
        timeout -v 0.01 ./build/test-throw >build/test-throw.out 2>&1 || true
        timeout -v 0.01 ./build/test-throw-override >>build/test-throw.out 2>&1 || true
        @(diff test/test-throw.out build/test-throw.out && \
-       echo "${GREEN}EXAMPLES PASSED${RESET_COLOR}") || \
-       echo "${RED}EXAMPLE OUTPUT DIFFERS${RESET_COLOR}"
+       printf "${GREEN}EXAMPLES PASSED${RESET_COLOR}\n") || \
+       printf "${RED}EXAMPLE OUTPUT DIFFERS${RESET_COLOR}\n"

 build/test_main : test/test_main.c build/libssm.a
        $(CC) $(CFLAGS) -o $@ test/test_main.c -Lbuild -lssm

Does that seem like a reasonable change?

I had to install timeout via brew install coreutils
This is fine---I'll probably remove that test.

I'm not sure how to best work around the formatter warnings. It's almost inevitable without a bit of macro wrangling since the type->size mappings are just different macOS

Colors are a function of the terminal in which you're displaying the results, not the echo command itself. And there are definitely different versions of echo (e.g., some don't pay attention to the -e flag).
My feeling is that we ought to back out all the fancy things (color is fun, but non-portable) and try to make the Makefile as portable as possible
Similarly, the dependence on 'timeout" seems needless. There's a more portable way to terminate long-running processes through the shell.

I agree with removing colors for portability. They're useful for visually identifying failed tests, but we're really not running that many tests. If we dramatically expand this test suite, we can always add colors back into the Makefile.

Apologies for the force pushes. I just rebased everything on top of the latest main; @hmontero1205 can you double check that everything is working for you on macOS?

@j-hui everything still works fine. It looks like test-throw isn't a Makefile target anymore though, but if that's expected, LGTM.

Yeah, taking out the test-throw target was intentional. I had pushed it
there as a preliminary sanity check for how whether linker behavior differs
between gcc's linker and lld. I replaced that with a more comprehensive
test in ssm-scratch and found that behavior does indeed differ, but not in
a way that matters to us.
On Mon, Nov 15, 2021, 10:29 PM Hans Montero @.***>
wrote:

@j-hui https://github.com/j-hui everything still works fine. It looks
like test-throw isn't a Makefile target anymore though, but if that's
expected, LGTM.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ssm-lang/sslang/pull/42#issuecomment-969799085, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AC2A5DCIWVB5H2YYMJ22HLLUMHFXVANCNFSM5G54ULKQ
.


tridiagonal solver fails for systems of two equations.  (NaN in place of result)

What steps will reproduce the problem?
1. Modify the test_tridiagonal example that comes with cudpp. The function
testTridiagonalDataType declares an array of systemSizes as follows:

    int systemSizes[] = { 5, 32, 39, 128, 177, 255, 256, 500, 512 };

2. Replace that line for something like:

    int systemSizes[] = { 2, 5, 32 }; // only interested in the first one

3. Then compile and execute test_tridiagonal.

test@test:~/cudpp/bin$ ./test_tridiagonal
Using device 0:
Tesla C2070; global mem:<PHONE_NUMBER>B; compute v2.0; clock: 1147000 kHz
Running a fp64 CR-PCR tridiagonal solver solving 512 systems of 2 equations
GPU execution time: 0.044000 ms
CPU execution time: 0.022000 ms
test failed, error is larger than 0.001
test FAILED  <<<<<<<<<<<<<<<<<<<<<<<  2 EQUATIONS SYSTEMS FAIL

Running a fp64 CR-PCR tridiagonal solver solving 512 systems of 5 equations
GPU execution time: 0.065000 ms
CPU execution time: 0.054000 ms
test PASSED

Running a fp64 CR-PCR tridiagonal solver solving 512 systems of 32 equations
GPU execution time: 0.125000 ms
CPU execution time: 0.340000 ms
test PASSED

What is the expected output? What do you see instead?

On a closer inspection (using debugger) the output array (x) contains NaN

What version of the product are you using? On what operating system?

This is happening with the latest version of CUDPP 2.0 available from git on
LTS 12.04 and using CUDA 5.0 with a GPU Tesla C2070

Please provide any additional information below.

I tried this one on an emulated environment (using Ocelot) achieving the same
results.

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 22 Nov 2012 at 2:42

Sure, will take a look by this week.

I'm curious why (in what applications) a 2-equation system is of any interest.
If you really need performance in addition to correctness (which I hope I will
fix), I don't think this tridiagonal routine will perform well, because a
2-equation system will lead to low utilization of the GPU with only 1 thread
per block.

Original comment by<EMAIL_ADDRESS>on 11 Dec 2012 at 5:15

Yao can you please investigate?

Original comment by<EMAIL_ADDRESS>on 11 Dec 2012 at 2:07

Yes, you're right. I am not intending to use the tridiagonal solver for small
systems. My code uses a finite difference routine that starts with a small
linear eq. system and progressively refines the step size (number of equations
to solve increases) until the solution reaches the desired accuracy.

In fact, the code will branch between CPU/GPU execution depending on the size
of n. And I wanted to plot CPU vs GPU timings just to find out what will be
probably the sweet spot for doing so. That's how I find out about those NaN.

Original comment by<EMAIL_ADDRESS>on 12 Dec 2012 at 11:09


Known Issue: Default aggregation property not being passed through to Tableau

Setting the default aggregation on a column through the tabeau.aggType property is not causing the fields in tableau to have that default aggregation.
This is a known issue and the team is investigating.

This is fixed in the latest.


pkgs.netbird.io not reachable, defauts to IPv6

Describe the problem
Recently within a day or two of 21st June 2024 pkgs.netbird.io is not reachable for me, before then for many months it has been working fine.
To Reproduce
Steps to reproduce the behavior:
Try to sudo apt update && sudo apt upgrade or sudo dnf upgrade --refresh and the downloads will halt when hitting pkgs.netbird.io repository
Expected behavior
Repo to refresh and/or downloads to download
Are you using NetBird Cloud?
Netbird Cloud at app.netbird.io
NetBird version
netbird version 0.28.1
NetBird status -d output:
If applicable, add the `netbird status -d' command output.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.
Curl output below
curl --verbose pkgs.netbird.io

Host pkgs.netbird.io:80 was resolved.
IPv6: 2a01:4f8:c17:cc4e::1
IPv4: <IP_ADDRESS>
Trying <IP_ADDRESS>:80...
Trying [2a01:4f8:c17:cc4e::1]:80...
Immediate connect fail for 2a01:4f8:c17:cc4e::1: Network is unreachable

Disregard was a local IP issue, changed it and all is well