Import files to theme-live-codeblock scope

🐛 Bug Report
Import statements in theme-live-codeblock not working.  I read the react-live docs and it does look like they do support importing modules - does docusaurus expose the needed scope?
Have you read the Contributing Guidelines on issues?
Yes
To Reproduce

Configure theme-live-codeblock according to these instructions
Install @material-ui/core
Create file.mdx attempt to import components from @material-ui/core
Attempted to import within .mdx file as well as the ``` jsx live block

Expected behavior
Render the imported component
Actual Behavior

When the import statement is at the top of .mdx (keep in mind I can use the imported component within the .mdx file just fine, just can't use it within the ```jsx live block..):

When the import statement is inside the ```jsx live block:

Your Environment

Docusaurus version used: 2.0.0-alpha.55
Environment name and version (e.g. Chrome 78.0.3904.108, Node.js 10.17.0): Node: v13.12.0, Firefox: 76.0.1
Operating system and version (desktop or mobile): Catalina 10.15.4

// from package.json
"dependencies": {
  "@docusaurus/core": "^2.0.0-alpha.55",
  "@docusaurus/preset-classic": "^2.0.0-alpha.55",
  "@docusaurus/theme-live-codeblock": "^2.0.0-alpha.39",
  "@material-ui/core": "^4.10.0",
  "@material-ui/icons": "^4.9.1",
  "classnames": "^2.2.6",
},

Reproducible Demo

Demo 1
Demo 2
.mdx file

After browsing through the repo, it doesn't look like docusaurus lets you configure react-live scope..
As a workaround, this is what I did:

Copied the code from Playground, usePrismTheme, and styles.module.css all to the same directory

Slightly modified Playground
/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

import React from 'react';

import {
  LiveProvider,
  LiveEditor,
  LiveError,
  LivePreview
} from 'react-live'

import classnames from 'classnames';
import usePrismTheme from './usePrismTheme.js';

import * as styles from './styles.module.css';

function Playground({children, /* theme, */ transformCode, ...props}) {
  const theme = usePrismTheme();

  return (
    <LiveProvider
      code={children.replace(/\n$/, '')}
      transformCode={transformCode || ((code) => `${code};`)}
      theme={theme}
      {...props}>
      <div
        className={classnames(
          styles.playgroundHeader,
          styles.playgroundEditorHeader,
        )}>
        Live Editor
      </div>
      <LiveEditor />
      <div
        className={classnames(
          styles.playgroundHeader,
          styles.playgroundPreviewHeader,
        )}>
        Result
      </div>
      <div className={styles.playgroundPreview}>
        <LivePreview />
        <LiveError />
      </div>
    </LiveProvider>
  );
}

export default Playground;

NOT modified usePrismTheme
/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

import defaultTheme from 'prism-react-renderer/themes/palenight';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import useThemeContext from '@theme/hooks/useThemeContext';

const usePrismTheme = () => {
  const {
    siteConfig: {
      themeConfig: {prism = {}},
    },
  } = useDocusaurusContext();
  const {isDarkTheme} = useThemeContext();
  const lightModeTheme = prism.theme || defaultTheme;
  const darkModeTheme = prism.darkTheme || lightModeTheme;
  const prismTheme = isDarkTheme ? darkModeTheme : lightModeTheme;

  return prismTheme;
};

export default usePrismTheme;

NOT modified styles.module.css
/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

 .playgroundHeader {
  letter-spacing: 0.08rem;
  padding: 0.75rem;
  text-transform: uppercase;
  font-weight: bold;
}

.playgroundEditorHeader {
  background: var(--ifm-color-emphasis-600);
  color: var(--ifm-color-content-inverse);
}

.playgroundPreviewHeader {
  background: var(--ifm-color-emphasis-200);
  color: var(--ifm-color-content);
}

.playgroundPreview {
  border: 1px solid var(--ifm-color-emphasis-200);
  border-bottom-left-radius: var(--ifm-global-radius);
  border-bottom-right-radius: var(--ifm-global-radius);
  position: relative;
  padding: 1rem;
}

From there, I import the Playground into an .mdx file and it worked!  I did try to use react-live components on their own, which worked, but styling was not right.  That is why I copied those components - to keep styling.
MyFile.mdx:
---
id: some_id
title: My Live Code Demo
---

import Playground from '../Playground';
import { Button } from '@material-ui/core';

### Custom components

<LiveCodeBlock scope={{ Button }}>
{`
function MyButton() {
  return <Button color="secondary" onClick={() => alert("Hello, world!")}>Click me</Button>
}
`}
</LiveCodeBlock>

Which works perfectly!

Final Solution
Ultimately, with my solution above, there were still some minor differences in styling.. That lead me into digging more into the codebase and it looks like what I was doing was very similar to swizzling.

Despite the warning, swizzling MDXComponents was the easiest way to accomplish this:
yarn swizzle @docusaurus/theme-classic MDXComponents

This creates a file at `src/theme/MDXComponents/index.js` - (click on me to see edited file)

/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

import React from 'react';
import Link from '@docusaurus/Link';
import CodeBlock from '@theme/CodeBlock';
import Heading from '@theme/Heading';

import styles from './styles.module.css';

//-------------------------------------------------------/
////// Import the component you need in scope
import Button from "@material-ui/core/Button";

//-------------------------------------------------------/
////// Object with components I need in scope
const SCOPE = {
  Button,
}

export default {
  code: (props) => {
    const {children} = props;
    if (typeof children === 'string') {

      //-------------------------------------------------------/
      return <CodeBlock {...props} scope={SCOPE} />;
      /**
       * REPLACED THE LINE BELOW WITH THE LINE ABOVE
       */
      //// return <CodeBlock {...props} />;
      //-------------------------------------------------------/

    }
    return children;
  },
  a: (props) => {
    if (/\.[^./]+$/.test(props.href)) {
      // eslint-disable-next-line jsx-a11y/anchor-has-content
      return <a {...props} />;
    }
    return <Link {...props} />;
  },
  pre: (props) => <div className={styles.mdxCodeBlock} {...props} />,
  h1: Heading('h1'),
  h2: Heading('h2'),
  h3: Heading('h3'),
  h4: Heading('h4'),
  h5: Heading('h5'),
  h6: Heading('h6'),
};

Then you can just use it in your markdown:
``` jsx live
function ButtonTest() {
    return (
        <Button onClick={() => alert('omg it worked')} color="secondary">Click Me</Button>
    )
}
```

This worked perfectly for me - no need for a custom component now..

Hi,
I'm going to reopen because this is something I noticed inspecting the code 3 days ago, and wanted to fix.
We should be able to import components in MDX, and they should become automatically available in the playgrounds of the mdx page. Afaik my discussions with Chris Biscardy there's a useComponents() in MDX to solve exactly that

I'm not too familiar with the libraries/technology used in this repo (lerna, mdx, react-live..) Hell, I just started with docusaurus like 3 days ago...but if there's anything you need help with, feel free to reach out.

Hey @slorber - just wanted to let you know that it doesn't look like that useMDXComponents hook returns imported components. It looks like it returns the data already in /MDXComponents/index.js - it doesn't return imported components. I'm not sure if there's a way to have MDX tell us what has been imported or not (so that we can add it to scope).. FYI.

Unfortunately you are right @oze4
I found back my discussion with Chris Biscardi here: https://twitter.com/sebastienlorber/status/1252899627126358016
There is a useMDXScope hook, but it's not from MDX, it's from MDX, it's from the Gatsby MDX plugin.
I've looked at its code and it's probably not so easy to port it fast to Docusaurus, as it uses a babel plugin to extract imports from the MDX generated JSX, write them to disk in a dedicated file...
https://github.com/gatsbyjs/gatsby/blob/cd150b5e5264a5a75f2abc27e3430c55bfcd4e41/packages/gatsby-plugin-mdx/gatsby/on-create-node.js
Will probably come back to this later when we have shipped more urgent features.

In the meantime, I think we still can make something about it, like allowing to more easily provide components to the react-live scope with swizzle. The scope may not be per-MDX file, but having a global scope is probably good enough for most usecases.
Also, afaik we don't have yet a "wrapRootElement" API but I've seen this is something we want. This would enable to use the MDXProvider

@oze4 I've made a PR to support more officially a workflow to provide some components to the react-live scope. It's not as good as the gatsby integration as I hoped (as you have to configure available scope globally) but I think it's good enough:
https://github.com/facebook/docusaurus/pull/2826

Hey @slorber - I did notice that Gatsby uses a custom hook, useMDXScope from the gatsby-plugin-mdx which I did test out as well.  Unless I'm using it incorrectly, the useMDXScope hook also did not update with imported components - it returned the same data as useMDXComponents.  (After all it looks like useMDXScope is a wrapper for useMDXComponents?)
When I imported a component in an .mdx file, the useMDXScope hook did not pick up on that. Again, I could be using it incorrectly, but that is also something I looked into.  While it looks like they have the 'right idea', I'm not sure it's working as intended.
Thanks for everything!

Yes it's normal as it's proprietary to gatsby, it assumes the gatsby-node.js code has run and written something to the FS, otherwise it just returns no additional context :)

Awesome. Thanks for your input. What's weird is that I was using it in Gatsby and it was still returning no additional context. I wanted to see how they handled this so I built out a little demo Gatsby site..
With that being said, it's probably something I was doing wrong.
Cheers!

Didn't test with Gatsby either but I guess it should work ^^ Does the doc of the PR I wrote seems good for your usecase?

Yes sir. Thank you!

Implemented in https://github.com/facebook/docusaurus/pull/2826.

Released in https://github.com/facebook/docusaurus/releases/tag/v2.0.0-alpha.58


Replace DCF isInitialized with a countdown latch and waitForInit

Description

Resolves https://github.com/opensearch-project/security/issues/3204

Testing
[Please provide details of testing done: unit testing, integration testing and manual testing]
Check List

[ ] New functionality includes testing
[ ] New functionality has been documented
[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@shikharj05 @anijain-Amazon Would you please review this?

Lets translate the repro from the issue into a test case that we can use to confirm the bug and evaulate this fix.

Testing race conditions is always a little tricky. I'm currently working on coming up with tests that can reliably reproduce the race conditions to confirm the fix.

Closing this for now. Will re-open once I resume working on this upon feedback from @shikharj05 .


100% Coverage of nothing: app files not passing through to istanbul?

gulp.task('test', function (cb) {
    gulp.src(['./*.js'])
      .pipe(istanbul()) // Covering files
      .on('finish', function () {
        gulp.src(['test/*.js'])
        .pipe(lab('-v -C -l -m 0'))
        .pipe(istanbul.writeReports()) // Creating the reports after tests runned
        .on('end', cb);
      });
});

results in this:
----------|-----------|-----------|-----------|-----------|
File      |   % Stmts |% Branches |   % Funcs |   % Lines |
----------|-----------|-----------|-----------|-----------|
----------|-----------|-----------|-----------|-----------|
All files |       100 |       100 |       100 |       100 |
----------|-----------|-----------|-----------|-----------|

=============================== Coverage summary ===============================
Statements   : 100% ( 0/0 )
Branches     : 100% ( 0/0 )
Functions    : 100% ( 0/0 )
Lines        : 100% ( 0/0 )
================================================================================

The output lcov.info is an empty file.
coverage-final.json contains and empty {}

I was also seeing this result (100% coverage with 0s reported for everything), and it was because I was using gulp-spawn-mocha instead of gulp-mocha because I was having test pollution across multiple test suites. I don't have test pollution now, but because the tests run in a separate process, they don't get the instrumented code from hookRequire. Is there any way around this? I found this related issue on istanbul that sketches out an approach to covering child processes, but it seems very manual: https://github.com/gotwarlost/istanbul/issues/97

@tandrewnichols Well, you need the covered source to run and get the results after. So just setup your code like the browser workflow.

Right, but you also have to require the right code, which either means wrapping require with something that determines where to load it from (based on process.env or something) or always using relative paths. It does work, and I've done it before, but it's slightly more error-prone than testing for the browser.

The only other solution I see is you could do the instrumentation phase inside your spawned process.

42 is the answer to all questions )

I ended up including both gulp-spawn-mocha and gulp-mocha in my test suite. I use gulp-spawn-mocha for integration tests and for unit tests not run under coverage, and I use gulp-mocha for running unit tests under coverage. This actually works quite well, as they both have the same method signature, so I just swap the "require" and leave everything else the same.

For those who arrive here from a search engine, this problem also appears when upgrading gulp-mocha to v4. (issue is explained here: https://github.com/SBoudrias/gulp-istanbul/issues/115)
In this case, the solution is to use gulp-mocha v3 or to directly use mocha & istanbul CLI (as mentioned in the issue).

I am still having this issue when I just Hapi Lab, do I need to edit the package.json file to fix this?


Fix validation for ICMP type and code in backend rules.

Description

0 (ping reply) should have been allowed.
255 (unused) should have been foridden due to lack of kernel support.

Frontend API models were already correct.
Fixes the validation part of https://github.com/projectcalico/felix/issues/1604
Todos

[x] Tests
[x] Documentation
[x] Release note

Release Note

Fix incorrect validation of ICMP type to allow 0, which is a valid value.

@fasaxc does this need to go into v2.x as well?

@caseydavenport Yes, it probably should: #654


[Sema] Suppress deprecation warnings in synthesized code

Resolves SR-8634.

@CodaFi has brought this up before and I'm not sure it's correct. We want to know in general if the compiler is synthesizing incorrect code.

@jrose-apple Right, the solution is not to synthesize at all if something is unavailable, and synthesize with possible corrections if something is deprecated. But if there aren't any deprecation corrections passed with @available we can rely on, we have to either refrain from synthesizing or suppress the upcoming warning in TypeCheckAvailability.
For example, should we synthesize rawValue here? Because it's a warning we're talking about, I think we should. Besides, we'd be leaving .b and .c out if we don't.
enum Foo: Int {
  @available(*, deprecated)
  case a
  case b
  case c
}

I just found out this doesn't compile:
enum Foo: Int {
  @available(*, unavailable)
  case a
  case b
  case c
}

I'm not sure what Foo.b.rawValue should be equal to, 0 or 1?

Oh, I agree we need to synthesize rawValue to handle a (and init(rawValue:)), and I agree that it shouldn't warn, and I know we don't have an equivalent of GCC's __extension__ to silence the warning locally…but I don't know if we want to silence this for all synthesized declarations ahead of time. It seems too easy for us to miss something, like if we inherited initializers by synthesizing super.init calls and forgot to mark the inherited initializer as deprecated.
One possibility would be to come up with a compiler-only attribute to silence deprecation warnings, just like. We can put that on synthesized declarations that we know can reference deprecated members without themselves being deprecated.
Maybe I'm just being oversensitive, though.

I don't know what to do about the unavailable case. I'd suggest that it still claims a number, since that's most compatible with "I had an existing enum and I added unavailable to one case". That might be worth addressing in a separate PR, though, and probably then a second SR too.

but I don't know if we want to silence this for all synthesized declarations ahead of time. It seems too easy for us to miss something, like if we inherited initializers by synthesizing super.init calls and forgot to mark the inherited initializer as deprecated.

I don't really understand how an emitted warning will help here, or why synthesized declarations that are themselves deprecated for some reason would cause a problem if the warning isn't emitted. Could you elaborate some more? We definitely don't want it to be emitted in synthesized code in the first place, right?

Here's the example:
class Base {
  init(good: Int) { }
  @available(*, deprecated) init(bad: Int) { }
}

class Sub: Base {
  // initializers inherited
}

Sub(bad: 0) // should warn

If the compiler implemented this by synthesizing this declaration in Sub:
  init(bad: Int) {
    super.init(bad: bad)
  }

then we'd get a warning today telling us that that super.init call was wrong. The correct fix in this case would be to make sure the synthesized declaration was also marked deprecated:
  @available(*, deprecated)
  init(bad: Int) {
    super.init(bad: bad)
  }

Silencing the warning in all synthesized code would make it less likely that we'd notice this issue; we'd have to wait for a bug report from outside with the original test case.
I'm not sure if this is sufficient justification to look for a different answer, but it is why I'm worried.

Now I get your point, thanks. Inheritance is probably the only case when we preserve availability, if I'm not mistaken.. I feel like ensuring we have a test for that is a better option than adding a new internal attribute. In both cases it all boils down to having an appropriate test, so there's only a subtle difference in safety.

I agree that the presence of an unexpected warning is more likely to be noticed. Let's add a test for Sub(bad: 0) // should warn if it survives the bots, I haven't found one. I'm not familiar with what's going on in the Clang Importer, but if there's anything concerning you, I can look for certain tests.

It's good to add the test, but note that in this case it's not actually related, since we don't synthesize bodies for inherited initializers in Sema. (We take care of it in SILGen.)
@swift-ci Please smoke test

@jrose-apple Any plans to backport this to Swift 4.2.x?

We generally don't backport fixes to earlier releases if they're not being released for all platforms (especially when there are already beta releases for 5.0), but if this is important to you for Linux you could cherry-pick it and open a PR per the 4.2.x process forum post.

if this is important to you for Linux

Actually, no -- I'm writing an iOS/macOS app that uses the LAError enum and was hoping those warnings would go away in Xcode.

Ah, then you'll have to wait for Xcode 10.2 to GM.


Replace k8s.gcr.io with registry.k8s.io

This is a mass replacement of k8s.gcr.io references to point to registry.k8s.io.
There were a few files like blogs and things that called out the old reference that I left untouched.
Please double check the list of files, but should be pretty straight forward.
/hold
/assign sftim

Several things to note:

We in general only update the en site and let each localization teams to decide when and how to sync/resync these changes. Please avoid changes that span multiple languages. Each language has a different group of reviewers/approvers.
Some of the references (kubeadm, kubernetes-api, etc) are auto-generated out of upstream source code using the kubernetes-sig/reference-tools. For these files, even if we manually fix the markdown/html here, the fixes will be overridden the next time we generate those files. The correct fix would be change the upstream source code.

We could put out a call-to-action to update the example manifests for each localization (these changes should be easy to review). It should indeed be one PR for each localization team; I'd rather have stale docs than upset a localization team by bypassing their process.
If we update eg content/en/blog/_posts/2019-12-02-gardener-project-update.md then we usually want to mark that the page was updated - maybe a short italicised sentence right at the foot of the content?

I can break things up, but I would still push to update quickly. We're already on track to be well over budget (3M budget, projecting to hit 4M) for image pulls and need as many people to switch over to the new registry as possible like.... yesterday.


Identity support

Note: not focusing on tests right now so that the FireFly integration can proceed sooner, which is an important exercise to inform the architectural validation to accommodate multiple ledger technologies
Create (register)
$ curl -H "Content-Type: application/json" -d '{"name":"user102","type":"client"}' http://localhost:3000/identities | jq
{
  "name": "user102",
  "secret": "nzzoCYRTxaRj"
}

including error handling:
$ curl -H "Content-Type: application/json" -d '{"name":"user102","type":"client"}' http://localhost:3000/identities | jq
{
  "error": "failed to register user: failed to register user: Response from server: Error Code: 0 - Registration of 'user102' failed: Identity 'user102' is already registered\n"
}

Enroll
$ curl -H "Content-Type: application/json" -d '{"secret":"nzzoCYRTxaRj"}' http://localhost:3000/identities/user102/enroll
{
  "name": "",
  "success": true
}

List
g$ curl http://localhost:3000/identities | jq
[
  {
    "name": "admin",
    "maxEnrollments": -1,
    "type": "client",
    "affiliation": "",
    "caname": ""
  },
  {
    "name": "u0cr3kb8sl",
    "maxEnrollments": 1,
    "type": "orderer",
    "affiliation": "",
    "caname": ""
  },
  {
    "name": "u0cr3kb8sl-admin",
    "maxEnrollments": 1,
    "type": "admin",
    "affiliation": "",
    "caname": ""
  },

Get
$ curl http://localhost:3000/identities/user102 | jq
{
  "name": "user102",
  "maxEnrollments": -1,
  "type": "client",
  "affiliation": "",
  "caname": "u0vgwu9s00"
}

Using a newly registered and enrolled signing identity to submit transactions
$ curl -H "Content-Type: application/json" -d '{"headers":{"type":"SendTransaction","channel":"default-channel","signer":"user102"},"chaincode":"asset_transfer","func":"CreateAsset","args":["asset1016","yellow","10","Tom","1300"]}' http://localhost:3000/transactions | jq
{
  "sent": true,
  "id": "1621fcad-d42e-4489-7956-2d056901850c"
}

[2021-07-29T18:28:15.316-04:00]  INFO --> POST /transactions
[2021-07-29T18:28:15.316-04:00]  INFO Request handler accepted message. MsgID: 1621fcad-d42e-4489-7956-2d056901850c Type: SendTransaction
[2021-07-29T18:28:15.316-04:00]  INFO In-flight 1000001 added. signer=user102 before=0
[2021-07-29T18:28:15.316-04:00]  INFO <-- POST /transactions [202]:
{"sent":true,"id":"1621fcad-d42e-4489-7956-2d056901850c"}
[2021-07-29T18:28:16.068-04:00]  INFO TX: Sent OK [0.75s]
[2021-07-29T18:28:16.170-04:00]  INFO Obtained receipt after 101.97ms - average time to receipt: 101.97ms
[2021-07-29T18:28:16.170-04:00]  INFO Receipt for f39a3c720c8013b654527258332d05c5ea341e05939e2f42d7516554ee74fb9c obtained after 0.10s Success=true
[2021-07-29T18:28:16.170-04:00]  INFO Received reply message. requestId='1621fcad-d42e-4489-7956-2d056901850c' reqOffset='' type='TransactionSuccess':
[2021-07-29T18:28:16.171-04:00]  INFO 1621fcad-d42e-4489-7956-2d056901850c: Inserted receipt into receipt store
[2021-07-29T18:28:16.171-04:00]  INFO In-flight 1000001 complete. signer=user102 sub=true before=1 after=0

Codecov Report

Merging #24 (5e4a90b) into main (016d4e9) will increase coverage by 0.03%.
The diff coverage is 15.68%.

:exclamation: Current head 5e4a90b differs from pull request most recent head 4e33eda. Consider uploading reports for the commit 4e33eda to get more accurate results

@@            Coverage Diff             @@
##             main      #24      +/-   ##
==========================================
+ Coverage   59.14%   59.17%   +0.03%
==========================================
  Files          11       11
  Lines         793      801       +8
==========================================
+ Hits          469      474       +5
- Misses        314      317       +3
  Partials       10       10

Impacted Files
Coverage Δ

internal/rest/router.go
31.77% <12.24%> (+2.48%)
:arrow_up:

internal/rest/restgateway.go
79.22% <100.00%> (ø)

Continue to review full report at Codecov.

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


No switch_pm_text and switch_pm_parameter on answerInlineQuery

As mentioned in title, it skips some parameters.

Fixed in 2.0


Websocket route inside a class not working

I've written a class that handles api requests and websocket connection.
While did it, i've used APIRouter class from fastapi package and decorated all requests methods with the corresponding decorators:
GET = @api.get
websocket: @api.websocket
my problem is the socket cannot be initiated apparently because of the self parameter. I assume that because as a static method it works very good.
As i have more logic to add, i need the method to be within an instance of the class and not as static.
To Reproduce
Steps to reproduce the behavior with a minimum self-contained file.
   @api.websocket("/ws")
    async def websocket_endpoint(self=Depends(), websocket: WebSocket = Depends()):
        pass

This is the decoration within the class and what it doesn't work.
registering the routes by:
def register_routes(api: FastAPI) -> None:
    """Registers REST namespaces with all included routes
    Args:
        api (Api): REST api initiated in global application context
    Returns: None
    """
    api.include_router(CallIntegratorController().api, prefix='/api/call', tags=['Connector'])

Expected behavior
Support websocket endpoint in a class instance just as http
Environment

OS: macOS

FastAPI Version 0.45.0

Python version 3.7.3

If you are trying to use a method of a single instance of a class as a route, you need to decorate the method after creating the instance. (This is not a bug with FastAPI, it's just how python works.)
So instead of
    @api.websocket("/ws")
    async def websocket_endpoint(self=Depends(), websocket: WebSocket = Depends()):
        pass

you need to have
    async def websocket_endpoint(self=Depends(), websocket: WebSocket = Depends()):
        pass

and something more like
def register_routes(api: FastAPI) -> None:
    """Registers REST namespaces with all included routes
    Args:
        api (Api): REST api initiated in global application context
    Returns: None
    """
    controller = CallIntegratorController()
    controller.api.websocket("/ws")(controller.websocket_endpoint)
    api.include_router(controller.api, prefix='/api/call', tags=['Connector'])

The above may not be quite right depending on what controller.api is and whether websocket_endpoint is a method of CallIntegratorController or something else; you haven't provided enough context to make it clear. But it should be possible to achieve this.

If you want to create a new instance of the class for each request (instead of just once during server startup), there is not currently a built-in way to do this. But you can use the cbv function from this gist to achieve it: https://gist.github.com/dmontagu/87e9d3d7795b14b63388d4b16054f0ff (see the usage file at the end for details).
I'm planning to release that as part of a fastapi utilities package soon.

Thank you for the quick response.
The cbv thing works perfectly!
Your suggestion doesn't work but as i implemented the cbv in the project my method signature is supported as:
@router.websocket("/ws")
async def websocket_endpoint(self, websocket: WebSocket):
    pass

Thanks for the workaround.

Thanks for the help here @dmontagu ! :clap: :bow:
Thanks @OmerNassie3  for reporting back and closing the issue :+1:


How to switch encoding jobs to basic tier?

Hi,
Firstly, great job on this application. It was easy to deploy and get going out of the box when I needed a solution to be live quickly, without needing to start from scratch. It's also been fairly straight forward to customise after deployment, so thanks for a great app :)
I've been using this for a little while now and have trimmed encoding jobs to just 6 HLS outputs in order to control costs. However, all jobs keep getting charged at pro tier rates, but I can't see any pro features enabled (no acceleration or multi pass).
Please can you tell me how to switch the jobs to basic tier please?
Many Thanks
Mark

Basic vs Pro Tier is actually just pricing based on which settings you use, details here:
https://www.amazonaws.cn/en/mediaconvert/pricing/
Its based on the codec settings, outputs, acceleration etc so you'll need to trim the outputs so that they only use basic tier settings.  Which settings are basic vs Pro tier are listed at the bottom of the page above.

Just disable Deinterlacer from your output presets


[WiP] Cache and preload items in the queue

WIP - Need feedback

General caching of played AVAssets, means going back to items in the playlist previously played and fully buffered, are now re-used and not started from scratch download-wise.
Now preloads the next item in the queue when current item is readyToPlay (playbackLikelyToKeepUp).

TODO: May need a strategy setting for when to start preloading the next item (if at all).
Strategies idea:

None. No preloading
OnReady. When current item is readyToPlay (playbackLikelyToKeepUp event), start preloading next
OnBufferFull. When current item's buffer is full (bufferFull event), start preloading next
OnFullyLoaded. When current item is fully loaded (loadedRange == duration), start preloading next

NOTE: Maybe prebuffering will work better if we use an AVQueuePlayer instead of AVPlayer? Any experience with this? Need to check Docs.
Thoughts?

Outdated by now.


vim startup slowly while setting g:startify_custom_header_quotes

After setting g:startify_custom_header_quotes, I found that vim startup slowly. But I have only about 20 quotes. If I reduce the number of quotes to 8, vim will startup quickly.
Here is the configuration:
let g:startify_custom_header_quotes = [
    \ ["曾经沧海难为水，除却巫山不是云。","","----元稹《离思五首·其四》"],
    \ ["溪云初起日沉阁，山雨欲来风满楼。","","----许浑《咸阳城东楼 / 咸阳城西楼晚眺 / 西门》"],
    \ ["行到水穷处，坐看云起时。","","----崔颢《黄鹤楼 / 登黄鹤楼》"],
    \ ["闲云潭影日悠悠，物换星移几度秋。","","----王勃《滕王阁序》"],
    \ ["纤云弄巧，飞星传恨，银汉迢迢暗度。","","----秦观《鹊桥仙·纤云弄巧》"],
    \ ["月下飞天镜，云生结海楼。","","----李白《渡荆门送别》"],
    \ ["叶落当归根，云沉久必起。","","----钱嶫《悯黎咏》"],
    \ ["只在此山中，云深不知处。","","----贾岛《寻隐者不遇 / 孙革访羊尊师诗》"],
    \ ["漠漠秋云起，稍稍夜寒生。","","----白居易《微雨夜行》"],
    \ ["春悄悄，夜迢迢。碧云天共楚宫遥。","","----晏几道《鹧鸪天·小令尊前见玉箫》"],
    \ ["云无心以出岫，鸟倦飞而知还。","","----陶渊明《归去来兮辞·并序》"],
    \ ["大风起兮云飞扬。威加海内兮归故乡。安得猛士兮守四方！","","----刘邦《大风歌》"]
    \ ]

Gvim: 8.0
windows 7

I guess it's simply the way Vim handles Chinese multibyte characters.
If you replace all Chinese characters by ASCII characters like a, is it still slow?

Huh, well, at least it's solved. Thanks for noticing me anyway! ✨


Action Idea: Push notifications via Pushover for Fastlane lane status

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I have read the Contribution Guidelines

Issue Description
While running long Fastlane lanes, I would love to get push notifications as the lane progresses in case I leave my computer.  Pushover provides an API for sending push notifications that I will wrap in a custom Action.

Hi @teddynewell I saw Felix followed up on your pull request. This would work better as a plugin.  Hope you have a great day!


Update sbt to 1.5.1

Updates org.scala-sbt:sbt from 1.5.0 to 1.5.1.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-sbt", artifactId = "sbt" } ]

labels: library-update, semver-patch

Codecov Report

Merging #472 (c917923) into master (9b1b54b) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #472   +/-   ##
=======================================
  Coverage   62.37%   62.37%
=======================================
  Files          38       38
  Lines        1289     1289
  Branches        8        8
=======================================
  Hits          804      804
  Misses        485      485

Continue to review full report at Codecov.

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


ValueError: setting an array element with a sequence.

Hello,
When running test.py, I get the following error:

ValueError                                Traceback (most recent call last)
/content/test.py in
16
17 gp = GaussianProcess(initialPoint, theta, noise_level)
---> 18 gp.updateParameters([[0,0],[1,0]], 1) # We compare the features [0,0] and [1,0], and the former one is preferred
19 gp.updateParameters([[2,-1],[3,1]],-1) # We compare the features [2,-1] and [3,1], and the latter one is preferred
20
1 frames
/content/GP.py in updateParameters(self, query, answer)
21         self.K = self.covK()
22         self.Kinv = inv(self.K+np.identity(2*len(self.listQueries))*1e-8) #adding the 1e-8 for numerical stability
---> 23         self.fqmean = self.meanmode()
24         self.W = self.hessian()
25
/content/GP.py in meanmode(self)
47         n = len(self.listQueries)
48         Kinv = self.Kinv
---> 49         listResults = np.array(self.listQueries)[:,2]
50         def logposterior(f):
51             fodd  = f[1::2]
ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 2 dimensions. The detected shape was (1, 3) + inhomogeneous part.

What would be the problem and how can i solve this?
Thanks in advance!

Thanks for letting us know about this issue. Apparently, our code was not the nicest and I believe the newer versions of Numpy punished us for that. Anyway, I just pushed a commit that resolves this issue. Hope it helps!


Implement When I click 'x, y' coordinates in 'Element'

Implement When I click 'x, y' coordinates in 'Element'
x,y counts from top left corner
instead of x, y user may pass memory that resolves to object with x, y properties

https://github.com/qavajs/steps-playwright/pull/67


No swiping over nested shadow doms

Check that this is really a bug

[X] I confirm

Reproduction link
https://codesandbox.io/s/swiper-default-forked-0viqjr?file=/index.html
Bug description
Since upgrading to the latest version of swiper (8.4.0), swiping throws an error when started over an embedded shadow dom.
I used a simple webcomponent from shoelace to showcase the issue in codesandbox. Just try to swipe when starting over the progress ring webcomponent. Please note that the error is not thrown to the embedded console but to the browsers console:
Uncaught TypeError: Cannot read properties of undefined (reading '0')
    at V.L (onTouchStart.js:55:25)

This behavior is new, until recently I was working with embedded web components without any issues.
I guess it's a typo in https://github.com/nolimits4web/swiper/commit/8df7edffb8a30250298f5b5978f5b833f08ee4f4 line 55.
I added a comment there.
Expected Behavior
Don't throw an error when start swiping over nested shadowDOM
Actual Behavior
No response
Swiper version
8.4.0
Platform/Target and Browser Versions
Ubuntu / Chromium
Validations

[X] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
[X] Make sure this is a Swiper issue and not a framework-specific issue

Would you like to open a PR for this bug?

[X] I'm willing to open a PR

Same here. Thanks for reporting.

Same here:

TypeError: Cannot read properties of undefined (reading 'includes')
    at isChildSwiperSlide (file:///app/node_modules/swiper/react/get-children.js:4:47)
    at file:///app/node_modules/swiper/react/get-children.js:28:9
    at Array.forEach (<anonymous>)
    at getChildren (file:///app/node_modules/swiper/react/get-children.js:27:29)
    at file:///app/node_modules/swiper/react/swiper.js:47:7
    at Wc (/app/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
    at Zc (/app/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:73:362)
    at Z (/app/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
    at Zc (/app/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:71:479)
    at Z (/app/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)

Same error. Had to revert to 8.3.2

Same error here. Upgrading from a working version of 8.3.2 broke the library

So the solution is downgrade to 8.2.4?
     "swiper": "8.2.4",

@johnark88 @Allan-Nava I'm not sure we are talking about the same error (even if they might be connected).
The reported error looks like it comes from introducing a new helper variable (eventPath) but using it only in the if condition and not in the assignment.
So before the change, the variable that get's assigned (event.path[0]) was part of the if condition and therefore not assigned if undefined. But now the helper variable is checked, which might have a value while event.path is nullish.


Add "depends" field to modules config

Currently the modules config accepts either Object or Array syntax—the latter being required when load order is important.
A simpler system is to use a "depends" field to note when one lib requires another.
The obvious advantages are a unified syntax (Object-only) and explicit requirement designation ("B depends on A").
Example:
bbh.modules = {
  react: {
    exports: "React",
    src: "https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"
  },
  "react-dom": {
    exports: "ReactDOM",
    src: "https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js",
    depends: "react"
  },
};

There's no specific necessity to deprecate the array syntax, as a "depends" system necessitates conversion to an Array (or similar construct) for ordered processing.
Circular Dependencies:
In case of circular dependency, it's natural to assume no guaranteed load order.

I recently published dependency-sorter, which handles pretty much everything this issue needs. I'm fine with importing a minified copy (or portion) of it here with attribution.
The weight system might be overkill, though. It would probably suffice to pull the method that performs the initial topological sort.
Aside: To address concerns in issue #2 without a weight system, we could just cherry-pick the libs from DEFAULT_MODULES after the topological sort and append them to the end of the list—specifically RequireJS.

I copied in a minified version of dependency-sorter and have this working on branch issue1-and-issue2 (it will resolve both this issue and issue #2).
Still requires README documentation.

Due to the documentation rewrite (issue #25), there will be no documentation pass.
In review - PR #26.


Community Store Reviews package

I've created a new package for Community Store to ask for customer feedback on the products.
This package adds review capabilities to your store.
Link: https://github.com/Haxe93/community_store_reviews
Short description

Ask for submitting a review on a product-page.
Send a review reminder mail when an order is completed (automated job).
Custom page to review the products of an order after the reminder mail.
Create custom ratings for your reviews.
Auto Approve reviews.

Please test first before using in a live environment.

Nice one!  Will have to check it out soon.
Does it have a particular license?

It has no particular license.
I am now running several tests again to make sure it all works properly.
If you find any issues, please comment below or add it to the issues on my repository so I can solve them immediatly.
Thanks! I hope you all like it.


Allow to pass client-side configurations via URL parameter.

draw.io has a plethora  of configuration options which is absolutely great, but these can only be set on self-hosted instances. A nice addition would be to be able to pass these configuration options as URL parameters, as that would allow individual clients to override the configuration of the server.
That doesn't make much sense when having a self-hosted instance, but when one is using the draw.io website it would grant them a lot more leeway of how to use it. For example the compressXml option is a great example of what you might want to be able to trigger even on a foreign instance. The passed configuration should override the hard-coded one, obviously. An example would be https://www.draw.io?configuration={"compressXml": false}.
As far as I can see all these options are also purely client-side, so there's no ill-effect on the server when being able to set them. Also this is already possible if one manages to swap out the configuration file which is being loaded on the client side or to inject their own code, but that's a pretty shitty hack at best.

We'll add client-side configuration via localStorage in the next release (.configuration key).

Out of curiosity, how's that going to work for the end-user? As far as I know there is no direct and good way to edit the LocalStorage (besides some development tools), so will there be a configuration dialog?

No, better it's done via the dev tools. If we add a UI dialog we'll get a ton of issues from non-techs who can't write the JSON, no thanks...

That would mean that you can't bookmark/hand out links with a certain configuration, though.

I don't really want to do that. Even if we take a PR, it won't be maintained and just cause as a bunch of issues every time we update the core and not the dialog (i.e. would have been quicker to just do ourselves, which I don't want to :) ). I'd suggest you create a plugin if you need that.
I'll leave it open in case one of the core team find it interesting, but I doubt they'll want the maintenance that it adds, either.

I don't want that dialog anyway, I was just wondering how that would be useful to the end-user.
If you read the configuration extension/override from the URL one can pass around a link which contains the configuration, meaning that end-users don't have to worry about it besides having to click or bookmark a link. If the configuration is read from the local storage...well, I have no idea how to distribute that among users.
My main and original point was to have such an easy facility to share links to an existing instance with modified configuration.

We'll merge this with .drawio-config in the next release (.configuration key no longer used).

See https://twitter.com/drawio/status/1196806288048611328

That's very nice, thank you.


🐛 [bug] - Image Security fails in pet-battle-api because a Quarkus vulnerability

📝 Description
The execution of the exercice Extend Tekton Pipeline with Stackrox fails before to complete it just because a previous vulnerability is found in Quarkus version.
🚶 Steps to reproduce
Following the exercise, the first Tekton pipeline run fails with the following exception:
     ...
      "violatedPolicies": [
        {
          "name": "Fixable Severity at least Important",
          "severity": "HIGH",
          "description": "Alert on deployments with fixable vulnerabilities with a Severity Rating at least Important",
          "violation": [
            "Fixable CVE-2022-4116 (CVSS 9.8) (severity Critical) found in component 'quarkus' (version 2.13.3.final), resolved by version 2.13.5",
            "Fixable CVE-2022-4147 (CVSS 9.8) (severity Critical) found in component 'quarkus' (version 2.13.3.final), resolved by version 2.13.5"
          ],
          "remediation": "Use your package manager to update to a fixed version in future builds or speak with your security team to mitigate the vulnerabilities.",
          "failingCheck": true
        }
      ]
      ....

Basically it is reporting that the current Quarkus version of pet-battle-api is vulnerable and it is required to upgrade to newer versions (minor, or mayor).
🧙♀ Suggested solution
Update the pom.xml file to use the Quarkus version 2.13.5.Final fixed this issue and it is possible to continue the exercise.

Done ... see
https://github.com/rht-labs/pet-battle-api/commit/ec05541b6886ebe8f4c8d81b2f6edb79c87ae3db


smartmontools: Move from SPECS-EXTENDED to SPECS

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

[x] The toolchain has been rebuilt successfully (or no changes were made to it)
[x] The toolchain/worker package manifests are up-to-date
[x] Any updated packages successfully build (or no packages were changed)
[x] Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
[x] Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
[x] All package sources are available
[x] cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
[x] LICENSE-MAP files are up-to-date (./SPECS/LICENSES-AND-NOTICES/data/licenses.json, ./SPECS/LICENSES-AND-NOTICES/LICENSES-MAP.md, ./SPECS/LICENSES-AND-NOTICES/LICENSE-EXCEPTIONS.PHOTON)
[x] All source files have up-to-date hashes in the *.signatures.json files
[x] sudo make go-tidy-all and sudo make go-test-coverage pass
[x] Documentation has been updated to match any changes to the build system
[x] Ready to merge

Summary
Move smartmontools from SPECS-EXTENDED to SPECS in order to support csi-driver-lvm golden container builds, which require this package.
Change Log

Move smartmontools from SPECS-EXTENDED to SPECS

Does this affect the toolchain?

NO
Test Methodology

Pipeline build id: xxxx

Did we run any CVE scanning to make sure we don't need a version upgrade or a new patch?

Did we run any CVE scanning to make sure we don't need a version upgrade or a new patch?

CVE scanning will happen automatically when the package is promoted to SPECS, but I've upgraded the package to the latest available version regardless. Thanks!

Can you please update cgmanifest.json as well


Grub installation

Remove grub install from 0-preinstall.sh - surely its only needed in the 3-post-setup.sh?

grub-install in 0-preinstall is for bios systems

UEFI and BIOS are supported it checks to see which you need.


Customization on error response

How to properly handle response? I created an ~error.vue  and it works for other error responses like 404 response but not on 429.
Version
nuxt-security: ^0.9.0
nuxt: 3.0.0
Reproduction Link
What is Expected?
I was expecting to customize the error response like redirecting to another page or customize the default response.
What is actually happening?
I am getting the default error response from nuxt

Thank you

Hey, for that, I think we could implement another option in the config called handler. When passed it could replace the default functionality so that this method will handle the error. You will catch the error but dont throw so that you can do something else with it. What do you think about it?

Something like this:

security: {
    requestSizeLimiter: {
      value: {
        maxRequestSizeInBytes: 3000000,
        maxUploadFileRequestInBytes: 9000000,
      },
      route: '/upload-file',
      handler: () => console.error("Error")
    }
  }

Thank you!  I tried but I am getting an error when adding the handler option

My bad! I misunderstood your first response.😅 I'll wait for this. Thank you!

I cannot pass the method as it is removed from the config in the middleware. Instead, I will add an optional property called throwError. By default it has a value of true and will throw an error once certain condition is met (for example 429 after too many requests from rate limiter). But when set to false, it will return an object with the error but will not throw an error. Thanks to this approach you will be able to take this object and do whatever you want with it. For example show a custom error. I will create a pull request with this functionality for you to check out.

https://github.com/Baroshem/nuxt-security/pull/75

@ReaganM02
Have you seen the PR that I have created? :)

Hi @Baroshem , apologies for the delay response. I just got back from vacation. Is this already implemented?(sorry, I am still learning how github works. I'm still new to this.) I updated the version to 0.9.0 and I am getting this error inside the nuxt.config.js (see screenshot)

"nuxt-security": "^0.9.0",
Thank you for this changes!! 🙏🏼

Hey @ReaganM02
No, it is not implemented yet. You can test it out by cloning the repository and trying the playground Nuxt project with that change. I am looking forward to your feedback as it is crucial for me to make a decision whether to merge this PR or not 😉

@ReaganM02
You are in the right place 😉
Are you using the correct branch?

My bad! Yes I was not on the correct branch(Sorry). I tested it again and it looks like it is working. I am able to see the object response, the statusCode and the statusMessage.
Server

Client

This is a very good idea for customization. I just need to find a way to catch this kind of response. So far, I tested different kinds of approaches and none of them works 😅
This is a very good update. Cheers!!

Have you tried this? https://nuxt.com/docs/getting-started/error-handling#rendering-an-error-page

Here are the steps I tried.

I created an error.vue file in the source directory alongside app.vue file
Inside error.vue

<template>
	<div>
		{{ error }}
	</div>
</template>

<script setup>
const props = defineProps( {
	error: Object
} )

</script>

I tested it and the result will return the response JSON(The same as before)

Because I added the error.vue file, when visiting to URL that don't exist it will show, this.  The error.vue is working


exec-path-from-shell-initialize init too late

Observed behavior
A package works fine before, but raise error message for not found a command
after I pull newest repo. I found the reason is exec-path not prepared.
I think code
(add-hook 'emacs-startup-hook #'exec-path-from-shell-initialize) at core-os.el
is too late .
Expected behavior
I think os env should prepared after core module loaded.

I've sort of reverted this behavior and changed the behavior of the :env setting. This should resolve your issue.

yes, it works.


fix(types): mark pool options as not available in project config

Description
Closes #5933

Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. If the feature is substantial or introduces breaking changes without a discussion, PR might be closed.
[ ] Ideally, include a test that fails without this PR but passes with it.
[ ] Please, don't make changes to pnpm-lock.yaml unless you introduce a new test example.

Tests

[ ] Run the tests with pnpm test:ci.

Documentation

[ ] If you introduce new functionality, document it. You can run documentation with pnpm run docs command.

Changesets

[ ] Changes in changelog are generated from PR name. Please, make sure that it explains your changes in an understandable manner. Please, prefix changeset messages with feat:, fix:, perf:, docs:, or chore:.

https://github.com/vitest-dev/vitest/issues/5933
If someone is in the same situation, you could use this similar configuration/workaround for fileParallelism: false, in workspace test
// vitest.workspace.ts

// ...
test: {
  // ...
      maxConcurrency: 1,
      poolOptions: {
        forks: {
          singleFork: true,
        },
      },
    },
//..


pkg_install: Add destdir attr & read rel paths.

Implementation notes:
Relative paths are interpreted against BUILD_WORKSPACE_DIRECTORY, not BUILD_WORKING_DIRECTORY. This is for the following reasons:
The TODO tag explicitly convey the intention of using BUILD_WORKSPACE_DIRECTORY for relative paths.
If destdir is specified in the attribute of the pkg_install() target, interpreting it against BUILD_WORKSPACE_DIRECTORY is much stabler. That is, no matter where your current cwd is, the destdir attribute always refers to a path relative to the workspace root. For example:
pkg_install(name = "my_pkg_install", destdir = "out/dest")

cd <workspace_root>/<some_subdir>
bazel run //:my_pkg_install

This clearly conveys that the default destdir is
<workspace_root>/out/dest regardless of where the user runs the command.
The cost is that the --destdir command line argument becomes trickier to understand. For example, if one is not familiar with pkg_install, and below the workspace root they run:
cd <workspace_root>/out
bazel run //:my_pkg_install -- --destdir dest

They may expect the destdir to be set to <workspace_root>/out/dest; but it is in fact <workspace_root>/dest.
We could also interpret the target attribute & the command line argument separately (e.g. pkg_install(destdir_against_workspace)), but honestly I think that's even more confusing when they interpret relative paths differently. Please let me know if this is preferred by the maintainers.

Also, it appears that I am making --destdir required when DESTDIR is not set with this change. However, this is already the case before my change. That is, before my change, if --destdir & DESTDIR are both unset:
Traceback (most recent call last):
  File "/home/elsk/.cache/bazel/_bazel_elsk/e1898a9d0a5eb5576d9bd9bb7a32f269/execroot/_main/bazel-out/k8-fastbuild/bin/tests/install/test_installer.runfiles/_main/tests/install/test_installer_install_script.py", line 237, in <module>
    sys.exit(main(sys.argv))
             ^^^^^^^^^^^^^^
  File "/home/elsk/.cache/bazel/_bazel_elsk/e1898a9d0a5eb5576d9bd9bb7a32f269/execroot/_main/bazel-out/k8-fastbuild/bin/tests/install/test_installer.runfiles/_main/tests/install/test_installer_install_script.py", line 233, in main
    installer.do_the_thing()
  File "/home/elsk/.cache/bazel/_bazel_elsk/e1898a9d0a5eb5576d9bd9bb7a32f269/execroot/_main/bazel-out/k8-fastbuild/bin/tests/install/test_installer.runfiles/_main/tests/install/test_installer_install_script.py", line 148, in do_the_thing
    self._install_directory(entry)
  File "/home/elsk/.cache/bazel/_bazel_elsk/e1898a9d0a5eb5576d9bd9bb7a32f269/execroot/_main/bazel-out/k8-fastbuild/bin/tests/install/test_installer.runfiles/_main/tests/install/test_installer_install_script.py", line 101, in _install_directory
    self._maybe_make_unowned_dir(os.path.dirname(entry.dest))
  File "/home/elsk/.cache/bazel/_bazel_elsk/e1898a9d0a5eb5576d9bd9bb7a32f269/execroot/_main/bazel-out/k8-fastbuild/bin/tests/install/test_installer.runfiles/_main/tests/install/test_installer_install_script.py", line 93, in _maybe_make_unowned_dir
    os.makedirs(path, 0o755, exist_ok=True)
  File "<frozen os>", line 225, in makedirs
FileNotFoundError: [Errno 2] No such file or directory: ''

I am just making the error more user friendly.

Hello, could you please take a look @aiuto ?


Add CoRIM extension mechanisms

Add mechanisms to allow extending  corim implementation at the map-extension and type-choice extension points defined by the spec.

My apologies, my review is getting staggered. I will try to finish by tomorrow or by end of Friday .


[tool_crash] StateError: Bad state: No context with the running Dart application.

Command
flutter --no-color run --machine --track-widget-creation --device-id=chrome --start-paused --dart-define=flutter.inspector.structuredErrors=true lib\main.dart

Steps to Reproduce

...
...
...

Logs
StateError: Bad state: No context with the running Dart application.
#0      RemoteDebuggerExecutionContext.id (package:dwds/src/debugging/execution_context.dart:55:7)
<asynchronous suspension>
#1      AppInspector._getExtensionRpcs (package:dwds/src/debugging/inspector.dart:538:20)
<asynchronous suspension>
#2      AppInspector._initialize (package:dwds/src/debugging/inspector.dart:97:34)
<asynchronous suspension>
#3      AppInspector.initialize (package:dwds/src/debugging/inspector.dart:160:5)
<asynchronous suspension>
#4      ChromeProxyService.createIsolate (package:dwds/src/services/chrome_proxy_service.dart:216:18)
<asynchronous suspension>

[✓] Flutter (Channel stable, 3.0.1, on Microsoft Windows [Version 10.0.22000.675], locale en-US)
    • Flutter version 3.0.1 at C:\src\flutter_windows_3.0.1-stable\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision fb57da5f94 (7 days ago), 2022-05-19 15:50:29 -0700
    • Engine revision caaafc5604
    • Dart version 2.17.1
    • DevTools version 2.12.2

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at C:\Users\mamun\AppData\Local\Android\sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.

[✓] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[✗] Visual Studio - develop for Windows
    ✗ Visual Studio not installed; this is necessary for Windows development.
      Download at https://visualstudio.microsoft.com/downloads/.
      Please install the "Desktop development with C++" workload, including all of its default components

[✓] Android Studio (version 2021.2)
    • Android Studio at C:\Program Files\Android\Android Studio1
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)

[✓] Connected device (2 available)
    • Chrome (web) • chrome • web-javascript • Google Chrome 101.0.4951.67
    • Edge (web)   • edge   • web-javascript • Microsoft Edge 101.0.1210.53

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 2 categories.

Flutter Application Metadata
Type: app
Version: 1.0.0+1
Material: true
Android X: false
Module: false
Plugin: false
Android package: null
iOS bundle identifier: null
Creation channel: stable
Creation framework version: d408d302e22179d598f467e11da5dd968dbdc9ec

Hi, thanks for filing the issue.
I see there's an open issue addressing the case you described.
Closing as duplicate of #95916, so please follow up on it for further updates.


Plugin not supported user-agent in some video

I have some link url m3u stream but this links play using user-agent, it's possible add user-agent to play this link.
Please I need this option because I have links url support user-agent

Chewie is only a GUI layer on top of the official video_player plugin. I don't think there is anything for us to do here so I am closing this. Please open an issue for the video_player plugin on https://github.com/flutter/flutter/issues with an example application an the output of flutter doctor -v.


Feature/video scrubber

Summary
Added a video scrubber

Can be used to move the video forwards and backwards and gives the user finite control over playack
Displays the current playback time and total video duration
Clicking the left-most timestamp toggles between total duration and time remaining

Note: There is a bug when the project first loads; if you drag the scrubber to a position other than the start and hit play, the scrubber (and clock) resets back to 0, but the video continues to play from the new position. This bug existed before the scrubber was implemented (try the same thing by clicking a word on a different branch) and will need to be fixed in a separate PR.

Why is this change needed?
Zac wanted it.

What did you change?

Created a new scrubber bar component (this uses the unstyled slider from MUI)
Added the scrubber bar to the project page under the video preview
Updated the transcript interface to include a new field, outputDuration. This is the current duration of the edited video and is updated after every edit to the transcript
Refactored updateOutputStartTimes to also update outputDuration. I also renamed both the function and file to updateOutputTimes as I thought it was a more fitting name given it now updates both the outputStartTimes and outputDuration
Refactored the transcript reducers to update outputDuration on any changes to the transcript
Various other small updates to account for the new field in the transcript interface
Added new test cases and updated some existing ones

Video demo
https://user-images.githubusercontent.com/27614346/185095050-95180ebc-179e-4171-9fbf-08c309efcf7f.mov

OS

[ ] Linux
[x] MacOS
[x] Windows

Scrubber bar doesnt seem to update according to how far through the video is. For example its 3secs into a 7 second video - I thought scrubber circle should then be approx 50% of the way along the bar. Is this the bug you were talking about? The top timestamp and the scrubber timestamp is accurate and the video correctly displays along with the timestamp but the bar doesnt allow me to drag along it or see a progression.
video1949141754.mp4
Windows OS

@Irmy Is this with a new project or opened from recents? I've added a new field to the transcription interface so previously created projects will have an issue with the scrubber bar.


Fix mypy regex

There's (now) a colon after the filepath. I also had to use --show-absolute-path when calling mypy.

I am not seeing any problem with that

Sorry that was a false alarm. I didn't use this action as-is, since I already had a CI setup and didn't want to change how the tests were actually run I just copied the matchers/*.json and looked at entrypoint.sh for necessary flags for each command. I was integrating the tests into a monorepo setup, where the tests aren't run at the repo root, but rather inside multiple subdirectories. I think because of that, the relative paths shown by mypy didn't match the repo's paths, and it didn't work.
So I don't have any evidence of your snippet above not working.

OK, I am merging this.


Sample Code

First of all, thank you for this helpful library. Nevertheless, it would be nice if there was some simple example using this.

Is there any place to get some code samples?
The link provided in the REST API docs is not working
http://developer.oanda.com/rest-live-v20/sample-code/
https://github.com/oanda/v20-python

I think that api for v20 is not ready yet.

The sample programs are under active development and can now be found at:
https://github.com/oanda/v20-python-samples


Fixed Password Reset

Fixes [#4540]
This issue was two-fold:

The wrong reset URL was being sent to Rock. Had to include the top-level domain.
Yup (our form validation package) was broken. Updating to new version fixed it.

Creator

[ ] Build relevant tests if any apply
[ ] Ensure there are no new warnings
[x] Upload an animated GIF showcasing the solution (if it applies)
[x] Set a relevant reviewer

Reviewer

[ ] Run test and make sure all tests pass
[ ] Review function and form on iOS
[ ] Review function and form on Android
[ ] Review function and form on Web
[ ] Review new test logic

@IsaacHardy I can't test it actually resets anything because for some reason I can't log in to local Apollos on my machine so I'll need you to test that it actually resets your password.

@redreceipt You can create a new account to test reseting your password. Newspring staff cannot use this feature because our accounts live within the Active Directory realm.

@redreceipt You can create a new account to test reseting your password. Newspring staff cannot use this feature because our accounts live within the Active Directory realm.

I did create a new account and can't log in locally for some reason, but can on the production environment

@redreceipt Possible your .env variable for the API is pointed incorrectly. I would have to look.

@IsaacHardy @richarddubay I think this is much better solution


[turtlebot3_dqn_stage_1-1] process has died

Hi! I'm trying to run this command line: roslaunch turtlebot3_dqn turtlebot3_dqn_stage_1.launch but I have this error:

ImportError: cannot import name abs
[turtlebot3_dqn_stage_1-1] process has died [pid 13306, exit code 1, cmd /home/fish/catkin_ws/src/turtlebot3_machine_learning/turtlebot3_dqn/nodes/turtlebot3_dqn_stage_1 __name:=turtlebot3_dqn_stage_1 __log:=/home/fish/.ros/log/c9d600a2-b828-11e9-9b60-9cb6d08c99cd/turtlebot3_dqn_stage_1-1.log].
log file: /home/fish/.ros/log/c9d600a2-b828-11e9-9b60-9cb6d08c99cd/turtlebot3_dqn_stage_1-1*.log
all processes on machine have died, roslaunch will exit
shutting down processing monitor...
... shutting down processing monitor complete
done

Please help!
OS: Ubuntu16.04(Xenial)
ROS Version: Kinetic
Python 2.7.16
Turtlebot3 waffle pi
The tutorial I am following: http://emanual.robotis.com/docs/en/platform/turtlebot3/machine_learning/#run-machine-learning

Hi, @FIsh24 :)
I think this problem is installation of tensorflow.
Can you show me the log before the log you posted?
Thanks,
Gilbert.

I solved the problem with tensorflow. But I still have the same problem:
 fish@fish-XPS-13-9370:~/catkin_ws$ roslaunch turtlebot3_dqn turtlebot3_dqn_stage_3.launch
... logging to /home/fish/.ros/log/1c01d9d2-b900-11e9-b30d-9cb6d08c99cd/roslaunch-fish-XPS-13-9370-17674.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://fish-XPS-13-9370:44211/

SUMMARY
========

PARAMETERS
 * /rosdistro: kinetic
 * /rosversion: 1.12.14
 * /stage_number: 3

NODES
  /
    moving_obstacle (turtlebot3_dqn/moving_obstacle)
    turtlebot3_dqn_stage_3 (turtlebot3_dqn/turtlebot3_dqn_stage_3)

ROS_MASTER_URI=http://localhost:11311

process[turtlebot3_dqn_stage_3-1]: started with pid [17694]
process[moving_obstacle-2]: started with pid [17695]
Using TensorFlow backend.
_________________________________________________________________
Layer (type)                 Output Shape              Param #
=================================================================
dense_1 (Dense)              (None, 64)                1856
_________________________________________________________________
dense_2 (Dense)              (None, 64)                4160
_________________________________________________________________
dropout_1 (Dropout)          (None, 64)                0
_________________________________________________________________
dense_3 (Dense)              (None, 5)                 325
_________________________________________________________________
activation_1 (Activation)    (None, 5)                 0
=================================================================
Total params: 6,341
Trainable params: 6,341
Non-trainable params: 0
_________________________________________________________________
_________________________________________________________________
Layer (type)                 Output Shape              Param #
=================================================================
dense_4 (Dense)              (None, 64)                1856
_________________________________________________________________
dense_5 (Dense)              (None, 64)                4160
_________________________________________________________________
dropout_2 (Dropout)          (None, 64)                0
_________________________________________________________________
dense_6 (Dense)              (None, 5)                 325
_________________________________________________________________
activation_2 (Activation)    (None, 5)                 0
=================================================================
Total params: 6,341
Trainable params: 6,341
Non-trainable params: 0
_________________________________________________________________
2019-08-07 12:21:27.893756: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2019-08-07 12:21:27.919996: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2019-08-07 12:21:27.920458: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x55d641c39730 executing computations on platform Host. Devices:
2019-08-07 12:21:27.920501: I tensorflow/compiler/xla/service/service.cc:175]   StreamExecutor device (0): <undefined>, <undefined>
2019-08-07 12:21:28.109384: W tensorflow/compiler/jit/mark_for_compilation_pass.cc:1412] (One-time warning): Not using XLA:CPU for cluster because envvar TF_XLA_FLAGS=--tf_xla_cpu_global_jit was not set.  If you want XLA:CPU, either set that envvar, or use experimental_jit_scope to enable XLA:CPU.  To confirm that XLA is active, pass --vmodule=xla_compilation_cache=1 (as a proper command-line flag, not via TF_XLA_FLAGS) or set the envvar XLA_FLAGS=--xla_hlo_profile.
[INFO] [1565176889.193368, 0.839000]: Goal position : 0.6, 0.0
Traceback (most recent call last):
  File "/home/fish/catkin_ws/src/turtlebot3_machine_learning/turtlebot3_dqn/nodes/turtlebot3_dqn_stage_3", line 174, in <module>
    agent.trainModel()
  File "/home/fish/catkin_ws/src/turtlebot3_machine_learning/turtlebot3_dqn/nodes/turtlebot3_dqn_stage_3", line 121, in trainModel
    q_value = self.model.predict(states.reshape(1, len(states)))
  File "/home/fish/anaconda2/lib/python2.7/site-packages/keras/engine/training.py", line 1149, in predict
    x, _, _ = self._standardize_user_data(x)
  File "/home/fish/anaconda2/lib/python2.7/site-packages/keras/engine/training.py", line 751, in _standardize_user_data
    exception_prefix='input')
  File "/home/fish/anaconda2/lib/python2.7/site-packages/keras/engine/training_utils.py", line 138, in standardize_input_data
    str(data_shape))
ValueError: Error when checking input: expected dense_1_input to have shape (28,) but got array with shape (364,)
[turtlebot3_dqn_stage_3-1] process has died [pid 17694, exit code 1, cmd /home/fish/catkin_ws/src/turtlebot3_machine_learning/turtlebot3_dqn/nodes/turtlebot3_dqn_stage_3 __name:=turtlebot3_dqn_stage_3 __log:=/home/fish/.ros/log/1c01d9d2-b900-11e9-b30d-9cb6d08c99cd/turtlebot3_dqn_stage_3-1.log].
log file: /home/fish/.ros/log/1c01d9d2-b900-11e9-b30d-9cb6d08c99cd/turtlebot3_dqn_stage_3-1*.log

I tried another stage. First I'm running roscore, then: roslaunch turtlebot3_gazebo turtlebot3_stage_3.launch which has an error too:

(base) fish@fish-XPS-13-9370:~/catkin_ws$ roslaunch turtlebot3_gazebo turtlebot3_stage_3.launch
... logging to /home/fish/.ros/log/1c01d9d2-b900-11e9-b30d-9cb6d08c99cd/roslaunch-fish-XPS-13-9370-17148.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

xacro: Traditional processing is deprecated. Switch to --inorder processing!
To check for compatibility of your document, use option --check-order.
For more infos, see http://wiki.ros.org/xacro#Processing_Order
xacro.py is deprecated; please use xacro instead
started roslaunch server http://fish-XPS-13-9370:33873/

SUMMARY
========

PARAMETERS
 * /robot_description: <?xml version="1....
 * /rosdistro: kinetic
 * /rosversion: 1.12.14
 * /use_sim_time: True

NODES
  /
    gazebo (gazebo_ros/gzserver)
    gazebo_gui (gazebo_ros/gzclient)
    spawn_urdf (gazebo_ros/spawn_model)

ROS_MASTER_URI=http://localhost:11311

process[gazebo-1]: started with pid [17168]
process[gazebo_gui-2]: started with pid [17173]
process[spawn_urdf-3]: started with pid [17178]
[ INFO] [1565176860.896977891]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1565176860.898802235]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[ INFO] [1565176860.950792308]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1565176860.951518782]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[ INFO] [1565176861.301894524, 0.024000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1565176861.415386208, 0.133000000]: Physics dynamic reconfigure ready.
[ INFO] [1565176861.506765807, 0.221000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1565176861.935069657, 0.345000000]: Camera Plugin: Using the 'robotNamespace' param: '/'
[ INFO] [1565176861.939655738, 0.345000000]: Camera Plugin (ns = /)  <tf_prefix_>, set to ""
[ INFO] [1565176862.236165525, 0.345000000]: Laser Plugin: Using the 'robotNamespace' param: '/'
[ INFO] [1565176862.236319209, 0.345000000]: Starting Laser Plugin (ns = /)
[ INFO] [1565176862.239164167, 0.345000000]: Laser Plugin (ns = /)  <tf_prefix_>, set to ""
[ INFO] [1565176862.246360823, 0.345000000]: Starting plugin DiffDrive(ns = //)
[ INFO] [1565176862.247501225, 0.345000000]: DiffDrive(ns = //): <rosDebugLevel> = na
[ INFO] [1565176862.254778420, 0.345000000]: DiffDrive(ns = //): <tf_prefix> =
[ INFO] [1565176862.257318827, 0.345000000]: DiffDrive(ns = //): Advertise joint_states
[ INFO] [1565176862.259699759, 0.345000000]: DiffDrive(ns = //): Try to subscribe to cmd_vel
[ INFO] [1565176862.272775561, 0.345000000]: DiffDrive(ns = //): Subscribe to cmd_vel
[ INFO] [1565176862.276391591, 0.345000000]: DiffDrive(ns = //): Advertise odom on odom
[ INFO] [1565176862.278264178, 0.345000000]: Physics dynamic reconfigure ready.
[spawn_urdf-3] process has finished cleanly
log file: /home/fish/.ros/log/1c01d9d2-b900-11e9-b30d-9cb6d08c99cd/spawn_urdf-3*.log
Segmentation fault (core dumped)
[gazebo_gui-2] process has died [pid 17173, exit code 139, cmd /opt/ros/kinetic/lib/gazebo_ros/gzclient __name:=gazebo_gui __log:=/home/fish/.ros/log/1c01d9d2-b900-11e9-b30d-9cb6d08c99cd/gazebo_gui-2.log].
log file: /home/fish/.ros/log/1c01d9d2-b900-11e9-b30d-9cb6d08c99cd/gazebo_gui-2*.log

This problem is set the state of scan data. Please refer to https://github.com/ROBOTIS-GIT/turtlebot3_machine_learning/issues/2
Thanks,
Gilbert.

Thank you!


OpenBSD websocketd binaries

Blame this: https://twitter.com/joewalnes/status/567497770156957696
Should be straight forwards go can output openbsd binaries.
@asergeyev: Update release/Makefile. GOOS settings here https://golang.org/doc/install/source#environment
@joewalnes: Update website. Modify OpenBSD logo to fit with page.
@sl4mmy: Hi! Can you help us test?

@joewalnes i've got an OpenBSD box if you need additional testers.

@abedra Sweet

@asergeyev Oooh, Solaris too. Feeling adventurous. Anyone have a Solaris box we can test on?
I draw the line at Plan9.

:) one of those days I'll try go and websocketd on Solaris...
Added 2.10 binaries and unsigned CHECKSUMS.experimental file to release.
Anyone could report that those work? :)

One of those days we should probably cut number of os-arch combinations (e.g. trimming heavier on i386 ones)

Well to make it easy to try:

https://github.com/joewalnes/websocketd/releases/download/v0.2.10/websocketd-0.2.10-openbsd_386.zip
https://github.com/joewalnes/websocketd/releases/download/v0.2.10/websocketd-0.2.10-openbsd_amd64.zip
https://github.com/joewalnes/websocketd/releases/download/v0.2.10/websocketd-0.2.10-solaris_amd64.zip

Trying to build this on OpenBSD amd64-current.  Why is go embedded?  Setting GOPATH=/path/to/websocketd/go-workspace:/usr/local/go and GOROOT=/usr/local/bin appears to work with go v1.4.1 installed from packages.
I'll create a port for this, but the ports tree is currently locked for imports.  I'll try and get it imported as soon as the tree is unlocked.

Did you have luck with binaries I published above (those were compiled on Linux with go cross compiler)? I don't see a problem with port but since websocketd code is likely to be updated every few months I wonder if anyone would be able to maintain that port...
Otherwise it's going to be stuck at given version and that would not be good for anyone.

Yeah, I only have an amd64 box handy so I couldn't test your i386 binary, but the amd64 binary you posted above worked, too.
I'm happy to maintain the port.  I don't foresee it taking too much work to track your releases.  The initial port was really simple, and I spoke with @joewalnes about some things we can try on the ports' side to make it even easier to track.

Neat. BTW... any thoughts about Freebsd port too since they would be pretty much similar?

I'm not a FreeBSD user and am not familiar with their ports infrastructure, sorry.

not sure if this one should stay open or not.

The binaries are good. I've still got to make changes to the website, so we'll leave the issue open.

Did some icons. Pushed to website.

The OpenBSD port was just imported http://marc.info/?l=openbsd-ports-cvs&m=142781635923233&w=2

Cool, thanks for help!


Update pipeline problems

Hi Almen,
Coupe days ago, I told you there was problem with backup pipeline and now I am facing it for update pipeline. But now configuration is always failing on same policy and it's working If I run it locally.  (This pipeline was working in past...)
Error code:

Any suggestion? Will it start working like backup pipeline on it's own in couple of days?

Do I understand correctly you are not getting this error if you run the update towards the same environment locally?

Can you try to do a new backup of the Windows Enrollment profiles in the repo and run the update after that?

Yeah, If I run it's locally on same env there is no any errors at all. Already tried that and it's not working.

Can you share the YAML of the pipeline used?

Sure, here it is:
`trigger:
branches:
include:
- main
pool:
vmImage: ubuntu-latest
variables:
REPO_DIR: $(Build.SourcesDirectory)/git-backup-update-test
steps:

checkout: self
persistCredentials: true

script: pip3 install IntuneCD
displayName: Install IntuneCD

script: IntuneCD-startupdate -m 1
env:
REPO_DIR: $(REPO_DIR)
TENANT_NAME: $(TENANT_NAME)
CLIENT_ID: $(CLIENT_ID)
CLIENT_SECRET: $(CLIENT_SECRET)
displayName: Run update`

Can you double check that there is no duplication of the enrollment profiles in the repo, for example the same config is saved in both YAML and JSON?

I'm really struggling to replicate this, especially since it is working from your machine locally. I cannot see that the fault would be in the tool in that case.
This is probably the last thing you want to do but can you try to create a new project in Azure DevOps with fresh new pipelines and check if you still have the same issue?

Done that, everything was fresh still failing on the same policy.

I think I'm able to replicate this  now. I will run some tests tomorrow and update here!

Version 1.3.4 has been released (#94) and includes bug fixes for the Windows Enrollment profile issue where it exists with KeyError: 'id'.

I will keep this issue open until it is confirmed it is working for you @Nikolara97 😊

its working now, you can close it :D
On Friday, February 24, 2023 at 10:46:07 AM GMT+1, Tobias Almén @.***> wrote:
I will keep this issue open until it is confirmed it is working for you @Nikolara97 😊
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

Fantastic, thanks for confirming :)


Pipeline detection

The topic pipeline/detected can be used to check if the pipeline is detected
And the service pipeline_inspection/get_path to get the path to follow the pipeline. Note that I created a custom service called GetPath
I didn't test the detection part in the simulation, but I am opening the PR in case you want to work with this before I am able to test

new comment


ngx-mat-timepicker shows "invalidDateTime" in Brave Browser but works fine in Chrome and Edge

Whenever I try to use ngx-time-picker package, the user will click the input box and a menu will pop up where they can select the time. However after selecting the time "Invalid DateTime". This only happens with Brave Browser. However , whenever I try it on Google Chrome or Microsoft Edge, the ngx-time-picker works just fine as the time selected by the user from the popup menu is the time displayed in the input box. What might be causing this?
https://stackoverflow.com/questions/75393607/ngx-mat-timepicker-shows-invaliddatetime-in-brave-browser-but-works-fine-in-ch

The issue has not surfaced with Chrome also with the move to chromium 110.0.5481.77/78. Currently edge is on 109 version thus it works on Edge. Please suggest any workaround / fix for Chrome and Brave.

Ok, I'm closing this as duplicate of #51


Update base packages

I noticed when building this that it pulled in an insecure version of OpenSSL - It's important to make sure that such packages are kept up to date so adding an apt-get upgrade at the start of the dockerfile will prevent this.
Similar to https://github.com/prometheus/promdash/pull/331

@discordianfish

@sammcj Which insecure version of OpenSSL are you referring to? It's generally not advised to upgrade packages in a child image but make sure the base image is up to date. I've just checked an golang:1.4 includes openssl 1.0.1k-1 which should be good.

@discordianfish my apologies, I was looking at promdash which at the moment is upstreaming from Ubuntu which is not as well maintained / tested as Debian which GoLang upstreams from.
So, while it is a good idea to do an upgrade of packages to ensure patches are properly applied as people build prometheus images - openssl is not currently an insecure package as long as golang is kept up to date and people are regularly fetching their upstream images and not relying on locally cached layers to be up to date.

@sammcj See my comments on your other PR for more details, but we shouldn't do a upgrade here. We rebuild the image on every push and during that rebuild, the latest base image will be fetched so everything should be up to date anyways.

OK thanks, completely understand.


"Resource" is indiscriminately removed from Resource title

Hi
I have my own Model type called "Resource", making the Orchid-Crud class "ResourceResource". The page title doesn't show though because the nameWithoutResource class strips the word "Resource" from everywhere in the class name, not just the end. I better solution would be replacing this line:
https://github.com/orchidsoftware/crud/blob/ae8c6615c48b4e5b0afd537b62f73cc03aa2b8f9/src/Resource.php#L140
with something like (assuming they always end in "Resource"):
return substr(Str::of(class_basename(static::class)), 0, -8);

Hi you can also just override this method:
    /**
     * @return string
     */
    public static function nameWithoutResource(): string
    {
        return class_basename(static::class);
    }

Yep that's what I did. Just thought I'd raise a PR to contribute back. Great software, thanks very much!!

You can contribute. Let's make a straightforward construction:
return Str::of(class_basename(static::class))->replace('Resource', '')->whenEmpty(function () {
    return 'Resource';
});

Maybe this is a little illogical, but it will work without exclusions for going beyond the limits of characters. What do you think?

Looks good!


No close event fired

If you scroll up or down, the Alwan popup closes and no close event fired.
Probably the popup shouldn't close at all, but if it does, it should trigger a close event.
https://user-images.githubusercontent.com/12731463/226051183-12868b8c-a440-48eb-bade-23a6ed1b3565.mov

Wasn't an issue because I though the close event shouldn't fire since it's not a user action, but I reconsider it and now it's fixed.


feat: add duckdb/duckdb

duckdb/duckdb: DuckDB is an analytical in-process SQL database management system
$ aqua g -i duckdb/duckdb

Check List

[x] Read CONTRIBUTING.md

[x] Read OSS Contribution Guide

[x] All commits are signed

This repository enables Require signed commits, so all commits must be signed

[x] Avoid force push
[x] Do only one thing in one Pull Request
[x] Execute cmdx s to scaffold code
[x] Install and execute the package and confirm if the package works well

How to confirm if this package works well
Reviewers aren't necessarily familiar with this package, so please describe how to confirm if this package works well.
Please confirm if this package works well yourself as much as possible.
Command and output
$ duckdb -help
Usage: duckdb [OPTIONS] FILENAME [SQL]
FILENAME is the name of an DuckDB database. A new database is created
if the file does not previously exist.
OPTIONS include:
   -append              append the database to the end of the file
   -ascii               set output mode to 'ascii'
   -bail                stop after hitting an error
   -batch               force batch I/O
   -box                 set output mode to 'box'
   -column              set output mode to 'column'
   -cmd COMMAND         run "COMMAND" before reading stdin
   -c COMMAND           run "COMMAND" and exit
   -csv                 set output mode to 'csv'
   -echo                print commands before execution
   -init FILENAME       read/process named file
   -[no]header          turn headers on or off
   -help                show this message
   -html                set output mode to HTML
   -interactive         force interactive I/O
   -json                set output mode to 'json'
   -line                set output mode to 'line'
   -list                set output mode to 'list'
   -markdown            set output mode to 'markdown'
   -newline SEP         set output row separator. Default: '\n'
   -nofollow            refuse to open symbolic links to database files
   -no-stdin            exit after processing options instead of reading stdin
   -nullvalue TEXT      set text string for NULL values. Default ''
   -quote               set output mode to 'quote'
   -readonly            open the database read-only
   -s COMMAND           run "COMMAND" and exit
   -separator SEP       set output column separator. Default: '|'
   -stats               print memory stats before each finalize
   -table               set output mode to 'table'
   -unredacted          allow printing unredacted secrets
   -unsigned            allow loading of unsigned extensions
   -version             show DuckDB version

If files such as configuration file are needed, please share them.
Reference

Thank you for your contribution!

v4.191.0 is out 🎉
https://github.com/aquaproj/aqua-registry/releases/tag/v4.191.0


[AutoPR sql/resource-manager] [DO NOT MERGE] Add PrivateEndpointConnection Swagger

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/6727

(message created by the CI based on PR content)


Upgrade to Netty 4.1.61.Final

Netty 4.1.61.Final leads to hanging tests. Needs further investigation.


fix(select): Cant bind to property of object array without an optionsTemplate

If I try to bind to a specific property on an object array without specifying a template, it throws the following error even when using labelField and valueField
<sui-select #select [formControl]="formControl" [options]="[{'description':1},{'description':2}]"
[valueField]="description" [labelField]="description" >
     <sui-select-option *ngFor="let option of select.filteredOptions" [value]="option"></sui-select-option>
</sui-select>

ERROR TypeError: text.replace is not a function at SearchService.highlightMatches

I cant get select to work in plunkr at the moment so no plunkr for this.

I've had a look and this is twofold, firstly you're binding valueField and labelField to the value of description, not the value description (remove the square brackets).
However, this has raised the fact that passing a non-string field will cause an error, so I've updated labelField to always return a string, so if you don't change this code you'll end up with lots of [object Object] in your select which will highlight the issue.
The hotfix release containing these changes will be out soon.

I realised this after I submitted the issue, removed the brackets and was
still getting the same error.

Makes sense, since the 2nd thing was that it's a non-string field so replace wouldn't work. Once I've sorted out the checkbox form stuff I'll get this release out :)

I see what you mean. Yes, removing square brackets and specifying a string
field works as expected. Not specifying a label field also throws the same
error.

This is now fixed in 0.9.2, the value of the property specified in labelField is automatically cast to a string before running any functions. (This also works for when nothing is specified)


[Bug]: Incorrect formatting in cassette output

See this issue

Need to add Ben Zotto's https://github.com/bzotto/bin2sphere/ repo as a git submodule, then interface to bin2sphere for the cassette generation piece of the code.


Issue 39696: Search reference for file breaks when renaming container

Fixing tests and other issues from https://github.com/LabKey/platform/pull/1041

They still aren't getting reindexed but at least we're only clearing the index for actual files now (12 search failures instead of 15).


Count not working as expected

I have a custom child object with a lookup to the Opportunity. I want to count the number of child objects with a status of Approved. I can't get it to go past counting 1.

Try setting Field to Aggregate to “Id”
On Fri, Oct 11, 2019 at 17:23 meganleary<EMAIL_ADDRESS>wrote:

[image: Screen Shot 2019-10-11 at 5 22 58 PM]
https://user-images.githubusercontent.com/42704220/66685923-ce56ad00-ec4b-11e9-88c2-7d4676a07bf0.png
[image: Screen Shot 2019-10-11 at 5 23 31 PM]
https://user-images.githubusercontent.com/42704220/66685946-df072300-ec4b-11e9-8500-91863ec712f4.png
[image: Screen Shot 2019-10-11 at 5 23 31 PM]
https://user-images.githubusercontent.com/42704220/66685949-e0d0e680-ec4b-11e9-9947-7f830f888130.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/afawcett/declarative-lookup-rollup-summaries/issues/871?email_source=notifications&email_token=AA6XRLBJQ7ICL5FSW47NDDTQODVGJA5CNFSM4I77OM2KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBBH7YA#issuecomment-541229024,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA6XRLH2NKI3E5BIOFWOP3DQODVGJANCNFSM4I77OM2A
.

I am a bit confused by this rollup. It looks like your criteria is dependent on a standard field (hence no __c) called Status on your child object Quote_Request__c. is that correct? If so, thats news to me that such a standard field exists on custom objects. Typically one uses Workflow or Process Builder to update a custom field with an applicable value/status and thus then your rollup would reference that? @JimBTek am I missing anything here in my thoughts?


missing parentage to 'cell junction'

Is there any reason why 'cell junction' (A cellular component that forms a specialized region of connection between two or more cells, or between a cell and the extracellular matrix, or between two membrane-bound components of a cell, such as flagella")

is not a parent to
synapse?

the def for synapse says 'The junction between a nerve fiber of one neuron and another neuron...'
but nerve fiber is not a GO term - change to axon + add nerve fiber as a synonym to the term axon for searching?

@BarbaraCzub didn't you work on this?

Hi @ukemi
I have definitely worked on 'adherens junction' (e.g. https://github.com/geneontology/go-ontology/issues/18119) and this term is a descendant of cell-junction:

'Gap junction' is also looking fine:

Wrt to synapse, I am happy to add the 'cell junction' parent here unless there could have been a reason why the SynGO project did not do this?

I generally don't think of a synapse as a cell junction because there is no physical contact between the two cells, but am happy to go with the opinion of the experts.

@BarbaraCzub thanks, oops, not sure why I didn't see that when I was looking at the terms

I generally don't think of a synapse as a cell junction because there is no physical contact between the two cells, but am happy to go with the opinion of the experts.

Perhaps this is the reason why SynGO did not make synapse a child of cell junction. I am hesitant about this too.

@BarbaraCzub thanks, oops, not sure why I didn't see that when I was looking at the terms

Can be easily missed! But the parentage is definitely there for adherens and gap junctions. It's just not direct.

hen the def could just be clarified to specify 'physical connection'?

Well. Actually, maybe the 'cell junction' was not intended to specify a physical connection and then it would be fine to make synapse a child of it.
Because the definition of its child: 'anchoring junction', which is a grouping term for all the adherens and gap and related physical junctions, specifies a physical connection: "A cell junction that mechanically attaches a cell (and its cytoskeleton) to neighboring cells or to the extracellular matrix."

I always thought that it was meant to specify a physical connection, but will take @BarbaraCzub's advice with respect to the synapse if she thinks the community would expect it there. @BarbaraCzub, can you make the edits?

Yes, I believe many researchers think of a 'synapse' as a 'junction'. In fact, even the definition of the synapse in GO states this. So, I will make the 'synapse' a child of 'cell junction', but I will change the 'nerve fibre' in the definition to a 'neuron projection' (which includes both 'axons' and 'dendrites').

We should look a the immunological synapse too. I don't know much about it, but remember it exists. @addiehl?

I suppose it should also fall under 'cell junction', but I'll wait for @addiehl to comment before making this edit.

@Antonialock  what is the action?
I have unassigned @BarbaraCzub  as she is no longer with GO. Can you summarize of close?

My original request has been added. It looks like it sparked another potential ticket item to potentially  add "cell junction" parentage to " immunological synapse" too, but that is not what I requested so I suppose this can close and a new ticket can be opened for other terms


"Galda de Jos" is listed in the drop-down menu

Description:
"Galda de Jos" is listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Galda de Jos" in the search bar.

Expected results
The location is listed in the drop-down menu as "Galda de Jos, Alba (Galda de Jos)".


Use example as a demo

As an android example, use this example as a demo

@hannesa2 should we rename examples folder to a demo?


"Deployment" type needs to be configurable

https://github.com/apiclarity/apiclarity/blob/02b3b5d823545ca7f3214e9dab16b9bf18cbc69e/plugins/gateway/tyk/deploy/deploy.sh#L12
this Needs to be configurable as "daemonset" is what the default Tyk Helm Chart is deployed as.

Hi @sedkis
We used the installation instructions from here which uses deployments.
We can definitely add support also for daemonset and make it configurable.
We are also planning to move the plugin installation to helm so it will be probably done as part of it.

Excellent, thank-you

Hi @sedkis
We used the installation instructions from here which uses deployments. We can definitely add support also for daemonset and make it configurable. We are also planning to move the plugin installation to helm so it will be probably done as part of it.