refactor: use jest test environment

I'd be happy to refactor the way this module is invoked to use the Jest custom environment feature, which I think would be a more intuitive way of setting up tests.
For example, at the moment the setupTest approach breaks it.only for example, which might be non-intuitive to a person who doesn't understand what setupTest is doing under the hood. (Alternatively, the solution is being clearer in the documentation.)
However, because this would be a significant change, I wanted to get a :+1: from @pi0 and @ricardogobbosouza first. Thoughts?

Hi @danielroe
Sorry, but i didn't understand what you intend to do 😅

@ricardogobbosouza The normal jest environments are node and jsdom which provide appropriate globals for those environments.
I am proposing the a nuxt environment (possibly more than one).

What we have at the moment is a preset, it would be incredible to have a environment for nuxt. My thoughts:

we have to be careful that the environment is not too slow
we also need an environment for the modules?

Any chance we could use ava instead of Facebook's Jest ?

First of all, thank you for this library. After trying it out, I though it would work brilliantly as Jest environment. Happy to find this discussion.
Working Prototype
To try out quickly how @nuxt/test-utils environment could work I created this working prototype.
That is just a quickly written code. I was trying to make only minimal changes by wrapping Jest environment module around current API. Of course, this is clumsy, but both implementations work without conflicting.
Before diving into code or details I wanted to see the whole picture. What problems the code should solve? So I was concentrating on:

usage examples
documentation draft
benchmark (see bellow)

These parts are the most important in the repo.
Proposal
The test environment could improve several things:

simplify setup. Test environment declaration lets us know the exact structure of a project. nuxt-app points options.fixture to process.cwd(). nuxt-module looks for fixture(s) inside test/fixture or custom directories (current default);

.only works as expected;

slightly better performance (see Benchmark bellow).

Examples
Test environment can be declared by adding a @jest-environment docblock at the top of a test file or it can be defined through a jest.config.* file.
nuxt-app
/**
 * @jest-environment @nuxt/test-utils/nuxt-app
 */

describe('two features', () => {
  test('working feature', async () => {
    // ...
  })

  test.debug('failing feature', () => {
    // will open a browser for debugging
  })
})

// TODO `.debug` is not yet implemented

nuxt-module
// package.json

"test:e2e": "jest test/e2e -c jest.config.e2e.ts"

// jest.config.e2e.ts

const config: Config.InitialOptions = {
  // ...
  testEnvironment: '@nuxt/test-utils/nuxt-module'
}

// test/e2e/main.test.ts

setup({
  fixture: 'main-fixture',
  targets: ['server', 'static']
}).describe('with the main fixture', () => {
    test('first test', () => {
      // ...
    })

    setup({ configOverride: { ssr: false } })
      .test.only('second test', () => {
        // ...
      })
  })

// TODO `setup({}: NuxtConfig)` is not yet implemented

For more details see README inside the repo.
Benchmark
As I mentioned, the test environment is just an additional wrapper of current core implementation. Current @nuxt/test-utils code base was changed only minimally.
Each suite was ran ten times in similar conditions: one warm up run, headless browser, no linting. Here are the average run times:

JavaScript example

Jest environment, 22.55s
setupTest, 25.77s

TypeScript example

Jest environment, 33.15s
setupTest, 42.85s

Robots Module

Jest environment, 58.95s
setupTest, 73.71s

Jest environment proofs to be ca. 10-20% faster. Both implementations are slow enough. That’s the nature of end-to-end tests.
Final Thoughts
I would be more than happy to work on this project. It was fun to research and to scratch the surface of Jest. Feels tempting to dive deeper.
Before moving on I would like to ask:

does the proposed implementation look useful for you?
do these ideas fit with your vision of test-utils?

Thanks for reading this longish text!

Amazing implementation @mrazauskas
In my view, this super fits for this module 😄
I would like to know the opinion of @pi0 and @danielroe

Thanks for the detailed insights @mrazauskas. Of course, PR for supporting nuxt-app and nuxt-module environments is welcome. (only we need to implement them inside src as typescript. i can guide you then how to prepare packaging)

Thanks for quick reply. I was not sure what should be the next step, but now everything got clear. I will work on the real implementation and will send a PR. Most probably that will not be very fast. I made a plan on how to implement everything. Let’s see.
(TypeScript and tests – these will be included for sure.)

thanks @mrazauskas. it would be nice if you can split your work as septate PRs so we can quickly iterate 😊

Sure. That’s exactly what I was thinking. Also I see how few small optimisations could be made in the core. Will send these in while working on the environment.


Getting Started with Bash Shell Scripting

Proposed title of article
Getting Started with Bash Shell Scripting
Introduction paragraph (2-3 paragraphs):
Bash is a widely available command line interface that is found in different operating systems. It is known to be a default command interpreter that is found on Mac OSX, and GNU or Linux systems. Shell is a macro processor that allows you to run commands interactively or non-interactively while scripting enables for the execution of instructions that would have to be executed individually interactively. This shows that you can be able to process information and retrieve data among other simple and complex operations.
Shell scripts are mainly for systems handling administration tasks such as system logs evaluation, and disk backups among others. They are also required in cases where the programs are complicated and used as installation scripts. The Bash shell script is a program written in a programming language, Bash.
Key takeaways:

Basics of Bash shell script
What are Bash scripts
How Bash shell scripting works
How to run a bash shell script

References:
N/A

Hello @eunice-wanjiku, we thank you for submitting your topic.
However, after some careful consideration, it struck us that this topic may be a bit over-saturated throughout other blog sites and official documentations.
We typically refrain from publishing content that is covered widely on the net or other blogs. As we're more interested in original, practitioner-focused content that takes a deeper dive into programming-centric concepts.
Please feel free to explore another more in-depth topic.


Navigation with slideToLoop produces the flip through effect between neighbouring slides after at least one loop is finished

Check that this is really a bug

[X] I confirm

Reproduction link
https://codepen.io/electrodrel/pen/MWPeQdQ
Bug description
Original issue by @electrodrel: #6592
This issue is still happininng in v11.0.2. You need to adjust the swiper version in the CodePen since it is the one from the original issue.
When switching to a slide using slideToLoop method, there is this 'flipping through all the slides in the slider' effect. it is intended to show up only between the last and the first slide to indicate the end of the loop. However it happens between two neighbouring slides if they have been rearranged in loop navigation.
Expected Behavior
No matter how many times a user swipes through the slides in the infinite loop, there should not be any flipping slide effect between two neighbouring slides, unless they are the last and the first slides in the slider.
Actual Behavior
After at least one loop is over, there is the flipping effect between two neighbouring slides (not the last and the first ones).
Swiper version
11.0.2
Platform/Target and Browser Versions
macOS: Chrome, Firefox
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?

[ ] I'm willing to open a PR

It is expected so far, as loop rearrange the slides (check the DOM)

Yes, but the slides could be rearranged in a different way after the first loop iteration. The current slide could always be positioned somewhere in the middle of the other slides (in the DOM). That way the slides would always take the shortest path while navigating with scrollToSlide.
This would be my expected behavior.

This is huge problem that remains for years. Always hope for fix but it's like 5 new versions since I face the problem and no solutions.


Possibly split Guides into further sub directories

Needs change in Section Nav template as well. This issue is a follow up of issue #97.
See this comment

/assign

/close
Via pull #106


ActionConstraints added to PageRouteModel.SelectorModel do not get copied to the action descriptor

@pranavkm what is the impact of these particular ActionConstraints not being copied to the ActionDescriptor?

You can't write a convention that adds constraints, for instance - https://github.com/aspnet/Entropy/pull/282/files#diff-968c24dbacefec17f9577c9a54289aaeR28


Suppress Lint - Class is not registered in Android Manifest

This actually seems like it could be considered a lint bug. These are registered in the test manifest, and there is no application manifest.
I'm going to file this as a bug instead.

http://b.android.com/194094

Makes sense. I voted on the issue. Let's see if it's get fixed or not.


Yotta uses tagged version instead of branch specified in top level module.json

I have test application that needs to fetch master branches of some repositories instead of tagged releases.
I define the branch in module.json like this:
"sal-stack-nanostack": "ARMmbed/sal-stack-nanostack-private#master"

However, the test run randomly picks up either tagger version from there, or the branch.
When things work as expected I get following:
09:56:42 warning: Using head of "master" branch for "sal-stack-nanostack", not a tagged version
09:56:42 info: download sal-stack-nanostack@master from GitHub ARMmbed/sal-stack-nanostack-private

When it does not work, I get this:
15:36:25 info: get versions for sal-stack-nanostack
15:36:26 info: download<EMAIL_ADDRESS>from GitHub ARMmbed/sal-stack-nanostack-private

Think the branch name on top level application should be mandating the Yotta so that it then skips the version tags of that repo. This is much needed feature to allow CI machines to test our software BEFORE creating the release tags of those modules.

Does the behaviour change randomly if you repeat the same build after removing ./yotta_modules (I suspect not?)
This is almost certainly caused by multiple modules in your tree depending on the module in question. The version specification that will be used is the first that's encountered. So whether the specified branch is used, or the latest server-tagged version (the no-branch-specified behaviour) will depend on which dependency specification is encountered first.
This behaviour won't change without a complete re-visit of yotta's dependency resolution algorithm (see #537), sorry!
If you want to build with an exact version of your dependency:

first consider whether this is really the appropriate thing to be doing. When you release a new version of your module, your users will get it with the current version of its dependencies, not the git version: so that is the appropriate version to be testing with.
If you really want to do this, then have your CI system either use yotta link to link in the exact version that you want, or create its own symlink from yotta_modules to the exact version that should be used.


Graduate istioctl analyze out of experimental

Graduate istioctl analyze out of experimental for 1.5.
This PR proposes doing this as a "soft" graduation, where istioctl analyze becomes canonical but istioctl experimental analyze continues to work, but includes a run-time notice encouraging users to switch. The same message is also present in usage messages. Doing it this way, you'd naturally expect to make it a hard graduation in 1.6, then remove the experimental command in 1.7. I'm interested in feedback on whether this is a desirable approach, or if it just makes the migration ramp unnecessarily long.
Also updated the usage for istioctl validate to more strongly indicate that users should move to istioctl analyze.
This also includes a fix to getDefaultNamespace for istioctl, so that it correctly respects the --context option.
See https://github.com/istio/istio/issues/16777
Some examples below to demonstrate how the soft graduation looks:
$ istioctl analyze /tmp/default.yaml
✔ No validation issues found.
$ istioctl x analyze /tmp/default.yaml
(analyze has graduated. Use `istioctl analyze`)
✔ No validation issues found.

$ istioctl analyze --help | head -n 10
Analyze Istio configuration and print validation messages

Usage:
  istioctl analyze <file>... [flags]

Examples:

# Analyze yaml files
istioctl analyze a.yaml b.yaml

$ istioctl x analyze --help | head -n 10
Analyze Istio configuration and print validation messages (analyze has graduated. Use `istioctl analyze`)

Usage:
  istioctl experimental analyze <file>... [flags]

Examples:

# Analyze yaml files
istioctl analyze a.yaml b.yaml

@sushicw: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
a0b8a11daf9c0bb50aec4074335d0588047e6b53
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@sushicw: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pilot-multicluster-e2e_istio
e2c0ec478712d311c1777dfd77bd3fe30528dfc4
link
/test pilot-multicluster-e2e_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

This PR proposes doing this as a "soft" graduation, where istioctl analyze becomes canonical but istioctl experimental analyze continues to work, but includes a run-time notice encouraging users to switch. The same message is also present in usage messages. Doing it this way, you'd naturally expect to make it a hard graduation in 1.6, then remove the experimental command in 1.7. I'm interested in feedback on whether this is a desirable approach, or if it just makes the migration ramp unnecessarily long.

I was going to recommend this. Especially for something intended for CI use, arbitrarily changing the command is annoying.

/test pilot-multicluster-e2e_istio

@esnible @ayj PTAL

I like this approach. One comment on wording, otherwise lgtm.

@sushicw: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

unit-tests_istio
b30f7e363c27b3f5c07f410172fbe26c2d8b765d
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test unit-tests_istio


[AutoComplete] set canAutoPosition to false for PopOver

Fixed PR for https://github.com/callemall/material-ui/pull/3015

@Aweary Thanks, i'll merge this since it was reviewed and accepted :+1:


Chatterino Browser Exstenstion

The Chatterino Browser Extension cant connect to the Chatterino thing and just gives the msg:
"The extension could not connect to chatterino.
Please focus the window or refresh the page."
and i have tried to Restart my browser and Chatterino to see if anything happened but it didnt do a thing

#745

fixed, see #745


Add operator for complex collection definition

I would like to request a feature for page collections. See this example:
content:
    items:
        -<EMAIL_ADDRESS>'/productspace/products'
        -<EMAIL_ADDRESS>owner

At the moment both querys parts of items are comulated (OR). I would like to combine them with AND, so that only pages with the specific taxonomy from that folder will be in the results.
In this case the primary request to get the pages by taxonomy. But I wanted to avoid getting pages that have, for whatever reason, this taxonomy but are not part of the products.

Frankly this kind of complex behavior is best handled in a bit of custom PHP code.. see: https://learn.getgrav.org/16/content/collections#custom-collection-handling-with-oncollectionprocessed-event


Fixed typo: standard_tracer to standard_trace

Coverage remained the same at 92.432% when pulling 43178d5f0ef86b3ef145ef844eab5ba373e8b8d2 on kelvinhammond:patch-1 into be891311eb7e92da53ff29fb1760d70936835e3a on taocpp:master.

Thanks!


Go back on questions

What would you like to change?
Add a way to go back to the previous question is a mistake is made
How do you think that would improve the project?
Currently we have to quit and restart if a mistake is made. This is very inconvenient

We use inquirer and this does not have a built in mechanism for going back (to my knowledge). Some flows can be prematurely exited by selecting nothing if its a multi list checkbox but most can't.
Other flows (like the addon duplicate question) do have a back button ("do not duplicate") but this is manually implemented for that flow.
Ideally I want something global (like ESC rewinds to the previous question), but failing that we might have to refactor all questions to support a manual back option or migrate to another CLI framework...


Temporarily disable Kotlin analysis in PR checks

Kotlin analysis is incompatible with Kotlin 1.8.0, which is now rolling out to the Actions runner images.
While we work on a more permanent fix to our PR checks, this will prevent us losing other test coverage.
Merge / deployment checklist

[ ] Confirm this change is backwards compatible with existing workflows.
[ ] Confirm the readme has been updated if necessary.
[ ] Confirm the changelog has been updated if necessary.

Backlink added to internal issue :)


ValueError: unused keyword argument 'formatter'

First time using the tool, so I'm sure it's either PEBCAK or ID10T errors...
Converting IMAX 1080p WEB-DL H264 Atmos MKV to 1080p H264 AAC MP4 with a 4k bitrate ceiling. ffmpeg
======================
/usr/bin/ffmpeg -I /file/name/redacted.mkv -vcodec copy -map 0:0 -metadata:s:v title="FHD" -metadata:s:v handler_name="FHD" -c:a:0 aac -map 0:1 -ac:a:0 2 -b:a:0 256k -metadata:s:a:0 BPS=256000 -metadata:s:a:0 BPS-eng=256000 -metadata:s:a:0 title="Stereo" -metadata:s:a:0 handler_name="Stereo" -metadata:s:a:0 language=eng -disposition:a:0 -default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions -strict experimental -c:a:1 aac -map 0:1 -ac:a:1 6 -b:a:1 1536k -metadata:s:a:1 BPS=1536000 -metadata:s:a:1 BPS-eng=1536000 -metadata:s:a:1 title="5.1 Channel" -metadata:s:a:1 handler_name="5.1 Channel" -metadata:s:a:1 language=eng -disposition:a:1 +default-dub-original-comment-lyrics-karaoke-forced-hearing_impaired-visual_impaired-captions -strict experimental -f mp4 -threads 0 -metadata:g encoding_tool=SMA -y /file/name/redacted.mp4
======================
[####################] 100%
/file/name/redacted.mp4 created.
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/guessit/api.py", line 192, in guessit
    config = self.configure(options, sanitize_options=False)
  File "/usr/local/lib/python3.8/site-packages/guessit/api.py", line 163, in configure
    self.rebulk = rules_builder(advanced_config)
  File "/usr/local/lib/python3.8/site-packages/guessit/rules/__init__.py", line 56, in rebulk_builder
    rebulk.rebulk(episodes(_config('episodes')))
  File "/usr/local/lib/python3.8/site-packages/guessit/rules/properties/episodes.py", line 168, in episodes
    rebulk.chain(
  File "/usr/local/lib/python3.8/site-packages/rebulk/builder.py", line 179, in regex
    return self.pattern(self.build_re(*pattern, **kwargs))
  File "/usr/local/lib/python3.8/site-packages/rebulk/builder.py", line 107, in build_re
    return RePattern(*pattern, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/rebulk/pattern.py", line 441, in __init__
    pattern = call(re.compile, pattern, **self._kwargs)
  File "/usr/local/lib/python3.8/site-packages/rebulk/loose.py", line 60, in call
    return function(*call_args, **call_kwargs)
  File "/usr/local/lib/python3.8/site-packages/regex/regex.py", line 349, in compile
    return _compile(pattern, flags, ignore_unused, kwargs)
  File "/usr/local/lib/python3.8/site-packages/regex/regex.py", line 586, in _compile
    raise ValueError('unused keyword argument {!a}'.format(any_one))
ValueError: unused keyword argument 'formatter'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "./manual.py", line 425, in <module>
    main()
  File "./manual.py", line 414, in main
    processFile(path, mp, info=info, silent=silent, tag=settings.tagfile, tmdbid=args.get('tmdbid'), tvdbid=args.get('tvdbid'), imdbid=args.get('imdbid'), season=args.get('season'), episode=args.get('episode'), original=args.get('original'))
  File "./manual.py", line 244, in processFile
    tagdata = getInfo(inputfile, silent, tag=tag, tmdbid=tmdbid, tvdbid=tvdbid, imdbid=imdbid, season=season, episode=episode, language=language, original=original)
  File "./manual.py", line 128, in getInfo
    tagdata = guessInfo(fileName, tvdbid=tvdbid, tmdbid=tmdbid, imdbid=imdbid, season=season, episode=episode, language=language, original=original)
  File "./manual.py", line 173, in guessInfo
    guess = guessit.guessit(original or fileName)
  File "/usr/local/lib/python3.8/site-packages/guessit/api.py", line 71, in guessit
    return default_api.guessit(string, options)
  File "/usr/local/lib/python3.8/site-packages/guessit/api.py", line 222, in guessit
    raise GuessitException(string, options)
guessit.api.GuessitException: An internal error has occured in guessit.
===================== Guessit Exception Report =====================
version=3.1.0
string=/file/name/redacted.mkv
options={}
--------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/guessit/api.py", line 192, in guessit
    config = self.configure(options, sanitize_options=False)
  File "/usr/local/lib/python3.8/site-packages/guessit/api.py", line 163, in configure
    self.rebulk = rules_builder(advanced_config)
  File "/usr/local/lib/python3.8/site-packages/guessit/rules/__init__.py", line 56, in rebulk_builder
    rebulk.rebulk(episodes(_config('episodes')))
  File "/usr/local/lib/python3.8/site-packages/guessit/rules/properties/episodes.py", line 168, in episodes
    rebulk.chain(
  File "/usr/local/lib/python3.8/site-packages/rebulk/builder.py", line 179, in regex
    return self.pattern(self.build_re(*pattern, **kwargs))
  File "/usr/local/lib/python3.8/site-packages/rebulk/builder.py", line 107, in build_re
    return RePattern(*pattern, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/rebulk/pattern.py", line 441, in __init__
    pattern = call(re.compile, pattern, **self._kwargs)
  File "/usr/local/lib/python3.8/site-packages/rebulk/loose.py", line 60, in call
    return function(*call_args, **call_kwargs)
  File "/usr/local/lib/python3.8/site-packages/regex/regex.py", line 349, in compile
    return _compile(pattern, flags, ignore_unused, kwargs)
  File "/usr/local/lib/python3.8/site-packages/regex/regex.py", line 586, in _compile
    raise ValueError('unused keyword argument {!a}'.format(any_one))
ValueError: unused keyword argument 'formatter'
--------------------------------------------------------------------
Please report at https://github.com/guessit-io/guessit/issues.
====================================================================

This is actually a guessit error
https://github.com/mdhiggins/sickbeard_mp4_automator/issues/1221
See

This is actually a guessit error
https://github.com/mdhiggins/sickbeard_mp4_automator/issues/1221
See

https://github.com/guessit-io/guessit/issues/656
https://github.com/guessit-io/guessit/issues/650
And actually it looks like the REGEX_DISABLED env variable isn't needed anymore, the default behavior is disabled
Updating rebulk should fix things
https://github.com/Toilal/rebulk/commit/d5a8cad6281533ee549a46ca70e1a25e5777eda3

https://github.com/guessit-io/guessit/issues/656
https://github.com/guessit-io/guessit/issues/650
And actually it looks like the REGEX_DISABLED env variable isn't needed anymore, the default behavior is disabled
Updating rebulk should fix things
https://github.com/Toilal/rebulk/commit/d5a8cad6281533ee549a46ca70e1a25e5777eda3

Thanks - had to update both guest and rebulk, works like a charm now!

Thanks - had to update both guest and rebulk, works like a charm now!


How do you fetch messages for a user with graphql shema?

Just like you have a user -> subsystems link like this
const ClientType = new ObjectType({
  name: 'Client',
  fields: {
    clientId: {type: StringType},
    state: {type: StringType},
    subsystems: {
      type: new List(ClientSubType),
      resolve({clientId}) {
        return ClientSub.findAll({
          where: {
            clientId,
          },
          attributes: [
            'id',
            'clientId',
            'subName',
            'state',
          ],
        }).then(
          results => results || null,
        );
      },
    },
  },
});

So when I call a client by id sqlite fetches all subsystems.
I call it like this
{ clients {clientId, state, subsystems { clientId, subName, state }}}

And you moved all types to graphql language - how do you fetch user's messages along with a User?
AND THANK YOU A LOT for sharing this you saved me.

I don't really understand exactly what you are asking with your example, however, if what you want to do is fetch a user's messages along with the user: you could put an attribute messages in the User definition:
type Message {
  id: ID!
  from: User
  text: String
  createdAt: String
}

type User {
  id: ID!
  first_name: String
  last_name: String
  messages: [Message]
}

Then in your resolvers you would have something like
User: {
  messages: async (context, args, { user }) => {
    const messages = await Message.findAll({
      where: {
        '$from.id$': { $eq: user.id },
      },
      include: [{ model: User, as: 'from' }],
    });
  }
}

That is the answer I was looking for. Thank you!


SQL Language Basics - update Postgresql reserved words dictionary.

It would be good to update the Postgresql dictionary - there are quite a lot of keywords that are not highlighted properly.
For example — perform, columns, int8, elsif, ...

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


Jquery version upgrade

Fix for the issue,
https://github.com/rkit/react-select2-wrapper/issues/36

Please try delete jquery from dependencies of this component (react-select2-wrapper)
and add jquery to your package.json. If it helps, I will delete jquery dependency.

in that case will you like to add jquery to peer deps in the following format:
"jquery": "*"

I agree.

Thanks!

@rkit , Thanks for the merge and publish over npm.


Support of RTL-SDR v4

I have the issue of feeding signal on RTL-SDR, I followed the instruction to install driver on my ubuntu, but there is no signal (only 1-2 msgs on ADS-B), its the docker supported on this dongle, if not, can you add the driver on the docker? thanks.

I'm in the same situation.
I couldn't configure it in any way, it doesn't receive any ADS-B data.


In WMO, make sure the dummy "primary" compilation input is a Swift source file

Attempting to land https://github.com/apple/swift-driver/pull/1346 again
Otherwise, if the first argument is anything else (e.g. an object file) we will use it as a key and the compiler won't be too happy about that.
Resolves rdar://108741675

The original PR for this and https://github.com/apple/swift-driver/pull/1347 got tested at the same time and passed testing; but, the change in https://github.com/apple/swift-driver/pull/1347 wasn't quite right, which got exposed when this was merged. I've amended this change now to fix the logic error.
cc @etcwilde

@swift-ci test Windows platform


Remove inode from TTL buckets when deleting the inode

Resolves issue https://github.com/Alluxio/alluxio/issues/9739

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

Merged build finished. Test PASSed.

alluxio-bot, merge this please


image updates

hand to receive html and js files, decreased contrast on ribbon command

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/images/about-addins-manifestwebpage.png
:white_check_mark:Succeeded

docs/images/about-addins-taskpane.png
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

@hodlhodl Hi Mei Li, delete the branch if you no longer need it!


reflect: document missing panic behavior for non-assignable values in reflect.Grow

Currently, the documentation for reflect.Grow does not mention that the method panics if the value passed is not assignable:

It panics if v's Kind is not a Slice or if n is negative or too large to allocate the memory.

However, if v is not assignable (either because it was obtained using an unexported field or it is not addressable), Grow will also panic. For example:
package main

import (
	"reflect"
)

func main() {
	reflect.ValueOf([]int{1, 2, 3}).Grow(5)
}

Same is true for the Set* methods, or Copy when the destination is an array.
We mention in some cases that they panic if CanSet is false, but fairly inconsistently.

It’s not immediately obvious that Grow can panic for certain slices, such as in the following example, which correctly panics:
s := []int{1, 2, 3}
reflect.ValueOf(s).Grow(5)

I believe this behavior should be documented, along with the other cases mentioned by @randall77.


Logging does not work on evaluation epoch end with multiple dataloaders

🐛 Bug
When multiple dataloaders are used during evaluation (validation or test), they are iterated like this:

DataLoader 0: 0-1-2-3-4-5
DataLoader 1:            0-1-2-3-4-5
                       (A)        (B)

Where the first iterator is completely exhausted before starting the next one. Each has 5 batches.
One might ask, what's considered the epoch end? (A) and (B) or just (B)?
Lightning runs {validation,test}_epoch_end ONLY on (B), I'm not sure why is that exactly but one can obtain the behavior of (A) and (B) by simply having separate trainer.test(..) calls.
The return of trainer.test() is a list of results (dictionaries) per dataloader. In the case of 1 DataLoader:
class Model():
    def test_step(self, batch, batch_idx, dataloader_idx=None):
        self.log(f'foo', 123., add_dataloader_idx=True)

    def test_epoch_end(self, outputs) -> None:
        self.log("foobar", 123.)

x = trainer.test(model, datamodule=dm)
print(x)  # [{'foo': 123.0, 'foobar': 123.0}]

Notice how the DataLoader results include both items.
However, if we use 2 DataLoaders, the value of x is:
[{'foo/dataloader_idx_0': 123.0}, {'foo/dataloader_idx_1': 123.0}]
where neither of them include foobar.
This is correct in the sense that foobar was logged in epoch_end and it's not part of either of the dataloader states. One could also argue it's part of both and both should have it.
[{'foo/dataloader_idx_0': 123.0, 'foobar': 123.0}, {'foo/dataloader_idx_1': 123.0, 'foobar': 123.0}]
To Reproduce

import torch
from torch.utils.data import DataLoader, Dataset

from pytorch_lightning import LightningModule, Trainer, LightningDataModule

class RandomDataset(Dataset):
    def __init__(self, size, length):
        self.len = length
        self.data = torch.randn(length, size)

    def __getitem__(self, index):
        return self.data[index]

    def __len__(self):
        return self.len

class BoringData(LightningDataModule):
    def __init__(self):
        super().__init__()

    def test_dataloader(self):
        return [DataLoader(RandomDataset(32, 100), batch_size=16), DataLoader(RandomDataset(32, 100), batch_size=16)]
        #return DataLoader(RandomDataset(32, 100), batch_size=16)

class BoringModel(LightningModule):
    def __init__(self):
        super().__init__()
        self.layer = torch.nn.Linear(32, 2)

    def test_step(self, batch, batch_idx, dataloader_idx=None):
        self.log(f'foo', 123., add_dataloader_idx=True)

    def test_epoch_end(self, outputs) -> None:
        self.log("foobar", 123.)

model = BoringModel()
dm = BoringData()
trainer = Trainer(fast_dev_run=True)
x = trainer.test(model, datamodule=dm)
print(x)

Expected behavior
Options:
A) None should include it. In this case, we should disable logging in these hooks under this condition.
B) Both dataloader results should include it.
C) It should be one extra item in the list.
If I had to choose, I lean towards B), but I find all the options bad.
This problem could be avoided entirely if epoch_end ran in both (A) and (B). But that would be a breaking change.
cc @carmocca @edward-io @ananthsub @awaelchli @borda @ninginthecloud @justusschock

I also vote for B.
Personally I find it consistent that epoch_end runs only in (B) if you define an epoch as a run over ALL data (which to my understanding includes both loaders).

What option did you implement?

(B)

@carmocca I also think it makes the most sense that an epoch ends when ALL data has been processed. However, I still need to run some code whenever a dataloader has processed all of its data. I couldn't find a hook for this in the docs or in the code. So, the only way I see (and don't) like is to check in the train/val/test_step method for a change of the dataloader_idx.  What do think? Is there a better way?


Copy-pasting formatted text doens't work (anymore)

Preflight Checklist

[x] I agree to follow the Code of Conduct that this project adheres to.
[X] I have searched the issue tracker for a feature request that matches the one I want to file, without success.

Describe the bug
Copy-pasting formatted text from other sources (e.g., google doc or another object doesn't work).
To Reproduce
Steps to reproduce the behavior:

Create 2 text objects;
On one change the background to another color;
Copy-paste into that object any piece of text;
See error: the current background is reset to blank.

Expected behavior
The object should preserve current formatting.
Video
https://gyazo.com/8e12cb22a405f21c0845eb89287ceff1
draw.io version 13.0.1
Desktop (please complete the following information):

Browser: Mozilla Firefox

Additional comments
Also, copy-pasting formatted text from other sources (e.g, google doc) used to work and now when pasting the formatting is removed.

Thanks for the report. This will be fixed in the next release.


Config Name Format

kebab case to camel case

Resolves #711

1/ You should not change the name of ubiquibot-config.yml 2/ I can see no changes in config names. 3/ Please make sure you mark the PR ready for review once done.

i changed price-multiplier to priceMultiplier and could you please elaborate a little on where are the config names that I am supposed to change

Shouldn't you change every config name

Shouldn't you change every config name

I'm sorry but not able to understand can you link the file?

We should change every config name in ubiquibot-config.yml and codebase to read them in src/utils/private.ts

Maybe also in default config json file

Maybe also in default config json file

True

bump @EtherealGlow cause its blocking other PR from the merge.

@0xcodercrane please have a look now

In the recent merge, we've changed the default config filename from *.json to *.ts. would you get the changes into your branch? @Sadaf-A

In the recent merge, we've changed the default config filename from *.json to *.ts. would you get the changes into your branch? @Sadaf-A

sure, I'll get to it right now

same feeling yeah. so my idea is to create a sync PR from development to main as soon as this PR merged.

I am gonna handle the merge and hotfix if needed tomorrow morning.

@rndquu would you open the config PRs in both ubiquity and ubiquibot org for the upcoming changes?

I remember pavlovcik explicitly stated that the config should be kebab-case hence this refactoring was implemented. You 100% sure that we should migrate to camel case?
From my point of view it looks like that every 6 months we refactor the bot's config from camel case to kebab case and back which doesn't bring any advantages.

@rndquu would you open the config PRs in both ubiquity and ubiquibot org for the upcoming changes?

I remember pavlovcik explicitly stated that the config should be kebab-case hence this refactoring was implemented. You 100% sure that we should migrate to camel case?
From my point of view it looks like that every 6 months we refactor the bot's config from camel case to kebab case and back which doesn't bring any advantages.

I vaguely recall a discussion we had where it was decided to finally change everything into camelCase recently because the only software that consumes this configuration file is the UbiquiBot typescript code, which expresses the same variables as camelCase.

CI doesn’t pass but the rest seem fine.

I'll fix that right away!

CI doesn’t pass but the rest seem fine.

ok will handle the merge after the conflicts resolved

https://github.com/ubiquibot/ubiquibot-config/pull/8
https://github.com/ubiquity/ubiquibot-config/pull/15

merging the both config PRs.

https://github.com/ubiquity/ubiquibot/pull/795
sync PR

#795
sync PR

merged

I had quick QAs once I merged the relevant PRs. Here are the QA issues.
Staging: https://github.com/ubiquibot/staging/issues/179
Production: https://github.com/ubiquibot/production/issues/65
So far looks good to me.

Finally


COBOL - Minor issues with literal delimiters in the COBOL textmate grammar

Development environment used

Z Open Editor version: 3.0.0
Editor Platform

[X] Visual Studio Code
[ ] Red Hat CodeReady Workspaces
[ ] Eclipse Che
[ ] Standalone Theia

Editor Platform Version: 1.74.2
Operating System: Windows 10
Java Version: 11
[ ] Related to RSE API?

RSE API Plugin version:
Zowe CLI version:
Node.js version:

Logs attached: no

Problem Description
Minor bugs in the handling of literal delimiters.
Some delimiters are not correctly recognized:

those using the apostrophe character
some prefixes

The issues are related to the textmate grammar associated with the COBOL language.
      "begin": "\"",
      "beginCaptures": {
        "0": {
          "name": "punctuation.definition.string.begin.cobol"
        }
      },
      "end": "(\"|$)",
      "endCaptures": {
        "0": {
          "name": "punctuation.definition.string.end.cobol"
        }
      },
      "name": "string.quoted.double.cobol"
    },
    {
      "begin": "'",
      "beginCaptures": {
        "0": {
          "name": "punctuation.definition.string.begin.cobol"
        }
      },
      "end": "('|$)",
      "endCaptures": {
        "0": {
          "name": "punctuation.definition.string.end.cobol"
        }
      },
      "name": "string.quoted.single.cobol"
    },
    {
      "begin": "([zZ]|[nN]|[uU])\"",
      "beginCaptures": {
        "0": {
          "name": "punctuation.definition.string.begin.cobol"
        }
      },
      "end": "(\"|$)",
      "endCaptures": {
        "0": {
          "name": "punctuation.definition.string.end.cobol"
        }
      },
      "name": "string.quoted.double.cobol"
    },

Observed behavior

Expected behavior

I propose a simplification along with a correction:
    {
      "begin": "(?:[nNuU]?[xX]|[gGnNuUzZ])?(\")",
      "beginCaptures": {
        "0": {
          "name": "punctuation.definition.string.begin.cobol"
        }
      },
      "end": "(\\1|$)",
      "endCaptures": {
        "0": {
          "name": "punctuation.definition.string.end.cobol"
        }
      },
      "name": "string.quoted.double.cobol"
    },
    {
      "begin": "(?:[nNuU]?[xX]|[gGnNuUzZ])?(')",
      "beginCaptures": {
        "0": {
          "name": "punctuation.definition.string.begin.cobol"
        }
      },
      "end": "(\\1|$)",
      "endCaptures": {
        "0": {
          "name": "punctuation.definition.string.end.cobol"
        }
      },
      "name": "string.quoted.single.cobol"
    },

or only:
    {
      "begin": "(?:[nNuU]?[xX]|[gGnNuUzZ])?([\"'])",
      "beginCaptures": {
        "0": {
          "name": "punctuation.definition.string.begin.cobol"
        }
      },
      "end": "(\\1|$)",
      "endCaptures": {
        "0": {
          "name": "punctuation.definition.string.end.cobol"
        }
      },
      "name": "string.quoted.cobol"
    },

Thanks! Happy holidays!

Hi,
The ZOE COBOL grammar also includes the following rules which are not legal for the IBM Enterprise COBOL compiler:
    {
      "match": "([hH])'\\h*'",
      "name": "constant.numeric.integer.hexadecimal.cobol"
    },
    {
      "match": "([hH])'.*'",
      "name": "invalid.illegal.hexadecimal.cobol"
    },
    {
      "match": "([hH])\"\\h*\"",
      "name": "constant.numeric.integer.hexadecimal.cobol"
    },
    {
      "match": "([hH])\".*\"",
      "name": "invalid.illegal.hexadecimal.cobol"
    },
    {
      "match": "[oO]\"[0-7]*\"",
      "name": "constant.numeric.integer.octal.cobol"
    },
    {
      "match": "[oO]\".*\"",
      "name": "invalid.illegal.octal.cobol"
    },

In 3.0.1 we only fixed the textmate. The Language Server fix will be in a future release.

Hi,
New rule in ZOE 3.0.1 :
    {
      "begin": "([bBnNuU]?[xX]|[bBgGnNuUzZ])?([\"'])",
      "beginCaptures": {
        "0": {
          "name": "punctuation.definition.string.begin.cobol"
        }
      },
      "end": "([\"']|$)",
      "endCaptures": {
        "0": {
          "name": "punctuation.definition.string.end.cobol"
        }
      },
      "name": "string.quoted.cobol"
    },

The end part should match the begin part about quote or apostrophe: I suggest to use in end part a referback to begin part.
{
  "begin": "(?:[bBnNuU]?[xX]|[bBgGnNuUzZ])?([\"'])",
  "beginCaptures": {
    "0": {
      "name": "punctuation.definition.string.begin.cobol"
    }
  },
  "end": "(\\1)|$)",
  "endCaptures": {
    "0": {
      "name": "punctuation.definition.string.end.cobol"
    }
  },
  "name": "string.quoted.cobol"
},

Fixed some of these in Z Open Editor 3.1.0. Some items listed are not support yet by IBM COBOL compiler.

Sorry but still wrong for ending delimiter wich must match opening delimiter with a referback.

Hi @phaumer
I suggest to reopen this issue.

Hi @FALLAI-Denis,
Thank you for the contributions here, we intend to fix that textmate error with the nested double quote or single quote.
However for the b and bx tokens, we reverted that change intentionally as we spoke with the IBM COBOL compiler team and they informed us that although that syntax is a part of the COBOL ISO Standard, the IBM COBOL on Z compiler does not support it. Our intention with the parser and syntax highlighting is to match as closely as possible to the IBM compiler so users are able to see the error prior to compiling.

Hi,
Ok for b an bx. I hope boolean format will soon be available in IBM Enterprise COBOL compiler.
Perhaps same for - continuation delimiter at end of string.
The textmate rule would then be:
        {
          "begin": "(?:[nNuU]?[xX]|[gGnNuUzZ])?([\"'])",
          "beginCaptures": {
            "0": {
              "name": "punctuation.definition.string.begin.cobol"
            }
          },
          "end": "\\1|$",
          "endCaptures": {
            "0": {
              "name": "punctuation.definition.string.end.cobol"
            }
          },
          "name": "string.quoted.cobol"
        },

Made the updates discussed in v3.1.1.


test.rb:1:in `': uninitialized constant Discord (NameError)

I have it in my gem file
and i ran the bundle command ;-;
Gem file
frozen_string_literal: true
source "https://rubygems.org"
git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
gem 'discord-notifier'

Hm, I haven't seen this one before. Do you have example code of how you're using it?


BitBar Doesn't Update on Assigned Schedule

I have a BitBar script named netstat.1m.sh.  It checks the status of the internet connection and displays either Up or Down in the menu bar.  It also logs each run of the script.
I expect the status to be updated every 1m.  But after a while, BitBar updates twice per minute - once at the 40 second mark and then again at the 20 second mark.

I think this is fixed in master - could you get the code and test it again!?

Tried 1.4 beta 2.  It updates at 1 minute intervals as requested.
Thanks for the fix.


support running on kcp

Changes to successfully deploy compute-operator on kcp:

Create APIResourceSchema for ClusterRegistrar and HubConfig
Use an env var for the IMAGE rather than pulling from the Pod since the pod is not yet projected back to kcp
Add env var to skip installing the webhook since Services are not yet implemented in kcp
Fix an issue where the clusterrolebinding for the service account used for the virtual workspace was overwritten by the one for compute-operator-manager

Signed-off-by: Robin Y Bobbitt<EMAIL_ADDRESS>

/lgtm


nodebuilder/p2p: Make ResourceManager configurable

Add options to configure network.ResourceManager construction (currently happens in nodebuilder/p2p/module.go with defaults)

I see 4 function we can use with ResourceManager

WithAllowlistedMultiaddr
WithMetrics
WithTrace
WithTraceReporter

Which one do you want to expose ?
Would  WithAllowlistedMultiaddr  be  configured with cfg.MutualPeers ?

@dougEfresh, ResourceManager is temporarily disabled; as per #1500, we need to enable it first before we can make configuration for it


feat(core) : reducing locks coverage to avoid potential deadlocks

Purpose of PR?:
Fixes #
Does this PR introduce a breaking change?
If the changes in this PR are manually verified, list down the scenarios covered::
Additional information for reviewer? :
Mention if this PR is part of any design or a continuation of previous PRs
Checklist:

[ ] Bug fix. Fixes #
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update
[ ] PR Title follows the convention of  <type>(<scope>): <subject>
[ ] Commit has unit tests
[ ] Commit has integration tests

@Prateeknandle this is a must for stable release. Can you please check @rksharma95's comments?
cc @daemon1024


Source must be a Jimp image

I'm trying to use the image.composite() function like this -
Jimp.read("assets/img/image1.jpg").then(function (image) {     // do stuff with the image     image.composite("assets/img/image2.png", 20, 20); 	}).catch(function (err) { 	    // handle an exception 	    console.log(err); 	});
But I get an error saying that source must be a Jimp image.
Can anyone help me with this?
Thanks.

Even if I do this -
Jimp.read("assets/img/image1.jpg").then(function (image) { var jimpImage = Jimp.read("assets/img/image2.png");     // do stuff with the image     image.composite(jimpImage, 20, 20); 	}).catch(function (err) { 	    // handle an exception 	    console.log(err); 	});
It still shows the same error.
Can anyone help?

Please use nested promise chain!

@sahil505 I ran into the same problem a few months back and I managed to solve it by simply declaring my composite file as a variable within app.js. So in my app.js file for example, I have this:
... var logo = new jimp('public/tmp/my_watermark.png', function (err, img) { 	err ? console.log('logo err' + err) : console.log('logo created and ready for use'); 	return img.opacity(0.3); }); ...
And then somewhere down the line where I have an API exposed to handle and process uploaded images, I have something like this:
... 	jimp.read(__dirname + '/public/tmp/' + filename) // where filename comes from the api call i.e.: '/api/watermark/:filename' 			.then((image)=>{ 				image.clone() 					.resize(805,jimp.AUTO) 					.crop(0,0,805,450) 					.composite(logo, 25, 20) 					.write(__dirname + '/public/tmp/slider-01.jpg', (err, success)=>{ err ? console.log(err) : console.log('image resized and saved successfully\n'+success)}); 			}); ...
hope this helps


Blurry fonts on glium renderer

Hey, thanks for making this library.
I tried loading a custom TTF font using imgui-sys, but the imgui-glium-renderer then renders blurry text, like this:

The cause seems to be that glium sets minify_filter to MinifySamplerFilter::LinearMipmapLinear by default. Text renders correctly if this property is set to Linear or Nearest instead (imgui's bundled examples use Linear).
The text seems to render fine on the gfx renderer.

Thanks!


Make the ipython interactive window can be scrolled using keyboard shortcut(command palette) just like in terminal

Hi! I was wondering if we can make the jupyter interactive window just scrolls like in terminal,
there are multiple commands in palette terminal: scroll something that you can find to better support keyboard shortcut to scroll over the terminal (and no need to move my hand from keyboard to mouse, as you can use keyboard to scroll over editor group, move focus from one editor group to another, but can't scroll over in jupyter interactive window).
So my feature request is: implement the equivalent of command palette terminal: scroll xxx for jupyter interactive window, as one would expect the interactive window works like a interactive REPL in terminal naturally.
Thanks for your time reading and responding my request!

Thanks for the suggestion. This would actually be implemented in the VS code core. Seems like the terminal command could be used.


MRG: Refactor OFF_SCREEN variable

This PR prevents setting pyvista.OFF_SCREEN globally (i.e. in tests, ... etc) by managing a renderer MNE_3D_OFF_SCREEN variable instead.
Also, before #7266, the tests were done offscreen by default with _use_test_3d_backend() so this PR fixes this.
This variable is still set globally in _testing_context() (this one restores the original value) and in the doc which is fine by me.

What do you think @larsoner , @agramfort ?

@larsoner let us know what you think. I don't fully grasp the consequences of this but if it works and CIs are green it cannot be too bad :)

Actually it's fine to set it globally but we just have to remember to set the original value. My previous changes brought confusion/redundancy of two variables doing the same thing.

Makes me think that we can use a contextmanager for that.

I trust your judgement here.

I would say it's good enough now. We can always make it nicer later.

@larsoner merge if you're happy

(but we can do that in another PR, since it's not a problem with these changes specifically)

Thanks @GuillaumeFavelier


[PE-D][Tester B] Use of sliding window in UG

It might be easier to add these available commands in a normal text box, as the pdf format limits the user from sliding to see the full command.
As a result of this the add command is blocked.

Labels: severity.VeryLow type.DocumentationBug
original: Rishit02/ped#17

Not sure how to implement this as the pdf is just created straight from the website

add a new line for long codes


Fixes regarding Issue #30

Closes #30

Looks real good to me, thanks for your contribution, @fishy !


Getting stone from Crates

Hey,
im Getting Stone from some Rewards. But i dont get a Error.
I dont know what im doing wrong.

Hello if you get stone from a prize its because something went wrong when the reward item was being made. Check the reward you won and see if there is somthing wrong with it. If you dont see a problem pastebin ur crate file and post the link to it here.


Import Error

Hello,
I want to use this code, but I'm facing three errors:

when I try to execute __init__.py, I get this error :

from .aes import AES, AESModeOfOperationCTR, AESModeOfOperationCBC, AESModeOfOperationCFB, AESModeOfOperationECB, AESModeOfOperationOFB, AESModesOfOperation, Counter
ModuleNotFoundError: No module named '__main__.aes'; '__main__' is not a package

when I try to execute test-aes.py, I get this error:

from pyaes import *
ModuleNotFoundError: No module named 'pyaes'

Also if you can tell me how can I import an image in this code.
Can anyone help me to fix these errors, I'm working on image encryption using AES.


[Help needed] unable to get the right CSS Filter

Hi,
I want to add this site to my monitor: https://kb.synology.com/en-global/DSM/tutorial/supported_third_party_packages_beta
The only result I received is the bottom line :(
What I tried to used was
.tutorial-page
.kb_detail_table
.kb_accordion_content

sadly it doesn't work, how do I add this page? Thank you.

Hi, the page is using javascript to render, you will need to try the experimental javascript-browser branch
just use a chrome plugin to test if the page renders without JS :)


regexp copy part outdated

// Calling Longest on one copy does not affect another.
//
// Deprecated: In earlier releases, when using a Regexp in multiple goroutines,
// giving each goroutine its own copy helped to avoid lock contention.
// As of Go 1.12, using Copy is no longer necessary to avoid lock contention.
// Copy may still be appropriate if the reason for its use is to make
// two copies with different Longest settings.
func (re *Regexp) Copy() *Regexp {
	re2 := *re
	return &re2
}```

Yep, thx


Add JANSI v10.4

Changes to a cask
Adding a new cask

[x] Checked there aren’t open pull requests for the same cask.
[x] Checked there aren’t closed issues where that cask was already refused.
[x] When naming the cask, followed the token reference.
[x] Commit message includes cask’s name.
[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] brew cask install {{cask_file}} worked successfully.
[x] brew cask uninstall {{cask_file}} worked successfully.

@vitorgalvao What were we doing with keyboard layouts?

I think we’ve been accepting them.

Actually, I was lost what to do with the version. This is because, JANSI don't have specific version numbers despite layout exists for each version of OSX.
To be precise, the layouts exists as follows:

JANSI-MacOSX10.4.zip is for OSX10.4 to 10.11
JANSI-MacOSX10.2.zip is for OSX10.2 to 10.3
In OSX10.0 to 10.1, only procedure of manual

version '10.4' is what I gave selfishly while I think that might be inappropriate.

Anything lower than 10.6 shouldn’t be bothered with, so don’t worry about that other one.

I understand. I will fix this cask to version :latest, sha256 :no_check and relevant part.


fix: Allow Node titles for LangChain nodes

Include Langchain nodes path when retrieving nodes display names

@netroy Can you please update this release doc if it's outdated?
https://github.com/n8n-io/validate-n8n-pull-request-title#release


Sanitize lectures of co-author / co-contributor statements

remove all co-author statements --- has to be done carefully because the wording varies so it's hard to search.

As part of the transfer to new license we need to check all rst files and remove co-author statements. Presentations are varied so will require going through the first ~10% of each lecture rst file looking for statements like:
pandas_panel.rst contains Most of this lecture was created by Natasha Watkins
This will resolve item 2 in #946

@sayaikegawa please let me know if you are available to help with this task. Thanks.

Hi @mmcky , I'm happy to do this.

thanksk @sayaikegawa

Hi @mmcky , When I make PR, do you think that it is good idea to remove the names of all lectures's rst file for 1 PR? or removing a name of each rst file for each PR?

hi @sayaikegawa I think in this case it would be ok to do a single PR that removes them all across the files. I think it is unlikely to cause merge conflicts with other work as they are usually on a single line. If a conflict arises I can help resolve it.

Thank you @mmcky , then I will make a single PR.

Hi @jstac and @mmcky , would it be ok to remove author of lectures and codes like below as well? And should I wait making PR until the split finishes?

would it be ok to remove author of lectures and codes like below as well?

hi @sayaikegawa good question. I think removal of all names (code and rst) is the way to go. Good find.

And should I wait making PR until the split finishes?

how far along are you? Feel free to keep going on this task as I can merge in the changes to the split repositories later on.

Thank you @mmcky , I think I can finish this by tomorrow evening at the latest.

Thanks @sayaikegawa.  Names are to be removed everywhere, as @mmcky says.
By the way, could you please keep a list of the names that you remove?  Then we can try to make sure that these people are recognized for their contribution in some way.

Thank you @jstac . I'll make the list.


One tap for toolbarOptions and draggable cursor in TextField widget on iOS

Use case:
TextField on iOS behaves in a confusing way to native users in which they can think it was a bug.
Current behavior:

double tap on cursor to show toolbarOptions
long press before cursor can be draggable

Expected behavior:

one tap on cursor to show toolbarOptions
the cursor is already draggable, no long press needed before

Step to reproduce:
Run an app with a TextField widget on an iOS simulator/device, e.g.
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Demo',
      home: Scaffold(
        appBar: AppBar(title: Text('Demo')),
        body: Center(
          child: TextField(),
        ),
      ),
    );
  }
}

Hi @tsusubk
I can reproduce the issue
I see there's an open issue addressing the case you described.  https://github.com/flutter/flutter/issues/62252 but it is missing custom drag point so I am gonna comment there
Please follow up on that issue, I'm closing the current one as a duplicate.
If you disagree, please write in the comments and I will reopen it.
Thank you


FEATURE REQUEST: cpu percentage should be calculated with respect to "cpu request/limit"

Currently the CPU percentage is calculated with respect to the system cpus.
In the word on VMs and distributed system, the actual CPU of a specific node is not that important.
It would be better if there will be an option to show that as percentage with respected to "cpu limit/request" as specified by the pod

Duplicate of #2760?

Also note I have proposed that we use Prometheus as a source for metrics in future, so perhaps a good opportunity to look at how we can source Kubernetes resource requests and limits from Prometheus instead of adding more numbers to Scope reports.


chopstix driver: error: Tracer:: track_mmap: Child did not stop

chop trace -begin 100 -end 300 ./hello_world
Error occurs：chopstix driver: error: Tracer:: track_mmap: Child did not stop
I find the status_ get 0 after waitpid, and the correct stopped signal should be 5 (status_ = 1407).

The Child did not stop error is the result of not providing the right set of begin addresses. If child did not step, it is because the -begin address of 100 is never executed. You might need to use other set of addresses. Please check the updated documentation on how to do so.  To trace the function my_func you can use:
chop-marks ./hello_world my_func

to get the begin/end addresses to use. Closing the issue.


tailscale: init at 0.96-33

Motivation for this change
This PR introduces a module for enabling Tailscale—the easiest, most secure way to use WireGuard and 2FA.
CCing @danderson of Tailscale and also a regular contributor to Nixpkgs to help field any questions.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Verified that the derivation builds correctly, and that the version number matches other Tailscale distro releases (the versioning is a bit fragile upstream right now, so it's not easy to figure out which commit hash == which version number).


Icons doesn't work in Windows

The reason for this is because the path of the url, contains \ backslashes, instead of forward slashes. This is because of the way ${__dirname} works and how windows handles paths.

Fixed in 5a43886


Use a patched qiskit-ibm-runtime when testing Qiskit main

This change runs the Qiskit main branch tests against a fork of Qiskit runtime with some Qiskit<1 code (and the qiskit-ibm-provider dependency) removed. It can be undone once qiskit-ibm-runtime releases a version compatible with Qiskit 1.0.

This PR depends on #1384.  It changes the qiskit-ibm-runtime dependency to a fork I made. Here are the changes I had to make on top of qiskit-ibm-runtime's current main branch. These changes were partly just patching out code we didn't need so we wouldn't get import errors (they are not the way qiskit-ibm-runtime should actually be updated for Qiskit 1.0).


Import Error

Hi
when I run README demo, it shows error
from ._racplusplus import rac, test_rac, simple_pybind_io_test, _pairwise_euclidean_distance, _pairwise_cosine_distance
ImportError: dlopen(python3.8/site-packages/racplusplus/_racplusplus.cpython-38-darwin.so, 0x0002): symbol not found in flat namespace '___kmpc_fork_call'
Do you know how to fix it?
thanks

and when I run demo it show second error:
TypeError: rac(): incompatible function arguments. The following argument types are supported:
1. (arg0: numpy.ndarray[numpy.float64[m, n]], arg1: float, arg2: object, arg3: int, arg4: int, arg5: str) -> numpy.ndarray
dont know why

Hey thanks for bringing this to our attention. Do you mind sharing what architecture you're running on?

Sure
1、the first question I ran it on MacBook Pro M2
2、And second question about demo cant run, if I del param_name it will work, like:
not work
import racplusplus
X = np.random.random((10000, dim))
labels = racplusplus.rac(
X, max_merge_distance=.24, connectivity=None, batch_size=1000, no_processors=8, distance_metric="cosine"
)
work
import racplusplus
X = np.random.random((10000, dim))
labels = racplusplus.rac(
X, max_merge_distance=.24, None, 1000, 8, "cosine"
)
running on Linux

I think there might be some system conflicts with OpenMP, or maybe that wasn't packaged correctly. Looking into it!

In the meantime, can you try using this within a conda environment with openMP installed? I think that might be a temporary fix for you

I think I have openMP, Maybe it's not the problem here


Policy exceeds the maximum allowed document size

do you have a solution ?

MinIO has  a policy document size limit of 20KB and this means that this bucket has policies bigger than that.
You can do
mc policy get-json myminio/bucket

Modify the policy json to how you want it to be and make sure that it is less than 20KB and then do
mc policy set-json /path/to/the/json myminio/bucket

Closing this issue as answered, please feel free to reach out to us at https://slack.min.io for further such questions


Expose endpoint type

Endpoint type should be exposed because it is needed to connect a private secrets manager.
Affected modules

Terraform CLI and Terraform provider versions

Terraform version:
Provider version:

Terraform output

Debug output

Expected behavior

Actual behavior

Steps to reproduce (including links and screen captures)

Run terraform apply

Anything else

By submitting this issue, you agree to follow our Code of Conduct

PR merged. Closing issue.


Fixed minor typos

Docs Build status updates of commit d89bf2e:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

Line 136: [Error] Restore nuget package W:\d2e5-s\.optemp\dependentPackages\Microsoft.DocAsCode.ECMA2Yaml\packages.config in folder:W:\d2e5-s\.optemp\packages failed, possibly due to transient errors from nuget servers. Please retry building your content. If the issue still happens, open a ticket in https://SiteHelp and include the build report and the following error message for our team to troubleshoot: Errors in packages.config projects     Unable to find version '1.0.728' of package 'Microsoft.DocAsCode.ECMA2Yaml'.       C:\Users\ContainerAdministrator\.nuget\packages\: Package 'Microsoft.DocAsCode.ECMA2Yaml.1.0.728' is not found on source 'C:\Users\ContainerAdministrator\.nuget\packages\'.       https://docfx.pkgs.visualstudio.com/docfx/_packaging/docs-build-v2-prod/nuget/v2: Package 'Microsoft.DocAsCode.ECMA2Yaml.1.0.728' is not found on source 'https://docfx.pkgs.visualstudio.com/docfx/_packaging/docs-build-v2-prod/nuget/v2'.
Line 136: [Error] Restore nuget package W:\d2e5-s\.optemp\dependentPackages\Microsoft.OpenPublishing.CommonPlugins\packages.config in folder:W:\d2e5-s\.optemp\packages failed, possibly due to transient errors from nuget servers. Please retry building your content. If the issue still happens, open a ticket in https://SiteHelp and include the build report and the following error message for our team to troubleshoot: Errors in packages.config projects     Unable to find version '1.0.224' of package 'Microsoft.OpenPublishing.CommonPlugins'.       C:\Users\ContainerAdministrator\.nuget\packages\: Package 'Microsoft.OpenPublishing.CommonPlugins.1.0.224' is not found on source 'C:\Users\ContainerAdministrator\.nuget\packages\'.       https://docfx.pkgs.visualstudio.com/docfx/_packaging/docs-build-v2-prod/nuget/v2: Package 'Microsoft.OpenPublishing.CommonPlugins.1.0.224' is not found on source 'https://docfx.pkgs.visualstudio.com/docfx/_packaging/docs-build-v2-prod/nuget/v2'.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit d89bf2e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/controls/InfiniteCanvas.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Add version to Application Insights

This will help us identify if a particular version causes a problem.

Codecov Report

Merging #2585 (11be625) into main (8be6e3c) will decrease coverage by 5.10%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #2585      +/-   ##
==========================================
- Coverage   29.89%   24.78%   -5.11%
==========================================
  Files         289      120     -169
  Lines       35771    12490   -23281
==========================================
- Hits        10692     3096    -7596
+ Misses      25079     9394   -15685

Impacted Files
Coverage Δ

src/agent/win-util/src/jobs.rs

src/agent/onefuzz/src/libfuzzer.rs

src/agent/onefuzz/src/syncdir.rs

...ent/onefuzz-task/src/tasks/report/dotnet/common.rs

...nt/onefuzz-task/src/tasks/fuzz/libfuzzer/common.rs

src/agent/libclusterfuzz/src/lib.rs

src/agent/onefuzz/src/process.rs

src/agent/onefuzz/src/jitter.rs

src/agent/coverage/src/code/tests.rs

src/agent/onefuzz/src/monitor/tests.rs

... and 159 more

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

Can't find this info anywhere in AI logs…

I'm not sure why it wasn't working for you (seems right to me?) but we could also add a tag with the OneFuzz version here: https://github.com/microsoft/onefuzz/blob/8be6e3c946965a30b902ec5f76000ddfc47ba3c8/src/ApiService/ApiService/Log.cs#L74


Extend slackbot functionality to greet new users

Our slack bot prototype could be extended to automate a lot of our onboarding process.  I think right now it involves a lot of change, i.e. people see that somebody new has logged in and they all say hello!  However, if a veteran is in a weird time zone or everyone just misses it, they could get no welcome at all, get confused and leave.  Our on-boarding experience should be more consistent, and the only way to do that without a support team is to automate.
Right now I think we're at the brainstorming stage, where we should discuss:

What the bot will say to each new user.  I propose the bot sends a quick shout out on the general channel saying welcome to Operation Code.  Then the bot should PM the user an HTML welcome sheet with links to FAQs, docs, and a testimonial from a new user to motivate them.

The new user might have some questions that a slack bot can answer.  Simple stuff like What is operation code?, who founded operation code?  How do I get a job? I was playing around with this API https://wit.ai/, but I think there's lots of stuff out there we can use to do NLP on user requests.

Eventually this slackbot could be extended to do some analytics.  I.e. it could do a random survey and ask users why they joined, what their goal is,  and save this info to a file/ db.  This could be used by the development team to present to possible sponsors.

Will review and break this up into sub-issues later in the week.

@dengjonathan @jeremysb1 - can we generate some copy for this? I can get this going now.

https://docs.google.com/document/d/1y8hwuH75rZXaOr9cfAnRmD05KDI5RUV_vQIGdvzfj3k/edit?usp=sharing
This is just initial Slackbot copy to introduce new users on the general channel. More is forthcoming to address onboarding.

Copy is up and bot is online in Heroku. Closing this, additional work will be in separate tasks.


[BULK PR] Tracking: Temporary Directory Hijacking

@JLLeitschuh you've started to close some of your PRs without explanation:

https://github.com/jenkinsci/google-oauth-plugin/pull/151
https://github.com/sanity/tahrir/pull/65
https://github.com/aesanch2/salesforce-migration-assistant/pull/12
https://github.com/andyglick/jenesis4java/pull/2

Is there a reason for this? Have you decided the issues aren't legitimate, or is there some other reason you're closing them?

I accidentally generated duplicates due to a bug in the generation logic. I wanted to close the duplicates and leave the correct one didn't bother maintainers as much.
Sorry about the confusion, and sorry about the duplicate PR, I was trying to correct the mistake

I accidentally generated duplicates due to a bug in the generation logic. I wanted to close the duplicates and leave the correct one didn't bother maintainers as much.
Sorry about the confusion, and sorry about the duplicate PR, I was trying to correct the mistake

It's all good -- some of them you did say "closing in favour of  number", but some were just "closed".


basic tutorial batch correction

I think the tutorial is still a bit unclear. How do you let scVI correct batches for any dataset? If you dataset has non-zero batch indices will it automatically correct batches?

Indeed. If one works with a .h5ad dataset, where would scvi look for the batch information? Would it look for 'batch_indices' in an adata.obs['batch_indices'], and what would it recognize there? I am trying to get this to work by adapting the 'interaction with scanpy' notebook but I am not seeing scvi reading the batch information. Any suggestions?

https://github.com/YosefLab/scVI/blob/05920d1f85daa362d4fb694e588ab090bc84e207/scvi/dataset/anndataset.py#L28
You can tell the dataset constructor which key has batch information. Note these should be integers. To be safe you could just add an obs key called batch_indices that has ints and that will be read by default.

Thank you for your explanation and suggestions. When adding batch_indices as an obs key to my dataset and defining it in the function call scviDataset = AnnDatasetFromAnndata(adata, batch_label = "batch_indices"), the batches are recognized correctly. However, I then get the following WARNING: - scvi.dataset.dataset | This dataset has some empty cells, this might fail scVI inference.Data should be filtered with my_dataset.filter_cells_by_count(), which is a bit strange as I had pre-filtered the dataset in scanpy and QC did not show any empty cells. And another error at the point when writing adata.obsm["X_scvi"] = scvi_latentwith: ValueError: Value passed for key 'X_scvi' is of incorrect shape. Values of obsm must match dimensions (0,) of parent. value had shape (6244, 6) while it should have had (14693,). That is obviously the result of the downsampling of the dataset when processing and writing it to the scviDataset in the function call listed above. How would I extract myself out of this snag?

This can only occur when some of the cells in adata.X are 0 (i.e., some entries of adata.X.sum(axis=1) are 0. Maybe there is some weird edge case - is the smallest number in batch_indices 0 (it should be)?
Also, is there a reason you're only using 6 latent dimensions?

Thank you for your comments. I looked at this some more: the issues I observed went away by restarting jupyter lab. With that I could test higher latent dimensions and for the specific dataset, I settled on values between 10 and 20. I just tried the notebook on another dataset and I ran into the following (reproducible and not kernel-issue): at scviDataset = AnnDatasetFromAnnData(adata_orginal, batch_label = 'batch_indices), I get an AttributeError: 'NoneType' object has not attribute 'shape'. I think it has something to do with initialize_self_attribute in dataset.py. The dataset processes fine with other means. How can I troubleshoot this?


Support string values for set metric

From datadog documentation:

Sets are used to count the number of unique elements in a group, for example, the number of unique visitors to your site

therefore you would expect to be able to insert 'user id' for example as a value of some set metric that counts the number of unique users.
Since the metric function excepts only numeric values that feature can't be achieved.

Will fix. Good catch!

https://github.com/garrettsickles/DogFood/pull/14

https://github.com/garrettsickles/DogFood/pull/19


Default use random port allocator for runtime controllers

Ⅰ. Describe what this PR does

Default to using random port allocator for runtime controllers.
Bitmap-based port allocator is still an option that can be set in runtime controllers' command argument (e.g. --port-allocate-policy=bitmap)

Ⅱ. Does this pull request fix one issue?

NONE
Ⅲ. List the added test cases (unit test/integration test) if any, please explain if no tests are needed.
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

/test fluid-e2e

@TrafalgarZZZ @cheyang

@TrafalgarZZZ @cheyang Does this PR need to change the value of runtime.portAllocatePolicy from bitmap to random in the fluid chart?

@xliuqq LGTM. Added configurable properties in values.yaml of Fluid's chart. Set them to random by default.

/lgtm
/approve


Initial OpenAPI v3 support

Resolves #54
Continuing work from @stanislav-chetvertkov on supporting the OpenAPI v3 specification.

[x] Compiles with some shims, reflection, and casting
[x] Tests all pass
[x] Reducing reliance on casting
[ ] Adding dense OpenAPI v3 specification test

No API changes are expected to the consumer API, meaning that while OpenAPI 3.x specifications are able to be used to generate clients and servers, full and correct adherence to the specification is not a goal of this PR.
Check the OpenAPI 3.x milestone for full support.

[ ] Rebased off master
[ ] Ensured that the source diffs of the sample project are identical between master and this branch

There are some known omissions from this initial attempt at OpenAPI v3. While I'm sure there are others, this is the initial list:
#/components/requestBodies are not considered at all
This will require a complete overhaul of how Content-Types are handled. Instead of hacking things together, I'd much rather have a more clear strategy of supporting different content types natively in generated clients and servers. This may coincide with work to unify identical definitions between different runs as well.
Multiple Content-Types for individual routes
Currently, to the best of our abilities, the new structure is shimmed into the old structure. This is likely not going to work for anything but the most trivial of OpenAPI v3 schemas. v2 should continue to work unchanged, as the v2 -> v3 converter seems to do a good job maintaining compatibility.


[yaml] Replace pipeline_spec with yaml_pipeline in main.py

This PR replaces the --pipeline_spec and --pipeline_spec_file parameters when running main.py to --yaml_pipeline and --yaml_pipeline_file, respectively. The old parameters will still be available as aliases for backwards compatibility.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

R: @robertwb


Tests break after upgrade to jest 20.0.0 from 19.0.2

Running jest 20.0.0, fresh node_modules and --no-cache
Do you want to request a feature or report a bug?
Bug
What is the current behavior?
Tests run fine and show correct behaviour with jest 19.0.2, but break in 20.0.0.
Running test with fit or it.only makes the test pass again.
If the current behavior is a bug, please provide the steps to reproduce and either a repl.it demo through https://repl.it/languages/jest or a minimal repository on GitHub that we can yarn install and yarn test.
git clone https://github.com/presidenten/vuex-plus.git
cd vuex-plus
yarn

 node_modules/.bin/jest --config=.jestrc.json --no-cache src/api/map.spec.js
# "should return local getters" test passes

yarn upgrade<EMAIL_ADDRESS><EMAIL_ADDRESS>node_modules/.bin/jest --config=.jestrc.json --no-cache src/api/map.spec.js
#  get same issue as https://github.com/facebook/jest/issues/3499

nano .jestrc.json
# change "<rootDir>/src/**/?(*.)(spec).js?(x)" to "**/?(*.)(spec).js?(x)", save & exit

node_modules/.bin/jest --config=.jestrc.json --no-cache src/api/map.spec.js
# "should return local getters" test fails

nano +57 src/api/map.spec.js
# change `it` to `fit`, save & exit

 node_modules/.bin/jest --config=.jestrc.json --no-cache src/api/map.spec.js
# "should return local getters" test passes

What is the expected behavior?
Tests passing in 19.0.2 should continue to work in 20.0.0, also running tests with or without fit should not make a difference to whether the test passes or not.
Please provide your exact Jest configuration and mention your Jest, node, yarn/npm version and operating system.
Jest config:
{
  "bail": true,
  "testMatch": [
    "<rootDir>/src/**/?(*.)(spec).js?(x)"
  ],
  "moduleFileExtensions": [
    "js",
    "json",
    "vue"
  ],
  "clearMocks": true,
  "resetMocks": true,
  "resetModules": true
}

node version 6.9.1
yarn version 0.17.10
osx 10.12.4

Looks like a regression after rewriting our Jasmine bindings.
As a workaround for now, don't use this in your tests or reset the values. It currently gets shared between functions in the same describe block, so your this.instance = 'bar' set in first test is preserved in a following one, where you assume it to be empty (that's why it pass as a single test).

Rewriting the tests to pass an object to xyz.call() instead of passing this, solved the problem.

Closing, we'll discuss this in relevant PR.


[Feature Request] Add number of effective sub-stats of artifacts

AFAIK when talking about the value of artifacts, the number of effective sub-stats is more easy to understand and more commonly used compared with RV%. (Sorry, effective sub-stat is what it's called in Chinese theorycrafting community. I don't know what should it be called in English community. Effective roll? Valid roll?)
The calculation method should be in consistent with RV filter. And if HP, ATK, or DEF (not %) is selected, it should be converted to corresponding % when calculate (because these small items are usually not very useful, and thus it doesn't make sense if they are calculated using the same method as others).
For example, for the following artifact:

If ATK%, Crit Rate, and Crit DMG are selected in RV Fiter, the corresponding number of effective sub-stats should be 31.1%/6.6%+2.7%/3.3%=5.5, where 6.6% and 3.3% is the average value of one corresponding sub-stat.
And if ATK, ATK%, Crit Rate, and Crit DMG are selected in RV Filter, and the base ATK of this character is 835, the corresponding number of effective sub-stats should be 31.1%/6.6%+2.7%/3.3%+(37/835)/5.0%=6.4.
I suggest to show the total number of effective sub-stats of all the equipped artifacts in the RV part of character overview page under the 'Current Roll Value' , like this:

and to show the number of effective sub-stats of a single one under 'Current Roll Value' of it, like this:

I don't really like the notion of using average as the denominator. For 5*, a max roll would be like 1.176, and a min roll would be 0.8235. Neither of these are intuitive numbers. in RV, min/max is 70%/100%.
The issue with roll normalization is that you are making the assumption that all substat rolls are of equal value, and following that assumption, you convert one to the other, in the context of a character's base stats. What you are asking for, is kind of like, 10lb oranges + 10kg apples = 20 fruit, which doesnt really make sense. Even if you put numbers together in a way to form a final number, if the units are wrong, your final number is just a number that makes no sense.
For example, lets say we use RV normalization of 1max roll of HP%(100%RV => 5.83%) and 1 max roll of HP(100%RV => 298.75), using a base HP of 10000. Say we have
HP -> HP% => 298.75/(100005.83%) + 100%RV = 151.24%NRV
HP% -> HP => (100005.83%)/298.75 + 100%RV = 295.14%NRV
Which NRV is the correct one?

@frzyc Thanks for your reply.
No, there's no correct one. It's more of a practice than a standard. Players regard HP/ATK/DEF as almost useless, so HP%/ATK%/DEF% should be used for normalization. The problem of RV% is that the following two artifacts have exactly the same RV%, but of course the second one is almost useless compared with the first one (unless your character and weapon are both lv1). That's why I proposed the calculation method above.

This method is widely used in Chinese theorycrafting community. For example, 24 Rolls (e.g. 6 ATK%+18 Crit) is the most common assumption for an on-field dps in calculation (HP/ATK/DEF are not taken into consideration). It's true that the average is not intuitive. But when the number of samples is large enough, it should accurately reflect the overall trend.


[FLINK-18655][flink-runtime] Set failOnUnableToExtractRepoInfo to false for git-commit-id-plugin

What is the purpose of the change
This pull request sets failOnUnableToExtractRepoInfo to false for git-commit-id-plugin in module flink-runtime. More details can be found in the jira description: FLINK-18655.

We must force the failure at the very least in the release profile.

@tillrohrmann @zentol Thanks a lot for the review. Merging this, and will address the checking problem during the release in another jira.


modal shell uses container_exec

Noticed there was a lot of code duplication across modal shell and container_exec. The code was really hard to follow, with both calling connect_to_terminal eventually with two functions that had very specific call signatures (e.g. connect_to_terminal would call a function that was passed in with an event that it created).
This PR makes it so that modal shell just does the equivalent of container exec in a separate process.
Still not quite done:

[x] Fix tests
[x] Confirm error handling still works
[x] Figure out what to run in the main container process — does sleep infinity work on all distros? It's possible that makes this approach unviable.

I'm not familiar with this code but this definitely looks like a huge simplification so 👍

@prbot approve

@prbot approve

👍


from_networkx and to_networkx doesn't return the right result.

🐛 Bug
When I use from_networkx and to_networkx following each other I don't get the right answer. As I expect to get the same output and input.
To Reproduce
from torch_geometric.utils import *
pos = torch.tensor([[1,1],[0,0]])
edge_index = torch.tensor(([[0],[1]]))

G = to_networkx(Data(pos=pos, edge_index=edge_index))
data = from_networkx(G)

print(from_networkx(G).pos is None)
True

I expect to have the pos atribute unchanged.
Environment

OS: Ubuntu 18.04
Python version: python 3.7.7
PyTorch version:1.4.0
CUDA/cuDNN version:101

Easy fix :)
G = to_networkx(Data(pos=pos, edge_index=edge_index), node_attrs=['pos'])


Polygon not appearing

On adding the option to create a polygon using particles of an svg image. But, nothing appears.
These are the settings:
polygon: {
enable: true,
type: 'inside',
move: {
radius: 10
},
url: "/logo.svg"
}
The logo.svg is in the same directory of the react component that is calling the

Hi @trishantpahwa,
The polygon options requires "pathseg" library in some browsers (Chrome is one of them)
You can fix that just with this
import "pathseg";

You can checkout a CodeSandbox sample here: https://codesandbox.io/s/react-particles-js-masking-background-forked-vc3v2?file=/src/App.js

I am still not able to load the svg. :(
Sandbox


Add .hound.yml file to repository root

Per Hound CI configuration documentation:

“Hound will look for a custom configuration file named .hound.yml in the root directory of your project. Using .hound.yml you can tell Hound which linters to enable or disable, specify paths to files that provide custom style rules, and determine which files/directories to ignore.

Add such a configuration file to the root of the Cilium repository. We can use this to ignore the autogenerated API files / autogenerated K8s code.

Unfortunately, the ability to ignore files is not available for Golang. The Hound docs make it seem like this is the case for all linters they use, but this is not true.
See: https://github.com/houndci/go/issues/13

Turns out that golang actually updated golint to ignore autogenerated files:
The autogenerated code in api/v1 contains the comment format that golint dectects to ignore autogenerated code. I emailed Hound and asked them when they should update golint on their side so that we stop getting Hound barking at autogenerated code. This is the reply:

Hey there! Thanks for reaching out, and sorry for the trouble!We are looking into getting golint updated here soon, which should take care of the issue.  Once we have it updated, I'll let you know right away!Please let me know if you need help with anything else in the meantime!


A script that automatically patches the inputconfig json

For non-devs going to app data and editing a json might be too much.
On the flipside, then we would need to introduce a new config file if we don't want to hardcode the controls to wasd...
Maybe just keep it?.. Or make it some kind of wizard that asks for keys?

Maybe we can automate this part in the DLL as well? Then it would be one less step to do.

Idea discarded for now. Not really worth the effort. Now that the json file is provided for download, users should be fine.


Loot cache has items removed when a bot hits an item limit, resulting in all subsequent bots missing said item

            if (itemSpawnLimits)
            {
                if (this.itemHasReachedSpawnLimit(itemToAddTemplate, botRole, itemSpawnLimits))
                {
                    // Remove item from pool to prevent it being picked again
                    delete pool[weightedItemTpl];

                    i--;
                    continue;
                }
            }

BotLootGenerator.ts addLootFromPool()

Originally written by Kaeno

https://dev.sp-tarkov.com/SPT-AKI/Server/commit/f834d14928f5ad3a7d22e6f3d4251d731d203857 Should be fixed.

Originally written by Kaeno


Desktop shortcut

Hi! I've started using iromsgl as part of a project with the Irish Film Archive and while installing I noticed that when I input:
python C:\Iromlab_Iromsgl\iromsgl-main\iromlab-configure.py
the following prompt appears:

as well as:

Is this specific to iromsgl or is there something that I can do to get the desktop shortcut to work? Thanks!

Try this https://github.com/KBNLresearch/ipmlab/commit/0137a5ce1470d58b2850cf916d7554212c8ab5d8 (tested for --user install, needs testing for global install)

Reminder to self - already patched Ipmlab changes back into Iromsgl: https://github.com/KBNLresearch/iromsgl/commit/a60c96bd3f65133eec891718043a2e4edea26176.
TODO: finish packaging, upload to PyPi.

@bitsgalore Not to worry about any delay. I was using the command line to launch but have created my own desktop shortcut in the meantime. I'm using it to great effect on a particular project for the IFI. Thank you so much for creating it! Looking forward to the packaged version!


moving window to space using id doesn't work

Window untiles and then retiles without moving to new space

Pretty sure this used to work before, right?

yup

Well that is just great. Don't even remember changing anything that could break this.

hm.. dont think that fixed it. many of my binds are not working now.

Everything works fine for me after that push.

The reason for this bug is that hotkeys are being executed on the main thread, where as I needed the MoveWindowToSpace command to force the other (appropriate) threads to block until this action finished.
The fix I added should not cause any other issues, and everything does work as expected on my end.

ah, it for me it works until 368413c. not sure why. here are some of the binds that aren't working:
# Give Focus To Window
kwmc bind cmd+alt+ctrl-left window -f west
kwmc bind cmd+alt+ctrl-right window -f east
kwmc bind cmd+alt+ctrl-down window -f south
kwmc bind cmd+alt+ctrl-up window -f north

# Focus next/previous monocle sub-tree
kwmc bind cmd+alt+ctrl-tab window -fm next
kwmc bind cmd+alt+ctrl+shift-tab window -fm prev

# Swap Focused Window in direction
kwmc bind cmd+alt+ctrl+shift-left window -s west
kwmc bind cmd+alt+ctrl+shift-down window -s south
kwmc bind cmd+alt+ctrl+shift-up window -s north
kwmc bind cmd+alt+ctrl+shift-right window -s east

# # Detach Focused Window And Reinsert In Direction
# kwmc bind cmd+alt-up window -m north
# kwmc bind cmd+alt-right window -m east
# kwmc bind cmd+alt-down window -m south
# kwmc bind cmd+alt-left window -m west

# Move window in direction and maintain size
kwmc bind cmd+alt-up sys ~/.kwm/scripts/move north
kwmc bind cmd+alt-right sys ~/.kwm/scripts/move east
kwmc bind cmd+alt-down sys ~/.kwm/scripts/move south
kwmc bind cmd+alt-left sys ~/.kwm/scripts/move west

# Move Focused window between spaces
kwmc bind cmd+alt+shift-left window -m space left
kwmc bind cmd+alt+shift-right window -m space right
kwmc bind cmd+alt+ctrl+shift-1 window -m space 1
kwmc bind cmd+alt+ctrl+shift-2 window -m space 2
kwmc bind cmd+alt+ctrl+shift-3 window -m space 3
kwmc bind cmd+alt+ctrl+shift-4 window -m space 4
kwmc bind cmd+alt+ctrl+shift-5 window -m space 5
kwmc bind cmd+alt+ctrl+shift-6 window -m space 6
kwmc bind cmd+alt+ctrl+shift-7 window -m space 7
kwmc bind cmd+alt+ctrl+shift-8 window -m space 8
kwmc bind cmd+alt+ctrl+shift-9 window -m space 9
kwmc bind cmd+alt+ctrl+shift-0 window -m space 10

Can confirm, your binds do not work after the commit for fn. What the actual fuck.

maybe has something to do with the fact that fn has bindings by default for certain things. (eg. fn+up -> pageup)

That should not prevent binds that do not rely on fn to work properly tho.

right, yeah, looking at the code i have no idea what could be causing it

I've reverted the fn change and did another release


Routes are created in production

When I try to access the preview / send routes in production, they are accessible but the response is:
Couldn't find a template named "notfound" or "notfound". Are you sure you defined it?
I think this is not secure enough. Those routes should not exist at all so something goes wrong here.

Are you sure? Check out this line: https://github.com/lookback/meteor-emails/blob/master/emails.coffee#L359. The routes should not be added unless process.env.NODE_ENV === 'development'. It seems your Meteor app gets a 404, and then tries to render a non-existing template notFound.

argh, you're completely right! Sorry man!

No worries :)