Next.js Preview mode doesn't work on Amplify?

Please describe which feature you have a question about?
Do I have to set the Next.js version to a specific value(version) to implement the Next.js preview mode?
I trying to implement the Next.js Preview mode.
Next.js Preview mode is refer to: https://nextjs.org/docs/advanced-features/preview-mode
But Next.js Preview mode doesn't work on Amplify.
( I checked Preview mode is correct working on Vercel or local.)
Next.js version of my app is 11.1.3. And Next.js version of Amplify (Build image settings) is 11. And webpack5.
Working point

I checked Next.js API Rpute is working because Cookie was set in the header.
I checkedgetStaticProps is working because logic in the getStaticProps was called  when request came.

Not working point

context.preview is undefined in the getStaticProps

Related issues：https://github.com/aws-amplify/amplify-console/issues/2532
Provide additional details
none
What AWS Services are you utilizing?
Amplify Console,  Amplify CLI
Provide additional details e.g. code snippets
I'm trying with the code below, but the browser shows "none none".
preview page (pages/preview.js)
export default function Preview({ message, timestamp }) {
  return message + " " + timestamp;
}

export async function getStaticProps(context) {
  // If you request this page with the preview mode cookies set:
  //
  // - context.preview will be true
  // - context.previewData will be the same as
  //   the argument used for `setPreviewData`.
  return {
    props: {
      message: context.preview ? context.previewData.message : "none",
      timestamp: context.preview ? context.previewData.timestamp : "none",
    },
  };
}

preview api (api/preview.js)
// A simple example for testing it manually from your browser.
// If this is located at pages/api/preview.js, then
// open /api/preview from your browser.
export default function handler(req, res) {
  res.setPreviewData({
    message: "Hey, this is a preview",
    timestamp: new Date().toISOString(),
  });
  res.redirect("/preview");
}

Hi! I understand the cause.
The cause seemed to be cookies(of preview mode) were not allowed in the origin request on CloudFront by default.

So I have a question.

How should I set CloudFront to control cookies (add / delete cookies) from Next.js API Route?  I think I probably have to disable the cookies(of preview mode) cache and send it to the origin.
Is there any reason why Amplify set CloudFront to "Legacy cache settings" than "Cache policy and origin request policy (recommended)" by default?

please give me some advice or new information!

Did you manage to find a solution to this @skrg-kotani ? I tried going with Cache policy and origin request policy (recommended) option, and then selecting Amplify option for Cache Policy for all paths except _next/static/* and static/*, which seemed to fix the problem.
But unfortunately the settings seem to re-set on every new build.

I have the same problem.
I hope this issue will be solved.

I have the same problem.
Any recommendation or workaround?

@biiishal
Thanks for your advice!
For me, By adding just two cookies to all paths except _next/static/* and static/*, which seemed to fix the problem.

Automated workaround.... use SNS on build success to trigger a lambda that updates the distribution behaviors so the preview cookies work.

Create SNS notification for builds (we have a preview branch that can access our contentful preview content)

Easiest way to do this is add email notifications through the Amplify console and snag the ARN for the SNS topic that triggers those emails.

Create a lambda function that updates the cloudfront distribution after the build

I added this lambda to an existing serverless framework project powering parts of our api but you can create an ad-hoc lambda function, too. First create a Layer that has @aws-sdk/client-cloudfront installed and use that in the function.
IAM
{
        Effect: "Allow",
        Action: ["cloudfront:GetDistribution", "cloudfront:UpdateDistribution"],
        Resource: ["<ARN FOR YOUR DISTRIBUTION>"],
      }

serverless.ts function definition
wwwBuildEvent: {
      handler: "src/sns-events/www-build-events/handler.handler",
      events: [
        {
          sns: "<ARN FOR SNS TOPIC>",
        },
      ],
    },

Handler
import {
  CloudFrontClient,
  UpdateDistributionCommand,
  GetDistributionCommand,
  GetDistributionCommandInput,
  UpdateDistributionCommandInput,
  CacheBehavior,
} from "@aws-sdk/client-cloudfront";

const updateDistributionForNextPreview = async (distributionId: string) => {
  const client = new CloudFrontClient({});
  const input: GetDistributionCommandInput = {
    Id: distributionId,
  };
  const getDistCmdStr = new GetDistributionCommand(input);
  const getDistResp = await client.send(getDistCmdStr);
  // https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html
  const amplifyCachePolicyId = "2e54312d-136d-493c-8eb9-b001f22f67d2";
  const updateInput: UpdateDistributionCommandInput = {
    DistributionConfig: {
      ...getDistResp.Distribution.DistributionConfig,
      DefaultCacheBehavior: {
        ...getDistResp.Distribution.DistributionConfig.DefaultCacheBehavior,
        MinTTL: undefined,
        ForwardedValues: undefined,
        MaxTTL: undefined,
        DefaultTTL: undefined,
        CachePolicyId: amplifyCachePolicyId,
      },
      CacheBehaviors: {
        Quantity:
          getDistResp.Distribution.DistributionConfig.CacheBehaviors.Quantity,
        Items:
          getDistResp.Distribution.DistributionConfig.CacheBehaviors.Items.map(
            (cacheBehavior): CacheBehavior => {
              if (
                cacheBehavior.PathPattern === "_next/static/*" ||
                cacheBehavior.PathPattern === "static/*"
              ) {
                return cacheBehavior;
              }
              return {
                ...cacheBehavior,
                MinTTL: undefined,
                ForwardedValues: undefined,
                MaxTTL: undefined,
                DefaultTTL: undefined,
                CachePolicyId: amplifyCachePolicyId,
              };
            }
          ),
      },
    },
    Id: getDistResp.Distribution.Id,
    IfMatch: getDistResp.ETag!,
  };
  const updateDistCmdStr = new UpdateDistributionCommand(updateInput);
  const updateDistResp = await client.send(updateDistCmdStr);
  return updateDistResp;
};

exports.handler = async (event, context) => {
  const sns = event.Records[0].Sns.Message;
  if (!sns.includes("build status is SUCCEED")) {
    return sns;
  }
  // update cloudfront distribution so that
  // next preview cookies are part of the cache key
  const distributionId = "<YOUR DISTRIBUTION ID>";
  await updateDistributionForNextPreview(distributionId);

  return sns;
};

We also had issues with the environment variables not working. We tried checking process.env.IS_PREVIEW but the amplify env variable overrides do not work yet with Next.
After following the steps in this issue https://github.com/aws-amplify/amplify-hosting/issues/1987 to expose the variables and remove our dependency on the overrides by checking AWS_BRANCH instead AND the above automation our previews are working great.

Just in case anyone else arrives on this issue the same way we did, and saves them an hour.
If you're finding the previews aren't working in Chrome (Incognito), it's because Incognito blocks 3rd party cookies by default. If you head into Preferences and Allow All Cookies (!) then it works.
Funnily enough MS Edge does not have the same behaviour and allows the cookie.

My NextJS 13 SSR app is setting cookies on my local machine properly but the response headers are not returning with set cookie for __next_preview_data when i deploy on amplify. does anyone have any idea why this is happening?
Amplify SSR

Local System

Hi all. I have successfully tested Next.js Preview Mode today with the contentful example so this issue can be closed.
Note the build config I used to ensure the server-side runtime had access to the environment variables.
version: 1
frontend:
  phases:
    preBuild:
      commands:
        - npm ci
    build:
      commands:
        - env | grep -e CONTENTFUL_SPACE_ID -e CONTENTFUL_ACCESS_TOKEN -e CONTENTFUL_PREVIEW_ACCESS_TOKEN -e CONTENTFUL_PREVIEW_SECRET -e CONTENTFUL_REVALIDATE_SECRET >> .env.production
        - npm run build
  artifacts:
    baseDirectory: .next
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*


Add logic to display proper message when only one allowed file format is provided on dropzone component

Summary

Add logic to display proper message when only one allowed file format is provided on dropzone component acceptedFileFormats input

Before:

With fix:

Checklist

[x] *Added unit tests
[x] *Added a code reviewer
[x] Added changes to /projects/swimlane/ngx-ui/CHANGELOG.md under HEAD (Unreleased)
[ ] Updated the demo page
[x] Included screenshots of visual changes

*required

This commit breaks compatibility with desktop Safari below 14.1 and mobile Safari below 14.5 (both released 26 Apr 2021) - due to lack of support for Intl.ListFormat


Error when to login

Expected Behavior
I should be able to login using my credentials
Actual Behavior
It directs me to we browser:
`Log Into Your Account
Please login via your web browser.
A new page should have opened in your default web browser. To continue, please login via the browser.
If it did not open, copy and paste the following URL into your browser:`
Then once I provide email, it sends a verification code. After filling with code, I get:

Reproduction Steps
Click on Login button
Follow the steps via web browser
Get the error
Is there an existing issue for this?

[X] I have searched the issue tracker for this problem.

Additional Information
No response
Insomnia Version
2023.5.8
What operating system are you using?
Windows
Operating System Version
Windows 10 Enterprise
Installation method
insomnia.rest
Last Known Working Insomnia version
No response

Hi @mirket999 what is the complete URL is returning the 404 for you?

@mirket999 It should be working properly now, in case you still have any problem please let us know.

Hi @mirket999 what is the complete URL is returning the 404 for you?

Hi, this is the URL that application forwards me.

What login method are you trying to use to Login? @mirket999

I click on Login in the app, it forwards me to login page in web browser.

then I go with "Continue with email"

Then it sends a verification code to my email. Once I enter the code I get 404

@mirket999 It should be working properly now, in case you still have any problem please let us know.

Still getting same error

Now it seems to be resolved

@pavkout i get this error now.

@johanrosenson Sorry for the delayed response, what login option you are using?


A typo in README

There is a typo in training code example:
python training.py --params utils/params.yaml
instead of :
python training.yaml --params utils/params.yaml

thanks! updated


test: consistent naming of unit tests in Cleaner, Maze, Game2048, and Minesweeper

Is your feature request related to a problem? Please describe
Some tests in the Cleaner, Maze,  Game2048, and Minesweeper environments don't follow the naming convention test_<env name>__<what is specifically tested>.

Hi @sjdex, thank you for your interest in jumanji! There is already a PR in for this issue, but we would love for your to contribute to one of our other issues! Feel free to tackle one with the label "good first issue". Looking forward to your contribution! 🚀


KlakSpout Fails to Display Spout texture created from separate display adapter.

KlakSpout will fail to display the Spout shared texture if it was not created on the same graphics display adapter. Testing this requires use of a machine with multiple display adapters (in my particular case, an IGPU - Intel UHD graphics, and a GPU - NVIDIA 2080 Super ). The attached project is simply a new Unity Project (2019.4.10f1) with klakspout included following the directions on the github page. Additionally, the splash screen is toggled off and a text component was added to the scene to display the current SystemInfo.graphicsDeviceName to verify that the correct device was in use.
To replicate the issue, open the scene "Quad". Disable all components of type "Spout Sender" and create a build with this scene called SpoutReceiver. Then re-enable them and create another build call SpoutSender. This way, only one build is creating shared textures so there will be no naming collisions.
Using a terminal, launch each of these builds with the argument -force-device-index #. Specify a different # for the sender versus the receiver and verify that each is using a different adapter by looking at the text element near the center of the screen. Spout textures will fail to display and will appear black. This is a contrived example, but is important in situations where this plugin is used to read textures from other applications creating shared textures, and there is no guarantee what adapter the texture is created on.
SpoutTest.zip

My understanding is that Spout only supports sharing textures in a single GPU. Could you check if other Spout-compatible apps work as you intended with your setup?

I think you are correct and I misunderstood Spout's capabilities. I thought this was possible running Spout through CPU mode. I know that is used as a fallback to NV_DX_interop being unavailable but I incorrectly assumed this could also address applications on separate GPUs.


Adding author info (Adaptive Spec Augment)

Adding adaptive spec augment function by undergraduate researcher (HW2).

@leo19941227 Special project students are taking credit by adding author info,
if the format is fine with u I will merge this PR.

Cool! I think it is nice to add the author info. But adding it at each line is quite weird lol Since  we can know the line author information by git blame.
Can we instead simply add the authors at the top of the file?

I move the author info to the top of the file. Please check if the format is fine for you. Thanks!!!

Cool! I am good with the format.
If @andi611 is also cool with it, we can merge it.
Thanks for the contribution!


⚠ Bofrost.fr has degraded performance

In b45c24c, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1348 ms

Resolved: Bofrost.fr performance has improved in dda8727 after 9 minutes.


Ambiguous use of 'init()'

Updated Xcode from 14.2 to 14.3 and now it is giving a warning "Ambiguous use of 'init()'" for line 316 of MathParser.swift ("End()" is highlighted):
/// Parser for a math expression. Checks that there is nothing remaining to be parsed.
  private lazy var expression = Parse {
    additionAndSubtraction
    ignoreSpaces
    End()
  }

Thanks for the heads-up. I've pushed a fix.


Installation using npm fails for latest version (0.1.3)

When trying to install tree-sitter-swift, I get the following error:
root@d0f60f746995:/# npm install -g tree-sitter-swift
npm notice
npm notice New minor version of npm available! 8.3.1 -> 8.5.1
npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.5.1
npm notice Run npm install -g<EMAIL_ADDRESS>to update!
npm notice
npm ERR! code 1
npm ERR! path /usr/lib/node_modules/tree-sitter-swift
npm ERR! command failed
npm ERR! command sh -c tree-sitter generate
npm ERR! node:events:498
npm ERR!       throw er; // Unhandled 'error' event
npm ERR!       ^
npm ERR!
npm ERR! Error: spawn /usr/lib/node_modules/tree-sitter-swift/node_modules/tree-sitter-cli/tree-sitter ENOENT
npm ERR!     at Process.ChildProcess._handle.onexit (node:internal/child_process:283:19)
npm ERR!     at onErrorNT (node:internal/child_process:478:16)
npm ERR!     at processTicksAndRejections (node:internal/process/task_queues:83:21)
npm ERR! Emitted 'error' event on ChildProcess instance at:
npm ERR!     at Process.ChildProcess._handle.onexit (node:internal/child_process:289:12)
npm ERR!     at onErrorNT (node:internal/child_process:478:16)
npm ERR!     at processTicksAndRejections (node:internal/process/task_queues:83:21) {
npm ERR!   errno: -2,
npm ERR!   code: 'ENOENT',
npm ERR!   syscall: 'spawn /usr/lib/node_modules/tree-sitter-swift/node_modules/tree-sitter-cli/tree-sitter',
npm ERR!   path: '/usr/lib/node_modules/tree-sitter-swift/node_modules/tree-sitter-cli/tree-sitter',
npm ERR!   spawnargs: [ 'generate' ]
npm ERR! }

Even after installing tree-sitter-cli, this error shows up. I can install version (0.1.1) without problems.
You can replicate this by running an Ubuntu docker container with docker run -it ubuntu bash and executing the following commands in it:
apt update && apt install python3 build-essential curl
curl -fsSL https://deb.nodesource.com/setup_16.x | bash -
apt install nodejs
npm install -g tree-sitter-swift

Thank you for reporting this! That error is really strange, especially having it work on 0.1.1 and not 0.1.3. I don't have docker up and running so I can't test that, but trying to install 0.1.3 in a new user on my local machine seems to work. I'll take a closer look.
Out of curiosity, what version of tree-sitter-cli does it end up using when trying to compile?

Interesting. I've narrowed it down to the Typescript removal change, specifically the fact that after that change, the install script just became:
    "install": "tree-sitter generate",

If I do npm pack && cd ../ && npm install -g tree-sitter-swift/tree-sitter-swift-0.1.3.tgz (in a fresh docker image with just this repository checked out), I see the same error. If, on the other hand, my install script is:
    "install": "sleep 5 && tree-sitter generate",

then installation succeeds. It seems like version 0.1.1 "works" because it takes a few seconds to compile the typescript code.
Now, since we can't go checking sleep statements into the install script, what is it that isn't completing in time? I remain stumped by this.

Aha! At the time that my script begins execution, node_modules/tree-sitter-cli contains five files:
LICENSE
cli.js
dsl.d.ts
install.js
package.json

Five seconds later, there is a sixth:
LICENSE
cli.js
dsl.d.ts
install.js
package.json
tree-sitter

This seems to be because tree-sitter-cli's install.js kicks off a https.get that it does not wait for. If I add a process.exit(1) after the get() call, then even after waiting 5 seconds, I still don't see tree-sitter.
Let me play around with workarounds here, and perhaps make a pull request to fix it for real.

@rien, can you try now with the 0.1.3-fix-install version? That works properly for me in the isolated Docker environment. I suspect it would not work if someone were to try it on Windows.

@rien, feel free to reopen if the latest version doesn't work for you.


Update API 33

Please update lib to 3.3.0 and fix "Bluetooth compatibility API 33"
Currently having an error on Android 13

Can you create a PR?

Can you create a PR?
can you update it?

Just download java source code from https://github.com/DantSu/ESCPOS-ThermalPrinter-Android an reference it in Android Studio afeter prepare Cordova Android project and it Works properly


Simple update to existing remote job posting.

Thank you!

Simple but effective, thanks @josh-padnick !


Feat/105 clean

change draw.js --> drawImg.  this func takes the svg path value and color.  it translates the starting point to the x & y value, then draws, then applies the inverse transformation to return the ctx translation to its original state.

change img elementSchema.  include color + change the data to only be the svg d value, not an svg tag

LGTM, wonder why the offset is necessary though


GitServiceRepository:  settings branchesToClone fix

There isn't possible to set branchesToClone.I found what is the problem.

Appears fixed already, judging by the conflict pointed out. Thanks for the PR anyway!


[BUG:] World Name on lower case

The new version 1.2.4 is working for me but I hope the setting of the world name is fixed when I checked the theHub.yml I saw that the world name is on lowercase (spawn). my original world name was on capital S (Spawn) I think it's not gonna work for some people who has a capital letter on their worlds.

It works in all of my Servers. Please Test it before you open an Issue.


Take handler info from the top most function in the package

Handler info is taken from the first function in the package (deepest one in the stack). In my case it's an internal function to DRY up my handlers.
This PR propose to grab that info from the top level function in the package instead (earliest in the stack).

LGTM! Thanks so much :)


[500] Unable to resolve service "Prooph\EventStore\EventStore" to a factory; are you certain you provided it during configuration?

I'm getting this error message when I try to register an user. I'm using the master branch, no changes were made to the code.
I've done the installation via Vagrant and simply ran composer install and went to http://localhost:8080/user-registration. The error comes up when I click the "register user" button.

No activity, closing.


Fix parallel test execution worker leases handling

Before this commit, worker leases were taken around dispatching test
execution, not actual test execution. Meaning we could use more than
maxWorkers workers.
This commits fix this by moving the worker leases holder after test
execution dispatch.

CI https://builds.gradle.org/viewQueued.html?itemId=2701614


Entities not available

Hi,
Since 3 days my air conditioner entitles are not available.
I tried to reload but without success. I can login and logout in the app.
Log entry attached.
Any advice ?

I have the same issue

For me today all entities are working again . Strange .

Were you trying to reload the integration? If you can reproduce the issue, please Enable debug logging.


Add tool coverage presubmit shard

Description
Track tool coverage via codecov.io. Adjust tool_coverage to use a package test shim so that it can run precompiled dill files.

I might have been uploading coverage wrong? Apparently we have 82.9% coverage? Does that seem high...

Crap, I merged the wrong PR into this! Time to rebase

Going to try something else to unconfuse the bot


Update description for event_schema_timestamp function for cdc queries

Fixes DOC-7419
This fixes an issue that came out of acceptance testing some time ago. The description for the event_schema_timestamp function (that users can specify with cdc queries) was not very clear that the schema change would need to trigger a changefeed event in order for a message to send with the timestamp of the schema change.

from reading the code, here is my understanding of this function:

if the event is not from a scan/backfill, it returns the event's timestamp.
otherwise it returns the timestamp at which the events in the scan/backfill are read, and the schema timestamp they're interpreted with. this is set to the high water mark / frontier (the span's or the CA's or the CF's? not sure. one of them)

@andyyang890 does that sound right to you?
@kathancox is that helpful?

from reading the code, here is my understanding of this function:

if the event is not from a scan/backfill, it returns the event's timestamp.
otherwise it returns the timestamp at which the events in the scan/backfill are read, and the schema timestamp they're interpreted with. this is set to the high water mark / frontier (the span's or the CA's or the CF's? not sure. one of them)

@andyyang890 does that sound right to you? @kathancox is that helpful?

I had a go at updating this based on what you said @asg0451, could you take another look and suggest any changes? cc @andyyang890

TFTRs!


Subjects taught exported to csv

Each of the eligible subjects is included in the csv export.

Did you consider putting it in a comma seperated list in a Subjects Taught column instead of adding 5 new columns?

@erbridge yeah I did, this seemed like the most useful and simple way to do it for what is a temporary feature – I guess it depends on how the data is used?

I reckon a comma seperated list is fine. Makes it easier to review at a glance when scanning seperate rows. We chose the approach of having different columns for each subject in the DB to keep the underlying data structure simple, but it makes more sense on the user side to have one column for all subjects I reckon


WIP:Add pagination support

The binaries affected:
IMPORTANT: Please also add the binary name in the title, e.g.
[openstack-cloud-controller-manager]: Add UDP protocol support
unless the PR affects multiple binaries.

[ ] openstack-cloud-controller-manager
[ ] cinder-csi-plugin
[ ] k8s-keystone-auth
[ ] client-keystone-auth
[ ] octavia-ingress-controller
[ ] manila-csi-plugin
[ ] manila-provisioner
[ ] magnum-auto-healer
[ ] barbican-kms-plugin

What this PR does / why we need it:
Which issue this PR fixes:
fixes #
Special notes for reviewers:

Release note:

NONE

/unassign @flaper87

/assign @chrigl

/test cloud-provider-openstack-acceptance-test-csi-manila

/test cloud-provider-openstack-e2e-test-csi-cinder

/test cloud-provider-openstack-multinode-csi-migration-test

/lgtm

/approve


Deleting files causing an empty folder does not delete the folder in TFS during checkin

Delete all files from a directory
** At this point GIT removes the folder
Commit changes to GIT
Perform tfs checkin
** At this point the empty folder is still in TFS but it should not be

This should work now.


Handle checks with non integer ttl values

fixes sensu/sensu#1182
If a user accidentally injects a string ttl value instead of an integer
it will crash the sensu server process.

I am investigating why this works locally but fails on travis

@skurylo alternatively, we could guard against an invalid TTL with input validation https://github.com/sensu/sensu/blob/master/lib/sensu/client/socket.rb#L121

This Sensu client socket now guards against invalid check TTL values :+1:


Process fails for certain pdf document but not others, not sure why

Please provide us with the following information:

This issue is for a: (mark with an x)
- [ x] bug report -> please search issues before submitting
- [ ] feature request
- [ ] documentation issue or request
- [ ] regression (a behavior that used to work and stopped in a new release)

Minimal steps to reproduce

I included some custom pdfs in my data folder instead of the default Northwind Traders, and all worked fine except for this one:
[https://www.faa.gov/sites/faa.gov/files/regulations_policies/handbooks_manuals/aviation/airplane_handbook/00_afh_full.pdf]
That generated roughly 200 pages and uploaded the first 9 (0-8), but when uploading blob #9, it would fail.  The pdf seems to have a blank page there with only a page number, but if I modified the script to start from page 10 it failed there also.
Any log messages given by the failure

String of errors, most recent was line 312 in prepdocs.py, earlier were azure\core\pipeline\transport

Expected/desired behavior

OS and Version?

Windows 7, 8 or 10. Linux (which distribution). macOS (Yosemite? El Capitan? Sierra?)  Windows 11

Versions

Ran this on 4/17/2023.  5-6 other pdfs of similar origin worked without error, but that one did not.  Curious if anyone can figure out why and what's different about that file.

Mention any other details that might be useful

Thanks! We'll be in touch soon.

I have stumbled upon a similar issue. In my case I was able to solve the issue by updating the related pypdf(pypdf==3.7.1) dependency.


Adds external hook to filter scala compiler options for product invalidation

This adds filterScalaCompilerOptions to ExternalHooks, which can be overridden to remove scala compiler options which do not affect the resulting products.
Fixes #406

To validate this pull request against other sbt modules, please visit this link.

Thanks a lot Gary :smile: @fiadliel! This is a useful change.
The error in the CI is due to MiMa, but this is a backwards compatible change, so I'll update this PR with the MiMa whitelist so that CI passes.

@fiadliel @jvican Am I correct to think that this change is going to be exposed to sbt users via incOptions?

You're correct, incOptions has an instance of ExternalTools.

How is adding an abstract method to a java interface a backwards compatible change?

It is, see https://docs.oracle.com/javase/specs/jls/se7/html/jls-13.html

here is a list of some important binary compatible changes that the Java programming language supports:

Adding new fields, methods, or constructors to an existing class or interface.

On 21 Sep 2017, at 18:21, Dale Wijnand<EMAIL_ADDRESS>wrote:
How is adding an abstract method to a java interface a backwards compatible change?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Oh sorry, my mistake, I didn't see it was a ReversedMissingMethodProblem.

I promise I'm updating the whitelist here soon. It was recently introduced in a PR by @eed3si9n, so all we need to do is to rebase.

There's now a merge conflict here. @fiadliel are you happy to resolve that? If not I can rebase it and push that.

Fixed in https://github.com/sbt/zinc/issues/406 instead.


Fix transliteration using unidecode (closes issue #26895)

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Bug fix
[x] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
I really like the --restrict-filenames option, but unfortunately it only removes most non-ascii characters, which can easily make the filename unreadable to human. There is existing issue #26895 describing the problem.
Not sure if this is the best solution, but it is simple and builds on already existing solution. It is much simpler that extending existing ACCENT_CHARS dictionary.

No 3rdparty modules should be used.


[BUG] Aqara relay. Only one channel works

Hi. I am using cc2531 and have some problems with two channel aqara relay (LUMI lumi.relay.c2acn01). I can switch from frontend only first relay. If I press second channel switch there is no result and got this at log:
2020-06-23 22:26:25 DEBUG (MainThread) [homeassistant.components.zha.entity] light.lumi_lumi_relay_c2acn01_5bd84b04_on_off_2: turned off:
2020-06-23 22:26:25 WARNING (MainThread) [zigpy_cc.api] Waiter timeout: <Waiter matcher=<Matcher type=CommandType.AREQ subsystem=Subsystem.AF command=dataConfirm payload={'endpoint': 2, 'transid': 102}> future= timeout=10000 sequence=None>
2020-06-23 22:26:27 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0xfaa2:2:0x0006]: command failed: on exception:
2020-06-23 22:26:27 DEBUG (MainThread) [homeassistant.components.zha.entity] light.lumi_lumi_relay_c2acn01_5bd84b04_on_off_2: turned on: {'on_off': TimeoutError()}

This seems to be cc2531 related, moving this to zigpy-cc


update values in TableDisplay without reinstantiation

I am trying to use TableDisplay as part of an interactive Python cell. All is good so far - values get displayed as I want them to, so no concerns there.
The values in the table should change based on some user input - so the problem that I have is that I would like to programatically update the values without reinitializing the TableDisplay object?
I looked over the documentation and the only examples I found are based on constructing the table with the values preinitialized and then using it do display. Is it any example that shows how can you update the values or this feature is not supported? If this is not supported, can you point me out to what the best practice would be in this scenario (refreshing the data in a component)?

this would be a nb like doc/groovy/PlotsPythonStyle.ipynb but that changes numeric and string values in the table.

we have this for groovy, need it for python now too.


Problem: Semaphore doesn't reads ansible.cfg

Issue
Here is the error I get (log from web ui):
ERROR! the role 'ping' was not found in /tmp/semaphore/repository_1_1/playbooks/all/roles:/tmp/semaphore/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:/tmp/semaphore/repository_1_1/playbooks/all

Here is the ansible.cfg in the root of my ansible repository:
[defaults]
host_key_checking = False
roles_path = roles/all:roles/linux:roles/vmware:roles/windows

[inventory]
enable_plugins = yaml, vmware_vm_inventory

So why Ansible isn't looking in the ./roles directory ?
It works fine on my local computer with a fresh Ansible setup, but not on my Semaphore server.
I thought it could be because of /tmp/semaphore permissions, as Ansible doesn't reads config files that are in world writable directories.
Unfortunatly that's probaly not the cause of this issue:
e825aa11cc8d:~$ ls -l /tmp/
total 4
drwxr-xr-x    1 semaphor root          4096 Jun  3 08:19 semaphore

Impact
Ansible (task execution)
Installation method
Docker
Database
MySQL
Browser
No response
Semaphore Version
develop-80e2c8e-1717270566
Ansible Version
No response
Logs & errors
root@semaphore:~# docker compose logs semaphore
semaphore-1  | Attempting to connect to database semaphore on semaphore-mariadb:3306 with user semaphore ...
semaphore-1  | No additional system dependencies to install
semaphore-1  | Installing additional python dependencies
semaphore-1  | ..Collecting git+https://github.com/vmware/vsphere-automation-sdk-python.git (from -r /etc/semaphore/requirements.txt (line 3))
semaphore-1  |   Cloning https://github.com/vmware/vsphere-automation-sdk-python.git to /tmp/pip-req-build-qkf8dkrl
semaphore-1  |   Running command git clone --filter=blob:none --quiet https://github.com/vmware/vsphere-automation-sdk-python.git /tmp/pip-req-build-qkf8dkrl
semaphore-1  |   Resolved https://github.com/vmware/vsphere-automation-sdk-python.git to commit 99ee630cb819495f572e9775b48ce0ac1b0263de
semaphore-1  |   Installing build dependencies: started
semaphore-1  |   Installing build dependencies: finished with status 'done'
semaphore-1  |   Getting requirements to build wheel: started
semaphore-1  |   Getting requirements to build wheel: finished with status 'done'
semaphore-1  |   Installing backend dependencies: started
semaphore-1  |   Installing backend dependencies: finished with status 'done'
semaphore-1  |   Preparing metadata (pyproject.toml): started
semaphore-1  |   Preparing metadata (pyproject.toml): finished with status 'done'
semaphore-1  | Collecting pyvmomi (from -r /etc/semaphore/requirements.txt (line 1))
semaphore-1  |   Downloading pyvmomi-<IP_ADDRESS>.1.tar.gz (852 kB)
semaphore-1  |      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 852.2/852.2 kB 7.9 MB/s eta 0:00:00
semaphore-1  |   Installing build dependencies: started
semaphore-1  |   Installing build dependencies: finished with status 'done'
semaphore-1  |   Getting requirements to build wheel: started
semaphore-1  |   Getting requirements to build wheel: finished with status 'done'
semaphore-1  |   Installing backend dependencies: started
semaphore-1  |   Installing backend dependencies: finished with status 'done'
semaphore-1  |   Preparing metadata (pyproject.toml): started
semaphore-1  |   Preparing metadata (pyproject.toml): finished with status 'done'
semaphore-1  | Collecting pywinrm[credssp] (from -r /etc/semaphore/requirements.txt (line 2))
semaphore-1  |   Downloading pywinrm-0.4.3-py2.py3-none-any.whl.metadata (11 kB)
semaphore-1  | Requirement already satisfied: six>=1.7.3 in /opt/semaphore/venv/lib/python3.11/site-packages (from pyvmomi->-r /etc/semaphore/requirements.txt (line 1)) (1.16.0)
semaphore-1  | Collecting xmltodict (from pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2))
semaphore-1  |   Downloading xmltodict-0.13.0-py2.py3-none-any.whl.metadata (7.7 kB)
semaphore-1  | Requirement already satisfied: requests>=2.9.1 in /opt/semaphore/venv/lib/python3.11/site-packages (from pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2)) (2.32.3)
semaphore-1  | Collecting requests-ntlm>=1.1.0 (from pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2))
semaphore-1  |   Downloading requests_ntlm-1.2.0-py3-none-any.whl.metadata (2.4 kB)
semaphore-1  | Collecting requests-credssp>=1.0.0 (from pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2))
semaphore-1  |   Downloading requests_credssp-2.0.0-py2.py3-none-any.whl.metadata (10 kB)
semaphore-1  | Processing //tmp/pip-req-build-qkf8dkrl/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  | Processing //tmp/pip-req-build-qkf8dkrl/lib/vcenter-bindings/vcenter_bindings-4.2.0-py2.py3-none-any.whl (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  | Processing //tmp/pip-req-build-qkf8dkrl/lib/vapi-common-client/vapi_common_client-2.44.0-py2.py3-none-any.whl (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  | Processing //tmp/pip-req-build-qkf8dkrl/lib/vmwarecloud-aws/vmwarecloud_aws-1.64.0-py2.py3-none-any.whl (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  | Processing //tmp/pip-req-build-qkf8dkrl/lib/nsx-python-sdk/nsx_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  | Processing //tmp/pip-req-build-qkf8dkrl/lib/nsx-policy-python-sdk/nsx_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  | Processing //tmp/pip-req-build-qkf8dkrl/lib/nsx-vmc-policy-python-sdk/nsx_vmc_policy_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  | Processing //tmp/pip-req-build-qkf8dkrl/lib/nsx-vmc-aws-integration-python-sdk/nsx_vmc_aws_integration_python_sdk-<IP_ADDRESS>.0-py2.py3-none-any.whl (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  | Processing //tmp/pip-req-build-qkf8dkrl/lib/vmwarecloud-draas/vmwarecloud_draas-1.23.0-py2.py3-none-any.whl (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  | Collecting lxml>=4.3.0 (from vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  |   Downloading lxml-5.2.2-cp311-cp311-musllinux_1_2_x86_64.whl.metadata (3.4 kB)
semaphore-1  | Requirement already satisfied: charset-normalizer<4,>=2 in /opt/semaphore/venv/lib/python3.11/site-packages (from requests>=2.9.1->pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2)) (3.3.2)
semaphore-1  | Requirement already satisfied: idna<4,>=2.5 in /opt/semaphore/venv/lib/python3.11/site-packages (from requests>=2.9.1->pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2)) (3.7)
semaphore-1  | Requirement already satisfied: urllib3<3,>=1.21.1 in /opt/semaphore/venv/lib/python3.11/site-packages (from requests>=2.9.1->pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2)) (2.2.1)
semaphore-1  | Requirement already satisfied: certifi>=2017.4.17 in /opt/semaphore/venv/lib/python3.11/site-packages (from requests>=2.9.1->pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2)) (2024.2.2)
semaphore-1  | Requirement already satisfied: cryptography in /opt/semaphore/venv/lib/python3.11/site-packages (from requests-credssp>=1.0.0->pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2)) (42.0.7)
semaphore-1  | Collecting pyspnego>=0.5.0 (from requests-credssp>=1.0.0->pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2))
semaphore-1  |   Downloading pyspnego-0.10.2-py3-none-any.whl.metadata (5.4 kB)
semaphore-1  | Collecting pyOpenSSL (from vapi-runtime@ file://localhost//tmp/pip-req-build-qkf8dkrl/lib/vapi-runtime/vapi_runtime-2.44.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3))
semaphore-1  |   Downloading pyOpenSSL-24.1.0-py3-none-any.whl.metadata (12 kB)
semaphore-1  | Requirement already satisfied: setuptools in /opt/semaphore/venv/lib/python3.11/site-packages (from vcenter-bindings@ file://localhost//tmp/pip-req-build-qkf8dkrl/lib/vcenter-bindings/vcenter_bindings-4.2.0-py2.py3-none-any.whl->vsphere-automation-sdk==1.86.0->-r /etc/semaphore/requirements.txt (line 3)) (65.5.0)
semaphore-1  | Requirement already satisfied: cffi>=1.12 in /opt/semaphore/venv/lib/python3.11/site-packages (from cryptography->requests-credssp>=1.0.0->pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2)) (1.16.0)
semaphore-1  | Requirement already satisfied: pycparser in /opt/semaphore/venv/lib/python3.11/site-packages (from cffi>=1.12->cryptography->requests-credssp>=1.0.0->pywinrm[credssp]->-r /etc/semaphore/requirements.txt (line 2)) (2.22)
semaphore-1  | Downloading lxml-5.2.2-cp311-cp311-musllinux_1_2_x86_64.whl (5.0 MB)
semaphore-1  |    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.0/5.0 MB 56.7 MB/s eta 0:00:00
semaphore-1  | Downloading requests_credssp-2.0.0-py2.py3-none-any.whl (10 kB)
semaphore-1  | Downloading requests_ntlm-1.2.0-py3-none-any.whl (6.0 kB)
semaphore-1  | Downloading pywinrm-0.4.3-py2.py3-none-any.whl (44 kB)
semaphore-1  |    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 44.1/44.1 kB 7.5 MB/s eta 0:00:00
semaphore-1  | Downloading xmltodict-0.13.0-py2.py3-none-any.whl (10.0 kB)
semaphore-1  | Downloading pyspnego-0.10.2-py3-none-any.whl (129 kB)
semaphore-1  |    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 129.9/129.9 kB 23.7 MB/s eta 0:00:00
semaphore-1  | Downloading pyOpenSSL-24.1.0-py3-none-any.whl (56 kB)
semaphore-1  |    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 56.9/56.9 kB 10.1 MB/s eta 0:00:00
semaphore-1  | Building wheels for collected packages: pyvmomi, vsphere-automation-sdk
semaphore-1  |   Building wheel for pyvmomi (pyproject.toml): started
semaphore-1  |   Building wheel for pyvmomi (pyproject.toml): finished with status 'done'
semaphore-1  |   Created wheel for pyvmomi: filename=pyvmomi-<IP_ADDRESS>.1-py2.py3-none-any.whl size=527673 sha256=26909db37b6590ec724f35810362a9349bce46f701ece146fd4788ca0f9f837f
semaphore-1  |   Stored in directory: /home/semaphore/.cache/pip/wheels/58/00/35/035f172707b539c0edd6e086053a4f177a424c0ab807799d1f
semaphore-1  |   Building wheel for vsphere-automation-sdk (pyproject.toml): started
semaphore-1  |   Building wheel for vsphere-automation-sdk (pyproject.toml): finished with status 'done'
semaphore-1  |   Created wheel for vsphere-automation-sdk: filename=vsphere_automation_sdk-1.86.0-py3-none-any.whl size=2324 sha256=991228ee7d54835b18dcec5d2b702f9dcfc79df8efbcd609e2b75dda30bc37d5
semaphore-1  |   Stored in directory: /tmp/pip-ephem-wheel-cache-8fn28ahv/wheels/32/3f/75/62d9c317cd99d4f8b7abfe4e2ac50658e57b7cc1984bb0bc28
semaphore-1  | Successfully built pyvmomi vsphere-automation-sdk
semaphore-1  | Installing collected packages: xmltodict, pyvmomi, lxml, pyspnego, pyOpenSSL, vapi-runtime, requests-ntlm, requests-credssp, vcenter-bindings, vapi-common-client, pywinrm, vmwarecloud-draas, vmwarecloud-aws, nsx-vmc-policy-python-sdk, nsx-vmc-aws-integration-python-sdk, nsx-python-sdk, nsx-policy-python-sdk, vsphere-automation-sdk
semaphore-1  |   WARNING: The script pyspnego-parse is installed in '/home/semaphore/.local/bin' which is not on PATH.
semaphore-1  |   Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
semaphore-1  |   WARNING: The script vapi-server is installed in '/home/semaphore/.local/bin' which is not on PATH.
semaphore-1  |   Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
semaphore-1  | Successfully installed lxml-5.2.2 nsx-policy-python-sdk-<IP_ADDRESS>.0 nsx-python-sdk-<IP_ADDRESS>.0 nsx-vmc-aws-integration-python-sdk-<IP_ADDRESS>.0 nsx-vmc-policy-python-sdk-<IP_ADDRESS>.0 pyOpenSSL-24.1.0 pyspnego-0.10.2 pyvmomi-<IP_ADDRESS>.1 pywinrm-0.4.3 requests-credssp-2.0.0 requests-ntlm-1.2.0 vapi-common-client-2.44.0 vapi-runtime-2.44.0 vcenter-bindings-4.2.0 vmwarecloud-aws-1.64.0 vmwarecloud-draas-1.23.0 vsphere-automation-sdk-1.86.0 xmltodict-0.13.0
semaphore-1  | Starting semaphore server
semaphore-1  | Loading config
semaphore-1  | Validating config
semaphore-1  | MySQL semaphore@semaphore-mariadb:3306 semaphore
semaphore-1  | Tmp Path (projects home) /tmp/semaphore
semaphore-1  | Semaphore develop-80e2c8e-1717270566
semaphore-1  | Interface
semaphore-1  | Port 3000
semaphore-1  | Server is running
semaphore-1  | time="2024-06-03T08:19:47Z" level=info msg="Task 14 added to queue"
semaphore-1  | time="2024-06-03T08:19:49Z" level=info msg="Set resource locker with TaskRunner 14"
semaphore-1  | time="2024-06-03T08:19:49Z" level=info msg="Task 14 removed from queue"
semaphore-1  | time="2024-06-03T08:19:52Z" level=error msg="remove /tmp/semaphore/inventory_14: directory not empty"
semaphore-1  | time="2024-06-03T08:19:52Z" level=info msg="Stopped running TaskRunner 14"
semaphore-1  | time="2024-06-03T08:19:52Z" level=info msg="Release resource locker with TaskRunner 14"

Manual installation - system information
No response
Configuration
compose.yml:
---
services:

  # Semaphore
  semaphore-mariadb:
    restart: unless-stopped
    image: mariadb:latest
    hostname: mariadb
    volumes:
      - /srv/semaphore/data:/var/lib/mysql
    expose:
      - 3306
    environment:
      MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
      MYSQL_DATABASE: 'semaphore'
      MYSQL_USER: 'semaphore'
      MYSQL_PASSWORD: '<redacted>'

  semaphore:
    image: semaphoreui/semaphore:develop
    restart: unless-stopped
    environment:
      SEMAPHORE_DB_USER: 'semaphore'
      SEMAPHORE_DB_PASS: '<redacted>'
      SEMAPHORE_DB_HOST: 'semaphore-mariadb'
      SEMAPHORE_DB_PORT: 3306
      SEMAPHORE_DB_DIALECT: 'mysql'
      SEMAPHORE_DB: 'semaphore'
    depends_on:
      - semaphore-mariadb
    volumes:
      - ./config.json:/etc/semaphore/config.json:ro
      - ./requirements.txt:/etc/semaphore/requirements.txt:ro
    expose:
      - 3000

  # Caddy reverse proxy
  caddy:
    image: 'caddy:latest'
    restart: unless-stopped
    ports:
      - <IP_ADDRESS>:80:80
      - <IP_ADDRESS>:443:443
      - <IP_ADDRESS>:443:443/udp

    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - /srv/caddy/data:/data
      - /srv/caddy/config:/config
      - ./certs:/certs:ro
...

config.json:
{
  "port": "3000",
  "web_host": "https://semaphore.example.org",
  "tmp_path": "/tmp/semaphore/",
  "access_key_encryption": "<redacted>",
  "cookie_hash": "<redacted>",
  "cookie_encryption": "<redacted>",
  "ldap_enable": true,
  "ldap_needtls": false,
  "ldap_binddn": "<redacted>",
  "ldap_bindpassword": "<redacted>",
  "ldap_server": "<redacted>:389",
  "ldap_searchdn": "<redacted>",
  "ldap_searchfilter": "(&(mail=%s)(memberOf:1.2.840.1135<IP_ADDRESS>1:=<redacted>)(objectClass=user))",
  "ldap_mappings": {
    "dn": "dn",
    "mail": "mail",
    "uid": "mail",
    "cn": "cn"
  }
}

requirements.txt:
pyvmomi
pywinrm[credssp]
git+https://github.com/vmware/vsphere-automation-sdk-python.git

Additional information
No response

Similar Issue for me, looks like Semaphore is creating an empty ansible.cfg in /tmp/semaphore/ansible.cfg you can over-mount from the host as a workarround.

Similar issue here. Just getting started with Semaphore, so I might be missing a setting or something.
I got a repository that contains a subfolder with all the ansible stuff, something like this:
repo/
repo/av2/
repo/av2/ansible.cfg
repo/av2/inventory/
repo/av2/plays/
repo/av2/plays/ansible.cfg
repo/av2/plugins/
repo/av2/roles/

Where repo/av2/ansible.cfg contains this:
[defaults]
inventory = ./inventory/
roles_path = ./roles/:/etc/ansible/roles/
filter_plugins = ./plugins/filter/
vault_password_file = ./.ansible.vault.pass.txt

And repo/av2/plays/ansible.cfg contains this:
[defaults]
inventory = ../inventory/
roles_path = ../roles/:/etc/ansible/roles/
filter_plugins = ../plugins/filter/
vault_password_file = ../.ansible.vault.pass.txt

It works fine on my workstation but Semaphore seems to be ignoring the ansible.cfg files; I have a task setup to execute a playbook at repo/av2/plays/full.yml that immediately fails when including roles from repo/av2/roles/:

11:45:45 AM
TASK [system] ******************************************************************
11:45:45 AM
ERROR! the role 'system' was not found in /tmp/semaphore/repository_2_5/av2/plays/roles:/tmp/semaphore/.ansible/roles:/usr/share/ansible/roles:/etc/ansible/roles:/tmp/semaphore/repository_2_5/av2/plays
11:45:45 AM
11:45:45 AM
The error appears to be in '/tmp/semaphore/repository_2_5/av2/plays/full.yml': line 8, column 15, but may
11:45:45 AM
be elsewhere in the file depending on the exact syntax problem.
11:45:45 AM
11:45:45 AM
The offending line appears to be:
11:45:45 AM
11:45:45 AM
ansible.builtin.include_role:
11:45:45 AM
name: "system"
11:45:45 AM
^ here

I just saw that #1036 suggests that ansible.cfg has to be located in the repository root. That behavior seems to deviate from Ansible, although the documentation just states it reads ansible.cfg from the "current directory".
Is there a way to tell Semaphore to cd av2/ first?

Not directly a solution for loading the ansible.cfg, but all mentioned configs you guys try to apply you should be able to change via environment variables.

I'd prefer Semaphore to read the settings from the file so I don't have to maintain them in one more place. I think the solution to cd somewhere first would make most sense, maybe a config option like working directory or something?

I tested with an ansible.cfg like this at the root of the repository:
[defaults]
inventory = ./av2/inventory/
roles_path = ./av2/roles/:/etc/ansible/roles/
filter_plugins = ./av2/plugins/filter/
vault_password_file = ./av2/.ansible.vault.pass.txt

Still does not work, same error. So Semaphore seems to be ignoring the config completely?

Hey guys thank's for your interest in this issue, I confirm as I said in my first post that my ansible.cfg is also in the root of my repository, and that it works fine on my laptop.

Not directly a solution for loading the ansible.cfg, but all mentioned configs you guys try to apply you should be able to change via environment variables.

@tboerger thank for your advice, I'm gonna try this as a workaround !
However I agree with @davidwinterstein I think it would be great to manage general Ansible config in a file in the repo, that would be easier to port and maintain in my opinion.

Same issue, I have my own custom ansible.cfg and since recent semaphore update all stop working. Inventory cannot find the proper ssh keys.

Same issue here.
ansible.cfg contains this line:
roles_path = /opt/ansiblectrl/roles:./roles:roles
which worked just fine on v.2.9.75, but isnt working anymore on v.2.9.112.
ERROR! the role 'aptUpdate' was not found in /tmp/semaphore/repository_1_1/playbooks/roles: /tmp/semaphore/.ansible/roles: /usr/share/ansible/roles: /etc/ansible/roles: /tmp/semaphore/repository_1_1/playbooks

Same issue here. ansible.cfg contains this line: roles_path = /opt/ansiblectrl/roles:./roles:roles which worked just fine on v.2.9.75, but isnt working anymore on v.2.9.112.
ERROR! the role 'aptUpdate' was not found in /tmp/semaphore/repository_1_1/playbooks/roles: /tmp/semaphore/.ansible/roles: /usr/share/ansible/roles: /etc/ansible/roles: /tmp/semaphore/repository_1_1/playbooks

In effect the version v2.9.75 works with my ansible repository and makes use of my ansible.cfg 👍 I might need to stick to that version until this is fixed.

Same issue here. ansible.cfg contains this line: roles_path = /opt/ansiblectrl/roles:./roles:roles which worked just fine on v.2.9.75, but isnt working anymore on v.2.9.112.
ERROR! the role 'aptUpdate' was not found in /tmp/semaphore/repository_1_1/playbooks/roles: /tmp/semaphore/.ansible/roles: /usr/share/ansible/roles: /etc/ansible/roles: /tmp/semaphore/repository_1_1/playbooks

In effect the version v2.9.75 works with my ansible repository and makes use of my ansible.cfg 👍 I might need to stick to that version until this is fixed.

I am just very happy that I encountered this bug in my homelab, where I can just go back to using ansible CLI.
I am going to stay on v.2.9.75 in my work production setup for now...

Similar Issue for me, looks like Semaphore is creating an empty ansible.cfg in /tmp/semaphore/ansible.cfg you can over-mount from the host as a workarround.

I attempted this, but it still ignores it.
I Use exec'ed in to the container and checked the contents of /tmp/semaphore/ansible.cfg after volume mounting it. I see my ansible.cfg file there, but Semaphore still ignores it.

Similar Issue for me, looks like Semaphore is creating an empty ansible.cfg in /tmp/semaphore/ansible.cfg you can over-mount from the host as a workarround.

I attempted this, but it still ignores it.
I Use exec'ed in to the container and checked the contents of /tmp/semaphore/ansible.cfg after volume mounting it. I see my ansible.cfg file there, but Semaphore still ignores it.

Works for me on the current 2.9.112 Docker Image at least, but I didn't set an EnvVar for the Config anywhere else.

Not directly a solution for loading the ansible.cfg, but all mentioned configs you guys try to apply you should be able to change via environment variables.

Could you elaborate on this? I am not sure I understand what you mean here?

Not directly a solution for loading the ansible.cfg, but all mentioned configs you guys try to apply you should be able to change via environment variables.

But each project + playbook is creating new folder in which ansible.cfg is stored. For this solution to work i would need to make new enviroment for each playbook in project and set its path to correct one.
Solution i found so far is to create enviromental variable ANSIBLE_CONFIG = /tmp/semaphore/repository_3_*
[SEMAPHORE_PLAYBOOK_PATH] + 'repository_' +[REPOSITORY NUMBER] + '_*' to get config from any repository that is already checked out.
But this works until you edit something in config - you would need to clear all checked out repositories to make sure it loads config from last commit

I am also setting up Semaphore for the first time and testing it out, I am running into the same issue. I have a folder structure where separate internal and external roles
└── roles
    ├── external
    └── internal

I am also setting up Semaphore for the first time and testing it out, I am running into the same issue. I have a folder structure where separate internal and external roles and this is set in the ansible.cfg
└── roles
    ├── external
    └── internal

[defaults]
roles_path = roles/internal:roles/external:roles

If you are setting semaphore up as a podman or docker container, you can use v. 2.9.75 for now, and it will work.

I just updated my SemaphoreUI running as a podman Quadlet, to version 2.10.7 ( https://github.com/semaphoreui/semaphore/releases/tag/v2.10.7 ) and this issue seems to be fixed. I reads my ansible.cfg again.
Thank you for fixing this


[DOCFIX] Add compatibility doc

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/15558/
Test PASSed.

@calvinjia PTAL? thanks.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/15560/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/15561/Failed Tests: 1org.alluxio:alluxio-tests: 1alluxio.master.JournalShutdownIntegrationTest.multiMasterMountUnmountJournal
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/15562/
Test PASSed.


FIX: Windows OS web fetching

It was failing to download anything for me on Windows version of nvim.
After spreading vim.fn.system it works - must be something to do with how spaces/quotes are handled in Windows OS.

@3dfactor @sm-victorw I don't know if this should be added to this PR but we could use curl if installed in Windows too, like for example in glow.nvim, in my Windows machine it downloads with no problem having curl installed.
if vim.fn.executable("curl") == 1 then
-- curl cmd
elseif platform == "windows" then
-- pwsh cmd
else
-- error: couldn't fetch binary
end

[!NOTE]
It also can be used vim.fn.exepath("curl") == ""

@AlejandroSuero I don't know if it should be in this PR, however I've tried using curl, since I have it on my Windows side of things and it still needed destructuring to work properly. I've looked at your given example in glow.nvim and apparently they also use destructured approach:
local download_command = { "curl", "-sL", "-o", "glow.tar.gz", release_url }
...
vim.fn.jobstart(download_command, callbacks)

So maybe it should be destructured by default regardless of OS consuming it to avoid possible caveats with spaces/quotes handling on different environments?

@3dfactor yes, I forgot to mention that cause I'm used to do it that way when using vim.fn.system or os.execute.

Well, I could add both:

desctructuring curl side of things too
adding curl availability check before checking for windows OS

However, that would change the PR from being Windows fix to something else.
Should I close it and add new PR or edit on top of this one?

It looks like glow.nvim only ever uses curl, and does not attempt to use any powershell commands. I'm worried it could be redundant to have both, introducing unneeded complexity, and making things a bit more error prone. But if the behavior of curl on windows is generally more consistent and predictable, then it would make sense to prefer using it. I think it would be simpler for that case to be its own PR

As far as I can tell, curl has been a part of Windows OS since 2017, so it should be safe to use.
https://curl.se/windows/microsoft.html


Set umask to 022 before running installation.

This ensures that the /home/linuxbrew directory will be readable by
the user.
This addresses #33.  For most users, this will have no effect, since they already use this umask.

There were Rubocop style issues unrelated to this PR. CI looked good otherwise.
Thank you for your first contribution to Linuxbrew!


support cancellation

Summary
support cancellation for workflow
Use Cases
Cancel the running workflow. If the current user wants to cancel the executed workflow, they can only delete it, so that the current environment cannot be retained. It is expected that the user can choose to cancel the workflow.
What I thought of is to add a field cancelled in the spec. When it is true, kill all containers through the wait container
The controller injects the downward api volume into the wait container. When the user cancels the workflow, the controller injects values into the annotations (workflows.argoproj.io/cancellation) of the workflow pods. wait listens to specific files under the downward api path. When the file generates content, it calls killContainers to cancel all tasks.
draft pr #13708, test case can refer to e2e test cancel_test

Message from the maintainers:
Love this feature request? Give it a 👍. We prioritise the proposals with the most 👍.

There is already a ShutdownStrategy so I'd suggest that we shouldn't add a new field, just add a new value to that.
What is the approach with exit handlers going to be?

There is already a ShutdownStrategy so I'd suggest that we shouldn't add a new field, just add a new value to that.

okay

What is the approach with exit handlers going to be?

exit handlers by wait container killContainers

What is the approach with exit handlers going to be?

exit handlers by wait container killContainers

I'm not sure what you're trying to say. My question wasn't well phrased, sorry.
I was trying to ask: Will exit-handlers be run in the case of a cancelled workflow? I think there are arguments for both options, and I wondered if you'd thought through the cases and come up with a suggestion. My inclination is to say they should run.

hi @Joibel , I got what you mean, I haven’t considered exit-handlers yet. I also tend to run exit-handlers. I haven’t added corresponding e2e tests in draft-pr. I will take this into consideration when it is fully implemented.


Age Of Chronos: Rebellion's Echo

Project Abstract
AGE OF CHRONOS Rebellion’s Echo is a web3 game created by SFY Labs on Moonbeam EVM with Unity Web.  Actually the game have an MVP that you can test. This project involves integrating NFT 2.0 technology into a web-based dungeon crawler game to enhance the gaming experience. Players can collect unique heroes, items, materials, and treasures.
https://x.com/SFY_Labs
<EMAIL_ADDRESS>Application Checklist
[X] The application template or delivery template has been copied and aptly renamed for an application (project_name.md) and a delivery (project_name_m1.md).
[X] I have read the games bounty guidelines.
[X] Payment details have been provided (Polkadot address in the application).
[X] The initial PR contains only one commit (squash and force-push if needed).

Subject: Important Update on Games Bounty – Transition to DOT Play Bounty
Dear Team,
We hope this message finds you well. We are writing to inform you of an important update regarding the Games Bounty you expressed interest in.
As you may be aware, the Games Bounty has recently undergone a significant transformation and has now been rebranded as the DOT Play Bounty. As part of this transition, the curators of the original Games Bounty no longer have access to the associated funds, nor do we have any authority over the allocation or spending of the 100k DOT that was initially set aside for this initiative.
We would like to take this opportunity to sincerely thank you for your interest and the time you have invested in the Games Bounty. Your enthusiasm and dedication to contributing to the Polkadot ecosystem are greatly appreciated.
While the Games Bounty has been discontinued in its previous form, we encourage you to explore the following avenues to continue your involvement:

Contact DOT Play: If you are interested in participating in the newly formed DOT Play Bounty, we recommend you contact the DOT Play team for further details and potential opportunities.

Create a Treasury Proposal: Consider submitting a proposal through the Polkadot governance system. This is an excellent way to secure funding for innovative projects that align with the broader Polkadot ecosystem.

Web3 Foundation Grants: You may also explore opportunities through the Web3 Foundation by applying for a grant. The foundation continues to support promising projects that contribute to the growth and development of the Web3 ecosystem.

We are confident that your talents and ideas will find the right platform for success, and we encourage you to continue your journey within the Polkadot and Web3 communities.
Thank you once again for your understanding and continued contributions.
Best regards,
Cedric


New SDH to support React Native

This new SDH is pretty much the same as standard, but with some changes to use the WebRTC implementation from React Native (https://github.com/oney/react-native-webrtc).
I create a new folder called React, but I don't know if there is the right place for it.
Tested only on Android for while. Could be able to make incoming/outcoming calls.

Can you fix the lint errors and then we will take this?

Done!


Add human friendly status

As discussed in https://github.com/Thomas55555/husqvarna_automower/discussions/91#discussion-3534417
Adds a human readable status (not to be confused with state)
Makes the vacuum card look like this (compare to the screenshot in the discussion above)

Hm, I see that I missed a few quotes in the ERROR state line. Don't merge just yet...

Now it looks as it should

You think, that's okay?

Nice additions, but why are you assigning everything from the coordinator to the HusqvarnaVacuumEntity instance as members instead of just putting stuff on the stack while fiddling in the methods? I did clean all of that in my fork if you want to take a look. All in all, I think this can be merged.

It's because of my programming skills. I just do, what is working, and then I'm happy :)
I'm sorry, but I'm not sure, where I can see this stuff, in your fork. I'm always happy for new ideas.

Ah, okay, it's in the master branch. I'll have a look at it.

I see ☺ Anyways, I think this PR can be merged. I will send a few more PRs in the coming days, I've had some more issues as you saw in my fork. Thanks for a great job!

Okay. Thank you, for your help.

Beautiful!

How do I get the above card? The only vacuum card I'm finding in HA is the Mushroom card.

How do I get the above card? The only vacuum card I'm finding in HA is the Mushroom card.

I have a tailored version of https://github.com/denysdovhan/vacuum-card

Thank you. Would you care to share your card config to get me started?


Restore resnet152_pn's, Error: Key not found

Hi!  When I run the evaluate.py,
python evaluate.py --model_path logs_Res_G/resnet152_pn/model.ckpt --test True
Try to restore the resnet152_pn's  model,but I get the error:
NotFoundError (see above for traceback): Key conv1/bn/conv1/bn/moments/Squeeze_1/ExponentialMovingAverage not found in checkpoint
Thanks!

I encountered the same problem, how did you solve it？


Lines of code present in PyPi package but not in documentation (1.3.2)

🐛 Bug
Not really a bug, but inconsistent state of documentation and official build. Both confirmed version 1.3.2.
When reading the PyPi files in pytorch_geometric/data/batch.py  the following lines are present:
...
else:
    raise ValueError('Unsupported attribute type')
...

while checking the validity of the datatype of the graph input. These are leading to the suspected behaviour, and are thus not really a bug. However, these lines are neither present in github, nor in the official documentation. Both are the same version 1.3.2.
Thus, you may want to recompile/reupload/update the PyPi package version of pytorch_geometric.

Thanks for reporting. I believe this is fixed with version 1.4.1!

Thanks a lot! :)


[Testing Confirmation] Confirm current testing requirements

As part of the discussion around implementing an organization-wide testing policy, I am visiting each repo to see what tests they currently perform. I am conducting this work on GitHub so that it is easy to reference.
Looking at the OpenSearch DSL-PY repository, it appears there is

Repository
Unit Tests
Integration Tests
Backwards Compatibility Tests
Additional Tests
Link

OpenSearch DSL-PY
- [x]
- [x]
- [ ]
Changelog Verifier, Link Checker
https://github.com/opensearch-project/opensearch-dsl-py/issues/101

I don't see any requirements for code coverage in the testing documentation. If there are any specific requirements could you respond to this issue to let me know?
If there are any tests I missed or anything you think all repositories in OpenSearch should have for testing please respond to this issue with details.

Closing this issue since opensearch-dsl-py is merged into opensearch-py as part of https://github.com/opensearch-project/opensearch-dsl-py/issues/93


Security Vulnerability

Using this library with user-supplied input in any way, even if just used to fill out a template could lead to major vulnerabilities. Do not use this library with user-supplied input until this is mitigated. If any contributors are still active, please reach out so this can get patched.

Can you elaborate on which major vulnerabilities you are talking about?

I won't paste the PoC's, but any user-supplied input would allow an attacker to change the entire PDF, run server-side requests, denial of service (DoS), extract files from the server and potentially run arbitrary code.


Router modifies external target location of

Version
5.0.1
Test Case
https://codesandbox.io/embed/relaxed-goldberg-k95uv?fontsize=14
Steps to reproduce
To reproduce a problem, i imported react router, created few "Link" elements and one "a" element with "href" attribute set to external website (e.g. www.google.com) inside 'About' component.
Expected Behavior
 link suppose to redirect to google site.
Actual Behavior
App redirects to relative path '/www.google.com' of an application.

That has nothing to do with React Router. You have to include the protocol scheme with any URL in an href. google


CI: don't remove python-dateutil at end of install

puzzled why the travis ci error started happening. This seems to fix it (and I don't even remember why this was necessary in the first place).

@cpcloud any recollection?


Pattern

Issue Id you have worked upon -
#387
Briefly explain your program logic -
//Logic
//firstly we ascend to 7 starting from 1
//Since we have to keep 1 ad 13 at same line and so on
//so we came up with logic that 13 is actually (2*7-1)
//we also recognized that there is space between 12 and 14 so another loop is there to take care of it.
//lastly we make sure that the printing number shouldnot exceed 16. for which we have to carryout nested if else ladder.
Screenshots(Attach 2 screenshots of your own input and output) -

Checklist:
Eg - If your code follow the below guidelines. Kindly change [] to [x]
All the conditions should be fulfilled for considering your code for merging -

[x] I have mentioned the question as comment in my solution file.

[x] My code follows the guidelines of this project.

[x] I have performed a self-review of my own code.

[x] I have commented my code.

[x] My code gives the correct output.

[x] I confirm that I have not copied the code from anywhere. In case its found that I have copied even after successful merge then I can be banned from the repository and hacktoberfest.

[x] I affirm that I strictly follow contributing guidelines and code of conduct.

@RAshid602,
Its confliting, kindly close this PR and create an new one.


Crash related to RCTNativeAppEventEmitter

Hey,
When my users open the app and there's an update pending, I get a crash that's originated in the sendAppEventWithName call in your AppHubReactModule code.
I read a bit about it and it seems like others also experience some crashes when using sendAppEventWithName instead of sendDeviceEventWithName.
Do you know smtng about it? Or alternatively on the crash I've described.
Thanks,
Guy

@geldarhb I ran into this and was able to work around the issue by importing NativeAppEventEmitter in my app.
// index.ios.js
import React from 'react-native';
const { NativeAppEventEmitter } = React;

I briefly tested again after https://github.com/AppHubPlatform/apphub-ios/pull/19 landed, as I thought that may have been related, but appeared to be running into the same issue w/o importing that module.

@drtangible thanks for the quick response here! I'll give it a try!
I replaced sendAppEventWithName with sendDeviceEventWithName and now everything works. The problem is that I'm not sure what's the difference between the two... :/

@geldarhb What version of the AppHub SDK are you running? I believe that this should have been fixed in #19, but the workaround that @drtangible mentioned fixes previous versions of the SDK.


setuptools doesn't install data_files correctly

Originally reported by: jdemeyer (Bitbucket: jdemeyer, GitHub: jdemeyer)

NOTE 1: I have read the docs and know this is documented as a feature, but I think it's a bug anyway.
NOTE2: This might be related to #130, but I didn't quite understand what that bug is about.
When using
#!python

setup(...
    data_files=("some/relative/path", ["file1", ...])
)

and running ./setup.py install, these data_files are installed in the egg, which makes them inaccessible to other programs. I think that setuptools should just do what distutils does here, which is to install the files in sys.prefix/some/relative/path. The egg might still be the correct location for package_data, I'm not arguing with that.
Wheel also installs data files in sys.prefix. It's annoying to have a package which works correctly when installed as a wheel, but which doesn't install correctly when using ./setup.py install with setuptools.
The documentation http://pythonhosted.org/setuptools/setuptools.html#including-data-files starts with "the most common use case for data files distributed with a package is for use by the package, usually by including the data files in the package directory". This may be right, but it's not the only use case and the use case where data_files are needed by something else (which might not even be Python) isn't covered.
My particular use case is installing kernel.json files for Jupyter.

Bitbucket: https://bitbucket.org/pypa/setuptools/issue/460

Duplicate of #130


docs: fingerprintjs -> fingerprint

:tada: This PR is included in version 0.5.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Opening a finding should open the relevant AppMap with the finding selected in the sidebar

Opening a finding from the problems tab and from the findings page will open the AppMap to the trace view with the trace filter populated with ids that the user can cycle through.

We want to change this to open the AppMap with the finding selected in the sidebar:

Completed as of #791


Add Pins Method Group

closes: #114

Very nice we will look at this today :)

also closes: #117, #116, #115

Hello @wudmer are you doing this to solve hacktoberfest issues? If so, please comment on the issues #117, #116, #115 so we can assign you. The issue #114 does not have the hacktoberfest label and you solved all issues in this Pull Request.

@BenDenger Hi, yes. Hacktoberfest labels are optional and only PR counts.

you solved all issues in this Pull Request.
I'm fine with that. I would rather solve another issue than split this PR

Thank you very much for your Contribution @wudmer


Dashboard: News - delayed broadcast

Scrolling issue happens when pressing next until that last step, and then press back.
Calendar icon should be clickable

Seems to be fixed already

On which branch did you test?

It still occurs when you press next until you reach the last step. Then press back, click the checkbox  and then click the clock icon.
The calendar icon is still not clickable.


3.0 update: Use AspNetCore.JsonPatch

Great, but should also (or instead) document use of Microsoft's own implementation in Microsoft.AspNetCore.JsonPatch.

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

ID: 593f528c-61b9-7021-335d-c1c0ec1814d1
Version Independent ID: 6a88d237-1a03-b865-e3c5-20ceedef2a1f
Content: JsonPatch in ASP.NET Core web API
Content Source: aspnetcore/web-api/jsonpatch.md
Product: aspnet-core
Technology: aspnetcore-webapi
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

@serpent5  here's an easy one if you're interested.

Microsoft.AspNetCore.JsonPatch is being used in the samples; it's just indirect. The Microsoft.AspNetCore.Mvc.NewtonsoftJson NuGet package has a dependency on Microsoft.AspNetCore.JsonPatch.
For reference, Microsoft.AspNetCore.JsonPatch provides JsonPatchDocument and the associated "patching" logic. Microsoft.AspNetCore.Mvc.NewtonsoftJson includes a Json.NET-based input formatter that converts a JSON Patch request body to a JsonPatchDocument. Microsoft.AspNetCore.JsonPatch is also dependent on Json.NET.
https://github.com/aspnet/AspNetCore/issues/14035 shows a request for System.Text.Json-based JSON Patch support but:

This is not something we plan to do in the near future.

Following that issue through, there's an example of how to use Json.NET only for the JSON Patch side of things, but I don't know whether that's something the team would like to document as a suggested approach (it's a bit "hacky"). Having said that, it looks like the only option if you really want to use System.Text.Json for all non-JSON Patch requests.
@Rick-Anderson:

What should we do about this? It looks like changes in this section would be a good start. Although the migration docs don't show it in the list, I don't think the following is true for 3.0:

The package is included in the Microsoft.AspnetCore.App metapackage.

I checked the contents of the 2.2 version and it's there but it's not in the 3.0 version.

There's no 3.x sample for this topic. Should I create one?

I really appreciate the followup.
The key point in aspnet/AspNetCore#14035https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Faspnet%2FAspNetCore%2Fissues%2F14035&data=02|01|Paul.Dempsey%40microsoft.com|55b2047e8b2d458abd3e08d75cc02d0c|72f988bf86f141af91ab2d7cd011db47|1|0|637079852773826125&sdata=8%2FQDxhWPFwbmAtSWB9efZ1cOlPEfqeW8BBHqP9lMsGA%3D&reserved=0 is this:
“Yes, we can simply add AddNewtonsoftJson() on the service collection instance, but it replaces the default System.Text.Json formatter for all JSON which is very unfortunate and defeat the purpose of moving away from using Newtonsoft.JSON.”
Which is disappointing. I’m hoping there are coherent plans to move to a full utf-8 string / json stack and avoid much of the transcoding and allocation in the pipeline (see Utf8Json benchmarks).
:- P
From: Kirk Larkin<EMAIL_ADDRESS>Sent: Tuesday, October 29, 2019 3:35 PM
To: aspnet/AspNetCore.Docs<EMAIL_ADDRESS>Cc: Paul Dempsey<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [aspnet/AspNetCore.Docs] 3.0 update: Use AspNetCore.JsonPatch (#15332)
Microsoft.AspNetCore.JsonPatch is being used in the samples; it's just indirect. The Microsoft.AspNetCore.Mvc.NewtonsoftJsonhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.nuget.org%2Fpackages%2FMicrosoft.AspNetCore.Mvc.NewtonsoftJson&data=02|01|Paul.Dempsey%40microsoft.com|55b2047e8b2d458abd3e08d75cc02d0c|72f988bf86f141af91ab2d7cd011db47|1|0|637079852773816118&sdata=2UvQRcbaeBL%2B17xQz46LxvQclZBzRhSd0q6Locw%2BVC8%3D&reserved=0 NuGet package has a dependency on Microsoft.AspNetCore.JsonPatch.
For reference, Microsoft.AspNetCore.JsonPatch provides JsonPatchDocument and the associated "patching" logic. Microsoft.AspNetCore.Mvc.NewtonsoftJson includes a Json.NET-based input formatter that converts a JSON Patch request body to a JsonPatchDocument. Microsoft.AspNetCore.JsonPatch is also dependent on Json.NET.
aspnet/AspNetCore#14035https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Faspnet%2FAspNetCore%2Fissues%2F14035&data=02|01|Paul.Dempsey%40microsoft.com|55b2047e8b2d458abd3e08d75cc02d0c|72f988bf86f141af91ab2d7cd011db47|1|0|637079852773826125&sdata=8%2FQDxhWPFwbmAtSWB9efZ1cOlPEfqeW8BBHqP9lMsGA%3D&reserved=0 shows a request for System.Text.Json-based JSON Patch support but:
This is not something we plan to do in the near future.
Following that issue through, there's an example of how to use Json.NET only for the JSON Patch side of things, but I don't know whether that's something the team would like to document as a suggested approach (it's a bit "hacky"). Having said that, it looks like the only option if you really want to use System.Text.Json for all non-JSON Patch requests.
@Rick-Andersonhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FRick-Anderson&data=02|01|Paul.Dempsey%40microsoft.com|55b2047e8b2d458abd3e08d75cc02d0c|72f988bf86f141af91ab2d7cd011db47|1|0|637079852773826125&sdata=%2BGkX3cFWgIfUQ4MhgK70Z0oO%2Fsj5xxgBLlzURpRfV4M%3D&reserved=0:

What should we do about this? It looks like changes in this sectionhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Faspnet%2Fcore%2Fweb-api%2Fjsonpatch%3Fview%3Daspnetcore-3.0%23jsonpatch-in-aspnet-core&data=02|01|Paul.Dempsey%40microsoft.com|55b2047e8b2d458abd3e08d75cc02d0c|72f988bf86f141af91ab2d7cd011db47|1|0|637079852773826125&sdata=EHRxSkrKp2cIz5i5kz%2B2c1OvsbLEAPUs7ryJGyAVuzI%3D&reserved=0 would be a good start. Although the migration docs don't show it in the list, I don't think the following is true for 3.0:

The package is included in the Microsoft.AspnetCore.App metapackage.
I checked the contents of the 2.2 version and it's there but it's not in the 3.0 version.

There's no 3.x sample for this topic. Should I create one?

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Faspnet%2FAspNetCore.Docs%2Fissues%2F15332%3Femail_source%3Dnotifications%26email_token%3DAF7S4CSHU32M56CEG6YELRDQRC27XA5CNFSM4JFP75ZKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOECSJZPI%23issuecomment-547658941&data=02|01|Paul.Dempsey%40microsoft.com|55b2047e8b2d458abd3e08d75cc02d0c|72f988bf86f141af91ab2d7cd011db47|1|0|637079852773836133&sdata=reFm0RLc9CMyEUzO4m9G%2F0pZEZZdkDkqe7ObNYrTbwI%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAF7S4CSMA5HEZFW2ZVK4VETQRC27XANCNFSM4JFP75ZA&data=02|01|Paul.Dempsey%40microsoft.com|55b2047e8b2d458abd3e08d75cc02d0c|72f988bf86f141af91ab2d7cd011db47|1|0|637079852773836133&sdata=%2FtihoqMRfcExrPU4vcXiwCTAz5LueE85anpLPEf4n90%3D&reserved=0.

@Paul-Dempsey  can you respond in GitHub and not via email? Can you edit your last response?

@pranavkm  please review and provide an outline to resolve this issue.

@serpent5  I took care of The package is included in the Microsoft.AspnetCore.App metapackage.
The MD is divided into
::: moniker range=">= aspnetcore-3.0"
// Copy exiting MDF file here, I fixed the package included
::: moniker-end

::: moniker range="< aspnetcore-3.0"
// Original file here
::: moniker-end

How about this: https://github.com/aspnet/AspNetCore.Docs/pull/15400?

Is there a mistake in the docs? The code sample for using System.Text.Json and setting up Newtonsoft.Json just for JsonPatchDocument<T> is:
public void ConfigureServices(IServiceCollection services)
{
    var jsonPatchServices = new ServiceCollection();

    jsonPatchServices.AddLogging()
        .AddMvc()
        .AddNewtonsoftJson();

    var jsonPatchServiceProvider = jsonPatchServices.BuildServiceProvider();

    var jsonPatchOptions = jsonPatchServiceProvider.GetRequiredService<IOptions<MvcOptions>>().Value;
    var jsonPatchInputFormatter = jsonPatchOptions.InputFormatters.OfType<NewtonsoftJsonPatchInputFormatter>().First();

    services.AddControllersWithViews(options => jsonPatchOptions.InputFormatters.Insert(0, jsonPatchInputFormatter));
}

Shouldn't the last line be this?
services.AddControllersWithViews(options => options.InputFormatters.Insert(0, jsonPatchInputFormatter));

@serpent5  do you want to fix this?

Yeah, sure. PR incoming.


Allow user to change the volume name when creating a workload

Describe the bug
REF: https://github.com/rancher/dashboard/pull/6886#issuecomment-1258959310
Allow user to change the volume name in following volume type when creating a workload.

Amazon EBS disk
Azure disk
Azure file
CSI
Google persistent disk
VMWare vSphere volume

To Reproduce

Go to the deployments list
Go to a deployment. In the Pod tab, click Storage > Add Volume > Open EBS Disk
The name of the volume is not shown

Expected Result
User should be able to edit the volume name

@Shavindra This is in test, but has no milestone.
I think this was fixed in 2.7.0 ? Can you confirm


certain missing widths are confusing

I keep trying to add a few different percentage widths that aren't available:

w-66 w-67
w-30
w-70

And it looks like for completeness it might be nice to add:

w-90

What do you think?

@ianstormtaylor Ha could have really used your thoughts over the last 2_ years. Have gone back and forth on this a million times. If you look at the history you'd probably see most of those available at some point :)
The 33/34/33 is a holdover from an old pattern I used and it wasn't meant to be matched with 2/3 or 67. But I get how it looks when reviewing just the available values.
Most of the things in tachyons are 'what do I need all of the time when I make websites'. and I rarely if ever find that I need 66,67,30,70,90% widths. But I also haven't been doing a bunch of crazy stuff with tables.
I'm not opposed to adding them in v4 - but curious as to what needs them? Is it more that you'd expect them to be there and they are not? Or you need them to build a certain pattern and they are not there?

Totally could be a fault of me not quite "getting it" yet! Let's see if I can explain my thinking...
For most of the layout widths, I'd usually try to use measure or mw7 or some form of that.
But then there are special cases where I get into the weeds with some little piece I'm trying to layout on a landing page where I think, "I'll split it 1/3 and 2/3 to get the right feel". And then I hit the wall. Or similar, sometimes I just want to make a tweak where something needs to go from 100% to 90% just to "feel" right.
I guess for me it comes down to what tachyons's goal is. I interpret its goal as something along the lines of:

Letting you scaffold layout/scale/rhythm decisions on the fly in HTML, since they are so impossible to properly abstract. Separate known "components" out like buttons and headers for sure, but don't couple the margins, paddings, widths, etc. to those components. Instead, chuck that stuff in the HTML because it changes so much even with small additions to the page.

Along those lines, I just kind of assumed that tachyons's API goal would be to expose all of the barebones CSS hooks that you need to be able to set up the proper layout/scale/rhythm via classes.
In which case I'd just try to make it "simple" by exposing a knowable system of widths:

scale increments
percentage increments of 10
percentage common ratios
common keywords

And call it done.
But, that's kind of assuming that tachyons doesn't have a "right way" to go about thinking about how to achieve layout itself. (Only assuming a "right" way in terms of how it prescribes separation of concerns.) If there is a "right way" to layout, then it's totally possible that I just don't know it yet, and that the "right way" would involve never needing to use 90% or 67%.
Does that make sense?
I feel like my ideal tachyons would be super easily auto-generate-able from JS 😄  which would correspond to it's system being fairly strict and predictable.

No it totally makes sense.
And yeah we are working on a generator for just that! We'll share soon so we can get feedback.
Honestly for most of tachyons - it was really just 'these are patterns I personally use all the time'
and nothing more. Which has made me hesitate to add anything I'm not personally using a lot. But as people are using it for their own projects - while I don't think I can solve all problems for everyone - I do think there is room for improvement on helping people cover common use cases. So if we had
third
two-thirds
10,20,25,30,40,50,60,70,75,80,90,100
This would be cover everything you think? I'd be up of for adding that to v4.5

Tachyons v5 will become a monorepo so this issue is being closed, if the issue is still relevant please open an issue with the main repo https://github.com/tachyons-css/tachyons/issues/new & link to this one


Fix name resolve for nested models.

@aminalaee sorry for that - somehow this commit missed in previous request, require this for nested models - please release it.

That's ok, but please update the tests so we know the fix is working.

@aminalaee done


Dropdown's lines, font look different than other input's lines, font.

Take a look at the picture and you see that dropdowns are white while other inputs are grayish. Also the text is different even though there is no styling difference applied to the components.

Can you please make sure this is not messing with custom styles you may set for your app? I mean for the font-size. It looks like we should use the same sass variables to style dropdown borders as for inputs. Labeling as bug and doing it soon.
Thanks!

In this picture, my font-size for the whole page was 65%. Removing this line from style sheet, the fonts on the dropdowns don't match those on the input boxes.
Also, I have no custom sizing for the dropdowns' templates.

I'll check it during the weekend!

@elliotatRetireup If you can't fix the problem with font sizes, please open another issue with a more detailed description. I think I've explained this in other issue, but here it is again just in case:
React Toolbox uses by default a 1rem size as base unit which is supposed to be equivalent to 10px. To get 10px as root size you'd need to provide font-size: 62.5% to your body element which can be done automatically importing react-toolbox/lib/commons. An alternative is to use toolbox-loader to set a different $unit. This allows to scale components sizes as you want.


RFC: net: lwm2m: Add LWM2M_ON_INIT() macro

Request for comments!
Add macro that allows registration of initialization functions that are called when LwM2M engine starts.
On LwM2M engine starts up, it first executes all initialization functions in following priority order:

LWM2M_PRIO_ENGINE
LWM2M_PRIO_CORE, this is where all LwM2M core objects are initialized
LWM2M_PRIO_OBJ, this is where all other objects are initialized
LwM2M_PRIO_APP, application initialization.

Now on the initialization phase, we could rely that certain objects have already been registered.
For example custom objects can register callbacks to core objects. On application phase, we can initialize sensor objects and register their callbacks because objects have already been initialized.
Priority order is actually just alphabetical order of names, so the order is set on a linkin phase, and we don't need any runtime checking for it.
This LWM2M_ON_INIT() should replace all use of SYS_INIT() with the default CONFIG_KERNEL_INIT_PRIORITY_DEFAULT.
Also some init() functions that are usually called from main() could now register themselves as  LwM2M_PRIO_APP. For example, LwM2M client app could have a sensor module the creates sensor objects and register callbacks or workers for those. It can now be done with just Kconfig to turn on/off, instead of having #ifdef MY_MODULE... my_module_init() in the main.c

Fine by me :+1:

As there was no objections, I'll convert this to normal PR.


Default values for minItems, maxItems and move.

When creating a new slider, this seems to not have anything set which causes an error and the slider doesn't work.
https://github.com/dynamic/silverstripe-flexslider/blob/2.0/code/FlexSlider.php#L156-L158

The issue seems to be that existing classes that have FlexSlider implemented don't generate the default values. I also ran into an issue when testing on a fresh 3.6.1 installation related to this: [Warning] A non-numeric value encountered. This error is due to the fact that the defaults aren't implemented on the existing record.

I think we need to update documentation for this. The task at dev/tasks/SlideThumbnailNavMigrationTask will resolve the issue, but we only mention it as a Pre-release migration task. We should update the documentation to note that the task should be run when the module is installed on existing sites and/or when flexslider is applied to existing records. New records will receive the defaults upon creation, but existing records need the task to apply them.

resolved via #121


Unable to get the value of min in User and Channel

min is not defined in User and Channel, so I add [IfFlag(20)] public bool min to User according to the existing rules; Add [IfFlag(12)] public bool min in Channel; When the stream read failed, how do I get the min value

boolean flags are accessible via the flags bitfield, instead of separate fields.
Example: user.flags.HasFlag(User.Flags.min)

ok,thanks


Foundry VTT v10 Support

Hi
I'm getting compatibility errors when running FVTT v10 with Heart installed:
setup.js:145 [heart] The system "heart" is using "author" which is deprecated in favor of "authors"
setup.js:145 [heart] The system "heart" is using the old flat core compatibility fields which are deprecated in favor of the new "compatibility" object
setup.js:145 [heart] The system "heart" is using "name" which is deprecated in favor of "id"

Thanks for letting me know! While it shouldn't cause any problems (other than warnings), I'll get to work on a fix shortly.

I have the same errors still, and it grey screens(nothing loads at all) for me. On version 10.286 at the moment.

I'm also having the same issue. Is an update still in the works?

Hey, apologies for the delay in responding. This update is still planned, but it turns out it needs a major rework of the underlying classes, so it won't be a quick job. I can't give an ETA on this because my availability is sporadic

Cool, thankfully I was able to back up my world.

Thanks to whitespine, we got a fix in early, should be out with v0.5.0


Re-raise logger import warnings when not installed

Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[x] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure to update the docs?
[ ] Did you write any new necessary tests?
[ ] If you made a notable change (that affects users), did you update the CHANGELOG?

What does this PR do?
When importing a logger this way
from pytorch_lightning.loggers.wandb import WandbLogger
an error message will be printed if the package is not installed.
However, if we import from the top level module, i.e.,
from pytorch_lightning.loggers import WandbLogger
the error message is discarded.
This PR fixes that.
Probably what is happening in #1487.
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

ok I see, I thought these errors are only raised when the user imports it.
So is it not possible to tell the user that there is a missing package?

ok I understand now that my fix won't work, but my intention was simply to allow the custom error message to pass to the top level in case the user imports
from pytorch_lightning.loggers import WandbLogger
instead of
from pytorch_lightning.loggers.wandb import WandbLogger

I see your point and agree that we shall raise import error even when user explicitly imports logger from pytorch_lightning.loggers.__init__ just not sure how to avoids raising errors from other loggers which are not requested...

the actual error message is:
>>> from pytorch_lightning.loggers import NeptuneLogger
/usr/lib/python3/dist-packages/apport/report.py:13: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
  import fnmatch, glob, traceback, errno, sys, atexit, locale, imp
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: cannot import name 'NeptuneLogger' from 'pytorch_lightning.loggers' (/home/jb/.local/lib/python3.7/site-packages/pytorch_lightning/loggers/__init__.py)
Error in sys.excepthook:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
    from apport.fileutils import likely_packaged, get_recent_crashes
  File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
    from apport.report import Report
  File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
    import apport.fileutils
  File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
    from apport.packaging_impl import impl as packaging
  File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 24, in <module>
    import apt
  File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'

Original exception was:
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: cannot import name 'NeptuneLogger' from 'pytorch_lightning.loggers' (/home/jb/.local/lib/python3.7/site-packages/pytorch_lightning/loggers/__init__.py)

I think it is not possible. The only thing we could do is add a note to the documentation that the user needs to manually install the logger. Should I do this? Can directly add it to this PR #1484 . What do you think?

ok, pls add a note to the docs-logger PR and let's also keep this open for a while if we find another way to using loggers...

this is probably an unsolvable problem, let's close it @Borda ?

I think, what we could do here: have all imports to these packages locally inside the logger classes. This way we can normally import them and don't have to catch ImportErrors and the User still gets errors during instantiation (which would be fine I guess).

@awaelchli If you enable edit from contributors for your PR I can do it. Should be a rather quick fix :)

It's already turned on but I think it won't work because here I was still using my own fork when I submitted the PR. Feel free to submit a fresh PR since I have not really changed anything here :)