Database is empty after push on production, which leads to 404

Hello there,
I am trying to host an apostrophe project on Heroku. I have trouble setting up the database, it connects well and creates the tables, but does not fill them, see the mongolab report :
Collection    Nb of docs   Capped?   Size
aposCache	0	false	23.95 KB
aposPages	0	false	143.72 KB
aposRedirects	0	false	15.97 KB
aposVersions	0	false	15.97 KB
aposVideos	0	false	15.97 KB
sessions	1	false	16.45 KB

The session is set correctly, I can connect to the website. You can take a look :
http://gratos.herokuapp.com
However, as there is no home page, I got a nice 404 and can not create a new page as the page management button does not appear on 404.
I thought about two solutions :

if there are no pages in the database, creates a default home page
add page management menu on the 404 page

Yet I am not sure how to implement that. Do you have any other solution or did I miss something ?
Thanks

You want to run the apostrophe:reset task on your production server.
node app apostrophe:reset
That will give you an initial database to work with.
Or, you could copy your local mongo database to whatever mongo hosting you
are using (heroku doesn't come with mongo, you don't say what you're
using). That's a mongo thing though and not Apostrophe's job, per se.
On Wed, Mar 23, 2016 at 12:26 PM, eric-burel<EMAIL_ADDRESS>wrote:

Hello there,
I am trying to host an apostrophe project on Heroku. I have trouble
setting up the database, it connects well and creates the tables, but does
not fill them, see the mongolab report :
Collection    Nb of docs   Capped?   Size
aposCache   0   false   23.95 KB
aposPages   0   false   143.72 KB
aposRedirects   0   false   15.97 KB
aposVersions    0   false   15.97 KB
aposVideos  0   false   15.97 KB
sessions    1   false   16.45 KB
The session is set correctly, I can connect to the website. You can take a
look :
http://gratos.herokuapp.com
However, as there is no home page, I got a nice 404 and can not create a
new page as the page management button does not appear on 404.
I thought about two solutions :

if there are no pages in the database, creates a default home page
add page management menu on the 404 page

Yet I am not sure how to implement that. Do you have any other solution or
did I miss something ?
Thanks
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/punkave/apostrophe/issues/470

--
*THOMAS BOUTELL, *DEV & OPS
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com


Re-add the ability to set a custom port in the netwerksettings

Problem/Motivation
On multiple occasions I was able to debug and fix Home Assistant docker issues with Portainer. Of course I could have used docker cli, but Portainer is very powerfull and just easier 😄
Why can't Ingress and the direct access support coexist? I understand this would be fine for some add-ons, but Portainer is just too important for debugging. Because now, if Hass is down, Portainer is unreachable.
Proposed changes
Can you please (re)add the ability to map a custom port (like 9000) to Portainer?
Thanks 😄

That won't be re-added.

Ok, clear. Don't get me wrong, I love what you do for HA and I use your add-ons every day. But I'm curious know why it's removed? There might be a good explanation, but the release notes didn't mention the motivation. Removing functionality is always bad for the user, unless there is of course a good reason for it 😄
Thanks! 🙌

Maintaining both entry points require a lot of additional logic to maintain and is more error-prone in general. (e.g., an additional reverse proxy is needed to make it work).
With recent changes and additions to Home Assistant, a system should always be able to start and the user will be able to access add-ons.


BE: Fix KafkaConsumerGroupTests on Windows

[ ] Breaking change? (if so, please describe the impact and migration path for existing application instances)

What changes did you make? (Give an overview)
shouldOkWhenConsumerGroupIsNotActive was returning a 400 instead of a 200 without the try with resources block, once I added it, the test consistently passes. Additionally removed some unused variables and used toList() added with JDK 17.
Is there anything you'd like reviewers to focus on?
How Has This Been Tested? (put an "x" (case-sensitive!) next to an item)

[ ] No need to
[ ] Manually (please, describe, if necessary)
[ ] Unit checks
[ ] Integration checks
[x] Covered by existing automation

Checklist (put an "x" (case-sensitive!) next to all the items, otherwise the build will fail)

[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation (e.g. ENVIRONMENT VARIABLES)
[ ] My changes generate no new warnings (e.g. Sonar is happy)
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged

Check out Contributing and Code of Conduct
A picture of a cute animal (not mandatory but encouraged)

Hi, @busches. Thanks for your contribution! Looks nice! @iliax don't you mind to review it?

@busches your changes looks fine, but I can't understand how they can fix tests on windows) Can you please add more context here and describe why this is working now?

What the code change does is ensure that the Consumer Group is cleaned up, with the try with resources, before it executes the API request. The same is true for the other test, where we leave the Consumer Group up until after the API request. That test did not have any issues passing for me, but I changed it to mirror the other for self documenting purposes.
The issue may not be related to Windows at all, but that's what I'm running. It could be a case of my computer is too slow to remove the consumer group fully before the API request runs or potentially something with my JDK, I was using Oracle and will swap to Termium tonight. Note: there were three failing test suites I encountered, this one, one for the Protobuf stuff (unsure of the cause) and another that is 100% OS line endings that I'll fix next.

@Haarolean I would like to fix the other test failures I'm seeing on Windows, but no ETA on when I can get them in :)

Everything is passing now on Windows. I didn't like that I had to change ProtobufFileSerde, the other option is to change the test  files to not be nested in the language folder.

Thanks for a contribution and sorry for the delay


example notebook loading file code snippet

Hello, I have comment regarding the following notebook:
https://github.com/sassoftware/python-
dlpy/blob/master/examples/quick_start/A_Comprehensive_Image_Classification_Example.ipynb
In the code snippet below, the comment says to provide the path AND filename, however,
in the line model_file, it says path-to server-accessible deployment-directory and doesn't explicitly point out that the filename part.
# The model_file variable holds the fully-qualified server-side path
# and file name for your deployed .sashdat model. This should be the
# server location where you deployed the 'model3' vgg16.sashdat table.

model_file = '/path-to/server-accessible/deployment-directory/'

I suggest changing that line to something like the following:
model_file = '/path-to/server-accessible/deployment-directory/your-saved-model-file.sashdat'

This will make it easier for new users, as I too was caught off-guard by this for a moment.

@haghad  - I will ask our tech writer to look at your suggestion.  I think this should be fairly straightforward to include.

Example was updated in pull request #344.


Merges Release Manifests

Merges the Gateway API install manifest into the EG install manifest. Now, only the EG install manifest will be produced as a release artifact. Users will only need a single kubectl apply command to install EG and dependent resources, e.g. Gateway API CRDs.
Fixes: #485
Signed-off-by: danehans<EMAIL_ADDRESS>

Note: The quickstart must be updated when cutting the v0.2.0 release.

Codecov Report

Merging #510 (21936e4) into main (4351905) will decrease coverage by 0.13%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #510      +/-   ##
==========================================
- Coverage   62.51%   62.37%   -0.14%
==========================================
  Files          41       41
  Lines        4468     4468
==========================================
- Hits         2793     2787       -6
- Misses       1531     1536       +5
- Partials      144      145       +1

Impacted Files
Coverage Δ

internal/provider/kubernetes/gatewayclass.go
68.84% <0.00%> (-4.35%)
:arrow_down:

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


Remove rbd pool if it exists and is empty

The rbd pool is created automatically when a new Ceph cluster is
deployed. This pool is not used by an OpenStack deployment by does
consume pgs and so should be removed.

You could do this in conjunction w/ a rados -p rbd ls | wc -l but no one should be using the rbd pool so I think either way this is +1.

LGTM now


CLI: cmd should fail if unsupported parameters are used

Acceptance Criteria
The CLI should print the help message if it receives arguments are not supported.
The CLI should verify subcommands whenever possible (e.g.,  keptn upgrade) following the example of keptn get.
See https://github.com/keptn/keptn/issues/6648#issue-1110131920
DoD

[ ] Unit tests

Close in favor of #6648


Use harness = false instead of #![feature(custom_test_frameworks)]

Quoting from the comment in tests/compiletest.rs:

Custom test runner, to avoid libtest being wrapped around compiletest which wraps libtest.

I believe harness = false is more suitable for that purpose.
I have verified that both ./miri test and LD_LIBRARY_PATH=$PWD/build/x86_64-unknown-linux-gnu/stage2/lib PATH=$PWD/build/bin:$PATH ./x.py test src/tools/miri work well.

Much better, thanks. :-)
@bors r+

:pushpin: Commit 2da6bedaec3f072daae18b7d59e45dd090d48428 has been approved by RalfJung

:hourglass: Testing commit 2da6bedaec3f072daae18b7d59e45dd090d48428 with merge 0e3038571cb1dd5c50aca28e4fe4c325ad5b2e98...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing 0e3038571cb1dd5c50aca28e4fe4c325ad5b2e98 to master...


Eliminate uses of deprecated CONSTANTS

This package still uses deprecated Dart 1 SCREAMING CAPS CONSTANTS. These will be removed shortly in Dart 2. This rewriting tool can be used to automatically migrate code in most cases: https://github.com/dart-lang/dart2_fix .

Thanks for the heads up, I will get to this sometime today.

Great, thanks!

All set, v1.0.1 released

Thanks!


google-github-actions/get-gke-credentials failed with: required "container.clusters.get" permission(s)

I think I'm asking for help here more than anything, or perhaps a significant improvement to your documentation. I've followed everything to the letter, and I'm receiving "google-github-actions/get-gke-credentials failed with: required "container.clusters.get" permission(s)". I'm trying to use the "Direct Workload Identity Federation" option. All the "advice" I find online tells me I need to setup a service account, but your documentation seems pretty clear that with the Direct Workload Identity Federation "there are no intermediate service accounts or keys".
Please let me know what I'm missing.
Here is my action yaml...
name: deploy-k8s-manifests

on:
  push:
    branches:
      - dev
    paths:
      - 'k8s/**'

jobs:
  deploy:
    runs-on: ubuntu-latest

    # Add "id-token" with the intended permissions.
    permissions:
      contents: 'read'
      id-token: 'write'

    steps:
      - name: Get code
        uses: actions/checkout@v4

      - name: Authenticate with GCP
        id: 'auth'
        uses: google-github-actions/auth@v2
        with:
          project_id: 'my-project'
          workload_identity_provider: 'projects/297600345299/locations/global/workloadIdentityPools/github/providers/my-provider'

      - name: Get GKE credentials
        id: 'get-credentials'
        uses: google-github-actions/get-gke-credentials@v2
        with:
          cluster_name: 'preprod'
          location: 'us-central1'

      - name: Apply k8s manifests in GCP
        run: kubectl apply -f k8s

Here is my action output (the relevant portions)...
Authenticate with GCP
Run google-github-actions/auth@v2
Created credentials file at "/home/runner/work/my-project/my-project/gha-creds-c9c4d62169250d9a.json"

Get GKE credentials
Run google-github-actions/get-gke-credentials@v2
Error: google-github-actions/get-gke-credentials failed with: required "container.clusters.get" permission(s) for "projects/my-project/locations/us-central1/clusters/preprod".

Duplicate of https://github.com/google-github-actions/get-gke-credentials/issues/309


Github Action for Github Pages is generating a XML file

Describe the bug
I'm trying to deploy the project using the Github action provided, but when the deploys finishes with no error, the page deployed has only a XML file (and not the static HTML file generated with styles)
To Reproduce
Steps to reproduce the behavior:

Fork the original template repo
Add the deploy.yml file (https://quartz.jzhao.xyz/hosting#github-pages)
Configure the Github Pages to use the action
After the deploy is completed, a github page with a XML is generated

Expected behavior
I expected to see a page like this to be generated: https://quartz.jzhao.xyz/
Screenshots and Source
My repo: https://github.com/BiancaPereira/garden
The XML generated: https://biancapereira.github.io/garden/
Desktop (please complete the following information):

Quartz Version: v4
node Version: v20.10.0
npm version: v10.2.3
OS: MacOS Sonoma
Browser Chrome

Additional context
I noticed from other users that the generated site is on their <user>.github.io URL, without the repo name at the end. I don't know if this is related

I was missing the index.md file in the root of my content folder.
It would be good to add it to the documentation! Or even add this in the bootstrap of the project.


Enumerate inner async pinned handles

Bring async pinned handles into line with ClrMD 1.1 behavior.
Contributes to https://github.com/microsoft/clrmd/issues/881.

There's still a discrepancy in the number of stack roots that ClrMD 2.0 reports.  I will take a look at that before merging this change.

I still have more work to do on #881 but for now I'm going to merge this change and publish it in the next release.


Processing requests sequentially?

Hi,
I am experiencing the following in my SPA (Sails.js 0.11.2 and Mac OS Chrome).

request : GET /cards/1
request : DELETE /cards/1
response : DELETE /cards/1
response : GET /cards/1

Requests are not processed sequentially, making the following to happen in my app:
User shows card, user taps delete, card disappears, card reappears immediately.
I found these information about queuing requests in Node.js, but are there any Sails' way to queue requests?

http://stackoverflow.com/questions/10769736/how-to-queue-http-get-requests-in-nodejs-in-order-to-control-their-rate
https://www.npmjs.com/package/seq-queue

Or is it generally a bad thing to do(thus not implemented)?

Hey @kenjitayama!  Hmm, I don't think you want to do anything w/ request queueing-- requests are processed as soon as they are received.  However what might be happening here is that one request has finished being processed by the time you send the next.  i.e. it sounds like step 4 responds before step 3 has finished.  If I'm understanding right, I think you'd want to address this on the front-end by waiting until you receive a response from AJAX request #3 before unlocking the UI.
Hope that helps!

@mikermcneil
Oh..forgot about the traffic. Thats for sure, queuing would prevent handling heavy traffic.
I'll try queuing in the front-end.
Actually, I need to wait for the GET response before processing the DELETE response, which requests are sent in this order.
Thanks for the advice!


PB-877 document crate root

References

PB-877

Summary

add the intro text from the getting started page

what do you guys think of moving the types which are currently at the crate root to some of the modules? we now have a more deeply structured crate than before when we introduced the types.


cargo wasi test should preopen the current dir by default

Related to #17, tests that rely on any kind of test file, like expected results or test data, are unable to run with cargo wasi test.
When running tests, we should have a sensible default like --dir=.. We could use the same mechanism proposed in #19, but I would still want to provide a default preopen. This will make converting existing projects to Wasm and WASI as seamless as possible.
git clone https://github.com/image-rs/image-tiff.git
cd image-tiff
cargo build && cargo test # works

cargo wasi build && cargo wasi test # should also "just work"

A workaround is to run with:
CARGO_TARGET_WASM32_WASI_RUNNER="wasmtime --dir=." cargo wasi test

I just hit this, and unless there's a better way to build filenames for test fixtures that I (a very new Rust learner) am unaware of, the solution probably needs to also ensure the CARGO_MANIFEST_DIR env-var is passed into wasmtime.
My currently-working env-var is (PowerShell)
$Env:CARGO_TARGET_WASM32_WASI_RUNNER="wasmtime --dir=${PWD} --env CARGO_MANIFEST_DIR=${PWD}

which makes the following work with just cargo test:
    let manfest_dir = env::var("CARGO_MANIFEST_DIR").unwrap();
    let fixture = path!(
        Path::new(&manfest_dir) / "tests" / "fixtures" / "2024-05-30" / "BlueprintList_info.json"
    );

    let data = fs::read_to_string(fixture).unwrap();


Confusing about the multiply operation in cgan

Here, I don't understand why we need to multiply the input image by the label. Don't we need to concat the two part in CGAN? I'll be really appreciate if anyone can help me out!

        model_input = multiply([flat_img, label_embedding])

Looks like it's just a way to add label information without increasing input dimension, however I don't know how it's common.
https://stats.stackexchange.com/questions/270546/how-does-keras-embedding-layer-work

Looks like using embedding layer is suggested here:
https://github.com/soumith/ganhacks#16-discrete-variables-in-conditional-gans

@mrgloom Thanks for your reply, but is there any formal inference for doing so?

I have the same doubt. In case we have multiple auxiliary inputs, then should we multiply all of their embeddings with the noise or concatenate?


I am getting AttributeError: 'module' object has no attribute 'saml'

While running server I am getting "AttributeError: 'module' object has no attribute 'saml'" this is occuring on line " 'name_id_format': saml2.saml.NAMEID_FORMAT_PERSISTENT" in sp configuration.

Super late, but figured I'd share the solution I stumbled on.
Import the NAMEID_FORMAT_PERSISTENT directly instead of just importing saml2
from saml2.saml import NAMEID_FORMAT_PERSISTENT

Very Very late.. but @ScottBarkman 's solution works perfectly. Thanks!!

#CodingThroughTime :)


Adds end-to-end tests.

Adds basic end-to-end tests in the release process. The Github workflow has been updated to run unit tests and end-to-end tests before the release creation. Thus, the release is created only with all the tests passed.
There are some topics that I would discuss with the team.

Should we keep the files used to run the e2e in this repo?
Should we keep the actions created to be used in the e2e-tests in this repo or move to another repo?

This is related to the issue #127

@viccuad thanks for your comment. I'll give you a better feedback soon describing better the goals in the issue trying to address all your questions.

I'm closing this PR because I forgot that the main branch has a PR open for it in my fork, and I do not like this bunch of branch updates with no reason from the review process.

@viccuad thanks for your comment. I'll give you a better feedback soon describing better the goals in the issue trying to address all your questions.

@viccuad , I've updated the issue which we are using to track the story of the end-to-end tests. I've added what it is expected of these changes. I still need to think more about the scripts structure you proposed though.

Thanks @jvanz!  :heart:


Added title option

Added title option to the notification.
Started using this project and really missed the option to add a title to the notification.

Hi @Lacerda, thanks for the PR! Two things:

Please ensure tests pass.
Can you post a screenshot of the UI change?

Hey! :)
The test are passing, Travis is complaining about unmet peerDependencies. There is a problem with the version of eslint.
npm ERR! peerinvalid The package<EMAIL_ADDRESS>does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>
Here is the screenshot: https://cloudup.com/cEzwilT30la
:)

Ok great, I opened an issue for ESLint: #60. The screenshot looks good. :+1:
One last thing and this will be ready for merge: can you change the PR so the component doesn't include the title by default, e.g., you have to provide a title prop for it to show?

Unless I misunderstood something that's the way it is implemented. :) The title will only appear if you provide a title.

Ah ok! I just realized I misread your code changes. I'll merge and release this shortly.

Cool! Thank you!

This is released as version<EMAIL_ADDRESS>:smile:


Application | Core | Model.Core migrated over

Application | Core | Model.Core migrated over

Recommend this is closed / Abandoned as we didn't copy across git history. This has been rectified in branch feature/PV2-3110 that we're currently both working on


Default matrix-multiplication precision on TPUs

Currently, matrix multiplication on TPUs (with float32 dtypes) defaults to bfloat16 multiplication with float32 accumulation. This allows for really fantastic performance for neural nets.
Using higher precision requires explicitly setting it, e.g., jax.numpy.matmul(x, y, precision=jax.lax.Precision.HIGHEST). (We could conceivably shorten this by supporting strings, e.g., jax.numpy.matmul(x, y, precision='highest'))
Is this the right default behavior for functions like jax.numpy.matmul and the @ matmul operator? Or should we switch precision to default to full float32 precision, at the price of extra matrix-multiplication passes? This would probably be a little more annoying for neural network users, but it is arguably less surprising, especially for users who are using matrix-multiplication for other uses.

Closing this in favor of https://github.com/google/jax/issues/2161 (apparently I'm bad at remembering that I already opened an issue on something!)

Note that the precision can also be globally set with JAX_DEFAULT_MATMUL_PRECISION as explained here


add an experimental version of mount to go-ipfs

The next iteration of the mount command is being written from scratch, so it may have inconsistencies with the current implementation. When it's in a working (but still unstable) state, we should put it into go-ipfs behind experimental flags.
Will provide status updates about that as they happen.

Status update:
The current plan is to create a go-ipfs daemon plugin that exposes a filesystem(-server) upon daemon startup.
A client (the mount program in this case) will request and perform operations on this filesystem, and do whatever translations are needed (for the local system).
e.g. translating IPFS semantics into FUSE ones, or overriding certain functions (such as injecting metadata)
The interface around this will require some kind of protocol between the client program and the file system(-server).
With the options being to use either language native or language agnostic semantics.
In the former case you can imagine Go interfaces, in the latter something like 9P (the latter would still be abstracted by interfaces, but implies serialization)
In the short term I'm going to investigate the viability of modifying the 9P protocol, so that we can use it to handle transparency at a data transport layer.
i.e. The interface for interacting with a node's filesystem should work transparently. Regardless of local/remote or cross language considerations
Something like this should allow us to better compose and manipulate tree structures, in a distributed and shared way.
(imagine a single node constructing a tree and serving it to multiple mount clients, concurrently).
It should also allow us to separate parts of the logic. Pushing edge cases or special handling into separate packages, that compose a specific view by wrapping other filesystem servers.
This remains to be seen though. If things start to sprawl out, I'm going to pivot into a fork of go-ipfs that is only capable of mounting itself, and then try to achieve the other goals through other means more gradually.
Backlink: https://github.com/ipfs/package-managers/issues/71

Note: The plan is to have a basic demo of the 9P based system by Monday or a solid understanding of why it won't work.

It might be neat to use gvisor as a test target -- IIUC, they have a filesystem plugin system which is fairly literally 9P protocols.  Might be good for testing convenience that's free of host system hijinx, as well as being a cool demo in and of itself.
Ignore this if it's not on your hot/convenience path of course.  Just throwin' it out there.

Originally I was looking at https://godoc.org/github.com/docker/go-p9p
intending on building to an end that looks similar to what I'm seeing in gvisor's fs pkg's.
With that in mind, it would probably make the most sense to utilize the gvisor libs if we can here.
Very cool!

Status update:
A prototype of the daemon plugin exists and exposes a 9P2000 resource server for the IPFS namespace.
An existing 9P shell can attach to it and exchange protocol messages.
https://www.youtube.com/watch?v=KpwFhV3aNYI
This introduces separation between the node's file system and its client implementations, that are unified around the 9p protocol.
IPFS nodes will expose a 9p service.
Clients will utilize this service; interpreting the data to fit their native requirements (without requiring changes in the node/server implementation).
The demo is not fully functional right now, so the current plan is to keep implementing 9P operations on the server, until we have basic read support for the IPFS namespace, exposed over 9P.
A client program that utilizes this namespace, providing 9P <-> cgofuse bindings, should follow.
For go-ipfs, this will likely mean a series of PR's where we gradually add support.
Starting with a plugin that can serve a read only /ipfs tree.
With a client that can read from it, spawning in a separate repo. (probably something like pkg/9p-cgofuse/cmd/mount-ipfs)
We would then repeat, adding more file trees to this plugin (like /ipns), for clients to attach to. (as they get implemented, reviewed, merged, etc.)

Additional notes:
Testing with existing 9P tools such as mount(1), 9pfuse, v9fs will have to be done as well sometime.
Using 9P software directly with the node if possible seems preferable, while the 9P <-> cgofuse bridge would still be available for compatibility with a wider range of systems/tools.
This may require changes to increase compatibility with other versions of the styx/9p2000 protocol (9p2000.u, 9p2000.L, 9p2000.e, et al.)
Likewise we may want to make our own modifications to 9P messages / the protocol, later.

Hey yall, I just split out gVisor's 9p code into its own lib. I feel it's a bit cleaner than the alternatives mentioned here, and I'm still cleaning it up a bit: http://github.com/hugelgupf/p9

Status update: @djdv ran into some trouble getting that P9 implementation working on Windows and will focus on getting a usable IPFS plugin working on Linux first.

I'm putting this note here because it seems like a good spot for it.
Given the long time between the start of this effort and now, it may be best to recap some things and summarize the status.
We wanted to support mount on more platforms, as well as add some features to it, and improve things such as the performance (common complaint).
Progress was made on this, and resulted in a reasonably functional fork that did the thing (most of the time). All related demos are up here and there's even more textual updates in the related issues.
It mounts on a few more platforms than mainline. And the read performance + scheduling was pretty good. Write support was also there for IPNS and MFS, however these suffered severely in performance for batches of small writes. Copying over GB large files seemed like native speeds during testing, but doing a shallow clone of the source repo took longer than a day to complete.
This matches up with things that have been reported by @dirkmc and @andrew, in regards to adding files and mirroring package repos.
The fuse branch(es) that exists, ~is made up of spaghetti code~ unfortunately never became stable enough to replace the existing implementation with it. There was a lot of complexity initially and this was reduced several times over, but issues would persisted in some areas.
Since then, research on other file and operating systems has been done, and designs have continued to be discussed, with more people joining in.
Long term, the ideal is to not only have something compatible, but also flexible. We should be able to have the same relationship the gateway has with HTTP, but at a file system protocol/ABI/API level. (the ideal being that supporting other protocols/platforms should not be a maintenance burden or be too unapproachable for those not familiar with the entire project codebase)
Code review with the existing fork would have been just unreasonable.
With all that in mind, the current plan is to just take all this context and take a more sensible approach to the same problem. Gradually migrating step by step from the existing fork, and making design decisions in phases (rather than not at all / all at once).

Editorial:
I feel as though this sort of approach was much less feasible when the effort began, since starting a lot of our APIs have changed for the better. Despite gaining flexibility, the complexity has been reducing over time, and indirectly our foundational APIs have been able to improve based on requirements from efforts like these. Things such as the coreapi have been a great aid.

Status update: @djdv ran into some trouble getting that P9 implementation working on Windows and will focus on getting a usable IPFS plugin working on Linux first.

Clarifying this. The p9 library couldn't receive messages on Windows but this was quickly amended thanks to @hugelgupf.
I'm at a point currently where I can start a daemon which hosts a 9p resource server/file system server, and have a client connect to it and do some operations. Right now we have a root that contains a soft directory, and that subdirectory contains the contents of your IPFS pins.
Doing development on a Windows machine primarily at the moment.

bonus image from yesterday's meeting (content warning, broken font rendering in my terminal)

Next should come metadata translations, and file reading support for IPFS objects under /ipfs/Qm....

The topic of cross platform error values did come up though (centring around the use of syscall.Errno being used). It remains to be seen if this is going to cause issues yet when dealing with different types of machines and operating systems.

Status update: (https://github.com/djdv/go-ipfs/commit/3dc315f65733058905d75666855236c42805c4a7)
I managed to read some IPFS paths.

Unfortunately my terminal fonts still look weird.
Next I'm going to try and put this behind some kind of experimental flag, so that the server only starts listening when enabled. This should help us towards getting a PR against go-ipfs.
I'm also going to point a 9P aware client (like 9vfs) at it and see what happens.
The client in that screenshot is written by us and lives inside the plugin directory here.
It simply connects and spits out a lot of info. In the future we're going to want one of these that connects to the server and translates between 9P <-> FUSE.
There's also the issue about error return values being different across platforms. I'm going to ignore this for now and continue testing the client and server on the same platforms. With cross platform support considerations to come later. Ideally any client should be able to connect to any server without inconsistencies.

Note:
For testing the client, I needed to enable a kernel config option CONFIG_NET_9P_DEBUG, otherwise the debug parameter in mount -v -t 9p -o debug=4 <IP_ADDRESS> ./9test had no effect, only errors were being printed.

Related debug kernel packages for Arch: https://drive.google.com/open?id=1Bf-vKSsscNa4C4ZSaCQfDEhrdTAjpsYq

When mounting, it seems like the kernel client is trying to open the root as a regular file. The server responds with (-22) which I assume is EINVAL. The server should be telling the client the mode of the root is a directory so I'll have to see why this is happening.

Followup to the previous post.
https://youtu.be/89XNgCO3Dw0
Linux's ls is making a request that should be valid, but is getting denied here
https://github.com/hugelgupf/p9/blob/7ba0920fba11f7a99b28401f1a01852643f3717d/p9/handlers.go#L273-L277
before the library actually invokes our own Open call
https://github.com/hugelgupf/p9/blob/7ba0920fba11f7a99b28401f1a01852643f3717d/p9/handlers.go#L294-L295
We need to see where the discrepancy is. The request from ls may be valid, and the check returning EINVAL may be too strict. It's possible the server is returning bad data somewhere. Going to continue checking the debugger and message logs.
cc: @Stebalien

Ah, I found the issue. The issue is that we're trying to open the file non-blocking, as far as I can tell. That is. The 0o4000 in 0o304000 is O_NONBLOCK.
I misread the code. It's not checking for a read/write flag. It's checking to make sure there aren't any bits we don't understand. We need to modify the library to handle this "don't block" request and turn it into a "operate offline" request (maybe prefetching on the side?).

Filed an issue: https://github.com/hugelgupf/p9/issues/6.

Not there yet, but getting there.
https://youtu.be/e719oTQUu1U

Status update: (https://github.com/djdv/go-ipfs/commit/f97fde49c7a276abf6dbeba339299cf87e257713)
I fixed some issues around walking paths, as well as some issues around returning bad metadata. (times where simply wrong (lol) and "kind" conversion between IPFS types (core, ufs) <-> 9P (9P FileMode, QIDType) was ironed out a bit.
I managed to remotely interact with an IPFS node running on Windows machine, from inside a Linux machine. Using IPFS data with a few existing programs.

https://youtu.be/0XXn8iqBtGs

A draft PR has been put up here https://github.com/ipfs/go-ipfs/pull/6612
I'll need to write some tests, and get input on some work that can be done in other packages before this can go it, but it should be functional at the moment.
After all that, these are the current plans for next steps:

IPNS Read+Write
Maybe add 9P2000.u support to server library (p9) (would support existing 9pfuse (written in Plan9-C) client)
| (both should probably happen, independent of order)
Maybe write our own fuse client (in Go) that uses 9P2000.L (or our own) specification

In speaking with @stebalien about metadata, it seems like we'll want to couple attributes with newly generated data, rather than try to retrofit existing data with non-distributed attributes (essentially would have been a node-local database). So this will be considered going forward.
e.g. We'll see write calls producing new formats containing attributes instead of adding a layer which adds attributes during calls on old formats.


Impl. DPI awareness on Windows

This adds two new keys, dpiAware and dpiAwareness, to all of the Windows application manifests. dpiAware was introduced in Windows Vista and dpiAwareness is the recommended key on Windows 10. Microsoft docs suggest they should both be included for compatibility.
I've enabled per-monitor awareness, a description of which is available here.
I also included the supportedOS key for Windows 10 to all of the application manifests. This is not strictly necessary for DPI awareness; I can remove this change and reintroduce it another PR if that is preferred.
I tested this by running tester.exe on my laptop—which has a Hi DPI monitor—before and after the change. I noticed that the application appeared blurry before the change but is clearer now.
Let me know if you run into any issues.

I was not aware there was a previous HiDPI discussion; thanks for bringing it to my attention. It shouldn't be too difficult to additionally enable DPI awareness programmatically.

Also missing some fixes for pixel calculations inside a few controls such as uiColorButton.

I'll take a look.

Yes, I can confirm there are differences in the sizes and positioning of some controls. For reference, I have compiled libui-ng with and without DPI awareness. See below for a visual comparison.

Dpi Unaware
Dpi Aware

The color picker is obviously wrong; it seems libui-ng thinks the size of the button is greater than it is, so it increases the left and top offsets such that the color preview rectangle now clips through the button.
Also, for some reason, the multiline entries are shorter in the DPI-aware build. I haven't looked at the code so I don't know if that's just an issue with how Control Gallery initializes the entries or if there's something awry with the multiline entry implementation itself. The other entry types look OK though.

I just pushed a commit that (I hope!) fixes the color button issue. Let me know if you notice any adverse effects, but I've run through a few of the example programs and it seems fine.
Here's a screenshot of the DPI aware build with the above fix:

See the original fixes for multiline entries and color buttons: here.

I've run through a few of the example programs and it seems fine.

What about tester.exe? I would expect some regressions on Page 6.

Sorry for disappearing for two months! I should be able to work on things for a little bit now.

Won't this break mixed DPI setups? Zero means the "system default DPI", which is the DPI of the first monitor detected in the system?
I had thought the purpose of querying the DC here was DPI awareness of the underlying monitor where the HWND is currently being displayed.

I did not know that; thank you for letting me know. Though, I am curious why this seemed to work at all, or why the original code broke. I am not very familiar with DPI awareness or Win32 in general. From the original libui PR you linked to, it looks like Windows APIs assume a DPI of 92, or something? Is that related?

What about tester.exe? I would expect some regressions on Page 6.

There are some minor differences, but I'm not sure what to look for, so I don't know if they're regressions or not. Below is a table of the differences between four of the pages. Let me know if you want me to provide more samples.

Dpi Unaware
Dpi Aware

Though, I am curious why this seemed to work at all

It's sure a good question.. Whenever one attempts to revive an abandoned codebase, such questions inevitably will come up: wait, how did this broken code ever work in the first place!? 😛

There are some minor differences, but I'm not sure what to look for, so I don't know if they're regressions or not

Those screenshots all look correct to me so far. 👍
This issue merits a lot more testing from a mixed DPI environment on Windows. That's probably the only way to resolve this.

OK, I implemented the fix you linked. The color button seems to still work, but I don't see any change in the multiline entry (even when I increase WINVER so that GetDpiForWindow is defined).

This issue merits a lot more testing from a mixed DPI environment on Windows. That's probably the only way to resolve this.

I agree. I don't have a way to test that at the moment.

I do have a question, though. The fix uses GetDpiForSystem to scale the minimum size of multiline entries; I changed this to GetDpiForWindow because it sounds like GetDpiForSystem wouldn't work in a mixed-DPI system. But, wouldn't our approach in draw.cpp also work? (I.e., where we call GetDeviceCaps(dc, LOGPIXELS{X,Y}).) Or, do the values returned by GetDpiForSystem and GetDeviceCaps represent different things?
The advantage of possibly using GetDeviceCaps is that it isn't limited to Windows 10, which the GetDpiForSystem function (and friends) are.

I changed this to GetDpiForWindow because it sounds like GetDpiForSystem wouldn't work in a mixed-DPI system.

Yes GetDpiForWindow appears to be the correct solution in all cases.

Or, do the values returned by GetDpiForSystem and GetDeviceCaps(dc, LOGPIXELS{X,Y}) represent different things?

AFAICT from the docs, these are functionally the same:
LOGPIXELSX | Number of pixels per logical inch along the screen width.
In a system with multiple display monitors, this value is the same for all monitors.
-- | --
LOGPIXELSY | Number of pixels per logical inch along the screen height.
In a system with multiple display monitors, this value is the same for all monitors.


Print dashboard nearly online

Blocked: I can't figure out how to get data to Prometheus from the metrics server.
Metrics are being exposed on port 5000, and everything looks right there. Prometheus, cadvisor, and Grafana also look good on their respective ports. Everything runs in docker correctly, and docker is (temporarily) setup to expose all of those ports for testing. The only part that doesn't seem to work is getting Prometheus to scrape the metrics server (on port 5000) and I'm not sure why.
There are some additional issues with this that need to be sorted out (like auth in Grafana), but that's not blocking my progress yet.
@evanugarte any thoughts on this?

Yeah, so making this PR helped me find the issue: I needed to put all of the new components on the quasar network.

let me take a look tonight and get back to u

@starphys i think we should split this into smaller modular prs:

exposing default metrics from the printer container
defining cadvisor + prometheus containers
defining grafana container + dashboard for cpu/memory

all the work is in this one, splitting it is easy


Unable to install pyrealsense2 in docker (windows)

Before opening a new issue, we wanted to provide you with some useful suggestions (Click "Preview" above for a better view):

Consider checking out SDK examples.
Have you looked in our documentations?
Is you question a frequently asked one?
Try searching our GitHub Issues (open and closed) for a similar issue.

All users are welcomed to report bugs, ask questions, suggest or request enhancements and generally feel free to open new issue, even if they haven't followed any of the suggestions above :)

Required Info

Camera Model
D415

Firmware Version
Intel RealSense Viewer v2.35.2

Operating System & Version
Windows 10

Kernel Version (Linux Only)

Platform
PC

SDK Version
2.0

Language
python 3.7

Segment
{ }

Issue Description
I wish to install pyrealsense2 in dockerfile. pip3 install pyrealsense2 gives the follwoing error -

I am a beginner in docker and docker file is so written -

Can somebody kindly point me in the right direction and say what is wrong?
I was able to run and use pyrealsense2 in my local computer and installed it using  - pip install pyrealsense2.
I've been reading a lot to make from source but I've been unsuccessful due to my incompetency and other results are for Linux whereas my host OS is windows 10.
Help appreciated.
Thank you in advance.

Hi @Harleens13
Could you please check version of python?
We currently publish packages for 2.7, 3.6 and 3.7, but not for 3.8.

Hello @dorodnic
As I see.. its 3.7.3

But what you think it was 3.8 again? Also in case someone has more than one python version installed how could we make sure it downloads to version 3.7?

@Harleens13 , the downloaded packages are targeted for python 3.8, so apparently the docker has this version installed

Hello @ev-mp ,
Thank you for pointing out. That was very foolish of me to not understand that part.
We will degrade the version but either way, is builiding from source still an option, yeah?


Google verification

Signed-off-by: Dan Kohn<EMAIL_ADDRESS>This will enable use of Google Webmaster tools. I'll share access with other admins after setting up. I'm particularly interested in using this tool to track badges in use.

Will merge as-is.  Is there a reason this text file has no newline at the end-of-file?
If not, it might be wise to add it; such files are odd.

I just took what they gave me. It will work either way.
--
Dan Kohn<EMAIL_ADDRESS>Senior Advisor, Core Infrastructure Initiative
tel:+1-415-233-1000
On Thu, May 19, 2016 at 2:25 PM, David A. Wheeler<EMAIL_ADDRESS>wrote:

Will merge as-is. Is there a reason this text file has no newline at the
end-of-file?
If not, it might be wise to add it; such files are odd.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/linuxfoundation/cii-best-practices-badge/pull/375#issuecomment-220410491


I've installed go and set the workspace to ~/go:
~ $ echo $GOPATH
/Users/dpursehouse/go

I had previously installed git-lfs with homebrew, so removed that and installed again using go get github.com/github/git-lfs per the documentation. Now the default git-lfs is the one from the workspace:
~ $ which git-lfs
/Users/dpursehouse/go/bin/git-lfs

So far so good.  But my usual place to do development work is in ~/git/, so I've made a symlink from there to the one in the go workspace:
~ $ ls -la ~/git/git-lfs
lrwxr-xr-x  1 dpursehouse  790772617  51 Aug 13 13:17 /Users/dpursehouse/git/git-lfs -> /Users/dpursehouse/go/src/github.com/github/git-lfs

Building with script/bootstrap works, and generates git-lfs in ./bin, but to make it actually be used I had to symlink to it:
~ $ ls -la /Users/dpursehouse/go/bin/git-lfs
lrwxr-xr-x  1 dpursehouse  790772617  42 Aug 13 13:37 /Users/dpursehouse/go/bin/git-lfs -> /Users/dpursehouse/git/git-lfs/bin/git-lfs

This isn't described in the documentation, so I'm wondering if it's the expected way to do it, or I'm missing something?

The various packages and installers that we release should put the Git LFS binary in the appropriate path. Using go get to download Git LFS is mainly for LFS developers, and not end users. Using the symlink is a valid workaround, though.
Keep in mind that for Go development, Git LFS should live in $GOPATH/src/github.com/github/git-lfs (this is where go get puts it). I'm surprised script/bootstrap worked from your ~/git directory :)

Git LFS should live in $GOPATH/src/github.com/github/git-lfs (this is where go get puts it). I'm surprised script/bootstrap worked from your ~/git directory :)

That's where it is.  It's symlinked into ~/git.
I was doing some hacking on the git-lfs client (issue 1356) which is why I installed it with go get.
It all seems to be working with the symlink, so I guess this one can be closed.


EuDML Fixes of MathMLCan

Hi Michal,
These are changes I have done in order to fix bug and make MathMLCan faster. My pull request should contain only changes valuable for original code, because I have tried hard not to include changes related to changing artifact's group to eu.eudml and releases.
Best regards,
Wojtek

Merged.


ECharts not loading user interface

When clicking on the ECharts item on the main navigation panel, I just see the loading animation forever. No log messages indicating any error. I tried restarting ioBroker, restarting raspberry pi, full browser refresh, Firefox and Edge.

I'm happy to provide any more details if required.
Version: 1.0.0 from Github
JSController 3.2.16
Running on Raspbery Pi 4.
Browser: Firefox 89.0.2

Is the same for me.
E-Charts keeps on loading with version 1.0.0
regards Chris

Is the same for me.
E-Charts keeps on loading with version 1.0.0
Tried also to downgrade to 0.4.14 and then to 1.0.0 also not worked for me.
node:12.22.1
nodejs:12.22.1
JSController 3.2.16
regards Chris

Which admin version do you have?

Is the same for me.
E-Charts keeps on loading with version 1.0.0
Tried also to downgrade to 0.4.14 and then to 1.0.0 also not worked for me.
node:12.22.1
nodejs:12.22.1
JSController 3.2.16
regards Chris

Which admin version do you have?

I'm not Chris but my Admin version is 4.2.1.

Is the same for me.
E-Charts keeps on loading with version 1.0.0
Tried also to downgrade to 0.4.14 and then to 1.0.0 also not worked for me.
node:12.22.1
nodejs:12.22.1
JSController 3.2.16
regards Chris

Which admin version do you have?

I also have 4.2.1 Admin Version
regards

Tried also Version 1.0.1 the same issue.
regards Chris

Bei mir selbes Problem. Mit V1.01 vom Adapter. Admi 4.21. Nach Downgrade funktioniert es wieder.
Im Forum habe ich gelesen das es bei jemanden mit Admi 5.x funktioniert.
Vermutlich Breaking Change mit V1.x ?

Please test 1.0.2

1.0.2 works. Thanks!

Funktioniert bei mir auch wieder. issue sollte geschlossen werden


Wrong values for $_SERVER['REQUEST_TIME'] and $_SERVER['REQUEST_TIME_FLOAT']

Every request has the same value for $_SERVER['REQUEST_TIME'] (the timestamp of when the rr process started). $_SERVER['REQUEST_TIME_FLOAT'] is similar but the only for the seconds part, the milliseconds is always changing.
Some middleware rely on that value and will misbehave due to the wrong value, e.g.:  https://github.com/middlewares/response-time/blob/0eb140f53365bcda5a88449fda29b818aa95c64a/src/ResponseTime.php#L18-L25

Solved as part of v1.1.0 update.


Start shipping Mono in .app

http://www.mono-project.com/news/2016/03/31/mono-relicensed-mit/
https://github.com/mono/mono/blob/master/LICENSE
With the more liberal relicense of Mono as a result of MS' Xamarin purchase, AFAICT we can start shipping Mono Mono in the .app bundle without issue. (Someone tell me if I'm wrong!)
The user no longer having to download Mono themselves should solve an entire class of problems, as well as making it easier on (obviously) the user.

Things that don't work, but keeping note in case we do want to just ship one massive binary one day:
(Issue is SetCurrentDirectory in .net ends up being called, but with a mysteriously empty path (apparently)).
AS="as -arch i386" CC="cc -arch i386 -framework CoreFoundation -lobjc -liconv" PKG_CONFIG_PATH=/Library/Frameworks/Mono.framework/Libraries/pkgconfig MONO_PATH=. mkbundle --static --deps SpaceChem.exe -o testo
(linking against corefoundation et al. not needed <4.4)

Things that seem to be working:
MonoKickstart based on... a random commit very shortly after 4.4.0, courtesy of https://github.com/MadMatt04/MonoKickstart/ . Using this branch because this guy has hacked out 64-bit support, presumably for something like the reason we need to. (Otherwise libnative.dylib won't load for us - it's 32-bit only...)
Stole I18N* DLLs from my native OS X 4.4.0 installation to solve ICSharp Zip stuff causing Mono to complain it doesn't understand codepage IBM437.
Currently dealing with the 4.4 Web problems. I believe Mono introduced support for having the System.Web.* stack backed by native stuff going through P/Invoke or the old DIY stack, and this is the root cause of the problems. Rather than try and figure out how to pass the correct configuration - because, in all likelihood, with kick.c there IS NO WAY TO PASS THE CORRECT CONFIGURATION - I'm currently installing 4.2 and planning to steal me some DLLs.

Alright. Spent ages messing around with it... I haven't fixed the web stuff, but the web stuff I saw in the console was actually just a crash upload failing, so I've been working through the crash logs instead.
 Hey, it's in the .app - that's good enough for me right now.
Lots of redundant files. Going to refresh SpaceChem.app from Steam and transplant back in.
Current problems:

Web shit broken (might well end up just reverse engineering what parts of the web request whatever SpaceChem uses, and writing a shim)
Why doesn't System.Data.Sqlite work?!?
Will probably need to shove libgdiplus.dylib in. But the various MonoKickstart repositories have this, so whatever.
I have completely lost track of which files I got from where, and will probably have to reconstruct my work once I've got a POC

Yeah it works... holy crap i need to document this before i forget everything


Is there a way to use Resources as SubResources?

I'm working on pykemon, and many subresources are just other resources.
So I would like to avoid having to write almost exactly the same classes but as a subsesources

It should just work™ - give it a try and see.

Ok, I found out I can... but because there are some resources that have each other as subresources ( A is subresource of B and B is subresource of A) I can't define them both sequentially on the same file.


all pods crashing after successfull deployment

lookin at oone of the pods, kubectl logs does not show anything but describe shows.
Events:
Type     Reason     Age                 From               Message

Normal   Scheduled  16m                 default-scheduler  Successfully assigned viya4-frg-v1/sas-logon-app-764795d975-ps8pb to aks-stateless-38049675-vmss000000
Normal   Pulled     16m (x3 over 16m)   kubelet            Container image "cr.sas.com/viya-4-x64_oci_linux_2-docker/sas-certframe:3.7.2-20201208.1607438373197" already present on machine
Normal   Started    16m (x3 over 16m)   kubelet            Started container sas-certframe
Normal   Created    13m (x4 over 16m)   kubelet            Created container sas-certframe
Warning  BackOff    62s (x56 over 16m)  kubelet            Back-off restarting failed container
root@henmo:~/project/viya4-deployment# kubectl describe pod sas-logon-app-764795d975-ps8pb -n viya4-frg-v1

any  help here please

more info
viya4-deployment# kubectl get pods -A |grep logon
viya4-frg-v1    sas-logon-app-764795d975-ps8pb                                  0/1     Init:CrashLoopBackOff   10         27m
root@henmo:~/project/viya4-deployment# kubectl exec   sas-logon-app-764795d975-ps8pb -n viya4-frg-v1 bash
kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl exec [POD] -- [COMMAND] instead.
Defaulted container "sas-logon-app" out of: sas-logon-app, sas-certframe (init)
error: unable to upgrade connection: container not found ("sas-logon-app")

You're not providing any information here. If you're having issues with SAS Viya running in the cluster you'll need to find out if the images are being pulled, which they appear to be from the info you shared. You'll need to identify what in the cluster is not working for SAS Viya and interrogate those pods. If you have not read the docs, here is the SAS Viya 4 documentation link. Not much more to help with here, you've not provided much information.

IAC using terraform was deployed successfully.
Command:
root@henmo:~/project/viya4-deployment# ansible-playbook   -e BASE_DIR=$HOME/project/viya4-deployment   -e CONFIG=$HOME/project/viya4-deployment/ansible-vars.yaml   -e TFSTATE=$HOME/project/viya4-iac-azure/terraform.tfstate   -e JUMP_SVR_PRIVATE_KEY=$HOME/.ssh/id_rsa   playbooks/playbook.yaml --tags "baseline,viya,install
VIya sas ansible deployment was working successfully, although it was successfull, i recorded the output, this is the only error found:
alhost] => {"changed": true, "cmd": ["kubectl", "--kubeconfig", "/tmp/ansible.8tr74yoz/.kube", "apply", "-n", "viya4-frg-v1", "--selector=sas.com/admin=namespace", "-f", "/root/project/viya4-deployment/kubeviya-aks/viya4-frg-v1/site.yaml", "--prune"], "delta": "0:00:14.458619", "end": "2021-08-14 18:19:36.852782", "failed_when_result": false, "msg": "non-zero return code", "rc": 1, "start": "2021-08-14 18:19:22.394163", "stderr": "Warning: extensions/v1beta1 Ingress is deprecated in v1.14+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress\nWarning: networking.k8s.io/v1beta1 Ingress is deprecated in v1.19+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress\nError from server (Invalid): error when creating "/root/project/viya4-deployment/kubeviya-aks/viya4-frg-v1/site.yaml": Ingress.extensions "sas-event-stream-processing-metering-app" is invalid: [spec.rules[0].host: Invalid value: "viya4_frg.ingress.com": a DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is 'a-z0-9?(\.a-z0-9?)'), spec.tls[0].hosts[0]: Invalid value: "viya4_frg.ingress.com": a DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is 'a-z0-9?(\.a-z0-9?)')]\nError
Logs and describe does not show enough information at all other than the one I provided. I have not checked every single one. As you mentioned I checkec cache and logon pods, nothing informational in the logs that lead to the issue.

OK that was fixed, no errors on the output for ansible deployment.
Pods still not running but i have  a different error.
Events:
Type     Reason     Age                    From               Message

Normal   Scheduled  8m19s                  default-scheduler  Successfully assigned viya4-frg-v1/sas-logon-app-5649dc7f64-9krww to aks-stateless-38049675-vmss000000
Normal   Pulled     8m14s                  kubelet            Container image "cr.sas.com/viya-4-x64_oci_linux_2-docker/sas-certframe:3.7.2-20201208.1607438373197" already present on machine
Normal   Created    8m9s                   kubelet            Created container sas-certframe
Normal   Started    8m8s                   kubelet            Started container sas-certframe
Warning  Failed     5m46s                  kubelet            Failed to pull image "cr.sas.com/viya-4-x64_oci_linux_2-docker/sas-logon-app:2.39.9-20201002.1601645502383": rpc error: code = FailedPrecondition desc = failed to pull and unpack image "cr.sas.com/viya-4-x64_oci_linux_2-docker/sas-logon-app:2.39.9-20201002.1601645502383": failed commit on ref "layer-sha256:e1f6b366065c7812f6046058705acac95885ec6f616e384cf86700469b34b680": "layer-sha256:e1f6b366065c7812f6046058705acac95885ec6f616e384cf86700469b34b680" failed size validation: 341 != 342: failed precondition

That's an issue with the container registry and not the tooling. You'll have to reach out to folks there. Could also be related to your order if it has had content updates. Againk, not much to go on.

are there any updates on this issue? @henmo09 if this can be closed, please let us know. Also, if it has been solved, please do share the steps that led to a solution.

No response from @henmo09 closing.


Installation error at CMake/sitkSourceVersion.cmake:38 (include): include could not find load file

When a user is downloading the zip file from Github, and not via git clone, the following error occurs because the .git directory is missing:
 Installation error at CMake/sitkSourceVersion.cmake:38 (include): include could not find load file

The issue continuous to resurface as has briefly been discussed in SuperElastix/SimpleElastix#105. Can we provide a solution to this problem?

So the versioning of SimpleITK was designed to inspect the git repository, or fall back to a generated sitkSourceVersions.cmake file from packaged bundled by the "Utilities/Maintenance/SourceTarball.bash" script. The problem only occurs with the zips or tar balls generated by Github or another naive archiving.
This use case should still produce a warning that a proper full version can not be obtained.
We'll need to find some values for the version information that will compare as less than any version with the proper information, and clearly marks the version as unknown.
https://github.com/SimpleITK/SimpleITK/blob/d2fdbdde0cbb494c8033e55e7c729282736dc6bc/CMake/sitkSourceVersion.cmake#L34-L40

This should be resolved by the following topic:
https://github.com/SimpleITK/SimpleITK/compare/fef8296367c2c522f94cc17f203e0721a8713abc^^...fef8296367c2c522f94cc17f203e0721a8713abc


NLog 4.4 cannot handle new ReadOnlySpan implicit operator on string

Spun up a quick docker container as smoke test:
    root@8391e3c12c9c:/# mono --trace=exceptions /opt/NzbDrone/NzbDrone.exe
    [0x7f0e0fc97740:] EXCEPTION handling: System.ArgumentException: Object of type 'System.ReadOnlySpan`1[System.Char]' cannot be converted to type 'System.String'.
    [0x7f0e0fc97740:] EXCEPTION handling: NLog.NLogConfigurationException: Error when setting property 'Format' on Layout Renderer: ${exception}

Not sure what to make of it, but wild guess some newer dotnet core code in mono broke backward compat. Can't look into it further today, so yeah, you might want to downgrade to the 5.8 snapshot.
https://www.reddit.com/r/sonarr/comments/80g1e2/broken_after_upgrade_to_mono_510_stable/
Think this is causing the issue:
        [MethodImpl(MethodImplOptions.AggressiveInlining)]
        public static implicit operator ReadOnlySpan<char>(string value) =>
value != null ? new ReadOnlySpan<char>(ref value.GetRawStringData(), value.Length) : default;

https://github.com/dotnet/coreclr/blob/9b0a9fd623c8448af4619acb30b0b469aa5dd6b2/src/mscorlib/src/System/String.cs#L701
Which TryImplicitConversion finds and then attempts to use. NLog 4.5 doesn't react to implicit conversions on System-types.

Adding the following lines to the top of TryImplicitConversion will fix the issue:
        private static bool TryImplicitConversion(Type resultType, string value, out object result)
        {
            try
            {
                if (Convert.GetTypeCode(resultType) != TypeCode.Object)
                {
                    result = null;
                    return false;
                }

great work!

NLog 4.5 -> #2599
NLog 4.4.14 -> #2600


Support for PUT /securetrack/api/generic_devices/{id}

Hello,
Are there plans to support PUT /securetrack/api/generic_devices/{id}
I saw there is no code for adding multi_part_form with the put_uri function.
I wanted to make the script to upload the configuration to generic_devices.
Kind Regards,
Sander Zumbrink

Hi,
I am also looking to add and update generic devices using the /securetrack/api/generic_devices/{id} endpoint.
Are there any plans to add the functionality to the library?
Thanks,
Simon


Feature/secret

Summary

This adds the ability to specify a registry secret similar to the mattermost-operator helm chart. I was having issues with specifying the registry secret, this PR makes it more clear in the helm-values.yaml.
Ticket Link

Could this be included with the hacktoberfest label?

Hello @patatman,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

hey @patatman could you please elaborate what was the issue you faced? If you keep imagePullSecrets empty there shouldn't be any issue.

The issue is in the values.yaml when you do want to use a registry secret.
The current setup requires a list of registry secrets, which isn't normally the case. You'd only have one registry secret for that specific image.
This PR makes this more clear, and uses the same setup as the other helm chart (and unifying the config with the different helm charts).
Not a breaking issue currently, but a minor improvement.

The issue is in the values.yaml when you do want to use a registry secret. The current setup requires a list of registry secrets, which isn't normally the case. You'd only have one registry secret for that specific image.
This PR makes this more clear, and uses the same setup as the other helm chart (and unifying the config with the different helm charts).
Not a breaking issue currently, but a minor improvement.

I believe this actually will limit any changes in the future. If for any reason we need to add another container like initContainer and we need another secret for a different registry this will limit us actually right?

Yeah I do think that limits it, but not for the init container. Since this registry secret is used for the pod, and a container(including an init container) is tied to a pod.
But I do think you'll have the same issue with the current setup.

Because this limits the use of only one secret, I discussed with @spirosoik that the current implementation is more suited for future changes.
Going to cancel this PR.


Fix crashes resulting from parse errors with numparams

When parse errors occur in a context where numparams are allowed, error handling was not reverting the allowNumparams parser state back to what it was in the containing context. This means that we would see crashes when there was parse error with a block, and a numparam identifier parsed outside of a block context.
All of the tests added in the first commit were crashing in the parser before this change, so there is no diff to show on desugar-tree output with the addition of the fix.
Motivation
Avoid crashing when recovering from parse errors in numparam contexts.
Test plan

See included automated tests.

We have a policy of testing changes to Sorbet against Stripe's codebase before
merging them. I've kicked off a test run for the current PR.  When the build
finishes, I'll share with you whether or how it failed. Thanks!
Stripe employees can see the build results here:
→ https://go/builds/bui_RAFXXycIl2Fbzv
→ https://go/builds/bui_RAFXXXmiVwKlwU
→ https://go/builds/bui_RAFXG8JbqnjK73


need x86/x86_64 hardware acceleration

like https://github.com/torvalds/linux/commit/5b2efa2bb865eb784e06987c7ce98c3c835b495b
and<EMAIL_ADDRESS>

@uudiin

Would probably get that done in next BabaSSL 8.4

#250


[Task]: Playground integration tests. Running with shortcuts: start, cancel, reset.

What needs to happen?
Playground integration tests. Running with shortcuts: start, cancel, reset.
Issue Priority
Priority: 3 (nice-to-have improvement)
Issue Components

[ ] Component: Python SDK
[ ] Component: Java SDK
[ ] Component: Go SDK
[ ] Component: Typescript SDK
[ ] Component: IO connector
[ ] Component: Beam examples
[X] Component: Beam playground
[ ] Component: Beam katas
[ ] Component: Website
[ ] Component: Spark Runner
[ ] Component: Flink Runner
[ ] Component: Samza Runner
[ ] Component: Twister2 Runner
[ ] Component: Hazelcast Jet Runner
[ ] Component: Google Cloud Dataflow Runner

.take-issue


Emit an error instead of a warning when a file has multiple root level model, actor or light elements

Summary
https://github.com/ignitionrobotics/sdformat/pull/433 and https://github.com/ignitionrobotics/sdformat/pull/444 made it so that only one root level model, actor or light can be contained in an SDFormat file. So as to not break existing behavior, only a warning was issued if more than one is found. These have now been converted to errors. This PR also removes deprecated functions for accessing multiple model, actor or light elements from sdf::Root.
Checklist

[x] Signed all commits for DCO
[x] Added tests
[ ] Added example and/or tutorial
[x] Updated documentation (as needed)
[x] Updated migration guide (as needed)
[x] codecheck passed (See contributing)
[x] All tests passed (See test coverage)
[ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge

Codecov Report

Merging #619 (07e6fa1) into main (d8f8415) will decrease coverage by 0.02%.
 Consider uploading reports for the commit 104944f to get more accurate results

@@            Coverage Diff             @@
##             main     #619      +/-   ##
==========================================
- Coverage   87.62%   87.59%   -0.03%
==========================================
  Files          72       72
  Lines       10534    10513      -21
==========================================
- Hits         9230     9209      -21
  Misses       1304     1304

Impacted Files
Coverage Δ

src/Root.cc
93.15% <83.67%> (+1.53%)
:arrow_up:

src/parser.cc
84.31% <100.00%> (ø)

src/Utils.cc
82.81% <0.00%> (-3.13%)
:arrow_down:

Continue to review full report at Codecov.

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

LGTM


fix test image issues

Some ibm images were stale, so updated tests which use them.
Also updated chart-0.1.0-v3.valid.tgz:

to use newer ibm images
increase flexibility for the kube version specified in chart.yaml.

Note: there is also a test which check the sha for this chart, but uses the chart from main. As a result this test will fail intil the new this PR is merged.

@mmulholla How do you get the expected error? Ran make test and all tests passed.

The failure only happens in the PR build, make test just runs go tests and the failing test is not part of that. If you look in the PR build logs you will see the error.


Unable to perform https-termination

Hi Team,
I followed the steps illustrated for https termination, but not able to access the application over https. When I curl the public IP there is no response

Hello @liza-123
Can you please provide your configuration YAML files?
That would really be helpful in getting started.


MuiGrid-grid-sm-6 cannot be override

Hi,
we found an inconsistency in material-ui grid layout system.
We use a theme on MuiGrid to override property on grid-sm-6 of a grid item.
Disturbingly, it works very well on grid-xs-12. But when we use it on grid-sm-6, it is doesn't effect the layout.
Our reference is https://material-ui.com/api/grid/ .
Note that we use overrides property.
Best regards,
Frédéric

The issue has been closed because it does not conform to our issue requirements.
Please provide a full reproduction test case. This would help a lot 👷 .
A live example would be perfect. This codesandbox.io template may be a good starting point. Thank you!


Corpus.py needs updating for YAML>5

corpus.py line 38 needs to change from
return yaml.load(data_file)
to
return yaml.load(data_file, Loader=yaml.FullLoader)
per this update to yaml:
https://github.com/yaml/pyyaml/wiki/PyYAML-yaml.load(input)-Deprecation

yaml.safe_load(data_file) also works


Protected stream & --http-cookie

Assuming the syntax is right, what is the problem?
$ livestreamer --http-cookie "Cookie=_alid_=/TgBhTX2JPtZnWFZVjBYBA==; hdntl=exp=1434148711~acl=%2f*~data=hdntl~hmac=adec5aae7219181185084dd1868685093c966254d2dc25b22caff1b1d9bab475"<EMAIL_ADDRESS>best --loglevel debug
[cli][info] Found matching plugin stream for URL<EMAIL_ADDRESS>[cli][info] Available streams: live (worst, best)
[cli][info] Opening stream: live (hls)
[stream.hls][debug] Reloading playlist
[cli][error] Could not open stream: Unable to open URL<EMAIL_ADDRESS>(403 Client Error: Forbidden)

I tried this with --http-header too, with a user agent directly from the request headers.
What is the "hdntl" part in the cookie? I noticed that when I look at the page source and refresh it that the token attached to the embed link changes on every refresh. Does it simply expire so quickly that I can not copy-paste it quickly enough? (It may be that I don't know what I'm talking about.) It also opens in a browser Flash Player only when opened really quickly - a matter of couple of seconds:
http://backvideo.ampi.tv/embed/z6m4vl?token=exp=1433953483~acl=/*~hmac=78264f89ca571c87cf56f2823840ebb4eecd971b717e405f4053684f74ee77e7

If the token expires you'll probably have to write a plugin for the site in question, so the stream can be opened right after getting the URL.

Hello tpo,
Thanks for your recommendation here: https://github.com/chrippa/livestreamer/issues/1037#issuecomment-133562265
Were you able to test a plugin to see if the token is expiring too fast?

Nope, such plugin does not exist and I'm not skilled.

Turns out I was trying this with the overly complicated way... just directly grabbing this from dev tools network traffic:
livestreamer "hlsvariant://https://nnnnnnn-lh.akamaihd.net/i/nnnn_Live_BC2/nnn_nnnnn@nnnnn/master.m3u8?hdnts=exp=1442719240~acl=/*~hmac=353f8e7c291532162227d0224410400a4558a8aae88014df7316a40e50f7256d" best

livestreamer "hlsvariant://https://nnnnnnn-lh.akamaihd.net/i/nnnn_Live_BC2/nnn_nnnnn@nnnnn/master.m3u8?hdnts=exp=1442719240~acl=/*~hmac=353f8e7c291532162227d0224410400a4558a8aae88014df7316a40e50f7256d" best
[cli][info] Found matching plugin stream for URL hlsvariant://https://nnnnnnn-lh.akamaihd.net/i/nnnn_Live_BC2/nnn_nnnnn@nnnnn/master.m3u8?hdnts=exp=1442719240~acl=/*~hmac=353f8e7c291532162227d0224410400a4558a8aae88014df7316a40e50f7256d
[cli][info] Available streams: 270p (worst), 360p, 540p, 720p (best)
[cli][info] Starting player: mpv --osc=no --loop=inf --cache 8192
[cli][info] Got HTTP request from mpv 0.10.0
[cli][info] Opening stream: 720p (hls)


Where can we obtain the snapshots?

Seems that the snapshots in the snapshots/ directory are required to run the tool, though there is no info on how to obtain them.

Kindly refer to point 3 of the Installation section in README.md

I am closing the issue for now. Do reopen if you still face any problems.


⚠ Bofrost.lu has degraded performance

In 8e65666, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1460 ms

Resolved: Bofrost.lu performance has improved in d4aa10d after 6 minutes.


How to setup serverless offiline service

Service URL - set this to the URL shown when starting the offline serverless, ending with /api (remove the /account-details-reviews). Likely this will be http://localhost:3000/api
Can you guide here.

This is the pattern for these examples. The client needs the API base path. I plan to make it more intelligent going forward.


Question: how to read gpio pin from u-boot

Hi,
I need to read the state of FORCE_RECOVERY# button at boot. When running linux, it is mapped as volume UP gpio-313.
I tried to read from u-boot shell but I could not find the bank.
Then I went editing p2771-0000.c
#define DEBUG

#include <common.h>
#include <i2c.h>
#include <asm/gpio.h>
#include "../p2571/max77620_init.h"

void read_pin(void)
{
    if (gpio_request(313, "GPIO_VOLUME_UP") == -1) {
         printf("GPIO request failed for 313\n");
    }
    else {
        printf("GPIO request succeeded for 313");
        if (gpio_direction_input(313) == -1) {
            printf("Failed to set the input direction for 313\n");
        }
        else {
            printf("Succeeded to set the input direction for 313\n");

            udelay(3000000);
            int state = gpio_get_value(313);
            printf("The status is %s\n", state ? "HIGH" : "LOW");
        }
    }
}

int tegra_board_init(void)
{
	struct udevice *dev;
	uchar val;
	int ret;

	/* Turn on MAX77620 LDO3 to 3.3V for SD card power */
	debug("%s: Set LDO3 for VDDIO_SDMMC_AP power to 3.3V\n", __func__);
	ret = i2c_get_chip_for_busnum(0, MAX77620_I2C_ADDR_7BIT, 1, &dev);
	if (ret) {
		printf("%s: Cannot find MAX77620 I2C chip\n", __func__);
		return ret;
	}
	/* 0xF2 for 3.3v, enabled: bit7:6 = 11 = enable, bit5:0 = voltage */
	val = 0xF2;
	ret = dm_i2c_write(dev, MAX77620_CNFG1_L3_REG, &val, 1);
	if (ret) {
		printf("i2c_write 0 0x3c 0x27 failed: %d\n", ret);
		return ret;
	}

    read_pin();

	return 0;
}

int tegra_pcie_board_init(void)
{
	struct udevice *dev;
	uchar val;
	int ret;

	/* Turn on MAX77620 LDO7 to 1.05V for PEX power */
	debug("%s: Set LDO7 for PEX power to 1.05V\n", __func__);
	ret = i2c_get_chip_for_busnum(0, MAX77620_I2C_ADDR_7BIT, 1, &dev);
	if (ret) {
		printf("%s: Cannot find MAX77620 I2C chip\n", __func__);
		return -1;
	}
	/* 0xC5 for 1.05v, enabled: bit7:6 = 11 = enable, bit5:0 = voltage */
	val = 0xC5;
	ret = dm_i2c_write(dev, MAX77620_CNFG1_L7_REG, &val, 1);
	if (ret)
		printf("i2c_write 0 0x3c 0x31 failed: %d\n", ret);

    read_pin();

	return 0;
}

No error, but the state of 313 doesn't change, so 313 is most certainly not the correct u-boot gpio for this button.
Am I doing it wrong? Where can I find the mappings?
Also the gpio_request, gpio_direction_input and gpio_get_value as marked deprecated in favor of driver model. What is the driver model for Tegra?
First time modifying u-boot, I'm not familiar with that stuff.
Thanks,

It's a complicated topic, and the documentation is somewhat lacking, at least when it comes to connecting the dots between the different hardware designations and how they're referenced in U-Boot and/or the Linux kernel.  What I usually do is:

Locate the pin I need in the Pin and Function Names App Note to get the hardware (SoM connector/SoC ball) name
Find that name in the  Pinmux Excel spreadsheet
Look in the GPIO column of that spreadsheet to find the mapping to the controller port number, which is the lettter/number combination after the _P in the GPIO label - in this case the GPIO label is GPIO3_PFF.01, so, it's FF /1.

Then go looking in the sources for the letters - on the TX2 there are two GPIO controllers, the normal one and the always-on one.  In this case, it looks like the FF GPIOs are on the always-on controller, so in U-Boot you would use TEGRA_AON_GPIO(FF, 1) to reference this particular pin (that macro is defined in include/dt-bindings/gpio/tegra186-gpio.h).
Since you had a Linux naming reference already, in your case you could have found the right name by looking under /sys/kernel/debug/pinctrl to find 313 in the pinmux-pins file for the right pinmux controller, which would have got you the GPIO name (GPIO_SW1_PFF1) and whether it was AON or not.  (Although it doesn't hurt to cross-check the hardware docs to make sure you've got the right designation.)
Don't worry about the deprecation warning - U-Boot has been updating its driver APIs over the years, but for the version we have, I don't think the Tegra platforms have CONFIG_DM_GPIO set, so you have to use the legacy API.
(While the above references are TX2-specific, there are similar app notes and spreadsheets available for download for the other Jetsons. Pin-to-controller/port/register mappings will be different for each platform.)

Thanks a lot!
I actually was browsing all these file today and was wondering how to connect the dots as you said.
#include <dt-bindings/gpio/tegra186-gpio.h>
// ...
int pin = TEGRA_AON_GPIO(FF,1);
gpio_request(pin, "GPIO_VOLUME_UP");

Works now and I can find GPIO_VOLUME_UP in the gpio register
# gpio status H -a
Bank H:
H1: input: 0 [x] GPIO_VOLUME_UP

Is u-boot reading the pin state each time I query H1 or only at initialization?
# gpio input H1
gpio: pin H1 (gpio 57) value is 0

No matter if I press the button or not, the value always is 0.

Hmm.  Something doesn't look right there.  That label should be getting assigned to FF1, not H1.

Alright, I probably screwed up =) I'll keep debugging tomorrow. Thanks!

int pin = TEGRA_AON_GPIO(FF,1);

Returns 57 which probably is the number in the AON controller. I guess if I needed to request the port I should use gpio_lookup_name or name_to_gpio instead to get the correct pin number.
But since I can read the value directly from script now, no need for all this. Thanks!
Do you happen to know where the key combination for entering the device into flashing mode is set?

Do you happen to know where the key combination for entering the device into flashing mode is set?

Do you mean which button controls recovery mode entry? I don't know for sure, but my guess is it's hard-coded in the on-chip boot ROM.

It seems to be the case.


Fix pre-commit regex

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 88.76%. Comparing base (b716726) to head (53b4eba).
Report is 5 commits behind head on develop.

Additional details and impacted files
@@           Coverage Diff            @@
##           develop      #30   +/-   ##
========================================
  Coverage    88.76%   88.76%
========================================
  Files            3        3
  Lines           89       89
========================================
  Hits            79       79
  Misses          10       10

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


Can't get this library to work ECONNREFUSED

This is my minimal setup https://codesandbox.io/p/sandbox/jolly-sid-6gqcjc
After entering correct credentials that is working with previously integrated mailgun-js library, I can't get out of the initial error
[Error: ECONNREFUSED] {   status: 400,   details: 'connect ECONNREFUSED <IP_ADDRESS>:80' }
Is there something i am not doing right or is it a bug?

Solved by using full url https://api.eu.mailgun.net not just api.eu.mailgun.net without protocol.


Turn off @codecov comments again (sigh)

Codecov has redone their API and reset everything to the default behavior...

Coverage remained the same at 86.264% when pulling dd109e15934b675632ab3863313f14c860b9d881 on codecovnocomments into 1b44f59971f60a5d621cf7ee52a772e8da871ab7 on master.

LOL!


Integrate containerd with default docker installed on github linux runner

After including this action in my workflow, still when I query docker version it report the old version of containerd shipped with default github runner.
Is it possible to integrate default pre-installed docker in github runner ?
Should I do any extra step to remove the default pre-installed docker ?

In case anyone else ends up here just looking for a way to use containerd with the built-in Docker frontend in a GitHub runner, check out crazy-max/gh-action-setup-docker instead


fix message search bug

Coverage decreased (-0.03%) to 38.168% when pulling bbf362366960ab2f1a8049dd94a302d1b28c9cde on embbnux:bugfix/message-search-bug into 796952edaf651e0582cd7ef447b691832d0f1307 on ringcentral:master.


curl: (26) Failed to open/read local data from file/application

hy,
we setup many pa 410 using your script. Thank you very much.
the last devices had errors, please see below.
config upload not working!
the last devices had problems. there was a new delivery of hardware which had other shipped software than before
also a update of the host device was done ubuntu2204 to 2404
can you tell me why the script can't upload config?
########### WARNING ########### You have selected to commit a custom configuration file after the upgrade. 09:01:50 The required version is already installed. 09:01:50 Setting Panorama authkey 2:<key> on [fe80::8e36:7aff:fe03:5e25] success 09:01:50 Uploading config on [fe80::8e36:7aff:fe03:5e25] 09:01:51 Firewall at [fe80::8e36:7aff:fe03:5e25] is now up. Uploading config... curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application curl: (26) Failed to open/read local data from file/application

debug
`+ ((  EASY == 1  ))

((  NON_INTERACTIVE == 1  ))
FIREWALL_ADDRESS='[fe80::8e36:7aff:fe03:5e25]'
USERNAME=admin
ACTIVE_PASSWORD=secret
SOFTWARE_FOLDER=/home/ubuntu/paloversion-main
DESIRED_VERSION=10.2.10
NETWORK_INTERFACE=enp0s31f6
((  INSTALL_THREATS == 1  ))
((  INSTALL_THREATS == 1  ))
((  SET_PRA_AUTHKEY == 1  ))
[[ '' != '' ]]
((  BATCH_MODE != 1  ))
[[ [fe80::8e36:7aff:fe03:5e25] =~ ^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$ ]]
[[ [fe80::8e36:7aff:fe03:5e25] =~ : ]]
((  INSTALL_CONFIG == 1  ))
echo '########### WARNING ###########'
########### WARNING ###########
echo 'You have selected to commit a custom configuration file after the upgrade.'

 Uploading config...'
14:40:27 Firewall at [fe80::8e36:7aff:fe03:5e25] is now up.  Can you try again after removing "/home/ubuntu/paloversion-main/old/023101036096-config.xml"?
It seems there are 2 files with the same name in the config directory, the script isn't smart enough to handle that at the moment.


"Fuschia" layer color is incorrect

From exporter.ts line 68:
    /**
     * Named colors, safe for CSS and DXF
     * 17 colors from https://www.w3.org/TR/CSS21/syndata.html#value-def-color mapped to DXF equivalent AutoDesk Color Index
     */
    export var colors = {
        black: 0,
        red: 1,
        yellow: 2,
        lime: 3,
        aqua: 4,
        blue: 5,
        fuschia: 6,
        white: 7,
        gray: 9,
        maroon: 14,
        orange: 30,
        olive: 58,
        green: 94,
        teal: 134,
        navy: 174,
        purple: 214,
        silver: 254
    }

The correct spelling of the color is fuchsia for CSS/SVG. This has obvious implications for SVG export, as layer colors of fuchsia fail.

WOW nice catch! And, I learned something new today! Fix is coming right up...


Kotlin -> Swift

If you can code in swift and go to kotlin, you can code in kotlin and go to swift ?

There is a library for that that I've found, not sure how good it is, and it also supports Kotlin 1.0.1 to Swift 2.2 conversion, so not going to be compatible with today's XCode given it's 2.2, but you can use the auto conversion of XCode after that I imagine and you would need to do some manual editing of the Swift code. The library is here:
https://github.com/moshbit/Kotlift

Going from Kotlin to Swift would require a complete new set of tokenizer, rules and transformers. Not in the scope of this project.
@gligorkot that looks like a very decent solution! I will add it to the readme


Support dragging a note link to a new pane to open it

Currently, one can click a note link to open it, without needing to use the Cmd/Control key. It would be great if one can also drag the note link to open it in a new pane.

Unfortunately, I don't think it's easy for me to do given the way the Obsidian API is structured. I'm not ruling it out completely, but I don't plan to do it right now.


Build fails with Java 11 JDK

This seems to be a problem in google-java-format rather than in ktfmt, so the actual issue here is just that it should be documented in the README. Running mvn install with a Java 11 JDK (AdoptOpenJDK 11.0.5+10) fails:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:3.0.0:jar (attach-javadocs) on project google-java-format: Execution attach-javadocs of goal org.apache.maven.plugins:maven-javadoc-plugin:3.0.0:jar failed.: NullPointerException -> [Help 1]

With a Java 8 JDK, it builds successfully.

Let's see if https://github.com/google/google-java-format/pull/429 helps.