feature request: Go 2: isClosed(channelName)

What version of Go are you using (go version)?

$ go version go1.12.1 windows/amd64

What did you do?
package main

import "fmt"

func main() {

	messageCh := make(chan string)

	go func() { messageCh <- "ping" }()

	msg, ok := <-messageCh
	fmt.Println(msg, ok)

	//close(messageCh) would close chan
	//close(messageCh) would cause error since it is already closed

	select {
	case <-messageCh:
		fmt.Println("already closed")
	default:
		fmt.Println("safe to close, closing")
		close(messageCh)
	}

	//close(messageCh) would cause error

	select {
	case <-messageCh:
		fmt.Println("already closed")
	default:
		fmt.Println("safe to close, closing")
		close(messageCh)
	}
}

What did you expect to see?
I might be missing something since I'm new to Go, but if one can test the length of a channel by length(messageCh), then shouldn't it be a similar way to test if channel is closed like:  IsClosed(messageCh)?
If such possibility does exist, then it should somehow be better presented in documentation, since I've seen all sorts of several line recipes for what should be a simple test.

One problem with isClosed is that it is always racy.  The same is true of len applied to a channel, of course.  But at least len of a channel has a use, in that it gives you a snapshot of how much the channel is being used, which could be useful for stats reporting, even if the value might change before it is reported.  But isClosed has no such use.  The only reason to call isClosed would be to make some decision based on whether the channel is closed, but of course the channel might be closed before you actually test the result of isClosed.
Another problem with isClosed is that it misunderstands the point of closing a channel.  Closing a channel is a send operation that can be seen by reading from the channel.  Only the sender should close a channel, when there is nothing more to send.  Only the reader should check whether a channel is closed.  And since the reader is checking whether the channel is closed, it does not harm to combine the operations of reading from the channel and checking whether it is closed.  And combining those operations avoids the race condition.

I understand your point. But I do see places where isClosed() can be used.
For example this part of code. Yes, we can argue this can be done in multiple ways, but I've been burnt by this code pattern with done() multiple times (I admit I'm new to Go), and yet why? If you can simply introduce non-panic-if-already-closed close(), or  isClose()
package main

import (
	"fmt"
	"time"
)

var messages chan string
var signals chan bool
var done chan struct{}

func main() {

	messages = make(chan string)
	signals = make(chan bool)
	done = make(chan struct{})

	go work()
	go work()

	messages <- "hello"
	signals <- true
	time.Sleep(time.Second)

	//we are happy, we would like to exit program
	WorkersDone()

	//but we cannot, chan was closed while we were not paying attention
	//and this line never happens
	fmt.Println("exit")
}

//we use this to call this function to broadcast to stop execution of tone of workers
func WorkersDone() {

	/*but to check if chan is closed, we need to do this
	select {
	case <-done:
		fmt.Println("already closed")
	default:
		fmt.Println("safe to close, closing")
		close(done)
	}*/

	//because if are naive enough to just close, this would crash
	close(done)
	//what if there was isClosed(done) or closeIfOpen(done) or something...
}

func work() {
	for {
		select {
		case msg := <-messages:
			fmt.Println("received message", msg)
		case sig := <-signals:
			fmt.Println("received signal", sig)

			/*
				say we do some math, whatever, but then some error happens,
				or we find result we need... and so we want to exit workers
			*/

			WorkersDone()

		case <-done:
			fmt.Println("closing")
			return
		}
	}
}

I note that isClosed won't help your example program.  You could write workersDone to say
    if !isClosed(done) {
        close(done)
    }

but if two different goroutines call workersDone simultaneously, as appears possible above, then they could both call isClosed simultaneously, both see that the channel is closed, then both call close simultaneously, at which point one of the goroutines will panic.  This is the kind of thing I mean when I say that isClosed is racy.
That said, to shut down a group of workers, use a context.Context.  See https://blog.golang.org/context .
More generally, yes, I agree that there are times when it can be useful to use a channel that can be closed from multiple points in the program.  Those times arise when you aren't actually sending a value on the channel, but are using it purely as a signal.  And for those times it's not too hard to write a little type with a sync.Once and a channel, so that close is only called once on the channel.  Adding an isClosed function is not the answer.

As discussed above this construct is inherently racy.  We aren't going to adopt it.


[Event Hubs Client] AMQP Translation for Full Message

Summary
The focus of these changes is to refactor the AmqpMessageConverter to perform translation based on the full AmqpAnnotatedMessage rather than the EventData projection, as had previously been done.
References and Related

Event Hubs: Extend EventData with AMQP Message Details (#20105)

/azp run net - eventhub - tests


Support for Append("title")

I believe Raphael doesn't support "title" but instead uses "text". Therefore calls such as the following will fail:
node.append("title")
  .text(function(d) { return d.name + "\n" + format(d.value); })

Simple workaround is to replace "title" with "text", but it's an inconsistency with D3.
node.append("text")
  .text(function(d) { return d.name + "\n" + format(d.value); })

I should add that the error is "Property 'title' of object # is not a function" within Raphael.fn.appendChild.

Hi there,
This project is no longer being maintained so this issue is being closed. Thank you for using r2d3 and taking the time to report this issue.


Remove unused Vm.lookup_by_path method

Cannot find any callers of lookup_by_path nor of its deprecated alias find_by_path

@miq-bot cross-repo-tests manageiq-providers-vmware

Just to be safe :)

Cross repo tests are green and I can't find any references to these either, :+1:


How to get the count?

I'm trying to work with o.js in an Angular App and rand into a problem. I can't figure out how to only get the count returned.
Here is a sample of what I have tried:
this.odata = o(apiUrl, config);
this.odata.get('Buildings').query({$count: true, $top: 0});

If you only want to get the count you need to add it to the resource, as everything in the query parameter only gets attached to the URLSearchParams:
this.odata.get('Buildings/$count').query()


Preliminary support for Widgets with Native Notebooks (using new Push Model)

For #5586
FYI - More complex widgets are still broken due to upstream bugs in VS Code.

How does that work when the new editor opens? Is that why you have to resend all the messages?

Only sendinng 2 messages. Disabled sending all messages (we can do that later).

Codecov Report

Merging #5615 (95f360c) into main (f4b5352) will decrease coverage by 0%.
The diff coverage is 50%.

:exclamation: Current head 95f360c differs from pull request most recent head dcad57c. Consider uploading reports for the commit dcad57c to get more accurate results

@@          Coverage Diff           @@
##            main   #5615    +/-   ##
======================================
- Coverage     68%     68%    -1%
======================================
  Files        401     401
  Lines      26708   26727    +19
  Branches    3895    3897     +2
======================================
- Hits       18395   18291   -104
- Misses      6798    6926   +128
+ Partials    1515    1510     -5

Impacted Files
Coverage Δ

src/client/datascience/notebook/types.ts
100% <ø> (ø)

...t/datascience/notebook/vscodeNotebookController.ts
33% <28%> (-2%)
:arrow_down:

.../datascience/notebook/notebookControllerManager.ts
67% <75%> (-1%)
:arrow_down:

src/client/datascience/serviceRegistry.ts
97% <100%> (+<1%)
:arrow_up:

src/client/logging/_global.ts
76% <100%> (+<1%)
:arrow_up:

src/client/common/utils/serializers.ts
8% <0%> (-21%)
:arrow_down:

src/client/datascience/kernel-launcher/types.ts
48% <0%> (-8%)
:arrow_down:

...lient/datascience/kernel-launcher/kernelProcess.ts
63% <0%> (-8%)
:arrow_down:

src/client/common/net/httpClient.ts
72% <0%> (-8%)
:arrow_down:

src/client/datascience/raw-kernel/rawSocket.ts
78% <0%> (-7%)
:arrow_down:

... and 16 more


Doesn't train actually.

Many thanks for great opensource implementation of the semantic segmentation in pytorch ever!
I'm trying to proceed through training 'segnet' model on 'pascal' dataset.
What I've done:

installed pytorch: 0.2.0_4 and python: 2.7.13
downloaded VOCtrainval_11-May-2012.tar from http://host.robots.ox.ac.uk/pascal/VOC/voc2012/#Development Kit
downloaded "Semantic Boundaries Dataset and Benchmark" from http://home.bharathh.info/pubs/codes/SBD/download.html
as stated in Readme, extracted and pointed to them in config.json file
started training process

started visdom server

python -m visdom.server

started training as:
python train.py --arch segnet --dataset pascal

training successfully started and going looks well:

after completion, generated 100 segnet_pascal_1_%2d.pkl files

So, after that I'm trying to test newly trained model on the simple pictures:

python test.py --model_path segnet_pascal_1_99.pkl --dataset pascal --img_path 2007_000033.jpg --out_path result_33.jpg

But result is quite wrong:

for some reasons, output resolution differ and segmentation was not produced correctly.
Could you please give me some advises what I'm doing wrong?

Many thanks,
Ivan

In addition, trained FCN8S,

Refer #20 , Try training fcn-8s without polynomial learning rate. Should work fine.

@meetshah1995  trained SEGNET with disabled polynomial learning rate (commented out two lines):
iter = len(trainloader)*epoch + i
poly_lr_scheduler(optimizer, args.l_rate, iter)

as well I had to change here like this:
rgb = np.zeros((temp.shape[1], temp.shape[2], 3))

It may be because I'm using python3, or because you previously made a conversion NHWC -> NCWH. I don't know.
So, now I'm waiting util fcn-8s get trained to see results without polynomial learning rate.

At least fcn-8s got trained. It took approximately 3 day on nvidia 1080.

hi， why does your results looks much worse than the  examples?

hi, @chichivica if you want to train SegNet, you should set batch_size and l_rate, because of the BN layer. For example , you can set batch_size=16 and l_rate=1e-4.

I am getting the same (bad) results as @chichivica, with SegNet, even with the settings @HelloAlone suggested. My GTX1080Ti just could not handle a batch size of 16, so I used a batch size of 14 instead.
Also, the noise on my training curves increases significantly over time.

@chichivica @Galto2000
Thank you for your analysis.
I meet the same problem.
Have you finally trained the SegNet network successfully?
or Is there any other better SegNet implementation based on pytorch?


Sonos players disappear from the player section

What version of Music Assistant has the issue?
MA2 Beta 7
The problem
Sonos native players do not show up in the bottom-right player section of the UI. It seems to only affect Sonos players that are part of a larger group, e.g. two Sonos Ones in a stereo pair or an Arc + surrounds + sub. The individual uPNP and DLNA players for those speakers DO show up.
How to reproduce
NA
Relevant log output
N/A
Additional information
No response
What version of Home Assistant Core are your running
NA
What type of installation are you running?
Home Assistant OS
On what type of hardware are you running?
Alternative

They appear as "+3" and "+1" in my player list:

fixed in beta16


Automatically Save and Restore Window Positions on Sleep/Resume

Summary of the new feature/enhancement

Proposed technical implementation details (optional)
Some types of HDMI monitors, and pretty much any DisplayPort monitor will be "disconnected" from the computer when powered off or entering sleep mode. This causes Windows to do a full display re-detection on sleep and resume, which has the nasty side effect of making all open application windows shuffle around. When returning to your computer, all of your carefully placed windows are now in random spots.
PowerToys should save the state of the window positions before the system sleeps, and restore them when it wakes up

Seems very similar to (and would be fixed by) this earlier ticket https://github.com/microsoft/PowerToys/issues/261

tracking as part of #261


Is there any way to ignore specified Controller or Action?

We have a ASP.NET MVC 4 site which is developed by other people and this is the background. Now we had integrated it with dotnet-cas-client and it works ! But we found this client will block Web API, because people had wrote lots of Web API in a ASP.NET MVC 4 project. So my question is how to ignore specified Controller or Action, I had try to a fix the lifetime of IHttpModule, but it doesn't works. Can you kindly give me some advices?

I'm not sure where you are sticking your [Authorize] attributes, but you can sprinkle them individually on only the Controllers and/or Actions you want to put them on.  The Authorize attribute triggers the authentication.  So if you take this granular approach instead of application-wide, the authorization would only happen on the things you applied the Authorize attribute to.  Then, if a specific Action doesn't have it and also the parent Controller doesn't, then that specific Action would have no authentication.

It's one of those things where like I don't see your code and your situation so I really can't help that much.  It's like poking around in the dark for something.  ¯\_(ツ)_/¯

Like I said, I have no clue what "thing" you inherited from those outsourced consultants and if my experience tells me anything... I feel bad for you and your team deal with it.
You could also try looking at using the AllowAnonymous attribute on the specific controllers/actions you are looking to not trigger authentication on: https://docs.microsoft.com/en-us/aspnet/web-api/overview/security/authentication-and-authorization-in-aspnet-web-api

Someone wrote a blog article about it too: https://www.davidhayden.me/blog/asp.net-mvc-4-allowanonymous-attribute-and-authorize-attribute
I'm going to close the issue.  If you feel like you have anymore input just comment on this same issue.

I had try to add [AllowAnonymous] on Controllers or Actions. I also try to overwrite the [Authorize] to ignore some url pattern.
But all of this can't works, becase I have a configuration as following:
<authentication mode="Forms">
      <forms loginUrl="http://issosit.ysyec.com/isso/login" timeout="30" defaultUrl="~/Home/Index.cshtml" cookieless="UseCookies" slidingExpiration="true" path="/"/>
    </authentication>
    <authorization>
      <deny users="?"/>
      <allow users="*"/>
    </authorization>

Just drop the <deny users="?"/>, so it is my wrong. Thansk for your help!


suckless commits, optimisation changes, and cleanup

this pull brings in the latest suckless commits, strips out references to bsd and solaris, removes the dist, and opts for -flto in the optimisation settings and includes the -Wno-unused-function flag in the CFLAGS. this flag suppresses warnings about unused functions, thereby eliminating dead code.

Done in:

feda88b
4a93e0a

Warnings shouldn't be necessary in release builds.


Official breaking changes from material-web-components

https://github.com/material-components/material-components-web/pull/504
https://github.com/material-components/material-components-web/pull/504/commits/5b5ea952ebf4cb76abce2f4533e4daaa2292b72f

Hey, thanks a lot! I'll take a look

Hey, thanks a lot! I'll take a look

Codecov Report

Merging #218 into master will decrease coverage by 0.56%.
The diff coverage is 33.33%.

@@            Coverage Diff             @@
##           master     #218      +/-   ##
==========================================
- Coverage   96.31%   95.75%   -0.57%
==========================================
  Files          25       25
  Lines         163      165       +2
  Branches       10       10
==========================================
+ Hits          157      158       +1
- Misses          5        6       +1
  Partials        1        1

Impacted Files
Coverage Δ

src/Dialog/Dialog.vue
85.18% <33.33%> (-2.82%)
:arrow_down:

Continue to review full report at Codecov.

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


Idea: on/off light

Hi,
Seeing this is done in js makes me want to try my first attempt with Raspberry Pi. As beginner, it may great to start with something simple as controlling the light through the app. A ref from the hacker news about the device which can be used.
Also it would be great to see the make/models you used for led strip, and other controlling devices.
thanks.
bsr.

wiradikusuma 34 minutes ago [-]
anyone know good but cheap WiFi/Bluetooth-enabled adapter(?) for lightbulbs? e.g. so I can use any machine (not just Pi) that supports WiFi/Bluetooth to control (at least on/off) the bulb.
so: wall --> adapter --> lightbulb
reply
luma 25 minutes ago [-]
The Sonoff is a $5 WiFi relay with an embedded ESP8266 that is programmable via Arduino (and several other dev platforms), allowing you to control the relay via HTTP/REST/MQTT/etc.
https://www.itead.cc/sonoff-wifi-wireless-switch.html

RF 433/315 support would be a great addition

Idea 1.: We can introduce a face recognition system and a database, which would identify who's at the doorstep and would automatically inform the household family about his coming. If someone unknown, when the system would capture his face, and his name for future use.
Follow up: A small variation of this idea can also pave the way for an anti-burglar system. If a person, who doesn't belong to the household currently, enters a room would set off an alarm.
Requirements: Small monitoring camera at the doorstep and a addressing system inside the household.
Technology: A simple facial recognition algorithm which would capture and store the face of an incoming person. The same algorithm would be used to compare two faces so as to identify who's coming in.
Idea 2.: We can also introduce another system which turns on the light as soon as someone enters the room, and turns it off after 15 seconds of emptiness of the room.
Follow up: A slight modification of the idea above can be used to turn off the fans, lights, A/C  when nobody's at home. It can also be used to turn off the fridge if no food is there inside.
Requirements: A heat or thermal sensor which is going to sense the presence of a living being inside the room
Technology: A small program which is going to read what kind of reading the sensor is returning. Any indication of a living being inside the room would turn the light of that room on. When the living being leaves, the light turns off after 1 minute.
Thanks,
Shankhanil


SqliteException(1299): NOT NULL constraint failed: runnings.group, constraint failed (code 1299)

I don't understand why and if always, but sometimes this happens:
A Table:
class Runnings extends Table {
  @override
  IntColumn get id => integer().autoIncrement()();
  BoolColumn get group => boolean().withDefault(const Constant(false))();
  IntColumn get count=> integer().withDefault(const Constant(0))();
}

A new Instance of an Entry of the table:
Running run = Running();
if I check run.group is null.
I insert it in db: no error.
int runId = await database.insertRunning(run)
I update my var with the id:
      run = run.copyWith(id: runId);
if I check run.group is null.
Now if I update run in db I get this error:
SqliteException(1299): NOT NULL constraint failed: runnings.group, constraint failed (code 1299)
I use the following options:
          write_from_json_string_constructor: true
          mutable_classes: true

  moor: ^3.4.0

dependency_overrides:
  analyzer: 0.40.5

dev_dependencies:
  moor_generator: ^3.4.0
  build_runner: 1.10.2

Shouldn't the correct behaviors to always create the Instance with the default values instead of when the row is inserted in db?
Because otherwise how can I get the corrected row, I have to query a row that just inserted?

TL,DR: Always use companions to represent partial rows.
This is working as intended here. When you use withDefault, that value will only be applied when you insert values into the database, it's not reflected in the Dart data class.
Also, null in a data class can have two different meanings for inserts or update. It could mean "this field was set to null, so please also set it to null in the database" or "this field was set to null, so please use the default value / don't write the field at all". For inserts and updates on data classes, we chose the second interpretation and for replace we chose the first. This exists mostly for backwards compatibility, moor also generates "companions" which don't have this problem.
This has always been a problem, but it will get worse when we introduce null safety. Clearly, Running.id should be a non-nullable field since its non-nullable in the database. But we can't set that value in Dart since we only know the id after an insert. You'll notice that the column is @required now, so you might get a static hint. After null safety, it will be a compile time error to instantiate Running() without an id.
For this reason, you should always use companions to represent partial rows (pretty much all rows you don't get via a select`). For instance, you could use
// the .insert() constructor has @required parameters for columns that really are required for
// an insert. In your case, none.
var run = RunningsCompanion.insert();
int runId = await database.insertRunning(run);

run = run.copyWith(id: Value(runId));
// Can update, but that wouldn't do anything in this calse.

Btw: You can use Insertable<Running> as a type to allow both the data class and companions.

I strongly disagree.

The Dart Data Class should be generated with the default value used in the table.
There is no downfall, it eliminates eventual errors and gives you complete control over the default value. (like accessing the default value from anywhere and have to declare it only once in the table)

Any updates should check if nullable is supported and replace it with the default.
Since a field does not support nullable, why allow to null it? You should use flags to define changed fields OR the Value(null) only when you want to specify no updates to the field. Not for null assignments, because null assignments should directly assign null or the default value to the row.
So,
at the moment of the assignment to null: run.group = null; it should run.group = false;
OR
at the moment of the update into the table, the null values (not Value(null) that to me are emptiness) should be replaced with the default ones. This is the job that I would expect from the generated moor class.

Companions should be removed
Companions could and should be removed from the front use.

Please don't close and allow discussion

The Dart Data Class should be generated with the default value used in the table.

That's not unreasonable, but we can't know all values from Dart: An autoIncrement() is essentially a default value, but we can't query it before the insert. Defaults like currentDateAndTime are similar: They reflect the time of insertion, which we don't know when the object is created.

Any updates should check if nullable is supported and replace it with the default.

Okay, but let's say that we had a nullable field
class Foo extends Table {
  IntColumn get id => integer().autoIncrement()();
  IntColumn get bar => integer().nullable().default(const Constant(42))();
}

Let's say I want to run this sql statement: UPDATE foo SET bar = null. How would I write that in Dart with the behavior you describe? Having a different behavior for nullable and non-nullable columns would be confusing to the user IMO: If you later change a non-nullable column to be nullable, you get very hard to spot problems in your code because the behavior just changed behind the scenes.
Another example: Let's say that I change the default of group from false to true, but I only want to do that for new rows. When I do update(Running(count: 1)), I want moor to run UPDATE runnings SET count = 1. With the behavior you suggest, it would run UPDATE runnings SET count = 1, group = true which would replace the default for existing rows.

So, at the moment of the assignment to null: run.group = null; it should run.group = false;

If the group setter accepts null, Dart 2.12 will enforce the group getter to be nullable too. That's clearly not what we'd want, since group is supposed to be non-nullable.

Companions should be removed

Companions solve the problem that a full row and a partial row need different data structures.  I don't see how your suggested changes make companions obsolete.

Please don't close and allow discussion

Sorry, I interpreted your issue as a question.

Autoincrement values should be excluded, in fact, assign the id after the insertion is completely reasonable.
Just proposing on top of my head,
I would generate a static final Map in the Foo class, that says which field can be nullable and which couldn't, and a static final class with the default value.
The Instances instead generate a class with a Map of the changed variables.
class Foo extends Table {
  IntColumn get id => integer().autoIncrement()();
  IntColumn get bar => integer().nullable().default(const Constant(null))();
  IntColumn get bas => integer().default(const Constant(42))();
  IntColumn get cuz => integer()();
}

so If I call
Foo foo = Foo(cuz: 1);
// then foo.changed['cuz'] == true //  all the other are false.
// also the other variables with a default values will get it. foo.bar == null; foo.bas == 42;

// if I do:
foo.bas = 20;
// then foo.changed['bas '] == true //  all the other changed except cuz are always to false.

// Now if I run insert(foo) I won't need the changed map, all the values are already set.

// if I run update(foo), it will update only the var with changed == true

// if I set any var to null
foo.bar = null;
// it will:
if(bar nullable)
  bar = null
else
  if(bar has a default value)
     bar = default
  else
     error: you are setting a non nullable field to null!
anyway:
 changed['bar'] = true;

// An update could be written:
.write(foo(bar: 1))
// since it has only changed['foo'] == true
// or if you know how, even remove the need of foo() inside and just write(bar:1)

// For example, I would love to have only a select query and use the write directly in my code.
await db.SelectNiceFoo(...).write(bar: 1);
// I would expand the same reasoning to the selects functions
// to reduce the boilerplate when possible like db.foo.select(id: 1).write(bar: 1); but maybe another time

I know I am making an example with many changes all at once.
I am not sure companions are needed in other parts but with this example, it isn't.
I would anyway limit the need of the companions as much as possible since it is counterintuitive.

I forgot to mention that you can use Value(null)  as default value for all in the constructor.
So you can know in the initialization which value has been set to null, and which are not been initialized Value(null)

I was thinking about this right now. It will be aweasome if we can see the default values in dataclasses before insertion

The Instances instead has a Map of the changed variables.

Data classes and companions were designed to be immutable. We generate mutable classes for users that prefer them, but I'm not interested in adding first-class library support for mutable data classes. The much more common scenario is to use companions for inserts.

It will be awesome if we can see the default values in dataclasses before insertion

What would you be using this for? This would be tough for nullable columns with default values, since then we don't know if null should be the default or NULL.

What would you be using this for?

That way I can keep the default values in only one place, and work with that values to finally generate the rest of the class and send that to the database.

This would be tough for nullable columns with default values, since then we don't know if null should be the default or NULL.

Maybe we can add the option to select if we prefer the defaults over nulls, or if it's not possible, maybe add the default values in a static member of the dataclass to be able to use it from the code.

Data classes and companions were designed to be immutable. We generate mutable classes for users that prefer them, but I'm not interested in adding first-class library support for mutable data classes. The much more common scenario is to use companions for inserts.

I think mutable gives you a nicer control and avoids having to use copyWith every time that does make a whole copy every time.
I don't see any pro to have the variable immutables. I don't think developers need protection from making the mistake of changing the values.

What would you be using this for? This would be tough for nullable columns with default values, since then we don't know if null should be the default or NULL.

It would give you the assurance that what you have is the effective row that is going to be recorded in the database with already all the default values. You can check without having to retrieve it again and edit and updating it. (the main problem why I opened this issue)
If the field is nullable, then = null will assign null independently from the default value.  If you don't like that it is possible to assign the default value by giving a null assignment because could be misinterpretable, maybe just a method toDefault() for the field, so it will be clearer the intent.


GLFW windows cannot be created as invisible

Summary of the PR
When using the default GLFW backend, setting the window option IsVisible to true will be without effect. It seems, that this is due to the logic in GlfwWindow.GCoreInitialize that sets the core window state after hiding the window. This leads to calls such as Glfw.RestoreWindow which subsequently unhides the window again.
This PR naively prevents GlfwWindow.CoreWindowState from being set when the window should be hidden which leads to the desired outcome.
Reproduction steps

Check out Silk.net on the main branch. Tested with 4dd24efed9eeb416268d9634ed5a3bb9ddf58ff9
Open Silk.net.sln and set the ImGui project as startup project
Replace the line
            using var window = Window.Create(WindowOptions.Default);
with

            var wndOptions = WindowOptions.Default;
            wndOptions.IsVisible = false;
            using var window = Window.Create(wndOptions);

Run the program. Observe: the window is still shown.

Thanks so much for your contributions over the past couple of days, it really means a lot :)

Sure, I'm glad I could help :)


Implement Webpack DLL plugin for faster builds

Just spotted this issue and it raised an eyebrow. Would it be more astute to eat the pain rather than getting so low-level? I've made the suggestion in the past Webpack is an Achilles‘ Heel.

@jhabdas it seems your argument is that using Webpack is bad because of how long it takes to get it set up? Well in this case it’s built already and it adds several features already. There’s no need to put more time to try and get the same features in rollup.

Hello @dav-is & @jhabdas I really appreciate the discussion. I stumbled upon a discussion here @ https://stackoverflow.com/questions/43219030/what-is-flat-bundling-and-why-is-rollup-better-at-this-than-webpack
The DLL is not a go yet, and I am open to switch bundling if its worth it. Just need few reviews and explanations.
Your inputs are always invaluable. Thanks again.

The point made in one of those responses that I agre with fully is that rollup is better for libraries while Webpack is better for apps.

Sorry if linking to my post muddled my intention. Idea is to not use a DLL to improve the speed of webpack, but instead to let Webpack be slow so other options are more enticing. As @tirthbodawala points out this feature is not yet implemented.
WRT using one tool over another Rich Harris, dude who created Rollup, suggests using rollup for libs and webpack for apps as @dav-is suggested (lmk if you'd like the resource). The reason I'm against Webpack is more for keeping things simple whenever possible. 😅

Thanks @jhabdas.
So you mean its better not to use DLL plugin at all and let it stay as it is, cause it gives more functionality and flexibility ?
Also do you have better solution for our problems of code-splitting and SSR, Instead of webpack? if yes I am reading your replies :)
At the end, what I want is a great framework for everyone with speed and usability. Don't want to slow down anyone.
Thanks guys for your Contributions.

I've lost a little bit of my pulse on the react space recently, but if I run across something I'll be sure to mention it. The reason I lifted the eyebrow was more because I saw the term DLL (which I associate with Windows-only) and less about optimizing performance. If it feels good do it.  You can always pull stuff later. Sorry for deliberating without a more complete picture—it's the ENTP talking more than anything else.
Love love love this kit. Can you do a Marko one next? 😺

@jhabdas Sure ill give it a try. Also we are writing a docs site for this boilerplate.
https://www.reactpwa.com. Do share your inputs. they are very valuable :)

Just a couple of quick feedback items. You'll probably get some pretty good mileage creating a docs site using the following GH-pages compatible template (which includes a search feature):
Also, to sell the pill here are two resources which may help, one is mine:
https://julian.is/article/progressive-web-apps/
https://habd.as/telltale-signs-your-react-app-isnt-seo-friendly/
If you can make even a half-assed logo or mascot you'll see more rapid adoption.

That is very very helpful @jhabdas. Noted everything and going in the direction mentioned. Thanks again for your valuable time.

@jhabdas We have dropped the idea to upgrade to webpack-dll. It not necessary as of now, shall re-open the issue if demanded by many others.
Thanks @jhabdas and @dav-is for your inputs.


Encoding issue while building geotrellis

I encountered this issue while running the geotrellis install.sh script. Here is the output log:
``[info] Compiling 2 Scala sources to /data/geotrellis/util/target/scala-2.10/classes...
[error] /data/geotrellis/proj4/src/main/java/org/osgeo/proj4j/util/PolarCoordinate.java:18:  error: unmappable character for encoding ASCII
[error]         return String.format("<??%f, ??%f>", lam, phi);
[error]                                ^
[error] /data/geotrellis/proj4/src/main/java/org/osgeo/proj4j/util/PolarCoordinate.java:18:  error: unmappable character for encoding ASCII
[error]         return String.format("<??%f, ??%f>", lam, phi);
[error]                                 ^
[error] /data/geotrellis/proj4/src/main/java/org/osgeo/proj4j/util/PolarCoordinate.java:18:  error: unmappable character for encoding ASCII
[error]         return String.format("<??%f, ??%f>", lam, phi);
[error]                                      ^
[error] /data/geotrellis/proj4/src/main/java/org/osgeo/proj4j/util/PolarCoordinate.java:18:  error: unmappable character for encoding ASCII
[error]         return String.format("<??%f, ??%f>", lam, phi);
[error]                                       ^
[error] (proj4/compile:compileIncremental) javac returned nonzero exit code
[error] Total time: 36 s, completed Mar 22, 2016 10:55:55 AM

Probably that was caused by a not stable GeoTrellis master branch, reopen this issue if you still have these errors, and provide more information about how you start environment. NOTE: be sure that you pulled down newest docker images from the docker hub.

Fixed #8dbfe4e148e95b4270e403da1b5a773e62a20856


Wrap HttpExchange, HttpHandler classes to avoid 'access restriction' warning

To avoid having to modify Eclipse's project settings for every client that uses this library, let's wrap the offending classes.

Hmmm.... this is unnecessarily complicating things.


Support item attributes in any order

Uses a tt-muncher so that the item's attributes are not restricted to be in a specific order. Multiple #[project]/#[project_ref]/#[project_replace] attributes will fail to compile unless there is a #[project]/#[project_ref]/#[project_replace] attribute in scope.

Published in  0.2.6.


Using managed identities for connection to Redis

Hello,
I would like to use managed identity to connect to Azure Cache Redis. Currently all the samples I find seem to use a storage account. We have a current configuration that has a secret in a keyvault with the connection string.
It seems our code would be more secure if we can get rid of connection strings and use managed identities. Is there a sample on how to do this? Or is it not achievable this way?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 35c80a11-1c37-ce38-8681-c20253539b1b
Version Independent ID: 8fdaaac0-ec05-0fd8-261d-6876ead226d0
Content: Managed Identity - Azure Cache for Redis
Content Source: articles/azure-cache-for-redis/cache-managed-identity.md
Service: cache
GitHub Login: @flang-msft
Microsoft Alias: franlanglois

Hi @RaymondBorbon Thanks for your findings, We will investigate and update as appropriate

I'm assigning this to the author for the feedback review

@RaymondBorbon Thanks for the feedback! It helps us understand what we have, and we don't have. This functionality
to "get rid of connnnection strings and use managed identities" is not available at this time. To answer your question directly,
it is not achievable this way.
It is something we’re actively looking into. Stay tuned. When it becomes available, we will note that in What's New.
If you have any other questions, please let us know. I will close this issue in about 3 days.

Just keeping my ear to the ground

@flang-msft Is this feature on the roadmap?

@k-krupka - The ability to use managed identities for connecting to Azure Cache for Redis is actively being worked on. However, it is too early to provide any release timelines. Thanks for your inquiry.

Looking forward to this feature! It will streamline so much.

Is there any news on this please?

https://azure.microsoft.com/en-us/updates/public-preview-active-georeplication-in-enterprise-tiers-for-azure-cache-for-redis/

We're getting closer :) We're hoping to have a public preview in 1-2 months.

Is this what the new "(PREVIEW) Data Access Configuration" is for on the Azure Cache for Redis blades in the portal? All of the "Learn More" links for configuring access polices and identity connection direct to the what's new page which doesn't have any of the actual details...

It's in Preview now: https://learn.microsoft.com/en-us/azure/azure-cache-for-redis/cache-whats-new
https://learn.microsoft.com/en-us/azure/azure-cache-for-redis/cache-azure-active-directory-for-authentication
Note: The updates to Azure Cache for Redis that enable Azure Active Directory for authentication are available only in East US region.

Update: Now in GA! https://learn.microsoft.com/en-us/azure/azure-cache-for-redis/cache-whats-new

I am facing same issue. Did you find any solution?

When using Entra ID authentication, your application has to use it's EntraID Identity to obtain a token from Entra ID.
Then the token is used as password but you can't just do it once, because the token expires after like 1 hour.
Usually you let a library handle all that.
Have a look at client libraries in the documentation:
https://learn.microsoft.com/en-us/azure/azure-cache-for-redis/cache-azure-active-directory-for-authentication#client-library-support


Verify public release distributions

We had some hiccups in EA3, likely around the merging of the marklogic/data-movement project into this one. Let’s make sure our i's are dotted and t's crossed as we ramp up for GA.

Compiled code

using maven
using gradle

JavaDoc
Source code
“Just works” in Eclipse and IntelliJ smoke test

Verified that we can download the jars from ML maven


Add a user-friendly diagnostic for compute-checksum command.

Starting as a draft while I build and verify locally that this works as expected and doesn't break anything else.

That's a fantastic idea! Did you want me to change my commit or did you want to open a separate PR and I'll close this one? (only because I'd be deleting my lines and copying yours). I'm good with either, thanks!

@ryanwilson You should make the change and update this PR 😄. Please also add a corresponding unit test for it. Let us know if you need help figuring how to write a unit test for this change.

@hartbit @aciidb0mb3r I modified the existing test that was expecting a diagnostic to pass, but not sure if you wanted me to add another one explicitly or not.
If so, I was thinking of:

Modifying MockArchiver to be able to pass in a Set<String> to override the supportedExtensions (using a default argument of ["zip"]
Adding a test (likely in WorkspaceTests.swift?) below that uses a custom MockArchiver with multiple supported extensions, testing both ones that match and ones that do not.

I just realized now though: expecting the exact string may be an issue since supportedExtensions is a Set, meaning the order isn't necessarily guaranteed (or if it is, that's an implementation detail). Should I change the implementation to alphabetize the Set first before listing it?

LGTM!I wouldn't bother to generate the supported extensions list in the test: I would just test against the diagnostic for have now (with zip). We can always update the text if and when we end up adding more extensions.

@swift-ci smoke test

Added some more tests for a valid filepath but no file exists, as well as a valid filepath but it's a directory. Happy to refactor or remove some of the tests if desired 🙂

@swift-ci smoke test

Happy to help! Noticed another test failing in a different dir (sorry for not testing it...). Should be fixed now I think.

@swift-ci smoke test

@ryanwilson can you have a look at the test failures? Thanks

Ahh I misinterpreted what the test failure was. I added a .zip file of the
.xcframework in Fixtures/BinaryTargets and test that zip instead of the Markdown file. The zip file was created with zip -r MyFwk.zip MyFwk.xcframework.
Thanks, all is passing locally for me 👍

@swift-ci smoke test

Thanks @hartbit and @aciidb0mb3r for the reviews and helping me get this merged 😄


Some links on /people result in a whale shark

From: https://forum.inaturalist.org/t/whaleshark-when-clicking-on-observations-in-leaderboards/16493
Clicking on "observations" or "identifications" below any user on https://www.inaturalist.org/people results in a whale shark.
Clicking on "observations" on a page like https://www.inaturalist.org/people/leaderboard/2020/7 results in a whale shark.
However, choosing a single day (eg https://www.inaturalist.org/observations?on=2020-07-04&user_id=alexis_orion) works.

I can start looking into this @tiwane. Maybe something with the params, do you have an example of one that works?

I think on= now only works with exact dates, so instead of being on=2020 or on=2020-09, it'd need to be year=2020 and year=2020&month=9.

Thanks! I'll start looking into it.

Hey @kueda, when picking this up I thought it would be a simple date parsing issue with the params, but it looks like after shifting from by_login to index with user_id param, it works significantly different.
While I've dug around a little bit and come up with some solutions for making OpenGraph work with partial iso8601 strings, (a year or month of obs), the best approach to the issue I believe needs some Angular knowledge, of which I lack. While I could keep poking at it, since this bug is now affecting many links from 5a3567bc383cb454890e08111370f528bee86dd3, I'd hate to hold up a solution.
If you have an approach in mind, I'd be glad to put it in place, otherwise I think I'll defer the issue to the experts.

the best approach to the issue I believe needs some Angular knowledge

By this do you mean that the UI at, say, https://www.inaturalist.org/observations?on=2015-09, should show the user that they are viewing observations from September 2019? I wouldn't worry about that. For one thing, as long as params[:on] is set to something like 2015-09, the "Exact Date" field should get populated with 2015-09. On top of that, this kind of date filtering is pretty niche, so if the UI doesn't perfectly reflect the state of the search, I don't think that's a huge deal.
IMO, the priorities here are

A spec to ensure that these kinds of date params don't cause obs/index to crash
A fairly aggressive begin / rescue block to prevent any code exclusively dedicated to figuring out values for Open Graph from interfering with the primary purpose of showing observations
Translating these kinds of date ranges into reasonable Open Graph values, or, if that's too hard, just omitting the date info from Open Graph values in these cases.

I can start putting something together that rescues any exceptions around OG data generation, however I'm not even sure that index can currently handle partial iso8601 strings. That seems to be baked into the by_login action in a way I'm having trouble easily moving over to index. That's because while by_login queries AR for and sets @observations, index seemingly doesn't. I think instead it hits the API via Angular (though I haven't looked to deep into that)

Again, I wouldn't worry about any of the obs query / retrieval logic. Yes, the obs/index action in ObservationsController does not actually do any query / retrieval and leaves that to the Angular UI, but I'm pretty sure that UI will handle on params like 2015-09. If it doesn't that's a separate problem.


documentation

Hi I dont understand exactly what the program is doing. Can you give some kind of explenation.
For example risk in % means the amount of capital used?

https://www.youtube.com/watch?v=ofwtsc20hOY&t=3s
watch this youtube video to understand risk management. Then you will
understand what risk in % means.
On Tue, Oct 8, 2019 at 4:31 PM benw<EMAIL_ADDRESS>wrote:

Hi I dont understand exactly what the program is doing. Can you give some
kind of explenation.
For example risk in % means the amount of capital used?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ghazni101/BMX-Pos-Calc-Python-based/issues/1?email_source=notifications&email_token=AAXULIXYTCSZAJI2Z4EIO2DQNRSAVA5CNFSM4I6QG5MKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HQKBZ5A,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXULISUWO4FLFMPW4ANDK3QNRSAVANCNFSM4I6QG5MA
.


Headers are not generated/added correctly

Header parameters specified in the API files have several issues, including:

Binary headers won't be converted properly
Header names don't appear to be included

These should be tested more thoroughly, too.

Closing this in lieu of #86 since there is a test that references it.


Enabling a feature for everyone should clean up old gate records in AR adapter

I'm not sure if this is adapter specific or not, but say I've created a heap of gate records for specific customers:
flipper[:feature].enable(customer_1)
flipper[:feature].enable(customer_2)
flipper[:feature].enable(customer_3)

I then enable for all:
flipper[:feature].enable

I would expect this to "clean up" all the old customer records, but it doesn't. Now, on each feature load all 4 gates will be loaded, despite the fact that the last one makes the first three redundant.
Of course, the performance isn't any worse than you originally had, but if you realise that you've created too many gates then enabling for everyone seems like it should fix it for you. Also, just feels gross to leave around redundant gates.
A workaround is:
  ActiveRecord::Base.transaction do
    flipper[key].disable # Warning: this issues a `DELETE` per gate, so may take a long time.
    flipper[key].enable
  end

I'm happy to investigate a patch for this if you think it sounds reasonable? Let me know.

hrmm, something fishy might be going on. Inspecting the code, it appears to be already trying to do this: https://github.com/jnunemaker/flipper/blob/master/lib/flipper/adapters/active_record.rb#L125

I think the current behaviour is desirable. Say you want to enable it for everyone, but then have to roll back for some reason. Currently it will be a step back to where you were previously. If it were to tidy up aggressively then it would end up being enabled for no-one and you'd have to remember it was customer 1, 2, and 3 (per your example) that it was enabled for.

I hadn't considered the rollback scenario, and I think I agree with you about that being desirable. However, the current API doesn't allow for it I don't think - you'd have to monkey around with private APIs. If you do a boolean enable! followed by a disable! it won't rollback - it will delete all gates!

First, the intention is definitely to clear everything once enable or disable happens. The reason is that hitting disable and having it reverting back to the previously enabled things would be confusing. Imagine you enable customers 1, 2 and 3. Then you hit fully enable to turn it on for everyone. Then something is wrong so you hit fully disable. The code intends to have nothing enabled at this point. If the code reverted to customers 1, 2 and 3 being enabled, that would be confusing (BUT I HIT DISABLE BECAUSE STUFF IS HITTING THE FAN PLEASE NO :)).
If you aren't seeing this behavior, then I'm confused. I used a transaction on the active record adapter so outside of a race (which seems unlikely for enable/disable as they shouldn't be happening very often simultaneously, things should be getting cleaned up.
@xaviershay can you get a failing test or spec for this or an example gist? Something I can execute would be really helpful. Also, what versions of flipper/flipper-active_record are you using (just to double check)?

yeah I'll poke around and figure out what's going on! Going to close and assume it's something weird in my env, will re-open if I discover otherwise.

@jnunemaker I think this should be reopened. This is also happening with percentage rollouts. Steps to reproduce:

Enable a feature for X% of users (eg. 50%).
Click to "Enable" for everyone

You'd expect the 50% gate to be cleared, but it's not.

@yjukaku thanks! I'll take a peak.


HH Address not created when a Contact is updated to create a new Household Account

steps to reproduce:

create a new contact with mailing fields filled in, whose account is an org account.
update the contact to clear the org account.
save

result:

new household account created

problems:

contact mailing address fields cleared
no default Address object for the household created

This bug may have been introduced by my fix to #1448, which deferred copying the contact's mailing fields to the account being created, because we assumed it would get handled by ADDR_Contact_TDTM.

**lurch: add

Tracking W-008832

Included in beta release version 3.58 (Beta 1) and higher

Included in production release version 3.58


RFC: webpack init

Do you want to request a feature or report a bug?
Feature

What is the current behavior?
Currently every time I start a new project I have to visit webpack's website to get the starting template for webpack. It's not an exactly big template:
module.exports = {
  entry: './app.js',
  output: {
    filename: 'bundle.js'
  }
}

But it would be nice with a webpack init just to create this file.
If the current behavior is a bug, please provide the steps to reproduce.
No

What is the expected behavior?
If this is a feature request, what is motivation or use case for changing the behavior?
It would make my life a bit easier not having to google this everytime,
even better, as most projects probably use babel the webpack init command could ask if you want to use babel, add it to package.json and create a config file for me with that already set up.
I also think this would make it a lot easier for new users coming to pick it up.
They won't have to get too buried in config options and could be up and running in seconds.
Just the following and you're ready to code:
npm init
npm i --save-dev webpack
webpack init

Seems like I was unaware of webpack cli.


Enable quantification optimizations for scalar semantics

There's a bug exposed by this (@natecook1000 is looking at it). With that fix we should expect these kinds of improvements: (noting there's quite a bit of variability at present in runs)
- EmailLookahead_All_Scalar               26ms	66ms	-40.1ms		-60.7%
- EmailLookaheadNoMatches_All_Scalar      30.6ms	44.9ms	-14.3ms		-31.8%
- EmailLookaheadList_Scalar               5.7ms	18.1ms	-12.4ms		-68.5%
- EagarQuantWithTerminal_Whole_Scalar     789µs	4.73ms	-3.94ms		-83.3%
- IPv6Address_Scalar                      2.93ms	6.44ms	-3.52ms		-54.6%
- Lines_All_Scalar                        1.83ms	4.19ms	-2.36ms		-56.3%
- AnchoredNotFound_Whole_Scalar           6.74ms	8.87ms	-2.13ms		-24.0%
- GraphemeBreakNoCap_All_Scalar           3.73ms	5.84ms	-2.11ms		-36.1%

@swift-ci please test

Can you check on runZeroOrOneQuantify? It uses makeSavePoint, which hard codes isScalarSemantics: false instead of using isScalarSemantics.

That's actually a normal save point, not a range-based save point, so it's ok. (This is why it will be a really good idea to refactor the two out separately somehow)

@swift-ci please test

@swift-ci Please test

@swift-ci Please test

@swift-ci please test


Unable to find swagger components when developping locally

  --> /home/raulvt/Documents/BR/paperclip/plugins/actix-web/src/lib.rs:46:28
   |
46 | static SWAGGER_DIST: Dir = include_dir!("$CARGO_MANIFEST_DIR/swagger-ui/dist");

git submodule update --init --recursive
Solve the issue, maybe we can add this step into make prepare routine (?)

When I read "make prepare" I got quite confuse, I had forgotten that we have a makefile :)
Yes I think we can probably add that to the make prepare


Definition and basic properties of closed functions

This file describes closed function from E to EReal, where E is a TopologicalSpace and EReal is extended real number. It contains basic definitions and equivalence of lower semicontinuity and closedness.
Reference : https://en.wikipedia.org/wiki/Closed_convex_function

Thank you for your PR!
Can you generalize the codomain to an arbitrary type with a topology and a LE?
In the lemmas, maybe you can formulate some of them for a topological space with the order topology.
How do these definition relate to IsClosedMap ? Is this condition weaker?

@fpvandoorn Thanks for your comment!
I'll try to generalize the codomain soon.
Btw, could you explain "formulate some of them for a topological space with the order topology" in details? I'm a little confused.
For the 3rd point, I think there are no relations between IsClosedMap and closed function. For example, the Dirichlet function is a closed map but its epigraph is not closed. Also, considering a lower-semicontinuous but not continuous function(which is also a closed function), the image of a small close interval containing the discontinuous point is not closed.

Btw, could you explain "formulate some of them for a topological space with the order topology" in details? I'm a little confused.

I'm hoping some of your results hold when the codomain is a (linear?) order with the OrderTopology. Some results will probably require some additional conditions, like ConditionallyCompleteLattice or CompleteLattice.

(I've changed the label on this PR. Please change it back once you've incorporated or responded to all feedback so far.)

Thanks for all comments! I'll revise my pr.

I have rearrange the original file using List.TFAE to organize the equivalent properties of LowerSemicontinuous. Also, I tried to generalize my codomain from EReal to F. But I wonder whether I put too much additional conditions on F.
Btw, I haven't change the file name yet. Maybe it should be merged into https://leanprover-community.github.io/mathlib4_docs/Mathlib/Topology/Semicontinuous.html# rather than written individually.

I have merged these changes into Mathlib/Topology/Semicontinuous.lean. Is it suitable and correct?

It seems that something has gone wrong with the merge. Currently the diff involves thousands of lines of code...

It seems that something has gone wrong with the merge. Currently the diff involves thousands of lines of code...

I also found it :( So what should I do now? There are too many commits...

I rebased and force-pushed, which should fix it.
I can already see the correct diff here: https://github.com/leanprover-community/mathlib4/compare/ClosedFunction?expand=1
I hope that this PR will also show the correct diff, maybe the previous version is still in some cache somewhere.

I made a mistake, since I accidentally created a new branch closedFunction (no capital c). When I switched to this branch, just merging master fixes the issue here.

In order to move this PR forward, I directly pushed some commits to

Cleanup the existing proofs and statements
Remove the new file, since all(?) its results are now incorporated in the existing file
Add variants for upper-semicontinuity

@Blackfeather007 is this version okay for you to merge?

bors merge


Efficient mouseless functionality

Is your feature request related to a problem? Please describe.
I want to be able to exercise ameliorate's functionality without a mouse - both for accessibility, and for efficiency. Specifically, at least the following should be mouseless:

Add node
Edit node text
~Edit selection's score~ already done, type 0-9 or dash when selecting a part
View score's claim
Go back to problem mapping from claim view
Select node up/down/left/right of current selection
Select edge up/down/left/right of current selection

Note: most of these can be accomplished through Vimium's [fF]-to-click functionality, but that's not as smooth as directly having shortcuts for these (and requiring Vimium for accessibility is probably not ideal).
Describe the solution you'd like
VIM-mode sounds pretty awesome (e.g. "cc" to change node text, "cs" change score, "apj" add problem below, "" to enter VIM-mode). Perhaps more common hotkeys like ctrl-[char] would be good for non-vimmers too.
Describe alternatives you've considered
Additional context
Technical ideas
We already use react-hotkeys-hook, which seems decent enough for this

Some more thoughts:

j/k to navigate to nearest parent/child, h/l to navigate to nearest left/right node

how to navigate to edges? probably gj/gk
arrow keys easier to learn for newbies, but maybe worse when things like direction are needed elsewhere?

g[down]/g[up] seem not ideal
a[down]node-char/a[up]node-char seem not ideal
also they don't fit in the "[c]har that makes sense for char/vim-like command"

this should also work for navigating table cells

enter to focus selected node's input

if focused, enter to blur, shift + enter to add newline

shortcut to create parent/child

not sure what's best... possibly:

cp[node-type-char]/cc[node-type-char] for create parent/child

requires tracking a vim-like stack that can be escaped (and esc to deselect would have to be not possible unless nothing in vim-stack)

probably would want to add visuals to indicate what can be pressed, when the current stack is, option to turn off

cj[node-type-char]/ck[node-type-char] for create [direction]
aj[node-type-char]/ak[node-type-char] for add [direction]

a is closer to OG vim "append", whereas c is used for "change"

alt+p+[node-type-char]/alt+c+[node-type-char] for create parent/child?

hard to do triple shortcut actions that need to be held at the same time
but is nice that doesn't conflict with vimium i.e. require insert mode for vimium

what about when selecting a details/table node, not a diagram node?

maybe the add button itself could put "[p]arent"/"[c]hild" + "[n]ode-type-char" above/below itself

above if odd in container, below if even? to avoid text overlap
or could be within the button too, temporarily replacing the icon


feat: add push broadcast receiver

closes: https://github.com/customerio/issues/issues/9593
Changes

Added CustomerIOFirebaseMessageProcessor to process all notification callbacks received from a single place
Added CustomerIOFirebaseMessagingReceiver to receive FCM messages without registering FirebaseMessagingService
Updated service to process notification using newly added processor class
Added ignoreMessageWithInvalidId config flag to suppress messages processed outside FCM

I have replied to your comment. Looks like you are looking at the wrong issue. Please read PR background in linked issue to understand the changes better.


🤏 Little bit more testing: image-tests

schutzbot

rpm is failing with exit code 254 and printing a lot of lines like this one
installing package rootfiles-8.1-24.fc30.noarch needs 307MB on the / filesystem

@dvdhrm and @gicmo say this points to the disk being full. Could that be the case here?

rpm is failing with exit code 254 and printing a lot of lines like this one
installing package rootfiles-8.1-24.fc30.noarch needs 307MB on the / filesystem

@dvdhrm and @gicmo say this points to the disk being full. Could that be the case here?

Yeah, I think so. We also accumulate entries in our cache currently. We should just make sure to delete cache-entries again whenever a test-run is over. This should fix all possible disk-space issues.

So the disk space issues seem to be okay on F31 now, but the test does take a long time (which I guess we expect since it's doing a lot of things).

schutzbot

@larskarlitski @teg  This seems to work fine via Jenkins, but our testing time has ballooned out to ~ 50 minutes. There are optimizations that can be made, such as choosing a closer mirror for downloading packages or setting up a small proxy for caching packages downloaded via curl.

I suppose we want to hold off on this for a bit until we have figured out a way to speed it up a bit? Do we know exactly what's consuming the most time? Would it be possible to try backing our store by a tmpfs to see how that affects things?
@dvdhrm did some work on creating a container hosting a local mirror. That should work nicely for GitHub Actions, is that something we could reuse also for the integration tests?

+1 for local mirror.
From my humble experience network download takes the most time followed by disk i/o when building the images but I haven't done any specific measurement. Disk i/o seems to be faster than lorax-composer though.
Jenkins log shows that rhel_psi build was 15 mins faster compared to fedora31. From what I can see RPM build time is faster on RHEL and also most of the tests are also faster. The ansible playbooks on Fedora seem to also be doing more setup than on RHEL.

The RHEL bits are very close to the RHEL PSI instance (Boston has the bits, RDU has the RHEL PSI instance). That makes things pretty quick.
Our Fedora instances in DigitalOcean are located in NYC. It probably makes sense to find the closest repo to that location and adjust the JSON to point to those URLs.

The fastest mirrors to DO (according to dnf's fastestmirror plugin) seem to be:
[http://fedora.mirrors.tds.net]
ts=1586981802
connectime=0.0012339999999999574

[https://fedora.mirror.constant.com]
ts=1586981802
connectime=0.0025419999999999332

[https://ewr.edge.kernel.org]
ts=1586981802
connectime=0.0038299999999999966

[http://fedora.mirror.constant.com]
ts=1586981802
connectime=0.010171999999999959

[http://mirrors.mit.edu]
ts=1586981802
connectime=0.015890999999999999

Oh, also, we're not doing image tests on RHEL right now since we don't have test cases there.

schutzbot

Still about 52 minutes. About 3-4 minutes per image test.

schutzbot

schutzbot

schutzbot


Anyway to extract course id or level id?

e.g. KW5XS46BG or KW5-XS4-6BG
Thanks

I've found the algorithm that converts "UPLOAD ID" to "COURSE ID":
https://github.com/JiXiaomai/SMM2-Decryptor/blob/master/ID转换.xlsx
But it's in xlsx format, any one in C, C++ or python?

https://github.com/JiXiaomai/SMM2LevelViewer/blob/main/ModuleCode.vb


remove snapshot qualifier

https://statistics-norway.atlassian.net/browse/DAPLA-657
DANGER:
I saw in platform-dev that it deploys "master-*" tagged images directly to staging and prod at the same time, so if the rebuild somehow breaks maskinporten guardian, it will break prod immediately.

This has been fixed in platform-dev


PGO support

PGO = Profile Guided Optimization
I think it can achieve decent optimizaitons.
Is it possible to be supported?
now, flags.gn
chrome_pgo_phase=0

PGO = Profile Guided Optimization
I think it can achieve decent optimizaitons.

It does indeed make a little bit of a difference, but arguably increases the compilation time. I use it for a long time now.

Is it possible to be supported?
now, flags.gn
chrome_pgo_phase=0

Apart from setting chrome_pgo_phase=2 you also need to keep prof data from pruning.
As a side note, I would also suggest using PartitionAlloc explicitly as it also does some improvements unless it is already enabled by default (IIRC they toggled it for some reasons recently).


en-GB Locale. Closes #1305

Thank you for contributing to Dashy! So that your PR can be handled effectively, please populate the following fields (delete sections that are not applicable)
Category:

Feature

Overview

Added en-GB locale

Issue Number (if applicable) #1305
New Vars (if applicable)

If you've added any new build scripts, environmental variables, config file options, dependency or devDependency, please outline here

Screenshot (if applicable)

If you've introduced any significant UI changes, please include a screenshot

Code Quality Checklist (Please complete)

[x] All changes are backwards compatible
[x] All lint checks and tests are passing
[x] There are no (new) build warnings or errors
[ ] (If a new config option is added) Attribute is outlined in the schema and documented
[x] (If a new dependency is added) Package is essential, and has been checked out for security or performance
[ ] Bumps version, if new feature added

Hi  @14sprouj  - I'm going to close this for now, as not heard back. But let me know below if you want to come back to it, and I'll re-open.


[NEW ALGORITHM] would like to add mathematical algorithm

Description:
I would add an algorithm for catalan numbers
Checklist:

[x] Contributor in GSSoC-ext
[x] Contributor in Hacktoberfest
[ ] Want to work on it

Shall I add optimziation algorithms in mathematics such as:
Simplex Methods, Gradient Descent, Power Method, etc.?
And, where is the discussion section for this repo? I want to clarify some doubts.
Group?discord?


verbs () take forever to be excuted

var ex2='To which platforms can chatbots be  integrated?';
var r=nlp(ex2);
console.log(r.verbs());

seems to be stuck in an infinite loop

oh wow,
thanks for this. looks like it's even sensitive to the question mark.
will check it out today, and fit it in the next release

fixed in 10.5.0 :rocket:


prevent backspace for sending back button to browser when editing with diacritics

Why was this change made?
Fixes #2103
Also added the ability to hit the escape key and have it close the panel too (which follows other UI patterns).
How was this change tested?
Added a new test, but it still passes even without my change, so I don't think the test is working correctly.
Which documentation and/or configurations were updated?

Let me see if I can get that (whole window block) to work this morning.

From: Jeremy Nelson<EMAIL_ADDRESS>Sent: Friday, September 25, 2020 8:51:46 AM
To: LD4P/sinopia_editor<EMAIL_ADDRESS>Cc: Peter Alexander Mangiafico<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [LD4P/sinopia_editor] prevent backspace for sending back button to browser when editing with diacritics (#2533)
@jermnelson commented on this pull request.

In src/components/editor/diacritics/DiacriticsSelection.jsxhttps://github.com/LD4P/sinopia_editor/pull/2533#discussion_r495079526:

@@ -36,7 +36,19 @@ const DiacriticsSelection = () => {
event.preventDefault()
}

return (

const keyPressHandler = (event) => {
switch (event.which) {

 case 8:

   event.preventDefault() // backspace should not be passed to the browser as it causes the page to go back

   break

 case 27:

   dispatch(hideDiacritics()) // esc should close the panel, all other keys can pass through

   break

 // no default

}
}

return (

Doing some testing, the backspace issue exists only for Firefox and not Chrome (although you can download an extensionhttps://chrome.google.com/webstore/detail/enable-backspace/ddijblnjiploanefjnbpimgbfjkpifia?hl=en#:~:text=Enable Backspace extension enables you,this functionality to your browser. to restore this functionality).
For example (all using Firefox):

Open the editor with the four tabs Resource Templates, Search, Load RDF, and Exports. Click on any of Search, Load RDF, and Exports tabs, click backspace returns you to the Resource Templates tab.
Open a resource template from the Resource Templates and after the template is loaded into the Editor tab, hitting backspace returns you to the Resource Templates tab. However, we have the following wrinkles (I used the ld4p:RT:bf2:Monograph:Work:Un-nestedhttps://development.sinopia.io/editor/ld4p:RT:bf2:Monograph:Work:Un-nested template on development):
*   Adding any text to a top-level property (used Date of Work) and hitting enter prevents the backspace from going back to the Resource Templates tab.
*   Starting from newly loaded page with the Work template, adding text to a nested property (used Title Information > Work Title > Preferred Title of Work) and hitting enter to save the value but hitting the backspace goes back to the Resource Templates tab.

Working on this branch, when opening a template and opening the Diacritics panel but not selecting any vocabulary, hitting the backspace returns you to the Resource Templates tab. If you select any of the vocabularies and display the character map, the fix works.
Given this behavior, I second @jcoynehttps://github.com/jcoyne suggestion to see if we can add this to the whole page to see if we can prevent the different examples above where hitting backspace returns to the previous page.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/LD4P/sinopia_editor/pull/2533#discussion_r495079526, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAALQIMY3ORYQWZOAXDQOMLSHS4BFANCNFSM4RYZFAAA.

So I tried putting the keyPressDown event all the way the top id="app" level in App.jsx and it doesn't seem to work as expected.  It catches events in text box areas nested in the div but not otherwise.
As I was doing this, I realized two things:

If we did it at the top level using this approach, we would need to distinguish between being in a text entry area (where we want delete to be passed through) and not being in a text entry area (where we want to block it).

We would be constantly firing the javascript function each time a user pressed a key anywhere, and then doing nothing most of the time.  This seems like a lot of unnecessary overhead for Firefox.

I'm not sure this approach makes sense given these (unless I am misthinking it).
Maybe there are other approaches to disabling backspace globally as a navigation mechanism - I will have a quick look.

@peetucket and @jcoyne is there anything remaining to do on this PR? (This is error still exists for the inline diacritics panel) Thanks!

In my local testing, this change continues to prevent the backspace key from sending the browser back in the inline diacritics panel (I rebased after the change to inline to verify).  It does not make this change globally across any other part of the page though, as was suggested as another possibility.  My comments above regarding why the global blocking may not be advisable still stand.

I'm merging this PR now and created https://github.com/LD4P/sinopia_editor/issues/2641 for a future work-cycle to address.


Remove support for legacy enum and struct window to support IDA 9.x

When I have tried to use this plugin on IDA 9.0 (and IDA 9.0 SP1), I have experienced following error whenever I right-click anything on the IDA.
Traceback (most recent call last):
  File "C:/Users/saburo/AppData/Roaming/Hex-Rays/IDA Pro/plugins/InToDeep.py", line 153, in finish_populating_widget_popup
    treeType = getTreeForWidget(widgetType)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:/Users/saburo/AppData/Roaming/Hex-Rays/IDA Pro/plugins/InToDeep.py", line 21, in getTreeForWidget
    idaapi.BWN_ENUMS: ida_dirtree.DIRTREE_ENUMS,
    ^^^^^^^^^^^^^^^^
AttributeError: module 'idaapi' has no attribute 'BWN_ENUMS'

Traceback (most recent call last):
  File "C:/Users/saburo/AppData/Roaming/Hex-Rays/IDA Pro/plugins/InToDeep.py", line 151, in finish_populating_widget_popup
    treeType = getTreeForWidget(widgetType)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:/Users/saburo/AppData/Roaming/Hex-Rays/IDA Pro/plugins/InToDeep.py", line 27, in getTreeForWidget
    idaapi.BWN_STRUCTS: ida_dirtree.DIRTREE_STRUCTS,
    ^^^^^^^^^^^^^^^^^^
AttributeError: module 'idaapi' has no attribute 'BWN_STRUCTS'

I believe these error occurs because IDA 9.x removes legacy Enums and Structures view (they have been entirely replaced to Local Types view). This PR will remove support for legacy views, to ensure this plugin works on IDA 9.x environment (tested on IDA 9.0 and IDA 9.0 SP1).

I've merged your change, but added a check to add back the removed sections if the SDK version is 8.x or lower. I don't have access to a 9.x installation, but if you could check to see the latest commit works on your end that would be much appreciated

Thank you for merging. I have confirmed that latest commit works properly on my environment (IDA 9.0 SP1).


Allow to change the log level with an env variable

Allow to select the log level that you want with an environment variable.
Change the log level for the message of the config that burry is using to avoid showing credentials unless you really want it.

Thanks @mool!


Increase upper bound on base

This is a reminder to myself to do this: https://twitter.com/dibblego/status/831431960341811202

Fixed by 7aa1c169693e38b08695a22618db149bb4ebbfe5


Additional Equations

Experiment with absolute, line up or down horizontal, quadratic, square root..

The notation has to be accepted by the mathjs browser.


updated socket.io and socket.io-client

PASSED
npm run lint
npm test
npm run frisby
npm run protractor

Please don't just do "trial and error" PRs updating the dependency declarations. And if you do, please put "WIP" or "🚧" into the PR title, so at least we know it's now yet ready for review or anything. And if possible, please rebase from develop so not your entire trial-commit history appears in the PR itself. Thanks, mate!

Please don't just do "trial and error" PRs updating the dependency declarations. And if you do, please put "WIP" or "🚧" into the PR title, so at least we know it's now yet ready for review or anything. And if possible, please rebase from develop so not your entire trial-commit history appears in the PR itself. Thanks, mate!


Filter Empty Parameters

Description:
I have been using OAuthSwift to connect to Salesforce; it might be just salesforce, but I am not using a "secret token" to authenticate to the service in the device, but I only have a client ID and renew token. Later, when I want to get a new token, I pass the client ID and the renew token and I get back a new access token from Salesforce.
The problem is, if I don't have a secret token, when I construct a OAuth2Swift object the renew and I have to pass an empty secret, I get a 401 result, however, if I simply comment the code that appends "client_secret" from the list of parameters, I get the expected result (access token).
OAuth Provider (Twitter, Github, ..):
SalesForce
OAuth Version:

[ ] Version 1
[X] Version 2

OS (Please fill the version) :

[x] iOS :
[ ] OSX :
[ ] TVOS :
[ ] WatchOS  :

Installation method:

[ ] Carthage
[X] CocoaPods
[ ] Manually

Library version:

[X] head
[ ] v1.0.0
[ ] v0.6
[ ] other: (Please fill in the version you are using.)

Xcode version:

[X] 8.0 (Swift 3.0)

[ ] 8.0 (Swift 2.3)

[ ] 7.3.1

[ ] other: (Please fill in the version you are using.)

[ ] objective c

Proposed Solution
Filter empty or null parameters from the list of parameters before initiating the network request. File "OAuth2Swift", Method: "requestOAuthAccessToken"
Code:
let filteredParams = parameters.filter { $1 != nil && String(describing: $1).isEmpty == false }

        if self.contentType == "multipart/form-data" {
            // Request new access token by disabling check on current token expiration. This is safe because the implementation wants the user to retrieve a new token.
            return self.client.postMultiPartRequest(accessTokenUrl, method: .POST, parameters: filteredParams, headers: headers, checkTokenExpiration: false, success: successHandler, failure: failure)
        } else {
            // special headers
            var finalHeaders: OAuthSwift.Headers? = nil
            if accessTokenBasicAuthentification {

                let authentification = "\(self.consumerKey):\(self.consumerSecret)".data(using: String.Encoding.utf8)
                if let base64Encoded = authentification?.base64EncodedString(options: Data.Base64EncodingOptions(rawValue: 0)) {
                    finalHeaders += ["Authorization": "Basic \(base64Encoded)"] as OAuthSwift.Headers
                }
            }

            // Request new access token by disabling check on current token expiration. This is safe because the implementation wants the user to retrieve a new token.
            return self.client.request(accessTokenUrl, method: .POST, parameters: filteredParams, headers: finalHeaders, checkTokenExpiration: false, success: successHandler, failure: failure)
        }

The first line is what makes the magic, avoid any nil or empty description string. After that is just replacing "parameter" with filteredParams in the request methods.

that's not oauth authentication flow, maybe it's a security issue...
there is consumer secret in salesforce declared app
if you have a refresh/renew token its because you have already connected using secret...
https://developer.salesforce.com/page/Digging_Deeper_into_OAuth_2.0_on_Force.com#Token_Refresh

Hello @phimage,
Thanks for the reference, I have ran the Salesforce example in the project and certainly that helped me to understand the whole flow. Also, I checked that again and you can notice there a very important detail in it:
client_secret	Your application's client secret (optional).
The value of client_secret is not mandatory, reason why the flow we have in the app is not using a client secret. If you go back to the section "Obtaining an Access Token in a Browser or Native Application (User-Agent Flow)", you will notice that client_secret is not part of the response, we have almost everything but that.
I hope we can revisit this trouble.
Thanks

@rhvall could you show me in documentation where client secret is optional
maybe not oauth standard flow, but for JWT token or SAML

That line I took is exactly from the link to Salesforce that you had in your response:
https://developer.salesforce.com/page/Digging_Deeper_into_OAuth_2.0_on_Force.com#Token_Refresh
If you check the list of elements to send to the server, the "client secret" is an optional value.

client secret here could be optional because refresh token can contain enough information to be trusted, but could also be expired
what I do not understand is how you get a refresh token without this client secret (and so why here stop to use it)
I do not understand the authentification flow
You can PR a code which check if client_secret is empty that do not add it


⚠ ClamAV has degraded performance

In ec0e45f, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 68 ms

Resolved: ClamAV performance has improved in 0009dbe.


pH and ORP do not show values in either homebridge accessory or Home (iOS).  Could it be possible that they need to be defined as something else other than filter maintenance?

Describe The Bug:

To Reproduce:

Expected behavior:

Logs:
Show the Homebridge logs here, remove any sensitive information.

Plugin Config:
Show your Homebridge config.json here, remove any sensitive information.

Screenshots:

Environment:

Plugin Version:
Homebridge Version:
Node.js Version:
NPM Version:
Operating System:

Hi,
The values can be shown in the data page of the accessories.
Example below for pH:

yes - thanks, I had noticed that, but it’s not visible in HomeKit (iOS).

On Jun 19, 2023, at 2:59 AM, Vincent CIBELLI @.***> wrote:
Hi,
The values can be shown in the data page of the accessories.
Example below for pH:
https://user-images.githubusercontent.com/577308/246750134-48c448aa-f626-47bc-be2a-688aa1117a3e.png https://user-images.githubusercontent.com/577308/246750268-11e44b2f-533b-4ff3-adac-52dbd72966e7.png
—
Reply to this email directly, view it on GitHub https://github.com/GurYN/homebridge-iopool/issues/2#issuecomment-1596616716, or unsubscribe https://github.com/notifications/unsubscribe-auth/ASK2GM2ZP33UYK74DOKBNIDXL72ETANCNFSM6AAAAAAZAW7KSA.
You are receiving this because you authored the thread.

I have the same problem.  Home kit shows the temperature, but not the PH or ORP.  Home kit shows “! No Remote Acess”[


🐛 [qBittorrent] Addon not working, log stuck

qBittorrent

Addon name : qBittorrent
Addon version : 4.4.5-r3-ls230-2

Describe the bug

Addon is not working, I have uninstall and install again but the log that I see is always the same, it even shows a version that is not the one I have for addon and for supervisor/HA
To Reproduce

Go to the addon WebUI
See error --> 502: Bad Gateway

Full addon log

cont-init: info: /etc/cont-init.d/00-banner.sh exited 0
cont-init: info: running /etc/cont-init.d/00-folders.sh
cont-init: info: /etc/cont-init.d/00-folders.sh exited 0
cont-init: info: running /etc/cont-init.d/30-nginx.sh
cont-init: info: /etc/cont-init.d/30-nginx.sh exited 0
cont-init: info: running /etc/cont-init.d/90-dns_set.sh
[09:55:15] INFO: DNS SERVERS set to <IP_ADDRESS> <IP_ADDRESS>
cont-init: info: /etc/cont-init.d/90-dns_set.sh exited 0
cont-init: info: running /etc/cont-init.d/91-qbittorrent_configuration.sh
[09:55:15] INFO: Downloads can be found in /mnt/NAS
[09:55:15] INFO: Whitelisted subsets will not require a password : localhost,<IP_ADDRESS>,<IP_ADDRESS>/16,<IP_ADDRESS>/16
[09:55:16] INFO: WEBUI username set to admin
[09:55:16] INFO: Alternate UI enabled : vuetorrent. If webui don't work, disable this option
[09:55:17] INFO: Default username/password : admin/adminadmin
[09:55:17] INFO: Configuration can be found in /config/addons_config/qBittorrent
cont-init: info: /etc/cont-init.d/91-qbittorrent_configuration.sh exited 0
cont-init: info: running /etc/cont-init.d/92-local_mounts.sh
cont-init: info: /etc/cont-init.d/92-local_mounts.sh exited 0
cont-init: info: running /etc/cont-init.d/92-smb_mounts.sh
Mounting smb share(s)...
Using domain WORKGROUP
Using PUID 0 and PGID 0
[09:55:23] INFO: ... //<IP_ADDRESS>/NAS successfully mounted to /mnt/NAS with options
cont-init: info: /etc/cont-init.d/92-smb_mounts.sh exited 0
cont-init: info: running /etc/cont-init.d/93-openvpn.sh
[09:55:23] INFO: Direct connection without VPN enabled
cont-init: info: /etc/cont-init.d/93-openvpn.sh exited 0
[custom-init] No custom files found, skipping...
******** Information ********
To control qBittorrent, access the WebUI at: http://localhost:8080
services-up: info: copying legacy longrun nginx (no readiness notification)
[ls.io-init] done.
[09:55:25] INFO: Starting NGinx...
Catching signal: SIGTERM
Exiting cleanly
Full addon config

DNS_server: <IP_ADDRESS>,<IP_ADDRESS>
PGID: "0"
PUID: "0"
SavePath: /mnt/NAS
Username: admin
certfile: fullchain.pem
customUI: default
keyfile: privkey.pem
ssl: false
whitelist: localhost,<IP_ADDRESS>,<IP_ADDRESS>/16,<IP_ADDRESS>/16
networkdisks: //<IP_ADDRESS>/NAS
cifsdomain: WORKGROUP
TZ: Europe/Madrid
System

Intel NUC running:

Supervisor version: 2022.11.2
Host system version: 2022.11.4

Today I got an error about Unsupported software (I don't have anything strange), restarted the hole machine and that error disappeared and also qBittorrent is working again, no idea what caused the hole issue. Thanks!


Change name comparison to ignore case.

Also changed example for add command to use similar tags to those in the sample data.
Closes #269

LGTM


Fix reinvite command

See #816
IsPlayerInParty was not consistently returning accurate results, and this had a knock-on effect of breaking the /reinvite command.  Now it is much simpler conceptually and /reinvite appears to work.

Looks like you've sidestepped a potential bug with a function higher up the chain rather than fixing it with this one? Surely there must be an issue with GetPlayerPartyMember in this case?

I would instead roll this back, break on the timeout reached in UpdateReinvite and take a look at the situation at this time - your fix technically is no different to the existing code, and we need to find out why its not working consistently to fix the problem


Holding down an arrow key to traverse the pointer in chat just does not work

Making it in engine to be safe but feel free to move it to content
On other platforms I used the left and right arrow keys while focused in the chat to go back and fix mistakes. Also using control and shift to highlight and jump between words
On macos this feature does not seem to work

It's because ArcadeLeft has input priority above TextCursorLeft and such, I think.


Create 329-Longest-Increasing-Path-in-a-Matrix.js

File(s) Modified: 329-Longest-Increasing-Path-in-a-Matrix.js
Language(s) Used: javascript
Submission URL: https://leetcode.com/submissions/detail/769304304/

Thanks, @kciccolella!


Improve collection arguments documentation for network rules

If you specify --priority or --action in az network firewall [network-rule|application-rule] create, and the collection already exists, the operation will fail because it tries to recreate the collection. Make it more explicit in the documentation.

If this PR is for a new extension or change to an existing extension, use the following to try out the changes in this PR:
docker run -it microsoft/azure-cli:latest
export EXT=<NAME>
pip install --upgrade --target ~/.azure/cliextensions/$EXT "git+https://github.com/TheWinch/azure-cli-extensions.git@patch-1#subdirectory=src/$EXT&egg=$EXT"

add to S176

You can change this file and add history into this (history)[https://github.com/Azure/azure-cli-extensions/blob/master/src/azure-firewall/HISTORY.rst]. Thanks for your contribution! 😄

@haroldrandom @MyronFanQiu changes applied as requested. I took the liberty to document 0.6.1 as well, I hope I got the change right.


client/service: better timeout handling

client: only set default timeout if the caller hasn't provieded a HTTP
client with non-zero timeout.
service: restore timeout in server start and stop while allowing additional
time for the API to respond with an error.

LGTM


Ensure full page errors in new UI integration selection session are not swallowed by "Already Rendered!" error

Checklist

[ ] the contributor license agreement is signed
[ ] commit message follows commit guidelines
[ ] tests are included
[ ] screenshots are included showing significant UI changes
[ ] documentation is changed or added

Description of change
This is a draft PR attempting to fix issue in which errors that occur within an integration selection session are "swallowed" by another error that reads "Already Rendered!" rather than showing the correct message. Will expand upon later after seeing how the CI goes with it.

As far as I know, errors can be also swallowed when not in an integration so I hope the fix can cover that situation.

Another way worth to try is to override method 'execute' in LegacyContentController.

As far as I know, errors can be also swallowed when not in an integration so I hope the fix can cover that situation.

I can't see how. The IntegrationExceptionHandler is the one that doesn't rethrow. But, if we were ever to find a situation in which this happens (I haven't found one yet and have been looking) we'd know to look at the handlers.

Could you please add a video?


[TECHDEBT] Tackle all Beta TechDebt items

Objective
Identify, fix and cleanup all TODOs needed for Beta TestNet.
Origin Document
This comment from @red-0ne in #708 raised some missing TODOs missing in the code:

Goals

Tackle all TODOs needed for Beta TestNet
Cleanup the codebase in terms of TODOs
Identify lingering or unknown issues

Deliverables

[ ] Search for all of the following: TODO_BLOCKER, TODO_MAINNET, TODO_UPNEXT, TODO_FOLLOWUP, TODO_BETA
[ ] Create tickets for every team member (similar to #584)

Non-goals / Non-deliverables

Fixing the actual technical issues

Creator: @Olshansk

Closing this out and will create new tickets given how much TODOs are being modified.


Move to reusable workflows from github-actions

Depends on kubewarden/github-actions#15.

Force pushed with added check on Makefile to notice wrong policy type, and consuming new workflow names, without input.policy-type.


[SPARK-46760][SQL][DOCS] Make the document of spark.sql.adaptive.coalescePartitions.parallelismFirst clearer

What changes were proposed in this pull request?
This PR propose to make the document of spark.sql.adaptive.coalescePartitions.parallelismFirst clearer.
Why are the changes needed?
The default value of spark.sql.adaptive.coalescePartitions.parallelismFirst is true, but the document contains the word recommended to set this config to false and respect the configured target size. It's very confused.
Does this PR introduce any user-facing change?
'Yes'.
The document is more clear.
How was this patch tested?
N/A
Was this patch authored or co-authored using generative AI tooling?
'No'.

Note that until we adopt some approach to automate the generation of config tables in our docs (e.g. like in #44755 or #44756), you will need to manually update the HTML here so it stays in sync with the source: https://github.com/apache/spark/blob/977f64f0904e46e72cbe5b2252f2657dde29c90c/docs/sql-performance-tuning.md#L270

cc @cloud-fan

cc @MaxGekk @gengliangwang

"This is helpful where even small partitions with small data size require a large amount of computation, and so coalescing the small partitions reduces parallelism and harms performance. In more typical cases where this is not true, coalescing partitions can avoid many tiny tasks and improve performance, and so this config can be set to false"

This is very well.

This is true by default because in benchmarks we run one query at a time and it can use all the resources of the entire cluster. So parallelism is more important, as if we pick 64mb as the target size and save some CPU slots, no other tasks will use these free slots.

(Re run the tests)
Is the text OK @cloud-fan or are you suggesting a modification?

Merged to master

@srowen @cloud-fan Thank you!


view size is not compatible with input tensor's size and stride

I am trying to reproduce the output for
! python RandAugment/train.py -c confs/wresnet28x10_svhn_b256.yaml --save svhn_wres28x10.pth
The error is encountered in the metrics.py
correct_k = correct[:k].view(-1).float().sum(0)
Error message : view size is not compatible with input tensor's size and stride (at least one dimension spans across two contiguous subspaces)
The same error arises while testing for cifar10

hi, i meet the same problem as yours. Because the view function need the tensor address is continuous, if discontinuous, you should add the contiguous function before view .
Now I can run this code :)


Move most Field functionality into abstract base class

This just allows other models to use Mezzanine's dynamic forms with a minimum of duplication. I also plan to separate out the bit of FormForForm that builds a form from a list of Field instances from the part that saves entries, etc, if there's support for this idea.

LGTM


Proxy switch for sensu-install

Added in support to utilize the proxy option for gem.
Description
The sensu-install utility was unable to install the sensu plugins via a proxy server. This rectifies that issue.
Related Issue
https://github.com/sensu/sensu/issues/1588
Motivation and Context
Allows the use of proxy servers for sensu-install.
How Has This Been Tested?
This was tested against two RHEL 7 servers.

A server behind a proxy, without direct access to the internet. Installations failed before, they work with the proposed changes.
A server with direct access to the internet, without providing any options to the proxy variable. This worked as expected.

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ x ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ x ] My change requires a change to the documentation.
[ x ] I have updated the documentation accordingly.
[ x ] I have read the CONTRIBUTING document.
[ x ] I have added tests to cover my changes.
[ x ] All new and existing tests passed.

Those changes have been made. Thanks for the recommendations; I'm not familiar with Ruby at all, if that wasn't apparent. I was just hacking away and wanted it to work for me :)


About  eventHub

http://vuejs.org/guide/migration.html#dispatch-and-broadcast-deprecated
about this guide,I have some question.
where to wirte "var eventHub = new Vue() ", and how to import eventHub in NewTodoInput or DeleteTodoButton component?

You don't have to do anything specific to the event bus. If you're using a module system, you can export/import it just like any other object:
// event-bus.js
export default new Vue()

// some other file
import eventBus from './event-bus'

I got it ,Thank you ~


[FEATURE] Highlighting destructed variables ?

Description
Highlighting destructed variables to make the code clearer. So that the connection between data and state is clearer. For example:
render() {
    const { data } = this.state;

    return (
      <ResponsiveContainer>
        <AreaChart
          data={data}
        >
      </ ResponsiveContainer>
     );
}

Versions
1.23.3

@justduy please raise this issue on the grammar package language-javascript instead. Syntax highlighting is a two part process, where the language-<name> package adds scopes to all the characters, and the theme applies colours to the scopes.
In your case, you are asking for the grammar package to add a scope to destructed variables, which can then be used to apply a colour to.

@Aerijo Ahh okay, my bad!


bug: 4.4.1 regression - defaultHref of ion-back-button is not working with query params

Bug Report
Ionic version:

[x] 4.4.1
Current behavior:

Back button stopped to work for deep-linked pages if defaultHref includes query parameters.
In 4.4.1 this works:
<ion-back-button defaultHref="/summary"></ion-back-button>

And this does not:
<ion-back-button defaultHref="/summary?commune=family"></ion-back-button>

In 4.4.0 both are working fine.
Expected behavior:

Addition of query parameters in defaultHref should not break back navigation.
Steps to reproduce:

Create an app with 2 pages: master-details. On details page place a back button with defaultHref="/master-page?p1=v1". Open master page and navigate to details page. Click back button - it works. Navigate to details page again. Reload page (F5). Click back button - does not work.
Related code:

insert short code snippets here

Other information:

It worked in 4.4.0.
Possibly related bug: https://github.com/ionic-team/ionic/issues/15410
@liamdebeasi  probably related to fix for https://github.com/ionic-team/ionic/issues/18094
Ionic info:

ionic info

Ionic:

   ionic (Ionic CLI)             : 4.12.0 (C:\...\AppData\Roaming\npm\node_modules\ionic)
   Ionic Framework               : @ionic/angular 4.4.1
   @angular-devkit/build-angular : 0.13.9
   @angular-devkit/schematics    : 7.3.9
   @angular/cli                  : 7.3.9
   @ionic/angular-toolkit        : 1.5.1

System:

   NodeJS : v10.15.0 (C:\Program Files\nodejs\node.exe)
   npm    : 6.9.0
   OS     : Windows 10

Thanks for the issue! I published a nightly build of Ionic npm i @ionic/angular@dev that should have a fix for this if you would like to try it out and provide feedback (should be 4.5.0-dev.201905222226.d430884) . I will also be preparing a hotfix (Ionic 4.4.2).

Thanks for the issue!
I published a nightly build of Ionic that has this fix if you would like to try it out and provide feedback (npm i @ionic/angular@4.5.0-dev.201905222256.b9924c1).
I will also be preparing a hotfix (Ionic 4.4.2).
Thanks!

Hey there,
I have published a 4.4.2 release with this fix.
Thanks for reporting this!

I confirm it has been fixed in 4.4.2.
Thanks for the quick turn around.
P.S. @liamdebeasi you are the best!


feat: use lambda for explore (unity side)

Test with lambda: https://explorer.decentraland.zone/branch/feat/explore-lambda-unity/index.html?ENV=org&CATALYST=peer-testing.decentraland.org&realm=testing-amber
Test without lambda: https://explorer.decentraland.zone/branch/feat/explore-lambda-unity/index.html?ENV=org

Loving the huge code removal!
[IMAGE WAS HERE!]
I'm having this issue trying to test right now.
Can you explain a bit what this PR is about and why you managed to remove the crowd manager from the unity side?

We should ask @nchamo about the issue in the screenshot. I seems to be something with that testing catalyst...
I removed some handlers cause pretty much every scene information is passed by the lambda.
So I there was no need any more for complex handlers to wait for kernel reporting scene's info MinimapSceneInfo and after removing that dependency I was able to simplify a lot of the code


[question] NFL Data Update Schedule

Hello! I'd like to use the NFL data for weekly game statistics. When is this data updated? For instance, when can I access the play-by-play for Week 1 of the 2023 season? I couldn't find this info elsewhere. Thank you very much in advance!

Week 1 of the 2023 NFL season begins September 7, 2023 when the Chiefs face the Lions. nflverse data typically updates the morning after each game.