Support HTTPS

HTTPS request are not logged by the proxy. At this point I have no good idea how to approach this - research needed.
Question: will it be possible to decode body of these requests? This will probably break connection for apps being debugged? Or do self-signed certs fix that? Can I create them on flight?

Using mitmproxy would achieve what you're looking for.  I know Postman uses it (though never got it to work).
It does require a cert to be installed on the device.

Look at what Charles Web Proxy does. This process is quite slick and works like a charm.

Here is a nodejs project that implement HTTPS interception: https://github.com/axiak/filternet
BTW I really like his motivation: "I created and used this module to alter my now wife's Google doodle to eventually lead to a proposal. She said yes, so this project was a success."

+1 for https support. Presumably, a certificate warning will show up, but that's fine.

Tried a few things and https://github.com/joeferner/node-http-mitm-proxy seems to be the best match. Work in progress.

First working version: https://github.com/kdzwinel/betwixt/pull/31 .
Tips for working with self-signed certificates:

setting https proxy in the terminal: export https_proxy=http://localhost:8008
running wget without certificate checking: wget --no-check-certificate https://google.com
running chrome without certificate checking: /Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary --ignore-urlfetcher-cert-requests --ignore-certificate-errors --user-data-dir="/tmp/chrome_tmp_profile" --proxy-server="http://localhost:8008"

BTW Does someone know if there is a way to make all certificates created by the node-http-mitm-proxy valid system wide? Somehow register it as a valid certificate authority?

I've tried to build from source, but the http-mitm-proxy directory is not created, nor can I find the contents anywhere else.

@Bellardia thanks for reporting, I'll try to reproduce that - it's osx, isn't it?

@kdzwinel Yes it is.
I was able to get it working, but it took a bit of manual work.
I built the http-mitm-proxy directly, copied the .http-mitm-proxy directory form that project to the root of Betwixt.
I then had to override the path in Betwixt, since it seems to be using absolute pathing?
line 24 of traffic-interceptor.js:
proxy.listen({port: port, sslCaDir: ''});

I just want to add a note for the SSLKEYLOGFILE. Both FF and Chrome will log session keys to the file specified in that environment variable. That would circumvent adding a cert and get around sites that do cert pinning (applications too, as long as you can get them to log their session keys, but that should be possible via patching the app).

@Bellardia I was able to reproduce it - TLDR mitm-proxy uses process.cwd() that behaves a bit unexpectedly inside a packaged app. I used electron specific function instead - now certs and keys will be available in ~/Library/Application Support/betwixt folder on OSX (for other OSes see: http://electron.atom.io/docs/v0.37.2/api/app/#appgetpathname ). I'm trying to figure a way to expose ca.pem in the Betwixt UI.

HTTPS support landed.
New binaries: https://github.com/kdzwinel/betwixt/releases/tag/1.0.0
HTTPS docs: https://github.com/kdzwinel/betwixt/blob/master/docs/https.md
Please let me know about any issues.

Hey there, thanks for this cool tool :smile:
I'm trying yo use this with https on ubuntu.
Do you have any info on setting up the certificate?
I get the following error:

This is my network setup:

@sagivf
Betwixt generates a certificate for you: https://github.com/kdzwinel/betwixt/blob/master/docs/https.md#root-certificate
What you have to do is install it. Haven't tried it myself, but it seems to be simple enough: https://askubuntu.com/questions/73287/how-do-i-install-a-root-certificate

Hey @kdzwinel I found the cs.pem and followed the instructions:

moved to /usr/share/ca-certificates/extra/
changed to .crt
added via sudo dpkg-reconfigure ca-certificates

Im still getting the above error. Any idea what else I can do?

@sagivf I followed the instructions for OSX but needed the additional step of telling my keychain manager to trust the certificate (which it didn't according to defaults).

Thanks @barneycarroll that will be helpful when for my IOS development, unfortunately I mostly use ubuntu and cant get it to work...


Version bump to 0.2.5-beta2

And when it's done send an update to erlang.mk as requested in ninenines/erlang.mk#271


Bakery cleanup

Codecov Report

Merging #493 into master will decrease coverage by 0.21%.
The diff coverage is 30.00%.

@@            Coverage Diff             @@
##           master     #493      +/-   ##
==========================================
- Coverage   78.97%   78.75%   -0.22%
==========================================
  Files         110      110
  Lines        3425     3432       +7
  Branches       82       82
==========================================
- Hits         2705     2703       -2
- Misses        720      729       +9

Impacted Files
Coverage Δ

...src/main/scala/com/ing/baker/baas/state/Main.scala
0.00% <0.00%> (ø)

...la/com/ing/baker/baas/state/StateNodeService.scala
82.00% <33.33%> (-11.03%)
:arrow_down:

...e/akka/actor/process_index/ProcessIndexProto.scala
98.01% <0.00%> (-1.49%)
:arrow_down:

Continue to review full report at Codecov.

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


load data before comms and nccl abort to solve issues with empty partitions

In further testing of handling of empty partitions added previously on workstation and dgx (local mode) found that even though we now raise an exception in this case, this can still result in hangs in python workers.  Sometimes the job hangs (dgx) and other times exits but the python worker isn't killed (docker on local workstation).
Loading data before setting up comms (to prevent a worker with data from racing ahead and starting e.g an allreduce) and the nccl abort seems to clean things up in these cases.
I don't think this is the root cause of https://github.com/NVIDIA/spark-rapids-ml/issues/453 but should be addressed.

build

Did some benchmarking with 2 gpus and the change (additional barrier) seems to add 1sec of latency to fit.

build

Moving data loading before nccl comms setup seems to also solve the issues without the extra barrier in previous version.   Tested with uvm on databricks and seems to be ok.
While testing had to upgrade spark-rapids jar to 23.08.2 to avoid databricks crashes.


Just for understanding...

Hi,
sorry for the maybe silly question - as I'm new to HA... 😇
After installing the HACS integration ESPSomfyRTS-HA on my HA instance, I got a lot of services and I didn't know which ones to use... In the meantime it works very well for my purposes and I have already created some automations. However, there are still some things I don't understand, e.g. what is the difference between the service 'espsomfy_rts.open_shade' and the service 'cover.open_cover'? Both work fine - which one should I use?
...& thx for this great integration!!

Thx !


Key circleci cache based on Gopkg.toml/WORKSPACE

Set the circleci cache key to both Gokpkg.toml and WORKSPACE, so that
changes to either will trigger a circleci cache rebuild, and a manual
rebuild without cache will not be needed.
What this PR does / why we need it:
Changes in #1814 resulted in a situation where CircleCI will not rebuild it's dependencies when a change is made to WORKSPACE, only Gopkg.toml. This condition was discovered as the result of [this test](Remove bazel from circleci integration test) failing as the part of PR #1737 .
This change enables the cache to rebuild when updates to WORKSPACE are introduced. While this may not be the end goal for package management in Istio, this provides a means to get the CircleCI tests running when needed.
Special notes for your reviewer:
I updated the WORKSPACE file also; evidence of the CircleCI cache rebuilding on this PR should indicate it is performing as expected.
Release note:
NONE

@redhotpenguin: Adding do-not-merge/release-note-label-needed because the release note process has not been followed.

One of the following labels is required "release-note", "release-note-action-required", or "release-note-none".
Please see: https://github.com/kubernetes/community/blob/master/contributors/devel/pull-requests.md#write-release-notes-if-needed.
Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Hi @redhotpenguin. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
I understand the commands that are listed here.

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

/assign @douglas-reid
Doug, this is a suggestion for resolving the current CircleCI issue where it will not bring in updated dependencies if they are added to WORKSPACE. I don't know what the long term strategy is for dep and bazel with CircleCI, but this should resolve the immediate issue of CircleCI tests failing due to missing dependencies.

/ok-to-test

nice work! Thanks for the update

Merging as this change is confined only to circleci config.yaml..

@redhotpenguin please retrigger the mixer unit test in your PR to see if it passes now..


Rails 5.0.0.beta3 Integration.

Hi,
I'm currently trying to use the Minitest Reporters with Rails 5b3 and it is not working.
Just wanted to know if someone's ever tried this before, if you're already testing with the new version and/or if I might have stumbled upon a "feature" :grin:
Thank you

Hello, I am using it with rails 5 beta3 with no problems
Ensure your Gemfile contains both
group :test do
  gem "minitest"
  gem 'minitest-reporters' #For minitest >= 5.0.0, minitest-reporters gem is not required.
end

Gemfile.lock tells I am using these versions
minitest (5.8.4)
minitest-reporters (1.1.8)

Ensure that your test_helper.rb (that is included in every tests)
ENV['RAILS_ENV'] ||= 'test'
require File.expand_path('../../config/environment', __FILE__)
require 'minitest/unit'
require 'minitest/autorun'
require 'rails/test_help'

Minitest::Reporters.use! Minitest::Reporters::ProgressReporter.new
....

I switched the Rails version from 5 beta 3 to the latest release on the master branch and now it works :)
Thank you!


Turning on desired BBB buses

PR Overview:

Turning on the buses which Pumpkin needs, but aren't enabled with the default BBB device tree

Documentation:
Have documentation changes been made? Options for this section are:

No documentation changes are needed
Doc changes have been included in this PR
Doc changes have be made in a different PR #link (and probably different repo)
Doc changes have NOT been made yet. Here's my very good reason why and a link to the Trello card describing the doc changes to be made

Integration Tests:

Have integration tests been added or changed?
If this PR is adding a new feature, it should have a test. Same options as the documentation section.

 Pumpkin device tree


Roll Engine from 6354156e51f1 to e9e59f4e2b23 (6 revisions)

https://github.com/flutter/engine/compare/6354156e51f1...e9e59f4e2b23
2020-06-30<EMAIL_ADDRESS>Use FixtureTest to remove duplicate code (flutter/engine#19219)
2020-06-30<EMAIL_ADDRESS>Roll Fuchsia Mac SDK from zbrla... to 1cpN9... (flutter/engine#19417)
2020-06-30<EMAIL_ADDRESS>Roll Dart SDK from 96e8fa9cb565 to 22da8934ac8b (6 revisions) (flutter/engine#19416)
2020-06-30<EMAIL_ADDRESS>Roll Skia from 8f3a83671a13 to 1c62a7b034c0 (7 revisions) (flutter/engine#19415)
2020-06-30<EMAIL_ADDRESS>Roll Skia from 95c250c24769 to 8f3a83671a13 (1 revision) (flutter/engine#19412)
2020-06-30<EMAIL_ADDRESS>Roll Skia from 359d16da1108 to 95c250c24769 (1 revision) (flutter/engine#19410)
Also rolling transitive DEPS:
fuchsia/sdk/core/mac-amd64 from zbrlawm7OM0M to 1cpN9LXjoQj-
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Commit queue failed; closing this roll.


Add optional DISTINCT in SELECT

It would be great to have the possibility to get distinct values only. Especially when doing batched knns, for instance, we get a lot of duplicates.

I just added an experimental implementation. Can you please check if it produces the desired results?

I tried it, but it seems to still return same entries on batched knn.

Is there a possibility that you have the same IDs with different distance values? And if yes - do you need the distance information? DINSTINCT currently requires all columns to have different values.

My query selects the id and feature columns only. As I don't request (& receive) more than these two columns I really await distinct values. E.g., requesting a 4*1000 batched knn, the query returns me 4000 times these two columns. Doing a manual id duplicate elimination then, results in 1396 values.

I did some debugging: although I explitely unselect the distance field (i.e. by querying id and feature columns only), the hash function also hashes the distance into the distinct set.

In other words, only hash the fields that are in the SELECT clause.

Mhm I tried to reverse the order of projection and DISTINCT; does that solve the problem?

With the same example, I get 1396 rows directly from query now. Great!
And your change makes sense, as doing distinct before projection results in different distances. 👍

Not exactly! Projection simply drops the distance column (in case you specified, that you don't need it) before doing the necessary calculations for DISTINCT.
So this works for you then?
I suppose that this solution is very limited in use especially in cases where you want to keep the distance column and maybe select the smaller value. This would probably be a use case for a GROUP BY like semantic.

Yes, it does. And again, for DISTINCT this is probably what it should do. Because you can always drop some colums and then request the distinct set of values. As you say, getting the minimums of multiple entries etc would be an other "problem" / feature request. This would be some kind of merging functionality rather than distinct.


Consider supporting Async/Await ?

https://github.com/yannickl/AwaitKit
ES8 Async/Await is a wonderful feature for dealing async logic, will you consider supporting it ?

@singno thanks for the suggestion, I am going to check this out :)

@s4cha It will be very nice to have this feature!

@singno Thanks a lot for pointing me towards this.
Never used Async/Await before and this would be a sweet addition indeed :)
Looking at it at the moment !

Example syntaxes :
// Classic
getPhotos()
  .then(fetchPhotosInfo)
  .then(syncPhotos)

//Async/Await
let photos = try! await(getPhotos())
try! await(fetchPhotosInfo(photos))
try! await(syncPhotos())

//Async Await + error Handling
do {
  let user = try await(getPhotos()))
  try await(fetchPhotosInfo(photos))
  try await(syncPhotos())
} catch {
  print(error)
}

While the syntax is not shorter, I don't see any drawbacks to having this syntax as well.
People are also used to the Async/Await paradigm so It'll be a very welcome feature :)
In the meantime you can try it out by adding this
typealias Async<T> = Promise<T>
typealias AsyncTask = Async<Void>

func async<T>(block:@escaping () throws -> T) -> Async<T> {
    return Promise { resolve, reject in
        do {
            let t = try block()
            resolve(t)
        } catch {
            reject(error)
        }
    }
}

func await<T>(_ promise:Promise<T>) throws -> T {
    var result: T?
    var error: Error?
    let group = DispatchGroup()
    group.enter()
    promise.then { t in
        result = t
        group.leave()
    }.onError { e in
        error = e
        group.leave()
    }
    group.wait()
    if let e = error {
        throw e
    }
    return result!
}

With which you'll be able to write :
func getPhotos() -> Async<[Photo]> {
    return async {
        // Do something
        return [Photo(), Photo(), Photo()]
    }
}

// then
let photos = try! await(getPhotos())

Have a fantastic day !

Nice approach! Unfortunately, this is not usable because current thread is blocked. Await is 'asynchronious wait', it should immediately return control to thread and execute continuation when async work is completed. It looks like yield in some perspective.

Yep the Dispatch queue is needed to make it concurrent :)
func async<T>(block:@escaping () throws -> T) -> Async<T> {
    return Promise { resolve, reject in
        DispatchQueue(label: "testqueue", attributes: .concurrent).async {
            do {
                let t = try block()
                resolve(t)
            } catch {
                reject(error)
            }
        }
    }
}

@singno Happy to announce that Async/await is available in the latest release 🎉 : https://github.com/freshOS/then/releases/tag/2.2.0


Raise handled exceptions

Addresses issue https://github.com/xlab-si/redfish-client-python/issues/8
\cc @miha-plesko @tadeboro

@tadeboro I added unit tests for newly implemented exceptions and I also added unit tests for other exceptions that were missing them (I included them in this PR since we are refactoring exceptions, but I can also create new PR if wish)

Sorry for the noise that I caused by closing and reopening this pull request. I misconfigured the CircleCI when I set up the integration. Closing and reopening triggered the build.

Thank you for your contribution @aljazkosir.


added async option

Thanks for the PR. Not sure about the purpose of this async option as all calls should be already async following this.
No?


Added prop and tests for custom arrow icon

This PR adds functionality for customizing the arrow icon between two dates in the date range picker, following the exact same pattern as the other custom icon props.

Coverage increased (+0.02%) to 85.16% when pulling da5968e08532120f71985c4ca8e22c780bbd4987 on JemarJones:add-custom-arrow-icon-prop into 0bd70728e50566d96df2f5aa8e13925fa26d3583 on airbnb:master.

Coverage increased (+0.02%) to 85.16% when pulling 58bb00966e95a40cc473a195b06685c7f5f08ca7 on JemarJones:add-custom-arrow-icon-prop into 0bd70728e50566d96df2f5aa8e13925fa26d3583 on airbnb:master.


Feature: Initialize from a partial ply

Currently, training can start from an init.ply file. This needs to be a fully valid splat.
It would be great to be able to start with any point cloud, so perhaps with missing scale or transparency values. If they were missing, these could use some good defaults.

Colors: Default to grey
Transparency: Default to inv_sigmoid(0.1)
Scales: Default to KNN init.
Rotations: Default to identity

Positions should still be required, initializing without them doesn't really make sense as far as I can see.

This was done in #43


Can't access weblogic Admin, and the weblogic domain with pvc & pv it seems to failt in a step

Hello,
While deploying a weblogic domain with a pv & pvc im not having the good result and i can't access my weblogic Admin Server :
$ kubectl describe domain adbdomain -n adbdomain
Name:         adbdomain
Namespace:    adbdomain
Labels:       weblogic.domainUID=adbdomain
Annotations:  <none>
API Version:  weblogic.oracle/v9
Kind:         Domain
Metadata:
  Creation Timestamp:  2023-03-07T16:27:15Z
  Generation:          1
  Managed Fields:
    API Version:  weblogic.oracle/v8
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .:
          f:kubectl.kubernetes.io/last-applied-configuration:
        f:labels:
          .:
          f:weblogic.domainUID:
      f:spec:
        .:
        f:clusters:
        f:dataHome:
        f:domainHome:
        f:domainHomeSourceType:
        f:httpAccessLogInLogHome:
        f:image:
        f:imagePullPolicy:
        f:includeServerOutInPodLog:
        f:logHome:
        f:logHomeEnabled:
        f:serverPod:
          .:
          f:env:
          f:resources:
            .:
            f:requests:
              .:
              f:cpu:
              f:memory:
          f:volumeMounts:
          f:volumes:
        f:serverStartPolicy:
        f:webLogicCredentialsSecret:
          .:
          f:name:
    Manager:         kubectl-client-side-apply
    Operation:       Update
    Time:            2023-03-07T16:27:15Z
  Resource Version:  3539952
  UID:               3d9919ba-35a2-4136-b2ad-26e168c0e381
Spec:
  Clusters:
    Name:                           adbdomain-cluster-1
  Data Home:
  Domain Home:                      /shared/domains/adbdomain
  Domain Home Source Type:          PersistentVolume
  Failure Retry Interval Seconds:   120
  Failure Retry Limit Minutes:      1440
  Http Access Log In Log Home:      true
  Image:                            container-registry.oracle.com/middleware/weblogic:<IP_ADDRESS>
  Image Pull Policy:                IfNotPresent
  Include Server Out In Pod Log:    true
  Log Home:                         /shared/logs/adbdomain
  Log Home Enabled:                 true
  Log Home Layout:                  Flat
  Max Cluster Concurrent Shutdown:  1
  Max Cluster Concurrent Startup:   0
  Max Cluster Unavailable:          1
  Replicas:                         0
  Server Pod:
    Env:
      Name:   JAVA_OPTIONS
      Value:  -Dweblogic.StdoutDebugEnabled=false
      Name:   USER_MEM_ARGS
      Value:  -Djava.security.egd=file:/dev/./urandom -Xms256m -Xmx512m
    Resources:
      Requests:
        Cpu:     250m
        Memory:  768Mi
    Volume Mounts:
      Mount Path:  /shared
      Name:        weblogic-domain-storage-volume
    Volumes:
      Name:  weblogic-domain-storage-volume
      Persistent Volume Claim:
        Claim Name:     adbdomain-weblogic-sample-pvc
  Server Start Policy:  IfNeeded
  Web Logic Credentials Secret:
    Name:  adbdomain-weblogic-credentials
Events:    <none>

$ kubectl get all -n adbdomain
NAME                                                    READY   STATUS      RESTARTS   AGE
pod/adbdomain-create-weblogic-sample-domain-job-fw2bv   0/1     Completed   0          22h

NAME                                                    COMPLETIONS   DURATION   AGE
job.batch/adbdomain-create-weblogic-sample-domain-job   1/1           61s        22h

NAME                               AGE
domain.weblogic.oracle/adbdomain   22h

NAME                                          AGE
cluster.weblogic.oracle/adbdomain-cluster-1   22h

The operator can be installed to watch or not watch certain namespaces to accommodate different business requirements. The default behavior for the 4.0 operator is to only monitor namespaces with a certain label. Can you please give us the output of this command:
helm get values weblogic-operator -n weblogic-operator
Assuming that you've used the default installation (the above command will verify that by showing any user-supplied values) then you need to enable monitoring for your "adbdomain" by executing:
kubectl label ns adbdomain weblogic-operator=enabled

@dbibiamine-gh I assume this issue is resolved due to the lack of activity.


Group loan Individual monitoring and group saving individual monitoring POC

This is POC for Group loan Individual monitoring and group saving individual monitoring

@nazeer1100126  please ignore this PR for now.. i will come back with the updated one.

@nikpawar89 Once you update your PR, please share requirement document (JIRA) and functional specifications as well. This will help us in understanding what requirements are addressed in the code; as in how GLIM is different from current implementation which is GLIM as well.

noted @avikganguly01

Status: writing unit tests for the module

@nikpawar89 : How are the unit tests going? I have tested out the functionality of the code as per the demo and it looks great. If you can push the unit tests and fix the conflicts, this can be part of next release.

@avikganguly01 apologies for delay,
Here is the new PR,:
https://github.com/apache/fineract/pull/445


Da-vinci models are now legacy. Recommendation for replacement

I dont see da-vinci models any longer . Whats the recommendation to replace this model ?
https://learn.microsoft.com/en-us/azure/ai-services/openai/concepts/legacy-models

Same here. Has anyone managed a work-around?

https://techcommunity.microsoft.com/t5/azure-ai-services-blog/announcing-updates-to-azure-openai-service-models/ba-p/3866757


Begin reworking permission management

Relates to, but won't fully close out #1050 as this PR won't implement group-level permissions.
TODO List
There's more todo than below, however despite a ~1 month break away from this PR I am still feeling completely burnt out on it. In terms of the basic implementation I think it's done reasonably well and the base-line technical requirements are there.
We have a good handful of starting permissions added, modules which don't need to have permissions are correctly hidden from the list, and many of our modules are set to be always accessible to help prevent someone getting the permissions wrong and causing the system to be broken for a given user.
I think it's a fairly decent starting place that can be built on over time.

[x] Implemented a way for each module to define their permissions.
[x] Boolean (on/off) permission support.
[x] Drop-down "select" permissions where a module can check if a user has a specific permission given from the drop-down.
[x] Calls a module's setDi method before getModulePermissions, so modules can actually use that to read from the DB, perform actions, and dynamically build their permissions list.
[x] Our default modules are hidden from the list when needed.
[x] Where needed, our modules have access permissions permanently enabled.
[x] FOSSBilling automatically generates a "module access" permission key for all modules.

Implemented Module Permissions
Activity

[x] Delete activity

Currency

[x] Manage settings

Email

[x] Manage settings

Extension

[x] Manage extensions

Staff

[x] Create and edit administrators
[x] Delete administrators
[x] Reset administrator passwords
[x] Create and edit staff members
[x] Delete staff members
[x] Reset staff passwords
[x] Manage groups

System

[x] Manage company details
[x] Manage company legal
[x] Invalidate cache
[x] Update FOSSBilling

Documentation

Example module PR
Website documentation

Screenshot of the permissions list in the UI

While you're at it, considering this is big and breaking

It's actually only breaking in a sense that permissions will need to be re-setup after updating. Old modules that were built when permissions only gave the option to enable or disable access to an entire module will still work correctly, which is neat.

move the permission keys from the individual staff accounts to the groups

This was kinda the next step I was going to look at after this. The lack of granularity with the permissions is by far the biggest issue and what I am most concerned about. I think I'll do group-level permission in a separate change as I'm not yet sure how I'd like to implement them

and the handful of people I asked to give input on what permissions to add never actually got back to me with suggestions.

Oops 😳
At first glance all looks good, but will find time later on today to do a proper review.

Oops 😳

It wasn't just you 🙃
But, I'm sure once we push a release that has the capabilities to have more permission options, people will ask to get the missing ones added in and will say what they'd like to see. So it'll work out


Why tinytuya doesn't work with python supervisord?

Why is that the tinytuya doesn't work with supervisord? I have a tiny script to control my lights:
#!/usr/bin/python3

import tinytuya
from ping3 import ping

def setDevices():
    val = 990
    tvHost = "<IP_ADDRESS>"
    if ping(tvHost, timeout=10) is not None:
        dtv = tinytuya.OutletDevice(
            dev_id="bf55405d047f481050e0a8",
            address=tvHost,
            version=3.3,
            connection_timeout = 10,
            connection_retry_limit = 2,
            connection_retry_delay = 5)
        dtv.set_socketPersistent(True)
        dtv.set_multiple_values({
            '22': val,
            '23': val
        })
        print('Dictionary %r' % dtv.status())
        print("INFO Value set for TV")
    else:
        print("ERRO Value not set, TV is offline")

setDevices()

but when I run this using supervisord, it do nothing. I have log info INFO Value set for Tree , but actually no visible change in the light brightness or color has been made. If I run the script manually using python3 setLights.py, then everything work as expected.
Could you help me resolve this mystery? :)

Do you see any errors in the logs with supervisord?
I don't know anything about that supervisord, but it would need to import tinytuya somewhere and your code for the tinytuya functions to work. Your code doesn't show that.

Hi @jasonacox, I've updated the code, so that it contains everything. Supervisord is a program to easily set programs to be executed on startup of Linux. Similar to systemd but with the easier configuration.
I've added dtv.status() to the code, and the difference is:
When I run it using: python3 lights.py
Dictionary {'dps': {'23': 990}, 't':<PHONE_NUMBER>}

When executing the same script, but under supervisord:
Dictionary {'Error': 'Network Error: Unable to Connect', 'Err': '901', 'Payload': None}

One thing that comes to my mind, is that tinytuya somehow deamonized the process so that it is not under the supervisor child processes.
Is there any other options to debug it more?

I've also checked running that python script under systemd and the result is the same. Configuration used:
[Unit]
Description=Lights
After=network.target

[Service]
ExecStart=python3 /root/led-lights/lights.py
Restart=always
User=root

[Install]
WantedBy=multi-user.target

and the result
Dictionary {'Error': 'Network Error: Unable to Connect', 'Err': '901', 'Payload': None}

Dictionary {'Error': 'Network Error: Unable to Connect', 'Err': '901', 'Payload': None}

This means that the OS is not allowing it to connect. I suspect some firewall or iptables is blocking this access. Are you using SELinux or AppArmor?

Does anything here sounds familiar to you? :)

Can you test this and let me know if it works?
sudo python3 lights.py

I don't have sudo, I'm running it as root user.
I've managed it to work with systemd, by writing a simple bash script to run python in the background
#!/bin.bash

HOME=/root/
python3 /root/Dropbox/nuc/led-lights/lights.py &

The issue with this approach is that the python script has to save pid to remove it later.
Now, when I run it with systemctl start lights, they change their dimming and color.

I'm not sure if this is helpful, but I asked ChatGPT how to convert a python script into a systemd service: https://chat.openai.com/share/d8c0a9f5-b106-4f18-a3d3-cff3dca4873c and I have done something simliar with tinyllm: https://github.com/jasonacox/TinyLLM/tree/main/llmserver#option---run-as-a-service

Hi @castus ,
have you solved your issue ?
I have the same problem using a java program executing tiny script.

I finally fixed this issue.
The problem were in localKey. It contains special chars and was bad interpreted.


Update 3rd party licenses

From Skype
[12/18/15, 12:18:52 PM] John Blanco: Sam: One of the items listed for the production deployment process is updating the list of 3rd party licenses.  I was just running into a couple of issues with this, but I'm wondering if it's really necessary because 1. Arithmetic doesn't use anything new and 2. you're probably doing to do it shortly for Bending Light anyway.  In your opinion, should I push through on this or can I leave it and get to work on Neuron?
[12/18/15, 12:49:10 PM] Sam Reid: I’ll take care of it, and I’ll leave a paper trail which could inform issues like this in the future.

Even if the dependencies haven't changed, we should (at a minimum) update the versions in the file.

Oops wrong repo.


IE8 issue on getObjLength

Method getObjLength(o) only partially defines the variable l.  IE8 expects numbers to be prepopulated before being able to ++ them, so this method throws NaN under IE8.
To resolve, code needs to be changed to:
var l = 0, k;

Done in 1.0.5 :+1:


Upgrade nimPackages.jsony to 1.1.5

Description of changes
This pull request upgrades the Nim jsony package library from somewhere in the neighborhood of 1.1.4 to 1.1.5

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Does nitter.passthru.tests build?

Does nitter.passthru.tests build?

It does.  What is that?  How did you know I needed to build it?

Nitter is the most popular Nim package we have and it dedends on jsony.


shrink.sh: ERROR occurred in line 376: parted failed with rc 1

The dd is ext4 type.
parted is not detecting ext4 - and instead passing "PRIMARY"  in mkpart.
This wont work on ext4
primary is only used in logical or msdos partition types.
                     Create a new partition. **part-type may be specified only with msdos and dvh partition tables**, it should be one of "primary", "log‐
                     ical", or "extended".  name is required for GPT partition tables and fs-type is optional.  fs-type can be one of "btrfs", "ext2",
                     "ext3", "ext4", "fat16", "fat32", "hfs", "hfs+", "linux-swap", "ntfs", "reiserfs", "udf", or "xfs".

PiShrink works on the entire SD card, not just one partition. If you dd the whole disk it should work for you


add a timer context manager

Allows you to do cool stuff like:
with client.timer(["my.stat1", "my.stat2"]):
    do_something_slow()

I'm not sure if you have a minimum supported Python version, but contextlib.contextmanager was introduced in Python 2.5.


rna-transcription:  verify ordering of actual/expected

In the Jasmine testing framework, it is convention to:
expect(actual).fn(expected)

But some test suites have the following:
expect(expected).fn(actual)

This causes the error messages to be confusing.
Please verify the rna-transcription exercise to make sure that the expectations are ordered correctly. If they are, then this can be closed.
This issue will help to close #111

Got it

This one is OK and can be closed

Great!


Fix typo in advanced-concepts.md

📚 Context: Typo in documentation
🧠 Change: markdown fixed
💥 Impact: Documentation is easier to read and seems more professional
Size:

[x ] Small
[ ] Not small

Contribution License Agreement
By submitting this pull request you agree that all contributions to this project are made under the Apache 2.0 license.

Hello @snehankekre @sfc-gh-skekre , do you mind merging it?

Thanks, @hafeja!


Typo in pip command

https://github.com/pzivich/Delicatessen/blob/ea5624546e589f2a2dac113fe3b8f20bd3b0103a/README.md?plain=1#L43
Just saw a typo in the package name on the referenced line.

Hi @jrgant thanks for catching! I have fixed the README


operator/ingress: Delete +optional marker on type

Make the type field of the endpoint publishing strategy for an IngressController resource a required field.
The type field is a union discriminator field, and the KEP for union types states that a union discriminator field "CAN be optional".  The IngressController resource's spec.endpointPublishingStrategy field is optional, so if it is specified, then it is reasonable to expect an explicit value be specified for spec.endpointPublishingStrategy.type, and the ingress operator will always set an explicit value for the status.endpointPublishingStrategy.type field.
The ingress operator currently has a CRD that was generated using controller-tools v0.2.0-beta.1, which ignores the +optional marker, with the result that spec.endpointPublishingStrategy.type is required.  controller-tools v0.2.0-beta.3 and newer respects the +optional marker (https://github.com/kubernetes-sigs/controller-tools/pull/211/commits/fcf42052ecd83a24c911f5aace1df34d451b8e21), with the result that regenerating the CRD with the current API would cause the field to become no longer required.  Because the current CRD specifies the field to be required, it is safe to remove the +optional marker now so that the field will continue to be required when the CRD is regenerated using newer controller-tools.

operator/v1/types_ingress.go (EndpointPublishingStrategy): Remove the +optional marker on the type field.

/approve
@sttts PTAL, thanks for your help with these.

/lgtm

/approve


Add StackDefinition CRD YAML to crossplane-types helm chart

Description of your changes
make generate puts this YAML under cluster/charts/crossplane-types/crds but it seems it was missing in https://github.com/crossplaneio/crossplane/pull/1214
I just ran make generate and committed.

How has this code been tested?

helm install works.
Checklist

I have:

[x] Run make reviewable to ensure this PR is ready for review.
[x] Ensured this PR contains a neat, self documenting set of commits.
[x] Updated any relevant documentation and examples.
[x] Reported all new error conditions into the log or as an event, as
appropriate.

For more about what we believe makes a pull request complete, see our
definition of done.

Any idea how #1214 passed CI with this being the case?

Is rebase mandatory before merge?

@turkenh ah I see so it didn’t have the code that makes this generation happen. A similar thing happened to me on a PR a while back. This is probably something we should address in some sort of check. I am guessing the commit failed CI after merge, but it is easy to miss that in our current system.


Get error when clicking on Execute Playwright Test or Execute Playwright Suite

Steps to reproduce

Install extension
Open test file (using TrueScript)
Click on Execute Playwright Test or Execute Playwright Suite

Result
Getting this error showing in the bottom right corner
Cannot read properties of undefined (reading 'match')
Expectation
Instead of an error get the command printed in the Terminal tab
More Info
Published
2021-10-13, 14:42:22
Last released
2024-07-28, 14:30:26
Last updated
2024-08-10, 09:58:10
Identifier
ortoni.ortoni

Hi, can you please restart your vs code and check if it's working?

@ortoniKC
Restarted VS Code and also again removed and reinstalled extension, still getting the same error

Please share the screenshot and extension configuration, it will be easier to debug.

This is the error

Settings

Hope this helps.

Hi,
I think it is related to the different version installed.

CTRL + , (to open settings)
FInd any line with ortoniPlaywrightTestRunner
Remove every line and add the following:

 "ortoniPlaywrightTestRunner.environments": {
    "No Environment": "",
  },
  "ortoniPlaywrightTestRunner.defaultEnvironment": "No Environment",

Then restart VS code and it should work fine.

Sorry for the late reply. The above surely fixed it. Thank you!


Aggregation metrics

Addition of GroupedInstanceMetric and derived metrics @matanor @elronbandel

After more consideration, I rewrote this as a sub-class of InstanceMetric, as suggested by @matanor, which can now take an InstanceMetric as well as GlobalMetric (and possibly others, not sure), which have a process method.  I added a confidence interval method that resamples the instances and extract the scores, without having to recalculate the instance scores each time as GlobalMetric would have required.  Please take a look and let me know what you think.

@matanor @elronbandel - Can we proceed with this PR and see if there are any additional needed changes (beside fix to the conflict)

@sam-data-guy-iam is this PR replaced by your new PR https://github.com/IBM/unitxt/pull/452?

Yes
On Tue, Jan 9, 2024, 10:32 AM matanor @.***> wrote:

@sam-data-guy-iam https://github.com/sam-data-guy-iam is this PR
replaced by your new PR #452 https://github.com/IBM/unitxt/pull/452?
—
Reply to this email directly, view it on GitHub
https://github.com/IBM/unitxt/pull/430#issuecomment-1882613114, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/A5V5WLBVQ2PWDE5BMAUKYLDYNT6B3AVCNFSM6AAAAABBCS6AK6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBSGYYTGMJRGQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

Yes
…
On Tue, Jan 9, 2024, 10:32 AM matanor @.> wrote: @sam-data-guy-iam https://github.com/sam-data-guy-iam is this PR replaced by your new PR #452 <#452>? — Reply to this email directly, view it on GitHub <#430 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/A5V5WLBVQ2PWDE5BMAUKYLDYNT6B3AVCNFSM6AAAAABBCS6AK6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBSGYYTGMJRGQ . You are receiving this because you were mentioned.Message ID: @.>

OK, so i am closing this PR..


Cannot see data uploaded through SCP

Thanks for reporting an issue for Streama, please review the instructions below before submitting the
issue.
YOUR ISSUE WILL BE CLOSED IF IT DOES NOT USE THIS TEMPLATE OR IT IS INCOMPLETE!
Feature requetes can be done without this template.
If you have multiple things to report please create one issue per item.
Please use english when reporting issues.
If you are unsure about something and the issue is more of a question a better
place to ask questions is on gitter.
DO NOT use the issue tracker to ask questions.
Please fill out the sections below the header and review the task list below.
Task List:

[ ] Issue description provided
[ ] Steps to reproduce provided
[ ] Stacktrace (if present) provided
[ ] Screenshots (if UI related) provided
[ ] Full description of the issue provided

PLEASE REMOVE THIS HEADER SECTION BEFORE SUBMISSION

Issue description
I've uploaded a file to my server, mapped that directory as my own files on streama, validated it and I'm not able to see these file on streama in the file browser or using them as tv series file
Steps to Reproduce
read the issue description

copy file via scp to a directory accessible by streama
map the directory in streama
try to use that file

Expected Behaviour
To find them and use them in tvseries or movies
Actual Behaviour
I'm not able to find them in streama
Environment Information

Operating System: Ubuntu Server 17.10.1
Streama version: last stable build as of 06 feb 2018
Custom streama build, describe customizations or provide link to fork (If Applicable):
Container Version (If Applicable):

Example Application / access to your live version
not avalible (opened only in lan for my family)

adding screenshots

I tried again to set the directory and now works... IDK what happened. Maybe I forgot to click on save while exiting from the settings? IDK


Write error messages to STDERR

Currently both error and general log messages are written to STDOUT. This can cause issues for people relying on i/o redirection to treat STDOUT/STDERR differently.
eg. Before this change the following erroneous command would produce no feedback as any errors would be written to config.yml
# kongfig dump config --host invalidhost:8001 > config.yml

After this change the same command will result in error messages being written to the console.
# kongfig dump config --host invalidhost:8001 > config.yml
FetchError: request to http://throwerror:8001 failed, reason: getaddrinfo ENOTFOUND throwerror throwerror:8001
 Error
    at ClientRequest.<anonymous> (/work/node_modules/node-fetch/index.js:133:11)
    at emitOne (events.js:115:13)
    at ClientRequest.emit (events.js:210:7)
    at Socket.socketErrorListener (_http_client.js:399:9)
    at emitOne (events.js:115:13)
    at Socket.emit (events.js:210:7)
    at emitErrorNT (internal/streams/destroy.js:62:8)
    at _combinedTickCallback (internal/process/next_tick.js:102:11)
    at process._tickCallback (internal/process/next_tick.js:161:9)

Great stuff. Thank so for the PR!


Handling NULL object during/before model binding [AspNetCore]

System Details

FluentValidation.AspNetCore version: 8.0.0
Web API Framework version: ASP.NET Core 2.1

Issue Description
I am trying to delegate null-checking operation on the instance to FV as well.
Without explicit calls either from Controller or Validate method. I  tried every possible combination of overriding and inheriting, EnsureInstanceNotNull, PreValidate and IValidatorInterceptor, respectively.
Please let me know if this is this even possible?
[HttpPost, AllowAnonymous]
public IActionResult Post([FromBody] AuthenticationTicket authTicket)
{
       if (authTicket == null) throw new ArgumentNullException("authTicket", "Invalid authentication ticket provided.");
....
}

I want to get rid of the explict check above from the controller side, but no luck.
I am registering FV as documented
.AddFluentValidation(fv => fv.RegisterValidatorsFromAssemblyContaining<Startup>())

Creating new item per @JeremySkinner from a closed issue
cc: @AdemCatamak

Are you actually sending data to the controller action?
Overriding EnsureInstanceNotNull or PreValidate only works if the ASP.NET validation pipeline actually invokes the validator and passes it a null. I believe that when you use FromBody and no data is supplied, the validator is never actually invoked (I might be wrong here, but I believe that's the case). In which case it's not actually possible to delegate the null check to the validator and you'll have to do it in the action.

Closing as there's really nothing we can do about this.


Disable Registration/PW reset and change when using LDAP

When using centralized LDAP authentication. Password and user information should be maintained by the central LDAP server only. A configuration option for disabling Password reset and change for an instance as well as new user registration would be a major enhancement.

Hi, this can already be done by setting PROFILE_UPDATE = False and PROFILE_DELETE = False in config/settings/local.py. See also: https://rdmo.readthedocs.io/en/latest/configuration/authentication/ldap.html

And ACCOUNT = False and ACCOUNT_SIGNUP = False, which should be the default.

Thanks a lot! The ACCOUNT and ACCOUNT_SIGNUP settings were set True. Setting them to False resolved this issue even though PROFILE_UPDATE and PROFILE_DELETE have been False before.


deis-monitor-telgraf is opening up too many connections on kube-apiserver

Have 3 node cluster
Ubuntu/Kubernetes/Deis-Workflow-v2.0.0
Each node has good compute resources..
Withing 10-15 mins of fresh installation of deis workflow, k8s dashboard and k8s apis hang up.
After investing, found out that deis-monitor-telegraf (3 pods) were opening up a lot of connections to kube-api server to collect metrics but not closing them.
Continuous, lsof -P -p  showed opened sockets increasing continuously until it hit 1024 (this is the default ulimit), at which point, kube-apiserver started logging "too many open files" on 6443 and 8080 ports and the entire system hangs.
I tried increasing the ulimit but it did not help.
I shutdown deis-monitor-telegraf daemon set and lsof came to its stable minimal value.
Tried both v2 and v2-beta versions of telegraf image. Both have the same problem.
Is there a way to collect the metrics on demand instead of collecting them by auto polling?
Thanks!

This was an issue with an older version of telegraf and should be fixed when 2.1 ships.

closing as this was fixed in 2.1


Secure and speedup "Try It Out!" example

Specify https protocol in curl call instead of default http. This gives:

Better security. Without https compromised network routers might
add malicious code to translate-shell script which user will run
unknowingly.
Faster download. git.io redirects to https:// anyway so connecting by
https:// saves one redirect.

Use compression. This saves >100 KB of transferred data.

Result:
$ hyperfine 'curl -Ls git.io/translate' 'curl -Ls --compressed https://git.io/translate'
Benchmark #1: curl -Ls git.io/translate
  Time (mean ± σ):      1.189 s ±  0.091 s    [User: 40.8 ms, System: 12.4 ms]
  Range (min … max):    1.104 s …  1.406 s    10 runs

Benchmark #2: curl -Ls --compressed https://git.io/translate
  Time (mean ± σ):     814.1 ms ±  79.6 ms    [User: 41.0 ms, System: 7.5 ms]
  Range (min … max):   751.6 ms … 1025.3 ms    10 runs

Summary
  'curl -Ls --compressed https://git.io/translate' ran
    1.46 ± 0.18 times faster than 'curl -Ls git.io/translate'

Nice. Thanks for the fix!


the midi updates alone the changes of time.
to give the notes which mismatched, in the way of midi visualization, e.g show the plan and feedback sequence with two different colors.

done in PR #218, the close


Detect supported offload codec

I'd like to know if there's any API or efficient way to know what codec a given device support for offload playback.
The context is using that information to decide to what format the media should be transcoded to for offline playback on a watch where battery usage is very important.
Android docs says that MP3/AAC and Opus offload may be supported but not must be supported, so I supposed this is up to the OEM and hence why I'm looking for a way to detect it.

Hello @Tolriq,
Thank you for posting your question. There are specific Android APIs to determine playback offload support on the device. ExoPlayer calls these APIs through a DefaultAudioOffloadSupportProvider in DefaultAudioSink. These APIs are provided by AudioManager. Depending on the API level of your device you might call getDirectPlaybackSupport , getPlaybackOffloadSupport, etc.
Hope that answers your question!

Thanks DefaultAudioOffloadSupportProvider have everything I need including conversion of format from Media3 to Android ones.
If there any risk directly using that class ? (I mean risk of making this private in the future)

There are not guarantees as it in @UnstableAPI of course.
However, the purpose of that class is to query the AudioManager for offload capabilities and be that provider for DefaultAudioSink. It was designed as a default in case application wish to provide their own or wrap the default to edit etc. As a result it is unlikely we make this class private. In the future, we may update the class to report support of other offload attribute capabilities, use newer Android APIs etc.
Glad the class had what you needed. I'll close the issue. Please reopen or create a new one if you have additional questions.


Improving NiftiImage fetch semantics

Per comment, the two-step of first fetch and then getting data for NiftiImage objects retrieved from map objects may feel strange to users.
Possible improvement:

Create a dependent property called NiftiImageInfo that does what fetch currently does
Replace fetch method with a getNiftiImage method which actually gets the image data

This is a bit tricky, since in siibra fetch is always the step "outside" siibra, ie. going from a siibra object to a non-siibra (but highly interoperable) data type like NIfTI or pandas DataFrame. To be discussed further.


Allow all CSS system colors in stylesheets without variables usage

Replicates https://github.com/wagtail/stylelint-config-wagtail/pull/29 for our currently overridden configuration of this stylelint rule.

CircleCI frontend checks passed, merging without waiting for all the Django tests.


Difference between UI prompting & API prompting

Describe the bug
Hello!
I have been trying to recreate API calls using your script (made some modifications to be able to run it directly from the CLI), and I am noticing key differences between the img2img generations that are made using the API calls versus what is being generated when I use the exact same parameters and seed from the base stable diffusion UI.
The main issue that I see in terms of the difference is that I am not able to use high CFG_SCALE values when calling using the API.  Through the UI, I can go up to the mid to high 20s before I start seeing a lot of noise (blue striations and massive unwanted streaks) in the images.  However, when I use the API, if I at any time go over a CFG_SCALE of 10, at any img similarity, I begin to get these unwanted streaks.
Do you have any idea why this might be?  I made sure all parameters including sample, cfg scale, denoising strength, steps, etc are honored.
Curious to hear your thoughts.  I went into my SD code and printed the outputs of the parameters to compare.  These are not one to one variables because different workflows are called internally in SD based on whether it's an API call or a UI call, but theoretically these calls from the API should not be as overbaked as they are appearing.
To reproduce
UI CALL:
'prompt': 'beautiful holy city on top of a mountain, sci-fi concept art, hyperdetailed, 8k, trending on Artstation', 'prompt_for_display': None, 'negative_prompt': '', 'styles': ['None', 'None'], 'seed':<PHONE_NUMBER>.0, 'subseed': -1, 'subseed_strength': 0, 'seed_resize_from_h': 0, 'seed_resize_from_w': 0, 'sampler_index': 2, 'batch_size': 1, 'n_iter': 1, 'steps': 100, 'cfg_scale': 30, 'width': 576, 'height': 1024, 'restore_faces': False, 'tiling': False, 'do_not_save_samples': False, 'do_not_save_grid': False, 'extra_generation_params': {}, 'overlay_images': None, 'eta': None, 'do_not_reload_embeddings': False, 'paste_to': None, 'color_corrections': None, 'denoising_strength': 0.27, 'sampler_noise_scheduler_override': None, 'ddim_discretize': 'uniform', 's_churn': 0, 's_tmin': 0, 's_tmax': inf, 's_noise': 1.0, 'override_settings': {}, 'scripts': None, 'script_args': None, 'all_prompts': None, 'all_seeds': None, 'all_subseeds': None, 'init_images': [<PIL.Image.Image image mode=RGB size=1080x1920 at 0x197BCFA9960>], 'resize_mode': 0, 'init_latent': None, 'image_mask': None, 'latent_mask': None, 'mask_for_overlay': None, 'mask_blur': 4, 'inpainting_fill': 1, 'inpaint_full_res': False, 'inpaint_full_res_padding': 32, 'inpainting_mask_invert': 0, 'mask': None, 'nmask': None, 'image_conditioning': None

API CALL:
'resize_mode': 0, 'denoising_strength': 0.23, 'mask': None, 'mask_blur': 4, 'inpainting_fill': 0, 'inpaint_full_res': True, 'inpaint_full_res_padding': 0, 'inpainting_mask_invert': 0, 'prompt': 'beautiful holy city on top of a mountain, sci-fi concept art, hyperdetailed, 8k, trending on Artstation', 'styles': None, 'seed':<PHONE_NUMBER>, 'subseed': -1, 'subseed_strength': 0, 'seed_resize_from_h': -1, 'seed_resize_from_w': -1, 'batch_size': 1, 'n_iter': 1, 'steps': 50, 'cfg_scale': 30.0, 'width': 576, 'height': 1024, 'restore_faces': False, 'tiling': False, 'negative_prompt': None, 'eta': None, 's_churn': 0.0, 's_tmax': None, 's_tmin': 0.0, 's_noise': 1.0, 'override_settings': None, 'sampler_index': 'LMS', 'include_init_images': False}

Error log
No direct errors are printed
Environment

Blender version (upper right corner of splash screen):
AI Render version (find in Preferences > Add-ons):
Operating system (Windows/Mac/Linux):

Screenshots/video
No response
Additional information
No response

Hmm, that's a really interesting question. I don't know what's going on with that, but I'll throw out a couple potential things to check:

Is the model/engine the same? i.e. are you using Stable Diffusion 2.1 in both places?
It's possible that higher steps in the API would fix the issues. I know you said you used the same values, but based on the images it seems like lower steps would potentially cause the issues in the second image.
Do you need to use such a high cfg_scale? I'm not sure I've seen anyone purposely drive it that high (I'm genuinely curious!)

You could try asking this question on the Stability discord in the #api channel. There are devs there that work at Stability and who have been responsive to all sorts of questions.

After a crazy amount of digging, I just figured it out about 10 minutes ago! It is extremely strange, but in SD code, only for API calls they seem to hard code the "sampler_index" field, which ultimately calls a different "sampler script" from any of the ones we can choose from the UI.
For me, I am experimenting with high cfg_scale because it basically creates a crazy amount of detail while keeping img_similarity high.  This effectively makes it so that the composition can remain more consistent in frame to frame animations while the actual details can change significantly!

Ahh, interesting. That's weird that they're using their own custom sampler script. And that makes sense about the cfg_scale. Thanks for filling me in.
I'm hoping that when depth2img is offered in the API, it'll be game changing for animation consistency!

Wait, what is depth2image?
On Sun, Jan 8, 2023, 5:02 PM Ben Rugg @.***> wrote:

Ahh, interesting. That's weird that they're using their own custom sampler
script. And that makes sense about the cfg_scale. Thanks for filling me in.
I'm hoping that when depth2img is offered in the API, it'll be game
changing for animation consistency!
—
Reply to this email directly, view it on GitHub
https://github.com/benrugg/AI-Render/issues/65#issuecomment-1374937910,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADVMFE7TNXWQUSOB6AHMLALWRM2NTANCNFSM6AAAAAATUJX7O4
.
You are receiving this because you authored the thread.Message ID:
@.***>

depth2img is a new feature in Stable Diffusion 2.0 that infers depth information from the initial image, and uses that to guide the diffusion process. I think it might yield much more stable animations. So far it's not available in the DreamStudio API, but I think it's coming very soon.
https://stability.ai/blog/stable-diffusion-v2-release#block-yui_3_17_2_1_1669237481819_8176

Very interesting!
Do you think that it will be able to create composition aware frame by
frame animations?  Right now it seems that it is just creating you a depth
map while doing the same type of diffusion.  Though I haven't compared
apples to apples with the same seed, img, and doing img2img instead.
On Mon, Jan 9, 2023 at 10:28 AM Ben Rugg @.***> wrote:

depth2img is a new feature in Stable Diffusion 2.0 that infers depth
information from the initial image, and uses that to guide the diffusion
process. I think it might yield much more stable animations. So far it's
not available in the DreamStudio API, but I think it's coming very soon.
https://stability.ai/blog/stable-diffusion-v2-release#block-yui_3_17_2_1_1669237481819_8176
—
Reply to this email directly, view it on GitHub
https://github.com/benrugg/AI-Render/issues/65#issuecomment-1375795597,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADVMFE4YD5T4SK3WXENADBLWRQVAZANCNFSM6AAAAAATUJX7O4
.
You are receiving this because you authored the thread.Message ID:
@.***>

Interesting. Were you testing it with Automatic1111, or are you just speculating? My understanding is that it infers a depth map in order to create something closer to a composition-aware diffusion. I'm hoping to test it soon!

I havent actually gotten the latest version of stable diffusion with
depth2img yet, so i might be mistaken about the capability. Only tested in
the web ui. I dont want to override my local code changes but this sounds
really promising and its my exact use case... might just make a second
installation to test it. Would be incredible if it could basically keep the
composition and commit to an understanding of an "environment" for an
entire animation run
On Tue, Jan 10, 2023, 3:59 PM Ben Rugg @.***> wrote:

Interesting. Were you testing it with Automatic1111, or are you just
speculating? My understanding is that it infers a depth map in order to
create something closer to a composition-aware diffusion. I'm hoping to
test it soon!
—
Reply to this email directly, view it on GitHub
https://github.com/benrugg/AI-Render/issues/65#issuecomment-1377845175,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADVMFEZAD7LKKZ76SFIG4K3WRXEUZANCNFSM6AAAAAATUJX7O4
.
You are receiving this because you authored the thread.Message ID:
@.***>


Release uefi-macros-0.10.0, uefi-0.19.0, and uefi-services-0.16.0

Checklist

[ ] Sensible git history (for example, squash "typo" or "fix" commits). See the Rewriting History guide for help.
[ ] Update the changelog (if necessary)

Thanks for taking care of this 👍


The validation error disappears when schema is nested.

Problem
Sorry if this is not an issue in this repository.
sandbox
https://codesandbox.io/s/react-hook-form-with-yup-forked-1ihqf?file=/src/index.js
I use yup's schema validation.
The schema is nested as follows.
const schema = yup.object().shape({
  user: yup.object().shape({
    firstName: yup.string().required(),
    lastName: yup.string().required(),
    age: yup.string().required()
  })

I want the initial render to be in an error state, so I run trigger in useEffect.
And The mode of validation is onBlur.
  // initial validate
  React.useEffect(() => {
    trigger();
  }, [trigger]);

The initial render shows the error as expected, but when I finish entering the first item, the error disappears even though there are items that have not been entered.

Without nesting the schema, it behaved as expected.

RHF focus on field level validation, if you want to trigger dependency validation use trigger

Thanks for the reply.

RHF focus on field level validation,

Depending on how I define the validation schema, it will behave differently.
Is this as expected?
In the case of a simple un-nested schema, if the validation of one item passes, I will still get the other validation error messages, as shown below
const schema = yup.object().shape({
  firstName: yup.string().required(),
  lastName: yup.string().required(),
  age: yup.string().required()
});

        First Name
        <input type="text" name="firstName" ref={register} />

{errors.firstName?.message}

        Last Name
        <input type="text" name="lastName" ref={register} />

{errors.lastName?.message}

       Age
        <input type="text" name="age" ref={register} />

{errors.age?.message}

But when I nest the schema, if the FirstName validation passes, all the error messages disappear.
// Add user
const schema = yup.object().shape({
  user: yup.object().shape({
    firstName: yup.string().required(),
    lastName: yup.string().required(),
    age: yup.string().required()
  })
});

        First Name
        <input type="text" name="user.firstName" ref={register} />

{errors.user?.firstName?.message}

        Last Name
        <input type="text" name="user.lastName" ref={register} />

{errors.user?.lastName?.message}

        Age
        <input type="text" name="user.age" ref={register} />

{errors.user?.age?.message}

hmmmm this looks like a strang bug... i will investigate. sorry was early in the morning my head was not clear.


Alias analysis & attributes in LLVM

This is a placeholder ticket to gather information on aliasing/function attributes in LLVM. Particularly we are interested in noalias for struct members.

Consider a kernel:
VOID nrn_state_hh(INSTANCE_STRUCT *mech){
    INTEGER id
    INTEGER node_id
    DOUBLE v
    for(id = 0; id<mech->node_count; id = id+1) {
        node_id = mech->node_index[id]
        v = mech->voltage[node_id]
        mech->m[id] = (mech->minf[id]+v)/mech->mtau[id]
    }
}

Experiments
Now, consider 3 cases:

Generate LLVM IR via NMODL and then run -O3
Generate LLVM IR via Clang (For corresponding C++) with -O0, copy IR to separate file and run -O3
Generate LLVM IR via Clang (For corresponding C++) with -O3

Corresponding links:

NMODL  --> LLVM IR https://godbolt.org/z/6zv9aqq4n
C++ --> LLVM IR (no previous C++ info)--> LLVM IR (O3) https://godbolt.org/z/ae1zrse7b
C++ --> LLVM IR (O3) https://godbolt.org/z/a4GKWc9av

Comparison and conclusions

We generate IR that is identical (up to the order of evaluation of expressions (todo: that is something for future considerations) and overflow flags (nsw/nuw)) to IR generated by Clang with optimisations off.

Optimisations on IR generate the same result for cases 1 and 2, since in case 2 no C++ info is available

Case 3 is different, observations are:

__restrict has no effect - Clang/LLVM is able to deduce no aliasing quite well.

Clang unrolls the loop (2 iterations), hence having a case to handle odd node_count: this may mean there is loop metadata attached to branches/basic blocks => more profit from optimisations

Clang pulls out load double*, double**: due to TBAA. Fix: add noalias keyword as we know the kernel code does not break aliasing.

Exanple:
Changing
define void @nrn_state_hh(%test__instance_var__type* %mech1) {

to
define void @nrn_state_hh(%test__instance_var__type* noalias %mech1) {

pulls out loads.

Some useful links:

[x] TBAA: https://llvm.org/docs/LangRef.html#tbaa-metadata
[x] On __restrict and aliasing: https://llvm.org/devmtg/2017-02-04/Restrict-Qualified-Pointers-in-LLVM.pdf
[x] On metadata: https://llvm.org/devmtg/2016-11/Slides/Finkel-IntrinsicsMetadataAttributes.pdf
[ ] Find more on loop metadata (https://llvm.org/docs/LangRef.html#llvm-loop)


[video_player] Add cookie support (3/3)

Part 3 of #2882 - see main description there.

Add included cookies, if any, to AVPlayer + ExoPlayer
Lots of pigeon-generated formatting diffs; still on same version. Hoping to check in exactly what pigeon generates.
Fix bug in example/lib/main.dart : collection for introduced a dependency on the control-flow-collections experiment

Achieved in #3671!


[docs] Add import to TypeScript code snippet in theme-components.md

[x] I have followed (at least) the PR section of the contributing guide.

Hi @yvog! 👋 Thanks for your interest in contributing to the docs!
Can you explain your reasoning for adding this line here?
To me it seems unnecessary, as other demos throughout this page and the docs show small code snippets where an import is implied but not explicitly stated. It would be an "all-or-nothing" situation in my opinion, and I would err on the side of not including these in every code snippet.

Hi @samuelsycamore, I added the types to my project, but TypeScript didn't recognize them. As no errors were given, I was looking for a long time what I was missing. Maybe this is about common TypeScript knowledge, but it wasn't easy to discover that an import was required in this case. I agree with this being an all-or-nothing situation.

@michaldudak Thanks, but I added the types in a separate file.


Having issues migrating functional nginx config into Nginx Proxy Manager

Checklist

Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?

Yes

Are you sure you're not using someone else's docker image?

Yes

Have you searched for similar issues (both open and closed)?

Yes

Describe the bug

I have the following location defined in an nginx.conf which functions exactly as expected
location /portainer/ {
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-Ip $remote_addr;
    proxy_set_header X-Forwarded-For $remote_add_x_forwarded_for;
    proxy_pass https://hostname.domain:9443/;
}

I figured it would be as easy as adding a new proxy host in Nginx Proxy Manager, adding the /portainer/ location and setting the various proxy_header variables in the advanced section of the location. However, when I add literally any of the proxy_set_header lines above, the location throws a 400. I cannot see anything really "useful" in the container logs for nginx-proxy-manager.
Am I missing something?
Nginx Proxy Manager Version

v2.10.4
To Reproduce
Steps to reproduce the behavior:

Create new proxy host
Add a location
Add proxy_set_header X-Real-IP $remote_addr; (for example) to the advanced section of the location
Save the location
Navigate a new tab to the location
Observe 400

Expected behavior

I would expect the proxy_set_header values to be respected. Additionally, if there is a configuration error occurring, some form of notification seems like a plus
Screenshots

I can provide these if needed
Operating System

RHEL 8.8
Docker version 24.0.5, build ced0996

Additional context

Running under compose using the following docker compose script
version: '3.8'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80' # Public HTTP Port
      - '443:443' # Public HTTPS Port
      - '81:81' # Admin Web Port
      - '5090-6000:5090-6000' # Snag up any other ports we might want to proxy to
    volumes:
      - /opt/docker/npm/:/data

The only thing any of the log files emits on save is

[warn] 141#141: could not build optimal proxy_headers_hash, you should increase either proxy_headers_hash_max_size: 512 or proxy_headers_hash_bucket_size: 64; ignoring proxy_headers_hash_bucket_size

And on hitting the created endpoint, the following 2 things are logged (along with lots of repeated 500s of trying to get the favicon)
==> proxy-host-2_access.log <==
[15/Aug/2023:17:03:34 +0000] - 400 400 - GET http hostname.domain "/portainer/" [Client <IP_ADDRESS>] [Length 25] [Gzip -] [Sent-to hostname.domain] "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0" "-"

==> fallback_error.log <==
2023/08/15 17:03:34 [warn] 1471#1471: 512 worker_connections are not enough, reusing connections

Is there more information that I need to provide to get some kind of feedback about what I may be doing incorrectly here?

Lista

Você puxou e encontrou o erro com a imagem do docker? jc21/nginx-proxy-manager:latest

Sim

Tem certeza de que não está usando a imagem docker de outra pessoa?

Sim

Você já pesquisou por problemas semelhantes (abertos e fechados)?

Sim

Descreva o bug
Eu tenho o seguinte local definido em um que funciona exatamente como esperadonginx.conf
location /portainer/ {
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-Ip $remote_addr;
    proxy_set_header X-Forwarded-For $remote_add_x_forwarded_for;
    proxy_pass https://hostname.domain:9443/;
}

Eu imaginei que seria tão fácil quanto adicionar um novo host proxy no Nginx Proxy Manager, adicionando o local e definindo as várias variáveis proxy_header na seção do local. No entanto, quando eu adiciono literalmente qualquer uma das linhas acima, o local lança um 400. Não consigo ver nada realmente "útil" nos logs de contêiner para nginx-proxy-manager./portainer/``advanced``proxy_set_header
Estou sentindo falta de alguma coisa?
Nginx Proxy Manager Versão
v2.10.4
Para reproduzir etapas para reproduzir o comportamento:

Criar novo host proxy
Adicionar uma localização
Adicionar (por exemplo) à seção avançada do localproxy_set_header X-Real-IP $remote_addr;
Salve o local
Navegar em uma nova guia até o local
Observe 400

Comportamento esperado
Espero que os valores sejam respeitados. Além disso, se houver um erro de configuração ocorrendo, alguma forma de notificação parece uma vantagemproxy_set_header
Imagens
Eu posso fornecê-los, se necessário
Sistema Operacional

RHEL 8,8
Docker versão 24.0.5, build ced0996

Contexto adicional
Executando sob composição usando o seguinte script de composição docker
version: '3.8'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80' # Public HTTP Port
      - '443:443' # Public HTTPS Port
      - '81:81' # Admin Web Port
      - '5090-6000:5090-6000' # Snag up any other ports we might want to proxy to
    volumes:
      - /opt/docker/npm/:/data

A única coisa que qualquer um dos arquivos de log emite ao salvar é

[aviso] 141#141: não foi possível construir proxy_headers_hash ideal, você deve aumentar proxy_headers_hash_max_size: 512 ou proxy_headers_hash_bucket_size: 64; ignorando proxy_headers_hash_bucket_size

E ao atingir o ponto de extremidade criado, as 2 coisas a seguir são registradas (junto com muitos 500s repetidos de tentar obter o favicon)
==> proxy-host-2_access.log <==
[15/Aug/2023:17:03:34 +0000] - 400 400 - GET http hostname.domain "/portainer/" [Client <IP_ADDRESS>] [Length 25] [Gzip -] [Sent-to hostname.domain] "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0" "-"

==> fallback_error.log <==
2023/08/15 17:03:34 [warn] 1471#1471: 512 worker_connections are not enough, reusing connections

It's simpler than you think, you just need to add a new location in custom locations in the location field /portainer/ and in the Forward Hostname / IP* fieldyour ip followed by / and the port number.
Because nginx itself already does the rest when saving the configuration
location /portainer/ {
   proxy_set_header Host $host;
   proxy_set_header X-Forwarded-Proto $scheme;
   proxy_set_header X-Real-Ip $remote_addr;
   proxy_set_header X-Forwarded-For $remote_add_x_forwarded_for;
   proxy_pass https://hostname.domain:9443/;
}


ONS mortality

The original code is in a new folder called Working files. This can be ignored for the package.

I'm happy for the 'Working files' directory to go into to the .Rbuildignore. I missed a commit to remove the .RData file as I'd moved it, so I've corrected that now. I'm going to put a .csv file version of the .RData file there for those who want it in .csv version. Being in .Rbuildignore that should be ignored by the package I hope but let me know if that's a problem.
I'll definitely write a vignette. I've used this data before for a dygraph chart that Ian Bowns originally built and I can codesome ggplot2 charts of data over time too. Thanks for the skeleton vignette, that's helpful as I've not written one before.
Thanks too for renaming the data file.

Great, thanks will merge now.  Are you happy to proceed with the static dataset, or do you want to go down the updater  function route that @tomjemmett was discussing on Slack.

Yes, very happy with the updater function idea @tomjemmett suggested. Thanks.

I think there are a few suggestions for functions to get data from api's or pull in datasets that are larger than the cran limits. We could pick this up via NHS-R slack if we want to implement this!


Support syntax for constant objects (strings, ints, floats)

Related to #554.

[x] Support syntax for strings, ints, floats
[x] Update built-in atoms to produce constant objects when possible
[x] Do not desugar constant objects by default

Example:
cat test.phi

{⟦
  c ↦ Φ.org.eolang.float(as-bytes ↦ 25.0),
  result ↦
    ξ.c.times(x ↦ ⟦ Δ ⤍ 3F-FC-CC-CC-CC-CC-CC-CD ⟧)  // 1.8
       .plus(x ↦ ⟦ Δ ⤍ 40-40-00-00-00-00-00-00 ⟧), // 32.0
  λ ⤍ Package
⟧}

stack run -- dataize --recursive \
  -d eo-phi-normalizer/data/0.38.4/org/eolang/float.phi \
  -d eo-phi-normalizer/data/0.38.4/org/eolang/int.phi \
  -d eo-phi-normalizer/data/0.38.4/org/eolang/bytes.phi \
  -r eo-phi-normalizer/test/eo/phi/rules/yegor.yaml \
  test.phi

{
  ⟦
    c ↦ 25.0,
    result ↦ 77.0,
    λ ⤍ Package
  ⟧
}

Sugar isn't used sometimes.
eo-phi-normalizer rewrite --chain test.phi

Rule set following Nov 2024 revision
Input:
{
  ⟦
    c ↦ Φ.org.eolang.float (
      as-bytes ↦ 25.0
    ),
    result ↦ ξ.c.times (
      x ↦ ⟦
        Δ ⤍ 3F-FC-CC-CC-CC-CC-CC-CD
      ⟧
    )
    .plus (
      x ↦ ⟦
        Δ ⤍ 40-40-00-00-00-00-00-00
      ⟧
    ),
    λ ⤍ Package
  ⟧
}
====================================================
Result 1 out of 1:
[ 1 / 1 ] Normal form: {
  ⟦
    c ↦ Φ.org.eolang.float (
      as-bytes ↦ 25.0
    ),
    result ↦ ξ.c.times (
      x ↦ ⟦
        Δ ⤍ 3F-FC-CC-CC-CC-CC-CC-CD
      ⟧
    )
    .plus (
      x ↦ ⟦
        Δ ⤍ 40-40-00-00-00-00-00-00
      ⟧
    ),
    λ ⤍ Package
  ⟧
}
----------------------------------------------------

@fizruk Hello team member, I noticed that the branch name "constant-objects" doesn't follow our naming convention. As per our policy, this results in a deduction of 12 points. In the future, please name your branches using the ticket number you're working on (e.g., "601"). This helps maintain consistency and clarity in our project management. Your current balance is now -12. Let's work together to improve our branch naming practices moving forward.

@fizruk Thanks for the contribution! You've earned +4 points for this: +4 as a basis; -8 for too many hits-of-code (2766 >= 200); -16 for way too many hits-of-code (2766 >= 800); -4 for very few (3) comments; +28 to give you at least something. Please, keep them coming. Your running balance is -24.

@deemp Great job on the review! 🎉 You've earned +10 points: +4 base, +16 for reviewing 2766 hits-of-code, with a slight -10 adjustment for only 4 comments. Keep up the good work! Your current balance is +52. Aim for more detailed feedback next time to maximize your points!


fix: Update the color of the transparency overlay in the jogging panel to match the background

This change fixes the background color of the transparency overlay.

You can probably just change the defaults in the TransparentOverlay component since those are the two places it's used

@evrys  Is there a reason the overlay needs to have a color?

@evrys Is there a reason the overlay needs to have a color?
Since the transparencyoverlay has a default color I need to override it. I can indeed check if "none" also works.

With and without color

Does it work for the "light" theme as well? IMO it should use a mui theme color?

No particular reason for it to have a color, TransparentOverlay component was just a quick hacky workaround from me so feel free to tweak it 🙂


module one assignment

i had it totally wrong the first time because i wasn't using all the warning sections.

:+1:


v1: API Proposal

tcell_ebiten
import "github.com/ezrec/tcell_ebiten"

Package tcell_ebiten provides an github.com/hajimehoshi/ebiten/v2 to github.com/gdamore/tcell/v2 translation layer.
 An empty ETCell is valid, and ready to use. An ETCell should not be copied.
When creating a new ETCell, use the following patterns to manage how the ETCell display resolutions.

Game.Layout() resolution follows outside size; Screen.Size() is layout size divided by font size.

et := ETCell{}

Game.Layout() fixed at 640x480 => Screen.Size() is layout size divided by font size.

et := ETCell{}
et.SetGameLayout(640, 480)

Screen.Size() fixed at 80x25 => Game.Layout() resolution is Screen.Size() times font size.

et := ETCell{}
et.SetScreenSize(80, 25)

Screen.Size() fixed at 80x25 => Game.Layout() resolution fixed at 640x480, drawing offset to 100,200

et := ETCell{}
et.SetScreenSize(80, 25).SetGameLayout(640x480).SetGameDrawOffset(100, 200)

type ETCell struct {
    // contains filtered or unexported fields
}

func (*ETCell) Game
func (et *ETCell) Game() ebiten.Game

Game returns the ebiten.Game interface for this ETCell

func (*ETCell) Screen
func (et *ETCell) Screen() tcell.Screen

Screen returns the tcell.Screen interface for this ETCell.

func (*ETCell) SetFontBold
func (et *ETCell) SetFontBold(font_source any) *ETCell

SetFontBold sets the bold font to be used, if not the same as the normal font.

func (*ETCell) SetFontItalic
func (et *ETCell) SetFontItalic(font_source any) *ETCell

SetFontItalic sets the italic font to be used, if not the same as the normal font.

func (*ETCell) SetFontNormal
func (et *ETCell) SetFontNormal(font_source any) *ETCell

SetFontNormal sets the normal font to be used. It can use any of the following: - golang.org/x/image/font.Face - github.com/hajimehoshi/ebiten/v2/text/v2.Face - io.Reader (assumed to be a TTF font file)

func (*ETCell) SetGameDrawOffset
func (et *ETCell) SetGameDrawOffset(x int, y int) *ETCell

SetGameDrawOffset sets an offset with which to draw the text grid.

func (*ETCell) SetGameDrawScaling
func (et *ETCell) SetGameDrawScaling(x, y float64) *ETCell

SetGameDrawScaling scales the text grid (after offsetting). Default is x = 1.0, y = 1.0

func (*ETCell) SetGameLayout
func (et *ETCell) SetGameLayout(width int, height int) *ETCell

SetGameLayout forces a fixed Game.Layout() screen resolution.

func (*ETCell) SetGameLayoutHighDPI
func (et *ETCell) SetGameLayoutHighDPI(enabled bool) *ETCell

SetGameLayoutHighDPI sets the scaling of the text area to match the monitor's pixel resolution, instead of Ebiten's "native" scaling.

func (*ETCell) SetGameUpdateInputCapture
func (et *ETCell) SetGameUpdateInputCapture(area image.Rectangle) *ETCell

SetInputGameCapture sets the ebiten layout area where all mouse and key events are captured. If area is Empty (default), the entire ebiten game area's events are captured.

func (*ETCell) SetGameUpdateKeyCapture
func (et *ETCell) SetGameUpdateKeyCapture(area image.Rectangle) *ETCell

SetKeyCapture sets the ebiten layout area where key events are captured. If area is Empty (default), the entire ebiten game area's events are captured.

func (*ETCell) SetGameUpdateMouseCapture
func (et *ETCell) SetGameUpdateMouseCapture(area image.Rectangle) *ETCell

SetMouseGameCapture sets the ebiten layout area where mouse events are captured. If area is Empty (default), the entire ebiten game area's events are captured.

func (*ETCell) SetScreenBeepHandler
func (et *ETCell) SetScreenBeepHandler(on_beep func()) *ETCell

SetBeepHandler sets the action that will be called when tcell.Screen.Beep() is called. Default is no action.

func (*ETCell) SetScreenCursorColor
func (et *ETCell) SetScreenCursorColor(color tcell.Color) *ETCell

SetCursorColor changes the color of the text 'hardware' cursor.

func (*ETCell) SetScreenSize
func (et *ETCell) SetScreenSize(cols int, rows int) *ETCell

SetScreenSize forces a fixed Screen.Size() text grid layout.

@memmaker - can review take a look at this proposed API? It should allow quite a bit more flexibility than the current one, and can handle a future where ebiten.Layout and tcell.Screen have interfaces that can't be mutually embeddable.

If you implement HiDPI right, you won't have to expose any toggle to Enable or Disable it.

I believe you are correct - I'll have it in HDPI mode always.

I also found the need to emulate the fallback behaviour for glyphs as implemented in terminals: Using a secondary font for some pre-configured glyphs instead of substituting the glyphs when they are not available.

The ebiten/v2/text/v2.MultiFont wrapper can get you what you want now, I believe.
Thinking about that problem more, it might be useful to have a tcell_ebiten/font.MonoFace, which could have 'factory structs' to make font faces that can handle these scenarios.
type FontStyle int
const (
  FontStyleNormal = FontStyle(iota)
  FontStyleBold
  FontStyleItalic
)

type FontFace interface {
    Size() (width, height int)  // Character cell size, in pixels.
    Descender() int             // Descender metric of the font (used for 'bar' cursor placement).
    Glyph(character rune, style FontStyle) (glyph *ebiten.Image, is_substitute bool)
}

// Implements FontFace
type MonoFace struct {
   // private fields
}

// Takes any of the following types:
// - image_font.Face
// - ebiten_text.Face
type NewMonoFace(source any) MonoFace

// Apply a rune mapping to a font.
// implements FontFace
type FontFaceWithRuneMapping struct {
    FontFace
    RuneMapping map[rune]rune
}

// Have a font be the 'backup' for another font, if it doesn't have the right runes.
// implements FontFace
type FontFaceWithBackup struct {
  FontFace
  Backup FontFace
}

// Have alternate fonts for bold or italic styles.
// implements FontFace
type FontFaceWithStyle struct {
    FontFace  // Normal font.
    Bold FontFace
    Italic FontFace
}

Vastly simplified API:
package etcell // import "github.com/ezrec/etcell"

type ETCell struct {
	// Has unexported fields.
}
    ETCell is the ebiten to tcell manager. An empty ETCell is valid, and ready
    to use. An ETCell should not be copied.

func (et *ETCell) Exit(err error)
    Exit the tcell application.

func (et *ETCell) Game() *ETCellGame
    Game returns the a struct compliant with ebiten.Game interface

func (et *ETCell) GetGameSize() (width, height int)
    GetGameSize() returns the size of the image to draw (without GeoM scaling)

func (et *ETCell) Run(runner func(screen tcell.Screen) error) error
    Run a tcell application

func (et *ETCell) Screen() *ETCellScreen
    Screen returns a struct compliant with the tcell.Screen interface

func (et *ETCell) SetFont(face font.Face) *ETCell
    SetFont sets the font for the text cells.

func (et *ETCell) SetGameGeoM(geom ebiten.GeoM) *ETCell
    SetGameGeoM sets the Ebiten.GeoM for display by Game.Draw() and mouse input
    mapping by Game.Update().

func (et *ETCell) SetScreenCursorColor(color tcell.Color) *ETCell
    SetScreenCursorColor sets the color of the text 'hardware' cursor.

func (et *ETCell) SetScreenSize(cols int, rows int) *ETCell
    SetScreenSize resizes the text grid layout.

(available on the jmcmullan/issue-30-api-v1 branch for testing)

Thinking about that problem more, it might be useful to have a tcell_ebiten/font.MonoFace, which could have 'factory structs' to make font faces that can handle these scenarios.

How would I implement this scenario with that approach?
MainFontName: Monofonto-Regular
FallbackFontName: MesloLGS NF Regular
ForcedFallbackRunes: ▁▂▃▄▅▆▇∞↨►☙─│┌┐└┘├┤┬┴┼╭╮╯╰
ForcedFallbackCodepoint: 9664
ForcedFallbackCodepoint: 9668

I want the code points I have configured to always be rendered using the fallback font and everything else should use the main font.

I'll need to add an FaceWithOnlyRunes{}, so that you could use something like the following:
mono_face := font.NewMonoFontFromTTF(monofonoto_ttf, 11.0)
meslo_face := font.NewMonoFontFromTTF(meslolgs_ttf, 11.0)
forced_face := font.FaceWithOnlyRunes{
   Face: meslo_face,
   Runes: append([]rune("▁▂▃▄▅▆▇∞↨►☙─│┌┐└┘├┤┬┴┼╭╮╯╰"), rune(9664), rune(9668)),
}
font_face := font.FaceWithBackup{
   Face: forced_face,
   Backup: mono_face,
 }

Also has a dramatic performance improvement over the v0 API.

Where does that come from?

It's an internal implementation change - the old implementation updated an off-screen ebiten.Image during a Screen.Show(), which was terribly inefficient under the ebiten framework, as it wasn't able to the the GL draw list to optimize the drawing of the character cell 'sprites'.
The new implementation moves that work to Game.Draw(), allowing ebiten to use a global hash of all of the character point images, and just updates a draw list referencing those during Draw().

(Looks like I inadvertently pushed my 'etcell' repo name change I decided against. Reverted.)

Released


Hard drives -> check hard drives status - situation when the disk usage file missing

Checking system status...
500 Internal Server Error: Error reading disk usage log file.
... regardless the value in the disk usage file /tmp/dfn_disk_usage, update at usage status - to get fresh data
(command: df -h | egrep "Filesystem|data")
(for dives not currently mounted use value from the /tmp/dfn_disk_usage file)

Resolved! System now only checks for the dfn_disk_usage file if the drives are not mounted. If the file doesn't exist WHILE the drives are unmounted, the user is notified of this, and told to power + mount external HDDs.


Where is private key for test deployment?

Since the owner is hard coded into all proxy contracts:
https://github.com/oraclesorg/oracles-contract/blob/master/src/util/BallotsManagerProxy.sol#L8
https://github.com/oraclesorg/oracles-contract/blob/master/src/util/BallotsStorageProxy.sol#L8
https://github.com/oraclesorg/oracles-contract/blob/master/test/util/deploy.js#L22-L26
I'd like to know how to run the tests without private key. Or do u expect a developer to make a change in all those contracts + tests

https://github.com/oraclesorg/oracles-contract/blob/master/Makefile#L21
found it


[Nomination]

Who are you nominating?
What are you nominating them for?
Please provide links to their work.

No one nominated.


Update README.md

Please checkout my code

Ok, fine! But can you add the 'version' word before '5.0'

Thank you


E-Mail: Show only one

(1) @serlo.org mail
(2) first email shown

As discussed:
only add e-mail with type "work"


[B17] Manually placed Vis Crystals do not spread

I am not sure weither or not this applies to naturally generated ones, too, or if this even is intentional (the generation stat only allows clusters of generation 3 and lower to spread).
If it is intentional and for manually placed clusters only, I want to request the option to harvest single shards from the cluster, because otherwise manually placed clusters serve little purpose.

I've managed to build a crystal farm in which crystals have successfully spread to new clusters. Crystal spread is much slower than cluster growth, but it eventually does happen under the right conditions. Freshly-planted crystals do seem to be "generation 1", so generation shouldn't be a limit until you reach the edge of a large patch of extended growth.
More Info
Part of the trick is building a 3D lattice of stone blocks for the crystals to grow within. Ideally, _every_ air block in the lattice should be orthogonally adjacent to _exactly_ one stone block, and diagonally adjacent to as few stone blocks as possible. These conditions maximize the chance that any given attempt at crystal spread will be successful (provided that Vis levels are high enough to trigger an attempt at spread).
For comparison, a crystal planted on a flat stone floor with a ceiling higher than two blocks has 27 possible locations to spread to - but nine are blocked by stone, nine have no stone next to them for the crystal to attach to, and one is blocked by the source crystal itself, so only 8 of 27 attempts to spread will be successful. At least one tileable space-filling arrangement exists which raises the odds to 22 in 27, and there are arrangements which raise the odds to 25 in 27 for the first-generation cluster to spread (but less for second-generation and further). In other words, setting up a proper "growth medium" for crystals can approximately triple the speed at which they spread.
Then, you "merely" have to repeatedly cycle the Vis using SIlverwood trees, Vis Batteries and a redstone timer, holding the Vis at least 10 units above its natural level as frequently and for as long as possible - but not too high, or the Vis starts degrading into Flux. I say "merely" because it's easy to do crudely, but looks like it'll be a pain to optimize. Still, even a crude 80-second on/off timer connected to a couple of Vis Batteries has got me enough crystal spread to be worth harvesting - though I wouldn't have bothered if quartz wasn't so dangerous to harvest with my currently-installed mods. Making Vis crystals in a Thaumatorium is so much faster and easier, if you have the quartz for it.

And you did that in the current version?
 I've been waiting for literal hours. :/
Granted I only tried growing them on pillars, so they could only spread upward/downward, but still.
I'll try giving them more growth options.

Yep, b17, current version. It took a while for the crystals to start spreading, but not hours...more like several minutes, cumulatively across a few Vis cycles, from 12 fully-grown clusters scattered around the chunk. I assure you it's possible, if not very practical.

Huh. Welp. Turns out this is just painfully slow :x
1/16th of the speed of regular growth and then the additional x/27 chance on top of it with x being the number of valid places to grow to. So say you just plant this on a stone plane like someone not looking this stuff up too much, you'd have 8 free spaces, spreading would be 1/16 * 8/27 = a 1/54th of the growth rate.
Imo 1/16th spread rate compared to growth rate alone is enough to be sufficiently slow. Maybe rerun the random position that it tries to spread to until it finds a suitable new position. Give it a 1/16th chance or something to not rerun every loop, so it preserves a chance to fail due to lacking space.
I made a thing on wolfram alpha where you can get your chance to fail due to lack of space. a is chance to fail every loop, b is number of actually valid places to spread to.
http://www.wolframalpha.com/input/?i=solve+a*(sum+(((27-b)%2F27)%5Ei)*((1-a)%5E(i-1)),+i+%3D+1+to+infinity)+where+a+%3D+1%2F16,+b%3D8
tried to plot it for forever but apparently i am exceeding computation time :/
for reference with a=1/16:
b=25 -> chance to fail ~0.5% vs current ~7%
b=16 -> ~4% vs ~41%
b=8 -> ~13% vs ~70%
b=4 -> ~26% vs ~85%
b=2 -> ~44% vs ~93%
b=1 -> ~62% vs ~96%

Yup, it is super slow. If I made it any faster than worldgen crystals will take over the world :p

but the spread is limited by the generation, no?

Not really - the aura can naturally go over the normal baseline limit now during the full moon.

No, I mean that crystals can't spread if their generation is too high. The thing where newly spawned clusters have 1 generation higher than the cluster that spawned them.


Fix pre-commit CI

A lot of versions were plain outdated and exploded horribly due to various package updates.
This just bumps all of them to their latest versions and makes things work again.

Great, I wasn't sure what bits of the CI were rotten!


i get error when the action run

hi,
each time I run the naabu - workflow I get the same error: "Error: Process completed with exit code 2.".
any solution?

@ayadim thanks for creating this issue, it should be now fixed with https://github.com/projectdiscovery/naabu-action/pull/3

thank u for the response. i face a problem also with nuclei-action !
regards

it was fixed thank u.


How to Use Your Audio Data Set

Hello, this code is for TIMIT data set. If you change it into your own audio data, it will not work. If you use your own audio data as a data set, how can I do it? Thank you very much for your guidance. #

Did you finde out? I am having the same issues, I have a dataset where the number of utterances per speaker is different so I think I need to change how the data is loaded

Is this needed? If you want to generate embeddings for your own audio data to feed into something like uis-rnn, do you need to also train your own speaker embedding model or can you just use the model trained from TIMIT data?
I thought the point of training an embedding model was to reduce the dimensionality of the audio. Raw sound has an huge amount of information in it, but the voice information we're interested in is only a relatively small part of that. Training an embedding model is a way of simplifying the audio into a form that's a lot smaller, yet still captures the unique signature of the voice data. To that end, we shouldn't have to train our own embedding model from our own data right, assuming our audio is in English?
Where you need to use your own data when training is when using uis-rnn.