Unboxing an array with different objects structure

I want to parse this payload with Unbox but I couldn't find a way to make a performCustomUnboxing call to successfully populate an array with 3 different types of objects (Playlist, Person and Video).
This is an actual result JSON from a Amazon Cloud Search request:
{
  "status": {
    "rid": "t8/O*h4y569yh43ks==",
    "time_milliseconds": 1
  },
  "results": {
    "count": 3,
    "start": 0,
    "objects": [
      {
        "id": "7364u",
        "attributes": {
          "body": "Right now: kampf spinning mid-tempo chilled beats until 1pm today.",
          "title": "Let's go party rocking",
          "updated": "2016-07-11T11:25:10Z",
          "type": "playlist",
          "id": "48568",
          "source": "tfs",
          "video_views_count": "4",
          "safe_body": "Right now: kampf spinning mid-tempo chilled beats until 1pm today."
        }
      },
      {
        "id": "150f",
        "fields": {
          "title": "John Moss",
          "updated": "2017-10-12T12:34:41Z",
          "type": "person",
          "source": "tfs",
          "id": "150"
        }
      },
      {
        "id": "98341j",
        "fields": {
          "body": "Bitcoin at $10,000. You can now buy ten new iPhone X phones with one of these.",
          "subscription": "Free",
          "air_date": "2016-06-13T21:17:00Z",
          "title": "Let's start buying bitcoins to hoard profit",
          "safe_body": "Bitcoin at $10,000. You can now buy ten new iPhone X phones with one of these.",
          "updated": "2016-06-13T21:22:39Z",
          "type": "video",
          "source": "hfs",
          "episodes": [
            "Money: June 13, 2016"
          ],
          "thumb_uri": "https://pbs.twimg.com/media/DPyZVk4XcAAWo1l.jpg",
          "geo_block_country_list": [
            "AU", "ES", "CA"
          ],
          "air_year": "2016",
          "video_duration": "258",
          "id": "98341",
          "categories": [
            "Big Shots"
          ],
          "geo_allow_country_list": [
            "Limit"
          ]
        }
      }
    ]
  }
}

Hi @marcosjvivar 👋 Thanks for filing an issue, so much easier to help you out with a real example 😄
Can you also show me what your model code looks like? Do Playlist, Person and Video share a protocol or a common superclass?

Hi @JohnSundell!
We are actually using struct instead of classes since they're plain TDO without business logic:
`
struct AWSBaseModel: Unboxable {
var id: String
var title: String
var changed: String?
var ctype: String
var source: String?
var fieldID: String

public init() {

    id = "000"
    title = ""
    changed = "2000-01-01T00:00:00Z"
    ctype = ""
    source = ""
    fieldID = "000"
}

init(unboxer: Unboxer) throws {
    id = try unboxer.unbox(key: "id")

    if let _ = unboxer.dictionary["fields"] {
        title = try unboxer.unbox(key: "title")
        changed = try? unboxer.unbox(key: "changed")
        ctype = try unboxer.unbox(key: "ctype")
        source = try? unboxer.unbox(key: "source")
        fieldID = try unboxer.unbox(key: "id")
    } else {
        title = ""
        changed = "2000-01-01T00:00:00Z"
        ctype = ""
        source = ""
        fieldID = "000"
    }
}

}
`

so there should be a superset
say
AWSEntity
id:String
fields:[AWSField]
"id": "98341j",
"fields": {
"body": "Bitcoin at $10,000. You can now buy ten new iPhone X phones with one of these.",
"subscription": "Free",
"air_date": "2016-06-13T21:17:00Z",
"title": "Let's start buying bitcoins to hoard profit",
"safe_body": "Bitcoin at $10,000. You can now buy ten new iPhone X phones with one of these.",
"updated": "2016-06-13T21:22:39Z",
"type": "video",
"source": "hfs",
"episodes": [
"Money: June 13, 2016"
],
"thumb_uri": "https://pbs.twimg.com/media/DPyZVk4XcAAWo1l.jpg",
"geo_block_country_list": [
"AU", "ES", "CA"
],
"air_year": "2016",
"video_duration": "258",
"id": "98341",
"categories": [
"Big Shots"
],
"geo_allow_country_list": [
"Limit"
]
}


Re-scan options

Catch-all of thoughts about re-scan options
⚠ Check all re-scan code (since the extraction code was refactored recently).
⚠ Make sure re-scan can happen quickly.
It's possible that users may not want to extract clips into their hub, but later might change their mind. It would be nice to have a setting that they can edit after the initial scan. This might reside in the statistics at least for now.
ps - consider adding into the statistics the size of the hub on hard disk.
Perhaps it should be possible to change the number of screenshots to take per video after the initial scan. This too might reside in the statistics tab in the settings menu.
Maybe(?) include a toggle to re-scan the hub on-open (unsure whether this should be a global setting or a per-vha file (saved inside the vha file).
A user once requested a right-click 're-scan' though it's not clear whether that's needed once the general re-scan functionality is solid.

Perhaps it should be possible to change the number of screenshots to take per video after the initial scan.

If so, it would be nice to have the option to regenerate all current clips to reflect the new setting! 👍

#215 is a start of this saga 😅
It first moves all the relevant methods inside main.ts to a single section and moves all related methods from main-support.ts into its own file man-rescan.ts 👍
From there it will be easier to see what methods depend on what other methods, and whether there's any duplication of code (trying to keep things DRY).
After merging I'll take stock of what methods we already have and what functionality we are missing 🙌

We currently have four re-scan buttons to click on:
https://github.com/whyboris/Video-Hub-App/blob/master/main.ts#L743

import-new-files

re-scan for all changes (addition, renaming, deleting)

rescan-current-directory

quick re-scan for only new videos

regenerate-library

regenerate all metadata except for thumbnails

verify-thumbnails

import any missing thumbnails

I'm a little tempted to comment out (3) for version 2 release -- it seems not needed unless the app starts tracking new metadata that was never extracted previously? @cal2195 -- no rush, but when you have a chance, could you comment on whether I understood (3) correctly, and perhaps share a use case other than the one I mentioned?

(3) is also intended for the use case where (1) or (2) doesn't function correctly (as they are based on comparing current hdd contents with the in memory ones), so (3) does a clean scan of the hdd and ignores its in memory one for a more robust scan! :) Also very useful if some video contents change (eg. accidentally imported while downloading before), in case the other options don't pick up the new changes! 👍

I'll think about this some more, but I think for version 2 release I'll keep (3) commented out for the release. Primarily I want to release version 2 ASAP so I'll spend time on testing everything and polishing things up (adding new icons, etc) -- so much to do 😱
Once all that is done, before version 2 release I'll revisit whether to enable (3).
Additionally, at least for version 2.0.0 release, I don't think I'll let users change their preferences for the hub from the UI (that is, if they chose not to extract clips before, they will not be able to change that from within the app -- only by manually hacking the .vha2 file). This is also done because I'd like to release sooner rather than later.
@cal2195 if you feel strongly that (3) should be in the app, just comment below and I'll coordinate with you before verison 2 release 👍 👌 🙇

Related: #15

I really do like (3), but I'm also open to a yes I know what I'm doing give me all the options and enable everything plz and thx mode! 😅

I guess it's easy enough to add the extra button and re-enable the functionality 👌
I wish I had something in place that asked for a confirmation before the action occurred -- so if the user accidentally clicks on one of the re-scan buttons, it doesn't mess up their hub 😅
I'll see if it's easy enough -- I think I'll implement something 👍


konflux config fix

… update
Description

fix tekton config file typo
trigger pipeline run on pipeline config update

Type of change

[ ] Refactor
[ ] New feature
[x] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[x] Configuration Update
[ ] Bump-up dependent library

Related Tickets & Documents

Related Issue #
Closes #

Checklist before requesting a review

[ ] I have performed a self-review of my code.
[ ] PR has passed all pre-merge test jobs.
[ ] If it is a core feature, I have added thorough tests.

Testing

Please provide detailed steps to perform tests related to this code change.
How were the fix/results from this change verified? Please provide relevant screenshots or results.

/lgtm

/lgtm
/approve

/lgtm

/lgtm

/retest


Update README.md

Added!
Could you help me?
URL: https://github.com/Iwauchi-ux/AttractingContributors-Music

Thank you!
I added to list.


Create zzz

@KeeganWoods1 Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.


Move docker production build to SBT

Removes docker/prod and builds the docker production image with sbt-native-packager instead.
The docker production build now comes down to docker login; sbt docker:publish and does not require prepare-docker-builds anymore.  SBT completely hides temporary artifacts of the docker build (no more unzipping and copying around) and automatically adds the binary distribution to the docker image.
To inspect the temporary artifacts, run sbt docker:stage and inspect server/target/docker/stage.  To build the image in the local docker daemon, without publishing to hub, run sbt docker:publishLocal.
Notable differences to the old image
The new image looks like follows
FROM openjdk:8-jre
MAINTAINER Frank Rosner
ADD templates /templates
RUN ["mkdir", "/instances"]
RUN ["chown", "-R", "daemon:daemon", "/templates", "/instances"]
RUN ["chmod", "0755", "/instances"]
WORKDIR /opt/docker
ADD opt /opt
RUN ["chown", "-R", "daemon:daemon", "."]
EXPOSE 9000
USER daemon
ENTRYPOINT ["bin/cluster-broccoli"]
CMD ["-Dbroccoli.templates.storage.fs.url=/temlates", "-Dbroccoli.instances.storage.fs.url=/instances"]

It has a MAINTAINER tag which supposedly is required for docker hub.
It runs Broccoli as daemon user, with limited privileges.
Broccoli is at /opt/docker instead /cluster-broccoli (that'd be configurable).  Instances are /opt/docker/instances, templates at /opt/docker/templates by default.
The image has a WORKDIR, ie, you can start the application without specifying the full path as in bin/cluster-broccoli as opposed to /cluster-broccoli/bin/cluster-broccoli.

Notable differences in the Travis CI build

Image tags for branches and travis build numbers are gone.  I could add them back, but do we actually use these tags anywhere?  We still tag with latest and the short commit ID.

Cool! Can we add all necessary information (especially how to inspect the temporary artifacts) to the README file?

@FRosner The current README only has information about running the image, not about building/debugging it, so where would you like to add me that information?

Ok nvm I just saw that you are still working on it. Ignore the last comment. I will wait for another review request.

@FRosner What commit produced this error message?  Did you try the latest (you shouldn't specify instances and templates dir with this one anymore)?

As mentioned above, it was not the latest commit. As soon as you are finished making changes I will try again with the latest commit.

@FRosner Rebased onto master after #265 merged; should be ready to go.
Works on my machine™ :wink:

I tried to run sbt docker:publishLocal but got the following error:
[info] Successfully built 3fd756449ced
[info] Successfully tagged frosner/cluster-broccoli:0.7.0-SNAPSHOT
[info] Built image frosner/cluster-broccoli:0.7.0-SNAPSHOT
java.lang.IllegalStateException: Ivy file not found in cache for cluster-broccoli-web-ui#cluster-broccoli-web-ui_2.11;0.7.0-SNAPSHOT!
	at sbt.ResolutionCache.getResolvedModuleDescriptor(ResolutionCache.scala:52)
	at org.apache.ivy.core.deliver.DeliverEngine.deliver(DeliverEngine.java:111)
	at org.apache.ivy.Ivy.deliver(Ivy.java:601)
	at sbt.IvyActions$$anonfun$deliver$1.apply(IvyActions.scala:108)
	at sbt.IvyActions$$anonfun$deliver$1.apply(IvyActions.scala:103)
	at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:156)
	at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:156)
	at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:133)
	at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:57)
	at sbt.IvySbt$$anon$4.call(Ivy.scala:65)
	at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:93)
	at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:78)
	at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:97)
	at xsbt.boot.Using$.withResource(Using.scala:10)
	at xsbt.boot.Using$.apply(Using.scala:9)
	at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:58)
	at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:48)
	at xsbt.boot.Locks$.apply0(Locks.scala:31)
	at xsbt.boot.Locks$.apply(Locks.scala:28)
	at sbt.IvySbt.withDefaultLogger(Ivy.scala:65)
	at sbt.IvySbt.withIvy(Ivy.scala:128)
	at sbt.IvySbt.withIvy(Ivy.scala:125)
	at sbt.IvySbt$Module.withModule(Ivy.scala:156)
	at sbt.IvyActions$.deliver(IvyActions.scala:103)
	at sbt.Classpaths$$anonfun$deliverTask$1.apply(Defaults.scala:1441)
	at sbt.Classpaths$$anonfun$deliverTask$1.apply(Defaults.scala:1441)
	at scala.Function4$$anonfun$tupled$1.apply(Function4.scala:35)
	at scala.Function4$$anonfun$tupled$1.apply(Function4.scala:34)
	at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
	at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
	at sbt.std.Transform$$anon$4.work(System.scala:63)
	at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
	at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
	at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
	at sbt.Execute.work(Execute.scala:237)
	at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228)
	at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228)
	at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
	at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:748)
[error] (webui/*:deliverLocal) java.lang.IllegalStateException: Ivy file not found in cache for cluster-broccoli-web-ui#cluster-broccoli-web-ui_2.11;0.7.0-SNAPSHOT!

Can you try again?  And if it still fails, clear your ivy cache?
I don't think that this error has anything to do with the pull request; I didn't get it, fwiw.


The result of alignment chart is hard to read.

What is the change?
I want to change the alignment chart in to line chart or chart that can be easy to look at.
Why do you want this change?
Because chart suppose to let people to read easily but using alignment chart kind of make it hard to read.
How can we make this change?
I’m not sure how to do this. But maybe we can change in the code?

There are some different ways we can show the results.
Which one would be the most useful, easily readable, and satisfying for you to use?

![PXL_20231006_011242052]
(https://github.com/WilliamOpenshaw/Ethics_Calculator_Unity_Project/assets/16065395/f106f820-d975-45bf-8187-53a25e52c5df)

We could also mess around with the colors to see if a greater range of color contrasts makes things clearer?

I have added a spider chart and a separately lined alignment chart to give more options for seeing results
radar chart

spider charts

alignment chart

separated alignment chart

Does this satisfy this issue. Do we want to pick different colors.
The colors now have a black outline to make them more readable.
What other changes do we need to make.

I will temporarily close this issue.
Please open it back up if there are other changes that you would like to make.


Increment version for apimanagement releases

Increment package version after release of Azure.ResourceManager.ApiManagement

API change check
API changes are not detected in this pull request.

/check-enforcer override

Failure is unrelated to these changes.  Merging.


Improve README.md

Overview

Fix a typo
Remove duplicated maxActivatedStepIndex property's description
Add goToStep description since it's also a part of Wizard object
Document goToStep's second argument & its public options
Match functions' descriptions in Step section & in useWizard section
Add explanation about the fact that moveToStep is an alias of goToStep

Related to #53

Codecov Report

Merging #54 (318198e) into master (44b099e) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            master       #54   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            4         4
  Lines           83        83
  Branches        13        13
=========================================
  Hits            83        83

Continue to review full report at Codecov.

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

Awesome! :-) Thank you.
Feel free to add yourself as a contributors
npx all-contributors add Uzwername doc
or just let me know if you choose not do appear in the readme :-)
I'll merge it in afterwards.
Thanks again. Much appreciated!

Hey @Jibbedi
Ok, thank you! I've just added myself into contributors' table. Glad I was able to help a bit :)


API Key based authentication using tsed/Passport

##Information
**Is your feature request related to a problem? Please describe.
Having a use-case where the backend has to validate the incoming request and verify the API key from header before processing and returning a response. But in the current situation, am unable to use passport-headerapikey library in tsed.
**Describe the solution you'd like
It would be great if tsed/passport can support headerapikey strategy of authentication.
import {OnVerify, Protocol} from "@tsed/passport";

import {$log, Req} from "@tsed/common";
import {HeaderAPIKeyStrategy} from "passport-headerapikey";
import {Unauthorized} from "@tsed/exceptions";

@Protocol({
  name: "apiKey",
  useStrategy: HeaderAPIKeyStrategy,
  settings: {
    header: "X-API-KEY",
    prefix: ""
  }
})
export class ApiKeyAuthenticationProtocol implements OnVerify {
  async $onVerify(@Req() req): Promise<boolean> {
    return new Promise(async (resolve, reject) => {
      $log.info("Authetication Failed");
      reject(new Unauthorized("Authentication Failed"));
    });
  }
}

**Describe alternatives you've considered
Currently setting up a custom middleware which will validate the api-key configured against the one that is passed on the request header.
##Acceptance criteria

[ ] headerapikey strategy working on tsed/passport

Hello @ramprasathb-foxsense
HeaderAPIKeyStrategy doens't follow the classic signature of other passport plugin.
So you have to wrap the HeaderAPIKeyStrategy to match the expected signature.
import {OnVerify, Protocol} from "@tsed/passport";
import {$log, Req} from "@tsed/common";
import {HeaderAPIKeyStrategy} from "passport-headerapikey";
import {Unauthorized} from "@tsed/exceptions";
class CustomStrategy extends HeaderAPIKeyStrategy {
constructor(settings: any, verify: any) {
super(settings, true, verify)
}
}
@Protocol({
name: "apiKey",
useStrategy: CustomStrategy,
settings: {
header: "X-API-KEY",
prefix: ""
}
})
export class ApiKeyAuthenticationProtocol implements OnVerify {
async $onVerify(@Req() req) {
$log.info("Authetication Failed");
throw new Unauthorized("Authentication Failed"));
});
}
}


oxlint: jest-plugin: no-export: false positives for exports in mocks files

Thanks so much for sharing this exciting project!
I have a project that uses the manual mocks feature for jest: https://jestjs.io/docs/manual-mocks
e.g.

other.js (contains export do() => { /* ... */ })
__mocks__/other.js (contains export do() -> jest.fn().mockImplementation(() => { /* ... */ }))
thing.js (contains import './other.js')
thing.test.js (contains jest.mock('./other.js'))

It's expected that these jest manual mock files export just like the production files that they mirror
oxlint --jest-plugin (version 0.2.8) results in "⚠ eslint-plugin-jest(no-export): Do not export from a test file." when scanning __mocks__/other.js , so it seems to consider these manual mock files to be test files, but I think it should not classify them as test files

Thanks for your using! we treated it as a test file if it imports global variables like jest, beforeEach, test, etc… we should distinguish it by file path.

By default, jest uses these lists of globs to find test files:

https://jestjs.io/docs/configuration#testmatch-arraystring: [ "**/__tests__/**/*.[jt]s?(x)", "**/?(*.)+(spec|test).[jt]s?(x)" ]
https://jestjs.io/docs/configuration#testregex-string--arraystring: (/__tests__/.*|(\\.|/)(test|spec))\\.[jt]sx?$

But, by default, it will also search for a jest.config.js|ts|mjs|cjs|json file ( https://jestjs.io/docs/configuration ) that can override these globs
I'm not sure how much complexity is desirable in this area, but perhaps we could start with the equivalent of those hard-coded globs? Would you accept a PR that also checks for the jest.config.* file?

We can start with a hard-coded glob first, PR is always welcome!
Do we need to check static jest config? @Boshen

Do we need to check static jest config?

Let's try and not to read another config file. Are there any workarounds? For example ignore the rule by using https://eslint.org/docs/latest/use/configure/ignore#ignorepatterns-in-config-files?


Code optimize about DubboBootstrap#ready

What is the purpose of the change
Some logic optimize about DubboBootstrap#ready.

Codecov Report

Merging #7266 (557685e) into master (15fc5b4) will decrease coverage by 0.01%.
The diff coverage is 75.00%.

@@             Coverage Diff              @@
##             master    #7266      +/-   ##
============================================
- Coverage     59.56%   59.55%   -0.02%
- Complexity      474      476       +2
============================================
  Files          1042     1042
  Lines         42356    42355       -1
  Branches       6207     6207
============================================
- Hits          25230    25224       -6
- Misses        14300    14304       +4
- Partials       2826     2827       +1

Impacted Files
Coverage Δ
Complexity Δ

.../java/org/apache/dubbo/qos/command/impl/Ready.java
50.00% <0.00%> (ø)
0.00 <0.00> (ø)

.../apache/dubbo/config/bootstrap/DubboBootstrap.java
42.12% <100.00%> (-0.10%)
0.00 <0.00> (ø)

...ing/zookeeper/support/AbstractZookeeperClient.java
74.68% <100.00%> (ø)
0.00 <0.00> (ø)

...dubbo/remoting/exchange/support/DefaultFuture.java
88.03% <0.00%> (-4.28%)
0.00% <0.00%> (ø%)

...pache/dubbo/remoting/transport/AbstractServer.java
53.75% <0.00%> (-3.75%)
0.00% <0.00%> (ø%)

...pache/dubbo/registry/support/AbstractRegistry.java
79.62% <0.00%> (-1.49%)
0.00% <0.00%> (ø%)

...rg/apache/dubbo/common/timer/HashedWheelTimer.java
79.38% <0.00%> (-0.69%)
0.00% <0.00%> (ø%)

...apache/dubbo/common/extension/ExtensionLoader.java
77.85% <0.00%> (-0.23%)
0.00% <0.00%> (ø%)

.../apache/dubbo/remoting/transport/AbstractPeer.java
63.04% <0.00%> (ø)
0.00% <0.00%> (ø%)

...g/apache/dubbo/registry/consul/ConsulRegistry.java
60.00% <0.00%> (ø)
31.00% <0.00%> (ø%)

... and 4 more

Continue to review full report at Codecov.

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


Analyzer Feedback from IntelliJ

Version information

IDEA AI-193.69<IP_ADDRESS>26763
2.8.4
AI-193.69<IP_ADDRESS>26763, JRE 1.8.0_242-release-1644-b01x64 JetBrains s.r.o, OS Windows 10(amd64) v10.0 , screens 1920x1080

This report does not include any details about any issue. If you see a crash in IntelliJ, please include any details or logs when filing a bug.

This report does not include any details about any issue. If you see a crash in IntelliJ, please include any details or logs when filing a bug.


Use node's algorithm for calculating the longest matching export/import pattern

Fixes #49308
Thanks to @PaperStrike for the research and initial tests - in addition to the sort just being backwards, node's sorting for pattern keys (PATTERN_KEY_COMPARE in the resolution docs) is way more complex now that pattern trailers are a thing, and this sort was never updated to account for that, so now we just use node's algorithm pretty much verbatim.

4.7.3?

@typescript-bot cherry-pick this to release-4.7


Uncaught DOMException: The quota has been exceeded

i should have template html not cached in the local storage..... and make sure the model base class can handle models that don't use the local storage to cache the data,
maybe local storage is more for when there's local changes that need to be pushed to the server. and also for the basic apis that are needed to build the app interface.

[x] models can be set to not cache in the local share and will instead always pull fresh data
[x] html templates should stop caching in local storage and instead rely on page caching
[ ] make sure it doesn't break saving changes to collections

ok... now i need to make sure that i didn't break anything before i call this closed....

well... i just set all collections to not cache and was able to change the lights... which did work. and looks like it cached the collection because i changed it.

nope is still a major issue... and is messing up controlling the lights


Added several improvements

removed pragma (React changed to advocating using .jsx instead, a while ago)
dropzone now ignores the hardcoded styling when an explicit classname is passed in
minor tweak for onDrop, to return an array of files, rather than the incredibly obtuse FileList

Good ones. I'll change the file name to .jsx again, as was recommended in one of the other PRs.

any word on what you'd like with this PR? (I'd very much like to see it merged, the baked-in styling despite specifying my own className in 1.0.0 is still a big problem)

Oops, I had missed it. Merged in, thanks!

Published to npm as v1.0.1 (https://github.com/paramaggarwal/react-dropzone/releases/tag/v1.0.1)

super, thanks so much!


fix Cargo.toml README links

CRITERION BENCHMARKS

BENCHMARK
MASTER
PR
Diff

execute/count_until
3.0784 ms
3.0776 ms
:white_circle:  +0.0204 %

execute/factorial_iterative
1.6536 µs
1.6623 µs
:white_circle:  +0.5792 %

execute/factorial_recursive
2.2228 µs
2.1952 µs
:white_circle:  -0.9963 %

execute/fib_iterative
10.1692 ms
10.2316 ms
:white_circle:  +2.5461 %

execute/fib_recursive
20.4166 ms
20.2476 ms
:white_circle:  -0.6248 %

execute/global_bump
3.9029 ms
4.0798 ms
:white_circle:  +2.9788 %

execute/host_calls
35.6864 µs
35.3696 µs
:white_circle:  +1.9504 %

execute/memory_fill
9.4019 ms
9.3978 ms
:white_circle:  -0.2244 %

execute/memory_sum
9.071 ms
9.0926 ms
:white_circle:  +0.1962 %

execute/memory_vec_add
16.1987 ms
16.31 ms
:white_circle:  +0.4405 %

execute/recursive_is_even
3.6412 ms
3.4965 ms
:green_circle:  -4.2327 %

execute/recursive_ok
429.4581 µs
421.9251 µs
:green_circle:  -2.403 %

execute/recursive_scan
561.7417 µs
511.9858 µs
:green_circle:  -8.9215 %

execute/recursive_trap
42.7479 µs
41.3896 µs
:green_circle:  -2.8093 %

execute/regex_redux
3.5336 ms
3.5343 ms
:white_circle:  -0.004 %

execute/rev_complement
3.1211 ms
3.1268 ms
:white_circle:  +0.2343 %

execute/tiny_keccak
2.7597 ms
2.7582 ms
:white_circle:  -0.6227 %

execute/trunc_f2i
3.9417 ms
3.9475 ms
:white_circle:  +0.0344 %

instantiate/wasm_kernel
77.898 µs
78.9179 µs
:white_circle:  +1.2151 %

translate/wasm_kernel
6.3917 ms
6.4111 ms
:white_circle:  +0.2491 %

Link to pipeline

Codecov Report

Merging #472 (75949f6) into master (bd0e2e7) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #472   +/-   ##
=======================================
  Coverage   79.15%   79.15%
=======================================
  Files          73       73
  Lines        6255     6255
=======================================
  Hits         4951     4951
  Misses       1304     1304

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Add Waves

https://github.com/msmolyakov/awesome-waves
Waves is an open source blockchain platform and development toolset for Web 3.0 applications and decentralized solutions.
By submitting this pull request I confirm I've read and complied with the below requirements 🖖
PRs reviewed: #1725, #1738, #1747.

unicorn

By the way, awesome-lint reports an error

List item description must start with valid casing

because it does not take into account that there are no capital letters in Hindi.
I created a bug report for this: sindresorhus/awesome-lint#100

I guess, that with PR everything is fine. @sindresorhus could you check please?

Tweet: https://twitter.com/awesome__re/status/1252638945428426752


Added "Exploration and exploitation compromise"

Added "Exploration and exploitation compromise", test for him.
Used in dqn model.
if accepted, can be applied to all models and used in evaluation.
Example:
--gym -a dqn -g -n train_using_gym --gym-env Acrobot-v1 --render-episode 10 --max-step 500 --gym-agents 4
Episode: 128 | step:  159 | last_done_step  159 | rewards: [-121. -115. -110. -158.]
Episode: 129 | step:  144 | last_done_step  144 | rewards: [-103. -134.  -82. -143.]
Evaluate episode: 129
evaluate number: 100 | average step: 90 | average reward: -89.33 | SOLVED: True
Episode: 130 | step:  110 | last_done_step  110 | rewards: [ -91. -104. -109. -104.]
Process finished with exit code 0

Hi, @kasimte
I've checked your PR, it seem you added a decay version of epsilon for off-policy algorithms, and I have some suggestions：

actually, you don't need pass episode parameter for choose_action function. just use self.episode is OK. Because self.epiosde will be updated when invoking learn function.

I'm not sure about if we should add exploration in inference mode, or just exploitation. I think we should select the action with complete certainty in inference mode.

thank you for your great help.
I‘m gonna merge this and modify it a little bit later(maybe tonight).


DB: Fix getImagesByFingerprintPrefix to handle NULL datetime values

Since https://github.com/canonical/go-dqlite/issues/123 this function hasn't worked correctly.
I also took the opportunity to switch to using the normal QueryScan function rather than the SelectObjects function as I struggle with the way that works.

This PR is in https://github.com/lxc/lxd/pull/9478/commits


Don't Log An Error When the Client Connection is Closed

In a nutshell, ignore write errors on the HttpListenerResponse as there isn't anything we can do about those anyways and they can generate a lot of log noise. The typical errors are:

The specified network name is no longer available
The underlying connection was closed

Here is a conversation via email that relates to this:
The issue has to do with the fact that the client has already closed the underlying connection. I was able to reproduce this on my local machine. This issue will be most prevalent on high traffic websites and can be easily reproduced by rapidly pushing the F5 key multiple times on a webpage because behind the scenes the server is receiving each of those requests but by the time it tries to send back a response to the client the connections are closed. This situation rarely happens with APIs since the client connection is not likely to terminate early.
The interwebs here and here state to just ‘swallow’ this particular type of exception ( aka don’t log it ) as there is nothing more you can do since the client connection is gone. This will require a modification to Nano to not log these particular types of errors which is not unprecedented and is what the web framework ServiceStack does ( See here ). In the short term when can add an easy one liner to silence these errors at the HttpListener level by doing the following:
var server = HttpListenerNanoServer.Start(config, urls);
server.HttpListenerConfiguration.HttpListener.IgnoreWriteExceptions = true;

I've uncovered a similar / related error that occurs in unit tests that create a server, create a request to the server, does not read the response stream, and then subsequently disposes of the server. Upon dispose the server throws an exception because it is still writing to the response stream. This error goes away when the client code reads the entire response. The typical error message is:

The I/O operation has been aborted because of either a thread exit or an application request

The suggested IgnoreWriteExceptions = true  workaround mentioned in a previous comment does not seem to have any effect. A modification to the HttpListenerConfiguration will be required to ignore all exceptions of type HttpListenerException by default but allow the user to configure this setting. Defaulting to true seems to be the recommended solution posted online as there really isn't anything that can be done with these types of errors and logging them doesn't provide any value since they are quite commonplace on websites given the nature of users refreshing browsers and intermittent network failures.

Fixed in https://github.com/AmbitEnergyLabs/Nano/commit/990bb8ceb9ea5b9657d4dbe586b1cba469527769


Improve and add beautiful and responsive Navbar for this website

Issue Type:
Navbar is so ugly. So I will design and devlop responsive navbar for this website
@arpit456jain  Please assign this task to me. I will definately create one beautiful and responsive navbar for the website

@arpit456jain  Please assign this task to me. I will definately create one beautiful and responsive navbar for the website

I would like to work on this issue . Kindly assign this issue to me.

I am interested in working on this issue, please assign this to me.

Sir I would like to work on this issue.
Please Kindly assign this issue to me.

Sir I would like to work on this issue. I can create fully responsive and beautiful Navbar for this website.
Please Kindly assign this issue to me.

@Abh1shekSingh i had already assigned this issue in another repo if u make a good navbar please create this issue again since we need a same navbar in all  3 repos

So please assign this issue to me, i will create sam navbar for all of the
three website
On Wed, Mar 2, 2022 at 12:05 AM Arpit Jain @.***> wrote:

@Abh1shekSingh https://github.com/Abh1shekSingh i had already assigned
this issue in another repo if u make a good navbar please create this issue
again since we need a same navbar in all 3 repos
—
Reply to this email directly, view it on GitHub
https://github.com/arpit456jain/Amazing-Css-Effects/issues/269#issuecomment-1055738740,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARFFTFZT3P62I3AI5IOAMZTU5ZPPZANCNFSM5PUPJJGQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>


Create template for India report

Develop template in CHEPI style
Set out headings
Write intro
Methods
Results
Discussion

A manuscript for The Lancet Global Health has been agreed. Template is standard. https://www.thelancet.com/pb/assets/raw/Lancet/authors/tlgh-info-for-authors.pdf


Fix missing websocket_received event in TrioASGIWebsocketConnection.handle_messages

This looks like a small mistake compare to what is done in the non-trio quart:
https://github.com/pgjones/quart/blob/2da8ebd056e92affde4bab7da447c3f226f0d24c/src/quart/asgi.py#L176
Besides I have a question: why the websocket_sent/websocket_received signal don't provide the app object as parameter ?
On top of tath, given websocket is a stateful protocol, I would have expected to have websocket_started signal providing a kind of id websocket connection id that is again provided with subsequent websocket_sent/websocket_received/websocket_finished signals 🤔

Moved the question/feature request to Quart.


support linting

actually, this applies to pkgs as per #2 as well as other projects

via lintr::lint_package() of course.


Generate config

Fixes #26

Coverage increased (+0.4%) to 97.632% when pulling f7aa4ceec1d5ad270fca537ec3c0ca36f37768cd on generate-config into b24ee5d5461408e450b4a9b5815260aaeaca2224 on master.


Update conanfile_rtc.py

Missed from #13.

Codecov Report

Merging #14 (088d844) into runtimecore (8bcead0) will not change coverage.
The diff coverage is n/a.

@@              Coverage Diff              @@
##           runtimecore       #14   +/-   ##
=============================================
  Coverage       100.00%   100.00%
=============================================
  Files              112       112
  Lines            14311     14311
=============================================
  Hits             14311     14311

Continue to review full report at Codecov.

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


#2 Login

Issue number
https://github.com/saigon-tech/laravel-exercise/issues/2
The purpose
Create Login page
Method of verification

Access the route login:

http://localhost/login

Login by username and password:

Username:
Password:
Click Login
Login success will redirect to login-success page

Test middleware:
If you are not logged in, accessing login-success (http://localhost/login-success) will redirect you to the login page (http://localhost/login)

@vinhhc97
Please fix conflict before request review again.
Thank you 🙇


Give users the option to use SSH protocol when deploying Static Web Apps

Observed behavior:

When using Create Static Web App, the remote origin for the local Git repository is setup with https

Expected behavior:

An option to select the protocol for those who use SSH

Repro steps:

Create a new local git repository
Launch Create Static Web App
Allow the wizard to create the GitHub repository and configure the local Git origin

This issue has become stale and is at risk of being closed. The community has 60 days to upvote the issue. If it receives 5 upvotes we will keep it open and take another look. If not, we will close it. To learn more about how we handle issues, please see our documentation.
Happy Coding!

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


Maintain and display version information in the top of the makeskin tab

MPFB shows a very visible version string in the top of its tab. MS should do the same, so we can ask users exactly what version they're using when they run into trouble.
At the date of releasing makehuman 1.2.0, I think we should set the version of MS to 1.0.0.

I've set makeskin version to 0.9.0 now, and this is displayed in the label.
I hope it won't cause problems when updating later on, since it's been 1.0.0 for a while. Worst case, we'll set it to 2.0.0 at release.


Pypy compatibility

Summary
Make hikari pypy compatible, so bot developers can optimize their code.
Problem
Speed of bots written in python
Checklist

[x] I have searched the issue tracker and have made sure it's not a duplicate.
If it is a follow up of another issue, I have specified it.

Currently this is not possible due to pypy not supporting python 3.8 and (between other features) :=. So this wont be implemented any time soon.
I'm aware of the necessary speedups and will be trying to work on them when the library is done (probably some Cython extensions)


Class lists: Factor out WarnBeforeUnload

Who is this PR for?
developers, part of https://github.com/studentinsights/studentinsights/issues/1722.
What problem does this PR fix?
Factors out <WarnBeforeUnload /> component, for use in taking notes.

selfie


Fixing Python turing machine

I've made some mistakes in #284 and forgot to test it after the last change.
Now it should work :)

perfect! thanks :)

Quick question? Might if I link your solution under the top 10 solutions in the readme?

Of course, I'd be happy about that :)

Awesome! added :)


[WIP] Full expand

Not yet working.

Expose an API make_inductor_fn to perform SPMD expansion and inductor lowering on a function possibly containing side-effects.
In the example, the API is used to compile and run a full training_step (fwd, bwd and optim.step).
Compilation passes
For now, this bypasses dynamo because dynamo leads to a graph break when doing loss.backards() . The goal here is to capture the entire function in a single graph.
In order to properly fuse and lower kernels, a functionalization pass as well as specific decompositions are required by inductor. In order to do so , we need to do make_fx(functionalize(function)). However, when capturing a training_step, this doesn't work because functionalize complains when loss.backwards() is called from inside the function.
The workaround is to call make_fx once to "remove" the backwards call, and then call functionalize on the lowered graph. So we do: make_fx(functionalize(make_fx(function)). (This is a trick that was used in the past as part of aot_autograd implementation, so nothing new here).
Another issue with functionalize is that it doesn't allow for getattrs to be present in the graph -- all tensors used inside of function must be passed as explicit arguments. In order to do so, we perform a transformation convert_getattrs_to_inputs after the first make_fx -- removing all instances of "getattr" and making them input arguments to the function. We also collect the concrete values of self.attr so that we can pass them as inputs to the function afterwards.
After converting getattrs to inputs, we are still left with some non-tensor inputs to the graph. In our training_step example, we take as inputs a nn.Module and a torch.Optimizer instances. Indiuctor will complain if we pass these as input to our compiled function. Luckily, convert_getattrs_to_inputs already extracted all the parameters and buffers and optimizer states and exposed them as explicit inputs to the function, so we don't need the nn.Module and the torch.Optimizer instances to be passed to the compiled function. We remove these unused arguments remove_unused_inputs and keep track of the removed inputs so that we can keep track of them when calling the compiled function.
Finally, it turns out that functionalize itself ends up adding getattrs to the graph, but our SPMD expansion doesn't support that because it was originally meant to be used as a compiler for aot_autograd. So what we do is run another pass of getattr removal before the SPMD expansion.
So our compilation pipeline looks like this:
gm = make_fx(fn)
gm2, getattr_vals = convert_getattrs_to_inputs(gm)
gm3 = make_fx(functionalize(gm2))
gm4, getattr_vals2 = convert_getattrs_to_inputs(gm3)
gm5, unused_inputs_idx = remove_unused_inputs(gm4)
gm6 = convert_to_distributed(gm5)   # SPMD expansion
compiled_f = inductor.compile_fx_inner(gm6)

Where compiled_f is a inductor-compiled function.
Example inputs
Care has to be taken on what example inputs are passed in to each compilation step.

the first make_fx takes inputs exactly as in the initial function. In regards to SPMD, these inputs are supposed to be global inputs (not local shards of the inptus). So for example if we are passing a batch of training data with global batch_size=1024, our input.size(0) needs to be 1024, regardless of the number of workers.
After we convert_getattrs_to_inputs, the example inputs need to be modified to also contain the converted getattrs as part of the inputs. So we need to pass initial_example_inputs + getattr_vals as example inputs.
After we remove_unused_inputs, we must remove the unused example inputs as well. In our training_step, this means we're going to remove the nn.Module and the torch.Optimizer from the input list moving forward.
Example inputs passed to convert_to_distributed need to be sharded, not global inputs, so before calling this pass, we need to obtain shards somehow -- currently we're creating a random tensor that has a shape equivalent to a shard. For example in our batch_size=1024, if we have 2 GPUs, our sharded_example_inputs will have suze(0) = 512.

Sharding annotations

SPMD expansion needs input tensors (including parameters and buffers) to be annotated with the seried sharding spec. In order to do so, we expose an API mark_placements to annotate tensors/parameters/etc with the desired placement. We also pass a default_shard_schema to convert_to_distributed which is used to obtain the DeviceMesh (we only support one device mesh for an SPMD expansion) and to obtain the default placements when an input tensor is not annotated.

Issues

The main issue currently is that we're not using FakeTensors for the initial pass -- so for example if we have a huge parameter that we would like to shard, right now this doesn't work, because 1) we need to instantiate the concrete parameter with full size (before sharding) so that the initial passes can happen; 2) getattr_vals will keep a reference to the full (not-sharded) parameter, so even if we shard the parameter afterwards, when we call compiled_f, it will still pass the initial parameter. We need a way to declare parameters as lazy and materialize them after sharding is decided. I'll investigate this next.

Status: I'm currently unable to call loss.backward() on a FakeTensor that is marked as 'cuda'. It works for cpu FakeTensors, but then optimizer.step() won't work because passing capturable=True will check that the tensor type is cuda.

Status: this seems to be working for the simple model in the example. The compiled function takes DTensors in the input, and produces DTensors in the output.
Nice example is that loss is returned as a "Partial" tensor so that it avoids doing all-reduce but at the same time informs the user that this local loss needs to be sumemd to get the full batch loss.

I'm now able to run a few iterations of  "Pure DDP" as well as "mixed FSDP / DDP".
This requires the latest updates in https://github.com/pytorch/pytorch/pull/92231.


HeredocToNowdocFixer - works with CRLF line ending

thanks for the PR :)
:+1:

could you change the target of your PR to 2.2, as this is a bug fix it would be nice to have it on the lowest supported release branch

@SpacePossum done

thank you! :)

Thank you @dg.


Added overflow: scroll

View errors that are rendered off screen

@wagerfield Thank you for submitting a pull request and contributing to redbox! To be able to merge your code, could you please describe the problem and ideally provide a test case and/or screenshot, so I can see what problem you have solved. We also need to make sure this is not in conflict with any existing code. Thanks.

Sure, no problem.
Without overflow: scroll, you are unable to scroll down through the error stack trace on vertically narrow screens:

^^^ cannot scroll down

With overflow: scroll you can:

^^^ can scroll down

@wagerfield If you are not sure how to do that, I can do it for you, just let me know how you want to continue.

Thank you 🎉


Three times ctrl+c then the bot stops

I have to hit ctrl+c three times, then the bot stops.
Is that some kind of issue or just normal?

Normal and Use last version.


/ in Source Names causes 404

Describe the bug
When selecting a source with a / in the name, the request to retrieve the source details fails with a 404 as the / is treated as part of the URL path.
To Reproduce
Steps to reproduce the behavior:

Click on a source with a / in the name
See error

Expected behavior
The request for the source details 'escape' or otherwise handle the / in the name, and the results are retrieved.
Screenshots
If applicable, add screenshots to help explain your problem.
Source shows in source list:

Selecting source with / in name results in.

Environment
Provide a screenshot of Help > About.
A nit, on a Mac this is Code > About Visual Studio Code
Version: 1.87.1 (Universal)
Commit: 1e790d77f81672c49be070e04474901747115651
Date: 2024-03-06T00:23:16.418Z
Electron: 27.3.2
ElectronBuildId: 26836302
Chromium: 118.0.5993.159
Node.js: 18.17.1
V8: <IP_ADDRESS>-electron.0
OS: Darwin arm64 23.4.0
Logs
2024-03-08 08:37:29.610 [error] CodeExpectedError: cannot open idn://company2825-poc.identitynow-demo.com/v3/sources/d59c46f257244ca0a3e6063181187495/Source%20with%20/%20in%20name. Detail: Unable to read file 'idn://company2825-poc.identitynow-demo.com/v3/sources/d59c46f257244ca0a3e6063181187495/Source with / in name' (Error: Request failed with status code 404)
at s.$tryOpenDocument (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:2417:62496) vscode-sailpoint-identitynow.open-resource undefined
Additional context
n/a

Sources are open like files in VSCode.
In Unix or Windows, the character '/' is forbidden for filenames.
I can replace / by something else to prevent issue but I cannot find something "good".
I can replace / by "%2F", "/", "//", or " ".
Which one feels less weird @rob-buskens-sp ?

I'm thinking %2F as it is recognizable as the code.
At least to me.

Fixed in v1.1.0


Added AttachmentEditor to Toolkit for WinDesktop and WinStore

This addresses #109
@dotMorten : Please code-review

Added AttachmentEditor to Toolkit for WinDesktop and WinStore

Excluded in this branch is WinPhone because of FilePicker platform limitation which Esri/arcgis-runtime-samples can address in App.cs (including ContinuationManager which handles FileOpen/SavePickerContinuationEventArgs).

Closing PR, not reviewed for merging.


Serial number should be an alphanumeric code

The serial number implementation would be more robust as an alphanumeric string rather than a number.
A possible solution would be to use a uuid (universal unique identifier).

@R9295 did we forget to close this right?


Add instructions for building the user documentation as html

This change adds simple instructions to the top-level README
for building the user documentation as html so that it's
nicely formatted and easily accessible. It also points to
the raw content if a user does not want to build the html.

Can one of the admins verify this patch?

/ok to test

@robin-owen thanks for the feedback. I wasn't sure about the issue, I saw some commits with issues, some without -- but I'll add one.


Create CAPI objects from EKS-A spec

Issue #, if available:
Description of changes:
This will create CAPI objects form a EKS-Anywhere spec and apply them.
Next steps will be applying extra objects and the CNI plugin.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm


[proposal] Add setting to set align of column headers

It would be nice to have possibility to choose align of table headers.
Sublime Table Editor plugin centers all table column headers by default, so this setting could improve compability with tables created with the plugin.
Examples:
center_column_headers=false:
| header          |
|-----------------|
| value           |
| some_long_value |

center_column_headers=true:
|      header      |
|------------------|
| value            |
| some_long_value1 |

center_column_headers=true:
|      header     |
|-----------------|
| value           |
| some_long_value |

ok
i understood

Thank you for waiting.
I released v1.2.1 and added center aligned header configuration.
Try tableformatter.common.centerAlignedHeader = true.

Thank you!


Edit for GitLab section, fix formatting for Code Manager.

If this is still welcome, great, if not let me know.

https://github.com/PuppetLabs-RampUpProgram/control-repo/commit/3cb199565e252d4d9930a126155a90afe4205bcb


Fails to log silently with specific extra field

If I add extra field named 'status' to the extra fields dict when logging, graypy will drop the message without any error (nothing gets logged).
Example:
import logging
import graypy

mylog=logging.getLogger('order.processing')
handler=graypy.GELFHandler('mylogserver',debugging_fields=True)
mylog.addHandler(handler)
#the following line works
mylog.info("Test123",extra={'fld1':1,'fld2':2})
# the following line doesn't output anything to GrayLog:
mylog.info("Test with status", extra={'fld1':1,'fld2':2, 'status':'OK'})

Do you know why this happens?

I'm currently working on another refactoring build https://github.com/nklapste/graypy/pull/3 and have worked into testing this issue.
I was unable to create this issue/failure with my tests:

#!/usr/bin/python
# -*- coding: utf-8 -*-

"""pytests for addressing potential issues with adding an ``status`` extra
field withing a given log and having the log failing to appear within graylog.

Related issue:
- Fails to log silently with specific extra field #85

URL:
- https://github.com/severb/graypy/issues/85
"""

import pytest

from tests.integration import LOCAL_GRAYLOG_UP
from tests.integration.helper import get_unique_message, get_graylog_response
from tests.helper import handler, logger

@pytest.mark.skipif(not LOCAL_GRAYLOG_UP,
                    reason="local graylog instance not up")
def test_non_status_field_log(logger):
    message = get_unique_message()
    logger.error(message, extra={"foo": "bar"})
    graylog_response = get_graylog_response(message, fields=["foo"])
    assert message == graylog_response["message"]
    assert "bar" == graylog_response["foo"]

@pytest.mark.skipif(not LOCAL_GRAYLOG_UP,
                    reason="local graylog instance not up")
def test_status_field_issue(logger):
    message = get_unique_message()
    logger.error(message, extra={"status": "OK"})
    graylog_response = get_graylog_response(message, fields=["status"])
    assert message == graylog_response["message"]
    assert "OK" == graylog_response["status"]

@pytest.mark.skipif(not LOCAL_GRAYLOG_UP,
                    reason="local graylog instance not up")
def test_status_field_issue_multi(logger):
    message = get_unique_message()
    logger.error(message, extra={"foo": "bar", "status": "OK"})
    graylog_response = get_graylog_response(message, fields=["foo", "status"])
    assert message == graylog_response["message"]
    assert "bar" == graylog_response["foo"]
    assert "OK" == graylog_response["status"]

Note: these tests are logging to a active graylog docker container.
Possibly when this branch gets finished and (hopefully) merged. This issue will likely be resolved.

@gnudiff can you recreate this issue with graypy version 1.1.X+?


Add github files

Motivation
Add github files in order to follow our standards and the good practice to work with opensource.
What
Add github files
Why

Following the opensource guide recommendations and checklists for contributors choose a project to contribute with
Following our standards
Help the users/contributor track properly an issue and a PR

How
Applying the same ones defined in: https://github.com/integr8ly/installation/tree/master/.github

@odra is this a valid repo? Shows that have just one file(LICENSE). Could we remove/archive this one?

Ignore it will be redone


cmd/go: go mod tidy reverts upgrade

What version of Go are you using (go version)?

$ go version
go version devel +5d9549debb Thu May 7 02:47:46 2020 +0000 linux/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/myitcv/.cache/go-build"
GOENV="/home/myitcv/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/home/myitcv/gostuff/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/myitcv/gostuff"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/home/myitcv/gos"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/home/myitcv/gos/pkg/tool/linux_amd64"
GCCGO="gccgo"
GOAMD64="alignedjumps"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/tmp/tmp.LuGUD8I5CH/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build548100936=/tmp/go-build -gno-record-gcc-switches"

What did you do?
cd $(mktemp -d)
go mod init mod.com
cat <<EOD > tools.go
// +build tools

package tools

import (
        _ "golang.org/x/tools/gopls"
        _ "honnef.co/go/tools/cmd/staticcheck"
)
EOD
go get<EMAIL_ADDRESS><EMAIL_ADDRESS>go get<EMAIL_ADDRESS>
At this point you should see go.mod as:
module mod.com

go 1.15

require (
        github.com/sergi/go-diff v1.1.0 // indirect
        golang.org/x/tools v0.0.0-20200509030707-2212a7e161a5 // indirect
        honnef.co/go/tools v0.0.1-2<IP_ADDRESS>00510173921-01541ecfc85e // indirect
        mvdan.cc/xurls/v2 v2.1.0 // indirect
)

Now run go mod tidy and go.mod looks like this:
module mod.com

go 1.15

require (
        golang.org/x/tools v0.0.0-20200509030707-2212a7e161a5 // indirect
        golang.org/x/tools/gopls v0.4.0
        honnef.co/go/tools v0.0.1-2020.1.3
)

Notice how both golang.org/x/tools/gopls and honnef.co/go/tools have reverted to earlier versions that those requested via go get above.
What did you expect to see?
As above.
What did you see instead?
As above
Is this related to https://github.com/golang/go/issues/27899?
cc @bcmills @jayconrod

After the first go get command, there's a transitive dependency on honnef.co/go/tools:
$ go list -modfile=1.mod -m honnef.co/go/tools
honnef.co/go/tools v0.0.1-2020.1.3

The second go get command downgrades that module to an older version (as far as MVS is concerned).
$ go list -modfile=2.mod -m honnef.co/go/tools
honnef.co/go/tools v0.0.1-2<IP_ADDRESS>00510173921-01541ecfc85e

In order to perform the downgrade, go get will downgrade or remove modules that depend on newer versions of honnef.co/go/tools. There is no such version of golang.org/x/tools/gopls, so that module is removed.
There isn't a way to use these three versions together while keeping MVS happy. go get will complain if you try.
$ go get -d<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>go get: inconsistent versions:
<EMAIL_ADDRESS>requires<EMAIL_ADDRESS>(not<EMAIL_ADDRESS>
go mod tidy will restore the dependency on golang.org/x/tools/gopls at the latest version, and it will upgrade honnef.co/go/tools to the minimum version required by golang.org/x/tools/gopls. That doesn't need to be written in go.mod, so the requirement is removed.

Thinking about what we should do here:
#33284 is related. Each go get command should print upgrades, downgrades, additions, and removals. That would make it more clear what's happening.
In general, the behavior of removing requirements during a downgrade seems strange to me. They'll almost always be added back by the next build command or go mod tidy. Maybe it would be better for the second go get command to fail with an error.
cc @matloob

The second go get command downgrades that module to an older version (as far as MVS is concerned).

This is not a downgrade; it's a later version. Is there an issue therefore with the pseudo version calculated for the later version?
$ git log -1 v0.0.1-2020.1.3
commit 508b5eb18ee2f667ce06235ed383647038e2afc5 (tag: v0.0.1-2020.1.3, tag: 2020.1.3, origin/release.2020.1)
Author:     Dominik Honnef<EMAIL_ADDRESS>AuthorDate: Sat Feb 22 12:45:36 2020 +0100
Commit:     Dominik Honnef<EMAIL_ADDRESS>CommitDate: Sat Feb 22 12:51:38 2020 +0100

    Version 2020.1.3
$ git log -1 01541ecfc85e
commit 01541ecfc85eb4c7488ad2fac0bdf94e52782e41
Author:     Dominik Honnef<EMAIL_ADDRESS>AuthorDate: Sun May 10 19:39:21 2020 +0200
Commit:     Dominik Honnef<EMAIL_ADDRESS>CommitDate: Sun May 10 19:39:21 2020 +0200

    lint: skip work for non-initial packages

    Don't waste cycles trying to collect and filter problems from
    non-initial packages; they have none. This also fixes a bug where we
    would complain about unmatched linter directives in dependencies.

It's chronologically newer, but MVS just looks at the versions themselves, and v0.0.1-2020.1.3 is higher than that pseudo-version.
In this case, it doesn't look like it's possible to construct a valid pseudo-version for the same commit that compares higher than v0.0.1-2020.1.3. The base version of a pseudo-version must correspond to a tagged release or pre-release that's an ancestor of the pseudo-version commit. That would be written as v0.0.1-2<IP_ADDRESS>.20200510173921-01541ecfc85e. But it doesn't look like v0.0.1-2020.1.3 is an ancestor of 01541ecfc85e.
go<EMAIL_ADDRESS>invalid pseudo-version: revision 01541ecfc85e is not a descendent of preceding tag (v0.0.1-2020.1.3)

Ah thank you for that analysis. In which case I think this is an issue to raise on @dominikh's side because the situation is a function of the versioning strategy for that project.
Thanks very much @jayconrod - would you like me to leave this open for the other points you raised above?

Sounds good, let's close this then.
I'd still be curious what folks think about go get reporting an error instead of removing dependencies during a downgrade. If that sounds like a good idea, I can open a new issue for that specifically.

This seems to make it difficult to use release branches? All my tagged releases are on release branches, at commits that are specific to the release branch. No tagged release will be an ancestor of the master branch. How would a user create a pseudo-version for a commit referring to master in that case?

Re-opening on the basis @dominikh's comment seems related to the issue as reported. @jayconrod - please close/redirect as appropriate, just didn't want you to miss the response.

@dominikh, if you apply tags only to release branches, then you should also tag corresponding pre-release tags to the development branch to inform the go command of the relative ordering between the two branches.
For example, if you cut a v1.2 release branch and tag it v1.2.0, then you could tag the commit following it on the main branch as v1.3.0-0.dev, so that all pseudo-versions after that point are treated as higher than any v1.2 but lower than v1.3.0-alpha.1.

Thank you @bcmills, I will explore that and plan fixing my tags :-)

Maybe we should document this somewhere clearly. I've done bugfix releases in release branches via cherry-picking in a few projects (just like the Go repo does), so I probably have the same issue - I just never noticed.

CL 229678 adds some documentation about pseudo-versions. Most of the detail is already in go help modules though.
https://tip.golang.org/ref/mod#go-get will be the reference on go get. Perhaps that should say more about downgrades. There are some TODOs to provide more examples and diagrams in there.
What else would be helpful?

What else would be helpful?

The advice in https://github.com/golang/go/issues/38985#issuecomment-626925765  for module authors regarding release branches I suspect?

Sounds good. I've added a note to #33637 to document this.

@jayconrod golang/mock has this same bug today; master is newer software, but it gets the version v1.4.4-0.20210128224731-b9a8584115bc since the v1.4.4 tag was done in a separate branch.
 I saw the downgrade section, but that's not what I want here. I want something like https://github.com/golang/go/issues/38985#issuecomment-626925765 :)
I can use that link for now, but I just want to ensure this is being tracked. I could not find a reference to "branch" or "downgrade" in https://github.com/golang/go/issues/33637 (other than the section I already linked to).

@jayconrod golang/mock has this same bug today; master is newer software, but it gets the version v1.4.4-0.20210128224731-b9a8584115bc since the v1.4.4 tag was done in a separate branch.
 I saw the downgrade section, but that's not what I want here. I want something like https://github.com/golang/go/issues/38985#issuecomment-626925765 :)
I can use that link for now, but I just want to ensure this is being tracked. I could not find a reference to "branch" or "downgrade" in https://github.com/golang/go/issues/33637 (other than the section I already linked to).

I'm also just realising that this is a more widespread problem than we think. my mvdan.cc/sh/v3 module uses branches for backporting into stable versions, so it has the same out-of-order @master problem. github.com/tendermint/tendermint is another such module where v0.34.x releases come from a backporting branch, and @master is most likely incorrectly behind.
For those two modules, it probably doesn't cause actual bugs in practice, since it is not common for many modules to indirectly depend on either of them at the same time, forcing a MVS upgrade. I imagine it happened with golang/mock since it's a common test dependency; if you want an "older but actually newer" v1.4.4-0.20210128224731-b9a8584115bc and one of your dependencies wants the "newer but actually older" v1.4.4, you get the bug.

I'm also just realising that this is a more widespread problem than we think. my mvdan.cc/sh/v3 module uses branches for backporting into stable versions, so it has the same out-of-order @master problem. github.com/tendermint/tendermint is another such module where v0.34.x releases come from a backporting branch, and @master is most likely incorrectly behind.
For those two modules, it probably doesn't cause actual bugs in practice, since it is not common for many modules to indirectly depend on either of them at the same time, forcing a MVS upgrade. I imagine it happened with golang/mock since it's a common test dependency; if you want an "older but actually newer" v1.4.4-0.20210128224731-b9a8584115bc and one of your dependencies wants the "newer but actually older" v1.4.4, you get the bug.

@mvdan I don't think this is explicitly called out in https://golang.org/ref/mod yet. I need to go through comments in #33637 and make sure everything is covered before closing that issue out.
This seems like something that should be called out in Pseudo-versions with cross-references in a couple other relevant sections.

@mvdan I don't think this is explicitly called out in https://golang.org/ref/mod yet. I need to go through comments in #33637 and make sure everything is covered before closing that issue out.
This seems like something that should be called out in Pseudo-versions with cross-references in a couple other relevant sections.

Ah, thanks. I had entirely missed https://github.com/golang/go/issues/33637#issuecomment-626953736 as it was hidden by GitHub.

Thanks @mvdan for bringing this to our (Tendermint's) attention as an example team causing problems with our release tags :)
One thought, from Tendermint's perspective: In an ideal world, people wouldn't actually be able to automatically "upgrade" to master at all, because we really want people to use releases. Although master is stable in the sense that we expect it to work, pass CI, etc, it is not stable in the sense that the APIs change somewhat willy-nilly and we often make other breaking changes. If someone inadvertently upgrades to master from a release tag, they will be in for a bad time!

In an ideal world, people wouldn't actually be able to automatically "upgrade" to master at all

I think this already happens if your tags and branches follow semver. If a user is on the latest v0.34.2 tag, any automatic upgrades or go get -d github.com/tendermint/tendermint@latest would do nothing, as it's already the latest tag. At most, it would upgrade the user to a v0.34.3 or 0.35.0 stable tag. It's only the explicit go get -d .../tendermint@master that would pick up an unstable master version.


host requirements check enhancements

the *req bash functions in funcs.sh check that the host meets the requirements for various scenarios
for example, pvreq checks that pv (pipeviewer) is installed https://github.com/smanders/buildpro/blob/22.01/.devcontainer/funcs.sh#L42-L47
pvreq should be renamed to offlinereq to check that the host has the commands/packages necessary to create or use an offline container bundle and should be enhanced to check that bzip2 is installed on the host, since the docker save command used to create/save the docker image https://github.com/smanders/buildpro/blob/22.01/.devcontainer/denv.sh#L42 uses bzip2 to compress the docker image to a .tar.bz2 file
also, all of the compose.*.yml files have a volume specified (for example, compose.bld.yml)
- ~/.gitconfig:/home/${USER}/.gitconfig

that makes a user's .gitconfig from their home directory available in the container so that a user that has set up their username and email on the host can have the same configuration in the container (for git commits, etc)
configuring git is part of the suggested host system setup for VANTAGE, etc:  https://isrhub.usurf.usu.edu/Vantage/VantageSuper/blob/VANTAGE_3-62-0/README.md#on-both-platforms-windowslinux

set up or verify git config

git config --global user.name "Someone Here"
git config --global user.email<EMAIL_ADDRESS>git config --global --list

however, if the user doesn't have a .gitconfig in their home directory on the host, then docker creates an empty .gitconfig directory and it seems that some git commands in the container don't function properly... for example, we were seeing that a git checkout called from a cmake function was failing https://github.com/smanders/externpro/blob/22.01/modules/xpfunmac.cmake#L1529-L1536
perhaps one of the *req bash functions can check that the user has a .gitconfig file in their home directory and if it doesn't exist display a message prompting the user to create one

completed with commits referenced above


change: restructure and re-use image finding logic to make image rm output more concise (#1556)

Ref #1556 & #1551
User-Facing changes
acorn image rm will now output the actions it took similar to docker image rm to make it clear if it just dropped some tag or actually deleted a whole image. See Test case further down.
Note to reviewers
I'm not sure about the changes to client.ImageDelete as it's a little unconventional. Let me know what you think or if you have a better idea to solve this.
This is what we talked about @ibuildthecloud
Checklist

[x] The title of this PR would make a good line in Acorn's Release Note's Changelog
[x] The title of this PR ends with a link to the main issue being address in parentheses, like: This is a title (#1216). Here's an example
[x] All relevant issues are referenced in the PR description. NOTE: don't use GitHub keywords that auto-close issues
[x] Commits follow contributing guidance
[x] Automated tests added to cover the changes. If tests couldn't be added, an explanation is provided in the Verification and Testing section
[x] Changes to user-facing functionality, API, CLI, and upgrade impacts are clearly called out in PR description
[ ] PR has at least two approvals before merging (or a reasonable exception, like it's just a docs change)

Tests
$ acorn images
REPOSITORY   TAG       IMAGE-ID
foo          latest    c5327c2d0729
foo          v1        c5327c2d0729
foo          v2        c5327c2d0729

$ acorn image rm foo:v1
Untagged foo:v1

$ acorn image rm c53
  ✗  ERROR:  deleting c53: unable to delete c53 (must be forced) - image is referenced in multiple repositories

$ acorn image rm c53 -f
Untagged foo:latest
Untagged foo:v2
Deleted c5327c2d0729870b9f8b0a9269746f9ae7383843e7029da524ae76ef72a7080d

@iwilltry42 this lgtm. I assume the unconventional part of client.ImageDelete that you're talking about is the second return value, the list of tags that were deleted. I think it's fine .


Android, reset wallet light mode modal buttons wrong styling

Should check all lightmode modals

This issue also "infects" the Backup wallet and Restore wallet menu options if they're selected after the Reset wallet function.
Before Selecting Reset wallet—Styling looks as intended

After Selecting Reset wallet—Styling gets inherited from bad Reset wallet styling

If you interact with a button, even if it's mis-styled, the styling gets switched to as intended

@kayaelle I think we need to fix this issue for the test with BCSI. They're likely to see this screen and bug.


nxp: imx8ulp: add support for and enable clock control

Depends on:

[x] https://github.com/zephyrproject-rtos/zephyr/pull/70219

@nordic-krch can you please help review this? Thanks!


Rename bard facts model

BREAKING CHANGE

Rename the bard-facts model to something more appropriate
Move the fetchNext and fetchPrevious methods from model to service

License
I confirm that this contribution is made under an MIT license and that I have the authority necessary to make this contribution on behalf of its copyright owner.

Rename to bard to fili as well?

Rename bard-facts to fili-facts?

@kevinhinterlong the idea is to use the same model for any datasource.navi-facts is therefore apt for this reason.

Rename bard-facts to fili-facts?

@kevinhinterlong the idea is to use the same model for any datasource.navi-facts is therefore apt for this reason.

Yea, just pointing out that the linked ticket says

We have some services named bard-facts, bard-dimensions, bard-metadata. Bard has been renamed to fili, so this could also be renamed appropriately.

so I wasn't sure if the rename of bard -> fili was missed


License considerations

I work for VMWare, and we are open sourcing a large project called Cloud Foundry, which is available for download on Github, and also available as a service at cloudfoundry.com. We have a number of participants, including people in industry, academia, and government.
We have chosen to license our software under Apache v.2, which is incompatible with GPL and LGPL as you can read here: http://www.apache.org/licenses/GPL-compatibility.html and here http://www.apache.org/legal/resolved.html
If MIT or Apache is not your preference, the Ruby license offers both GPL, and Apache compatible terms.
http://www.ruby-lang.org/en/LICENSE.txt
Thanks for your consideration.
Matt

hmmm.  chews on this

Thanks for chewing a bit.
Our alternative is to cut it out of our release, which is not a hug deal, but we love the project and would rather keep it intact.


Version 0.2.0 doesn't compile, missing sys.rs?

Commit 45c353dbe069952e6a8679b4d498ab0ff3032eea introduces a line in lib.rs:9 "mod sys;", but there is no sys.rs or sys/mod.rs committed. Is this a missing file?
Related: When I try to compile errno 0.2.0, I get:
/home/dko/.cargo/registry/src/github.com-1ecc6299db9ec823/errno-0.2.0/src/lib.rs:9:5: 9:8 error: file not found for module sys
/home/dko/.cargo/registry/src/github.com-1ecc6299db9ec823/errno-0.2.0/src/lib.rs:9 mod sys;
^~~
/home/dko/.cargo/registry/src/github.com-1ecc6299db9ec823/errno-0.2.0/src/lib.rs:9:5: 9:8 help: name the file either sys.rs or sys/mod.rs inside the directory "/home/dko/.cargo/registry/src/github.com-1ecc6299db9ec823/errno-0.2.0/src"
error: aborting due to previous error
Build failed, waiting for other jobs to finish...
error: Could not compile errno.
To learn more, run the command again with --verbose.

There is no sys.rs, because the code uses the #[cfg_attr] attribute to select either unix.rs or windows.rs depending on the platform.
Can you give me more info about your platform, rustc version, etc.? I haven't been able to reproduce that error, whether on my machine or on CI.

Ah hah, interesting.
Looks like I'm using rustc 1.10.0 (cfcb716cf 2016-07-03) . I'm using Ubuntu
16.04, 64-bit. Perhaps my rustc is too old? Looks like 1.13.0 is the latest
one. I'll try that out...
On Mon, Dec 5, 2016 at 2:36 PM, Chris Wong<EMAIL_ADDRESS>wrote:

There is no sys.rs, because the code uses the #[cfg_attr]
https://doc.rust-lang.org/book/conditional-compilation.html#cfg_attr
attribute to select either unix.rs or windows.rs depending on the
platform.
Can you give me more info about your platform, rustc version, etc.? I
haven't been able to reproduce that error, whether on my machine or on CI.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/lfairy/rust-errno/issues/10#issuecomment-265000532,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXV8X4h0gwqm0pI1OVYIdyMYevdNGL3ks5rFJIGgaJpZM4LEwMI
.

Aha! It's probably rust-lang/rust#25544, which was fixed after 1.10 was released. If the issue is what I think it is, then upgrading should fix the problem.

I did some testing. Rust 1.12 accepts the code without error, but Rust 1.11 fails with the error you describe.
I'll refactor the code so that it works on both.

Released as 0.2.1. Thanks for reporting!

Thank you for your help! :)

David

On Tue, Dec 6, 2016 at 12:12 AM, Chris Wong<EMAIL_ADDRESS>wrote:

Released as 0.2.1 https://crates.io/crates/errno/0.2.1. Thanks for
reporting!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/lfairy/rust-errno/issues/10#issuecomment-265087199,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXV8TW4euhPx8xhXKqQCEqWq-bYuvMwks5rFRjagaJpZM4LEwMI
.


mathieu_a reports incorrect values

mathieu_a apparently reports incorrect results for some values of q.
>>> mathieu_a([0,1,2,3,4,5,6,7,8], 84/4.0)
array([-33.09230715, -15.82650917,   0.26955854,  14.98845431,
        27.77208701,  14.98845431,  45.0254355 ,  54.48773231,  67.72072264])

note that 14.98845431 appears twice in the list, although it should not.
Apparently yet another specfun.f bug.
This seems to occur also at other parameters:
import numpy as np
import scipy as sp
import scipy.special as spfun
from matplotlib import pyplot as plt

uplim =120
Npts =1000
Nstates =8
q = np.linspace(0, uplim/4.0, Npts)
EA = np.zeros([Npts,Nstates])
EB = np.zeros([Npts,Nstates])
U = 4*q

for i in range(Nstates):
    a = spfun.mathieu_a(i,q)
    b = spfun.mathieu_b(i+1,q)
    EA[:,i] = a + 2*q
    EB[:,i] = b + 2*q
    plt.fill_between(U, EA[:,i], EB[:,i])

plt.show()

I agree that looks wrong.  They should be monotonically increasing according to http://dlmf.nist.gov/28.2#E25.

Section 3 of http://www.biblioteca.org.ar/libros/90028.pdf gives an alternative matrix-based implementation.  Using something like the following code, it gives a plot that seems similar to the one above, but not quite the same and without the discontinuity bugs.
from __future__ import print_function, division

import numpy as np
from numpy.testing import assert_allclose, assert_array_less

import scipy.linalg

N = 200

def mathieu_a_evens(r, q):
    n = N
    M = np.zeros((n, n))
    M = M + np.diag(np.square(2*np.arange(n)))
    M = M + np.diag(q * np.ones(n-1), k=-1)
    M = M + np.diag(q * np.ones(n-1), k=1)
    M[0, 1] *= np.sqrt(2)
    M[1, 0] *= np.sqrt(2)
    return scipy.linalg.eigvalsh(M)[:r]

def mathieu_a_odds(r, q):
    n = N
    M = np.zeros((n, n))
    M = M + np.diag(np.square(1 + 2*np.arange(n)))
    M = M + np.diag(q * np.ones(n-1), k=-1)
    M = M + np.diag(q * np.ones(n-1), k=1)
    return scipy.linalg.eigvalsh(M)[:r]

def my_mathieu_a(n, q):
    v = np.zeros(n)
    evens = mathieu_a_evens((n+1) // 2, q)
    odds = mathieu_a_odds(n // 2, q)
    v[:n:2] = evens
    v[1:n:2] = odds
    return v

def mathieu_b_evens(r, q):
    n = N
    M = np.zeros((n, n))
    M = M + np.diag(np.square(2 + 2*np.arange(n)))
    M = M + np.diag(q * np.ones(n-1), k=-1)
    M = M + np.diag(q * np.ones(n-1), k=1)
    return scipy.linalg.eigvalsh(M)[:r]

def mathieu_b_odds(r, q):
    n = N
    M = np.zeros((n, n))
    M = M + np.diag(np.square(1 + 2*np.arange(n)))
    M = M + np.diag(q * np.ones(n-1), k=-1)
    M = M + np.diag(q * np.ones(n-1), k=1)
    M[0] -= q
    return scipy.linalg.eigvalsh(M)[:r]

def my_mathieu_b(n, q):
    v = np.zeros(n)
    evens = mathieu_b_evens((n - 1) // 2, q)
    odds = mathieu_b_odds(n // 2, q)
    v[0] = np.nan
    v[2:n:2] = evens
    v[1:n:2] = odds
    return v

def foo_plot():

    import numpy as np
    import scipy as sp
    import scipy.special as spfun
    from matplotlib import pyplot as plt

    uplim =120
    Npts =1000
    Nstates =8
    qs = np.linspace(0, uplim/4.0, Npts)
    EA = np.zeros([Npts,Nstates])
    EB = np.zeros([Npts,Nstates])
    U = 4*qs

    b_q_i = []
    a_q_i = []
    for qidx, q in enumerate(qs):
        ans = my_mathieu_a(Nstates+1, q)
        bns = my_mathieu_b(Nstates+1, q)
        a_q_i.append(ans)
        b_q_i.append(bns)

    for i in range(Nstates):
        for j in range(Npts):
            q = qs[j]
            if i > 0 and q > 0:
                assert_array_less(a_q_i[j][i-1], b_q_i[j][i])
                assert_array_less(a_q_i[j][i-1], a_q_i[j][i])
            if i > 2 and q > 0:
                assert_array_less(b_q_i[j][i-1], b_q_i[j][i])
            EA[j, i] = a_q_i[j][i] + 2 * q
            EB[j, i] = b_q_i[j][i+1] + 2 * q
        plt.fill_between(U, EA[:,i], EB[:,i])

    plt.savefig('mathieu-matrix-style-200.svg')

foo_plot()

Yeah, that looks like a much better way to go at it. For the elliptic
harmonics we just throw DSTEVR from lapack at the problem, so you don't
even need to calculate all eigenvalues and the memory usage is linear in
n with reasonable prefactor.

Ok, it's not exactly the same thing as for lame polynomials, since the
matrices in the lame case are finite and results exact...

Yeah I don't know enough about functional analysis to understand exactly how these characteristic values are related to eigenvalues of finite matrices.

Would this be appropriate as part of a GSOC 2015?  I guess it's about that time of year.  Also a wrapper for PROPACK sparse svd would be nice, but I don't think I could volunteer to be involved in it.

I got same issue using Python 3.6, it seems this bug has not been fixed~

https://github.com/scipy/scipy/issues/4479#issuecomment-72968958 looks like a good approach, especially using the appropriate eigensolver (https://github.com/scipy/scipy/issues/4479#issuecomment-72973684). Looks like it is missing M[0, 0] = 1 + q in mathieu_a_odds (as the second to last line, for instance) because the top left entry is different from the rest of the main diagonal.

This change resolves the discrepancies in the plots.
The matrix size N needed to get accurate results seems to increase a bit with q, though, so we'd need to study that relationship and/or implement a way of checking for convergence. The easy way, of course, is to increase N and look for the difference in the desired eigenvalue, but perhaps someone more familiar with the theory can suggest something more elegant.
If we're at all concerned with the patch in gh-14577, I'd prefer to replace the implementation with something like this.

Of the LAPACK routines available in Python, dstebz seems to be one of the most appropriate since it can find just the eigenvalue we need given the main diagonal and off-diagonal of the symmetric, tri-diagonal matrix.
To generate the matrix:
import numpy as np
def _get_diags(N, q, even, ab):
    # Get the main- and off-diagonal of the symmetric, tridiagonal matrix

    e = np.full(N - 1, q, dtype=np.float64)  # off diagonal

    if ab == 'a':
        if even:
            d = np.arange(0., 2*N-1, 2)**2
            e[0] *= np.sqrt(2)
        else:
            d = np.arange(1., 2*N, 2)**2
            d[0] += q
    else:
        if even:
            d = np.arange(2., 2*N+1, 2)**2
        else:
            d = np.arange(1., 2*N, 2)**2
            d[0] -= q

    return d, e

and to solve for the desired characteristic value:
from scipy.linalg.lapack import dstebz

@np.vectorize
def mathieu_ab(n, q, ab):
    # Solve for the desired eigenvalues

    if ab == 'b' and n == 0:
        return np.nan

    r = ((n + 2) // 2) if ab == 'a' else ((n + 1) // 2)  # e-val number
    N = 2*r + 5  # matrix size

    even = (n % 2 == 0)
    d, e = _get_diags(N, q, even, ab)

    _, evals, _, _, _ = dstebz(d, e, 2, 0, 0, r, r, 1e-20, 'E')
    return evals[0]

In terms of accuracy, it compares well against special.mathieu_a and special.mathieu_b for low q:
from scipy import special

n = np.arange(8)[:, np.newaxis]
q = np.arange(20)

res = mathieu_ab(n, q, 'a')
ref = special.mathieu_a(n, q)
np.testing.assert_allclose(res, ref)  # passes

res = mathieu_ab(n, q, 'b')
ref = special.mathieu_b(n, q)
np.testing.assert_allclose(res, ref)  # passes

and produces the desired plot:
import numpy as np
from matplotlib import pyplot as plt

uplim = 120
Npts = 1000
Nstates = 8
q = np.linspace(0, uplim/4.0, Npts)
EA = np.zeros([Npts, Nstates])
EB = np.zeros([Npts, Nstates])
U = 4*q

for i in range(Nstates):
    a = mathieu_ab(i, q, 'a')
    b = mathieu_ab(i+1, q, 'b')
    EA[:,i] = a + 2*q
    EB[:,i] = b + 2*q
    plt.fill_between(U, EA[:,i], EB[:,i])

plt.show()

Interpretation of the plot: a transformed and filled version of DLMF Figure 28.2.1, which just plots the characteristic values of the even and odd Mathieu functions as q varies.
As I play with it more, I'm less convinced that it can be competitive with the existing code in terms of performance for large n, although I'm not sure what orders people will realistically be interested in.


support of new PyYaml 5.1: deprecated YAMLLoadWarning

Robotframework 3.1.1 works fine with PyYaml 3.13 on Python 3.7.2 Win64. Now switching to   new version of PyYaml 5.1, deprecated YAMLLoadWarning is reported:
robot\variables\filesetter.py:77: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.   variables = yaml.load(stream)

same issue happens to python2.7 pyyaml and robot


[Help-Wanted] How can i update the height of image?

alterChildren={node => {
    if (node.name === "iframe") {
        delete node.attribs.width;
        delete node.attribs.height;
     }
       if (node.name === "img") {
          delete node.attribs.width;
           node.attribs.height =
                (node.attribs.height * PixelRatio.get()) / 2;
<!-- here height is updated but in view it doesnot reflect -->
        }
        return node.children;
    }}

From version 5.x on, we have a new implementation to scale images. You can read our RFC here, and see the first pre-release implementing the RFC for images here: https://github.com/archriss/react-native-render-html/releases/tag/v5.0.0-alpha.1.


Create Modal Component

Basic Information
create a reusable component for a modal
Other Information
Follow the figma design

Completed in #61


As a user I want to trace all my internship application’s contact

... so that I can easily follow up on the application

This can be integrated into a new Find Command that searches through all fields

Done by CH PR#85


Index not in list error when evaluating models zero-shot

Hi,
I would like to evaluate a few different BERT models zero-shot on MNLI, SNLI, QNLI, and RTE. As such, I am running this following command, for example:
TYPE=prompt TASK=MNLI BS=2 LR=1e-5 SEED=42 K=16 MODEL=roberta-large bash run_experiment.sh "--no_train"

Unfortunately, this gives me a somewhat cryptic error message:
Traceback (most recent call last):
  File "run.py", line 632, in <module>
    main()
  File "run.py", line 465, in main
    FewShotDataset(data_args, tokenizer=tokenizer, mode="test", use_demo=("demo" in model_args.few_shot_type))
  File "/sailhome/rtaori/zero-shot-generalization/LM-BFF/src/dataset.py", line 456, in __init__
    self.features.append(self.convert_fn(
  File "/sailhome/rtaori/zero-shot-generalization/LM-BFF/src/dataset.py", line 575, in convert_fn
    inputs = tokenize_multipart_input(
  File "/sailhome/rtaori/zero-shot-generalization/LM-BFF/src/dataset.py", line 243, in tokenize_multipart_input
    mask_pos = [input_ids.index(tokenizer.mask_token_id)]
ValueError: 50264 is not in list

A similar error occurs for SNLI, QNLI, and RTE.
Do you have any advice on how to deal with this? Any help would be much appreciated!
Thanks in advance,
Rohan

Hi Rohan, sorry for the trouble! This is caused by a bug in the training script (it did not load task-specific parameters before). Now this is fixed. Thanks for letting us know!
Tianyu

Great! Thank you so much @gaotianyu1350 !

Hi,
Thanks again for the great work.
Today I actually encountered the same error, when testing a model prompt-tuned on SST-2 directly on imdb movie review dataset, by replacing the dev.tsv in /original with the imdb dataset. As you mentioned in the paper and in issue #14 .
What I did:

prompt tune a model ckpt on SST-2, and save the model
replace the data/original/SST-2/dev.tsv with my own imdb dataset, and format it correctly
run tools/generate_k_shot.py again. The data/k-shot/SST-2/test.tsv turns to imdb.
load the model in 1) and put --no_train, --do_predict, and other necessary flags to zero-shot on the imdb dataset.
Error occurs.
Traceback (most recent call last):
File "run.py", line 628, in
main()
File "run.py", line 466, in main
if training_args.do_predict
File "/home/yb1025/Research/ML_2/robustness/LM-BFF/src/dataset.py", line 465, in init
verbose=True if _ == 0 else False,
File "/home/yb1025/Research/ML_2/robustness/LM-BFF/src/dataset.py", line 585, in convert_fn
other_sent_limit=self.args.other_sent_limit,
File "/home/yb1025/Research/ML_2/robustness/LM-BFF/src/dataset.py", line 243, in tokenize_multipart_input
mask_pos = [input_ids.index(tokenizer.mask_token_id)]
ValueError: 50264 is not in list

Sorry for the inconvenience but do you happen to know what might went wrong?
Many thanks.


MFA for SAML2 SP based on CAS Service Registry EntityID

Would like MFA triggered for a specific SAML2 SP inside the CAS service registry.  would like to do it using entityID in SAML2 SP service registry JSON.
https://groups.google.com/a/apereo.org/forum/?utm_medium=email&utm_source=footer#!msg/cas-user/j8zJ_t2-u9s/KcLlJSM5BwAJ

[] CAS server version 5.0
[] Container/environment type/version (Tomcat, Jetty, Java, Linux/Windows, etc) . tomcat 8

This is now handled in 5.1 SNAPSHOTs

thanks!


Update readwise-reader extension: add save links command

Description

Add a new command, Save links, to save multiple links to Readwise Reader. The API has a limit of 20 requests per second. If you try to save more than 20 links, this command will manage the rate limit automatically.
Additionally, allow users to optionally set the author of a source if Readwise Reader cannot correctly identify the author. This way, users can manually assign an author to make the resource more manageable.
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Thanks for your contribution 🔥
@zach-fuller do you want to check this?

@zach-fuller Could you please take a moment to check this PR? Thank you!


It seems that the tool isnt working again :(

[←[36mINFO←[0m]  CHEKING IF THE GAME IS AVAILABLE FOR STEAM WORKSHOP DOWNLOADS . . .
[←[31mERR←[0m]  GAME NOT AVAILABLE OR SERVER IS DOWN, CODE RESPONSE: 400
Presione una tecla para continuar . . .
I was trying to download this mod https://steamcommunity.com/sharedfiles/filedetails/?id=1870630263 , from the webpage i can download it witouth problems like the last time.

Well, I have check it quickly and again the endpoints changed, but this time also the structure of the request, is a chaos and inefficient, not follow any of the API good practices...
This change is going to take me a little longer...
Thanks for the warning💕
--
No se si estos cambios de estructura son precisamente para que aplicaciones de terceros no autorizadas dejen de funcionar, pero si continuan con esta dinamica no se si seguire manteniendo el proyecto :-/

The guys behind steamworkshopdownloader.io do tricky things to prevent third parties consume their API.
Nothing I can't do reverse engineering, but there are no guarantees that change the way of working every month, maybe a different approach... launch fake browser and capture the download...
Seriously, under the hood looks an inefficient chaos api, they could even put a payment model to consume the api externally, if any of steamworkshopdownloader.io dev is reading this contact me I could help with the project.
Well... I don't feel motivated to continue maintaining this, sorry

I fixed it for you, and now it works perfectly
Pull requests

Well... that was unexpected, i appreciate it a lot, tomorrow I will publish the release 💕

New release published, looks everything works perfectly, thank you again @nguyenvancaokyfpt


Add to PyPi?

Just went to install this, and discovered it's not on PyPi.
Any chance you can add it there, to keep things easy for potential users? :smile:

+1 at least add a setup.py so it can be installed via pip.

I made a PR here https://github.com/jpaugh/agithub/pull/19 Hope it makes it...

Good thinking. :smile:

Sorry guys! I'd like to say I've been off saving the world, but really I've just been busy with other things. I did merge in PR #19, though.

Yep. I didn't package to PyPi because I'm not the owner. Meanwhile it needs to be installed from repo and build after that. I didn't have the time today to do a more elegant solution than this. I'll be working on that though.  Great job @jpaugh
Saludos…
Marcos Luis Hernández
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
1023 Pennsylvania Av. #11
Miami Beach, FL. 33139
[website]: http://xiryvella.com/ http://xiryvella.com/
[github]: https://github.com/marcoslhc https://github.com/marcoslhc
[twitter]: @marcoslhc http://twitter.com/marcoslhc
[public-key]: https://keybase.io/marcoslh https://keybase.io/marcoslh
[mobile]: +1<PHONE_NUMBER>
[info]: https://www.google.com/profiles/marcoslhc https://www.google.com/profiles/marcoslhc

El ene 12, 2016, a las 20:22, Jonathan Paugh<EMAIL_ADDRESS>escribió:
Sorry guys! I'd like to say I've been off saving the world, but really I've just been busy with other things. I did merge in PR #19 https://github.com/jpaugh/agithub/pull/19, though.
—
Reply to this email directly or view it on GitHub https://github.com/jpaugh/agithub/issues/17#issuecomment-171121766.

Awesome work @marcoslhc! You've given me the impetus to fix up the project some. I updated the setup.py (and project structure) quite a bit, and I hope it still works okay....

Would you be so kind as to push v2.0 to PyPI, @jpaugh?

Hmm. The old version is on PyPI, but I've lost access to the account. I'll have to take it up with PyPI's admins... We shall see.

I've added a support request with the PyPi project.

Looking through the SourceForge tracker, I'm not seeing any replies whatsoever. You might have better luck over at Bitbucket, which appears to be active.

Thanks, @blackwind! Done. https://bitbucket.org/pypa/pypi/issues/417/claim-package-agithub

Looks like that is at https://github.com/pypa/pypi-legacy/issues/417 now

The current status on this is that @jaredhobbs asked @jpaugh back in August 2016 what his pypi username was in order to transfer ownership of the pypi project from Jared to Jonathan. @jpaugh didn't reply in that ticket and the pypi project appears to still be owned by @jaredhobbs
@jpaugh also implied he'd prefer if someone else would maintain the process of uploading to pypi
On the bright side, @jaredhobbs appears to have kept pypi up to date as it's version is the same as the one in the head of master.

@jpaugh I'd love to hand this over to you if you would confirm your pypi username for me!

@jaredhobbs Thank you for your efforts to maintain this in PyPi, and thank you all for your interest in the project. Unfortunately, I have lost interest in this project, and have been faking it (poorly) for some time now. I believe AGithub would be better off in someone else's hands. Please see #35 for details.

@jaredhobbs My pypi username is jpaugh. If you decide to transfer ownership to me, please let me know in a comment here. However, as per my announcement on issue #35, my only intention is to transfer ownership of the project to a new maintainer, if one steps forward.

No problem! I'll just hang on to it until you've chosen a maintainer as per your post in #35.

@jaredhobbs Thanks for transferring the pypi ownership to me.
@jaredhobbs So in looking at the code on pypi I see some discrepancies from the 2.1 release in GitHub.
It looks like some automated cleanup was done by some piece of software between the source code and the pypi package release causing things like

replacing ' with "
importing explicit classes from modules instead of *
importing missing (e.g. base64) modules
wrapping lines to be pep008 compatible
removing duplicate methods (e.g. in the unit tests)

Any objections with whatever the next release is losing these automated changes that aren't reflected in the source code and working towards getting those types of changes (PEP008 conformance and other cleanup) into the source code so that what people are getting via pypi is the same as what's tagged in github?

I don't think that was automated clean up... I think that was my ocd cleanup in my own fork. Anyway, fine by me!

Sounds good. Do feel free to PR your fork with the cleanup.
I'll close this ticket out. At the moment I'm now also an owner of the agithub pypi package, it's at v2.1 which maps to Release v2.1


v2.5.7 - replace Plots with RecipesBase

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/21738
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v2.5.7 -m "<description of version>" b301f9878eeac8f025ab4311fbe8c59ab42ced8c
git push origin v2.5.7


New model compiler implementation: output IR file format (for OpenVINO2020)

To complete model compiler scenario.

Has already be completed in openvino_util.py file when implement the onnx-file to openvino.