Type equality from universe member equality

There are apparently no rules for deducing equality of types from an equality of members of a universe. See this goal for an example:
  Goal #7375.
    ty/a : (U #l kan)
    ty/b : (U #l kan)
    p : (path [_] (U #l kan) ty/a ty/b)
    a : ty/a
    >> ty/a = (@ p 0) type

There are, but right now you have to manually internalize it. It is relatively difficult for the auto tactic to decide whether we want to internalize EQ_TYPE or not.

One possible hack is to implement a duplicate of Path.EqAppCoonst for EQ_TYPE.

This is the function that needs more love: https://github.com/RedPRL/sml-redprl/blob/d036d52b1e374c4bc89295ab542671dd8ca59f10/src/redprl/refiner.fun#L536-L546

@favonia I didn't realize that there was a way to do this manually... How?

@jonsterling Use let.

@favonia Ah, I didn't realize that would work for EQ_TYPE goals. Thanks!

@cangiuli I can show you at some point what @favonia means.

@jonsterling That would be great, thanks!
I get that auto shouldn't always look for an equality in a universe, but I think the most straightforward goals (like the one above) should be solved automatically.

@cangiuli Yeah... I don't yet know how to make that goal get solved automatically, but I agree it is desirable and even plausible, once we revamp the automation.

@favonia Am I doing something wrong here?
Thm PathToFn(#l:lvl) : [
  (->
   [ty/a ty/b : (U #l kan)]
   [p : (path [_] (U #l kan) ty/a ty/b)]
   (-> ty/a ty/b))
] by [
  unfold Equiv;
  lam ty/a, ty/b, p, a.
    let eq : [(= ty/a (@ p 0) (U #l kan))] = auto.
      `(coe 0~>1 [x] (@ p x) a); auto; ?q
].

Then q prints three subgoals, the first of which is:
  Goal #7474.
    ty/a : (U #l kan)
    ty/b : (U #l kan)
    p : (path [_] (U #l kan) ty/a ty/b)
    a : ty/a
    eq : (= ty/a (@ p 0) (U #l kan))
    >> ty/a = (@ p 0) type

@cangiuli It's because equality types are written as (= ty m n) not (= m n ty). But I ran into other issues that maybe @jonsterling can help:
Thm PathToFn(#l:lvl) : [
  (->
   [ty/a ty/b : (U #l kan)]
   [p : (path [_] (U #l kan) ty/a ty/b)]
   (-> ty/a ty/b))
] by [
  unfold Equiv;
  lam ty/a, ty/b, p, a.
    let eq0 : [(= (U #l kan) ty/a (@ p 0))] = auto.
    let eq1 : [(= (U #l kan) (@ p 1) ty/b)] = auto.
      fresh i -> `(coe 0~>1 [x] (@ p x) a);
      let eq2 : [(= (U #l kan) (@ p i) (@ p i))] = auto. auto; ?
].

@favonia You need to write fresh i:dim ->...; that doesn't solve the whole problem. Then I get a goal like:
   Goal #100.
     ty/a : (U #l kan)
     ty/b : (U #l kan)
     p : (path [_] (U #l kan) ty/a ty/b)
     a : ty/a
     eq0 : (= (U #l kan) ty/a (@ p 0))
     eq1 : (= (U #l kan) (@ p 1) ty/b)
     >> (@ p i) kan type at l (redprl)

Are you sure that we have the rules in place to solve this? I searched through the refiner and I did not find anything that would let me conclude that something is a type from the fact that it is a member of a universe. But maybe I missed it.

@jonsterling Ah, yes, I keep forgetting i:dim. Here is a proof without improving StepEqTypeNeuByStruct.
Thm PathToFn(#l:lvl) : [
  (->
   [ty/a ty/b : (U #l kan)]
   [p : (path [_] (U #l kan) ty/a ty/b)]
   (-> ty/a ty/b))
] by [
  unfold Equiv;
  lam ty/a, ty/b, p, a.
    let eq0 : [(= (U #l kan) ty/a (@ p 0))] = auto.
    let eq1 : [(= (U #l kan) (@ p 1) ty/b)] = auto.
      fresh i:dim -> `(coe 0~>1 [x] (@ p x) a);
      let eq2 : [(= (U #l kan) (@ p i) (@ p i))] =
        exact ax; refine eq/eq/ax; refine path/eq/app; auto.
      auto
].

@favonia This proof doesn't seem finished, at least on my machine. And the goal I get suggests that there is a bug!
  Goal #137.
    ty/a : (U #l kan)
    ty/b : (U #l kan)
    p : (path [_] (U #l kan) ty/a ty/b)
    a : ty/a
    eq0 : (= (U #l kan) ty/a (@ p 0))
    eq1 : (= (U #l kan) (@ p 1) ty/b)
    eq2 : (= (U #l kan) (@ p i) (@ p i))
    _0 : dim
    >> (@ p _0) coe type

Why is i not the same as _0 in the above? Something is not right.

On the other hand, if I wrote the following, it works:
Thm PathToFn(#l:lvl) : [
  (->
   [ty/a ty/b : (U #l kan)]
   [p : (path [_] (U #l kan) ty/a ty/b)]
   (-> ty/a ty/b))
] by [
  unfold Equiv;
  lam ty/a, ty/b, p, a.
    let eq0 : [(= (U #l kan) ty/a (@ p 0))] = auto.
    let eq1 : [(= (U #l kan) (@ p 1) ty/b)] = auto.
      exact (coe 0~>1 [x] (@ p x) a);
      fresh i:dim -> auto;
      let eq2 : [(= (U #l kan) (@ p i) (@ p i))] =
        `ax; refine eq/eq/ax; refine path/eq/app; auto.

      auto
].

@favonia I bet you are on a version of RedPRL before I fixed #443. In any case, I think there is still a bug in the cut rule, since I shouldn't have been allowed to assert anything about i when i didn't appear in the context or as a meta.

@cangiuli Here's a cleaned up version of this proof that should work:
Thm PathToFn(#l:lvl) : [
  (->
   [ty/a ty/b : (U #l kan)]
   [p : (path [_] (U #l kan) ty/a ty/b)]
   (-> ty/a ty/b))
] by [
  unfold Equiv;
  lam ty/a, ty/b, p, a.
    `(coe 0~>1 [x] (@ p x) a);

    fresh i:dim -> auto;
      let eq0 : [ty/a = (@ p 0) in (U #l kan)] = auto.
      let eq1 : [(@ p 1) = ty/b in (U #l kan)] = auto.
      let eq2 : [(@ p i) in (U #l kan)] = refine path/eq/app; auto.
      auto
].

@favonia This proof doesn't seem finished, at least on my machine. And the goal I get suggests that there is a bug!

Hmm. The scope of i seems to be broken on the branch on your machine, no matter what the branch is. I am currently on the pushouts branch, and I don't want to switch in the middle of implementing the crazy Pushout.EqElim.

@favonia Don't worry about it, I'll look into the issue 😄
@cangiuli I'll write you a tactic to get rid of this crap

@cangiuli Here's an ultra-cleaned up version:
Tac ReflectUniv(#l:lvl, #k:knd, #t:tac) = [
  query goal <- concl.
  match goal {
    [a, b, k, l | #jdg{%a = %b type at %l with %[k:knd]} =>
      let aux : [%a = %b in (U #l #k)] = #t. auto
    ]
  }
].

Thm PathToFn(#l:lvl) : [
  (->
   [ty/a ty/b : (U #l kan)]
   [p : (path [_] (U #l kan) ty/a ty/b)]
   ty/a
   ty/b)
] by [
  lam ty/a, ty/b, p, a.
    `(coe 0~>1 [x] (@ p x) a);
    auto;

    (ReflectUniv #l kan #tac{auto});
    (ReflectUniv #l kan #tac{refine path/eq/app; auto})
].

I wonder what happened to %a = %b in (U %l %[k:knd])... which seems to fail in a mysterious way. And we should make the parser smart enough to parse %k at those locations as %[k:knd].

@favonia Using the pattern variables in that location isn't what we want; for instance, in some cases %l = omega, and we're not going to be able to prove our auxiliary goal if we use that.

It is true that we are not able to prove it, but I feel provability should not affect pattern matching?

Sorry I misunderstood what you say. I see the problem of levels now. What happened to (U #l %[k:knd]), then?

@favonia Doing this leads to problems (that would be solved with better subtyping support).

@favonia Doing this leads to problems (that would be solved with better subtyping support).

I thought SUB_UNIVERSE suffices. Could it be something about KCONST?

@favonia This proof doesn't seem finished, at least on my machine. And the goal I get suggests that there is a bug!

Did you figure out the bug?

Essentially closed by #502. Now, only the type equality at the omega level can remain not internalized.


Password strip policy in Wagtail

Issue Summary
Recently I was trying to check some of the password requirements inside Wagtail for my project and found an interesting issue. I observed that all Wagtail forms overriding password fields strip leading and trailing whitespaces in passwords (LoginForm, UserForm), with the exception of one specific case. The "Account" page in the "Password" section uses PasswordChangeForm, which doesn't override password field. Instead, it uses the Django PasswordChangeForm, wherein the password field is implemented with the strip=False argument for the CharField, so it doesn't strip password. Consequently, passwords entered on the "Account" page with leading or trailing whitespaces are saved as it is, and the login form subsequently removes these whitespaces during the login attempt, making it impossible to log in again.
In fact, all Django forms containing password fields have strip=False argument for CharField, so Django preserves leading and trailing whitespaces in passwords (AuthenticationForm, SetPasswordForm, etc.). To maintain consistency with Django's approach, it would be beneficial for Wagtail to adopt the same behavior, thereby retaining leading and trailing whitespaces in passwords.
Steps to Reproduce

Create a fresh new admin user and log in to admin panel.
Proceed to the "Account" page and modify the password, incorporating leading or trailing whitespaces. For instance, use the password " lorem ".
Log out from admin panel and try to log in with the new password. You will discover that you can't log in again.

Any other relevant information. For example, why do you consider this a bug and what did you expect to happen instead?
Expected Result: Successful login after password change.

I have confirmed that this issue can be reproduced as described on a fresh Wagtail project: yes

Technical details

Python version: 3.8.2
Django version: 4.2.4
Wagtail version: 5.1.1
Browser version: Google Chrome 116.0.5845.96

Wagtail is a CMS on top of Django. I'd say we better follow Django's practices and add strip=False to password fields. Make Wagtail behave like Django does.

Thanks @DimonLavron - consensus is that Wagtail should align with consistency here and also align with the way Django treats these fields.
I'm not sure on priorities of the core team, would you be willing to put together a PR with some tests for this? I'd be more than happy to help review it.

@lb- Sure, I'll do my best to make a PR for a fix to this issue.

Adding strip=False to the password's CharField would resolve this, right?
Like this:
class LoginForm(AuthenticationForm):
    username = forms.CharField(max_length=254, widget=forms.TextInput())

    password = forms.CharField(
        widget=forms.PasswordInput(
            attrs={
                "placeholder": gettext_lazy("Enter password"),
            }
        ),
        strip=False,
    )

I think that looks good.


before hook does not run before only test

When a test is marked as  only (@test.only), static before() {} does not run. Is this the intended behavior?

sorry invalid issue. This work as expected.


Update build dependencies

Changes

Update gulp-stylelint to 10.0.0
Update jest to 24.9.0
Update jest-cli to 24.9.0
Update lerna to 3.18.3
Update stylelint to 11.1.1
Update stylelint-config-standard to 19.0.0
Update terser-webpack-plugin to 2.2.1

Testing

gulp && gulp test should pass.

@anselmbradford Do the components build okay for you? I'm seeing:

This PR doesn't seem to affect the build scripts so my issue might be unrelated.

Confirmed that #372 fixes this for me. 👍


Refactor chatgpt.getAccessToken() + chatgpt.send()

Use of async/await: The getAccessToken function now uses async/await for better readability and to avoid callback hell.

Error Handling: Added a check to ensure the message passed to the send function is a string.

Consistent Use of const and let: This helps in maintaining the scope and prevents accidental global variable declarations.

Something in your update triggered this CodeFactor warning https://www.codefactor.io/repository/github/kudoai/chatgpt.js/pull/309

... but it doesn't say where, but if you do the changes maybe it will go away

Yeah sure I will look after it

I will raise anither PR with these corrections


Fix validation of OpStore object

Remove spvOpcodeIsObject() and test the spec's definition of what an object is.
Add type_id to spv_id_info_t and use it instead of words[1]. This triggered some asserts on tests, where the code incorrectly assumed words[1] had a type.  Remove the asserts and handle gracefully.
Also add tests for OpStore of a label, a void, and a function.

@umar456 PTAL

-1
I think you're missing one more place where words[1] was used.
Also, looking at the tests a high level concern (in general, not with this CL in particular) is that only checking the error status code makes the tests quite fragile.  If you mis-type some of the assembly cases, then you could generate the same result status code but for the wrong reason.  It would be more robust to check the diagnostic string, which should be more specific to the particular ID that's invalid.  Yes, that's more typing, but probably worth it in the long run.
For example, the binary parser has a test for every diagnostic it can issue.  Making those tests flushed out a few real bugs.

Replaced the wods[1] instance as suggested.
Agree that the tests should use better expectations than just success/failure.  Will change that wholesale over in another PR.

Functionally looks good.  I don't want to block this further pending naming discussion.
+2

Squashed and pushed into master as a4342f3f442178e


No annotation for PodSets Info backup

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
Remover the use of an annotation  for podSet info restoration.
Which issue(s) this PR fixes:

Relates to #518
Special notes for your reviewer:
Does this PR introduce a user-facing change?

NONE

Can you drop the commit for finalizers? Or put it in a separate PR that we can consider for the next release?
I'm concerned that we don't have exhaustive testing around finalizers and that we are expecting the workload controllers to handle them. When dealing with finalizers, we have to consider that controllers could fail at any point, and there should be a mechanism to retry deleting the finalizers. In general, for kueue we have two scenarios: when removing jobs and when suspending jobs.
We are getting close to our target deadline for the release 0.4 and I think this PR is adding too much risk.

The finalizes are also helpful in  recovering from a "mid stop" error, essentially if a workload has the finalizer set  and isSuspended, then the restore of PodInfos and finalizer removal are done again.
If a job gets deleted, we select all of it's child workloads and remove the finalizers. This is tested in test/integration/controller/job/job_controller_test.go L1876.
But if you insist I can try to extract this in another PR

The finalizer part is now on #861

/retest

/approve
/lgtm

/retest


Implement Circular Link List

@atyant-yadav Please review my code

@atyant-yadav please merge my code


Creating a custom analyzer of type ngram or pipeline

I'm trying to enhance the search capabilities by creating a custom analyzer of type pipeline. I'm using version 3.8. I tried to create a norm type analyzer initially and tried the following:
db.create_analyzer(
                name="test_analyzer",
                analyzer_type="norm",
                properties={
                   "locale": "en",
                   "case": "lower"
                },
                features=["frequency", "position", "norm"]
            )

This worked fine and I could see my test_analyzer in a list of analyzers by printing the analyzers in the following way:

db.analyzers()

I tried to create an analyzer of type ngram  and an analyzer of type pipeline as follows:
 I tried to create the `ngram` analyzer with below mentioned properties:
db.create_analyzer(
                name="bigram_test_analyzer",
                analyzer_type="ngram",
                properties={
                   "min": 2,
                   "max": 2,
                   "preserve_original": False,
                   "stream_type": "utf8"
                },
                features=["frequency", "position", "norm"]
            )

 I tried to create the pipeline analyzer with below mentioned properties:
db.create_analyzer(
                name="pipeline_test_analyzer",
                analyzer_type="pipeline",
                properties={
                      [
                         {
                            "type": "ngram",
                            "properties": {
                            "min": 2,
                            "max": 2,
                            "preserve_original": True,
                            "stream_type": "utf8"
                                  }
                        },
                        {
                            "type": "norm",
                            "properties": {
                           "locale": "en",
                           "case": "lower"
                                }
                        }
                     ]
                  },
              features=["frequency", "position", "norm"]
            )

I receive the ArangoCreateError:

 [HTTP 400][ERR 10] Failure initializing an arangosearch analyzer instance for name 'test_dev::bigram_test_analyzer' type 'ngram'. Init without properties was rejected by analyzer. Please check documentation for corresponding analyzer type.

 Update:
A bit late on the update, but the reason I was getting the ArangoCreateError while creating the ngram type analyzer was due to the use of snake_case keys in properties rather than camelCase. As an example I was supposed to do the following:
db.create_analyzer(
                name="bigram",
                analyzer_type="ngram",
                properties={
                   "min": 2,
                   "max": 2,
                   "preserveOriginal": False,
                   "streamType": "utf8"
                },
                features=["frequency", "position", "norm"]
            )

This works fine and creates a bigram analyzer with specified properties.


2.0rc2: Sparkle URLs collect sparkle:version key value in output instead of sparkle:shortVersionString

Describe the bug
Recently created this recipe manually, so I wanted to test it with latest RC of v2.  When I drag the app (MTMR - https://github.com/Toxblh/MTMR) into Recipe Robot it outputs the CFBundleVersion of the app (listed as sparkle:version in the appcast.xml) from the app's Sparkle feed instead of CFBundleShortVersionString (listed as sparkle:shortVersionString).  Later on when the app's version is collected, Recipe Robot uses the CFBundleShortVersionString, which doesn't match.  Ultimately this is more of an output mismatch rather than a true bug.
To Reproduce
Steps to reproduce the behavior:

Download MTMR app from GitHub
Mount the DMG
Drag the app into Recipe Robot v2.0rc2
What for completion.
Note in output version is listed as 406, which is the app CFBundleVersion, not CFBundleShortVersionString, and that later when a version is collected directly from the downloaded app that 0.26.1 is collected.

Expected behavior
Version key collected from Sparkle feed matches the version key later collected from app.
Screenshots

Output from CLI tool:
./recipe-robot /Volumes/MTMR/MTMR.app -v

                      -----------------------------------
                     |  Welcome to Recipe Robot v2.0.0.  |
                      -----------------------------------
                                \   _[]_
                                 \  [oo]
                                   d-||-b
                                     ||
                                   _/  \_

Processing: /Volumes/MTMR/MTMR.app
Input path looks like an app.
Validating app...
    This app seems valid
Getting bundle name...
    Bundle name is: MTMR
Getting bundle identifier...
    Bundle identifier is: Toxblh.MTMR
Checking for a Sparkle feed...
    Sparkle feed is: https://mtmr.app/appcast.xml
Getting information from Sparkle feed...
    The Sparkle feed provides a version number
    The latest version is 406
    Download URL is: https://mtmr.app/MTMR%200.26.1.dmg
Downloading file for further inspection...
    Downloaded to /Users/admin/Library/Caches/Recipe Robot/2020-10-24_22-04-41_455107/MTMR%200.26.1.dmg
Determining download format...
    File extension is dmg
Looking for version key...
    Version key is: CFBundleShortVersionString (0.26.1)
Looking for icon...
    Icon is: /Volumes/MTMR/MTMR.app/Contents/Resources/AppIcon
Getting description...
    Description (from MacUpdate): TouchBar Customization App.
Gathering code signature information...
    Code signature verification requirements recorded
    3 authority names recorded
    Developer: Anton Palgunov
Searching for existing AutoPkg recipes for MTMR...
    No results
Generating download recipe...
    /Users/admin/Library/AutoPkg/Recipe Robot Output/MTMR/MTMR.download.recipe
Generating pkg recipe...
    /Users/admin/Library/AutoPkg/Recipe Robot Output/MTMR/MTMR.pkg.recipe
Generating munki recipe...
    /Users/admin/Library/AutoPkg/Recipe Robot Output/MTMR/MTMR.munki.recipe

You've created 3 recipes with Recipe Robot. Fantastic.

Desktop (please complete the following information):

macOS: 10.15.6
Recipe Robot Version: 2.0.0rc2
which python: /usr/local/bin/python
python --version: Python 2.7.17

Thanks, this is a good suggestion.
First, it should be noted that the versions discovered during Sparkle feed inspection are used only to determine which Sparkle enclosure item should be used as "latest," and needn't match the actual application downloaded.
That said, I could see how showing more version info from the Sparkle feed could be useful. I'll add shortVersionString output in addition to the current version output.


feat: automatic fallback to tags for GitHub

Is your feature request related to a problem? Please describe.
Having to manually specify url_commands for GitHub repos that use tags, but not releases is slightly inconvenient.
Describe the solution you'd like
It would be nice if Argus could automatically fall back to tags if no releases exist for the service.
To do this without counting towards the API rate limit, the ETag could default to "1202860668f8cc09802a90038fa4ff8cdc642644697a3ef85aace4bd6ed91973" which is what GitHub returns for an empty list.
In case of 304 Not Modified, Argus should query the tags API and match the default regex against each ref stripped from the refs/tags/ prefix.
Here's an example tags API response:
[
  {
    "ref": "refs/tags/v0.1",
    "node_id": "MDM6UmVmMTU5NTU2Nzk0OnJlZnMvdGFncy92MC4x",
    "url": "https://api.github.com/repos/go-vikunja/api/git/refs/tags/v0.1",
    "object": {
      "sha": "0bf5a9412e9da205b118517f5e2844e7850b7661",
      "type": "tag",
      "url": "https://api.github.com/repos/go-vikunja/api/git/tags/0bf5a9412e9da205b118517f5e2844e7850b7661"
    }
  },
  {
    "ref": "refs/tags/v0.2",
    "node_id": "MDM6UmVmMTU5NTU2Nzk0OnJlZnMvdGFncy92MC4y",
    "url": "https://api.github.com/repos/go-vikunja/api/git/refs/tags/v0.2",
    "object": {
      "sha": "5f695c2af8871b303e8b76bac888d8d57d16a6fd",
      "type": "tag",
      "url": "https://api.github.com/repos/go-vikunja/api/git/tags/5f695c2af8871b303e8b76bac888d8d57d16a6fd"
    }
  }
]

I believe this would make almost any GitHub project work out of the box.
Describe alternatives you've considered
Manually specifying the url_commands for each such service works.

Doing queries now on https://api.github.com/repos/go-vikunja/frontend/releases, https://api.github.com/repos/go-vikunja/frontend/releases and https://api.github.com/repos/allinurl/goaccess/releases gives me the 992aaf92b487506974e4305db4a64326866f3ed48b2ba424cef8fbe4e28f72b0 ETag. Was it giving you<PHONE_NUMBER>f8cc09802a90038fa4ff8cdc642644697a3ef85aace4bd6ed91973 when you tried last week?

Trying again with Firefox I get the same ETag I had last week (1202...), but with curl I get the same one you do 992a....
Using Firefox's dev tools "copy as curl" I get a third ETag: 40d7791495f98777a75dd6d73d7794658c7df79d296af9c37bf97c9c3aa11ecc.
Hardcoding one of the "empty" ETags doesn't seem to have a downside so, if simple, why not? But as you said the cost is very low, so it's definitely not a big deal without either.
I just mentioned the ETag since I saw other requests use them :)

Ah, good that it's not changed in a week.
I'll add this as a default, and on startup, do a query with that default and update the default if †hat's changed. I'm also adding a check for the response being an empty list (incase that etag changes whilst the app is running), and having that update the default and trigger the fallback query

Amazing, thanks!
I'll update and test later today :)
(Didn't get notified by the PRs, would've tested then otherwise!)

Works great, thanks!


Multiline comments cause auto-indent error in Javascript.

I am using Atom 1.23.2 x64 on the latest Windows 10, writing in Javascript in a file with a .js extension.
The code below, written as an illustrative example, is presented as Atom auto-indents it, with four spaces per indent for visual clarity:
Demonstration = {
    function withoutMultiLineComment(param1, param2) {
        var message = "";
        if(param1>10) {
            message = "This is big.";
            if(param1>100) {
                message += " It's huge.";
            } else {
                message += " But it's not huge.";
            }
        } else {
            message = "This is not big.";
        }
    }

    function withMultiLineComment(param1, param2) {
        var message = "";
        if(param1>10) {
            message = "This is big.";
            if(param1>100) {
                message += " It's huge.";
                /*
                if (param1 == param2) {
                message += " And it matches param2!";
            } else {
            message += " But it doesn't match param2!";
        }
        */
    } else {
        message += " But it's not huge.";
    }
} else {
    message = "This is not big.";
}
}

//The negative indentation error suggest that additional code here is no longer
//a sub-block within Demonstration.
//If there are multiple such comments, the indentation errors accumulate quickly.

}

The function withoutMultiLineComment is indented as expected.  The function withMultiLineComment bumps out two levels of indentation unexpectedly. The expected behavior is for the comment to not affect indentation.
The close curly brace inside the multiline comment is recognized by the autoindenter as the close of the code block beginning in non-commented code, even though placing the cursor directly before or after close braces in non-commented code show proper pairing between curly braces within non-commented code.
Code which is commented-out by a multiline comment should not be paired with non-commented code to decrease the level of indentation.

This issue was moved to atom/language-javascript#553


Allow classes which aren't indexed in the vector index

For example if a class only consists of Cross-References.

An additional thought:

If a class in the schema has a setting that will result in a non-vectorized data object. It might be good to mention this when a schema is added to Weaviate in the logs.

By "non-vectorized" do you mean "identically vectorized"? I.e. something where all props are ignored, but only the class-name is vectorized?
Because at the moment, we don't allow not vectorizing anything.

No - I mean a setting where literally nothing is there to base a vector on.
however
This prompts a new (2nd) idea:

If a class in the schema has a setting that will result in a non-vectorized data object (i.e., no information to base a vector on). It might be good to mention this when a schema is added to Weaviate in the logs.
If a schema has a setting that will result in many identical vectors (e.g., only vectorize a class name) it would be good to mention this in the logs as well (e.g., as an undesired pattern). Or, to build in a smart pattern like: "If there is no data to vectorize on in the schema, set vectorizeClassName to False and set vectorizePropertyname to False"

An example of the 2nd point would be:
{
    "class": "Order",
    "description": "Order",
    "moduleConfig": {
        "text2vec-contextionary": {
            "vectorizeClassName": true
        }
    },
    "properties": [
        {
            "name": "ofItems",
            "dataType": [
                "Items"
            ],
            "description": "Items",
            "indexInverted": true,
            "moduleConfig": {
                "text2vec-contextionary": {
                    "skip": true, <== note
                    "vectorizePropertyName": true
                }
            }
        },
        {
            "name": "foobar",
            "dataType": [
                "string"
            ],
            "description": "a foobar example",
            "indexInverted": true,
            "moduleConfig": {
                "text2vec-contextionary": {
                    "skip": true, <== note
                    "vectorizePropertyName": true
                }
            }
        }
    ]
}

Related to the above, if a schema contains a setting where a vector always will be impossible to generate with a vectorizer (e.g., if there are 0 text and string fields) it might be good to skip the vectorization process too.
Note:This is most probably module related. I.e., if a module vectorizes based on a blob type or an int type. It should inform Weaviate about this

We currently don't allow this at all. We could a) always allow it and log or b) only allow it if the users explicitly configures not to index the class (<- my preference).
I think we need to decouple "not indexing anything" and "detecting potential duplicates", because the first also needs to work when no vectorizer module is present, but the latter is specific to various modules.

Agreed with your preference
True, maybe in another GH issue?

That's fast

🚀

@bobvanluijt Haha, thanks :) For now the only feature that's implemented is vector-noindexing a specific class. So far nothing has changed about validation or duplicate detection which I'll add follow-up issues for.

The follow-ups are #1581 and #1582

The follow-ups are #1581 and #1582

thx


Resubmit sitemap with the new extensionless canonicals

With the hlx3 migration, we are getting rid of the .html in the urls (see #7). Sitemap will be re-generated and will not contain the extensions (see #46).
Once the site will be migrated and the sitemaps will be regenerated, we will need to re-submit them to Google.
We need to find who has access to do so.

We need to find who has access to do so.

I do


Make CSV decimal separator respect locale

This might solve an issue where users with non-US/English language settings on their computer or browser may have a hard time getting the CSV to import properly into various spreadsheet software because it was expecting a , as the decimal separator and getting a .

closing, doesn't fix issue


Upload Picture Problems

I'm trying to upload a picture with the following code;
var picturePath = path.basename('/home/ubuntu/Tools-for-Instagram/IGPost_01.png');
let caption = "This is a test image that I'll delete in a few seconds";
var namesToTag = [];

try {
await uploadPicture(ig, caption, myPicturePath, namesToTag);
}catch (error) {
console.log("Error could post image to Instagram: " + error.message);
}
Error:
Error could post image to Instagram: POST /rupload_igphoto/1606853056495_0_6880353997 - 400 Bad Request;
Using uploadPictureByURL
let pictureUrl = "https://www.website.com/storage/app/media/postImages/IGPostImage_01.png";
let caption = "This is a test image that I'll delete in a few seconds";
try {
    console.log("trying to post an image");
    await uploadPictureByUrl(ig, caption, pictureUrl);
} catch(error) {
    console.log("Error could post image to Instagram: " + error.message);
}

Error:
IgResponseError: POST /rupload_igphoto/1606852939576_0_7864407481 - 400 Bad Request;
Any ideas on what could be happening?

same thing.. any suggestions?


[WIP] Fedora provider

This is an initial attempt at a Fedora 4 provider. There are unit tests as well as an integration test. (Known issue: After the update to python 3.5 the integration test fails to have its tests collected.)
The implementation is at least plausible, but the required behavior of various methods is not entirely clear from the documentation. In addition this pull request does not meet all the guidelines for contributing.
@mfraezz @felliott

I've updated the pull request as requested and I think its looking good.
@felliott

Hello @markpatton , @felliott asked me to do some manual testing of this PR. I've spent some time on it but have not completed the task. I am however now turning my attention to another task for a bit and want to give you the results of my testing so far.

While testing I deleted a file through the fedora interface resulting in a tombstone. It appears that WB provider does not currently handle tombstones. This seems like something that users will run into, so I think we should try to handle the possibility of tombstones.

(The rest of these notes come from testing done against the WB API via the postman app)

Deletes succeed, but produce errors in osf and WB for logging call back

Task <function log_to_callback at 0x7f0826e1c840> failed with Exception('Callback for delete request failed with <ClientResponse(http://localhost:5000/api/v1/project/qy85d/waterbutler/logs/) [500 INTERNAL SERVER ERROR]
File "/home/tkb/work/venv/cos/osf/osf.io/website/addons/base/views.py", line 450, in addon_delete_file_node folder_children = FileNode.resolve_class(provider, FileNode.ANY).find( File "/home/tkb/work/venv/cos/osf/osf.io/website/files/models/base.py", line 369, in resolve_class raise exceptions.SubclassNotFound(provider) SubclassNotFound: fedora

File updates succeed but return return 204, should return 200. Also not returning file metadata.

File copy with replace argument True fails

HTTP code 412
{ "response": "Destination resource already exists" }
5, File copy from osfstorage provider to fedora when file already exists fails
Different returns depending on what conflict arg is set to
no conflict specified default "warn"
{ "code": 500, "message": "Internal Server Error" }
either "replace" or "keep" specified
{ "code": 204, "message": null }

Folder copies are returning incorrect path. Missing trailing "/"

When copying( with conflict=keep arg) an osfstorage folder with a file in it to fedora with a folder of the same name, the folder is copied but the original is not kept, and the file contained in it is left at the parent directory...

Example:
osfstorage:/folder1/subfolder1/file1   copied(keep) to fedora:/folder1/   when fedora:/folder1/subfolder1 already exists results in...
/folder1/file1
/folder1/subfolder1/ is overwritten
/folder1/subfolder1 (1)/  is not created

Implement confirm_delete parameter and _delete_folder_contents method in Provider class to handle root folder deletes.

See dropbox provider for example.
Thanks for your effort on this, I'll return to testing as soon as I can.
@TomBaxter

I missed the November 1 comments. Those looks easy to resolve.
As for more recent comments from Tom:

Tombstones are an interesting case. Remember that Fedora is not a singular user oriented service like Dropbox, its a component that would be deployed as part of a broader system. That broader system might want to treat tombstones all sorts of different ways. I believe that right now that through the OSF the user cannot see tombstones and that tombstones are deleted when a file is deleted. Does Water Butler/OSF has some notion of a tombstone that could be used?  What happens when a user tries to overwrite a tombstone?
Is this all deletes or just some? I'll have to poke around and see what's in the Fedora logs.
Easy enough to change, but I based the behavior on the dropbox client which also returns file metadata on upload.
Have to look into the move behavior. I wasn't aware of this flag and dropbox doesn't appear to examine it, perhaps because move on dropbox behaves differently.
Same comments on move apply to copy.
Should be easy enough to fix. (Unit tests should catch this.)
I wasn't aware of keep and various (1) behavior. Again dropbox doesn't seem to have any special handling so I suspect its not hard to fix.
That requires some thought. If the "root" folder is the Fedora root, then it can't be deleted. But this should not be hard to support.

There is a need for a common integration testing framework to ensure the correct behavior of storage providers and help with implementation. (Some of the above should even have been caught by unit tests.) I did my own minimal integration testing, but it was not nearly sufficient as these problems show. In addition, the documentation for storage providers should specify all the required behavior including status codes, side effects, etc.
I need to see if I can get some time to go through these issues. Unless there are some hidden mismatches with Fedora behavior I suspect it won't be too bad. Most of the time will be spent updating the integration tests.
@TomBaxter @felliott

Hey @markpatton!
This is a quick followup to your response from Dec. 2.  I'm starting to CR this addon now, so there may be more to follow.

The issue of tombstones is a tricky one.  WB doesn't have a concept of them.  I'm going to have a think about this.
This issues is caused by not having a Fedora-specific file subclass on the OSF-side.  See this directory: https://github.com/CenterForOpenScience/osf.io/tree/develop-backup/website/files/models
Yes, it should be returning a 200 OK + the updated file metadata.
The parameter is named conflict the value is replace.  We recently got the docs building on rtd again, there's an overview of the api here: https://waterbutler.readthedocs.io/en/latest/api.html  If you drop down to the section titled Move & Copy, it'll explain the allowed body parameters and what they do.  If anything in there is unclear, please let me know.  I wrote that awhile ago, and I'm not sure how lucid it is.
See 4.
:+1:
core.provider.BaseProvider.handle_naming is the method that handles appending  (n) when conflict=keep is specified.
Calling DELETE on a folder root should never delete the root folder.  Instead, it should return a 400 and an error message.  However, if the user passes in the confirm_delete query parameter, then WB should delete all children of the root folder, but not the folder itself.  The intended purpose of this is to allow easy clearing of a storage folder without rendering the addon in an unusable state (with nothing to connect to).

Re: integration tests:  yes, absolutely!  We just haven't had the resources to devote to it so far.  @TomBaxter did start on a series of Postman collections that can be used to verify copy behavior after creating and authorizing a couple of test nodes on your local dev OSF.  See https://waterbutler.readthedocs.io/en/latest/testing.html for more.  The collections live in https://github.com/CenterForOpenScience/waterbutler/tree/develop/tests/postman.  I'm excited to start reviewing your integration tests, and hope we can adapt that for some of the other providers.
Cheers,
@felliott

@felliott
I believe I have addressed all the issues that have been raised. More problems may turn up when I move on to the next step of getting the Fedora addon talking to this provider.

Changes Unknown when pulling b7fe74dac6be1f1c1f791b39c12717c328dfe3bf on DataConservancy:fedora-provider into ** on CenterForOpenScience:develop**.


Watching Past Broadcasts

A few months ago I could watch any past broadcast from twitch using this code:
livestreamer --player-passthrough=hls insert twitch url source
But now whenever I do this I get this error message:
error: Unable to open URL: https://api.twitch.tv/api/vods/89374805/access_token.json (400 Client Error: Bad Request)
Any one has this problem? I would like some help because I cannot go to twitch.tv, for some reason my pc just freezes and I have to manually turn it off if I stay on twitch for a long period of time.

Wrong repo, this is not Livestreamer, this is Livestreamer Twitch GUI... You should use the search function before opening new threads: chrippa/livestreamer#1456
Btw, Livestreamer is dead. See Streamlink: https://github.com/streamlink/streamlink

Oh, I'm sorry. Thanks for the info.


Optimize sequence_to_text function with join method

This pull request modifies the init.py file to optimize the sequence_to_text function within the module. The update enhances the function's efficiency by replacing manual iteration and concatenation with the more efficient join method for string construction.
Changes:
Optimized sequence_to_text function for improved performance.
Incorporated the join method for string concatenation.
Introduced _id_to_symbol parameter for enhanced symbol lookup efficiency.
Purpose:
Enhancing the performance of the sequence_to_text function allows for more efficient text decoding from sequences of IDs, benefiting overall model operations and processing.

Sorry the for loop still exist. No performance gain from this PR


 tag destroying html format

When i use a img tag in my html my format gets 'destroyed'. With a small file it's not a huge problem, but when my html file is getting bigger it's annoying. When i disable the VScode HTML formatter the problem is gone. I'm using Visual Studio Code version 1.33.1.
I really want to use the html formatter, am i doing something wrong or is this a known bug?
This code:

Gets formatted into this:

Because of the img tag.

I'm working on Windows 10, maybe that makes a difference?

Unable to reproduce the issue.

I'm working on Windows 10, maybe that makes a difference?

@remcobirdy I tried it on windows 10 itself. Do you have any extensions installed which might interfere with the default HTML formatter?

@NizamLZ i disabled all my extensions, still no effect.

We use beautifyjs as the underlying HTML formatter. Would you mind filing this request directly against https://github.com/beautify-web/js-beautify ?


/kg -> /browser

Move kg routes into a module
Convert dcid get param to path args
Add tests, update links sitewide
Add back dc.org homepage
Remove unused template

can comment "@googlebot I signed it!" so the cla check can pass

Made the suggested updates. PTAL!


Feedback

Hi, Buff00n. I found that the volume values in below code are saved in half precision floating point, which is not supported by javascript natively. @petamoriken/float16 should work in browsers.
The unit of this value is decibels that can be convert to levels, this post should be helpful to implement the conversion between them.
Hope to see the perfect volume adjustment, and thank you for creating such a great tool!! :smile:
var vol_p00 = 0xD1D2;
var vol_p25 = 0xCA00;
var vol_p50 = 0xC5FD;
var vol_p75 = 0xC09C;
var vol_p99 = 0xAD00;
var vol_p100 = 0x0000;

Huh, it never even occurred to me that it's in -dBFS.  Thanks a lot!  Still, -46.5625 dBFS strikes me as a pretty weird and arbitrary zero level.
Oh, I just noticed your Mandachord app.  Sorry, I know how it feels when people say this, but I had no idea it existed.  It's too bad pasting song codes into the chat window stopped working.

@HZDeluxe I got it implemented now, thanks for your help!
I also fixed it in my OCR program and updated about 1300 songs in my local song database that had volumes below 100%.  It's going to take about a week to update all those Mandascore links on my videos; YouTube API quotas mean I can only update 200 video descriptions per day.

@buff0000n I didn't expect that you would update your songs. You are amazing! :thumbsup:

Hi, I made a song with the help of your website. Thx for this it help a lot ! DE will have to help octavia cause it is very hard to cast our skills when we don't use every notes in the metronome and even then the sprint boost is almost impossible to cast but at least someone made an helper for making songs :D I don't know if you add the player songs in your library but if that's the case you can add mine. Title : DestrockQc 2 link
: [SONG-Omen:AAC/UsDEhAoABQZABBCgAQRIAICMACAnAAQQkAEEcAEgiIAIJhABBIQAQUQAEIkABCZABEDAARBkAYEKAARGQARAoAEQSACBDAAgRwAEIJABCHABIIiACCYQAQSEAEFEABEJAARGQAQgwAEIZAE=:BardCorpusPackC:BardHipHopPackA:BardGrineerPackB]
And btw, your helper bugged a couple times. I had to save the links in notepad just in case and when it bugged I was able to copy past it inside a new tab and continue my work. If you could make it possible, from the "clear copy past play" section to copy past it from one tab to another if could have a faster workaround for when it bug and at the same time we could try some different mixes in 2-3 tabs at once. We some time have to try something new see if its better and then decide if we keep the old work or continue on the new. By copy pasting sections it would save time and always do a backup in case we are in trouble. An autosave would also be nice. And be able to move/swap the 4 block (8 parts) instead of always copy pasting would save even more time. Maybe an option to reverse the notes (I mean like in a mirror) could help our creativity. ANNNDDDD finally, thank you ! hehehe overall it work well :P

@DestrockQc

your helper bugged a couple times

How exactly did it bug out?  Do you have some way to make the bug happen reliably?

copy paste it from one tab to another

You can copy the contents of the 'Song Code' box at the top into the same box on another tab.
You can also use the 'Playlist' function to have different versions of your song in the same tab.

copy pasting sections

Yeah, I've also been pining for some more copy options, too, especially between songs in a playlist.

An autosave would also be nice

I should be doing the same thing I do in DojoCAD where it updates the URL bar every time you make a change, but that's the best I can do for an autosave.

move/swap

reverse the notes

Yeah, I got tons of ideas, too.  The problem figuring out a way to put that kind of stuff in there without making the UI a cluttered, indecipherable mess.

 Do you have some way to make the bug happen reliably?"
Well it bug randomly. I often switch instruments for finding the best, and when it load I some time have a red text message and I have to continue on a new tab...
"You can also use the 'Playlist' function to have different versions of your song in the same tab."
Ahhhh yes I see now. I was sure it was only for your big library. We listen a couple and keep the ones we prefer then recheck our favourite list see which one we want to add in game.
The reason why I wanted to edit my other message : I forgot to say this : we absolutely must be able to listen the bloc 1 and/or 2 and/or 3 and/or 4. Not only 1 OR 2 OR 3 OR 4 OR all. The way I work is I listen the whole track and I repeat it many times in my head and when I know a note is bad somewhere I need at least 2 blocs, some time 3, but 4 is a waste of time for nothing. Especially since the music auto repeat itself no stop this is easy to add or remove a note, change one, and immediately hear the change. When we have to wait 4 blocs it confuse us a bit and take time.
Ah and when I save the image, I open it with paint and add yellow numbers 1 to 16 on the top of each sub-blocs. I find it easier this way for making the song in game. If the grey 1 2 3 4 would be more visible and replaced by 1 to 16 I would not have to do this.

@DestrockQc

Well it bug randomly. I often switch instruments for finding the best, and when it load I some time have a red text message and I have to continue on a new tab...

Are you selecting an instrument set and then somehow selecting another one before the first one even loads?  There's definitely a bug with that, but I had to throw a delay in the code to even see it.  It's fixed now.
If that's not it, then can you send my the contents of the red text, or more details on what you're doing when you get the error?  It would also help if you know how to open the javascript console and see if there's an error there.

Ahhhh yes I see now. I was sure it was only for your big library.

Honestly, the playlist feature is mostly so I can do stuff like this https://www.youtube.com/watch?v=npoOE4uBDZc

we absolutely must be able to listen the bloc 1 and/or 2 and/or 3 and/or 4. Not only 1 OR 2 OR 3 OR 4 OR all.

I've thought about putting in some kind of timing bar above the note grids that lets you adjust the play range, but it's tricky with how I've built the note grids.  At the very least I want to allow you to click and drag the playback cursor.

Ah and when I save the image, I open it with paint and add yellow numbers 1 to 16 on the top of each sub-blocs. I find it easier this way for making the song in game.

My primary goal was to make it match the in-game visuals as closely as possible, but a high-contrast version is not a bad idea.

I just tried crashing your website while recording but it doesn't crash lol. And when I change instruments it's faster (is the speed based on the time of the day with the amount of users ?)

i fount the Plogg instrument's volume very loud compared to the others... maybe there's some but or EQ that's needed to be done?

i fount the Plogg instrument's volume very loud compared to the others... maybe there's some but or EQ that's needed to be done?

@Nicolas-GE If you're talking about the Plogg bass, it's just loud.  I usually cut its volume in half when I use it for a song in game.  Otherwise, it's sampled from the game in exactly the same way as the rest of the instruments.


Update the segment replication documentation with recommended/optimal configuration for optimal results for SegRep

Is your feature request related to a problem? Please describe.
Segment Replication replication method needs the configuration to be optimized for the best performance.
Describe the solution you'd like
A clear and concise description of what you want to happen.
Engineering has identified this configuration, please document the recommended configuration in blog post and regular documentation
Describe alternatives you've considered
NA
Additional context
NA

documentation updated


Underscore in filename

I tried my first batch of 500 photos.
I noticed 3 of them had the wrong timestamp (today).
Investigating further, I see something different about those pictures:

Notice the underscore at the end of the filename? The json doesn't have it.
Google's fault for sure, but maybe we can do something about it?

I have similar problem in my export, but this time the filename has extra _n in it but json doesn't.

Another weird case. Seems that some files end with dash -.


Combine connection's closed_reason and is_closed properties

As I'm writing docs, I realize these separate properties are redundant. I originally added is_closed because I didn't like the way that if ws.close_reason: reads, but I think renaming closed_reason to closed (still returns a CloseReason object) and removing is_closed is better. Example:
if ws.closed:
  print('Connection closed!', ws.closed.code, ws.closed.reason)

I like the way that this reads.

Writing docs is a fabulous way to improve APIs, isn't it :-)

I'm neutral on separating them-- closed sounds like a boolean, and close_reason on its own sounds only ancillary.    The best I can think of for a combined attribute is closed_as, but it's not much better.

Closed via #81.


Single item cyclic infinite

Why scrolling when there is only one item it list

I can confirm this behaviour

Can you please look into this, I am getting the same issue.

setInfiniteAdapterEnabled(false) will do fixed


Bump meilisearch to 1.2.0, update README

The New Solution/Problem/Issue/Bug:
Update meilisearch version to 1.2.0.

This is fine with me, but would you please create a DDEV add-on instead? It will have a much better life, and you'll be able to actually maintain it. Things are just lost here in ddev-contrib.

https://github.com/ddev/ddev-addon-template
https://ddev.readthedocs.io/en/latest/users/extend/additional-services/

If you have carefully manually tested this, I'll pull it, but please do create an add-on with tests.

I'm not the author of the original ddev-contrib part for meilisearch, I just bumped the version number here. Will have a look at it.

Would love to have you make an add-on. You'd give credit to the original author in the README of course. Let me know when you've tested this manually and I'll pull it here.


Rename repos?

Hello, there are some repos, that aren't exist anymore. For example, yandex/ClickHouse is ClickHouse/ClickHouse now. Is there any way to replace it or remove?

Are you talking about instance of the bot I'm running or in general?

If that's about my instance of the bot, could you please give me full list of repos? (or at least those that you know)

Yes, I'm telling you about @githubreleases_bot. There are known to me repos:
ClickHouse/ClickHouse:
yandex/ClickHouse: stable
yandex/ClickHouse: testing
yandex/ClickHouse: all
That's all I'm aware of.

Fixed


[Bug] MD Similar Manga frequency not working

Device information

Tachiyomi version: r296
Android version: A10
Device: OP6

Steps to reproduce

Setting similar manga frequency to manual

Expected behavior
Until I manually click 'Pull latest database', it shouldn't pull the records
Actual behavior
It still pulls the record every 2days.

Fixed in https://github.com/jobobby04/TachiyomiSY/commit/8f1f6d5a973a6bc2dd99677b5edaaf45fb76aec3


Control panel

Description

I extended gitea through the reverse proxy, the path is {SERVER_HOST}/git. There is no way to use a separate domain name yet. When I log in, I get to the control panel (as I understand it), which contains a list of repositories and a history at the same time. I can't switch between the pages of the story, the link I'm going to (the hint in the picture) doesn't work. With such a request, the browser does not want to send cookies.  If the link is change to {SERVER_HOST}/git/?page=4&date=, everything works.
Gitea Version
1.21.4
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
No response
Git Version
2.43.0
Operating System
Windows Server 2016
How are you running Gitea?
IIS 10 Reverse Proxy is used. Gitea works as a service in the context of a private user.
Database
MySQL/MariaDB

Did you set the url with path in the app.ini?

duplicate of #29533?

Duplicate of #29533


Don't force permissions on the app

Problem:

Create new Android studio project.
Add "compile 'io.palaima.debugdrawer:debugdrawer:0.4.0" to build.gradle.
The app has a ton of permissions that persist even on release builds:

Solution:
Don't force permissions in the library, but instead let the user choose if he wants to add them. This PR:

Removes permissions from the library Manifest.
Removes permissions from the sample app manifest.
Adds permissions to debug build of sample app.

Now release compiling the app should produce an app without the unused perms.

LGTM! Thanks


finalize with community profile settings

take a look and finish required steps: https://github.com/qaprosoft/carina/community

done


Running app in Lambda fails

After creating my app and deploying it to AWS Lambda, it fails when running with the below error message:
2018-03-19 03:04:16.534 ERROR  [engine] - Engine: Error Creating trigger instances - Trigger Factory 'github.com/TIBCOSoftware/flogo-contrib/trigger/lambda' not registered
panic: Engine: Error Creating trigger instances - Trigger Factory 'github.com/TIBCOSoftware/flogo-contrib/trigger/lambda' not registered

goroutine 1 [running]:
lambda/vendor/github.com/TIBCOSoftware/flogo-lib/engine.(*EngineConfig).Init(0xc42008c820, 0x8d0d01, 0xc42008c820, 0x0)
	/codebuild/output/src047367214/src/git-codecommit.us-west-2.amazonaws.com/v1/repos/my-first-flogoapp/lambda/src/lambda/vendor/github.com/TIBCOSoftware/flogo-lib/engine/engine.go:85 +0x8ab
main.init.0()
	/codebuild/output/src047367214/src/git-codecommit.us-west-2.amazonaws.com/v1/repos/my-first-flogoapp/lambda/src/lambda/shim_support.go:98 +0xd7

The app is copied from the docs

Hi @retgits please update the cli, issue introduced solving another, related issue connected with the switch to go dep.
go get -u github.com/TIBCOSoftware/flogo-cli/...

@retgits did the update to the cli resolve this issue?

Ah sorry, I forgot to report back 😱 Yes, the issue is resolved with the new version of CLI.


HTML

HTML
User Story
As a boot camp student,
I want a Prework Study Guide website,
so that I can review all the information I learned throughout Prework.
Acceptance Criteria
GIVEN a prework study guide website
WHEN I visit the website in my browser
THEN I see four boxes titled HTML, CSS, Git, and JavaScript with associated notes listed

Added basic format.  It is set up to add more notes in the future.


Etcd version

Hi,
I try your provider, it seems to be able to creat keys in etcd, but does it work with etcdv3 protocol (GRPC) ?
Regards,

Greetings,
sorry for not catching your inquiry earlier.
The provider doesn't use the grpc protocol directly, but rather leverages the official etcd client libraries (which use grpc underneat the hood). And yes, we're using it against etcd 3.4.x.
The provider has been pretty dependable so far.
One caveat I noticed previously is that sometimes, if you create a larger volume of keys at once, we can get some old version error (actually, haven't encountered that problem in a while now) which would mean that our automaton would need to run terraform apply more than once to get it to go through (but it would always go through on the second terraform apply). It hasn't been a show stopper though and our deadlines being what they are, its an issue I'll have to investigate post-production.

I think the problem we were intermittently getting was due to this: https://github.com/etcd-io/etcd/issues/13300
we updated the client version to a version that has the fix outlined in the issue, so it is most likely resolved now.

Thanks!


Investigate a block how to get arguments

I want to block that get arguments like this block type

http://masawada.hatenablog.jp/entry/2015/12/21/165718
This article says that it can use %n.

For example,
var descriptor = {
  "blocks": [
    [" ", "%n forwarding", "forward", 10]
  ],
}


[Azure Cognitive Search] Add filterType and exhaustive KNN to 2023-07-01-Preview API

Data Plane API - Pull Request
Add filterType and exhaustive KNN vector search features to the existin 2023-07-01-Preview API.
API Info: The Basics
Most of the information about your service should be captured in the issue that serves as your API Spec engagement record.

Link to API Spec engagement record issue:

Is this review for (select one):

[ ] a private preview
[X] a public preview
[ ] GA release

Change Scope
This section will help us focus on the specific parts of your API that are new or have been modified. Please share a link to the design document for the new APIs, a link to the previous API Spec document (if applicable), and the root paths that have been updated.

Design Document:
Previous API Spec Doc:
Updated paths:

Viewing API changes
For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.
Suppressing failures
If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
Swagger-Suppression-Process
to get approval.
❔Got questions? Need additional info?? We are here to help!

 Contact us!
The Azure API Review Board is dedicated to helping you create amazing APIs. You can read about our mission and learn more about our process on our wiki.

💬 Teams Channel
💌 email

Click here for links to tools, specs, guidelines & other good stuff
Tooling

Open API validation tools were run on this PR. Go here to see how to fix errors
Spectral Linting
Open API Hub

Guidelines & Specifications

Azure REST API Guidelines
OpenAPI Style Guidelines
Azure Breaking Change Policy

Helpful Links

Azure DevTools Wiki

/azp run

Abandoning this as the proposal to add these features as a breaking change to the 2023-07-01-preview API was rejected.


Dynamic updates on existing document?

Here's the situation:
I have an api that takes requests from the front end in order to perform some operations on the database, the problem is that for updating documents I don't know what parts of the document will have to be updated.
Since I have to use string dot notation to perform the changes without the risk to lose data is there any way to dynamically generate the $set object for the updates?

you need call update with upsert
db.update(
{_id:'id101'},
 { _id: 'id101', updated: new Date(), completeData: { planets: [ { name: 'Earth', number: 3 }, { name: 'Mars', number: 2 }, { name: 'Pluton', number: 9 }, {name: 'Jupiter', number: 5} ] } },
**{upsert: true},**
function (err, numReplaced, upsert){
	console.log(upsert)
});


Search tabbar issues

The Search tabbar still has a 2px/1pt shadow, rather than the 1px/0.5pt shadow it should have. Can you make sure both the Search tabbar and the main one have the same visual treatment? In addition, please make sure the shadow is actually a translucent color rather than a shade of grey (again, for both of the tabbars):

When swiping from the left-edge to go back, the tabbar stays fixated at the bottom of the screen, only to suddenly reveal the main tabbar a split-second later. Is there any way we can have the Search tabbar slide with Search? Note that this shouldn't be for every page within Search, just for transitioning between Search and any top-level page (Stories, Favorites, Recents, etc):

@thm I've added a transition to switch the toolbars when a content view changes, but it doesn't (yet) slide in sync with the search/web views.  That would be a bit trickier.  Please let me know if the new behaviour isn't good enough for this milestone!

@sreilly I think the animation makes it feel unnecessarily slow. I guess we can keep it this way for now, but I would ultimately like to have both the tabbars grouped with their corresponding segments within the app. I'm moving this to the "iteration 1" milestone. However, feel free to move it back if you think it's doable in a short term!

@sreilly marking complete, looks awesome, thanks!


[Bug]: code splitting of dynamic import does not work in Vue2

System Info
System:
OS: macOS 14.5
CPU: (8) arm64 Apple M1 Pro
Memory: 89.34 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 16.15.1 - ~/.nvm/versions/node/v16.15.1/bin/node
Yarn: 1.22.19 - ~/.nvm/versions/node/v16.15.1/bin/yarn
npm: 8.11.0 - ~/.nvm/versions/node/v16.15.1/bin/npm
Browsers:
Chrome: 130.0.6723.117
Safari: 17.5
npmPackages:
@rspack/cli: ^1.1.0 => 1.1.0
@rspack/core: ^1.1.0 => 1.1.0
Details
when using dynamic import to split code
<script>
export default {
    name: 'app',
    components: {
        Child: () => import('./child.vue'),
    },
}
</script>

the output of rspack.build results in a single file main.js
Reproduce link
https://github.com/ape-casear/rspack-demo
Reproduce Steps
npm install
node build.js
see dist directory

You are using swc to transform your code, and set module type to commonjs
so code like import() becomes Promise.resolve().then(() => require()), final output does not contain dynamic import at all


BUG: peer null crash

Not sure why, but started seeing this after this commit

Fixed ✅ Issue was with payload parsing


No reaction when click change price while holding CRTL.

What are you trying to do?
There's no reaction when I try to change the price while holding CRTL. Also I it seems there's no configuration window. I enter "mbuddy" but the system told me the command isn't exist. In a nutshell, I successfully installed it but totally can't use it.
What is the expected behavior?
Click adjust price, while holding CTRL and change the price.
Enter /mbuddy and open the configuration window.
What actually happened?
Nothing happend.
"/mbuddy" is not exist.
Suggested solution
No response
Logs
No response
FFXIV Update

[X] I have confirmed that I have the latest version of XIVLauncher and Marketbuddy.

try removing the plugin, restarting the game, and then installing the plugin again

also does /xlplugins work?

also does /xlplugins work?

Yes it works.

try removing the plugin, restarting the game, and then installing the plugin again
I have tried but still not work. My ff14 is Chinese version and now in 6.3, does it matter?


[api-docs] Add Guild Navigation Message Format (#6105)

A new commit was made into the api-docs repo: https://github.com/discord/discord-api-docs/commit/e8110aed41aee61e0413d96a40ba3c0b05fcfdb0

Add Id Message Format

Add missing types

Co-authored-by: Shadow<EMAIL_ADDRESS>

Format

Format

Apply suggestions

Fix bug

Apply suggestions

Co-authored-by: Shadow<EMAIL_ADDRESS>This is a bot created issue.

Issue related to discord/discord-api-docs can be useful and keeping them is a better idea until they get adressed


about pretrain model

Thank you for your open source code. Could you release the pretrain model training on Mixer6 + SRE + SWBD dataset? Most guy like me could not access these database

You can find pretrained models here. Feel free to reopen the issue if any questions.


terminate unresponsive built-in shell

VSCode Version:1.2.0
OS Version:ubuntu 16.4
cannot terminate running shell in case shell becomes unresponsive

in case ssh connection dropt or simply shell stops responding there is no way to terminate running shell and start new one

Going to close this in favor of https://github.com/Microsoft/vscode/issues/6458 as the UX will change quite a bit with that.


Revert "Make pull request button a link"

Reverts cribeiro84/azure-devops-pull-request-hub#262 due the issue it has created that's now opening the PR details on both new window and same tab.

@kimsey0 - I had to revert the change due the impact it caused on the behavior of the extension. Currently, the extension supports a preference settings to open on the same or new tab. Let me know what exactly you want to solve so we can come up with a different approach.

Sorry for the delay in coming back to you.
I want to be able to middle-mouse (scroll wheel) and control click links to have them open in a background tab, specifically for when I'm reviewing multiple pull request. With the current (button, not link) behavior, I have to click a pull request to open it in a new, active tab, then go back to the pull request manager hub tab, and repeat the process for each pull request I want to review. That's slow.
We can probably get the behavior you want with the preference settings by removing the onClick handler completely and just setting target="_blank" when the preference is set to open in a new tab. Does that sound agreeable @cribeiro84?

No problem. My suggestion is to install the local dev version on an account you have so you can test it locally with debugger and everything else. Then you can simulate the clicks and check if the behavior was affected or not.
You can try to check which button was clicked on the click event method:
onClick={onClickPullRequestTitleHandler}
It's required to ensure the behavior won't affect other uses that prefer to keep the existing process. Perhaps you can add a new user preference flag that can be changed based on each preference of the user.

I believe we can keep the existing behavior for all users without JavaScript at all. Let me try to code it up and test locally. :-)


not working

Script version
letest
i will use letest chrome
you tube will detect this script yesterday and blocked it when i use this script then the youtube was blocked me

I've updated the script to fix the detection. Please let me know if it works for u now. v5.4
also this a duplicate issue.
(https://github.com/TheRealJoelmatic/RemoveAdblockThing/issues/439)


Setup of .NET Core SDK 2.0.0 x64 is hanging

The progress is simply stuck about one third in. Even cancelling the setup is hanging now.
Is there a log file anywhere I can check?
Anyway, when I rebooted the machine the installer restarted automatically and was able to complete successfully.
I did close VS before I started the setup the first time, but I did not close VS Code.

@wli3 for log file existence and location.

@torhovland  add /l*v log.txt to the end of execution in command line can generate the log ex dotnet-sdk-2.0.0-win-x64.exe /l*v log.txt
However, I think in this case you should just wait for it. The "hanging" is extracting packages for offline scenario, on my machine, SSD, it will take about a minute, for HDD it could take 4 minutes.

Thank you. It was hanging for a lot longer than 4 minutes (and I use SSD), so it was truly hanging. But as I said, a reboot fixed it.

I don't think we can do anymore here. Sounds like its resolved. Closing.

Happend to me as well. Unfortunately, also in my case running it again after a reboot with /l*v log.txt didn't allow to reproduce the issue and the package installed successfully,


index.html hardcodes URLs from gcping-1369

index.html references endpoints from (I assume) gcping-1369 rather than the user's project:
const _URLS = {
  'gce-us-central1':          'http://<IP_ADDRESS>/ping',
  'gce-us-east1':             'http://<IP_ADDRESS>/ping',
  'gce-us-east4':             'http://<IP_ADDRESS>/ping',
  'gce-us-west1':             'http://<IP_ADDRESS>/ping',
  'gce-europe-west1':         'http://<IP_ADDRESS>/ping',
  'gce-europe-west2':         'http://<IP_ADDRESS>/ping',
  'gce-asia-east1':           'http://<IP_ADDRESS>/ping',
  'gce-asia-northeast1':      'http://<IP_ADDRESS>/ping',
  'gce-asia-southeast1':      'http://<IP_ADDRESS>/ping',
  'gce-australia-southeast1': 'http://<IP_ADDRESS>/ping',
  'gce-global':               'http://<IP_ADDRESS>/ping',
}

Yeah, I have plans to make this easily hosted on other projects.
Namely, reimplement setup.sh as a GAE cron task that executes hourly to make sure everything's working, pick up new regions/addresses, and fill in the right addresses in the frontend.
Stay tuned! :)

I can get you nearer ;-)
Remove the static definition of _URLS from your HTML and replace with something identifiable
ENDPOINTS={\
$(\
  # enumerate the project's (regions') IPs and format as a list of name,address pairs
  gcloud compute addresses list \
  --project=${PROJECT} \
  --format="csv[no-heading](name,address)" \
  |   # map $name,$address pairs to JSON elements "gce-$name": "$address" and a comma
  awk -F"," '{printf "\"gce-%s\":\"%s\",",$1,$2}' \
  | # remove the trailing comma
  sed 's/,$//g'
)\
}

Then sed the HTML identifiable value with ${ENDPOINTS}

The long-term goal is to excise all Bash from this repo and make it a Real Thing :tm:
Step 1 is to statically describe the stack using Deployment Manager (#5, currently underway), that would go a long way. Then all that's left is templatizing the static file and running it periodically.
PRs welcome! :)


Do not ship protos as part of the package

https://github.com/googleapis/nodejs-logging/blob/01ec04e794966e54450e2b0c7ffd28fab791afea/package.json#L12-L18
Is there a reason why the protos are shipped in the package? @alexander-fenster

https://github.com/googleapis/nodejs-logging/commit/e01bcd999231aeb3aad6335cda361b39527e49a5#diff-79608869413d6e45d45217ac064e1ad6R91
Because we load them.

🙋🏼♂ What's the difference between those and the protos we bring in from here?
https://github.com/googleapis/nodejs-proto-files

That I do not know. @alexander-fenster any info here on that difference? I just know the js code does use those files.

@lukesneeringer was on a mission to destroy google-proto-files (if I recall, API teams wanted to more easily test proto changes, and control releases in only one place), then we ended up landing in the middle: google-proto-files still serves all proto files from the googleapis repo, and features a loader for "common" proto files (any proto file that is not API-specific, e.g. Date/Time definitions).

The benefit of statically generated proto bindings is that they can be type-checked by the TypeScript compiler (and you get properly typed interfaces you can use in the code base instead of redefining types).
How does that play into the roadmap of how we are handling protos?
One example of how we are using static proto codegen is here in the profiler repo: https://github.com/GoogleCloudPlatform/cloud-profiler-nodejs/blob/e038d697f84f1fe302b08b9add76cacdb3d6a049/package.json#L19-L21

I've changed this from a question to an issue as this requires action IMO. I'm going to remove the 'question' label.


[PluginSystem] Switch to importlib and other improvements.

#101 highlighted that imp was deprecated. After addressing some minor listing issues, this PR switches the plugin system to importlib. Some bonuses include:

We now support single file modules and packages.
Test coverage!

This has ended up a little larger than one would like, but due to the holidays opportunities for review have been scarce. As such some linter fixes are in here too, as splitting them out would have meant unpicking a whole bunch of conflicts.

~Note: On hold pending https://github.com/TheFoundryVisionmongers/fn-pylint-action/pull/2.~

Squash and merge when ready


fix(select): fix disabled select option can be selected with enter

This pr fixes navigating in the select options with the arrow keys, disabled option can be selected with enter bug.
Closes 873

Since there are bl-checkbox components in the multiple select options, it cannot be selected with enter, but let's open this as a separate issue.


Style changes

Changed it so that the Pause button only shows while the game is running
Styled the retry button
Styled the Welcome Popup
Made it so the Bubbles are Animated even if the game is not running

Also Changed the general structure of the code and seperated CSS, JS and HTML.

Thank you! looks rlly good. The game is currently in V1 so there are still a lot of ideas to implement.


The links of the data and model can not be opened!!

I can't open the links of the data and model as follows:
http://datasets.lids.mit.edu/fastdepth/data/nyudepthv2.tar.gz
http://datasets.lids.mit.edu/fastdepth/results/

I can't open the links of the data and model as follows:
http://datasets.lids.mit.edu/fastdepth/data/nyudepthv2.tar.gz
http://datasets.lids.mit.edu/fastdepth/results/

I can't open the links too

@dwofk Can you please check this?

@YingjieYin @IntanP @xmba15
The server is back up now and the links should work now.

@dwofk I could download the data now. Thank you very much!

I can download the dataset and the weights but when I try to open the weights I get
Loading the archive ‘/mobilenet-nnconv5dw-skipadd.pth.tar’ failed with the following error: Archive corrupted or insufficient permissions.
or
tar: This does not look like a tar archive tar: Skipping to next header tar: Exiting with failure status due to previous errors.
What should I do?

hi @dwofk - I'm having the save issue (the downloaded files can't be opened).  could you please double check if this server issue is happening again?

The tar.gz file seems was damaged. I downloaded it twice, all got error on invalid format:
...
nyudepthv2/train/kitchen_0051/00216.h5
gzip: stdin: invalid compressed data--format violated
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now


cli: add seed to add bank command

Updates the mfi group add bank command to have an optional seed boolean argument. If seed is set then the command generates a PDA and uses it to sign the ix on behalf of the bank.
Based off the work in https://github.com/mrgnlabs/marginfi-v2/issues/154.
Generates a PDA from seeds and a random string iteratively. Uses the PDA to then sign on behalf of the bank in the group_add_bank command.
Continuation of #158

Seeing lint and tests failing

CI is green -- I accidentally feature-gated imports in utils.rs which broke a lot of things lol.
Ready for another look. I think conceptually this PR is ready I just want to make sure the business logic is correct.
I do think using generics could slim this down further but I will look into that as a follow-up. Would be nice to abstract the different between AddBank and AddBankWithSeed further via a trait and only have one fn here instead of two. They are very similar conceptually.


ParticipantAttributes::rtps.userData is rewritten on readers side

ParameterList::readParameterListfromCDRMsg(..) rewrites user data (UserDataQosPolicy::dataVec) with uninitialized data. Looks like misprint in commit 3cefd4e on 21 Oct 2014 when CDRMessage::readData destination was redirected from 'octet* oc' to p->dataVec but copying from 'oc' to p->dataVec was left.

Yes, you are absolutely right. Thank you for reporting it.