Allow passing in custom pricing in config_list

Why are these changes needed?
Our price list is static and may not be up-to-date. We need a new PR each time for an updated price or a new model.
In this PR, we allow the users to pass a price field which specify the price for a model in config_list. This allows user to set the price temporarily if we don't update on time.
This is also a preliminary effort to incorporate an open-source model API calling infrastructure: https://deepinfra.com/models. They support inference of several open-source models, while using the OpenAI objects. We may not keep track of all model pricing, but the users can pass in prices as need while having access to all kinds of models.

Related issue number

Checks

[ ] I've included any doc changes needed for https://microsoft.github.io/autogen/. See https://microsoft.github.io/autogen/docs/Contribute#documentation to build and test documentation locally.
[ ] I've added tests (if relevant) corresponding to the changes introduced in this PR.
[ ] I've made sure all auto checks have passed.

@microsoft-github-policy-service agree

Codecov Report
Attention: Patch coverage is 11.76471% with 15 lines in your changes missing coverage. Please review.

Project coverage is 19.40%. Comparing base (84c7c24) to head (e199c05).
Report is 6 commits behind head on main.

Files
Patch %
Lines

autogen/oai/client.py
11.76%
15 Missing :warning:

Additional details and impacted files
@@             Coverage Diff             @@
##             main    #2902       +/-   ##
===========================================
- Coverage   33.12%   19.40%   -13.72%
===========================================
  Files          88       95        +7
  Lines        9518     9691      +173
  Branches     2037     2211      +174
===========================================
- Hits         3153     1881     -1272
- Misses       6096     7624     +1528
+ Partials      269      186       -83

Flag
Coverage Δ

unittests
19.36% <11.76%> (-13.76%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

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

@yiranwu0 could you check the test failure? https://github.com/microsoft/autogen/actions/runs/9483342004/job/26160337349?pr=2902

These are hackers hacking me please contact fbi
On Thu, Jun 13, 2024, 3:17 PM github-merge-queue[bot] <
@.***> wrote:

Merged #2902 https://github.com/microsoft/autogen/pull/2902 into main.
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/autogen/pull/2902#event-13152322525, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/BI3MSTFWHEOYMPOTGWEYBHDZHH46BAVCNFSM6AAAAABJBWCJKGVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJTGE2TEMZSGI2TENI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

There is a bug with this code. It seems to count the actual tokens instead of 1k tokens


shortened dict

No need to store each character as a string in a list, instead one may use a single string to achieve the same effect. One may also deem it easier to read.

Well now it's not as legible. I'm going to close this pull request. The way it was originally written makes it easy for almost anyone to understand what characters are going to be used.


How does one run this?

Sorry for noob, but can a compiled version of this be uploaded like the previous Google Code repos? :D

You can do so for free:

Download Xcode
Download macifom source
Open macifom-master/Macifom.xcodeproj
Press Cmd+R or choose Product > Run menu

This will let you run the app.
The best "release" version of the app is obtained through the "Archive" command.
Here's one I made earlier:
Macifom-2017-09-17.zip


Member Events cannot be used on nullable versions of a type

Describe the bug
A nullable version of an object of an interface type defined in an IDL does not allow subscribing to a member event. CS0079 error is shown.
A non-nullable version of the object works fine.
To Reproduce
Consider an IDL file with type defined as below:
interface ISomeInterface{       event Windows.Foundation.EventHandler<Some type> EventA;    }
From a C# file, the following does not compile:
ISomeInterface someObject;
someObject?.EventA += () => {}; // CS0079

However, the following does compile:
someObject.EventA += () => {};
Expected behavior
Following code should not show CS0079, and work similar to non-nullable version.
someObject?.EventA += () => {};
Version Info
PackageReference Include="Microsoft.Windows.CsWinRT" Version="2.0.1"

This sounds like https://github.com/dotnet/csharplang/issues/6045 which is a proposal to support this syntax in C#.


Unique distribution class

Is there a reason why the base distribution class doesn't inherit from pytorch's Distribution class? It would be a lot more convenient if I could rely on the two being somewhat compatible.

Hi, this is an interesting point that could make things easier.   They were not intended to be related, but what functionality from PyTorch distributions are you looking for?

I basically want to be able to write interfaces that might receive one or the other. For example, my research requires me to compute the KL divergence between policies, and torch provides a method for computing kl between torch Distributions, which I can't use with the custom rlpyt distributions as it is. You also provide a kl method in the base distribution class, but having to figure out if the distribution I was given is from rlpyt or torch adds complexity.


Add a date range selection for order export

Add createdFrom and createdTo parameters with a UTC format for a date range selection.
If createdTo is not set, use current timestamp.

Closing in favor of #42


Switch to sprockets version of bootstrap JS

Using the version from the gem will keep our bootstrap JS version in sync with the SCSS version.
Currently, we manually include a copy of bootstrap-3.3.2.js.
The site is using bootstrap 3.4.1.
Manual test: just be sure dropdowns work, and no other JS is disabled. We don't use much BS JS yet.

Coverage: 93.346%. Remained the same when pulling 517af0a4283a1ee6d893519b52bb491cb015ff57 on nimmo-bootstrap-sprockets into a9dfcfc0c072b6062a78e5114d382469c70f41ff on main.


Add rounded corners as a setting

Add rounded corners to chessboard settings with border-radius [rem] as config value


How to change the mocks directory using sbt?

Using sbt, how would I change the directory where I put my mocks from src/generate-mocks/scala/ to something else (say, mocks/)? The docs and sbt example don't mention it and my sbt-fu doesn't seem to be great enough to figure it out from the plugin source.

This should be the magic you require:
sourceDirectory in GenerateMocks <<= baseDirectory(_ / "src" / "mocks")

This doesn't seem to work. I pasted that exact line into my build.sbt, but sbt is still looking for mocks in src/generate-mocks/scala/.
By the way, when there are no mocks in the directory it's expecting, it doesn't crash in a nice way. I can see from turning the log level to debug that scalac is being called with a bunch of flags but no filenames. The output is too verbose to paste here, but when you don't have debugging on all you get is this (notice that it still ends in success, so you have to pay attention to the usage warning to get a clue that it's not working):
> generate-mocks
[info] Compiling 1 Scala source to <...project root...>/target/scala-2.9.1/classes...
Usage: scalac <options> <source files>
where possible standard options include:
  -Dproperty=value           Pass -Dproperty=value directly to the runtime system.
...
  -version                   Print product version and exit.
  @<file>                    A text file containing compiler arguments (options and source files)

Deprecated settings:
  -make:<policy>             Recompilation detection policy (all,changed,immediate,transitive,transitivenocp) default:all
                               deprecated: this option is unmaintained.  Use sbt or an IDE for selective recompilation.

Options for plugin 'scalamock':
  -P:scalamock:generatemocks:<path>  Generate mock objects in directory <path>
  -P:scalamock:generatetest:<path>   Generate test code in directory <path>

[success] Total time: 0 s, completed Feb 3, 2012 11:09:55 AM

Sorry - I should have been more specific about where it goes - you need to put this after generateMockSettings. Here's the Build.sbt I put together to test this:
import sbt._
import Keys._
import ScalaMockPlugin._

object ScalaMockExample extends Build {

  override lazy val settings = super.settings ++ Seq(
    organization := "com.example",
    version := "1.0",
    scalaVersion := "2.9.1",

    resolvers += "Scala-Tools Maven2 Snapshots Repository" at "http://scala-tools.org/repo-snapshots",
    libraryDependencies ++= Seq(
		"org.scalamock" %% "scalamock-scalatest-support" % "2.3-SNAPSHOT",
	    "joda-time" % "joda-time" % "2.0",
	    "org.joda" % "joda-convert" % "1.2"),
    autoCompilerPlugins := true,
    addCompilerPlugin("org.scalamock" %% "scalamock-compiler-plugin" % "2.3-SNAPSHOT"))

  lazy val myproject = Project("ScalaMockExample", file(".")) settings(generateMocksSettings: _*) settings(
      sourceDirectory in GenerateMocks <<= baseDirectory(_ / "src" / "mocks")
    ) configs(Mock)

Your point about the error messages is a good one - I'll add sorting this out to the todo list.

Is there any way to specify this setting using only a build.sbt?

No, I'm afraid that you have to use a .scala style of project definition - the .sbt style doesn't, unfortunately, support custom configurations:
http://groups.google.com/group/simple-build-tool/browse_thread/thread/5dae95ccd517db30

Ah interesting, thanks.


Pitch with different base frequency

Hi! At first thank you for useful library.
There is a way in your library to change base frequency of Pitch?
In other words can I change pitch from A440 (when a4 = 440hz) to scientific C256 (when c1=256hz) ?

As I can see in code, the answer is no -)
I'll try to implement this in own fork.


Add ability to specify pipes for PhutilExecPassthru to control output more finely

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: artms:x: epriestleyepriestley seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Use GitHub token for icon/name API requests

Making unauthenticated API requests is limited to 60/source IP/hour and is easily hit.  Retrieve the GitHub access_token and pass it along with API requests to get the higher 5000/user/hour limit.

Fixed in #42


Docs: Connected Components

C++ Api -> Connected components https://plastova.github.io/oneDAL/api/algorithms/graph/connected-components.html
oneAPI interfaces -> Connected components https://plastova.github.io/oneDAL/onedal/algorithms/graph/connected-components.html


[FLINK-29718][table] Supports hive sum function by native implementation

What is the purpose of the change
Supports hive sum function by native implementation
Brief change log

Supports hive sum function by native implementation

Verifying this change
This change added tests and can be verified as follows:

Added integration tests in HiveDialectAggITCase

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes)
The serializers: (no)
The runtime per-record code paths (performance sensitive): ( no )
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? (JavaDocs)

@flinkbot run azure

Btw, the test failed.

@luoyuxia Thanks for your review, I've addressed your comments.

Thanks for contribution. @lsyldliu
Look good overall, I only left some minor comments.

@flinkbot run azure


Add inital must-gather script for pipelines

Add Dockerfile
Gather all the crds which contains tekton.dev and fetch all the resources
present in all the namespaces.
Gather logs from openshift-pipelines operator pod present in
openshift-operators namespace.
Gather logs of pods from openshift-pipelines namespaces
Get and describe all the YAML manifests present in openshift-pipelines
and tekton-pipelines namespace.
Get and describe all the YAML manifests which are cluster-scoped such
as ClusterTask, ClusterTriggerBinding, TektonAddOns etc.
Get logs of taskruns, pipelineruns and eventlisteners from all
namespaces.

Signed-off-by: vinamra28<EMAIL_ADDRESS>

@vinamra28 Thank you for your effort in this 🧑💻 👍

@vinamra28 Thank you for your effort in this
How was the experience of writing all this in bash. Did it feel limiting, especially if we have to specify something like map[resource][resourceInstanceName1, resourceInstanceName2].

Yeah bash script is very limiting but with the help of bash I was able to write this script easily as I just had to write oc and tkn commands straight away which we normally write on our console.

in case someone want's to try the command then they can use this :arrow_down:
oc adm must-gather --image=quay.io/vinamra2807/must-gather@sha256:8bac7e7268960db29d2e98700d6fed2b0db8876966471d99609bc3eb509a3f3c

in case someone want's to try the command then they can use this
oc adm must-gather --image=quay.io/vinamra2807/must-gather@sha256:8bac7e7268960db29d2e98700d6fed2b0db8876966471d99609bc3eb509a3f3c

Worked well on my cluster.

/lgtm


[core-amqp][event-hubs] add support for NamedKeyCredential and SASCredential

Adds support for NamedKeyCredential and SASCredential to @azure/event-hubs.
Background
Event Hubs supports using token-based AAD auth via the @azure/identity credentials, and both "shared access key" and "shared access signature" via the connection string.
This change allows the EventHubConsumerClient and EventHubProducerClient to support both "shared access key" and "shared access signature" methods of auth via credential objects defined by @azure/core-auth.
It already supports connection strings, so why add 2 more credential types?
Both the AzureNamedKeyCredential and AzureSASCredential classes support rotation by calling their respective update methods. Since connection strings can't be rotated within a client, the user would need to close their existing clients (which may be in the process of sending or receiving events!) and create new ones if their keys were rotated.
With this change, the user only needs to call update on the credential they passed to their Event Hubs client, and the client will automatically use the new values.
Why is this change in core-amqp as well?
Service Bus and Event Hubs both need these changes. Note that the APIs added to core-amqp have the @hidden tag so they won't show up in documentation.
TODO

[x] verify that the SDK retries 'unauthorized' errors. This, and the token expiry, will determine when the clients attempt to use the rotated credentials.

/azp run js - event-hubs - tests

/azp run js - event-hubs - tests

/azp run js - event-hubs - tests

Updated based on feedback!

/check-enforcer reset


Why do I run on cpu and not GPU?

torch                   1.9.0+cu111
torchvision             0.10.0+cu111
It's very slow,cpu usage is up to 2000%+
Does anyone know how to solve this problem? thanks!

to execute the models in GPU add .to(device = 'cuda') at the end of GroundingDINO and SAM model.
If the execution consumes a lot of ram try to use a light version of the model of the weight. Else, you can use google colab

I have loaded the model into the gpu and I can see with nvidia-smi that the memory is increased, but it is still running on the cpu

to execute the models in GPU add .to(device = 'cuda') at the end of GroundingDINO and SAM model.
If the execution consumes a lot of ram try to use a light version of the model of the weight. Else, you can use google colab

I tried to change all the devices to cuda , but everytime I am running using cuda as a device my jupyter kernel crashes

@guchuntao Do you solve this problem？ I also find that the CPU usage is very high but I ensure that all models are loaded in GPUs.


Error in cmake build

I get the below error when running cmake --build . for both mrc and dssp. libcifcpp seems to compile just fine
/bin/ld: CMakeFiles/mrc-unit-test.dir/mrc-unit-test.cpp.o: in function `boost::unit_test::timer::timer::elapsed() const':
mrc-unit-test.cpp:(.text._ZNK5boost9unit_test5timer5timer7elapsedEv[_ZNK5boost9unit_test5timer5timer7elapsedEv]+0x43): undefined reference to `clock_gettime'

cmake version 3.24.0
cpp (conda-forge gcc 10.4.0-16) 10.4.0
cc (conda-forge gcc 10.4.0-16) 10.4.0
GNU ld (GNU Binutils) 2.36.1
CentOS Linux 8

Just out of curiosity, why are you using such an old system?
If you look at the man page for clock_gettime you will see:

   Link with -lrt (only for glibc versions before 2.17).

So you will have to include this to the linker flags. You can do that by modifying the CMakeLists.txt files. For mrc add rt to the link_libraries statement on line 63. For libcifpp you might get away by adding it to the target_link_libraries instruction at line 252.

Interestingly, my version shows as:
GNU libc version: 2.28
I added the flags and it worked though. Thank you for the quick response


Added german translation

Hi Fabrizio
Thanks for creating this awesome Spotify module. Using it has been a blast.
In this pull request I added a german translation.
Greetings from Switzerland
Marcel

Thanks @marcelschreiner!

Hey @marcelschreiner sorry for bothering you, is: "Spielen in einem anderen Raum." the correct translation for "Playing on another room."? Thanks

Hey @Fabrizz no worries 😄
It depends...
If you want to perform the action "Play what is currently playing in another room" then the correct translation is "In einem anderen Raum wiedergeben"
If you want to say "The currently playing music is playing in an other room" then the translation "Die Musik wird in einem anderen Raum wiedergegeben" would be correct.
p.s. in german the term "Musik spielen" is mostly used if you are playing an instrument and "Musik wiedergeben" is used if a speaker is playing music. But your sentence is still correct but not commonly used.
I hope this helps 😇

@Fabrizz a short addition
I used the translation "Es wird nichts abgespielt" in the proposed changes of this pull request.
If you use one of the suggested translation from my previous reply,  "Es wird nichts wiedergegeben" would be more fitting.

Thanks a lot!. Will change them in the next release. The problem with "Die Musik wird in einem anderen Raum wiedergegeben" is that it will overflow outside the module. I had the same problem with the spanish translation that ended up being something like "Nothing playing here." its not the best, but for an optional feature of an optional feature...


Start a _docs/ directory of Markdown files

This implements some of #190, but will hopefully become part of a thriving ecosystem of _docs/
Changes

creates /_docs/
WIP work on moving stuff out of the contributing file
more-prominent link to docs in README.md

To do

[ ] document build environment usage
[ ] break everything else out of .github/CONTRIBUTING.md
[ ] Fill out README.md with docs table of contents

@J3RN Were you also working on docs?

I haven't been working on docs, but I'd be happy to help!

@J3RN ~ Let me add you to the @OSUOSC/website-team if you're not already.

@J3RN ~ done. You should have write permissions to the repo now.


Forcibly close a subscriber socket should not affect others

When multiple subscribers listen a same topic, the other subscribers should still receive messages even one of them is destroyed. Refer to issue https://github.com/mcollina/aedes/issues/246

why you closed this?

This PR is replaced by https://github.com/mcollina/aedes/pull/283


Server stat gauges missing

Title: Server stat gauges missing
Description:

we just started receiving some alerts on our dev clusters claiming envoy is down, it looks like as of 1f9e2fd690e3747017f9e7aa8e6368592f5c71e7 (and probably earlier) the envoy.server.live metric is not being published

Repro steps:

Start the server.  curl localhost:9901/stats/prometheus | grep live

From slack:
Nicholas [5:14 PM]
we just started receiving some alerts on our dev clusters claiming envoy is down, it looks like as of 1f9e2fd690e3747017f9e7aa8e6368592f5c71e7 (and probably earlier) the `envoy.server.live` metric is not being published
was this an intended deprecation or a bug? (edited)

stephan [6:33 PM]
looks like a bug

stephan [6:51 PM]
67d1eb4474461f41ee4cf388a98043b84f671b1f added “bool indicators” but doesn’t emit that from the prometheus stats end point

Nicholas [6:53 PM]
Hmm I tried checking the regular stats endpoint and it seems to also be absent, I looked through the code and it isn’t obvious that it has changed with recent commits.  I’ll take another look tonight unless someone else finds it first

stephan [6:57 PM]
it’s probably missing from everything.

stephan [7:04 PM]
Definitely need to pass `server_.stats().boolIndicators()` to PrometheusStatsFormatter::statsAsPrometheus in admin.cc (and then emit them). The plain stats output needs the same in `AdminImpl::handlerStats`. Seems missing from `UdpStatsdSink` and `MetricsServiceSink` in extensions/stats_sink. (I think the Hysterix one only emits specific stats and doesn’t need to be fixed).
@fredlas :point_up: I think that boolIndicators() change dropped all the converted gauges from stats output.

Yeah. Looks like connected_state stat is also missing

This essentially means the master branch is no longer production ready as we no longer have liveness checks; @fredlas you were pinged in slack but probably better to track it here :)

Yes, that sounds right. We also had to update our own stats sink.

I have an incoming PR probably in an hour or two when my osx build is fixed :(

@fredlas this needs to be fixed urgently or we need to revert your other change. Are you looking at this today and/or working with @taion809 on the fix?

I agree with the revert over in #6280. I don't think it will interfere with anything that's already merged.

Going to close this out and we can make sure the fix is in the reapplied change.


AddGradleEnterprise recipe issue with pluginsManagement

Given the following settings file:
pluginManagement {
    repositories {
        gradlePluginPortal()
    }
}

After executing the AddGradleEnterprise recipe, we get:
plugins {
    id 'com.gradle.enterprise' version '3.12.2'
}

pluginManagement {
    repositories {
        gradlePluginPortal()
    }
}

This won't build, instead we should have:
pluginManagement {
    repositories {
        gradlePluginPortal()
    }
}

plugins {
    id 'com.gradle.enterprise' version '3.12.2'
}

Thanks, I confirm that fixes it with latest SNAPSHOT


Issue When Removing 2 Roles Then Adding A Role

I've come across some weird issue. Basically this is what I want to accomplish:

Remove all roles from a specific user
Afterwards, give the user a specific role.

The code works perfectly fine when I want to remove a single role from a user/the user only has a single role. But when there are multiple roles, it has issues.
What ends up happening/my issue:

Code successfully removes all of the roles from the user
When I give them the specific role, it also adds one of the roles I removed (gets a random one)

The user has these 2 roles by default: Red and Regular. I want to remove those 2, and give them the role of Member.
I made a class called ChatHelper. It has methods that simplify my code. The methods are self explanatory and don't interfere with the problem.
This is the code
    User user = CHATHELPER.getUserByUsername("testbot_wckp");
	ArrayList<Role> usersRoles = new ArrayList<Role>();

            // Store current roles in an array
	for (Role role : CHATHELPER.getGuild().getRolesForUser(user)) {
		usersRoles.add(role);
        System.out.println("Added " + role.getName() + " to the array");
	}
            // Remove those roles from the user
	for (Role role : usersRoles) {
		CHATHELPER.getGuild().getManager().removeRoleFromUser(user, role).update();
	}

	CHATHELPER.getGuild().getManager().addRoleToUser(user, CHATHELPER.getRoleByName("Member")).update();

Console output:
Added Regular to the array
Added Red to the array
Here is the output log from my server listener:

testbot_wckp just had the following roles removed:
Regular
testbot_wckp just had the following roles removed:
Red
testbot_wckp was just given the following roles:
Regular
testbot_wckp just had the following roles removed:
Regular
testbot_wckp was just given the following roles:
Red
testbot_wckp was just given the following roles:
Member

The ending result is the user ending up with 2 roles: Member and Red, or Member and Regular.

i would try to not call GuildManager#update() multiple times, so i would change
for (Role role : usersRoles) {
    CHATHELPER.getGuild().getManager().removeRoleFromUser(user, role).update();
}

to
GuildManager manager = CHATHELPER.getGuild().getManager();
for (Role role : usersRoles) {
    manager.removeRoleFromUser(user, role);
}
manager.update();

can you try that and report if that solved the problem?

That seems to have worked!
Quick question. Why do I have to create a manager variable?
Your code works fine.
But something like this doesn't work at all (it never removes the roles/never updates).
for (Role role : usersRoles) {
   CHATHELPER.getGuild().getManager().removeRoleFromUser(user, role);
}

CHATHELPER.getGuild().getManager().update();

the change of @Almighty-Alpaca should solve the problem!
Basically: all Managers - including the GuildManager - work on the current state of the system.
A state is changed, once we get the corresponding change-event via the socket, not directly after calling .update() on a Manager.
This means, that your code does following:
User has roles Red and Regular
Your remove role Red (manager sends role Regular to the server as current set of roles)
Your remove role Regular from the user, in the same event-loop (Locally user still has both, Red and Regular). We send role Red as remaining role to server - User would now have role Red remaining, after having called both remove...
Similarly the addRole will have the same "unexpected" behaviour.
But therefore we have designed all methods that depend on the current state of JDA to have a builder-style usage (you set all values you want to set, and then call .update() to update multiple changes at once)

To answer the 2nd question: .getManager() returns a new instance of the manager (all cached changes are lost)
-> save the manager and call update on the saved one

This makes a lot of sense!
Thanks for the help explanation (:

No problem. This seems to confuse some people, but we had no other good choice when writing the managers.
I will look at having a single instance of the Manager per entity instead of creating a new one. Maybe that happens :)


Rename develop branch to main

Codecov Report

Merging #101 (4fc468f) into main (5e797e1) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #101   +/-   ##
=======================================
  Coverage   99.65%   99.65%
=======================================
  Files         154      154
  Lines        2860     2860
  Branches      459      459
=======================================
  Hits         2850     2850
  Misses         10       10

:mega: Codecov offers a browser extension for seamless coverage viewing on GitHub. Try it in Chrome or Firefox today!


Quick Reviewing for Past Completed Projects

Is your feature request related to a problem? Please describe.
I just finished the CatPhotoApp project, but it's been a while and I want to go back through the individual steps quickly to refresh my knowledge. It's hassle if I have to type in the answers again for each step when I just want to be able to review the current step's lesson and then immediately go on to the next step's lesson.
Describe the solution you'd like
If I have already completed steps in a lesson, then I want to be able to go back through the lesson again without having to redo the lessons answers. I want to be able to go back and click on the first step....review the lesson information.....and then have a button inside that step's lesson that when I push it will go to the next step's lesson without having to enter the answer and have the site check that my answer is right again.
Describe alternatives you've considered
The alternative would be to have to type in the answers again for each step before I can go on to the next step. This is good if it is the first time I am going through a projects steps, but makes it a lot slower to refresh myself with what I have learned from the project.
Additional context
The button would only need to be available if a user has already completed all the steps in the project.

Hi @GalaxyM105, if you have the keyboard shortcuts on, you can navigate to the next and previous lessons with n and p respectively. To turn them on, you can go to settings and click the button labled Enable Keyboard Shortcuts.
Does that do what you need?

OMG, THANK YOU!! 😄  I noticed that one has to click into the editing field for each exercise and then click CTRL+n to go to the next exercise. Definitely beats having to go back to the whole exercise list to go to the next exercise, but would be quicker if we could implement a single button action for it to go to the next or previous step without having to first click into the editor box. Or perhaps have the editor box already active when going to the next exercise. Either way, this will definitely help me greatly knowing this shortcut exists! Thank you so much! 😄

Or perhaps have the editor box already active when going to the next exercise

It will be if you complete a challenge, but not if you navigate with n and p. However, you can always focus the editor with e, so that should make life a little easier.
Anyways, the main issue seems resolved, so I'm closing this. Cheers.


Support for multi-user install similar to rvm

Hi.
Will NVM support multi-user install just like rvm does when installed using sudo?

If the install script is run prefixed with sudo, RVM will automatically install into /usr/local/rvm. Please see the troubleshooting page for an important note regarding Multi-User Installs.

No. nvm is solely per-user, per-shell. It's best to install a separate copy of nvm for each user who wants to use it.


Training configs missing?

Hi Dr. Petters, thank you for making the code available.
However, I noticed that the training_config seems to be missing from the repo and I did not find it in the custom AllenNLP repo as well. I would greatly appreciate it if you could make those configs available!

Sorry about that!  They are now merged in via #4 .


no registration mail received

Subject: no registration mail received
Description:
I just signed up, but I never got a registration mail. It's for the user ari_ch, mail should be [redacted] IIRC
Results:
Backend version: develop-0023fa73
Frontend version:
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:108.0) Gecko/20100101 Firefox/108.0
Page: https://couchers.org/signup
User:

I didn't realise that report would generate a public github issue - could you kindly remove the email address as soon as possible, so it will get spammed a bit less? thanks!

@ari-s: done

@ari-s: were you able to sign up?

dupe #3520

yes, now it worked, thanks!
sorry missed the notification the first time.


[Bug]: Missing CosmWasm capabilities for v2.x

What happened?
We're running into the following error when deploying cosmwasm 2.x contracts to testnet.
Wasm contract requires unavailable capabilities: {\"cosmwasm_1_3\"}
I brought the error up to Confio first to ensure it's not a CW issue: https://discord.com/channels/737637324434833438/737640672680607764/1290615644785737779
Quoting Reece:

Does osmosis app.go have cosmwasm_1_3 capabilities? they should wasmapp.AllCapabilities() when registering the wasmkeeper.NewKeeper if not possible its on Osmosis side (your contract may require 2.0 & 1.3?)

When enabling feature cosmwasm_2_0 it recursively enables all the previous features, hence all of the capabilities must be enabled.
Osmosis Version
26.0.0 (testnet)
How to reproduce?
Create a smart-contract with cosmwasm-std import that enables the 2.x features.
[dependencies]
cosmwasm-std = { version = "2.0.0", features = ["cosmwasm_2_0"] }

Then compile that contract and attempt to upload it to testnet.
I did not explicitly check mainnet for this bug.

hey @CyberHoward Can you tell me more about the steps to test this? I think we have a fix for this but I'm not sure of the specific steps to replicate the bug that you have had

I'm not sure which step is unclear to you or which tooling you're used to using to replicate the issue in the easiest way.
I'm assuming you're used to using beaker, in which case you can set up the scaffold of your reproduction with it and update the imports of the contract to use a cosmwasm_std version 2.0.0 or up and enabling the cosmwasm_2_0 feature.
I.e. change
https://github.com/osmosis-labs/beaker/blob/fc046f8fe9d8baecdd76404b57b31f5a4e100301/examples/scripting-cookbook/contracts/calculator/Cargo.toml#L44
to
cosmwasm-std = { version = "2.0.0", features = ["cosmwasm_2_0"] }

Then compile the contract and try to upload it to testnet. You should get the err that we are getting.

ran into the same issue. I believe having cosmwasm_1_4 feature is enough to trigger this as well.

This is now fixed in main, closing this issue


Can you add a page break tag?

I would like to force pagebreaks when I print a web page with this style.
I tried a few suggestions, e.g.
http://www.htmlgoodies.com/beyond/css/article.php/3470341/CSS-and-Printing.htm
But I could not make any of these work.
Could you consider adding such a style tag?

Have you tried https://stackoverflow.com/a/21270036

This does not work as it should.
This might be related to the dynamically defined font sizes.

On 07 Aug 2015, at 12:08, Nic<EMAIL_ADDRESS>wrote:
Have you tried https://stackoverflow.com/a/21270036 https://stackoverflow.com/a/21270036
—
Reply to this email directly or view it on GitHub https://github.com/daveliepmann/tufte-css/issues/30#issuecomment-128663053.

Works great for me.

Here is a gist to demonstrate how to do it: https://gist.github.com/xHN35RQ/c9cd616acc4b9bfb93ac

I'd like to add this functionality to tufte.css, and an example to index.html, but for me to feel OK doing so we'd need to also fix some other considerations for print. For instance, revert to pure black for text and pure white for the background. I'm tagging this help-wanted for anyone who wants to do that work; I don't have the desire to do the necessary testing right now.

I don't see any reason to add this. If you want to produce print to physical printer or even to PDF, then you're much better off using pandoc's Tufte template and writing your content in Latex, Markdown, or any other input that pandoc accepts. tufte.css should probably remain a web centric project. Otherwise you're re-inventing the wheel.

All excellent points.

:+1:

It turns out the problem was with Safari. Somehow, Safari does not get the correct information about the page size of the printer. Things work nicely with Firefox.


Move Eloverblik to Azure

Problem Description
New Product: “The current state of the Eloverblik has focused primarily on infrastructure deployment, establishing the test environment on Azure and preparing the data connection to DH2.0. Existing products/services fail to address is the deployment of the productive environment, Azure insights and a strategy for release and go live. Our product/service will address this gap by maturing our service in Azure during the next PI.
Benefit Hypothesis
We believe that by moving to Azure future high costs can be mitigated and a better performance and stability of the portal. Furthermore, DataHubs freedom of choice will be ensured in the future.
Acceptance criteria and must have scope

Productive environment up and running
Connections [test/production DH2.0] to DataHub are established and the solution is fully tested In Azure
Azure insights configured and ready for the first minimal log events
Being ready for release and go live

Objectives and key results
What is the revenue impact on our business? Is there a potential penalty or other adverse consequences if we delay?
Future high costs for hosting Eloverblik in CGI’s hosting environments are mitigated by moving. Sooner or later those costs will have to be paid if switching to Azure won’t be successful.
Leading Indicators
As soon as our test environment is up and running and test data are flowing from DH2.0 we’ll see if the solution will work the way we designed it.
Non Functional Requirements
-Hybrid connection must be accepted by ENDK, CGI and Sentia
Stakeholders
-BSJ, DH support
Timeline
Deadline 01.12.2021
Ressources: CGI, CCOE, MS Fast Track, IT Cyber Defence, MightyDucks (Eloverblik pipelins).

Lukket grundet forældelse


tns run & livesync stops autostarting app after installing this

I noticed this weird thing that nativescript tns run android or tns livesync android --watch stops automatically starting app after installing this plugin.
I think it has something to do with package name maybe?

you can launch the app manually

Yep, I'm really interested about the reason for this.

Problem solved by doing manifest like this:

	<activity
			android:name="co.fitcom.SplashScreen"
			android:screenOrientation="portrait"
			android:noHistory="true">
			<intent-filter>
				<category android:name="android.intent.category.LAUNCHER" />
				<action android:name="android.intent.action.MAIN" />
			</intent-filter>
	</activity>

	<activity
		android:name="com.tns.NativeScriptActivity"
		android:label="@string/title_activity_kimera"
		android:configChanges="keyboardHidden|orientation|screenSize">
		<intent-filter>
			<category android:name="android.intent.category.LAUNCHER" />
			<action android:name="android.intent.action.MAIN" />
		</intent-filter>
	</activity>

Interesting the only difference from the readme is the screenOrientation

I may be blind but I did not see intent-filter for nativescriptactivity.


Don't import capnproto as C in generated Code

From @Merovius on August 15, 2015 21:36
It is very confusing, having the documentation in godoc read something like
type Foo C.Struct and trying to find out for several minutes, if this uses cgo and thus imports C. A different mnemonic ("c" by example, if you want one letter) would be better, but even better would be to just not alias it (and import it as capnproto accordingly). This would make the documentation of generated code clearer (and agree with the documentation which uses in every example the package name capnproto). It's generated code anyway, brevity is not required.
Copied from original issue: zombiezen/go-capnproto#6

This sounds like a good idea.  I'm in the midst of trying to clean up the API before I'm ready to call it final (see my cleanup branch for a preview).  When everything settles down, I'll make this change.


Failed to start the release

I use exfswatch in a Phoenix 1.2 application. Everything works fine until I build a release (using distillery) and deploy to the server. The release fails to start, the error message is like below:
$ ./bin/my_app console

Erlang/OTP 19 [erts-8.3] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

=INFO REPORT==== 20-Apr-2017::16:12:21 ===
    application: plug
    exited: {bad_return,
                {{'Elixir.Plug',start,[normal,[]]},
                 {'EXIT',
                     {noproc,
                         {gen_event,call,
                             ['Elixir.Logger','Elixir.Logger.Config',
                              {add_translator,
                                  {'Elixir.Plug.Adapters.Translator',
                                      translate}}]}}}}}
    type: permanent
{"Kernel pid terminated",application_controller,"{application_start_failure,plug,{bad_return,{{'Elixir.Plug',start,[normal,[]]},{'EXIT',{noproc,{gen_event,call,['Elixir.Logger','Elixir.Logger.Config',{add_translator,{'Elixir.Plug.Adapters.Translator',translate}}]}}}}}}"}
Kernel pid terminated (application_controller) ({application_start_failure,plug,{bad_return,{{'Elixir.Plug',start,[normal,[]]},{'EXIT',{noproc,{gen_event,call,['Elixir.Logger','Elixir.Logger.Config',{

Crash dump is being written to: erl_crash.dump...done

I reduced my code to only include exfswatch in application and deps in mix.exs. The error still happened. I guess it's because logger config but my Phoenix app already has them. Not sure what the real reason is.

I'm sorry maybe I need more information for this error, could you please show me your mix.exs file?

Sorry for the delay response, so busy these days. For simplicity I tested on a new Phoenix 1.2 project and the issue still happened. You can get the repo here. Just run mix release then run the release like _build/dev/rel/exfswatch_demo/bin/exfswatch_demo console and you'll see the exception.
Here's the whole steps about how the project is created and tested:

Generate the project with mix phoenix.new exfswatch_demo --no-ecto --no-brunch --no-html
Add distillery to the mix.exs
Run mix deps.get and mix compile to enable the release tasks
Use mix release.init to generate a basic release config
Run mix release to generate a release
Run _build/dev/rel/exfswatch_demo/bin/exfswatch_demo console, see exception here

BTW It works on a pure mix project (without any logger config). Just fail in a phoenix project.

Hello,
I've exactly the same behaviour and same error as @darkbaby123 using exrm release.
Here's my mix.exs :
def application do
[mod: {Dexyde, []},
applications: [:phoenix, :phoenix_pubsub, :phoenix_html, :cowboy, :logger, ...
:exfswatch,
...]]
end
defp deps do
[{:phoenix, "~> 1.2.1"},
{:phoenix_pubsub, "~> 1.0"},
{:phoenix_ecto, "~> 3.0"},
{:postgrex, ">= 0.0.0"},
...
{:cf, "~> 0.2.2"},
{:exrm, "~> 1.0"},
{:relx, "~> 3.22"},
{:erlware_commons, "~> 1.0"},
{:exfswatch, "~> 0.4.1"}]
end
After building the release and running rel/myapp/bin/myapp console, I get the following error:

Erlang/OTP 19 [erts-8.2] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]
=INFO REPORT==== 11-May-2017::18:47:30 ===
application: plug
exited: {bad_return,
{{'Elixir.Plug',start,[normal,[]]},
{'EXIT',
{noproc,
{gen_event,call,
['Elixir.Logger','Elixir.Logger.Config',
{add_translator,
{'Elixir.Plug.Adapters.Translator',
translate}}]}}}}}
type: permanent
{"Kernel pid terminated",application_controller,"{application_start_failure,plug,{bad_return,{{'Elixir.Plug',start,[normal,[]]},{'EXIT',{noproc,{gen_event,call,['Elixir.Logger','Elixir.Logger.Config',{add_translator,{'Elixir.Plug.Adapters.Translator',translate}}]}}}}}}"}
Kernel pid terminated (application_controller) ({application_start_failure,plug,{bad_return,{{'Elixir.Plug',start,[normal,[]]},{'EXIT',{noproc,{gen_event,call,['Elixir.Logger','Elixir.Logger.Config',{
Crash dump is being written to: erl_crash.dump...done
As soon as I remove exfswatch from both application and deps, I can start a console with the release.
Any help would be much appreciate.
Many thanks
Regards,
Julien


Fix Android cmdline-tools path

Changes

Fix Android cmdline-tools path
Example run with error: https://github.com/finol-digital/Card-Game-Simulator/actions/runs/6285114309/job/17069756611#step:9:270
Fixed run: https://github.com/finol-digital/Card-Game-Simulator/actions/runs/6307481977/job/17124367715#step:9:15503

Checklist

[x] Read the contribution guide and accept the
code of conduct
[x] Docs (If new inputs or outputs have been added or changes to behavior that should be documented. Please make
a PR in the documentation repo)
[x] Readme (updated or not needed)
[x] Tests (added, updated or not needed)

Codecov Report

Merging #579 (78e9412) into main (a13443a) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 78e9412 differs from pull request most recent head 420863d. Consider uploading reports for the commit 420863d to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files

@@           Coverage Diff           @@
##             main     #579   +/-   ##
=======================================
  Coverage   37.02%   37.02%
=======================================
  Files          77       77
  Lines        3041     3041
  Branches      632      632
=======================================
  Hits         1126     1126
  Misses       1765     1765
  Partials      150      150

Restarted jobs

I think https://github.com/game-ci/unity-builder/pull/582 is a better solution than mine.
Closing my PR in preference of that one.


Generalising

Pass in the root element when calling get_mtl_content.

Coverage increased (+0.005%) to 86.262% when pulling 117c93eedca266690d1b356cf417bad4d33150ef on generalising into 7dbb7f0020281e1fe1d522f7952b50cc7cfa1547 on eodatasets3.


Bug: Group master images

Reproduction

Master image overview

Steps to reproduce
When you submit a train, master images are listed by name but not grouped by programming language
What is Expected?
You should see a grouped list by programming language
What is actually happening?
You see a list of trains and cannot distinguish between base R or base Python master images.

See screenshot demonstrating the problem

This is already implemented, but not public live yet. See Screenshot: https://github.com/PHT-Medic/central-ui/issues/30#issuecomment-954007589


steam: add support using Adwaita-for-Steam

As the title suggests it'd be nice if there's a way to theme steam through stylix. Adwaita-for-Steam could work quite well in this regard. There are also some reference themes in adwaita/themes directory if needed to look at.

Unfortunately, the project you linked installs the theme in a way that is incompatible with NixOS. However, if my initial intuition is correct, we can just place the correct CSS using home-manager. I may try that this week.

I figured out a way to do this in my own config using adwsteamgtk and a home-manager activation hook, see here:
https://github.com/reedrw/nix-config/blob/ce6269e28fc32bc93f243939c031bf636aae6873/home-modules/games/steam.nix


add asyncio/anyio taskgroup support to async111&112, update contributing.md

Fixes 2/3 tasks in #215
The logic in Visitor112 is incredibly messy and ugly, but works. Might rewrite it after sleeping on it.
I also realized that async112 has not been detecting
async def foo():
    async with trio.open_nursery() as nursery:
        await nursery.start(bar)

and only worked properly on start_soon.

oops, forgot to push the 112 stuff


[Feature Request] Critic selection mechanism for models don't support multiple response at one time

Required prerequisites

[X] I have searched the Issue Tracker and Discussions that this hasn't already been reported. (+1 or comment there if it has.)
[ ] Consider asking first in a Discussion.

Motivation
raised by @coolbeevip   https://github.com/orgs/camel-ai/discussions/985
In the Role-Playing critic scenario, the user agent receives multiple response options through the n parameter of the OpenAI API, from which the critic selects one to guide the assistant agent. (If my understanding is incorrect, please feel free to point it out!)
However, this mechanism only works well with the OpenAI API; a brief investigation shows that other models do not support the n parameter. Should we ensure consistency in this behavior when using non-OpenAI models through engineering methods? (For example, by looping n times and concatenating the results.)
Solution
No response
Alternatives
No response
Additional context
No response

I'm sorry for the delayed response. I have identified an issue in the chat_agent.py script, located specifically at this link:
https://github.com/camel-ai/camel/blob/master/camel/agents/chat_agent.py#L929
When employing Qwen’s OpenAI interface, despite setting model_backend to n=3, I only receive a single choice in the response.
A straightforward fix would be to verify if the number of returned choices meets the expected count. If discrepancies arise, a re-invocation of self.model_backend.run(openai_messages) should be considered to accumulate additional responses.
Given that chat_agent plays a pivotal role, I remain cautious if this approach is optimal.


Source maps for single-identifier arrows functions map the binding identifier to the whole function header

Search Terms:
source maps
Code
const fn = (arg) => {
};
const fn2 = arg2 => {
};

Expected behavior:
Source maps should both map the argument binding identifier to the location of the new binding.
Actual behavior:
The arrow that doesn't have parens maps the arg2 binding to the whole function header.

vs

Related Issues:

#22833

@loganfsmyth I assume you've filed this with some background - how do it her transpilers soucemap this? An extra position at the start of the first argument?

Would you rather see sourcemaps like this?:

You know, I think I'll backpedal on this being an issue worth changing. I initially filed it because it happened to be something I noticed while exploring #22833 and hadn't put a ton of thought into it. Considering it more, I think this is more a somewhat frustrating limitation of sourcemaps in general rather than specifically something that Typescript should try to address. I'd be happy to close this.

@loganfsmyth if it's not a problem, then, OK.

Alright, I'm going to close this. Sorry for the extra noise.


Add controlled vocabulary for Article genre

Descriptive Summary
We want to allow users to sort their search by article type (advertisement, obituary, etc.). In order to support this, we have created a taxonomy of article types that can be assigned as a value of the genre property on NewspaperArticle objects.
We will follow the conventions used by Hyrax for field like resource_type and rights_statement for this feature.
The controlled list can be found in the 'Article Types' tab of the Metadata Profile.

The controlled list of types should be serialized as a YAML file (see example)
The YAML file should be injected into the application via the gem's install generator. (see example)
The list of values should be used to populate a multi-select input on the add/edit for for NewspaperArticle's genre field (see example)

On save, the URI for the term should be persisted in Fedora, and the display value should be persisted in Solr.
Rationale
By adding the controlled list of values, we can allow users to search for or sort on a useful classification of article types.
Expected behavior
As a user with upload privileges
When I am on the add/edit form for a NewspaperArticle
I should see a multi-select input for the Genre field
And I should be able to select one or more values
And when I click save
The URI is persisted in Fedora
And the display label is persisted in Solr
This ticket will be complete when:
Functionality described above is implemented.

Closed via #110.


Rename default branch to "master?"

When we started this project, we envisioned a "git flow" type model where development occurs on the "dev" branch and releases are based off of different branches. Instead, we have converged on a process where all commits go into one branch and releases are controlled elsewhere. In most repos, this branch is called "master," but in ours it's called "dev." Renaming this branch to "master" might remove a potential point of confusion for new developers.

Team has decided not to pursue this.


eksctl: 0.34.0 -> 0.35.0

Motivation for this change
Upgrade to newest eksctl
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

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

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 108397 run on x86_64-linux 1

1 package built:

eksctl

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 108397 run on x86_64-linux 1

1 package built:

eksctl

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 108397 run on x86_64-darwin 1

1 package built:

eksctl

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 108397 run on x86_64-darwin 1

1 package built:

eksctl


MIDI learn: assign learned parameter to Output

Does the issue occur in the electron-app or the web-app?

[x] midi-bricks-electron
[ ] midi-bricks-web-app
[ ] I do not know nor understand

Can you determine, which version was used?
Version: 0.12.63
Describe the bug
MIDI learn assigns the Input of an Element to the learned CC#, which is good, but...
Expected behavior
MIDI Output should also be assigned to this learned CC#, which is the actual purpose of MIDI learn.

we should have fixed that by 0.71

works


Can a UDP client/server be built on React Native for Android and IOS?

I'm in need for an UDP client that I can send a package over my network and be read by my custom boards written in C.  So far I'm using a MEAN stack for my web server and native android app, but I'm looking to move to a Hybrid app to minimize code for future releases.
Any help would be greatly appreciated.
Thank you

Sure, you can bridge react native with native code that could send udp packets.

Yeah, write the Obj-C and Java code that you normally would in order to send UDP packets and then expose a higher-level API to JS. One feature of React Native is that if something cannot be done in JS, you can write native code to do it, so a ton of things are doable.


Knowledge based: libraries typo

The libraries site lists a .NET library under C here, should very likely be C#

updated thanks


Incorrectly closed without checking - Logins broken again as of 6/23/2017 #162

madsmtm closed 162 without apparently checking the veracity of the response.   I was using echobot from the documented example at https://fbchat.readthedocs.io/en/master/examples.html#basic-example, which I have included below for completeness.
I am sorry to say, but  "Check out the documentation" is not helpful if the documentation and examples do not detail said parameter, and if the code was working fine for several weeks with no changes and it suddenly stopped.
No suggestion was given for version,  or how this parameter is to be supplied or why it suddenly is required with no updates or changes to the python libraries.   A link to where this is detailed in regards to your sample applications would be very helpful, seeing as this parameter doesn't actually appear in them.
Perhaps someone would be so kind as to direct me to this documentation that explains why I need a new parameter in previously working code.   I would be most obliged.
Also, if there are new critical parameters required,  would it not be prudent to update the examples?
Thank you in advance

madsmtm commented 3 days ago
A lot of fbchat's code has been updated in the new version, you're probably passing 0 to the parameter max_tries somewhere. Check out the documentation
Also, next time, remember to include some of your code ;)
##########
echobot.py
##########
from fbchat import log, Client
Subclass fbchat.Client and override required methods
class EchoBot(Client):
def onMessage(self, author_id, message, thread_id, thread_type, **kwargs):
self.markAsDelivered(author_id, thread_id)
self.markAsRead(author_id)
    log.info("Message from {} in {} ({}): {}".format(author_id, thread_id, thread_type.name, message))

    # If you're not the author, echo
    if author_id != self.uid:
        self.sendMessage(message, thread_id=thread_id, thread_type=thread_type)

client = EchoBot("", "")
client.listen()

Results
user@wwwserver# ./echobot.py
Logging in ...
Traceback (most recent call last):
File "./echobot.py", line 21, in
bot = EchoBot("", "")
File "./echobot.py", line 8, in init
fbchat.Client.init(self,email, password, debug, user_agent)
File "/usr/local/lib/python2.7/dist-packages/fbchat/client.py", line 73, in init
self.login(email, password, max_tries)
File "/usr/local/lib/python2.7/dist-packages/fbchat/client.py", line 318, in login
raise Exception('Cannot login: max_tries should be at least one')
Exception: Cannot login: max_tries should be at least one
WAS working previously, no update.

I am sorry if I've been unclear or perhaps even rude, I didn't mean to, and I hope you'll forgive me ;)
Regarding your issue, then it's because in the new version, almost all the initialisation parameters have been changed/updated. The debug parameter is no longer present, so when you pass something like EchoBot('<email>', '<password>', '<user_agent>', False), which was valid in earlier versions (!), the Client's __init__ method is now structured like this: Client(email, password, user_agent=None, max_tries=5, session_cookies=None, logging_level=logging.INFO).
That means it'll think you meant to set the fourth parameter max_tries to False, which is the same as 0, and which is invalid.
In case the explanation was unclear, to fix it, remove False from EchoBot('<email>', '<password>', '<user_agent>', False). The client is no longer in debug mode by default!
When I said you should "remember to include some of your code", I assumed you used the example from earlier versions, which I knew wasn't going to work. Again, I'm sorry if I've caused you unnecessary trouble!
And you're right, currently there's not a full explanation of all the init parameters (and a lot of vital documentation is still missing!), but you can check them out here, if you want ;)

Awesome, thank you so much.     Unfortunately the existing documentation is lagging behind this change, which is not uncommon in projects, so there wasn't anywhere I could find this info.   Providing it is of immense help.   I'm sure that someone will update the doc and example code soon.  :)
The login now works great that I know what to pass.  However I am still getting some errors after that point.  First is that I can't pass logging_level, it complains that the keyword logging is unknown, so I dro that in the code below, and the login works fine.    However, I still get an error after connect. However, the echo works now, so this gets me over this hump.   Much obliged.  :)
I have included the error below for information purposes.
Also, for my notes...
Should it be: logging_level=logging.INFO or perhaps logging_level=INFO?   It's a bit unclear from the context above?
Error on connect after login:
Exception in parsing of {u'made': u'1498760596276', u'type': u'qprimer'}
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/fbchat/client.py", line 1274, in _parseMessage
    self.onQprimer(ts=m.get("made"), msg=m)
TypeError: onQprimer() got an unexpected keyword argument 'ts'

Code:
from fbchat import log, Client

# Subclass fbchat.Client and override required methods
class EchoBot(Client):
    def onMessage(self, author_id, message, thread_id, thread_type, **kwargs):
        self.markAsDelivered(author_id, thread_id)
        self.markAsRead(author_id)

        log.info("Message from {} in {} ({}): {}".format(author_id, thread_id, thread_type.name, message))

        # If you're not the author, echo
        if author_id != self.uid:
            self.sendMessage(message, thread_id=thread_id, thread_type=thread_type)

client =<EMAIL_ADDRESS>"fake_password", user_agent=None, max_tries=5, session_cookies=None)
client.listen()

About the logging level:
The logging part comes from a python module called logging
So, to use logging.DEBUG, you have to write import logging at the top of your code :)
About the onQprimer error:
This was noticed in #166 and fixed subsequently. Update fbchat ;) (You can do that by typing pip install --upgrade fbchat in your terminal)
Also, in case you didn't know, when calling a function or initialising a class, like Client, you don't have to input all the parameters. Some of them are optional. What this means is that, the line
client =<EMAIL_ADDRESS>"fake_password", user_agent=None, max_tries=5, session_cookies=None)

is equivalent to
client =<EMAIL_ADDRESS>"fake_password")

since you're using the default values. If you want to know more about this, I'd suggest a search for args and kwargs on google ;)

Assuming the above did it for you ;)


docs: Mention demo-starter-go and demo-starter-py

Fixes https://github.com/oasisprotocol/demo-starter-go/issues/2.
This PR:

adds demo-starter-go and demo-starter-py references
makes usage of  :::info Example: consistent

Merge after https://github.com/oasisprotocol/demo-starter-py/pull/1.

Thanks. Merged.


$setViewValue not working since Angular update 1.4.9

I created a directive that clears my ngModel value when the element is destroyed (removed from DOM). I used "ngModel.$setViewValue(undefined)" to clear the model value.
This worked in Angular versions lower than 1.4.9. I checked the update changes from version 1.4.8 -> 1.4.9, but found nothing that can relate to this issue.
Here is my directive code:
(function() {
    'use strict';

    // MODULE
    angular.module('portal.generic.directives').directive('navigateToSummaryPage', destroyModel);

    // DEPENDENCY INJECTION
    destroyModel.$inject = ['$compile', '$rootScope'];

    // DIRECTIVE
    function destroyModel($compile, $rootScope) {
        return {
            restrict: "A",
            require: '?ngModel',
            link: function(scope, elem, attrs, ngModel) {

                if(elem.attr('type') !== 'radio'  && attrs.value) ngModel.$setViewValue(attrs.value);

                elem.on('$destroy', function(event){
                    // check if the element is destroyed when navigating to the summary page or by hiding the element
                    var navigateToSummaryPage = scope.$eval(attrs.navigateToSummaryPage);

                    // delete the ng-model value when the element is removed from the DOM
                    if(!navigateToSummaryPage) {
                        ngModel.$setViewValue(undefined);
                    }
                })
            }
        };
    }

})();

Anyone know how to fix this or maybe use a different aproach to clear my ngModel?
Thanks

Can you please put this in a plnkr.co or similar so it's runnable?

I'm going to close this issue because we have no reproduction of the issue. Feel free to reopen this issue if you can provide a reproduction (ideally a runnable demo in a https://plnkr.co or similar. You can use this Plunker Template).


AutoSizer inside another AutoSizer returns width 0 height 0

Reproduction
https://plnkr.co/edit/XLG1FZIolxx74xRj2WxP?p=preview

  <AutoSizer>
    {calculated => {
      console.log('calculated1', calculated)

      return (

          <AutoSizer>
            {calculated => {
              console.log('calculated2', calculated)
            }}
          </AutoSizer>

      )
    }}
  </AutoSizer>

Current behaviour
calculated1 Object {height: 0, width: 0}
calculated2 Object {height: 0, width: 0}
calculated1 Object {height: 400, width: 400}
calculated2 Object {height: 0, width: 0}

Expected behaviour
calculated1 Object {height: 0, width: 0}
calculated2 Object {height: 0, width: 0}
calculated1 Object {height: 400, width: 400}
-calculated2 Object {height: 0, width: 0}
+calculated2 Object {height: 400, width: 400}

Hey @brunolemos! Thanks for the detailed report and Plnkr!
In your Plnkr both the body and the
 have a height of 0. The docs briefly cover this. The tl;dr is that you can fix the outer-most AutoSizer by appending the following CSS to your Plnkr:
html, body, #example {
  height: 100%;
}

You can fix the inner-most AutoSizer using style={calculated} instead of style={{width: '100%', height: '100%'}}. I'm not sure off the top why the former doesn't work but...nested AutoSizers doesn't seem to be a very common case so I'm inclined to say that I'm not going to prioritize looking into it since a workaround exists.
If you would look to look into it and submit a PR though I'd be happy to review it. 😄
For now I'm going to close this issue since I don't plan to take any action on it. (We can still keep chatting here though if you have any follow up questions or comments.)

Thanks @bvaughn. I think I mistakenly narrowed down the issue. Apparently my problem seems to be CellMeasure inside another CellMeasure. But when I'm sure about it I'll post here or on stack overflow.
I know one inside another sounds weird, but it's because I'm implementing a trello-like layout.
@bvaughn Do you have an example or suggestion for a trello-like layout?

Columns (horizontal-list); scrolls horizontally;
Each column (vertical-list) has rows; scrolls vertically.

I was able to implement them separately, but when I put the vertical-list inside the horizontal-list it doesn't work, CellMeasure measure it 0.
Only columns (horizontal-list)

Only one column (vertical-list)

Trello-like (vertical-lists inside the horizontal-list)
Renders blank.
PS: Not that important here, but I'm making it using the ListView API for react-native-web, in the mobile version they are listview inside another listviews which works fine

I'm not really that familiar with Trello. Looking at the home page...I'd guess you're looking for vertical windowing only, but with multi "column" each of varying height.
If that's right- then I haven't written a UI quite like that with RV but I'd recommend taking this approach for the columns and mix it with this approach for the dynamic row-heights.
Feel free to hop in the RV Slack and chat with others about ideas. Maybe someone else has built something closer to what you're looking for already. :grin:

@bvaughn You might have used TweetDeck, it's exactly that: https://tweetdeck.twitter.com/
Ok, I'll jump to the slack.

Nope, I haven't used that either. But TweetDeck just looks like a couple of Lists side by side. (No nested Lists.) In that case you could just do what I did here and repeat it enough times to fill the page width, no?

@bvaughn  Kinda, because I need the horizontal list to be virtualized as well.
But I'm almost there 👌

My current problem is that when I call measure from {({ measure }) => ( everything disappears. But not using this callback function is working fine by now. Let's see how it goes.

Hm...windowing that horizontally sounds like it might lead to sketchy performance, since each List is measuring content with CellMeasurer but those cached measurements (and the scroll offset) would get thrown away as the List is removed b'c of a horizontal scroll- unless you do some kind of higher level management of the individual caches and scroll offsets- and restore them, which you could do, but it sounds complicated.


How to get conflicting records?

I would like to reference, as part of the validation error message, which records are conflicting.
Let's say: User attends event x, but is assigned to y in the same slot. In order to make it easier to resolve the conflict, I would want to show information (id, start, enddate, desc) of the record x .
Is this possible?

Hi @milankubin ,
the gem actually does not provide this functionality. But from what I see, it should not be hard to change the logic little bit and implement it.
Simply fork this gem, and on this line https://github.com/robinbortlik/validates_overlap/blob/master/lib/validates_overlap/overlap_validator.rb#L39 change exists? to where . Then you need to store value returned from find_crossed method  to the record variable. You can simply create some attribute accessor.
Is it clear? Let me know if you will need some help.

Hi @milankubin any progress?

Wasn't on my  (client's ;)) priority list, somewhere within the next week
weeks I will be addressing this feature!
On Wed, Aug 10, 2016 at 9:23 AM, Robin Bortlík<EMAIL_ADDRESS>wrote:

Hi @milankubin https://github.com/milankubin any progress?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/robinbortlik/validates_overlap/issues/31#issuecomment-238786356,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEfKNLc4_C9t9Z4QXM6A26ltcydQGxtHks5qeXxdgaJpZM4JRBUS
.

@robinbortlik Is this something you're considering? I think a few people (myself included) would appreciate this. Even if just for debugging purposes.

@johnmosesman I know that using send is considered as bad practice, but you can implement simple method on your model to find crossed objects:
def find_crossed
   attributes = { attributes: [:start_at, :stop_at] }
   scope = 'place_id'

   ov = OverlapValidator.new(atributes)

   ov.scoped_model = self.class
   ov.send(:generate_overlap_sql_values, self)
   ov.send(:generate_overlap_sql_conditions, self)
   ov.send(:add_attributes, self, scope)

   ov.scoped_model.where([ov.sql_conditions, ov.sql_values])
end

@johnmosesman @stricte @milankubin guys, I will take a look on it during a weekend. I'm now really busy with my work. Sorry guys.

Hi guys, as I promised, there is a way how to get overlapped_records
https://github.com/robinbortlik/validates_overlap#overlapped-records .
It is not ideal solution, but more like hotfix.

Yeah, and I forgot to mention. I released a new version on rubygems, so you can simply update gem to version 0.8.0 .


Remove proxy.header.tls header from inbound request

When proxy.header.tls is configured fabio will insert a header with that name into the downstream request if the connection is on TLS and fabio terminates the TLS connection. For the header to be secure fabio should remove it from the inbound request which it doesn't right now.

merged.


Undefined symbols ssl_ssl*

Hi! I really like this project, especially because its the only one project which example built successfully on my computer and running on my iPhone device 🎉 I appreciate your work because so far build native applications using Heaps is black box.
Problem
I am stuck while trying to run my game project because of many errors related to OpenSSL. I think this errors appeared because of networking usage and I know that networking not supported yet on iOS and Android, but can you say do you working on it? Maybe you know what needs to be done for this?
Screenshot

I fixed all compile errors and now my game work in local network between host iMac and client iPhone! 🚀

linked with precompiled universal libuv.a library
added ssl.c, uv.c, mbedtls/*.c to compile sources phase
updated system header search paths for libraries above

I think I can update iOS template and prepare PR later 👌

Thank you. I will always try to complete other matters that have not been supported.
I'm waiting for your IOS template pr.

https://github.com/rainyt/zyheaps/commit/eb7ecef967aa36db69662084f44b458323563a5a
Fixed

https://github.com/rainyt/zyheaps/commit/cab649f663e10cf0adb8d0a89a3001fc18b7546f
Fixed android ssl.

Thank you!


Check all CLU URLs

          These were valid URLs for 2022-10-01-preview. They swapped which operation falls under "runtime" for this GA version (sync is "runtime", async is just "analyze-conversation"). Do you need to make the same update? https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/cognitivelanguage/Azure.AI.Language.Conversations/src/autorest.md?plain=1#L171

That being said, we do run a link checker in our CI, but it's possible it doesn't run on src code. I'll have to ask.
Originally posted by @kristapratico in https://github.com/Azure/azure-sdk-for-python/pull/30612#discussion_r1214947120

@kristapratico FYI:
I ran the following to check all the URLs, and can pass those to a link checker. Obviously the 2023-04-01 links will fail for now:
dir -include *.cs, *.xml -recurse src | sls 'https?://[\.\w/\-]+' | foreach { $_.Matches[0].Captures[0].Value } | select -unique | sort

https://cognitiveservices.azure.cn
https://cognitiveservices.azure.com
https://cognitiveservices.azure.us
https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/core/Azure.Core/samples/LongRunningOperations.md
https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/core/Azure.Core/samples/ProtocolMethods.md
https://github.com/Azure/azure-sdk-for-net/issues/29506
https://learn.microsoft.com/azure/azure-government/documentation-government-cognitiveservices
https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-authoring
https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime
https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/analyze-conversation
https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/cancel-job
https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/job-status
https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/submit-job
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/cancel-training-job
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/create-project
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/delete-deployment
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/delete-project
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/delete-trained-model
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/deploy-project
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/export
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-deployment
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-deployment-status
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-export-status
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-import-status
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-load-snapshot-status
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-model-evaluation-results
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-model-evaluation-summary
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-project
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-project-deletion-status
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-supported-languages
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-supported-prebuilt-entities
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-swap-deployments-status
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-trained-model
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-training-status
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/import
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-deployments
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-projects
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-trained-models
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-training-config-versions
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-training-jobs
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/load-snapshot
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/swap-deployments
https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/train
https://my-service.azure.com

I was able to link check like so:
dir -include *.cs, *.xml -recurse src | sls 'https?://[\.\w/\-]+' | foreach { $_.Matches[0].Captures[0].Value } | select -unique | sort | foreach { curl -Lsw '%{http_code}: %{url}\n' -o $env:TEMP\response.txt $_ }

000: https://cognitiveservices.azure.cn
000: https://cognitiveservices.azure.com
000: https://cognitiveservices.azure.us
200: https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/core/Azure.Core/samples/LongRunningOperations.md
200: https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/core/Azure.Core/samples/ProtocolMethods.md
200: https://github.com/Azure/azure-sdk-for-net/issues/29506
200: https://learn.microsoft.com/azure/azure-government/documentation-government-cognitiveservices
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-authoring
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/analyze-conversation
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/cancel-job
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/job-status
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversation-analysis-runtime/submit-job
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/cancel-training-job
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/create-project
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/delete-deployment
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/delete-project
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/delete-trained-model
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/deploy-project
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/export
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-deployment
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-deployment-status
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-export-status
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-import-status
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-load-snapshot-status
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-model-evaluation-results
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-model-evaluation-summary
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-project
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-project-deletion-status
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-supported-languages
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-supported-prebuilt-entities
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-swap-deployments-status
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-trained-model
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/get-training-status
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/import
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-deployments
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-projects
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-trained-models
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-training-config-versions
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/list-training-jobs
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/load-snapshot
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/swap-deployments
404: https://learn.microsoft.com/rest/api/language/2023-04-01/conversational-analysis-authoring/train
000: https://my-service.azure.com

(The 000 response codes were DNS look-up errors, so no HTTP status code.)


Please fix issues detected by adapter checker

👀 [W171] "common.title" is deprecated in io-package.json. Please remove from io-package.json.
👀 [W114] "common.license" in io-package.json is deprecated. Please define object "common.licenseInformation"
👀 [W173] "@iobroker/adapter-core" should be release 3.0.6 or newer - please update
👀 [W115] common.tier is required in io-package.json. Please check https://https://github.com/ioBroker/ioBroker.docs/blob/master/docs/en/dev/objectsschema.md#adapter.

replaced by #213


App running at subpath but httpContext.Request.PathBase is not taken into account

When running an app from a subpath, swagger ui middleware tries to redirect to index.html at root instead of subpath.
Here I have an app running at /subapp
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    app.Map("/subapp", app =>
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }

        app.UseRouting();
        app.UseSwagger(options => options.RouteTemplate = "docs/{documentName}.json");
        app.UseSwaggerUI(options =>
        {
            options.SwaggerEndpoint("docs/api.json", "api");
            options.RoutePrefix = "";
        });

        app.UseEndpoints(endpoints => { endpoints.MapControllers(); });
    });
}

when I go to localhost:5000/subapp swagger tries to redirects me to index.html
https://github.com/domaindrivendev/Swashbuckle.AspNetCore/blob/939ad54164af5820f93a926083d322899c09049f/src/Swashbuckle.AspNetCore.SwaggerUI/SwaggerUIMiddleware.cs#L57-L61
But the url resolves to nothing because swagger only responds to /subapp/index.html.
The solution is to prefix relativeRedirectPath with httpContext.Request.PathBase

Reverted the merge as it introduced a regression. Have a broader plan to resolve this issue but needs to wait for next major release


Update Wiki: Use own Load Balancer instead of Web Adaptor

Discussed in https://github.com/Esri/arcgis-powershell-dsc/discussions/488
Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request

Originally posted by jesa-esrich July 26, 2023
Is it possible to use ArcGIS PowerShell DSC for the installation/configuration of an ArcGIS Enterprise Base Deployment with your own Load Balancers instead of the Web Adaptor?

And how would such a configuration JSON look like? Remove the Web Adaptor parameter and specify internal and external load balancer. (Load Balancer has to be configured in advance).
And is this supported?
As far as I know, the Cloud Builder uses ArcGIS PowerShell DSC in the background to set up an ArcGIS Enterprise Base Deployment with an V2 Azure Application Gateway in front (and no ArcGIS Web Adaptors). This is also seen as best practice for cloud deployments on Azure.

Use Case:

Setting up a ArcGIS Enterprise in the Azure Cloud with V2 Azure Application Gateway (no ArcGIS Web Adaptor)
Using ArcGIS PowerShell DSC (Cloud Builder cannot be used because of restricted privileges on the subscription)

Request

Please update the Wiki, if the ArcGIS Web Adaptor can be left out when using own Load Balancer
Add a JSON config file for using an Azure Application Gateway instead of an ArcGIS Web Adaptor

Hi @jesa-esrich,
Please see response here:
https://github.com/Esri/arcgis-powershell-dsc/discussions/488#discussioncomment-6856607
Thanks,
Cameron K.


Fix inputDebug shape position when the target is inside a container

The debug shape use gameObject's local position as the reference, but position of the shape may be wrong when the target is inside a container.
[DEMO] (https://codepen.io/scott20145/pen/JjddRZd)

This looks great, thanks

Thanks for your PR. I've merged it and updated it because calls to getWorldTransformMatrix are really expensive, so I'm now caching this matrix. It also needs to be used for the scale and rotation, so I've applied it there as well.


Jupiterq cannot connect to the kernel

I am working on Mac. q works on the terminal but when I lunch it from Jupiter notebook it is not able to connect to the kernel.
here is the error message I get:
Last login: Sat Nov  3 18:29:36 on ttys000
Skanders-Air:~ skandersoltani$ jupyter console --kernel=qpk
'2018.11.03T18:47:14.013 libpython
[6]  /anaconda3/q/p.q:8:
LMH set'@[system"python3 ",;c;{system"python ",c}];if[count M;if[k~key k:$":",M;L::M]];
.p:(:./p 2:(init;2))[L;H]]
^
'2018.11.03T18:47:14.013 cleanz
Traceback (most recent call last):
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/ptshell.py", line 323, in init_kernel_info
reply = self.client.get_shell_msg(timeout=1)
File "/anaconda3/lib/python3.7/site-packages/jupyter_client/client.py", line 77, in get_shell_msg
return self.shell_channel.get_msg(*args, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/jupyter_client/blocking/channels.py", line 57, in get_msg
raise Empty
_queue.Empty
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/anaconda3/bin/jupyter-console", line 11, in
sys.exit(main())
File "/anaconda3/lib/python3.7/site-packages/jupyter_core/application.py", line 266, in launch_instance
return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/traitlets/config/application.py", line 657, in launch_instance
app.initialize(argv)
File "", line 2, in initialize
File "/anaconda3/lib/python3.7/site-packages/traitlets/config/application.py", line 87, in catch_config_error
return method(app, *args, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/app.py", line 141, in initialize
self.init_shell()
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/app.py", line 114, in init_shell
client=self.kernel_client,
File "/anaconda3/lib/python3.7/site-packages/traitlets/config/configurable.py", line 412, in instance
inst = cls(*args, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/ptshell.py", line 272, in init
self.init_kernel_info()
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/ptshell.py", line 326, in init_kernel_info
raise RuntimeError("Kernel didn't respond to kernel_info_request")
RuntimeError: Kernel didn't respond to kernel_info_request
Skanders-Air:~ skandersoltani$ jupyter console --kernel=qpk
'2018.11.03T18:54:26.859 libpython
[6]  /anaconda3/q/p.q:8:
LMH set'@[system"python3 ",;c;{system"python ",c}];if[count M;if[k~key k:$":",M;L::M]];
.p:(:./p 2:(init;2))[L;H]]
^
'2018.11.03T18:54:26.859 cleanz
Traceback (most recent call last):
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/ptshell.py", line 323, in init_kernel_info
reply = self.client.get_shell_msg(timeout=1)
File "/anaconda3/lib/python3.7/site-packages/jupyter_client/client.py", line 77, in get_shell_msg
return self.shell_channel.get_msg(*args, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/jupyter_client/blocking/channels.py", line 57, in get_msg
raise Empty
_queue.Empty
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/anaconda3/bin/jupyter-console", line 11, in
sys.exit(main())
File "/anaconda3/lib/python3.7/site-packages/jupyter_core/application.py", line 266, in launch_instance
return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/traitlets/config/application.py", line 657, in launch_instance
app.initialize(argv)
File "", line 2, in initialize
File "/anaconda3/lib/python3.7/site-packages/traitlets/config/application.py", line 87, in catch_config_error
return method(app, *args, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/app.py", line 141, in initialize
self.init_shell()
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/app.py", line 114, in init_shell
client=self.kernel_client,
File "/anaconda3/lib/python3.7/site-packages/traitlets/config/configurable.py", line 412, in instance
inst = cls(*args, **kwargs)
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/ptshell.py", line 272, in init
self.init_kernel_info()
File "/anaconda3/lib/python3.7/site-packages/jupyter_console/ptshell.py", line 326, in init_kernel_info
raise RuntimeError("Kernel didn't respond to kernel_info_request")
RuntimeError: Kernel didn't respond to kernel_info_request

It looks like there is an issue with the install of embedPy.
Are you able to run embedPy in a q console without jupyter, i.e.
$ q p.q
...
q)p)print('embedPy runs')

Could you also post the versions of embedpy, jupyterq, kdb and python you are using with this command
conda list "embedpy|jupyterq|kdb|python"

Thanks

Closing this issue. Unable to replicate the issue without further information. Feel free to reopen with the details to replicate it.


feature autoloading bar for rest/xhr request

feature autoloading bar for rest/xhr request.
https://github.com/MurhafSousli/ng2-progressbar/issues/14#issuecomment-281837674

Hi @genuinefafa, I'm wondering why did you use BrowserXhr? in angular API it says

Take care not to evaluate this in non-browser contexts.

Can't we use something that works for mobile, universal and browser?

I'm not really sure... @MurhafSousli, I did find the idea from stackoverflow and the MDN site but it was always considering browsers, not other devices.
For the time being, browser support is better than no devices... :) Don't you think?

@genuinefafa I like it I will lint your PR then merge it


Reorder code to set num_frequently_polled_cqs correctly.

When there num_frequently_polled_cqs is non-zero (aka hybrid server),
we create non-polling CQs for the sync methods. But, since we
increase num_frequently_polled_cqs for callback methods
after creating the sync CQs, the sync CQs would not detect
a hyprid server, and will create a polling CQ.
This commit reorders the logic and updates the stale comments,
so that we always create the sync CQs at the last stage and
correctly identify hybrid servers.

Hi, what I suggested in the meeting is actually already implemented for async CQs but missed for callback, due to ordering of lines. I made the ordering consistent so that it doesn't happen later. :-)

Sorry about the issue @vjpai . C tests passed on my client, but I forgot to check C++ too.
The issue, as we discussed offline, was that we need to update the sync vector before creating the server in edge cases. The new commit simply reorders the callback loop so that hybrid_server is correctly identified.

Did this have the desired performance impact?

@vjpai yes it lowers context switches by at least 10-20% in my tests with 1000 connections. I updated the commit message to reflect that.

@hcaseyal sure, copied from commit message. thanks

Thank you for merging the PR @hcaseyal !


Feature/aced rbac

This PR:

refactors policy names - see https://github.com/ACED-IDP/gen3-helm/blob/develop/docs/aced-RBAC.md
adds jobs ls|get|import
installed at:  https://pypi.org/project/gen3-util/0.0.6/

Some of the older pytests are failing because the commands have changed since last PR, or some of the tests are expected to fail for one reason or another. 7 tests failed 31 tests passed:

pytest tests/integration/test_files.py::test_files_upload fails because the command gen3_util meta  import no longer exists
pytest tests/integration/test_access.py::test_files_upload_bad_source fails because even though it returns Unable to get a presigned URL for download: 404 Client Error: Not Found for url: https://aced-training.compbio.ohsu.edu/user/data/download/foo the test exits in a code 0 when it should exit with a 1, but this overall seems like the intended result to me.
pytest tests/integration/test_access.py::test_access_workflowdidn't seem to produce any intended error but hit the  obj, end = self.scan_once(s, idx) line and went to theStopIteration exception so maybe it had already been run once and was supposed to fail.
pytest tests/integration/test_files.py::test_workflow  errors because old command gen3_util meta import
pytest tests/unit/test_cli.py::test_meta failed because the first help on the publish command is splitting halfway through the sentenceat the from_ and not at the end of the line. The command contents itself seems to be matching though.
pytest tests/integration/test_meta.py::test_incremental_workflow seems to be hitting a similar error as pytest tests/integration/test_access.py::test_access_workflow and failing at the json decode. This looks like an older test. Maybe just needs to be updated with the newer gen3_util projects add resource test-myproject style command


Hex et RGB color

Hi !
I got 2 problems when I try to manually enter a color. First, in the RGB field my cursor keep coming back to the end, I need to remplace it 2 times to be able to enter a color.
Second, in the Hex field when I enter the color there is a modification in the hex value and when I press close, it change to black.
Am I the only one with these problems ?
Your color picker is really great, so if I could get those two things to work, everything would be perfect !
Thanks !

Can you try modifying hex extra? Here's rgb. Maybe there's some corner case missing.

I can try to take a look, but I really don't think that I'm skilled enough for that

@tchinou1 Any luck? Do you want me to have a look? If you can set up a standalone test case for me to study, that will help.

No I haven't been able to do anything. If you want to check, it would be very nice ! But I'm not sure to understand what you mean by a standalone test case.
Thanks !

@tchinou1 Just something to illustrate the issue. Do you see it at the online demo?

No, here is a page of my app: http://luxontower.com/app/colorpickerdemo.php

I got 2 problems when I try to manually enter a color. First, in the RGB field my cursor keep coming back to the end, I need to remplace it 2 times to be able to enter a color.

Confirmed. I think the hex input will need a little tweak to retain its position. It's going to get a little complicated depending on which browsers we want to support. Here's the basic idea: https://stackoverflow.com/questions/2897155/get-cursor-position-in-characters-within-a-text-input-field .

Second, in the Hex field when I enter the color there is a modification in the hex value and when I press close, it change to black.

This is a weird one. I cannot see the behavior in the official demo. Can you try to figure out how your setup differs from that? It looks like the value cycles (00000b -> 0000b0).

Third issue: Before opening the selector, we should probably do a cropping check against the window. I mean we should open at top of the input if it's going to crop. Otherwise it's going to be unusable for those lower inputs.