Minimum K8s version?

Hello,
Is there a minimum supported version of k8s for draft? I'm using k8s v1.8.1 on minikube (OSX/hyperkit).
When I draft up the container is built and the templates all appear to be successfully deployed but the process exits with an error.
$> draft up
WARNING: no registry has been set, therefore Draft will not push to a container registry.  You should commit this file.
npm WARN<EMAIL_ADDRESS>No description
npm WARN<EMAIL_ADDRESS>No repository field.

up to date in 1.316s
found 0 vulnerabilities

 ---> d06b6d12b362
Step 8/9 : COPY index.js .
 ---><PHONE_NUMBER>b1
Step 9/9 : CMD ["node", "index"]
 ---> Running in afd12239647b
 ---> bd5ef43671bb
Successfully built bd5ef43671bb
Successfully tagged hello-world:b19615fa9ddb3a035172bd71834a2e7c53ff40a8
2019/02/28 11:57:35 error while releasing: could not install release: rpc error: code = Unknown desc = release hello-world failed: the server could not find the requested resource

A quick kubectl get all shows everything deployed as expected:
$> kubectl get all
NAME                             DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
deploy/hello-world-hello-world   1         1         1            1           6m

NAME                                    DESIRED   CURRENT   READY     AGE
rs/hello-world-hello-world-7d8757597b   1         1         1         6m

NAME                             DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
deploy/hello-world-hello-world   1         1         1            1           6m

NAME                                    DESIRED   CURRENT   READY     AGE
rs/hello-world-hello-world-7d8757597b   1         1         1         6m

NAME                                          READY     STATUS    RESTARTS   AGE
po/hello-world-hello-world-7d8757597b-rkcjj   1/1       Running   0          6m

NAME                          TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)    AGE
svc/hello-world-hello-world   ClusterIP   <IP_ADDRESS>   <none>        8080/TCP   6m
svc/kubernetes                ClusterIP   <IP_ADDRESS>       <none>        443/TCP    8m

I did a quick check for direct helm support:
$> draft delete
app 'hello-world' deleted
$> helm install charts/hello-world/
NAME:   elevated-rattlesnake
LAST DEPLOYED: Thu Feb 28 12:12:32 2019
NAMESPACE: default
STATUS: DEPLOYED

RESOURCES:
==> v1/Service
NAME                              TYPE       CLUSTER-IP     EXTERNAL-IP  PORT(S)   AGE
elevated-rattlesnake-hello-world  ClusterIP  <IP_ADDRESS>  <none>       8080/TCP  0s

==> v1beta1/Deployment
NAME                              DESIRED  CURRENT  UP-TO-DATE  AVAILABLE  AGE
elevated-rattlesnake-hello-world  1        0        0           0          0s

==> v1/Pod(related)
NAME                                               READY  STATUS   RESTARTS  AGE
elevated-rattlesnake-hello-world-6f865bb89c-6ghvw  0/1    Pending  0         0s

NOTES:

  http://elevated-rattlesnake. to access your application

This installed fine so I don't think there's an issue with helm.
More information about my environment:
$> kubectl version
Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.1", GitCommit:"f38e43b221d08850172a9a4ea785a86a3ffa3b3a", GitTreeState:"clean", BuildDate:"2017-10-12T00:44:37Z", GoVersion:"go1.9.1", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.1", GitCommit:"f38e43b221d08850172a9a4ea785a86a3ffa3b3a", GitTreeState:"clean", BuildDate:"2017-10-11T23:16:41Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}
$>
$> minikube version
minikube version: v0.34.1
$> helm version
Client: &version.Version{SemVer:"v2.12.3", GitCommit:"eecf22f77df5f65c823aacd2dbd30ae6c65f186e", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.12.3", GitCommit:"eecf22f77df5f65c823aacd2dbd30ae6c65f186e", GitTreeState:"clean"}
$> draft version
&version.Version{SemVer:"v0.16.0", GitCommit:"5433afea1421810ae9d828631d8651de913b347a", GitTreeState:"dirty"}

I forgot to mention that the same steps worked fine when I re-created my minikube vm with k8s v1.2.0

I thought I'd dig further.
k8s 1.8.1 -> 1.8.15 all fail with the same error.
k8s 1.9.0 works fine.

Hi @GavinOsborn, what helm version do you have? helm version

As mentioned above:
$> helm version
Client: &version.Version{SemVer:"v2.12.3", GitCommit:"eecf22f77df5f65c823aacd2dbd30ae6c65f186e", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.12.3", GitCommit:"eecf22f77df5f65c823aacd2dbd30ae6c65f186e", GitTreeState:"clean"}

At this point I don't believe we have made any compatibility guarantees for what versions Draft will work against. Given that the project is still in its infancy stages, I'd recommend the latest version of helm and Kubernetes when playing with Draft.
Nice to see that you got it working on a 1.9 cluster! I think 1.9 was the release when Kubernetes introduced the apps/v1 GroupKind, which as I recall is what the default Draft packs bootstrap your charts with.

Thanks, and understood.
We are due an upgrade soon anyhow so I'm not overly concerned.

Closing this as I believe that answers your question, but please feel free to reopen if that didn't answer your question. Thanks!


Set filesize limit for uploads to 3MB

After we have discussed in the service team, please set the filesize limit for uploads again to 3MB.

may I contribute to this repo?
in which folder you've set your upload code?

@devbazregari Sure, thanks a lot! :rocket:
These are the relevant files:
Model: MediaFile
Form: UploadMediaFileForm
View: upload_file_ajax()
And the URL to test everything out in the end is http://localhost:8000/media-library/
Let me know if you have any further questions!

sure. I give it my best to try solve this issue.

bro why i get this error " /usr/bin/env: ‘bash\r’: No such file or directory "   when i write this command ./dev-tools/install.sh ?

Don't you have bash installed? Our dev setup is mostly targeted at Linux users, so if you're developing under Windows, we suggest the Windows subsystem for Linux.
If you're already using Linux, I would need a bit more information to try to debug the problem.

I'm using wsl2 ( ubuntu) and installed all the dependencies.
and I'm in bash when writing this command " /usr/bin/env: ‘bash\r "

bro let's skip running the application in my OS. if your logic of uploading files works. I've written a limit-size file function that could implement what you want. do you want me to add it  to your project ( I've tested it on my app and it worked )

I've written a limit-size file function that could implement what you want. do you want me to add it  to your project ( I've tested it on my app and it worked )

Sure, you can open a PR and I will test the functionality on my machine.

bro why i get this error " /usr/bin/env: ‘bash\r’: No such file or directory "   when i write this command ./dev-tools/install.sh ?

A quick Google search indicates that this might be a problem of the line endings in Windows vs Unix...

thank you bro . so I'll do it.
thank for the advice.


Interpolation fails for list parameters

Hello,
I have a problem when using Luigi 2.8.0 (Python 2.7.15). If I have a parameter which is a list, instead of a string, the interpolation fails with
File ".../lib/python2.7/site-packages/luigi/configuration/cfg_parser.py", line 73, in _interpolate_env     match = self._ENVRE.search(value) TypeError: expected string or buffer
Apparentely, the _interpolate_env method does not account for possible list parameter.
Minimal reproducing example

Create a virtualenv or a Conda env with Python 2.7.15 and Luigi 2.8.0

Create a file called test.py with the following contents:

#!/usr/bin/env python

from luigi import configuration, Task, ListParameter

config = configuration.get_config()

class TestTask(Task):
    list_param = ListParameter(config_path={'section': 'test', 'name': 'list_param'})

config.set('test', 'list_param', ['item1', 'item2'])
test_task = TestTask()

Run this file from the above mentioned environment.

Thank you for considering this issue report!

@iamlikeme Given you added the support for Environment Variable interpolation (and that's where this error is occurring), could you give this a look?
Thanks

I have reduced the example to the following:
from luigi import configuration
config = configuration.get_config()
config.set('test', 'list_param', ['item1', 'item2'])

I tested this snipped with luigi 2.7.9, i.e. before environment interpolation was added, and it works in Python 2.7 but not in Python 3.6. The reason is that in Python 3 ConfigParser.set method requires option values to be strings (see docs). This was not the case in Python 2.
It seems that it has never been possible to save list parameters to cfg-config in Python 3, so the envvar interpolation does not introduce a breaking change.
I suggest to patch envvar interpolation to make Python 2 behavior backward-compatible, and to leave Python 3 behaviour as is (i.e. calling config.set with a list option raises TypeError). Does it make sense, @dlstadther?

@iamlikeme Wouldn't that mean, that, although the ListParameter class is there, there will be actually no way to have list-valued parameters?

So I looked into Luigi docs for ListParameter and it says that list parameters should be formatted as JSON strings. This pretty much solves the problem for both Python 2 and 3 and works with interpolation:
# luigi 2.8.0, Python 2.7.15
import os
from luigi import configuration, Task, ListParameter

class TestTask(Task):
    list_param = ListParameter(config_path={'section': 'test', 'name': 'list_param'})

config = configuration.get_config()
config.set('test', 'list_param', '["item1", "item2"]')  # Value is a JSON array

TestTask().list_param  # Returns (u'item1', u'item2')

os.environ["ENVVAR"] = "foo"
config.set('test', 'list_param', '["${ENVVAR}", "item2"]')  # Value is a JSON array with reference to an envvar
TestTask().list_param  # Returns (u'foo', u'item2')

@iamlikeme Thank you very much for the information!


association reflector - rails compatible

some rails modules aren't working with this mongomapper because the access to the associations are different than in other ORMs.
So you have to add this into your models that it is compatible:
      def self.reflect_on_association(x)         associations[x]       end

Does defining that method make them work? Which plugins are you having trouble with?

you need this for e.g. formtastic

And with this change, formtastic works with MongoMapper? I'm not opposed to adding this, just want to make sure that we don't add it and find that formtastic breaks somewhere else.
If someone wants to do the work of getting MM working with formtastic, I'd be happy to pull it.

for my web app (mongo mapper + formtastic) this works well!

ActiveRecord's reflect_on_association(x) returns an ActiveRecord::Reflection::AssociationReflection and MongoMapper's assocations[x] returns an association from the MongoMapper::Plugins::Associations module. Although these classes have some methods in common (like klass and name) they have a lot of differences as well.
I would recommend against returning a MM association as if it were an AR association like @jjoe64 suggests. Instead, I would have reflect_on_association return an adapter that wraps the MM association and imitates a subset of the API of AR's AssociationReflection.
I did something like this in my app for compatibility with simple_form, but it was a bit hacky. I'll do some research and see what it would take to create something more robust for MM.


[Question] Add parser to Analogy Log Viewer?

Hi,
Do you mind if I add your parser to my log viewer at https://github.com/Analogy-LogViewer/Analogy.LogViewer
and
https://github.com/Analogy-LogViewer/Analogy.LogViewer.NLog

Hi,
Great project! Sure, reuse code.

Just an update.
With your parsers and Core folder I was able to Create a offline (files) parsers.
I plan to add the real time (tcp/upd) later.
Thanks for creating the heavy work of parsers and logics 👍
you can see the new project at:
https://github.com/Analogy-LogViewer/Analogy.LogViewer.Log4jXml

Awesome! I'm happy that my code fits your needs =)


Update syncmate to 7.0.365

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

Additionally, if updating a cask:

[ ] sha256 changed but version stayed the same (what is this?).
I’m providing public confirmation below.

eltima still distributes syncmate6.xml for version 7.0.365


Column resizing should communicate new width to cell renderers

This fork introduced a new feature that allows resizing of columns cells.
The way this is achieve is to register a mouse event listener to the header cell and change the width of that cell (and it's sibling) according to the mouse offset when dragging the mouse.
However, the individual cell renders are not notified about the width change. This is problematic for cell renderers that use the width to constrain the contents (e.g. div containers that use text-overflow: ellipsis).
Currently, the cell renderers are usually tied to the width configured in the settings object, which should be the initial width of the column (which is also not always true, see #35 ).
There should be a reliable (and preferably cost efficient) way to communicate width changes to cell renderers.

I put this into the 2.9.0 milestone, because it looks achievable and 2.9.0 is quite empty, yet. But if it turns out to be way more complicated, it may also be thrown out of the milestone as fast as it came in.


Allow Bots to be Whitelisted and Affiliated Automatically

Summary
When a corporate entity whitelists a bot for their project, then EasyCLA needs to

Add a user record associated with that bot associated

cla-*-users.user_company_id equals company_id that whitelisted the bot
cla-*-users.user_github_id equals GitHub API response {"id": #######}
cla-*-users.user_github_username equals GitHub API response {"login": whitelisted_bot_name}
cla-*-users.note equals "[date] Added as part of [cla-*-projects.project_name], whitelisted by [cla-*-companies.company_name]

Add a signature record for the new bot's user

cla-*-signatures.signature_user_ccla_company_id equals [cla-*-companies.company_id] that whitelisted the bot
cla-*-signatures.signature_signed equals true
cla-*-signatures.signature_approved equals true
cla-*-signatures.signature_type equals cla
cla-*-signatures.signature_reference_type equals user
cla-*-signatures.signature_reference_id equals [cla-*-users.user_id]
cla-*-signatures.signature_project_id equals [cla-*-projects.project_id] that the CCLA is valid for
cla-*-signatures.verison equals v1
cla-*-signatures.note equals "[date] Added as part of [cla-*-projects.project_name], whitelisted by [cla-*-companies.company_name]"

Background
When an entity whitelists a bot under a signed CCLA for a project and the bot attempts a PR on a CLA enforced repo then EasyCLA checks to see if the GitHub user is a bot. If the user is a bot, then EasyCLA automatically adds an affiliation confirmation signature record to the signature table
Sample:
https://api.github.com/users/dependabot-preview[bot]
{...
"type": "Bot",
...}
If GitHub Username is whitelisted and users API response is type: Bot then automatically confirm the association. In contrast, type: User will continue to require affiliation confirmation
User Story
As a project on GitHub, I need to be able to whitelist bots so that I can continue using the bots I need to manage contributions.
Acceptance Criteria
The "done" criteria when this feature or problem is resolved.  Such as:

Unit Tests added and running in CI
Functional Tests updated to cover feature, if applicable
Demonstrate the set of capabilities to the product team while the code is
running in the STAGING environment.

Reopening this issue for discussion because there are duplicate entries of the bot being created and the when the CLA check runs, it pulls the first user it finds, regardless of whether it's the right one. The message in the logs states :
2020-07-06T20:57:13 WARNING cla: more than 1 user found in our user database - user: [<cla.models.dynamo_models.User object at 0x7efdbe729ad0>, <cla.models.dynamo_models.User object at 0x7efdbe729a50>] - will ONLY evaluate the first one
If the bot user selected does not have a signature entry for the current project, the bot will not pass the CLA check.
Options:
One bot - multiple ccla entries
a) Add more logic when looking for the bot in the user table to prevent duplicate bots being created for each company who adds it to their approved list. This will require removing the user_company_id from the bot entry in the users table. When the bot is added to a company's approved list, if the app finds an entry in the user table for the bot, it will not create another. It will then create a signature for the bot's user_id, the company's company_id, and the project's project_id.
Multiple bots - each bot has a ccla signature entry for the required project/company.
b) Instead of only checking the first user found, check every single bot user found for a signature for the project/company.
c) Bypass this behavior completely in favor of creating one user entry per bot. A project admin will request through the service desk that the bot be added to the approved list for the project. A signature entry is made for the bot user and project (icla).

@dealako


[REQUEST] Support for Toggling Terminal in split window

Hi,
Plugin works great as expected. It would be great if the same is available as a toggle split window apart from a separate buffer.
Thanks.

Hi, thanks for the suggestion :)
Unfortunately, it isn't the intention of this plugin to manage windows. I'd like to keep it simple.
However I believe that you can do that with a mapping and a simple function to keep track of the state of the split (open/closed)


Confirm fact sheets required fields are entered before allowing submission upload to proceed

Maybe the upload file field input should be disabled until required form fields are entered?

This seems to be fixed. Closing now.


[WIP] Add Plugin generator based on the Provider generator

This adds a generator for creating a ManageIQ plugin, that is not provider specific.  Some changes include

Remove provider specifics
Support multi-level namspacing
The rake task is inside the manageiq rake namespace.  If I followed the un-namespaced style of provider, then you'd have be rails generate plugin, which feels wrong.

Follow up, I plan to modify the provider generator to use this as a base.  Note that the provider generator is not in the manageiq rake namespace, but I will change it to do that. I did it in this PR.

@jrafanie Please review.

Found some weirdness when appending to files, so marking as WIP.

@jrafanie This is ready to go.


[feature request] operator swapping_overload

Currently present feature
       overload(<layer>, <action>)
	   Activates the given layer while held and executes <action> on tap.
           the new layer will be activated on top of previous layer

Desired feature:
      swapping_overload(<layer>, <action>)
      Swap the given layer while held and executes <action> on tap.
      the new layer will replace any previously activated layer.

Why do I need it :
Some previously activated layer (Control ) is parasiting my action in the new layer

Is overriding the interfering actions in the composite layer [layer+control] unsatisfactory? I realize that would mean more typing --- just trying to get a sense for the benefits of the additional operator ;)

Minimal repoductible example
[ids]
*

[main]
capslock = overload(capslock, esc)

[capslock:C]
space = overload(capslock_space_layer, macro(_))

[capslock_space_layer+control]
# ____ I want C-space-h to produce b, not C-b _____
h = b

I tried your workaround below, not working:
[ids]
*

[main]
capslock = overload(capslock, esc)

[capslock:C]
space = overload(capslock_space_layer, macro(_))

[capslock_space_layer+control]
# ____ I want C-space-h to produce b, not C-b _____
h = b

Wouldn't that then be:
[main]
capslock = overload(capslock, esc)

[capslock:C]
space = overload(capslock_space_layer, macro(_))

[capslock_space_layer+capslock]
h = b

Working ! thanks a lot @nsbgn ! :smile:


Build error

When I try to build the library I get
g++: error: /home/zethra/rust-media/target/debug/build/rust-media-4f16ffe1a06b74e6/out/../../libwebm-sys-8601c49ada690de1/out: No such file or directory

I think #33 fixes this.

Hmm, there is still a race condition. I think I'll file a PR for it.


Remove submodule DSCResource.Tests

This is a dangling submodule reference preventing this repo from being
recursively cloned as part of PowerShell/DSCResources:
No submodule mapping found in .gitmodules for path 'DSCResource.Tests'

This change is

Hi @Iristyle, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
The agreement was validated by Microsoft and real humans are currently evaluating your PR.
TTYL, MSBOT;

Like the xActiveDirectory PR https://github.com/PowerShell/xActiveDirectory/pull/98, I'm not sure if dev or master was the appropriate branch here... but once this is merged, the reference in https://github.com/PowerShell/DscResources should also be bumped @KarolKaczmarek

@joeyaiello is this something that you might be able to push forward?  Thanks!

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


fix the missing backend error string

The error call breaks because the format string only has one placeholder and two arguments were given.
The backend argument is unnecessary, especially since the the error condition is that it is None.

Thx!


[Feature request] Hotkey: focus into changed file repositories, split changed file section into staged and unstaged

Requested Hotkey Lists:
- Focus into changed files of repositories:
Press  to open gitlens view. Focus into repositories section then focus into changed file section
- Split changed files into section: staged and unstaged:
Make it easy to manage file changed. Also add a hotkey to focus into change and unchanged section.
- Focus and collapse other

Collapse all section repositories, file history, line history .. etc
Focus into one section will collapse other section
eg hotkey to focus into repository section and collapse other section... same apply for (file history, line history, compare))

- Collapse all section:

Collapse all section repositories, file history, line history .. etc

This is out of scope for what I would add into GitLens -- especially with GitLens 11 in the same side bar as the built-in Git -- there is little need to duplicate its functionality


Added vtol and plane models

Signed-off-by: Alejandro Hernández Cordero<EMAIL_ADDRESS>This PR adds

VTOL and plane models
Overwrite VTOL PX4 config file to setup Gazebo
Overwrite plane PX4 config file to setup Gazebo
VTOL and plane launch files

This PR will only show thing in Gazebo, you are not going to be able to fly because of the airspeed sensor. I'm trying to create a PR upstream.

Merging this in the right target. Related with this PR https://github.com/osrf/vehicle_gateway/pull/2


TP2000 627 workbasket summary business rules text

TP2000-627 workbasket summary business rules text

Why

This ticket makes the live status text clearer for workbasket business rule checks following Patrick's recommendations.

What

Updated the text for when a business rule check passes, fails or has not been run
Added in a test that checks that success banner appears following a successful check or does not appear otherwise

Codecov Report
Patch coverage: 100.00% and no project coverage change.

Comparison is base (c1d750c) 92.50% compared to head (da9d6c8) 92.51%.
 Consider uploading reports for the commit 91a919e to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1009   +/-   ##
=======================================
  Coverage   92.50%   92.51%
=======================================
  Files         446      447    +1
  Lines       32028    32073   +45
  Branches     2451     2454    +3
=======================================
+ Hits        29627    29671   +44
- Misses       1921     1923    +2
+ Partials      480      479    -1

Files Changed
Coverage Δ

workbaskets/tests/test_views.py
98.91% <100.00%> (+0.03%)
:arrow_up:

... and 5 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


ref(locale-fr): Add FR translation for list buttons

Summary
List buttons are now translatable (https://github.com/netlify/netlify-cms/pull/5679), I add the translation in French.

Not sure when the addType text is used, I haven't the case in my projects.
If someone can show me an example situation, I could improve the translation !

Not sure when the addType text is used, I haven't the case in my projects.
If someone can show me an example situation, I could improve the translation !

Hi @vnourdin,
This one is used when the list widget is used to output multiple named set of fields.
See:

The doc: https://www.netlifycms.org/docs/beta-features/#list-widget-variable-types
The kitchensink example (very bottom of the editor) https://cms-demo.netlify.com/#/collections/kitchenSink/entries/a-big-entry-with-all-the-things
The corresponding config https://github.com/netlify/netlify-cms/blob/65343c1238af85e9151abb6bbba3770a08091176/dev-test/config.yml#L243-L268


Add --wait and --timeout <int> for deck to wait for the Deck to become ready, fail otherwise

closed with Version 0.8.0


Quick fix for Arch users

Quick fix for Arch users who encouter issue #527
I expect a lot of Arch users will install neovide since DistroTube made a video about it recently.

Awesome. Looks good to me.


CAMEL-10338 - Fix formatting in CDI-OSGI example readme

https://issues.apache.org/jira/browse/CAMEL-10338

Thanks @johnpoth . I'll merge ASAP :-)

Very reactive :100: Thanks @oscerd !

Merged :-) Thanks!

Can you close the PR? :-)


Release 2.0.0

Description
Release 2.0.0 which, among other things, introduces a breaking change and makes WellcomeML light
both contributions from @acampello.
The breaking change forces users to explicitly import wellcome ml models
so instead of from wellcomeml.ml import CNNClassifier you now have to
do from wellcomeml.ml.cnn import CNNClassifier
WellcomeML light ~109MB is possible through a careful creation of extras.
In particular we introduce core and transformers as additional extras.
This allows us to create python specific implementaitons that are quick
and do not require extra "heavy" libraries but also move us towards a very
refined installation process from the user where they install what they need.
The user might even not need to install as they might have the library needed
already in their virtualenv, for example if they want to use CNNClassifier and
have tensorflow installed, installing just wellcomeml will work.
Fixes #373
Checklist

[x] Added link to Github issue or Notion card
[ ] Added tests

That's the release we were waiting for!

That's the PR that we all wanted to see!!!!

Released 🎉 https://pypi.org/project/wellcomeml/2.0.0/

time pip install --no-cache-dir wellcomeml runs in 34s 🚀 and consumes only 111MB 🪶


use a gobal material for color changes

added

option to make all wires set to a hue when any are impulsed
option of what hue to set all wires to

pros

no dynamically attached tweens
compatibility with some other mods

cons

all impulse wires that are currently active have the same color

issues that probably exist

if a user impulses a wire then leaves within 1 second the wire will continue to display the impulse visual

I cannot believe u replaced my spaces to tabs this makes the diff so much harder to read

ah no the tabs are fine
also thanks for the tip i didn't know the option to ignore whitespace is there
though for the actual changes I have just tested them out in game and it's a huge downgrade to the current version

first thing is that the global reset is global, which means if I don't have global reset enabled but someone else does it will be resetting my wires too (as far as I can tell from the code)
second thing is the one you listed which is all wires are the same color, this is a very significant change because in a setup like the one below it's impossible to tell which pulse was activated first
it's also not possible to tell how often a pulse is being activated if it's activated more than once a second (for example a 0.9 second timer)

this point can be ingnored, it's just my opinion but the colors being the same degrades the visual appeal of the effect, right now I like the effect and think it looks very nice and I enjoy just seeing it but the new one just isn't the same with the instant transition and rapidly changing rainbow colors

also by compatibility with other mods I assume you mean just BetterLogixWires / BetterLogixWiresThatScroll
if you know any others please tell me
maybe it's better to lock this stuff behind a config option, something like compatibility mode, or even better if it automatically detects if wires are using shared material and then make the visualizer use the shared material then
additionally it would be nice to have controllable panner speed because right now the rainbow is way too fast in my opinion
oh also regarding possible issues, it's not just for when the user leaves, it's also when you save an unpacked node, all of its impulse outputs will be colored funny until you pack > unpack the node

yep, the mod on my mind when it comes to the compatibility benefits is better logix wires.
il add an option later today to function the old way, will make it auto enable if blw is loaded

problem is it breaks if anyone is using blw, though that's just a blw problem in general since simply deleting wires stuffers from the same issue

oh yep, il instead enable it if a material is referenced by multiple renders. we could potentially use material property blocks. il look into this more later.


Add attribute and name readme docs

I'm not sure, if I need to add more detail.  I copied what was on our provenance-blockchain project, but updated the example commands to work properly.

If this is in response to the spec tickets/cards on the project then the readme.md files are not matching the intended documentation format.  We should be using this format instead: x/distribution/spec/README.md with all of the specific docs for messages, abci state transistions, etc.


Setting up IoC/Bus

added autofac
added mediator
created config class/static service registration

@stimms For your review...should be pretty straightforward but let me know if you'd recommend any changes at this point.


Find the second largest element in an array

Description:
Write a function to find the second largest element in an array of distinct integers.
Input:
An array of distinct integers.
Output:
The second largest integer in the array.
Example:
Input: [12, 35, 1, 10, 34, 1]
Output: 34

Please assign me this issue

I opened a PR ! Please merge

⭐ If you find this repository helpful, please give it a star! ⭐

Please assign this issue to me !

Hi , I am Ruchika Patil. Could you please assign this issue to me ?

I opened a PR . Please merge


TZNames.GetAbbreviationsForTimeZone() for 'nb-NO' throws System.Exception: Could not find a language with code nb-NO

Happens for versions 5.0.0 and 5.0.1
Works fine for version 4.2.0

Hmmm.. I'll have to investigate further.  Thanks.

We have got the same issues

Indeed, this is still happening on 6.0.0.
var results = TimeZoneNames.TZNames.GetNamesForTimeZone("America/Los_Angeles", "nb-NO");
Console.WriteLine(results.Generic);

Unhandled exception. System.Exception: Could not find a language with code nb-NO
   at TimeZoneNames.TZNames.GetLanguageKey(String languageCode, Boolean forDisplayNames)
   at TimeZoneNames.TZNames.GetNamesForTimeZone(String timeZoneId, String languageCode)
   at Program.<Main>$(String[] args) in Program.cs:line 1

I believe this issue would be fixed by my PR: https://github.com/mattjohnsonpint/TimeZoneNames/pull/104


Fix infrastructure deployment and quick-start notebook

Description

Fix terraform configuration files and variables
Making quick-start instructions clearer as per customer request
Fixing library versions dependencies
Fixing service account IAM roles for Compute Default SA
Adding resource labels to the terraform resources
Add quick start multimer notebook.

How has this been tested?
Tested with a clean deployment on a GCP project.
Checklist

[x] I have commented my code, particularly in hard-to-understand areas
[x] I have successfully run the E2E tests, and have included the links to the pipeline runs below
[x] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[x] I have updated any relevant documentation to reflect my changes
[x] I have assigned a reviewer and messaged them

LGTM


"Cannot access a disposed object" thrown OnClientDisconnect()

Hi there.
This error only occurs:

on the server.
when the client disconnecting is NOT also a host. Hosts stop perfectly fine.

The error seems to be caused by the base implementation of 'OnStopClient' called from the base 'OnClientDisconnect' method.
I am using the Multiplex Transport but currently only have Telepathy running.
I've tried first removing the client's ownership of all their owned objects as well as the player object. This did not help.
Here is the log:
ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Net.Sockets.Socket'.
  at System.Net.Sockets.Socket.ThrowIfDisposedAndClosed () [0x0001b] in <8c9cb336fa2042c285391d24de6e4092>:0
  at System.Net.Sockets.Socket.get_RemoteEndPoint () [0x00000] in <8c9cb336fa2042c285391d24de6e4092>:0
  at Telepathy.Server.GetClientAddress (System.Int32 connectionId) [0x00014] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\Transports\Telepathy\Telepathy\Server.cs:324
  at Mirror.TelepathyTransport.ServerGetClientAddress (System.Int32 connectionId) [0x00002] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\Transports\Telepathy\TelepathyTransport.cs:197
  at Mirror.MultiplexTransport.ServerGetClientAddress (System.Int32 connectionId) [0x00011] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\Transports\MultiplexTransport.cs:224
  at Mirror.NetworkConnectionToClient.get_address () [0x00000] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\NetworkConnectionToClient.cs:10
  at CustomNetworkManager.OnServerDisconnect (Mirror.NetworkConnectionToClient conn) [0x00009] in D:\Unity\Repos\WitheredWillows\Assets\ScriptLibrary\GuardianOfElderidge\Networking\CustomNetworkManager.cs:51
  at Mirror.NetworkServer.OnTransportDisconnected (System.Int32 connectionId) [0x00027] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\NetworkServer.cs:600
  at Mirror.MultiplexTransport+<>c__DisplayClass18_0.<AddServerCallbacks>b__3 (System.Int32 baseConnectionId) [0x00001] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\Transports\MultiplexTransport.cs:194
  at Mirror.TelepathyTransport.<ServerStart>b__27_2 (System.Int32 connectionId) [0x00000] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\Transports\Telepathy\TelepathyTransport.cs:173
  at Telepathy.Server.Tick (System.Int32 processLimit, System.Func`1[TResult] checkEnabled) [0x00098] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\Transports\Telepathy\Telepathy\Server.cs:382
  at Mirror.TelepathyTransport.ServerEarlyUpdate () [0x00010] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\Transports\Telepathy\TelepathyTransport.cs:229
  at Mirror.MultiplexTransport.ServerEarlyUpdate () [0x00012] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\Transports\MultiplexTransport.cs:35
  at Mirror.NetworkServer.NetworkEarlyUpdate () [0x00010] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\NetworkServer.cs:1717
  at Mirror.NetworkLoop.NetworkEarlyUpdate () [0x00001] in D:\Unity\Repos\WitheredWillows\Assets\Plugins\Mirror\Runtime\NetworkLoop.cs:193

(Filename: D:/Unity/Repos/WitheredWillows/Assets/Plugins/Mirror/Runtime/Transports/Telepathy/Telepathy/Server.cs Line: 324)

Currently I just commented out line 324 in Telepathy.Server which has the trouble method 'GetClientAddress' as seen at the top of the stack above.
Please let me know what further information I can provide. Thanks in advance for any assistance!

I am also getting this issue with a regular .NET project and Telepathy. It worked 4 months ago, now it doesn’t. Nothing changed in my project to make it fail like this.
Weird issue.

Oops. I figured it out - there was an early disconnect call in my project.


[Feature] SIP protocol support in envoy

Title: SIP protocol support in envoy
Description:
Background
SIP protocol is widely used in communications industry like VoLTE or 5G Core. More and more operators are willing to deploy their product on Cloud Native Service Mesh environment. But SIP protocol has many different routing mechanism and other specific features like transaction affinity, registration affinity, weighted load balancer based on resource utilization and so on. It is impossible to just reuse TCP Proxy as the proxy in envoy. A new standalone extension sip-proxy is necessary in order to enable Service Mesh for SIP protocol.
Requirements
A new extension should be added into envoy to support basic SIP features, the detail SIP Call Flow Requirements can be found here:
https://docs.google.com/document/d/1viLfnzhLL7MUDvcRaFe6VfRJzHqsWCqnwjNtQ9_WgG8/edit?usp=sharing
Design Ideas
This is the draft configuration for sip extension:
static_resources:
  listeners:
  - name: listener_0
    address:
      socket_address: { address: <IP_ADDRESS>, port_value: 5060 }
    filter_chains:
    - filters:
      - name: envoy.sip_proxy
        typed_config:
           "@type": type.googleapis.com/envoy.extensions.filters.network.sip_proxy.v3.SipProxy
           stat_prefix: egress_sip
           route_config:
             routes:
             - match:
                domain: "sips1.default.svc.nokia.local"
               route:
                cluster: egress_sip1
             - match:
                domain: "sips2.default.svc.nokia.local"
               route:
                cluster: egress_sip2
           settings:
             transaction_timeout: 32s
             session_stickness: false
             tra_service_config:
               grpc_service:
                 envoy_grpc:
                   cluster_name: tra_service
               transport_api_version: V3

  clusters:
  - name: egress_sip1
    type: strict_dns
    connect_timeout: 2s
    lb_policy: ROUND_ROBIN
    dns_refresh_rate: 5s
    load_assignment:
      cluster_name: egress_sip
      endpoints:
      - lb_endpoints:
        - endpoint:
            address:
              socket_address:
                address: <IP_ADDRESS>
                port_value: 5060
                protocol: TCP
          load_balancing_weight: 1
      - lb_endpoints:
        - endpoint:
            address:
              socket_address:
                address: <IP_ADDRESS>
                port_value: 5060
                protocol: TCP
          load_balancing_weight: 99

  - name: egress_sip2
    type: strict_dns
    connect_timeout: 2s
    lb_policy: ROUND_ROBIN
    dns_refresh_rate: 5s
    load_assignment:
      cluster_name: egress_sip
      endpoints:
      - lb_endpoints:
        - endpoint:
            address:
              socket_address:
                address: <IP_ADDRESS>
                port_value: 5060
                protocol: TCP
          load_balancing_weight: 100
  - name: tra_service
    type: strict_dns
    connect_timeout: 2s
    lb_policy: ROUND_ROBIN
    http2_protocol_options: {} # enable H2 protocol
    dns_refresh_rate: 5s
    load_assignment:
      cluster_name: tra_service
      endpoints:
      - lb_endpoints:
        - endpoint:
            address:
              socket_address:
                address: <IP_ADDRESS>
                port_value: 50053
                protocol: TCP
admin:
  access_log_path: /dev/null
  address:
    socket_address: { address: <IP_ADDRESS>, port_value: 9657 }

The major functions are following:

Simple sip parser
Host selection for initial request
Cacheless routing based on sip header manipulation
host selection for initial forward request at downstream
host selection for in-dialog forward request at downstream
insert "ep" in contact/record-route for backward response at upstream
insert "ep" in contact/record-route for forward response at downstream

The system architecture is below:
Sip Request

Sip Response

The basic call flow for sip proxy extension is below:

@nearbyfly


Support --fully-export-maven-dependencies

See ceylon/ceylon#6597: it's mostly about adding a new checkbox and passing the option.

We don't need to modify model loaders etc.?

I tried with this branch and it does not recognize the modules... or its just me not been able to configure it

Oops you're right, I only did half the work. I pushed an additional fix and tested it on your project, and I have no errors now. If you want to test it locally, you'll have to rebuild ceylon-ide-common, then ceylon-ide-intellij.

Still need to support it during Make :(

pulling!

Watch out, you have to pull the dist, not the IDE :)


Cut the fat

remove extraneous resources and networking.  for example do we need the public subnets in this CFT?

There doesn't appear to be an extraneous resources created.  I'm going to close this and we can revisit if we change our minds.


test: temporary increase Hubble buffer size to 64k

Temporary increase the Hubble buffer size in order to capture more
flows. This will hopefully help us understand why the
K8sEgressGatewayTest is occasionally failing (#18012)

/test

The artifact collection still works fine: https://jenkins.cilium.io/job/Cilium-PR-K8s-1.22-kernel-4.19/29/. This is ready to merge.


matplotlib backend

when I run "python3 main.py -e dqn_epsilon" I can see the animation but I don't get the graphs. I get the following error :
[2017-04-06 19:52:04,209] ERROR: Error in trial, terminating further session from dqn_epsilon-2017_04_06_195200_t0_s0
Traceback (most recent call last):
File "/Users/enzo/Desktop/openai_lab-master/rl/experiment.py", line 262, in run
self.run_episode()
File "/Users/enzo/Desktop/openai_lab-master/rl/experiment.py", line 243, in run_episode
self.update_history()
File "/Users/enzo/Desktop/openai_lab-master/rl/experiment.py", line 210, in update_history
self.grapher.plot()
File "/Users/enzo/Desktop/openai_lab-master/rl/analytics.py", line 119, in plot
p1.set_ydata(sys_vars['total_rewards_history'])
File "/usr/local/lib/python3.5/site-packages/matplotlib/lines.py", line 1251, in set_ydata
self.stale = True
File "/usr/local/lib/python3.5/site-packages/matplotlib/artist.py", line 279, in stale
self.stale_callback(self, val)
File "/usr/local/lib/python3.5/site-packages/matplotlib/artist.py", line 76, in _stale_axes_callback
self.axes.stale = val
File "/usr/local/lib/python3.5/site-packages/matplotlib/artist.py", line 279, in stale
self.stale_callback(self, val)
File "/usr/local/lib/python3.5/site-packages/matplotlib/figure.py", line 56, in _stale_figure_callback
self.figure.stale = val
File "/usr/local/lib/python3.5/site-packages/matplotlib/artist.py", line 279, in stale
self.stale_callback(self, val)
File "/usr/local/lib/python3.5/site-packages/matplotlib/pyplot.py", line 576, in _auto_draw_if_interactive
fig.canvas.draw_idle()
File "/usr/local/lib/python3.5/site-packages/matplotlib/backend_bases.py", line 2032, in draw_idle
self.draw(*args, **kwargs)
File "/usr/local/Cellar/python3/3.5.2_3/Frameworks/Python.framework/Versions/3.5/lib/python3.5/contextlib.py", line 77, in exit
self.gen.throw(type, value, traceback)
File "/usr/local/lib/python3.5/site-packages/matplotlib/backend_bases.py", line 1706, in _idle_draw_cntx
yield
File "/usr/local/lib/python3.5/site-packages/matplotlib/backend_bases.py", line 2032, in draw_idle
self.draw(*args, **kwargs)
File "/usr/local/lib/python3.5/site-packages/matplotlib/backends/backend_agg.py", line 464, in draw
self.figure.draw(self.renderer)
File "/usr/local/lib/python3.5/site-packages/matplotlib/artist.py", line 63, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "/usr/local/lib/python3.5/site-packages/matplotlib/figure.py", line 1143, in draw
renderer, self, dsu, self.suppressComposite)
File "/usr/local/lib/python3.5/site-packages/matplotlib/image.py", line 139, in _draw_list_compositing_images
a.draw(renderer)
File "/usr/local/lib/python3.5/site-packages/matplotlib/artist.py", line 63, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "/usr/local/lib/python3.5/site-packages/matplotlib/axes/_base.py", line 2409, in draw
mimage._draw_list_compositing_images(renderer, self, dsu)
File "/usr/local/lib/python3.5/site-packages/matplotlib/image.py", line 139, in _draw_list_compositing_images
a.draw(renderer)
File "/usr/local/lib/python3.5/site-packages/matplotlib/artist.py", line 63, in draw_wrapper
draw(artist, renderer, *args, **kwargs)
File "/usr/local/lib/python3.5/site-packages/matplotlib/lines.py", line 776, in draw
self.recache()
File "/usr/local/lib/python3.5/site-packages/matplotlib/lines.py", line 696, in recache
raise RuntimeError('xdata and ydata must be the same length')
RuntimeError: xdata and ydata must be the same length
[2017-04-06 19:52:04,216] INFO:
End Session #0/1 of Trial #0/1 on PID 15881:
dqn_epsilon-2017_04_06_195200_t0_s0
[2017-04-06 19:52:04,348] INFO: Session complete, data saved to ./data/dqn_epsilon-2017_04_06_195200/dqn_epsilon-2017_04_06_195200_t0.json
[2017-04-06 19:52:04,414] INFO:
End Trial #0/1 on PID 15881:
dqn_epsilon-2017_04_06_195200_t0
[2017-04-06 19:52:04,416] INFO: Session complete, data saved to ./data/dqn_epsilon-2017_04_06_195200/dqn_epsilon-2017_04_06_195200_t0.json
Traceback (most recent call last):
File "main.py", line 5, in
run(args.experiment, **vars(args))
File "/Users/enzo/Desktop/openai_lab-master/rl/experiment.py", line 472, in run
return analyze_data(experiment_data)
File "/Users/enzo/Desktop/openai_lab-master/rl/analytics.py", line 447, in analyze_data
stats_df = raw_stats_df[STATS_COLS]
File "/usr/local/lib/python3.5/site-packages/pandas/core/frame.py", line 2053, in getitem
return self._getitem_array(key)
File "/usr/local/lib/python3.5/site-packages/pandas/core/frame.py", line 2097, in _getitem_array
indexer = self.ix._convert_to_indexer(key, axis=1)
File "/usr/local/lib/python3.5/site-packages/pandas/core/indexing.py", line 1230, in _convert_to_indexer
raise KeyError('%s not in index' % objarr[mask])
KeyError: "['best_session_epi' 'best_session_id' 'best_session_mean_rewards'\n 'best_session_stability' 'fitness_score' 'mean_rewards_per_epi_stats_mean'\n 'mean_rewards_stats_mean' 'mean_rewards_stats_max' 'epi_stats_mean'\n 'epi_stats_min' 'solved_ratio_of_sessions' 'max_total_rewards_stats_mean'\n 'trial_id'] not in index"

I fixed the issue by downgrading matplotlib to version 1.4.3

Thanks!
We'll test this on a few more machines to confirm then release a version lock. Let's leave this issue open until a fix is merged.

Addressed in release v1.0.3


Vasco follows you into the unity.

If you jump to the unity while Vasco is your active companion, he will follow you in. No follower is supposed to do this.

Details
This is because the sq_playershipscript will specifically teleport Vasco to you when you exit your ship, if he is your follower, and if you are not currently in space. Since the unity is not a space cell, it's not considered by that condition.
Game Version
<IP_ADDRESS>
Language
English (EN)
New Game
Yes
Reproduction Steps
Have Vasco as your current follower. Build the armillary and jump to the unity. Vasco will be right behind you.

Fix attached.
SFCP_1131.zip


Remove useless PHPDoc tags

As suggested by https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues/3651#issuecomment-377224053
 /**
  * Does foo.
  *
  * @param string $bar Has a description so shouldn't be removed
- * @param mixed $baz
- *
- * @return array
  */
 function foo(string $bar, $baz): array
 {
 }

Little note: run this after #3640

Currently covered by #3110.

This is actually a duplicate of #2979.


Add ecdsa & ed25519 GitHub host keys

Description
GitHub has ecdsa and ed25519 host keys, they should be present in the known hosts as well:

https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints

The new keys have been usable since Nov 16, 2021:

https://github.blog/2021-09-01-improving-git-protocol-security-github/

Related issue:
n/a
Check list

[ ] Related issue / work item is attached
[ ] Tests are written (if applicable)
[ ] Documentation is updated (if applicable)
[ ] Changes are tested and related VM images are successfully generated

@miketimofeev It looks like I need to be added to an allow list?

Failed to start this build. 'robherley' is an unknown contributor
Please add 'robherley' to the allowed list to run build


docker looks for volumes even though they don't exist

scenario:
scaleio 2.0
Install Scaleio (MDM, TB, SDC, SDS, GUI)
Start docker container that maps a volume (test:/etc/test)
Destroy scaleio (or just remove volume)
Restart docker
Docker will insist that a volume should exist and should not be created.  If you look in dockers volume/metadata.db you will see that docker thinks a volume should exist.
Resolution: if docker believes the volume should exist, than create the volume.  Right now rexray/scaleio returns "cannot retrieve volume by name".
I have tried cleaning up the docker volumes (dangling), however sometimes the volumes are not listed and yet they are still in the metadata.db.  Rexray can create instead of fail (maybe based on a switch in config? - force_create)

@clubanderson I believe it is actually Docker that is failing because they believe the volume exists already. The "dangling" volume is on the Docker side where containers that still exist that were attached to volumes create a problem.
On the RR side, if you create the volume from the rexray command I am assuming there are no problems.
You could also try creating the volume using dvdcli which simulates how Docker talks with REX-Ray through it's HTTP/JSON interface. I am assuming that would also yield no problem.
This could turn out to be an issue that needs to be raised with Docker.


python3.8 compatibility?

nasa@ubuntu:~$ sudo docker run  remnux/ciphey -t "++UIVczSLksSfPnrax4tTA=="
Traceback (most recent call last):
  File "/usr/local/bin/ciphey", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/ciphey/ciphey.py", line 234, in main
    config.complete_config()
  File "/usr/local/lib/python3.8/site-packages/ciphey/iface/_config.py", line 198, in complete_config
    self.load_objs()
  File "/usr/local/lib/python3.8/site-packages/ciphey/iface/_config.py", line 143, in load_objs
    self.objs["checker"] = self(_fwd.registry.get_named(self.checker, Checker))
  File "/usr/local/lib/python3.8/site-packages/ciphey/iface/_config.py", line 113, in __call__
    return self.instantiate(t)
  File "/usr/local/lib/python3.8/site-packages/ciphey/iface/_config.py", line 108, in instantiate
    ret = t(self)
  File "/usr/local/lib/python3.8/site-packages/ciphey/basemods/Checkers/ezcheck.py", line 44, in __init__
    self.checkers.append(config(Brandon))
  File "/usr/local/lib/python3.8/site-packages/ciphey/iface/_config.py", line 113, in __call__
    return self.instantiate(t)
  File "/usr/local/lib/python3.8/site-packages/ciphey/iface/_config.py", line 108, in instantiate
    ret = t(self)
  File "/usr/local/lib/python3.8/site-packages/ciphey/basemods/Checkers/brandon.py", line 188, in __init__
    self.top1000Words = config.get_resource(self._params().get("top1000"))
  File "/usr/local/lib/python3.8/site-packages/ciphey/iface/_config.py", line 208, in get_resource
    return self(_fwd.registry.get_named(loader, ResourceLoader))(name)
  File "/usr/local/lib/python3.8/site-packages/ciphey/iface/_modules.py", line 235, in __call__
    return self.getResource(*args)
  File "/usr/local/lib/python3.8/site-packages/ciphey/basemods/Resources/cipheydists.py", line 32, in getResource
    return self._getters[prefix](name)
  File "/usr/local/lib/python3.8/site-packages/cipheydists/__init__.py", line 19, in get_list
    return json.loads(pkgutil.get_data(__name__, os.path.join("list", name) + ".json"))
  File "/usr/local/lib/python3.8/json/__init__.py", line 357, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.8/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/local/lib/python3.8/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

no template so closing.


Change insert(:within:) to return whether the range set was modified

The insert method
public mutating func insert<C>(_ index: Bound, within collection: C) -> Bool

now returns a Bool indicating whether the range set was modified.
The other insert method, insert(contentsOf:), and the modified one now call into an internal version:
internal mutating func _insert(contentsOf range: Range<Bound>) -> Bool

The public version of insert(contentsOf:) ignores the return value, and insert(:within:) returns the result.
Motivation
Some use cases need to know if the range set was modified, and would previously have to call contains() and then insert() basically doubling the work to be done — since both have to do a search in the range set.
One example is building a type that conforms to SetAlgebra and basing it on RangeSet. The insert() method needed for SetAlgebra needs to know if its value has been mutated.

This change has been incorporated into the latest API design of the RangeSet type being added to the stdlib itself, and is now included in the implementation at https://github.com/apple/swift/pull/69766

https://github.com/apple/swift/pull/69766, which includes this suggestion, has been merged.


[improvement](column reader) improve column reader options and delete not necessary options

Proposed changes
Issue Number: close #xxx
Minor improvement of ColumnReader options;
Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Pod deploying on master and not on node

Version:
1.17
Describe the bug
I am trying to deploy a k3s cluster on two Raspberry Pi computers. Thereby, I would like to use the Rapsberry Pi 4 as the master/server of the cluster and a Raspberry Pi 3 as a worker node/agent.
However, when I try to make a deployment the pod is always deployed on the Raspberry Pi 4 (master) and not on the worker node.
To Reproduce
On both computers:

Insert cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory into /boot/cmdline.txt

On master Raspberry Pi 4:
curl -sfL https://get.k3s.io | sh -
sudo kubectl run nginx-sample -image nginx --port 80
On worker node Raspberry Pi 3:
curl -sfL https://get.k3s.io | K3S_URL=https://myserver:6443 K3S_TOKEN=XXX sh -
Expected behavior
The command sudo kubectl get pods -o wide --all-namespaces should show that the pod is deployed on the worker node.
Actual behavior
The command sudo kubectl get pods -o wide --all-namespaces shows that the pod is deployed on the master node.

Additional context
The command sudo kubectl get nodesshows both nodes.

When trying to use the Raspberry Pi 3 as the master and the Raspberry Pi 4 as the node, then the pod is deployed on the worker node.

Did you taint the master node? I believe by default k3s will not taint it.
kubectl label --overwrite node <MASTER> node-role.kubernetes.io/master=true:NoSchedule

@carpenike I did not specify it explicitly.
However, when I use the Raspberry Pi 3 as the master node and the Rasperry Pi 4 as the worker node, then the deployment is deployed on the worker node, as expected.

@carpenike If you taint the node master node like that, what happens if you delete the coredns pod? It wouldn't be able to reschedule on the master node again, would it ?

@Kerwood  -- correct. You'd have to use a toleration within a deployment to allow deployments on the master node. Also, I mis-wrote that. It's taint, not label.
kubectl taint--overwrite node <MASTER> node-role.kubernetes.io/master=true:NoSchedule
My suspicion is that it's choosing the node with the most available resources when doing the node selection, and choosing the Pi4.

I have been trying different things to achieve the same the last couple of days.
Here's my solution. (Which in my opinion should be default)
Taint the master with below command.
kubectl taint node dev-k3s-master k3s-controlplane=true:NoSchedule

Add tolerance on the control-plane services.
kubectl edit deployments local-path-provisioner -n kube-system

And add the following to the containers spec.
spec:
  ...
  template:
  ...
    spec:
    ...
      tolerations:
      - effect: NoExecute
        operator: Exists
      - effect: NoSchedule
        operator: Exists

Do the same for metrics-server and coredns. The latter will have will have tolerations: present, so just add the two effects to the list.

It would be nice to have the install script recognize this setup (e.g. --no-schedule-master or some kind of flag) that would grant these the appropriate tolerations automatically.

@alekc It is my understanding that if the k3s-master is rebooted those will get overwritten or am I wrong?

To add up on @alekc's answer, I also had to patch the service load balancer:
$ kubectl patch daemonset svclb-traefik -n kube-system --patch "$(cat patch.yaml)"

Right, I've been deploying with --no-deploy=traefik flag so didn't have that one.

I used the nodeSelector entry.


map and Functor

interface MyFunctor<T> {
  map<U>(project: (t: T) => U): MyFunctor<U>
}

declare const myFunctor: MyFunctor<string>

const result = R.map(() => 1)(myFunctor)

result should be MyFunctor<number>

We have no ability to get your MyFunctor<T> and preserve MyFunctor then return MyFunctor<U> since we cannot get the signature of MyFunctor itself, it seems to be a TS feature request.
interface Functor<T> {
    map<U>(fn: (x: T) => U): Functor<U>;
}

// current
declare function map<T, U>(fn: (x: T) => U, functor: Functor<T>): Functor<U>;

// what you may want
declare function map<T, U, F extends Functor<T>>(
  fn: (x: T) => U,
  functor: F
): ???;
// ^^^ AFAIK, there's nothing we can put there to get what you want.

I expected something like this to work:
declare function map<T, U>(
  fn: (x: T) => U
): <FI extends Functor<T>, FO extends Functor<U>>(f: FI) => FO

But it doesn't not. TS is disappointing often.

I expected something like this to work:
declare function map<T, U>(
  fn: (x: T) => U
): <FI extends Functor<T>, FO extends Functor<U>>(f: FI) => FO

But it doesn't not. TS is disappointing often.
Also this issue probably relates to this: https://github.com/Microsoft/TypeScript/issues/1213

@ikatyang probably you can emulate HKT with same thing https://github.com/gcanti/fp-ts does

It seems HKT uses the fake ID to match their interface and needs to register the ID on the map signature, which seems hard to apply on npm-ramda since we do the codegen, there's nowhere users can inject their signatures simply.
interface HKT<ID, T> {
  __id: ID;
  __value: T;
}
interface Functor<T> extends HKT<"Functor", T> {
  map<U>(fn: (t: T) => U): HKT<"Functor", U>;
}
interface MyFunctor<T> extends HKT<"MyFunctor", T> {
  map<U>(fn: (t: T) => U): HKT<"MyFunctor", U>;
}

declare function map<T, U>(fn: (x: T) => U, functor: MyFunctor<T>): MyFunctor<U>; // register
declare function map<T, U>(fn: (x: T) => U, functor: Functor<T>): Functor<U>;

declare function length(x: string): number;
declare const functor: Functor<string>;
declare const myFunctor: MyFunctor<string>;

map(length, functor); //=> Functor<number>
map(length, myFunctor); //=> MyFunctor<number>

Microsoft/TypeScript#1213 should be what we need here.

https://medium.com/@gcanti/higher-kinded-types-in-typescript-static-and-fantasy-land-d41c361d0dbe

which seems hard to apply on npm-ramda since we do the codegen,

Hm. I think everything with code gen should be more flexible.


Identify if photo has an any obstructions in face area (e.g.: mask, sunglasses, hand covering face)

basically a object detection over face

ok @Ultr0x

@akshitagupta15june I would also like to contribute

@akshitagupta15june I have experience with YOLOv4 object detection and would like to contribute to this issue to propose an efficient model.

Hi @akshitagupta15june , iam a SSOC23 contributer and I would like to resolve this issue
Can you assign me this issue? Or any other issues you might have?
Heres My Resume which you might find useful: Resume
Here is my background in ML:

6 months plus experience in working under college professors for research project on medical image classification.
Got 228 global rank in Amazon ML Challenge 2023 out of 30000+ teams participating.
Experienced with trainig machine Learning Models. Including image preprocessing techniues such as histrogram equilization, augmentation, stationary wavelet transformation, image segmentation. Along with feature extraction from models like resnet50 inceptionv3 vgg16 etc

Looking forward to hear from you.

I am eager to learn and work on this issue as part of GSSOC'23

I am GSSOC 23 contributor assign this to me i want to work on this

I am a GSSoC'23 Contributor. I have worked previously with many different algorithms and would like to work on this issue and contribute to it.

please assign this task to me @akshitagupta15june.


programs_to_target_by_GUID.bat throwing The system cannot find the path specified error

On line 1046 shouldn't the command be:
if /i %DRY_RUN%==no call resources\stage_2_de-bloat\oem\programs_to_target_by_GUID.bat >> "%LOGPATH%%LOGFILE%" 2>&1
where the current line reads:
if /i %DRY_RUN%==no call stage_2_de-bloat\oem\programs_to_target_by_GUID.bat >> "%LOGPATH%%LOGFILE%" 2>&1

No, because in lines 242-243 we pushd into the resources directory, so we're still sitting there by the time we get to line 1046.
The error came from a command to delete a file that didn't exist, in the programs_to_target_by_GUID.bat file, which I fixed this morning. Thanks


Create a 'Border Trail' component

We're looking to add a 'Border Trail' component to motion-primitives! This component should add a dynamic border that loops continuously. It adds a fancy touch to any UI element or could be used to show a loading state or something else.
Requirements:

Follow any border radius and adapt to different shapes.
Allow customization for speed, className, and transition.
Maintain performance for smooth animations.
Ensure compatibility with the most recent browsers.
Simple, easy-to-use API.

Ideal Contribution:

A React component leveraging Framer Motion.
Include a demo page (with at least one example) that demonstrates the component in action. Follow the setup of other components (ex: docs/animated-group/page.mdx).

Example Usage:
<div className="any-classnames">
  <BorderTrail speed={40} className="bg-gradient-to-r from-rose-400 to-red-500 h-1 w-3" />
</div>

How to Contribute:

Fork the repository on GitHub.
Create your feature branch (git checkout -b feature/border-trail).
Commit your changes (git commit -am 'Add some BorderTrail').
Push to the branch (git push origin feature/border-trail).
Open a new Pull Request targeting the main branch.

If you have a Twitter handle, please provide it so I can tag you in the related announcement demo tweet. You'll also be added to the Credit in the documentation page. Thank you for considering contributing to motion-primitives!

Added https://github.com/ibelick/motion-primitives/pull/60


Option to disable opening terraform docs

Hi there,
I'm using VSCode 1.27.1 with plugin 1.3.4,
The problem is that terraform docs are opening in default browser even when I press Cmd and point cursor to resource, without click.
Could this feature be disabled somewhere in plugin settings?
Thanks in advance!

thanks for using my plugin!


MudButton background changes to white on hover on mobile in 6.16.0

Bug type
Component
Component name
MudButton
What happened?
https://github.com/MudBlazor/MudBlazor/assets/25887639/18350a00-5257-49e2-8f0c-585aee5e4eb4
If you click and hold on the button in desktop view, it works as expected. Enable the device toolbar in chrome, select a mobile device, and then click and hold and you will see the background turn to white.
Expected behavior
Mobile should behave the same way as desktop, not change the background to white.
Reproduction link
https://github.com/Kyrefraction/MudBlazorButtonMobile
Reproduction steps

Run an application with a MudButton element, set the variant to filled and colour to dark to make the bug obvious.
Inspect in chrome
Toggle device toolbar
Select a mobile device
Click and hold on the MudButton element

Relevant log output
No response
Version (bug)
6.16.0
Version (working)
6.15.0
What browsers are you seeing the problem on?
Chrome
On what operating system are you experiencing the issue?
Mac OSX, iOS, Android
Pull Request

[ ] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Lot of techniques listed here https://stackoverflow.com/q/17233804 to resolve the underlying problem, like even disabling the effect altogether, but none are perfect and I don't know which is desired.

Temporarily reverted for now (https://github.com/MudBlazor/MudBlazor/pull/8247) until the OP resubmits the original PR w/o the regression. If anyone has an idea how to fix it, please suggest solutions. Thanks!

@Kyrefraction Is it working again in 6.17?

@danielchalmers Aye, all is good in 6.17 thanks


Fix str slice outside of range

The problem is really that slice is 0 long and allocating an array that is 0 long and then doing operations on it becomes UB so we SIGILL in testing since we now run tests in --dev mode (which comes with all sorts of UBsan).

@sydow can you please look at this. Do you think this is the correct fix? I am going to put this on auto-merge since this fixes my current problem, but I'm raising this with you in case you think there's a better or more appropriate fix.


CI: Add tests for 1.3.204 headers.

As title says, this adds CI tests for 1.3.204 vulkan headers branch

Thanks!


Stack elements permit build-depends

See original issue on GitLab
In GitLab by [Gitlab user @shashwatdalal] on Jul 11, 2019, 16:40
Summary
Stack elements permit build-depends field.
Steps to reproduce
Create elements with the following configurations
./stack.bst
kind: stack
build-depends: dependency.bst

./dependency.bst
kind: import
source:
- kind: local
  path: project.conf

and run bst build stack.bst
What is the current bug behavior?
Currently there is no error being thrown at stack.bst for having a build-depends field. Having build-depends as a field is incorrect as running bst artifact checkout stack.bst will show that the artifact produced is empty rather than containing project.conf.
What is the expected correct behavior?
Attempting to bst build a stack element that contains build-depends should fails as it is semantically nonsensical. Instead an error message should be printed suggesting perhaps to change build-depends to depends.
Possible fixes
Set BST_FORBID_BDEPENDS to True for the stack element.

In GitLab by [Gitlab user @cs-shadow] on Jul 16, 2019, 12:27
mentioned in commit a2c9a6be0344426abe6ec7327949bcb1f11acd43

In GitLab by [Gitlab user @cs-shadow] on Jul 16, 2019, 12:29
mentioned in merge request !1479

In GitLab by [Gitlab user @tristanvb] on Dec 8, 2020, 08:44
mentioned in commit 9f59388866a33335e868892802f9542cce46d3c1

In GitLab by [Gitlab user @tristanvb] on Dec 8, 2020, 08:51
mentioned in merge request !2113

In GitLab by [Gitlab user @tristanvb] on Dec 8, 2020, 12:30
mentioned in commit cec555b23806542331629079fd07ae4ffa39a168

In GitLab by [Gitlab user @tristanvb] on Dec 8, 2020, 13:05
mentioned in commit dc5cc2b36aaa0d8a074cf79e1d4a12cadea62c09

In GitLab by [Gitlab user @tristanvb] on Dec 9, 2020, 05:12
mentioned in commit 1cb5d696b845b492ec6fbebf4b35071efe3151cb

In GitLab by [Gitlab user @tristanvb] on Dec 10, 2020, 08:08
mentioned in commit d7124f4cbe1ccbaa8ab193d381f36bbd614ec95b

In GitLab by [Gitlab user @tristanvb] on Dec 10, 2020, 08:35
mentioned in commit 904e41bd8ffdcd19556295b7e8ca61deb0e9a9bb

In GitLab by [Gitlab user @tristanvb] on Dec 10, 2020, 12:40
mentioned in commit 61cc93d57d7e2c4780cf23741e240cc56a2a5702

In GitLab by [Gitlab user @tristanvb] on Dec 10, 2020, 14:57
mentioned in commit 75eb8c1868ec0fa1cc8366ebb0b1db2db06c270f


Add issue and pull request templates

High quality issue and pull request templates help everyone! The templates are only guidelines and don't need to be highly sophisticated, but nudging submissions towards more info is always good. I know I need the nudging!
A couple thoughts:

In issues reporting a bug, its helpful to have the http-server version and also the complete error and/or stack trace if applicable.
Pull requests should be made against the master branch only
Pull requests should explain what changes were made and why, unless its obvious.

Would like to take this issue up!

Perfect! Yeah those sample templates look pretty good. I haven't come across that repo before, good find!

Proposed issue template:
**Do you want to request a *feature* or report a *bug*?**

**If the issue is a bug report, please provide the steps to reproduce it. Please include the actual source code causing the issue if applicable.**

<!-- Paste the source code here: -->

**What did you expect to happen?**

**What actually happened? Please include the actual error trace and / or stack trace if applicable.**

<!-- Paste the error and / or stack trace here: -->

**If the issue is a feature request, what is the motivation / use case for it?**

**Tell us about your environment**
- **http-server version:**
- **Platform:**

**Other information (related issues, suggestions for a fix, etc):**

Proposed PR template:
* **Please ensure that your PR fulfills these requirements:**
- [ ] The pull request is being made against the `master` branch
- [ ] Tests for the changes have been added (for bug fixes / features)

**What is the purpose of this pull request? (bug fix, enhancement / feature)**

<!--
    If this pull request is addressing an issue, link to the issue here: "Fixes #xxx" or "Resolves #xxx"
-->

**What changes did you make?**

**Provide some example code that this change will affect, if applicable:**

<!-- Paste the example code here: -->

**Is there anything you'd like reviewers to focus on?**

**Please provide testing instructions, if applicable:**

That looks good! My only note is that http-server is meant to be a CLI tool, so there probably won't be any source code to include most of the time. Instead, we could ask for the exact command used and/or the full output in the terminal.
But it looks good! Go ahead an submit a PR if you'd like!


The latest chart 2.7.2 does not include the commits

I see the release contains the commits which set the rbac from v1beta1 to v1.
However, if you install with helm or just download the tarball you can still see v1beta1.
This would fail on k8s 1.22 since it remove the old api.

obsolete


Use http client with configured timeouts when none provided in config

Thanks for catching that before merge. Will try to find solution suitable for both cases.

By setting ResponseHeaderTimeout instead of Timeout we can set timeout only for duration between request and response headers receive. I also added check to disable sse subscription with timeout set on client.

@timoreimann @gambol99 what do you think about it?

hey @ondrej-smola, what do you think about my latest comments, especially this one?

Flaky TestMarkDown test?

@ondrej-smola @timoreimann ... i'll take a look at fixing the TestMarkDown ... I've restarted for the job for now

@ondrej-smola code is looking good to me. 👍
Did you have a chance to test the functionality against some real cluster? The changes are mostly integration test-ish so our unit tests won't help a lot, which is why I'm asking.

Tested on our dev cluster (12 machines) + with dummy http server that sleeps during non sse request for long time. Also found that examples/applications seems broken with marathon 1.4.2 and 1.4.5.  It panics on https://github.com/gambol99/go-marathon/blob/master/examples/applications/main.go#L92.

@ondrej-smola thanks for the note on the examples. I created issue 302 to track a fix.

@gambol99 WDYT, can we merge this one?

LGTM ...


Mount a host directory as a data volume in Docker

Should we mount a host directory as a data volume in docker-compose.yml? So, we could develop on our local machine, and keep our codes sync between the local machine and a docker machine? As following:
web:
  build: .
  links:
   - db
  ports:
   - "3000:3000"
  environment:
   NODE_ENV: development
  volumes:
    - .:/home/mean
db:
  image: mongo
  ports:
   - "27017:27017"

@lvarayut I would like to refrain from mounting the volume permanently. Isn't there something in the README that describes how to do this?

Do you mean the following command?
$ docker run -p 3000:3000 -p 35729:35729 -v /Users/mdl/workspace/mean-stack/mean/public:/home/mean/public -v /Users/mdl/workspace/mean-stack/mean/app:/home/mean/app --link db:db_1 mean

So, if I wanted to mount the volume, I can't do it with docker-compose up command but instead I have to manually mount it by using the commands above. In other word, I had to do the following step:
$ docker build -t mean .
$ docker run -p 27017:27017 -d --name db mongo
$ docker run -p 3000:3000 -p 35729:35729 -v /Users/mdl/workspace/mean-stack/mean/public:/home/mean/public -v /Users/mdl/workspace/mean-stack/mean/app:/home/mean/app --link db:db_1 mean

Did I understand you correctly?  The conclusion is that we couldn't use docker-compose up in this case.


Cannot find a way to replace "allowInterruptions": "NotRecognized" with expression

Github issues should be used for bugs and feature requests. Use Stack Overflow for general "how-to" questions.
Version
What package version of the SDK are you using.
Describe the bug
After allowInterruptions change to expression, I could not find a way to replace "NotRecognized".
Here is the scenario I want to enable:
[DateTimeInput]
[Bot]: when does it start?
[User]: update title (GetInput 0.9)
Go to GetInput
[DateTimeInput]
[Bot]: when does it start?
[User]: 11:00 pm (GetInput 0.7)
Resolve as date time.
Priority:

Datetime recognize
If cannot, interrupt.

To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
{
"$type": "Microsoft.DateTimeInput",
"$designer": {
"id": "482672",
"name": "Prompt for a date"
},
"prompt": "[bfdprompt-482672]",
"maxTurnCount": 3,
"property": "turn.NewStartDate",
"alwaysPrompt": false,
"allowInterruptions": "???? equals not recognized"
"defaultLocale": "en-us",
"value": "@FromDate",
"defaultValue": "@FromDate"
},
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.
[bug]

@DingmaomaoBJTU - Can you clarify why you could not use the entity recognizer to detect the date-time entity?
The equivalent of NotRecognized is to have an intent that picks up the specific response and set AllowInterruption = !#<InputIntentName>. This will stop consultation if the recognizer of the adaptive dialog that contains the input to fire  intent for that turn of the conversation.

@vishwacsena For datetime input, it is hard to set an intent specially for its input. It will have high possibility to mix up with GetInput intent. For example, I expect "11:00 pm" handled with datetime prompt, not the GetInput trigger, so I need to put it into another intent like "GetDateTimeInput". But as it is so similar to GetInput, the effect of this model is not good.
And for using entity recognizer, currently if I set AllowInterruption = true it will always bubble up first, like go to "GetInput" intent. In GetInput trigger, the "11:00 pm" will have four possibilities: 1) meeting start date, meeting start time, meeting end time, meeting duration. As currently in GetInput trigger, we cannot get "who is the trigger source" so even if we get entities in GetInput trigger, we cannot apply it.

The right way to handle this flexibility would be to add an intetent trigger with the specific ambiguous entity recognition as a condition. e.g. OnIntent GetIntent and condition = @datetime. The action plan for this trigger should know how to use the ambiguous information unless it is available from LUIS via roles. So if you can take 11AM and you just prompted for meeting start time (you keep track of active input for now via a SetProperty prior to each input), then take it as that input's value. In other cases, ask user for disambiguation via choice input or something else but you are in control of handling the ambiguity. We do not plan on introducing a way to do NotRecognized via expressions.


[release] Fix cca build issue with --minSdkVersion=16

Fix the cca build that can't recoginzed --minSdkVersion=16.
The solution for cca build is to use option --android-minSdkVersion=16
BUG=https://crosswalk-project.org/jira/browse/XWALK-7101

LGTM


Fix naming on order and scanner api

Background
Docs for order and scanner API weren't generating due to a typo in the file names. Also there was subsribe and the name of OrderAPIContent was not right.
Solution
Fix!
🎩
Lookie here: https://shopify-dev.ui-extensions-70k7.nathan-oliveira.us.spin.dev/docs/api/pos-ui-extensions/unstable/apis
See? Order and Scanner API are here now. Good. Goooood.
Checklist

[X] I have :tophat:'d these changes
[X] I have updated relevant documentation

Thank you 🙏🏻


page.evaluate return hangs if size exceeded

If you try and return more than 256KB of data from page.evaluate (to be picked up by the callback) then the callback never gets called.
This may actually be a bug in dnode/socket.io but I wasn't sure, and I encountered it in node-phantom so figured it was worth mentioning here.

Cleaning out old bugs.


Dominik Gleissner added two new tests

Dominik Gleissner Tests für W04H02 und W04H03

Further, couple of your tests seem not to correlate with the exercise: https://zulip.in.tum.de/#narrow/stream/1450-PGdP-W04H02/topic/Sinnvolle.20Indizes/near/793606

Further, couple of your tests seem not to correlate with the exercise: https://zulip.in.tum.de/#narrow/stream/1450-PGdP-W04H02/topic/Sinnvolle.20Indizes/near/793606

Yes there you are right. My test contain some edgecases that were garantueed not be tested.. but to be safe, I made my code safe even for those cases, and so I included some tests for those cases

Ok, I agree with that, since there is quite some doubt how serious that response was.
Though, Nils already added some tests in that direction and your PR even contains things for W05 now, that is not how it should be. Also you change quite a lot of the naming structure. I would suggest we remove this PR for now... In the future, it would be great if you keep package naming etc. as in the existing structure and create PRs only for one task at a time with the given naming structure.
And problems with that?

Ok, I agree with that, since there is quite some doubt how serious that response was. Though, Nils already added some tests in that direction and your PR even contains things for W05 now, that is not how it should be. Also you change quite a lot of the naming structure. I would suggest we remove this PR for now... In the future, it would be great if you keep package naming etc. as in the existing structure and create PRs only for one task at a time with the given naming structure. And problems with that?

Yes, I did not mention to do such a pull request. I wanted to commit every test or class for a test by its own, but I'm new to git and really do not have any idea, how that would work correctly... since the tutors gave us no introduction to git apart from the readme file, it's quite hard to learn this. But nevertheless I'm fine with removing this...

I think we can close the PR because this PR adds only tests for W04 and this homework already completed.


Promise-based API

Hi, great package!
I'd like to have an API that uses promises instead of callbacks. It would be a simple wrapper that uses util.promisify on all exported functions. Would it be okay for you if I created a fork for that? I would also add Typescript types.

Sure


Updates to token code removed ability to use emoticons in token names.

After updating docker containers to the latest DR version emoticons will display in the DM view but not Player view. Believed to have happened with the 1.10.0 release ( #587  ) but could have been a bug update release since then.

These markers previously displayed correctly in Firefox, Chrome, and Safari:
Health and Status Icons
❤ {Full Health}
❣    {Wounded}
☠ {Dead}
✔❌⛔☢☣⚠✅❎
✨☀☄❄
Time and Markers
✋✊☝✌✍
⌚⏰⏱⏲⌛⏳
Alchemical & Latin
➰➿✝✡☪⛎☦☸☮☯♈♉♊♋♌♍♎♏♐♑♒♓
✝✡⛤ ⛧⛢☪☦☸☮☯
Misc
⚓♨⚒⚔⚖⚗⚙⚛⚜⚠⚰⚱⛏⛑⛓⛩✂✉
♨⚒⚔⚖⚗⚙⚛⚜⚰⚱⛏⛑⛓⛩✂✉
☘⛄☁⛅⛈
☑ ↔↕↖↗↘↙↩↪⤴⤵ ♠♣♥♦
⚫⬛◼◾⬜⚪◻◽
☕〰〽〽㊗㊗㊙㊙
⛪⛰⛲⛴⛴⛺
✏✏✒✒
✳✴❇⭐⚡➕➖➗❓
☑⏩⏭⏯⏪⏮⏫⏬⏺⏹⏸

Hey, we are using a new library for rendering the view. (Previously it was SVG, now it is a canvas). I asked over here whether there is a workaround for making emojis work: https://github.com/protectwise/troika/discussions/96
TBH I never used emojis in tokens so I did not notice this breaking change, ideally we can support it somehow, I am pretty sure it will be possible!

In https://github.com/dungeon-revealer/dungeon-revealer/pull/925 I am also porting the new Dm view to the new map implementation which makes it much more performant and allows using it on tablets. it will also make further feature implementations easier, as both share a common base!

As I am now planning the token image feature I wanna pick this up again. Native emoji fonts are different on any device and therefore not a good choice.
There is a open-source/license friendly emoji library from Twitter, we could ship that with dungeon-revealer. See an overview of the symbols over here: https://de.piliapp.com/twitter-symbols/
@AlchemicalAgent Would that be sufficient for your use-case?

As I am now planning the token image feature I wanna pick this up again. Native emoji fonts are different on any device and therefore not a good choice.
There is a open-source/license friendly emoji library from Twitter, we could ship that with dungeon-revealer. See an overview of the symbols over here: https://de.piliapp.com/twitter-symbols/
@AlchemicalAgent Would that be sufficient for your use-case?

I missed the notifications about earlier comments, but it all sounds great!
The Twitter library should be more than enough variety.

I missed the notifications about earlier comments, but it all sounds great!
The Twitter library should be more than enough variety.

The provided examples of icons/emoji would be amazing and would guarantee that all users see the same icons rather than different icons translated between different devices.
Might I suggest that tokens keep their ability to have a name and that a token icon is optional. When a token icon is set add a toggle that allows for "Show icon instead of name" or something less wordy and then DM can control if the icon or the text is displayed on the token. That way the tokens can still have names and perhaps in future make it possible to search for tokens or have a list of them.
This would also fit nicely into the idea that you will have a token library (Because who wants to create 3 wolf tokens when you could create one template token and clone it three times!)

The provided examples of icons/emoji would be amazing and would guarantee that all users see the same icons rather than different icons translated between different devices.
Might I suggest that tokens keep their ability to have a name and that a token icon is optional. When a token icon is set add a toggle that allows for "Show icon instead of name" or something less wordy and then DM can control if the icon or the text is displayed on the token. That way the tokens can still have names and perhaps in future make it possible to search for tokens or have a list of them.
This would also fit nicely into the idea that you will have a token library (Because who wants to create 3 wolf tokens when you could create one template token and clone it three times!)

Hey there, I will push this to the next 1.14, as I wanna get the progress made so far shipped as v1.13.


Breaking Changes before the Stable Release Epic

Purpose of epic

Work on "Breaking Changes before the Stable Release Epic#3488" and also fix anything that comes up in the audit (we can create a new Epic for that, or make #3488 more generic to include them.

consolidated epic into Zebra as a Release Candidate


Added Browser App with Riverpod as a third party example

This Browser App demonstrates how to:

search web pages via the search bar
add a website to the favorites
open a page from the favorites
hide or show a favorites page list

Added a third party example mentioned in #1123

That's perfect, thanks for the update!


documentation.nixos.includeAllModules = true causes infinite recursion

Describe the bug
documentation.nixos.includeAllModules = true causes infinite recursion with specific modules. Specifically importing this module and setting the above option results in an infinite recursion. The full stack trace is here: https://gist.github.com/pinpox/edb874416067048a044eae1656207cca
With the kind help of @roberth over on matrix we've narrowed it down to a problem of the manual build when using specialArgs:

the manual build doesn't include the custom specialArgs

I have tried working around it by setting buildDocsInSandbox = true in the module (false doesn't work either) and by adding a defaultText to each option of the module.
Quoting:

I think this affects any config that imports from a specialArgs module argument
the problematic specialArgs is here https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/misc/documentation.nix#L44
we ought to wire that up somehow. Probably best to add specialArgs as _module.specialArgs in the module system

@roberth let me know if I forgot any useful information. Also pinging @pennae as he might be able to help with this.
Steps To Reproduce
Steps to reproduce the behaviour:

set documentation.nixos.includeAllModules = true
Import lollypops.nixosModules.lollypops as shown here
nixos-rebuild switch

Expected behaviour
Documentation is build without errors
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context

https://gist.github.com/pinpox/edb874416067048a044eae1656207cca
https://github.com/pinpox/nixos/blob/go-task/modules/lollypops-common/default.nix#L4
https://github.com/pinpox/lollypops/blob/706dc38ccf39b7cbff91977034ecbc1035d213d8/module.nix

Notify maintainers

@roberth @pennae @alyssais @kraem
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.15.51, NixOS, 22.11 (Raccoon), 22.11.20220708.b39924f`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.9.1`
 - channels(root): `""`
 - channels(pinpox): `"home-manager"`
 - nixpkgs: `/nix/store/02pg1kr963gyk2qs3m9hg1lvfgvvhmjy-source`

can reproduce the error from pinpox/lollypops#2 (no hostName), adding a defaultText to the option there fixes that. the problem there seems to be that hostName is defined in a lazy-docs module but all user modules are eager-docs, so this default can't be evaluated because the module hostName is defined in won't be loaded when the dependent default is evaluated. the error is a compounding of multiple factors:

buildDocsInSandbox is ignored for user modules
user modules can reference lazy-docs attributes in their docs without having to provide a defaultText or similar
we can't reliably add error detection for these cases without undoing much of the savings the split build provides

setting documentation.nixos.options.splitBuild = false in addition to documentation.nixos.includeAllModules = true makes the hostName error go away.
we were able to reproduce the infinite recursion by setting includeAllModules on kartoffel. in that case it really is a problem with using module arguments for things they aren't very good at, the way around that would (in this special case!) be to add the restic-exporter import to the unconditional import list in flake.nix

Also pinging @pennae as he might be able to help with this.

they

Thanks for the reply!

can reproduce the error from pinpox/lollypops#2 (no hostName), adding a defaultText to the option there fixes that.

I'm still not able to reproduce the hostName error when all hosts in nixosConfigurations have networking.hostName set. I created a minimal flake example to test this, but I don't know how to run nixos-rebuild without deploying it on my notebook. How did you reproduce the error in the kartoffel configuration?

in that case it really is a problem with using module arguments for things they aren't very good at,

Can you elaborate on what you mean by that? Is passing flake inputs to modules not intended, if so what is generally the best practice access the flake inputs in modules?

Also pinging @pennae as he might be able to help with this.

they

Sorry, apologies.

I'm still not able to reproduce the hostName error

added a comment to the gist with a config that does reproduce.

How did you reproduce the error in the kartoffel configuration?

added documentation.nixos.includeAllModules = true to kartoffel/configuration.nix and ran nix eval --raw .#nixosConfigurations.kartoffel.config.system.build.toplevel

Can you elaborate on what you mean by that?

in your case you are passing a module in through specialArgs, but there's a circular dependency if you fully evaluate options because each module argument can be sourced either from specialArgs or from _module.args. once you start strictly evaluating this construct you get a circular dependency, which breaks stuff. in the normal system build that's not a problem because it's largely not strict, but the docs build is strict in large parts of the options tree.
not really sure what a better way to do this is though, except not doing it. modules should all have an enable option that removes their entire configuration unless set, once you've got that you can import all the modules all the time (like nixos itself does) without needing specialArgs at all.

Thanks for the explanation, I was able to reproduce it. The lollypops module has no enable option because it has only very minimal config and is only there to define options, this is all it does
  config = {
     environment.systemPackages = with pkgs; [ rsync ];
  };

I think putting that behind an enable option would not make much difference?
The infinite recursion still persists e.g. on kartoffel. I added: restic-exporter.nixosModules.default below this line and removed the import in all other places.
I don't want to bother you too much, but don't really know where else to ask and think this might be helpful for other users using flake with modules:
Since there is a nixosModules."<name>" = { config }: { options = {}; config = {}; };  output in the flake output schema spec, how are modules defined here supposed to be used? I don't mind rewriting parts of my config or of the lollypops module to do things The Correct Way™ but would like to make module separate from my system configuration so it can be imported and reused as a separate problem and don't know how to do that without using specialArgs or without creating a circular dependency. Just relying non-strict evaluation, hoping parts of the config won't be evaluated sound dangerous.
If you have any pointers on how to refactor this or tips on how to organise it better, that would be awesome.
Lastly, is there any way to just exclude the lollypops module from the documentation to avoid conflicts? While not a real solution it would at least work around the problem for now, but I suspect this problem might occur in other modules in the future with more people using imported flake modules.

I think putting that behind an enable option would not make much difference?

for this module, yes. what you've got there are mostly non-local effects due to interdependencies between modules, and those will have to be resolved with eg defaultText. it's okay to import that when needed since it doesn't use specialArgs

The infinite recursion still persists e.g. on kartoffel. I added: restic-exporter.nixosModules.default below this line and removed the import in all other places.

that's what we did and it eval'd fine. :thinking:

how are modules defined here supposed to be used?

if every module has an enable option you don't need specialArgs for them at all, you can list them directly in the nixosSystem call without importing them. they'll be available but not enabled, just like the myriad of nixos modules that are always present but disabled—you only get into trouble once you have conflicting option names, and in that case you could replace your configuration.nix with a function that instead creates (at least some of) the arguments to nixosSystem.

Lastly, is there any way to just exclude the lollypops module from the documentation to avoid conflicts?

not really. we probably shouldn't add that facility either because it'd just be papering over a problem rather than addressing the root cause.

The infinite recursion still persists e.g. on kartoffel. I added: restic-exporter.nixosModules.default below this line and removed the import in all other places.

that's what we did and it eval'd fine.

I pushed to a separate branch with the changes so we can ben 100% sure to run the same code
https://github.com/pinpox/nixos/tree/test-recursion
✦ ~/code/github.com/pinpox/nixos test-recursion
❯ nix eval --raw '.#nixosConfigurations.kartoffel.config.system.build.toplevel'
error: infinite recursion encountered

       at /nix/store/a885zpv9ys2p2x7qnzqvxlsy321mclip-source/lib/modules.nix:491:28:

          490|         builtins.addErrorContext (context name)
          491|           (args.${name} or config._module.args.${name})
             |                            ^
          492|       ) (lib.functionArgs f);
(use '--show-trace' to show detailed location information)

@pennae

in your case you are passing a module in through specialArgs, but there's a circular dependency if you fully evaluate options because each module argument can be sourced either from specialArgs or from _module.args.

specialArgs takes priority and the module system takes care not to depend on attrNames _module.args, so that imports resolution is lazy in _module.args, as long as all module arguments required by the modules themselves for imports resolution are available in specialArgs.
Corollarily, the circular dependency only occurs when specialArgs is incomplete.

Corollarily, the circular dependency only occurs when specialArgs is incomplete.

which is exactly what happens here because specialArgs from the documentation-requesting instantiation is not passed to the documentation-generating instantiation. right?

I think you need something like this https://github.com/NixOS/nixpkgs/pull/181222

I think you need something like this #181222

Sorry, but I don't understand. Where would I put that?

It's a fix for nixpkgs itself. You could temporarily reference its branch in your flake if you'd like to try it. Something like inputs.nixpkgs.url = "github:hercules-ci/nixpkgs/module-specialArgs";

You could temporarily reference its branch in your flake if you'd like to try it
I can confirm this fixes the recursion for me! :tada:

Just changed the input in my system configuration and followed the nixpkgs input for the lollypops module:
    nixpkgs.url = "github:hercules-ci/nixpkgs/module-specialArgs";
    lollypops = {
      url = "github:pinpox/lollypops";
      inputs = {
        nixpkgs.follows = "nixpkgs";
        utils.follows = "flake-utils";
      };
    };

I saw the PR is still a Draft, is there something preventing to merge this?


Button titles (tooltips)

Hmm, it doesn't. Maybe font? Never mind for now.

It seems that symbol is font dependent.  I'll see if I can find something similar the available in all fonts


egui doesn't compile on macOS

due to

[ ] @smailbarkouch's title things
[ ] @ad-tra's pdf things

superseded by https://github.com/lockbook/lockbook/pull/2280