try to fix problem with many fields with same enum type

I had an exception to duplicate seeding when adding the same field to the model. This caused an error.
I'm not sure that this will break the rest of the logic.
thank

Thanks for bringing that up, we haven't thought about that.
However you solution still results in an exception SQLite Error 19: 'FOREIGN KEY constraint failed'.

@cioxideru the exception was because the newly introduced was not nullable. Your code works indeed :+1:
Concerning your proposal to introduce a description, I will move that to the issue section for discussion.


Support pdf format

Closing this. Better to have it inside image.nim, in this case both .ai and .pdf (same signature)

I'm so sorry.
I did not submit a review.


[Feature Request] Add support for Apple Silicon (M1/M2)

Thank you!

Hi @n-rodriguez!
Overmind can be built for Apple Silicon without a problem. I added the macOS/arm64 binary to the latest release.

Thank you!


Am I using FFTW in DIPimage?

Is there a way to check in DIPimage (MATLAB) if FFTW is used or not?

Good point. I see we never updated the static dip::libraryInformation object (https://github.com/DIPlib/diplib/blob/master/src/library/information.cpp) when we added FFTW support (nor when we added freetype support). We’ll have to add this information.
Typically I’d suggest to see if the DIPlib shared library depends on the FFTW shared library, but you’re doing static linking…
I guess currently the best way would be to compare the speed of the ft function for an image of an “easy size” and a prime size. The builtin FFT is fast for numbers that are a multiple of 2, 3 and 5. FFTW should be much faster than the builtin FFT for prime sizes. For example compare ft on a 256x256 image vs a 251x251 image (contents of the image doesn’t matter, try newim(256,256) for example).

By the way, for execution time use timeit:
img1 = newim(256,256);
img2 = newim(251,251);
timeit(@()ft(img2)) / timeit(@()ft(img1))

The output value could be, for example, 10  for FFTW and 100 for the builtin FFT. We’d have to do a test to know what values exactly to expect in the two cases.

With the sizes above, you should see about 5 for the builtin FFT, and 1.3 for FFTW. I tried a larger size to get a more clear result:
img1 = newim(1024,1024);
img2 = newim(1021,1021);
timeit(@()ft(img2)) / timeit(@()ft(img1))

Now I see 25 and 1.1.

I've checked the times for DIPimage with and without FFTW

1024x1024
1021x1021

FFTW
0.0138
0.0141

builtin
0.0146
0.2257

Looks very nice for FFTW!

Yes, indeed. The built-in FFT does any factors larger than 5 using the brute-force algorithm.
The built-in FFT is way faster than it was in DIPlib 2.9, but it's definitely not FFTW. :)
That's one of the reasons I added the 'fast' option, it pads the image to a "nice" size that is a multiple of 2, 3 and 5.

For me the issue is solved. @crisluengo however mentioned here a TODO item concerning dip::libraryInformation. I leave it up to him to close this issue if he seems fit.

dip::libraryInformation updated in c973b96a.


Internet Explorer 11 support

[ ] Sliders in interactive layer explorer doesn't work

Various data worker in our gallery examples do not work

[ ] IE doesn't support template literals
[ ] IE doesn't support shorthand property names

IE doesn't support template literals
IE doesn't support shorthand property names

Sounds like these haven't been transpiled? Maybe an easy fix?

Would it be possible to squeeze this into 4.0 if it's really the case of transpilation? Happy to help w/ that.

Hi
I am currently developing a application with deck.gl and it works really good! But I really need IE11 support. What is the status of this issue? I can see that this is a milestone set for v4.1, and v4.1 was released 15 days ago. Should I be prepered to wait 1 week, 1 month or a year for IE11 to get support? I just want to be able to get some kind of estimate :)

@ehallq There are no specific plans. But if the issues are small, we might be able to address them in a patch release to deck.gl 4.1 (best case within a couple of days).
A great way to help us would be to let us know what problems you are seeing. Are they the same as listed in this issue? Did fix #702 not address them?
IE11 is not one of our primary environments. We mainly want to support IE11 (as the one exception to our focus on "evergreen" browsers) for the benefit external users such as yourself - to ensure we have a reasonable coverage of browsers for people building web apps on deck.gl. So any help will be appreciated!

IE 11 has been used and supported on Windows only in Corp space for a
while. These are the basics for use of IE v11 as reference.

Enterprise Mode for Internet Explorer 11

https://docs.microsoft.com/en-us/internet-explorer/ie11-deploy-guide/enterprise-mode-overview-for-ie11

Baseline
https://docs.microsoft.com/en-us/internet-explorer/ie11-deploy-guide/system-requirements-and-language-support-for-ie11

On Fri, Aug 11, 2017 at 8:30 AM, Ib Green<EMAIL_ADDRESS>wrote:

@ehallq https://github.com/ehallq There are no specific plans. But if
the issues are small, we might be able to address them in a patch release
to deck.gl 4.1 (best case within a couple of days).
A great way to help us would be to let us know what problems you are
seeing. Are they the same as listed in this issue? Did fix #702
https://github.com/uber/deck.gl/pull/702 not address them?
IE11 is not one of our primary environments. We mainly want to support
IE11 (as the one exception to our focus on "evergreen" browsers) for the
benefit external users such as yourself - to ensure we have a reasonable
coverage of browsers for people building web apps on deck.gl. So any help
will be appreciated!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/uber/deck.gl/issues/618#issuecomment-321844516, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ASot9IPMyCu0qE0Ln9QsMX3bC9etFjefks5sXHOFgaJpZM4NNNhx
.

There seemed to be some problem with trans-piled output.
for example in the Arc Example, the error is located at bundle.js
line 74974
var pageLoadPromise = isBrowser ? new Promise(function (resolve, reject) {
  window.onload = function () {
    isPageLoaded = true;
    resolve(document);
  };
}) : Promise.resolve({});

SCRIPT5009: 'Promise' is undefined
File: bundle.js, Line: 74974, Column: 1

This error is captured in IE 11 Version 11.0.9600.18617

We should add a section in the doc to

Verify on IE-11 to get feel of all issues.

I'd be happy to work on this issue.  Anyone be able to point me in the right direction.  Also looks like https://deck.gl doesn't load on IE 11.

Thanks for offering to help @athomann! This was an issue in luma.gl and has already been resolved in https://github.com/uber/luma.gl/pull/1238 and will be released in deck.gl v7.3 later this week.


Unit 5

Review the instructions in #1
Unit 5 Notion: https://www.notion.so/icssc/Personal-Branding-94c81ea7b69c45de9975ee566d8a6877

I'll take this one!


Keras ModelCheckpoint callback not raising exception when h5 save fails

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): Yes
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below): 2.3
Python version:3.6

Describe the current behavior
The callback conceals the exception thrown by save_model. The checkpoints are not saved but no error is reported.
Describe the expected behavior
The callback should re-throw the error after catching it.
Standalone code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate
the problem. If possible, please share a link to Colab/Jupyter/any notebook.
https://colab.research.google.com/drive/1Nq5ARA3BHTxUyguiFFBBH74tXC54MABB?usp=sharing
Other info / logs Include any logs or source code that would be helpful to
diagnose the problem. If including tracebacks, please include the full
traceback. Large logs and files should be attached.

@yixingfu The colab gist you shared cannot be opened due to permissions. Can you please save it as GitHub gist and share again? Thanks!

Here is the gist
https://gist.github.com/yixingfu/79e0693627c8e0aeaccaead6d4068cbf

As per new tf-nightly version 2.4.0-dev20200803 the error is not raised while loading weights.
See gist.

No it still raises error when loading weight. And this error comes from the checkpoint failing to save, which should actually raise an error.
I think I know where the error come from. I will open a PR to fix it soon.

You are right this works for tf format but not h5.
I forgot to reset the colab runtime while testing for different formats so didn't get any error.
Feel free to raise a PR and tag this issue thread. Thanks!


Getting to Black when full screen,

when i click on full screen it takes to full screen, but it's getting to black color screen. but i can still hear the sounds, but can not see the video


get conflict

Fixes #69951

actually, i don't understand some point. why does the multi is true when rest is /.
https://github.com/golang/go/blob/master/src/net/http/pattern.go#L137
i think multi means that this path can match a lot of paths. but / just match one.
which result in [this line] (https://github.com/golang/go/blob/master/src/net/http/pattern.go#L309) return overlaps.


Microsoft Default Ruleset 2.1 - rules description

Hi,
I have enabled Microsoft Default Ruleset 2.1 for my Azure Application Gateway WAF and I was wondering if there is a place where I can read about the rule description as it was with OWASP CRS 3.2 (https://github.com/coreruleset/coreruleset/tree/v3.3/master/rules).

@mskuratowski Thank you for submitting this question.
Please see the link for DRS 2.1 : https://learn.microsoft.com/en-us/azure/web-application-firewall/afds/waf-front-door-drs?tabs=drs21#drs-21
Also per the announcement : https://azure.microsoft.com/en-us/updates/general-availability-default-rule-set-21-for-azure-web-application-firewall/  , the DRS 2.1 uses CRS 3.3.2 and built-in Microsoft Threat Intelligence rules.
Hope this helps?


Consider switching to a more permissive license

Other libraries under a more permissive license (MIT, APACHE-2) won't be able to use ts-toolbelt if it stays under AGPL.

@amaurymartiny good point, it's been changed in this first release


SCTP Support

SCTP ( Stream Control Transmission Protocol ) traffic support in istio.
Use-case:
In Telecommunication industry , the core network of LTE which is the Evolved Packet Core (EPC), has a number of entities which use SCTP protocol to communicate with each other .
This will enable istio to be used by many telecom vendors .
Do you plan to support the same in any of your future release ?

I'm not qualified to talk about long term plans, but our underlying proxy (Envoy) does not support SCTP right now. To implement SCTP in Istio, SCTP support in Envoy would be required as a minimum. Link: www.envoyproxy.io

AFAIK nginx has shown how to use nginx with istio as a proxy piloted by pilot


BIND_VIRTUAL_METHOD in GDextensions doesn't create a virtual function in GDscript

Godot version
4.1.1
System information
Pop!_OS 22.04
Issue description
Using BIND_VIRTUAL_METHOD script in _bind_methods() doesn't create a virtual function in GDScript.
Steps to reproduce

Create simple GDextension
Build it
Add to the project

//MyClass.h
#ifndef MYCLASS_H
#define MYCLASS_H

#include <godot_cpp/classes/node.hpp>

namespace godot{
class MyClass : public Node{
	GDCLASS(MyClass, Node)

protected:
	static void _bind_methods();

	void foo();

};
}

#endif

//MyClass.cpp
#include "my_class.h"

#include <godot_cpp/core/class_db.hpp>
#include <godot_cpp/variant/variant.hpp>

using namespace godot;

void MyClass::_bind_methods(){
	BIND_VIRTUAL_METHOD(MyClass, foo);
}

void MyClass::foo(){

}

After building the extension, you can MyClass in the editor. However, you can't override foo() function as GDscript doesn't see it and it isn't shown in documentation section.
Minimal reproduction project
N/A

Related issues:
godot/godot-cpp#910
godot/godot-cpp#1072
godot/godot-cpp#1199
godot/godot-cpp#910 mentions a possible work around by using call("_virtual_func") instead but even that isn't ideal when dealing with multiple related classes (and might not even work when overriding it in C++.)
This is especially annoying as documentation is also broken for GDExtension if I'm not mistaken and makes defining extendable classes quite difficult.
Reimplementing the GDVIRTUAL macros is impossible as Object::get_script_instance and the ScriptInstance class aren't exposed.


prompt does not correctly display tag

radar displays:
git:(upstream ⚡ detached@4560144) 2M 56A
I expected git:(upstream ⚡ my_tagName)
Is this assumption wrong?

The readable_branch_name function only outputs either a branch name or detached@sha. Mostly because I don't use tags that much. It's definitely something I'd like to add. Do you have any idea how to identify if a commit is associated to a tag?

This might help http://www.oliverdavies.uk/blog/display-git-branch-or-tag-names-your-bash-prompt/

I would love to see that feature as we use tags regularly.
This is how to obtain a tag if there is one:
git describe --tag <commit-sha> --exact-match

gives either
fatal: no tag exactly matches '<commit-sha>'

or the tag name :)


Update: solution for [Day 20] in [Python] language to run with python v3

day 20 in issue #4

@osoba  good Job 👍


[stdlib] Fix UnsafeBufferPointer range subscript getter tests

What's in this pull request?
Fixing an issue with a unit test that caused its four variations to not all be run. Sorry! @gribozavr @moiseev
OS X tests pass.

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

All four of the Unsafe*BufferPointer range subscript getter tests (one for each range) were using the same test name string. This caused only one of the four tests to actually be registered to the test suite. This change fixes that issue, and adds a couple more tests for better coverage.

@gribozavr I'm not in any rush to get this PR merged, but if it is merged I have a follow-up PR with more tests that depends on this one. (I'm also still working on the hashed collections PR.)

@swift-ci Please test

LGTM.


Glimpse adds additional  element in web.config during installation when  element is present

Hi,
In my web.config I have location element on top of my system.web element with inheritInChildApplications set to "false"
<location path="." inheritInChildApplications="false">
  <system.web>
   <httpHandlers>
        <add verb="*" path="routes.axd" type="AttributeRouting.Web.Logging.LogRoutesHandler, > AttributeRouting.Web" />
   </httpHandlers>
...

in this case, during installation Glimpse inserts its own System.web at the bottom
<system.web>
        <httpModules>
            <add name="Glimpse" type="Glimpse.AspNet.HttpModule, Glimpse.AspNet" />
        </httpModules>
        <httpHandlers>
            <add path="glimpse.axd" verb="GET" type="Glimpse.AspNet.HttpHandler, Glimpse.AspNet" />
        </httpHandlers>
    </system.web>

@rugved Did you end up fixing your issue?


Provide esm version / exports

Adjacent to: https://github.com/Qix-/color/issues/256
Modern build tooling favors esm modules.
I can help with this is you're ok with it coming from an external contributor

I will handle this.


Add ability to remove RE-matched lines before diff.

This change adds a '--remove-matching-lines' flag which takes in a
RegExp string. When specified, the tool will first remove any lines in
the source files that match the RegExp and then take the diff. This
way, we can do some preprocessing before we take the diff.

This feature is useful because there are scenarios where we want to remove some attributes that we don't want to show up in the diff (e.g. we want the diff, but we don't care about the flux annotations/labels that exist in the output).
We could attempt to do this by passing through the --ignore-matching-lines=RE (i.e. Ignore changes whose lines all match RE) in the diff command itself, however this is not quite as effective due to a caveat of diff -I.
TL;DR:

for each nonignorable change, diff prints the complete set of changes in its vicinity, including the ignorable ones.


WIP agda: Add libraries semi-automatically from package-index

Motivation for this change
We don't want to keep a manual list of agda packages. This already exists in the form of https://github.com/agda/package-index/, and should be reused as far as automatically possible
This is work in progress. Further things to be done:

[ ] Find a good way to select the best revisions for each library. Either we fix a rev here in nixpkgs, or there has to be an automatic way to get the newest recorded revision from package-index.
[ ] Try to build all libraries and mark
[ ] Metadata

[ ] Add myself (and @alexarice ?) as maintainers for each package
[ ] Descriptions and URL

[ ] Overwrite mechanisms per library

[ ] Choose a different rev
[ ] add more maintainers
[ ] dependencies (those that cannot easily be parsed)
[ ] Custom files or build phases

Things done

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

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

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

@alexarice

My intuition is that a separate script like cabal2nix would be easier. i.e. a script you run that generates a load of nix files

@turion This is an interesting approach, but it is not Hydra-friendly as you can see.

I am still not sure how often the package index is updated either, I still think it is better to maintain our own package versions

@veprbl What is the error? I have no idea how to debug this.

You can't import, readFile, readDir, ... the result of a derivation (such as fetchTarball) in nixpkgs; that's called (somewhat inaccurately) import-from-derivation and Hydra forbids it. It leads to builds happening at evaluation time, whereas otherwise in the Nix model they're separate: Nix code is evaluated to produce a derivation which is then built.
Basically, you'll have to adopt the approach @alexarice suggested: write a script (possibly in Nix) to fetch the tarball and process its contents, but check the generated code into nixpkgs.

@emilazy I see, thanks for the explanation. I guess that's the reason why Haskell on nixpkgs has its complicated workflow. Is there any documentation or discussion of this restriction?

It's avoided because it means that the build graph cannot be determined statically, and you can't answer questions like "what attributes are available in agdaPackages?" without doing arbitrary fetches/builds. Practical implications include not working well with --dry-run and nix-env(1). I'm afraid I don't know a pointer to a specific central discussion on this, but see e.g. https://github.com/NixOS/nixpkgs/issues/24590#issuecomment-291474018, https://github.com/NixOS/nixpkgs/pull/11319#issuecomment-167248770, https://github.com/NixOS/nixpkgs/issues/87592#issuecomment-627391267.
The approach I would suggest is to have a script (in Nix itself, or Python, or even just a bash script if you really want) that downloads the package index and extracts the package names, URLs and hashes to a JSON file; then you can construct agdaPackages from the underlying data with builtins.fromJSON (builtins.readFile ./packages.json).

@emilazy Thanks again for your advice!
@alexarice Ok, then I guess it's a script. Maybe agda-pkg can be used for that somehow..?

I am still not sure how often the package index is updated either, I still think it is better to maintain our own package versions

Hmmm, package-index seems to be a one-person project run by @jonaprieto, but still it's in the agda organisation, and it seems to receive updates every odd months. Also, since it's open, we can as well send PRs there. Then the non-Nix-using (part of the) Agda community can also profit.
And we in turn profit from the listings of new and updated packages there. I wouldn't underestimate that. If we run our own library set here, we can quickly get out of sync with the rest of the community, and I would very much like to avoid that, because it would mean losing any adoption that nix might win very quickly.
I asked the maintainer of package-index for collaboration here: https://github.com/agda/package-index/issues/20
@alexarice If we mainly pull packages from package-index and add mechanisms for overrides, is that an acceptable solution for you?

I personally don't see how agda-pkg will help, as I believe the main purpose of it is to download the git repos, which nix will do for us

I am still not sure how often the package index is updated either, I still think it is better to maintain our own package versions

I update the package-index every once in a while, without any periodicity. Unfortunately, some packages do not have any release, so we keep the last commit seen as their version.
One may think to have one script to keep the package-index updated. It can not take longer. However, I have not found time to do that, to be honest.

It's avoided because it means that the build graph cannot be determined statically, and you can't answer questions like "what attributes are available in agdaPackages?" without doing arbitrary fetches/builds. Practical implications include not working well with --dry-run and nix-env(1). I'm afraid I don't know a pointer to a specific central discussion on this, but see e.g. #24590 (comment), #11319 (comment), #87592 (comment).
The approach I would suggest is to have a script (in Nix itself, or Python, or even just a bash script if you really want) that downloads the package index and extracts the package names, URLs and hashes to a JSON file; then you can construct agdaPackages from the underlying data with builtins.fromJSON (builtins.readFile ./packages.json).

I think for the last thing you may want to check agda-pkg. I'll just paste the commands you need to run to see the info you want.
$ pip3 install agda-pkg
$ apkg init
$ apkg list
Library name         Latest version  URL
---------------------------------------------------------------------------------------------------------
agda-base            v0.2            https://github.com/pcapriotti/agda-base.git
agda-categories      v0.1            https://github.com/agda/agda-categories.git.
...
$ apkg info standard-library
{ 'cached': False,
  'default': True,
  'depend': [],
  'description': None,
  'editable': False,
  'fromGit': True,
  'fromIndex': True,
  'fromUrl': False,
  'include': 'src/',
  'index_path': PosixPath('/Users/jonaprieto/.apkg@agda-2.6.1/package-index/src/standard-library/versions/v1.3'),
  'installed': False,
  'keywords': [],
  'library': 'standard-library',
  'license': '',
  'origin': 'https://github.com/agda/agda-stdlib.git',
  'sha': '9f929b4fe28bb7ba74b6b95d01ed0958343f3451',
  'source_path': PosixPath('/Users/jonaprieto/.apkg@agda-2.6.1/package-sources/standard-library@v1.3'),
  'testedWith': [],
  'version': 'v1.3'}

Hmmm, package-index seems to be a one-person project run by @jonaprieto, but still it's in the agda organisation, and it seems to receive updates every odd months. Also, since it's open, we can as well send PRs there. Then the non-Nix-using (part of the) Agda community can also profit.

Indeed.

I personally don't see how agda-pkg will help, as I believe the main purpose of it is to download the git repos, which nix will do for us

Download git repos is one thing. Agda-pkg has more usages. See the documentation https://agda.github.io/agda-pkg/#/?id=usage-manual
If there is something you want to add, please add an issue, or PR.
BTW, someone a few weeks ago added something related to NixOS, you might be interested.
https://agda.github.io/agda-pkg/#/?id=using-with-nix-or-nixos

Ah i did not realise there were more commands, I expect the JSON output could be used

I've had more of a look at agda-pkg. It does a lot more than I thought it did, and the json output would be very useful, though I am not sure how you would plan on generating build instructions based on the data. For example, there is no information anywhere that ial should be build with make (that needs a patchShebangs according to our current package) and standard-library needs you to run a haskell script.

though I am not sure how you would plan on generating build instructions based on the data

I can see three ways:

PR to the library itself that gets rid of the make script. Gives the cleanest solution, but is the most effort, may yield friction with the library maintainers, and is often not feasible.
That information needs to be encoded by hand in package-index, but I don't know how. @jonaprieto how would you deal with that situation?
Allow to override the buildPhase in nixpkgs.

I think there are not enough Agda libraries out there in order to try and detect the build strategy automatically. Probably it's going to be option 3., since it's easiest and also quite stable and versatile.

Once you do option 3 I don't see the point of having automatic package generation

3. Allow to override the buildPhase in nixpkgs.

I'll choose this approach.

Once you do option 3 I don't see the point of having automatic package generation

The point is that we don't have to updated releases and hashes by hand.

And also we would get new packages for free when they're added to the index. We only need to overwrite the build phase if it doesn't work out of the box.

Once you do option 3 I don't see the point of having automatic package generation

The point is that we don't have to updated releases and hashes by hand.

I actually tried quite hard to get this working recently here but was stopped by a few things that made it easier to just do manually. If I remember correctly the main issues were that it wasn't immediately clear what was the latest version for some packages and there also seemed to be no way to figure out what what packages worked with each versions. That said I was trying to do something that mapped versions of packages to the appropriate version of agda.
I did even try to hack around with the python code a bit but didn't get very far. If you have any ideas I'd be happy to hear about them

I actually tried quite hard to get this working recently here

That's really cool! When reading through it I was wondering why you've created your own index instead of reusing https://github.com/agda/package-index. Is there a particular reason? Maybe package-index has an impractical format?

If I remember correctly the main issues were that it wasn't immediately clear what was the latest version for some packages

Some packages have proper releases with tags. For those, it should be possible to figure out the latest version automatically by looking at the directory structure. But for those with no tags and just commit hashes, we can only fix a particular hash. That, or get our hands real dirty and do git hackery (i.e. looking up the date of the rev and compare that). I think fixing a particular hash is better for starters.
Like that it's not much better than doing it all by hand, but:

It's still easier to e.g. roll back and forth between different versions (because the index lists them all)
there is a single source of truth, i.e. the whole community agrees on which versions are relevant
maybe with time and prodding, agda library devs will acknowledge the usefulness of releasing versions, and start doing it

and there also seemed to be no way to figure out what what packages worked with each versions.

I would have said, simply chose the latest (building) version of everything, and those packages that don't build with these dependencies are marked as broken, and an issue should be created upstream. Getting a compatible package set doesn't come for free, and we'll have to prod the community constantly to fight the bitrot. But I think it's a great service to the community because everyone is notified of breakages soon, and actively maintained packages stand out.
That means we have to have some mechanism that allows us to override the automatically generated nix files, similar to how it works in Haskell.

To be honest I can't exactly remember why I stopped trying to use the index but I spent a good half a day trying to get it to work before deciding to roll up my own thing.
I believe the main problem was the mapping between agda versions and package versions. Once this had to be manually specified, I had to manually do something each package anyway, and by that point typing in the (very low amount of) hashes was was far easier than trying to get the package index's data in the correct format.
Secondly, part of the reason for making my own repository was so that I could mess around with stuff without worrying whether it was the correct fit for nixpkgs and so that I could push whatever I wanted and pin whatever versions or commits of packages make sense (my main motivation was to get a development version of agda with a development version of cubical). Doing this and then tying myself to package-index seemed contradictory.
Hope this helps. If you are determined to use the package-index, my personal thought on the easiest way to do it is to add functionality to agda-pkg which prints out data in the exact format you want. This will almost certainly be easier than trying to work out where this data currently is in agda-pkg and trying to parse it.

Something else that would make this far easier is if you could convince people to use some standardised way to build an agda library, preferably with a standardised way of building of building html files as well.

@turion I have worked a bit more on https://github.com/alexarice/all-agda so that more stuff is now read from json files. If you look in the various versions.json files, you will see that the necessary things are:

version name
sha256
list of agda versions that the library works with
list of dependencies including their version

I believe if the package-index was extended to contain this data (in particular I don't believe it currently contains the last 2) then it could be used. I'd also be willing to help upstream some of this data if this is the direction that is chosen

* list of agda versions that the library works with

* list of dependencies including their version

I think there are two points in the design space here:

All libraries should be in sync and up to date with the latest Agda & dependency versions

Every package can work with older versions of everything, but these versions need to be specified

is more coherent, simpler, puts pressure on the ecosystem to always update, risks losing packages that aren't regularly maintained

is more flexible, more complex, leaves the ecosystem in peace, harder to maintain

My impression is that I've been pursuing 1., but you prefer 2.?
One thing about 2. that is hard: It needs a dependency resolution mechanism. Assume you have a dependency triangle where A depends on B, B depends on C, and A also on C. Assume that some version of A needs a newer version of C than B can handle. Then this won't work in Agda because the module namespace is global. It's the same in Haskell. We would need to detect this and try to solve the constraints somehow. This is really complicated, and I believe nixpkgs is not the right place for that.
It can be simplified by saying that a dependency cannot have a version range, but must have a definite version. (Possibly, a right open interval might do as well.) Then the above case would be simply rejected. But then a lot of cases that would compile are rejected because the version bounds need to be maintained. If we maintain the version bounds then that could work. Optionally we can apply pressure on the ecosystem to increase the bounds.
So my impression is this can only work either with 1., or with 2. but really simple dependency version specifications.

To be honest I'm not exactly sure what your points mean here but the things I have noticed are:

Packages tend to only work with one specific version of their dependencies.
There is a lag between e.g. standard-library updating and things that depend on standard-library updating. This is unavoidable.
When Agda updates, everything will break
I do not know of a single package with multiple dependencies, so have not considered dependency triangles or anything. Ideally the library maintainer would have found versions of libraries that work together.

1 and 2 could be fixed by maintaining multiple versions of packages in nixpkgs. As far as I can tell (3) is unavoidable as Agda is tied into the haskell ecosystem.
Also I'm not really trying to push any method of doing things, I've just had a mess around and found that the data above is the necessary information you need (at least if you are maintaining multiple versions of packages)

1. Packages tend to only work with one specific version of their dependencies.

Ok, that makes listing the dependency easy. We need only one version.

2. There is a lag between e.g. standard-library updating and things that depend on standard-library updating. This is unavoidable.

Yes. With my scenario 1. this means that we would need to wait until the reverse dependencies of standard-library have updated, or mark them as broken.

3. When Agda updates, everything will break

You mean, potentially? Often Agda libraries will still compile with a newer Agda.

4. I do not know of a single package with multiple dependencies, so have not considered dependency triangles or anything. Ideally the library maintainer would have found versions of libraries that work together.

Good point. I somehow thought there is a reverse dependency on agda-categories somewhere, but at least there is none in nixpkgs.

1 and 2 could be fixed by maintaining multiple versions of packages in nixpkgs. As far as I can tell (3) is unavoidable as Agda is tied into the haskell ecosystem.

We can still have older versions of Agda around. But it becomes a burden to maintain them all.

Also I'm not really trying to push any method of doing things, I've just had a mess around and found that the data above is the necessary information you need (at least if you are maintaining multiple versions of packages)

Ah ok. I was just pointing out that we can either choose to maintain multiple versions, or stick with a single version. While multiple versions are nice, single versions are probably easier. But I'll support either decision.

You mean, potentially? Often Agda libraries will still compile with a newer Agda.

I know for a fact that standard-library-1.5 does not compile with current master agda for example. I would consider this quite a large breakage (I am referring to major versions, bug fix versions are fine)

And in reply to "We can still have older versions of Agda around", what I was trying to say is that precisely this is not possible in nixpkgs.

You mean, potentially? Often Agda libraries will still compile with a newer Agda.

I know for a fact that standard-library-1.5 does not compile with current master agda for example. I would consider this quite a large breakage (I am referring to major versions, bug fix versions are fine)

Yes that would be a huge breakage. But does it compile with the latest released (i.e on hackage) version? Those are the relevant ones for us, I think.

And in reply to "We can still have older versions of Agda around", what I was trying to say is that precisely this is not possible in nixpkgs.

I think it is with some effort. Either in nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix.yaml one can pin older versions for something, or we can just use haskellPackages.callHackage with some older version of Agda. In the latter case, those older versions are only visible for us.

You mean, potentially? Often Agda libraries will still compile with a newer Agda.

I know for a fact that standard-library-1.5 does not compile with current master agda for example. I would consider this quite a large breakage (I am referring to major versions, bug fix versions are fine)

Yes that would be a huge breakage. But does it compile with the latest released (i.e on hackage) version? Those are the relevant ones for us, I think.

I am making the point that at some point Agda 2.6.2 will be released, and whatever version of the standard-library that currently exists at that point will no longer work

And in reply to "We can still have older versions of Agda around", what I was trying to say is that precisely this is not possible in nixpkgs.

I think it is with some effort. Either in nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix.yaml one can pin older versions for something, or we can just use haskellPackages.callHackage with some older version of Agda. In the latter case, those older versions are only visible for us.

You will also have to maintain expressions for all the dependencies of Agda, or they will be updated to incompatible versions in the haskell infrastructure. At this point you would effectively be maintaining a parallel haskell distribution just for Agda. I don't think you'd have much luck getting this merged into nixpkgs

You mean, potentially? Often Agda libraries will still compile with a newer Agda.

I know for a fact that standard-library-1.5 does not compile with current master agda for example. I would consider this quite a large breakage (I am referring to major versions, bug fix versions are fine)

Yes that would be a huge breakage. But does it compile with the latest released (i.e on hackage) version? Those are the relevant ones for us, I think.

I am making the point that at some point Agda 2.6.2 will be released, and whatever version of the standard-library that currently exists at that point will no longer work

Fair point. How do we work around that then? If we don't want to maintain older versions of Agda, it seems like the only way is to mark it broken then until a fix is out (which will probably not take too long)?

And in reply to "We can still have older versions of Agda around", what I was trying to say is that precisely this is not possible in nixpkgs.

I think it is with some effort. Either in nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix.yaml one can pin older versions for something, or we can just use haskellPackages.callHackage with some older version of Agda. In the latter case, those older versions are only visible for us.

You will also have to maintain expressions for all the dependencies of Agda, or they will be updated to incompatible versions in the haskell infrastructure. At this point you would effectively be maintaining a parallel haskell distribution just for Agda. I don't think you'd have much luck getting this merged into nixpkgs

True, at least for those dependencies where Agda requires an older version. That's probably the latest point when the older Agda version needs to be dropped.

Ok, to make this work I have to make an update script.


download_dsyms unable to find the latest build and symbol files

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description

Download_dsyms can't find the latest version of the app on iTunes Connect.
Explicitly passing version via environment variables DOWNLOAD_DSYMS_VERSION and DOWNLOAD_DSYMS_BUILD_NUMBER did not help to resolve the issue.

Lane Details
desc "Refresh Dsyms"
  lane :refresh_dsyms do
    download_dsyms(app_identifier: ENV["APP_ID_PROD"])                  # Download dSYM files from iTC
    upload_symbols_to_crashlytics   # Upload them to Crashlytics
    clean_build_artifacts           # Delete the local dSYM files
  end

Output
$ bundle exec fastlane refresh_dsyms
[11:01:13]: -------------------------------------------------
[11:01:13]: --- Step: Verifying required fastlane version ---
[11:01:13]: -------------------------------------------------
[11:01:13]: Your fastlane version 2.66.2 matches the minimum requirement of 2.66.0  ✅
[11:01:13]: ------------------------------
[11:01:13]: --- Step: default_platform ---
[11:01:13]: ------------------------------
[11:01:13]: Driving the lane 'ios refresh_dsyms' 🚀
[11:01:13]: ----------------------------
[11:01:13]: --- Step: download_dsyms ---
[11:01:13]: ----------------------------
[11:01:13]: Login to iTunes Connect<EMAIL_ADDRESS>[11:01:18]: Login successful
[11:01:19]: Looking for dSYM files for com.mycompany.app v1.1 (1)
[11:01:27]: No dSYM URL for 1 (1.1)
[11:01:27]: No dSYM files found on iTunes Connect - this usually happens when no recompling happened yet
[11:01:27]: -------------------------------------------
[11:01:27]: --- Step: upload_symbols_to_crashlytics ---
[11:01:27]: -------------------------------------------
[11:01:27]: Using 4 threads for Crashlytics dSYM upload 🏎
[11:01:27]: Extracting '/Users/user/github/projects/my-project/com.mycompany.app-1.0-3.dSYM.zip'...
[11:01:27]: $ unzip -qo /Users/user/github/projects/my-project/com.mycompany.app-1.0-3.dSYM.zip

[11:01:47]: Successfully uploaded dSYM files to Crashlytics 💯
[11:01:47]: -----------------------------------
[11:01:47]: --- Step: clean_build_artifacts ---
[11:01:47]: -----------------------------------
[11:01:47]: Cleaned up build artifacts 🐙

Relevant Environment Variables
I have passed the build and version number explicitly as the fastlane unable to find the dSYMS for latest build.
CRASHLYTICS_API_TOKEN=crashlytics_token
FL_UPLOAD_SYMBOLS_TO_CRASHLYTICS_DSYM_WORKER_THREADS=4
DOWNLOAD_DSYMS_VERSION=1.1
DOWNLOAD_DSYMS_BUILD_NUMBER=1

Environment
✅ fastlane environment ✅
Stack

Key
Value

OS
10.13

Ruby
2.4.1

Bundler?
false

Git
git version 2.15.0

Installation Source
~/.rbenv/versions/2.4.1/bin/fastlane

Host
Mac OS X 10.13 (17A405)

Ruby Lib Dir
~/.rbenv/versions/2.4.1/lib

OpenSSL Version
OpenSSL 1.0.2l  25 May 2017

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
9.0

System Locale

Variable
Value

LANG
en_GB.UTF-8
✅

LC_ALL

LANGUAGE

fastlane gems

Gem
Version
Update-Status

fastlane
2.66.2
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

did_you_mean
1.1.2

slack-notifier
1.5.1

CFPropertyList
2.3.5

claide
1.0.2

colored2
3.1.2

nanaimo
0.2.3

xcodeproj
1.5.3

rouge
2.0.7

xcpretty
0.2.8

terminal-notifier
1.8.0

unicode-display_width
1.3.0

terminal-table
1.8.0

plist
3.3.0

addressable
2.5.2

multipart-post
2.0.0

word_wrap
1.0.0

public_suffix
2.0.5

tty-screen
0.6.3

babosa
1.0.2

colored
1.2

highline
1.7.8

commander-fastlane
4.4.5

excon
0.59.0

faraday
0.13.1

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20170404

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

fastimage
2.1.0

gh_inspector
1.0.3

mini_magick
4.5.1

multi_json
1.12.2

multi_xml
0.6.0

rubyzip
1.2.1

security
0.1.3

xcpretty-travis-formatter
1.0.0

dotenv
2.2.1

bundler
1.15.4

faraday_middleware
0.12.2

uber
0.1.0

declarative
0.0.10

declarative-option
0.1.0

representable
3.0.4

retriable
3.1.1

mime-types-data
3.2016.0521

mime-types
3.1

little-plugger
1.1.4

logging
2.2.2

jwt
2.1.0

memoist
0.16.0

os
0.9.6

signet
0.8.1

googleauth
0.6.2

httpclient
2.8.3

google-api-client
0.13.6

json
2.1.0

io-console
0.4.6

openssl
2.0.6

generated on: 2017-11-23

It is working on version 2.64.0, but on 2.66.0 it's not =(

I think what broke it is the required platform flag that was introduced to Spaceship recently.

I also have this problem on 2.66.2.
Tried to provide platform but result the same.

PR #11030 fixes this.

Thanks everyone, and sorry for the late response. Can you confirm that this works again with the most recent release?

Confirm, it works fine on 2.67.0


How is the private key created and stored?

How is the private key created and stored?

Private key is generated using Secp256k1
It is stored in a wallet file


ISPN-13866 NonBlockingManager#scheduleWithFixedDelay should allow for…

… reschedule on exceptionc
https://issues.redhat.com/browse/ISPN-13866

Updated, let me know what you think.

Thanks @wburns


Add new vault metrics

Adding additional vault metrics requested here: https://github.com/DataDog/integrations-core/issues/9724

Great, thanks @FlorianVeaux
For my education - if a metric isn't defined in the agent config metrics.py/metadata.csv - will DataDog itself not import and display it? Or will it bring it in, but just not have any description?

The metadata.csv is only description, units etc. If a metric is sent but not in the metadata.csv, it will come in but just without a description.
The metrics.py of the vault integration is something completely different, its used by the code of the integration to know how to read and parse metrics exposed by vault. It's an implementation detail but the vault integration works in "whitelist" mode, we have to list all the metrics we want the integration to pull in.


Make InMemory object store track last modified time for each entry

Which issue does this PR close?

Closes #3782
Rationale for this change

Explain in #3782
What changes are included in this PR?

In struct InMemoryUpload, it can store btye with timestamp
Are there any user-facing changes?

Thanks again


[FEATURE] - Addition to Send-PnPMail - Add option to attach files #3136

It would be very nice if the -Attachment could take an URL (or preferably an Array of URLs ) to files in SharePoint
Describe alternatives you've considered
As of now the -Attachment can take a path to the local file system, and in an Azure Function this is not optimal.

hey @kasperbolarsen , took some time, but finally added support for this via -Files parameter. Available from tomorrow's nightly builds :)
Thanks for this FR.


[#171404935] Bump Xenial stemcell version to 621.95

What
Bumping to match the version bump that's happening as part of upgrading from
cf-deployment v15.0.0 to v15.4.0
How to review

Code review
Check it ran down my pipeline OK

Who can review
Anyone

Ran down my pipeline fine too

Ran down my pipeline fine too


Add log_image to wandb, cometml, and LoggerDestination

What does this PR do?
Adds a log_image virtual method to LoggerDestination and implements log_image for CometMLLogger and WandBLogger. Also adds unit tests.
Manual Tests
WandBLogger.log_image
import wandb
wandb.init()
import numpy as np
import torch
from composer.loggers import WandBLogger

wbl = WandBLogger()
wbl.log_images(images=[np.random.rand(3, 32,32), torch.rand(1, 32, 32)], name='my_cool_images', channels_last=False)

results
CometMLLogger
import numpy as np
import os
from composer.loggers import CometMLLogger
import torch

os.environ['COMET_API_KEY'] = '...' # redacted.
cl = CometMLLogger()

cl.log_images(images=[np.random.rand(3, 32,32), torch.rand(1, 32, 32)], name='my_cool_images', channels_last=False)

results
What issue(s) does this change relate to?
fixes CO-1152
fixes CO-1153
fixes CO-1154
Before submitting

[ ] Have you read the contributor guidelines?
[ ] Is this change a documentation change or typo fix? If so, skip the rest of this checklist.
[x] Was this change discussed/approved in a GitHub issue first? It is much more likely to be merged if so.
[ ] Did you update any related docs and document your change?
[x] Did you update any related tests and add any new tests related to your change? (see testing)
[x] Did you run the tests locally to make sure they pass?
[x] Did you run pre-commit on your change? (see the pre-commit section of prerequisites)

Could you also confirm that you have manually tested that valid looking images actually get piped through to wandb/comet?

Could you also confirm that you have manually tested that valid looking images actually get piped through to wandb/comet?

@dakinggg, okay added manual tests

Hey @bandish-shah, everything passes here, but Jenkins is for some reason failing. Can you PTAL?


Trigger @NPCRestock still make item

When fire @NPCRestock still add item to NPC backpack and not check if exist or not.
How Reproduce

Add a spawn of a vendor like c_butcher
Set Region tag.RestockVendors=10 for fast restock (if not want use this tag have to wait 10 mins)
Open vendor backpack and see.

Additional info:

Tested on last build (3285)
Clear script pack
Happen only on Brain_vendor
Possible connected to issue #397 fix

Little video clip: https://www.youtube.com/watch?v=_jexZ9i18d8
NPC Script code:
[CHARDEF c_butcher]
ID=c_man
NAME=#NAMES_HUMANMALE the butcher
DESIRES=i_gold
AVERSIONS=t_trap
TSPEECH=spk_human_default
TSPEECH=spk_shopkeep
CATEGORY=Civilized
SUBSECTION=Tradesmen
DESCRIPTION=Butcher (human male)
ON=@Create
   COLOR=colors_skin
   NPC=brain_vendor
   NEED=i_gold
   STR={50 75}
   DEX={45 55}
   INT={45 55}

   ANATOMY={20.0 30.0}
   ANIMALLORE={50.0 75.0}
   COOKING={20.0 30.0}
   FENCING={50.0 75.0}
   FISHING={20.0 30.0}
   FORENSICS={20.0 30.0}
   HERDING={20.0 30.0}
   MAGICRESISTANCE={20.0 30.0}
   SWORDSMANSHIP={20.0 30.0}
   TACTICS={20.0 30.0}
   TASTEID={20.0 30.0}
   WRESTLING={20.0 30.0}

   ITEMNEWBIE=random_light
   ITEMNEWBIE=random_male_hair
   COLOR=colors_hair
   ITEMNEWBIE=random_facial_hair,1,R5
   COLOR=match_hair
   ITEM=random_shirts_human
   COLOR=colors_all
   ITEM=random_pants_human
   COLOR=colors_all
   ITEM=random_footwear_human
   COLOR=colors_neutral
   ITEM=i_apron_half
   COLOR=colors_brown
ON=@NPCRestock
   ITEM=random_coin_purse
   ITEM=i_cleaver_meat,1,R3
   ITEM=i_knife_skinning,1,R3
   ITEM=i_knife_butcher,1,R3

   SELL=VENDOR_S_BUTCHER_TEMPLATE
   BUY=VENDOR_B_BUTCHER_TEMPLATE

Animal tamer too

It's not a bug, I changed the behaviour of the @npcrestock as it should be. You can use @CreateLoot trigger instead of npcrestock to set drops to npc.  Next PR I can add a setting to sphere.ini to choose between old and new behaviour.
Note that: @CreateLoot only create item when npc is dead, so it's better to use for loots.

Who will change all script pack? :-)

Hm, now I am in my bed trying to sleep, tomorrow I can find a solution for it. I may change the npcrestock to stock items only first time it created so it can fix the issue.

I can change all my script its fine. But someone must change the script pack

Well, actually i'd keep the way npcrestock has always worked, doing
otherwise would cause too many headaches to people
Il mar 28 apr 2020, 04:32 Jhobean<EMAIL_ADDRESS>ha scritto:

I can change all my script its fine. But someone must change the script
pack
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Sphereserver/Source-X/issues/440#issuecomment-620340790,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADS2CJFQKQICYFLSRAUFB4DROY54LANCNFSM4MSIB7ZQ
.

@xwerswoodx i already use different way for loot. For me not is a problem :)
I simple testing it whit script pack in in download link :)

Hmm, okay I will make it works like before, and try to find another issue for color issue. I agree with you, many people currently using @NPCRestock so it can cause issue for them, so I will make it works like old way with a little improvement, but I am still highly recommend you to use @CreateLoot instead of @NPCRestock because @NPCRestock create items while npc is still alive, and that causes more item saves on world save, but @CreateLoot only creates loot when the npc dead so it means save files got cleaner from more than a million unnecessary items.

@xwerswoodx yeah long time ago before @CreateLoot my friend already maked a different way for loot on @death trigger for prevent item in save, now i think @CreateLoot is more faster than script on trigger @death

sphere should improve and be basically backwards compatible with scripts no mather whatMarius ---- On mar, 28 apr 2020 12:20:50 +0200<EMAIL_ADDRESS>wrote ----
@xwerswoodx yeah long time ago before @CreateLoot my friend already maked a different way for loot on @death trigger for prevent item in save, now i think @CreateLoot is more faster than script on trigger @death
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or unsubscribe.

Yeah for sure @CreateLoot should be the new way to go, but it's mandatory
to keep at least basic backwards compatibility (with stuff that always
worked in a certain way)
Il mar 28 apr 2020, 12:32 Mad King<EMAIL_ADDRESS>ha scritto:

sphere should improve and be basically backwards compatible with scripts
no mather whatMarius ---- On mar, 28 apr 2020 12:20:50 +0200
<EMAIL_ADDRESS>wrote ----
@xwerswoodx yeah long time ago before @CreateLoot my friend already maked
a different way for loot on @death trigger for prevent item in save, now i
think @CreateLoot is more faster than script on trigger @death
—You are receiving this because you are subscribed to this thread.Reply to
this email directly, view it on GitHub, or unsubscribe.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/Sphereserver/Source-X/issues/440#issuecomment-620523034,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADS2CJE5KS23KSUH3DSKC3TRO2WEZANCNFSM4MSIB7ZQ
.

speaking of loot, before any change, we should discuss and decide how should work.
.1) the loot should be inside the backpack?
...1a) should be lootable?
...1a-bis) should be restocked if looted?
.2) the loot should be created when npc dies?
...2a) is what @createloot does? got triggered when npc dies and create loot and put it inside body?
...2b) does the equip of npc sum up with the @createloot loot?
.3) where equip of npc should go?
...3a) if got stealed it should be restocked\re-equiped by npc?
.4) does @npcrestock has to do with selling item restock?
...4a) what kind of use should have in relation with that?

speaking of loot, before any change, we should discuss and decide how should work.
.1) the loot should be inside the backpack?
...1a) should be lootable?
...1a-bis) should be restocked if looted?
.2) the loot should be created when npc dies?
...2a) is what @createloot does? got triggered when npc dies and create loot and put it inside body?
...2b) does the equip of npc sum up with the @createloot loot?
.3) where equip of npc should go?
...3a) if got stealed it should be restocked\re-equiped by npc?
.4) does @npcrestock has to do with selling item restock?
...4a) what kind of use should have in relation with that?
changing the scripts pack, is a stuff i can do, and i'll do if needed, but first decide the behaviour, to do things once

I thinked another problem about @NPCRestock not used for item:
Some script is possible use OLD @NPCRestock system for loot in backpack for stealing skill. this is one idea i thinked

I tested your commit but some not work.
Ok npc no longer restock, but also if tell him buy or sell not give any item:

NPC Code:
[CHARDEF c_butcher]
ID=c_man
NAME=#NAMES_HUMANMALE the butcher
DESIRES=i_gold
AVERSIONS=t_trap
TSPEECH=spk_human_default
TSPEECH=spk_shopkeep
CATEGORY=Civilized
SUBSECTION=Tradesmen
DESCRIPTION=Butcher (human male)
ON=@Create
   COLOR=colors_skin
   NPC=brain_human
   NEED=i_gold
   STR={50 75}
   DEX={45 55}
   INT={45 55}

   ANATOMY={20.0 30.0}
   ANIMALLORE={50.0 75.0}
   COOKING={20.0 30.0}
   FENCING={50.0 75.0}
   FISHING={20.0 30.0}
   FORENSICS={20.0 30.0}
   HERDING={20.0 30.0}
   MAGICRESISTANCE={20.0 30.0}
   SWORDSMANSHIP={20.0 30.0}
   TACTICS={20.0 30.0}
   TASTEID={20.0 30.0}
   WRESTLING={20.0 30.0}

ON=@NPCRestock
   SELL=VENDOR_S_BUTCHER_TEMPLATE
   BUY=VENDOR_B_BUTCHER_TEMPLATE

Fixed in 3289 release.
@Jhobean can test it too, if for you is all ok i can close issue

Seem good. Thx

Nice i can close it. Thx


AttributeError: 'str' object has no attribute 'tablename'

from fonduer import candidate_subclass
Part_Attr = candidate_subclass('Part_Attr', ['part','attr'])
Code from Intro_Candidates notebook.
error:

AttributeError                            Traceback (most recent call last)
 in ()
1 from fonduer import candidate_subclass
2
----> 3 Part_Attr = candidate_subclass('Part_Attr', ['part','attr'])
~/anaconda/envs/py36/lib/python3.6/site-packages/fonduer/candidates/models/candidate.py in candidate_subclass(class_name, args, table_name, cardinality, values)
147             "mapper_args": {"polymorphic_identity": table_name},
148             # Helper method to get argument names
--> 149             "argnames": [_.tablename for _ in args],
150             "mentions": args,
151         }
~/anaconda/envs/py36/lib/python3.6/site-packages/fonduer/candidates/models/candidate.py in (.0)
147             "mapper_args": {"polymorphic_identity": table_name},
148             # Helper method to get argument names
--> 149             "argnames": [_.tablename for _ in args],
150             "mentions": args,
151         }
AttributeError: 'str' object has no attribute 'tablename'

Looks like you're using Fonduer v0.3.0 from GitHub, rather than Fonduer v0.2.3. The master branch of the tutorials is only for Fonduer v0.2.3. We will release updated tutorials when Fonduer v0.3.0 is released.

Thanks !


Regex in put_integration doesn't match with sagemaker runtime integration

Reporting Bugs
Moto version: 4.0.0
When using sagemaker runtime as integration for an API Gateway, the endpoint URI will be:
arn:aws:apigateway:{region}:runtime.sagemaker:path/endpoints/{endpoint_name}/invocations
However, in APIGatewayBackend.put_integration, the URI gets matched here with the following regex:
re.match("^arn:aws:apigateway:[a-zA-Z0-9-]+:[a-zA-Z0-9-]+:(path|action)/", uri)
Because [a-zA-Z0-9-]+ can't match sagemaker.runtime, the function throws an invalid ARN request even though the ARN should be valid

Thanks for raising this @arnaudstiegler, and welcome to Moto!
If you want to contribute a fix for this, PR's are always welcome.


seriuos bug on centos7.9

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.70
OS Version: centos7.9

Steps to Reproduce:

I use VSCode only on centos, but when I open folder, it is not on the top, or it is not seen
this bug is serious, can you  help to  fix ?

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.70.2. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.70.2. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

I have tried the newest version of 1.70.2， it has the  same problem, The bug is too much  serious, I have no way to use VSCode, the version of 1.67.2 is ok, all the later version are bad, can you help me ?

/duplicate - please see https://github.com/microsoft/vscode/issues/146422#issuecomment-1172448048

Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for similar existing issues. See also our issue reporting guidelines.
Happy Coding!


Add regex for two common bots

myg0t.win is the second most common I think after omegatronic and Good shot mate is another mic spam and sniper hack bot. Both rename themselves by prepending a digit so I've included regexes for that too.

The prepended digit is automatic from the server, I think as a feature to try prevent bots and cheaters from being able to exactly copy another player's name. Any regexes will not be affected by the prepended digit already as it still looks at the rest of the name too. Regardless, will be good to have more regexes to pick up these bots.

Ah I assumed it was matching the whole string, not just looking for substrings


[fix](jdbc scan) Remove the conjuncts.remove call in JdbcScan

In #37565, due to the change in the calling order of finalize, the final generated Plan will be missing the PREDICATES that have been pushed down in Jdbc. Although this behavior is correct, before perfectly handling the push down of various PREDICATES, we need to keep all conjuncts to ensure that we can still filter data normally when the data returned by Jdbc is a superset.

run buildall

run buildall


Improve object shorthand

PR checklist

[x] Addresses an existing issue: #3778
[x] Enhancement

[x] Includes tests

Overview of change:
Support granular configuration in object-literal-shorthand
CHANGELOG.md entry:

[new-rule-option] object-literal-shorthand supports {"property"?: "never", "method"?: "never"} as config options

Please see #4141 before you contribute to this project. Thank you!

...and of course, merge conflicts. 😢. If you don't have time to resolve these soon @pablobirukov I can tackle them.

I'll fix those @JoshuaKGoldberg

Pushed  #4842 instead @JoshuaKGoldberg

Closing in favor of #4842


login page issue

Describe the bug
web app not working
Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-uexlgp
Steps to reproduce
see error
Expected behavior
web app not working
Screen Recording / Screenshot

Platform
Browser name = Chrome
Full version = <IP_ADDRESS>
Major version = 130
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36 AVG/<IP_ADDRESS>
performance.memory = {
  "totalJSHeapSize": 141499957,
  "usedJSHeapSize": 130412573,
  "jsHeapSizeLimit":<PHONE_NUMBER>
}
Username = Genjenesscobain
Chat ID = ad7afcd2c958

Additional context
login page not working

please fix the issues


Connection for a server is not restored

If a connection is broken for a server, it is not restored even if the server is restarted

It looks that the issue happened during one of the last c.java refactoring. Now it is not closed in case of IOException

It looks that the issue happened during one of the last c.java refactoring. Now it is not closed in case of IOException


Create Magic_8-ball.py

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Update the compiler toolchain section

Move the CLI reference to READMEs
Add links to system requirements

@kailash-manasarovar please merge.


Time step is not always honored

Java version:
openjdk 17.0.3 2022-04-19
OpenJDK Runtime Environment (build 17.0.3+7-Ubuntu-0ubuntu<IP_ADDRESS>)
OpenJDK 64-Bit Server VM (build 17.0.3+7-Ubuntu-0ubuntu<IP_ADDRESS>, mixed mode, sharing)

Library version: 0.3.1
OS: Ubuntu Linux
I have had issues with the library not being consistent in how long time intervals are handled.
In my use case, I need to have the time interval valid for 15 minutes.  In some cases it generates the correct code for the entire 15 minute interval, in other cases the code is only valid for 5 minutes before another code is generated.
Here is the code I am using:
var key = getKey(emailAddress);
var now = Instant.now();
var otp = otpGenerator.generateOneTimePasswordString(key, now);

logger.info(String.format("Time Step is: %d", otpGenerator.getTimeStep().getSeconds()));
logger.info(String.format("Code for 0 seconds: %s", key));
logger.info(String.format("Code for 60 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(60))));
logger.info(String.format("Code for 120 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(120))));
logger.info(String.format("Code for 180 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(180))));
logger.info(String.format("Code for 240 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(240))));
logger.info(String.format("Code for 300 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(300))));
logger.info(String.format("Code for 360 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(360))));
logger.info(String.format("Code for 420 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(420))));
logger.info(String.format("Code for 480 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(480))));
logger.info(String.format("Code for 540 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(540))));
logger.info(String.format("Code for 600 seconds: %s", otpGenerator.generateOneTimePassword(key, now.plusSeconds(600))));

And this is one of the cases where I have called it and it generated a different code.  Notice in this case, the message that indicates a new key was created so it isn't the case that this was the same key as a previous instance (and yes, I am aware of the typo in the first print statement that is trying to print the key instead of the code).
(image removed and added in a different comment)

This is working as expected.
TOTP generators measure time relative to a fixed reference point (the UNIX epoch). Here's the specific implementation: https://github.com/jchambers/java-otp/blob/27fd2d730fc6e91b41683a8fd338b08f33ca4743/src/main/java/com/eatthepath/otp/TimeBasedOneTimePasswordGenerator.java#L126-L139
When you specify a time step, you're essentially dividing time from that interval into chunks of the same size. If you specify a fifteen-minute time step, you can expect the code to rotate at noon, 12:15, 12:30, 12:45, 13:00, and so on. The reference time is unaffected by when you (for example) create your TimeBasedOneTimePasswordGenerator instance. This behavior allows remote clients to know what code to use without knowing when the TimeBasedOneTimePasswordGenerator instance was created on the server.
For additional details, please see RFC 6238 - TOTP: Time-Based One-Time Password Algorithm.


Styles injection order different between dev and prod

First off, ❤this project. It has helped me create some elegant front-ends while providing a nice DX. So 💯for that.
I am not certain this is a bug. However it seems odd to me. If this is not an appropriate place for this, please let me know and I will close it / move it / delete it upon maintainer request.
I only started experiencing this after upgrading from v3 to v4.

[x] This is not a v0.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior 🤔

Injection order would be the same in dev and prod.
Current Behavior 😯

makeStyles is not injected last on Prod, causing some intentional styles to be overridden by default MUI styling. Prod build is created by react-scripts. I have not ejected.
Dev

Prod

I was able to workaround this by using the injectFirst prop of StylesProvider (not included in screenshot above). However I don't believe this is the intended use case for that prop.
Steps to Reproduce 🕹

I have not created a sandbox. However, if this appears to be a real issue, and not some misunderstanding on my part, I will happily attempt to recreate it.
Context 🔦

I was expecting styles I put inside of makeStyles to take precedence over default MUI styles.
Your Environment 🌎

Tech
Version

@material-ui/core
^4.1.3

@material-ui/icons
^4.2.1

@material-ui/styles
^4.1.2

prop-types
^15.7.2

react
^16.8.6

react-dom
^16.8.6

react-scripts
^3.0.1

Do you have a reproduction?

Likely same issue as #16374. Core issue is that we actually need to warn against imports from @material-ui/core because the sideEffects: false entry in our package.json is incorrect. Each component file has a side-effect: setting the order in which style tags are inserted.

@cosmere Are you sharing a useStyles hook between different component? I have seen people impacted by it with the same symptom.

Issue 16374 or the fix for issue 16374 doesn’t seems to be the same issue seen here. The makestyle injection should be the last. But in production build its getting inserted at the bottom when new components are rendered. So the Mui styles takes more precedence

I'd like to emphasize that there are still problems with Chips. The workaround I found would be to use a specific makeStyles call for the file that is using Chips. It feels really clunky though.

Currently seeing the same issue with Button and Typography styles with differences on Prod and Dev. Changing the import order of the imports also affects the final styling. This is happening to the MUI-Nextjs example project as well.

Had this same issue with Avatar using shared useStyles.

Did anyone find a solution to this? We are sharing styles between components, where the import file has makestyles in it. Prod runs them in a different order, so the specificity is lower than the MUI defaults. The cludge I had to use was to put the style object only in the import, and keep makestyles in the component, but got into issues with typescript and was forced to use "any" as the type. It works, but doesn't feel nice e.g.
`
// this is in the global styles files
export const globalFormsStyles = (theme: Theme) => ({
someStyle: {
paddingLeft: theme.spacing(2)
}
});
// this is in a component that uses the styles
import { globalFormsStyles } from '../global-form-styles';
const useGlobalFormsStyles = makeStyles(globalFormsStyles as any); // what is any here? It breaks without it
`

@McGern You can use createStyles to have better typing:
//some common file
export const formStyles = (theme: Theme) =>
    createStyles({
        paper: {
            margin: theme.spacing(1),
            padding: theme.spacing(2),
            textAlign: 'center',
        }
    });
//--------------------------------------
//some component file
const useFormStyles = makeStyles(formStyles);

const Component = ()=> {
    const formClasses = useFormStyles({});
}


翻譯

如果你能提供訂單數量，價錢可以再談被調整。翻譯英文

What a clearly  represented in the obove bar chart is that dramatic changes from 2000 to 2008 about Mobile - phune subscription . To  be speafic , there was a dramatic jump from 2000 to 2008 in the developing Countries .On the contrary, the quantity of developed countries showed a
steable increase from 2000 to 2008.
As a matter of fact , What the author tries to show us more than the statistics , the table leades us to find ont what causes it . Thexe exist a sea of reason that contribute to this phenomenon . but some deserve special emphasis . On the  one hand , on
a basis of the lastest suvery by the Chirese academy of science , With the quitenly pace of mordern life and fierce competition society . people's values have changed gradually . As  a result that an increasing people chose to use mobile phone . in ohder to keep their pace  in the society with others . On the other hand , the changes have enhanced and promoted by the superior policy of goverment  in  strengthen scientist development .Is that to say , it is the enforcement in the established pretinent laws and regulations . And the suprising trend will come into being
Taking into account what has been argued . We can come to conclusion what causes it . And the trendency will continue in the forthcoming , The government and individual should collaborate as much as possible .


Create nb.xml

Norwegian

Hallo, @ghhanssen!
Welcome and thanks for this, spreading the word in Norwegian...
...I found this little error (I'm swedish) I think;
<output id="8">
			<!--Check for updated apps already running-->
			<message>Se etter oppdaterte apper som allerede kjører...</message>
</output>

It's the Check for updated apps that is already running, not any apper som kjører

Hallo, @ghhanssen! Welcome and thanks for this, spreading the word in Norwegian... ...I found this little error (I'm swedish) I think;
<output id="8">
			<!--Check for updated apps already running-->
			<message>Se etter oppdaterte apper som allerede kjører...</message>
</output>

It's the Check for updated apps that is already running, not any apper som allerede kjører

Thanks, I've fixed it now :)

And, I've updated the original to a more understandable sentence, thanks!
https://github.com/Romanitho/Winget-AutoUpdate/pull/286/commits/e3ad34128fecc42f95ab18c28f912f9012b5ca7f


Travis Support for Unit Tests

In Issue #11 , we created a basic Unit Testing Suite... in this issue, we want to support automated unit testing using Travis (with integration to Github) so that all submitted pull requests get tested automatically.
This should also include a travis build badge on the Readme.

This has been done already.


Reading training data from database

Hi,
I'm wondering how I could easily read training data from a database.
PS: I'm using django.

@acquayefrank See the docs on registering custom file formats: http://textblob.readthedocs.org/en/dev/api_reference.html#module-textblob.formats . Also see https://github.com/sloria/TextBlob/issues/67#issuecomment-55539402 for an example.


ESP32: Fixes for README.md

Problem

Fixes for README.md for esp32.

Change overview
Fixes.
Testing

Checked the modified commands.

@sweetymhaiske  In the same PR, can you please add any missing clusters those were present in all-clusters-app component.mk and not reflected in CMakeLists.txt. Let us make sure that nothing is missed

@sweetymhaiske In the same PR, can you please add any missing clusters those were present in all-clusters-app component.mk and not reflected in CMakeLists.txt. Let us make sure that nothing is missed

@dhrishi Done. Thanks.

Thanks. And one more thing, we had added such text in ESP32 example component.mk:
# The list of extra component dirs must be in sync with that in all-clusters-app/esp32/Makefile
You can safely remove that now from all the examples.

Thanks. And one more thing, we had added such text in ESP32 example component.mk:
# The list of extra component dirs must be in sync with that in all-clusters-app/esp32/Makefile
You can safely remove that now from all the examples.

Done


Problem restarting Media Path Scan after hitting APP_MAX_SCAN_TIME

Hi,
I've started the Media Path scanning with a 600s timeout but it wasn't enough as my music lib is quite big.
I then modified APP_MAX_SCAN_TIME=60000 in .env and reissued the command php artisan init but got an exception.
So I don't know if the new setting has been taken into account, but obviously the scanning is not happening when I click the Scan button, as it did the first time (at least I had some CPU activity and some log activity).
How can I restart the scanning process and monitor it?
How can I change the init paremeter in .env ?
How can I simply restart from scratch (erasing the php artisan init config)?
-- sorry just discovered php artisan koel:sync -v from the doc, this answers my 2 first questions.

APP_MAX_SCAN_TIME use php's set_time_limit() and thus has the same limitation – i.e. the server (Apache/nginx) can time out before php's own process. For bigger music lib, the artisan command should be used instead.

How can I simply restart from scratch (erasing the php artisan init config)?

What config is there to erase?

What config is there to erase?
anything that was set by php artisan init when reading .env (mail server, admin name and password etc.)

The reason for the sync problem is an exception:
[Illuminate\Database\QueryException]
  SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'Ой°Ы' for key 'artists_name_unique' (SQL: insert into `artis
  ts` (`name`, `updated_at`, `created_at`) values (Ой°Ы, 2015-12-17 06:10:18, 2015-12-17 06:10:18))

Exception trace:
 () at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:651
 Illuminate\Database\Connection->runQueryCallback() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:611
 Illuminate\Database\Connection->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:391
 Illuminate\Database\Connection->statement() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:347
 Illuminate\Database\Connection->insert() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/Processor.php:32
 Illuminate\Database\Query\Processors\Processor->processInsertGetId() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:1799
 Illuminate\Database\Query\Builder->insertGetId() at n/a:n/a
 call_user_func_array() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:943
 Illuminate\Database\Eloquent\Builder->__call() at /home/vagrant/koel/bootstrap/cache/compiled.php:10476
 Illuminate\Database\Eloquent\Model->insertAndSetId() at /home/vagrant/koel/bootstrap/cache/compiled.php:10465
 Illuminate\Database\Eloquent\Model->performInsert() at /home/vagrant/koel/bootstrap/cache/compiled.php:10422
 Illuminate\Database\Eloquent\Model->save() at /home/vagrant/koel/bootstrap/cache/compiled.php:10055
 Illuminate\Database\Eloquent\Model::create() at /home/vagrant/koel/bootstrap/cache/compiled.php:10070
 Illuminate\Database\Eloquent\Model::firstOrCreate() at /home/vagrant/koel/app/Models/Artist.php:41
 App\Models\Artist::get() at /home/vagrant/koel/app/Services/Media.php:103
 App\Services\Media->syncFile() at /home/vagrant/koel/app/Services/Media.php:52
 App\Services\Media->sync() at /home/vagrant/koel/bootstrap/cache/compiled.php:6026
 Illuminate\Support\Facades\Facade::__callStatic() at /home/vagrant/koel/app/Console/Commands/SyncMedia.php:52
 App\Console\Commands\SyncMedia->handle() at n/a:n/a
 call_user_func_array() at /home/vagrant/koel/bootstrap/cache/compiled.php:1182
 Illuminate\Container\Container->call() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Console/Command.php:150
 Illuminate\Console\Command->execute() at /home/vagrant/koel/vendor/symfony/console/Command/Command.php:256
 Symfony\Component\Console\Command\Command->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Console/Command.php:136
 Illuminate\Console\Command->run() at /home/vagrant/koel/vendor/symfony/console/Application.php:838
 Symfony\Component\Console\Application->doRunCommand() at /home/vagrant/koel/vendor/symfony/console/Application.php:189
 Symfony\Component\Console\Application->doRun() at /home/vagrant/koel/vendor/symfony/console/Application.php:120
 Symfony\Component\Console\Application->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:107
 Illuminate\Foundation\Console\Kernel->handle() at /home/vagrant/koel/artisan:35

  [PDOException]
  SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'Ой°Ы' for key 'artists_name_unique'

Exception trace:
 () at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:390
 PDOStatement->execute() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:390
 Illuminate\Database\Connection->Illuminate\Database\{closure}() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:644
 Illuminate\Database\Connection->runQueryCallback() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:611
 Illuminate\Database\Connection->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:391
 Illuminate\Database\Connection->statement() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:347
 Illuminate\Database\Connection->insert() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/Processor.php:32
 Illuminate\Database\Query\Processors\Processor->processInsertGetId() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:1799
 Illuminate\Database\Query\Builder->insertGetId() at n/a:n/a
 call_user_func_array() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:943
 Illuminate\Database\Eloquent\Builder->__call() at /home/vagrant/koel/bootstrap/cache/compiled.php:10476
 Illuminate\Database\Eloquent\Model->insertAndSetId() at /home/vagrant/koel/bootstrap/cache/compiled.php:10465
 Illuminate\Database\Eloquent\Model->performInsert() at /home/vagrant/koel/bootstrap/cache/compiled.php:10422
 Illuminate\Database\Eloquent\Model->save() at /home/vagrant/koel/bootstrap/cache/compiled.php:10055
 Illuminate\Database\Eloquent\Model::create() at /home/vagrant/koel/bootstrap/cache/compiled.php:10070
 Illuminate\Database\Eloquent\Model::firstOrCreate() at /home/vagrant/koel/app/Models/Artist.php:41
 App\Models\Artist::get() at /home/vagrant/koel/app/Services/Media.php:103
 App\Services\Media->syncFile() at /home/vagrant/koel/app/Services/Media.php:52
 App\Services\Media->sync() at /home/vagrant/koel/bootstrap/cache/compiled.php:6026
 Illuminate\Support\Facades\Facade::__callStatic() at /home/vagrant/koel/app/Console/Commands/SyncMedia.php:52
 App\Console\Commands\SyncMedia->handle() at n/a:n/a
 call_user_func_array() at /home/vagrant/koel/bootstrap/cache/compiled.php:1182
 Illuminate\Container\Container->call() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Console/Command.php:150
 Illuminate\Console\Command->execute() at /home/vagrant/koel/vendor/symfony/console/Command/Command.php:256
 Symfony\Component\Console\Command\Command->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Console/Command.php:136
 Illuminate\Console\Command->run() at /home/vagrant/koel/vendor/symfony/console/Application.php:838
 Symfony\Component\Console\Application->doRunCommand() at /home/vagrant/koel/vendor/symfony/console/Application.php:189
 Symfony\Component\Console\Application->doRun() at /home/vagrant/koel/vendor/symfony/console/Application.php:120
 Symfony\Component\Console\Application->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:107
 Illuminate\Foundation\Console\Kernel->handle() at /home/vagrant/koel/artisan:35

This seems to come from an encoding problem (song with Chinese character in the name or artist)
I don't understand how the scanning can encounter this problem, it should reuse existing artist name instead of recreating it, right?

What's your table encoding?
On Thu, Dec 17, 2015 at 2:27 PM, nodje<EMAIL_ADDRESS>wrote:

What config is there to erase?
anything that was set by php artisan init when reading .env (mail server,
admin name and password etc.)
The reason for the sync problem is an exception:
[Illuminate\Database\QueryException]
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'Ой°Ы' for key 'artists_name_unique' (SQL: insert into artis   ts (name, updated_at, created_at) values (Ой°Ы, 2015-12-17 06:10:18, 2015-12-17 06:10:18))
Exception trace:
() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:651
Illuminate\Database\Connection->runQueryCallback() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:611
Illuminate\Database\Connection->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:391
Illuminate\Database\Connection->statement() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:347
Illuminate\Database\Connection->insert() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/Processor.php:32
Illuminate\Database\Query\Processors\Processor->processInsertGetId() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:1799
Illuminate\Database\Query\Builder->insertGetId() at n/a:n/a
call_user_func_array() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:943
Illuminate\Database\Eloquent\Builder->__call() at /home/vagrant/koel/bootstrap/cache/compiled.php:10476
Illuminate\Database\Eloquent\Model->insertAndSetId() at /home/vagrant/koel/bootstrap/cache/compiled.php:10465
Illuminate\Database\Eloquent\Model->performInsert() at /home/vagrant/koel/bootstrap/cache/compiled.php:10422
Illuminate\Database\Eloquent\Model->save() at /home/vagrant/koel/bootstrap/cache/compiled.php:10055
Illuminate\Database\Eloquent\Model::create() at /home/vagrant/koel/bootstrap/cache/compiled.php:10070
Illuminate\Database\Eloquent\Model::firstOrCreate() at /home/vagrant/koel/app/Models/Artist.php:41
App\Models\Artist::get() at /home/vagrant/koel/app/Services/Media.php:103
App\Services\Media->syncFile() at /home/vagrant/koel/app/Services/Media.php:52
App\Services\Media->sync() at /home/vagrant/koel/bootstrap/cache/compiled.php:6026
Illuminate\Support\Facades\Facade::__callStatic() at /home/vagrant/koel/app/Console/Commands/SyncMedia.php:52
App\Console\Commands\SyncMedia->handle() at n/a:n/a
call_user_func_array() at /home/vagrant/koel/bootstrap/cache/compiled.php:1182
Illuminate\Container\Container->call() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Console/Command.php:150
Illuminate\Console\Command->execute() at /home/vagrant/koel/vendor/symfony/console/Command/Command.php:256
Symfony\Component\Console\Command\Command->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Console/Command.php:136
Illuminate\Console\Command->run() at /home/vagrant/koel/vendor/symfony/console/Application.php:838
Symfony\Component\Console\Application->doRunCommand() at /home/vagrant/koel/vendor/symfony/console/Application.php:189
Symfony\Component\Console\Application->doRun() at /home/vagrant/koel/vendor/symfony/console/Application.php:120
Symfony\Component\Console\Application->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:107
Illuminate\Foundation\Console\Kernel->handle() at /home/vagrant/koel/artisan:35
[PDOException]
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'Ой°Ы' for key 'artists_name_unique'
Exception trace:
() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:390
PDOStatement->execute() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:390
Illuminate\Database\Connection->Illuminate\Database{closure}() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:644
Illuminate\Database\Connection->runQueryCallback() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:611
Illuminate\Database\Connection->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:391
Illuminate\Database\Connection->statement() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Connection.php:347
Illuminate\Database\Connection->insert() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/Processor.php:32
Illuminate\Database\Query\Processors\Processor->processInsertGetId() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:1799
Illuminate\Database\Query\Builder->insertGetId() at n/a:n/a
call_user_func_array() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:943
Illuminate\Database\Eloquent\Builder->__call() at /home/vagrant/koel/bootstrap/cache/compiled.php:10476
Illuminate\Database\Eloquent\Model->insertAndSetId() at /home/vagrant/koel/bootstrap/cache/compiled.php:10465
Illuminate\Database\Eloquent\Model->performInsert() at /home/vagrant/koel/bootstrap/cache/compiled.php:10422
Illuminate\Database\Eloquent\Model->save() at /home/vagrant/koel/bootstrap/cache/compiled.php:10055
Illuminate\Database\Eloquent\Model::create() at /home/vagrant/koel/bootstrap/cache/compiled.php:10070
Illuminate\Database\Eloquent\Model::firstOrCreate() at /home/vagrant/koel/app/Models/Artist.php:41
App\Models\Artist::get() at /home/vagrant/koel/app/Services/Media.php:103
App\Services\Media->syncFile() at /home/vagrant/koel/app/Services/Media.php:52
App\Services\Media->sync() at /home/vagrant/koel/bootstrap/cache/compiled.php:6026
Illuminate\Support\Facades\Facade::__callStatic() at /home/vagrant/koel/app/Console/Commands/SyncMedia.php:52
App\Console\Commands\SyncMedia->handle() at n/a:n/a
call_user_func_array() at /home/vagrant/koel/bootstrap/cache/compiled.php:1182
Illuminate\Container\Container->call() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Console/Command.php:150
Illuminate\Console\Command->execute() at /home/vagrant/koel/vendor/symfony/console/Command/Command.php:256
Symfony\Component\Console\Command\Command->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Console/Command.php:136
Illuminate\Console\Command->run() at /home/vagrant/koel/vendor/symfony/console/Application.php:838
Symfony\Component\Console\Application->doRunCommand() at /home/vagrant/koel/vendor/symfony/console/Application.php:189
Symfony\Component\Console\Application->doRun() at /home/vagrant/koel/vendor/symfony/console/Application.php:120
Symfony\Component\Console\Application->run() at /home/vagrant/koel/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:107
Illuminate\Foundation\Console\Kernel->handle() at /home/vagrant/koel/artisan:35
This seems to come from an encoding problem (song with Chinese character
in the name or artist)
I don't understand how the scanning can encounter this problem, it should
reuse existing artist name instead of recreating it, right?
—
Reply to this email directly or view it on GitHub
https://github.com/phanan/koel/issues/90#issuecomment-165355759.

good catch:
SELECT DEFAULT_CHARACTER_SET_NAME, DEFAULT_COLLATION_NAME FROM information_schema.SCHEMATA S WHERE schema_name = 'homestead';
+----------------------------+------------------------+
| DEFAULT_CHARACTER_SET_NAME | DEFAULT_COLLATION_NAME |
+----------------------------+------------------------+
| latin1                     | latin1_swedish_ci      |
+----------------------------+------------------------+

I guess this applies to tables in the database as well.
And I would guess Laravel is swedish...
So at this point I guess I want to restart the init process: would droping the database and relaunching php artisan init be enough?
Can I set the encoding in .env?

So at this point I guess I want to restart the init process: would droping the database and relaunching php artisan init be enough?
Can I set the encoding in .env?

Koel (Laravel) will not create the database for you, so you'll need to create the it with a utf8_unicode_ci collation manually. And yes, dropping the database should be the faster approach than trying to fix it.

I got it working, it's great, well done!
How is the .env  file used though? Is it read at runtime for configuration? Do I just have to change settings in there for them to be taken into account? Specifically, STREAMING_METHOD can just be written in there and will be set at runtime right?
Usage of this .env file is a bit confusing because php artisan init seems to setup configuration once and for all in the database based on it as well.

Glad you made it. You can read more about .env here:
https://github.com/vlucas/phpdotenv
On Fri, Dec 18, 2015 at 11:03 AM, nodje<EMAIL_ADDRESS>wrote:

I got it working, it's great, well done!
How is the .env file used though? Is it read at runtime for
configuration? Do I just have to change settings in there for them to be
taken into account? Specifically, STREAMING_METHOD can just be written in
there and will be set at runtime right?
Usage of this .env file is a bit confusing because php artisan init seems
to setup configuration once and for all in the database based on it as well.
—
Reply to this email directly or view it on GitHub
https://github.com/phanan/koel/issues/90#issuecomment-165656265.


[GENERIC viewer] Use consistent casing, for the labels, in the findbar

Note that the browser findbar in Firefox uses "Title Case" for the labels, and it thus seem like a good idea to ensure that PDFFindBar in consistent with that.
Furthermore, the new label added in PR #13261 uses the "Title Case" format which means that currently the default viewer findbar looks inconsistent.
Please note: Based on the official Firefox localization docs, see https://firefox-source-docs.mozilla.org/l10n/overview.html#string-updates, changing only the casing should not require updating the key:

If the change is minor, like fixing a spelling error or case, the developer should update the en-US translation without changing the l10n-id.

/botio-linux preview

Thanks!


Linear stepper: already valid steps can be skipped without visit

Bug, feature request, or proposal:
Not sure but I think it's a bug
What is the expected behavior?
In case of linear stepper the user can skip a not completed step if the step is already valid.
What is the current behavior?
Already valid steps should be mandatory to complete as well.
What are the steps to reproduce?
The second step can be skipped here:
https://stackblitz.com/edit/angular-material2-issue-wnrjsf
What is the use-case or motivation for changing an existing behavior?
There are use-cases where we just want to show some information without any user input, or we can prefill data (e.g billing address), so it will be valid, but the user should check (and accept)

I think I have run into the same issue.
For me, it needs to show that the step is completed disregarding whether the step is visited or not.
A quick change to the line 113 did the trick.
Before change:
return this.stepControl ? this.stepControl.valid && this.interacted : this.interacted;

After change:
return this.stepControl ? this.stepControl.valid : this.interacted;

@mmalerba

Hello, has there been any progress on this bug?

I see 2 possible solutions to this:

Even if the step is valid, still require the user to go to the step and confirm that they want to move on without changing anything.
Allow the user to skip the step if its valid, but update the icon to show the step as implicitly completed

I'm leaning toward solution 1 being the right solution. marking the stepper as linear should probably mean that the user does have to step through each step


Header Colums are wider when table header becomes sticky on Firefox

Header Colums become wider when table header sticky mode is fired
The bug only happens on Firefox (version 54.0 Linux),  it works correctly in Chrome.
Here's a screenshoot  :

This could be a duplicate of this issue: https://github.com/jmosbech/StickyTableHeaders/issues/120
but applying the same fix (putting a character in the first header col does not fix it,
and unlike #120, it is a Firefox specific bug (although I have not tested safari or IE)
One particular behavior I notice on Firefox (and not on Chrome) is that the table header expands to occupy the full screen width when it enters fixed mode.

@max-l How did you fix the issue in the end? I see it is working on OpenProt like a charm :)

Hi max-I, you forgot to declare
Please try:

...
Maybe this is the reason why firefox renders the content incorrectly.