Bold, Italics, Strikethrough not being highlighted when typing in WYSIWYG mode

Version
3.1.0
Test Environment
Chrome, Mac OS
Current Behavior
If you select bold, italics, or strikethrough in the WYSIWYG mode, it doesn't highlight the function used (e.g. B for bold), unless your cursor is within the word, which is a really confusing user experience. If you're cursor is at the end of the word, which it normally is when typing, you can't see what you have selected in the editor
Expected Behavior
You should see B and/or Italics and/or strikethrough if you are using those functions, even if your cursor is at the end of the word.
https://user-images.githubusercontent.com/53139975/160304707-2a735bb8-fd64-4e45-a441-904f47dce955.mov

@eloise-mcintyre
I understand your discomfort. I agree. We'll try to fix this part.


docs: add hideAPIURL to the collections and globals admin options

Description
The admin options in the Configuration > Collections and the Configuration > Globals pages are missing the hideAPIURL option.
cf: collection config types and globals config types.

[x] I have read and understand the CONTRIBUTING.md document in this repository

Type of change

[x] Bug fix (non-breaking change which fixes an issue)

@qbeauperin, thank you! 👍


Add Heat3D benchmark

https://cps-vo.org/node/67271

wait to be added to ReachabilityAnalysis.jl Examples.


apply mean to full batch, not chunked pieces when threading

Number of threads should not influence training.

From our meeting, I take it that there are some design decisions to be made in here. That's not immediately apparent from just reading the code diff. Could you outline the crossroads that we're currently at?

From our meeting, I take it that there are some design decisions to be made in here. That's not immediately apparent from just reading the code diff. Could you outline the crossroads that we're currently at?

https://github.com/PumasAI/SimpleChains.jl/issues/56
I should probably just implement all of them, perhaps as separate functions so we don't even need a default.
(The implementations would of course reuse code).

This still fixes an issue, so I think it's a good idea to get this in.

ping me on slack when you've looked over the linting and I'll hit the approve button.

For the life of me, I can't get tests to fail locally, and can't get them to pass on CI.

Could it be architecture specific? You don't hit BLAS here, right? Could you try to target the same architecture as used by CI?

Could it be architecture specific? You don't hit BLAS here, right? Could you try to target the same architecture as used by CI?

No BLAS.
I believe some of the errors are new and specific to Julia master, so I'm rebuilding the latest Julia master to see if I can at least reproduce those.
But the @test all(isfinite, p) and @test all(isfinite, G) tests still failing suggests some reading of out of bounds memory.
I'm now testing without @turbo which should hopefully reduce the chance of architecture specific problems coming into play, and also enable bounds errors.
Seems to have found something!
Maybe I should come up with a way to allow testing without @turbo.

Hmm. Times out without @turbo, but doesn't seem to hit a bounds error in the 6 hours it did run before timing out.


Add buffer distance into max_count and max_offset.

Previously the buffering distance wasn't applied to max_count. Additionally have moved to max_offset to allow for full rotation of the search box without going outside of the rel_pix bounds. And adjusted options if there are no rel_pix for a search box (returns standard geometry to output valid DataFrame, but will be filtered out at later steps).

Merging into streamlined-process branch instead of main.


Add an archive mode

This PR adds an archive mode in which there is no initial sync, and aws sync commands are run without the --delete flag, allowing for continuous archiving of local content to object storage.

This kind of overlaps with https://github.com/elementar/docker-s3-volume/pull/14 and having S3_SYNC_FLAGS as well as a way to switch off initial sync would also fit my use case and would work fine for me.


postgres UPDATE - FROM syntax

Is there a way to write postgres script like this?
UPDATE vehicles_vehicle AS v
SET price = s.price_per_vehicle
FROM shipments_shipment AS s
WHERE v.shipment_id = s.id

If you have that as a string in JS, just execute it using knex.raw().
I don't think you can do it using knex's query building functions though (though I could be mistaken :-)), at least because it would require specifying two main tables in the query, and knex's query objects support only one.
You could though always implement such an UPDATE using a sub-query instead of using the UPDATE/FROM SQL extension (which even gets implemented with different semantics by different databases), e.g. (warning: untested code :-)):
var subQuery = knex
    .select('s.price_per_vehicle')
    .from('shipments_shipment AS s')
    .where('s.id', knex.raw('v.shipment_id'))
;
knex.update({price: subQuery}).table('vehicles_vehicle AS v');

Thank you. But could you show me how to turn this script into knex query without raw or whereIn?
update "transaction"
set "status" = 'completed'
from "return_transaction"
where "return_transaction"."id" = 1 and "transaction"."id" = "return_transaction"."transaction"

I think Jurko just explained that knex cannot build you query like you are writing without knex.raw and I is there any reason why you like to avoid whereIn?
This is might work though
var subQuery = knex('transaction')
  .select('id')
  .join('return_transaction', 'transaction.id', '=', 'return_transaction.transaction')
  .where('return_transaction.id', 1);

knex('transaction').update({'status' : 'completed'}).where('id', subQuery);

I suppose that whereIn is not required in this case, since I assume that there is unique constraint for return_transaction.id, which effectively causes subQuery to always return 0 or 1 results... I would use whereIn though... code above might work or it might not. I didn't test it.

No it's not working. I get error column reference "id" is ambiguous
I believe knex should support "UPDATE - FROM" syntax for postgres.

I updated subquery there was ambiguous column identifier in .select. You still didn't mention why you like to avoid whereIn?
Yep, that would be nice if update - from could be supported. If you decide to implement it, pull requests are always welcome.

I don't understand how that makes for two main tables, you just need to add an "updateFrom" that simply adds a "from tableName" after the set, it's a simple string.
Another option would be to add an options to the update method.
this.knex.table("table1").update({id: 2}, {from: ["table2"]})
Or
this.knex.table("table1").update({id: 2}).updateFrom(["table2"]);

I don't understand how that makes for two main tables, you just need to add an "updateFrom" that simply adds a "from tableName" after the set, it's a simple string.
Another option would be to add an options to the update method.
this.knex.table("table1").update({id: 2}, {from: ["table2"]})
Or
this.knex.table("table1").update({id: 2}).updateFrom(["table2"]);

I have implemented a this.knex.table("table1").update({id: 2}).updateFrom("table2", "alias2").updateFrom("table3", "alias1"); solution, if anyone can tell me what should be done for testing, since this is pgsql specific and seems like it's hard of a thing to test as I can't get my head around these tests.
I was thinking to use the update options but there are so many overloads I found it bloated.

I have implemented a this.knex.table("table1").update({id: 2}).updateFrom("table2", "alias2").updateFrom("table3", "alias1"); solution, if anyone can tell me what should be done for testing, since this is pgsql specific and seems like it's hard of a thing to test as I can't get my head around these tests.
I was thinking to use the update options but there are so many overloads I found it bloated.

@onzag Do you still have the code for your .updateFrom() method? I'd love to have it.

@ffxsam sadly not anymore, I ended up moving away from knex and wrote my own wrapper on top of pg as I found more limitations, I never uploaded that change anywhere.

@onzag No worries, thanks for responding!

I have a PR open (https://github.com/knex/knex/pull/5386) that implements this.

Released in 2.5.0


Get familiar with code base

Do the following tutorials to get familiar with the codebase
Tutorial 1 - Tracing a Command Execution Path
Tutorial 2 - Removing a field from an entity
Tutorial 3 - Adding a new Command

Tutorial documents read through and completed.


Using the library inside my java code

Hi
i would like to embed the library inside my java code
is there any port for it?
with golang i managed doing this just implementing the functions which the CMD calls directly from my code
can it be done with Java?
thanks!

In Golang, you should be able to take a dependency on this package as opposed to having to copy and paste function definitions, but maybe I'm misunderstanding what you're doing. You can find an example here.
In Java, you could try reimplementing methods that you would like to leverage in your code base. Or if it's acceptable, you could potentially defer CreateSession calls to the aws_signing_helper executable. In your Java code, you could invoke the aws_signing_helper executable, providing the command line that you want to run and setting arguments appropriately. And you can read the executable output that is written to standard output.
There are definitely other approaches as well - it depends on what's acceptable for your use case.

Another Option: You can also set the location of a shared aws config file by using the "AWS_CONFIG_FILE" environment variable and set the credential process up in the config file under the default profile to use the aws_signing_helper.  The Java/.NET AWS SDK's support looking at that environment variable for the location of the AWS config file and work with the AWS credential process.  This allows for minimal changes to your applications and keeps the IAMRA configuration in the AWS config file's credential process.
You could also use the default config file which is typically located in the users directory but if you want to keep that location static across all of your servers, you can use that environment variable to override the location.
Example:
[default]
region = us-east-2
output = json
credential_process = C:\aws\aws_signing_helper credential-process --trust-anchor-arn {TRUSTANCHORARN} --profile-arn {PROFILEARN} --role-arn {ROLEARN} --certificate {CERT} --private-key {CERTKEY} --endpoint {IAMRA VPC ENDPOINT}


Should we verify if duration object it's correct  when using '-' ?

Given the example :
new Intl.DurationFormat("fr-FR", { style: "long" }).format({
    hours: 1,
    minutes: -46,
    seconds: -40,
});

Should we have specified something that checks the validity of the duration to ensure that all properties have the "-" sign similar to checks done in temporal with  durationsign?

This was an oversight in the DurationFormat spec, thanks for spotting this.


fix: Fix the umd builds

Summary

One fix to import the backends correctly
Fixes for a caps issue with the Redux folder name cases vs alias vs module import (alias added to resolve)
Fix the localForage folder case vs alias vs module import (alias added to resolve)
Fix a path import issue from '.' to './index'

Test plan
Same tests as original PR #2141
A picture of a cute animal (not mandatory but encouraged)
🐢

@erquhart I found these issues. Not all breaking, because the case issues are windows issues mostly.
I am working on an es6 bundle PR and these things showed up right away, so it was a good thing. 😜

@erquhart I keep forgetting to ask you if you want me to return those export names back for the backends or follow the same export names as the widgets, so we are ready for them to also have a register name as 'controlComponent'. Although they are not really components as much as control class modules.

Oh yeah, I meant to content on that in the original pull requests, the nomenclature should be changed to be specific to backends as "control" doesn't really apply there.
Awesome to hear you're working on ES6 modules!!!
Sent with GitHawk

Ok, no problem. I wonder if they should follow a common for export like the widgets, so we can make the API the same way?
I will do it first thing in the am.


Client Allocation Request for: grette.no

Client Allocation Questions
Core Information

Name: grette.no
Website / Social Media: https://grette.no/en/
Region: North America
DataCap Requested: 5TiB
Addresses to be Notarized: f1d77nswekbjcxtod5clv4bhubqonmsn7yv7rr54y
Notary Requested: Broz221

@hymorbra Please subscribe to notifications for this Issue to be aware of updates. Notaries may request additional information on the Issue.

@Broz221 This is a Norwegian Company by the looks of it. This allocation request is under North America, not Europe.
Since I'm from Norway I can have look at the Company as well.
Hi @hymorbra thank you for your request.
I found a lot of info about Advokatfirmaet Grette AS on the website and I'd like to know more about your business.
Please answer following questions:

Some more info about yourself , e.g. include links to social media / news mentions etc.

What’s the original source of the data, and do you have any proof of ownership or authorization?
Public data vs Private data, your relationship with the data, especially with regard to copyright etc.

Has your organization/company obtained DataCap before?

Please describe your plan to use DataCap briefly?
Such as use case, miner etc.

How you intend to store the data on Filecoin, e.g. redundancy, location / miner preferences, etc

Have you already ask datacap to another notary that have been accepted or rejected?

Thanks!
-Nicklas

Will be reassigning to @TimWilliams00. Awaiting repo settings update.


Cleanup in logstash configuration

Looks like the value Googlebot Web is not referenced by the kibana config, looks ok to merge.


how to set the feasibility tolerance ,Primal Bound or infinity value

hi,
is there some way to self define the feasibility tolerance ,Primal Bound or infinity value, i have tried to modified it in "def.h" from SCIP and reinstall the " pyscipopt", it didn,t work.

you can set these parameters with
m = Model()
m.setParam("numerics/infinity", yournewinfinity)
m.setParam("numerics/feastol", yournewfeastol)

What do you mean by primal bound? if you want to only accept solution with better value than some number N, you can call m.setObjlimit(N)

thx for the quick reply，
some of my constraints have huge coefficient in denominator and very tiny coefficient in numerator , i am not sure, if it is the problem，that i got "presolving detected infeasibility" all the time.
by some other models, i can only get a infeasible solution, because of the violation of constraints.

you can set these parameters with
m = Model()
m.setParam("numerics/infinity", yournewinfinity)
m.setParam("numerics/feastol", yournewfeastol)

What do you mean by primal bound? if you want to only accept solution with better value than some number N, you can call m.setObjlimit(N)

thx for the quick reply，
some of my constraints have huge coefficient in denominator and very tiny coefficient in numerator , i am not sure, if it is the problem，that i got "presolving detected infeasibility" all the time.
by some other models, i can only get a infeasible solution, because of the violation of constraints.


Fix for showcase mode & misc

makes it so the random botplay text wouldn't affect you in showcase mode, since you can't even see it so it shouldn't do anything
fixes #50

ignore the other commits btw

There is one problem @MemeHovy. I used this thing for system/FlxSound and it's wrking, like the sound it's doesnt disappears anymore, but i don't understand why did you delete it-

it broke backwards compatibility

There is one problem @MemeHovy. I used this thing for system/FlxSound and it's wrking, like the sound it's doesnt disappears anymore, but i don't understand why did you delete it-

it broke backwards compatibility

So i need to delete FlxSound then from flixel/system folder?

There is one problem @MemeHovy. I used this thing for system/FlxSound and it's wrking, like the sound it's doesnt disappears anymore, but i don't understand why did you delete it-

it broke backwards compatibility

So i need to delete FlxSound then from flixel/system folder?

no, that'd cause issues

There is one problem @MemeHovy. I used this thing for system/FlxSound and it's wrking, like the sound it's doesnt disappears anymore, but i don't understand why did you delete it-

it broke backwards compatibility

So i need to delete FlxSound then from flixel/system folder?

no, that'd cause issues

What i need to do then?

There is one problem @MemeHovy. I used this thing for system/FlxSound and it's wrking, like the sound it's doesnt disappears anymore, but i don't understand why did you delete it-

it broke backwards compatibility

So i need to delete FlxSound then from flixel/system folder?

no, that'd cause issues

What i need to do then?

idk, just use that for now

There is one problem @MemeHovy. I used this thing for system/FlxSound and it's wrking, like the sound it's doesnt disappears anymore, but i don't understand why did you delete it-

it broke backwards compatibility

So i need to delete FlxSound then from flixel/system folder?

no, that'd cause issues

What i need to do then?

idk, just use that for now

Okay


Flux model ODE decoder

Codecov Report

Merging #51 into master will decrease coverage by 5.6%.
The diff coverage is 97.72%.

@@            Coverage Diff             @@
##           master      #51      +/-   ##
==========================================
- Coverage   75.47%   69.86%   -5.61%
==========================================
  Files          13       13
  Lines         212      219       +7
==========================================
- Hits          160      153       -7
- Misses         52       66      +14

Impacted Files
Coverage Δ

src/GenerativeModels.jl
100% <ø> (ø)
:arrow_up:

src/pdfs/abstract_cgaussian.jl
100% <ø> (ø)
:arrow_up:

src/pdfs/abstract_pdfs.jl
92.3% <100%> (-7.7%)
:arrow_down:

src/utils/utils.jl
25.49% <100%> (+10.49%)
:arrow_up:

src/pdfs/cmean_gaussian.jl
94.73% <100%> (ø)
:arrow_up:

src/pdfs/gaussian.jl
100% <100%> (ø)
:arrow_up:

src/utils/flux_ode_decoder.jl
100% <100%> (ø)

src/utils/nogradarray.jl
50% <50%> (ø)
:arrow_up:

src/models/vae.jl
52.63% <0%> (-47.37%)
:arrow_down:

... and 5 more

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 48ae5fe...0ef69bd. Read the comment docs.


Snitch to Wishbone Bridge

Hello,
I have recently tried to create a snitch to wishbone bridge. Currently I have a problem with data channel. If I understand correctly, data channel has enum or struct type (screenshot I attached below) and differs from instruction channel.

But I cant find the definition of reqrsp_rsp_t  and reqrsp_req_t enum/struct as a result I cant connect signals appropriately.

I saw the example of connection to AXI bus in Snitch Cluster but it does not give me a lot.
Could you please help me to find this definition? Or probably share an example of connection to another buses?
Best regards,
Illia

Hi Illia,
Since SystemVerilog does not support parameterizable struct types, we generally resort to passing such types through the module hierarchy as parameters. These parameter types are defined with fixed values in a top-level system wrapper (e.g. snitch_cluster_wrapper for the cluster system) and passed down to the modules that use them.
The reqrsp_req_t and reqrsp_rsp_t use our request-response interface. In the include subdirectory, you can find SystemVerilog headers with macros that define interfaces with desired parameters for you in-place. If you want to connect to the core directly, you must define all interfaces used by the core in a wrapper or containing module just like the system wrappers do, then use those types for the IO.
If you need an example, the cluster wrapper and its submodules define all interfaces you need for the core. We use a Mako template to automatically generate the code for these interfaces and other parameters. You can find an example of how the resulting generated wrapper module looks in the occamy cluster wrapper.
I hope this helps.


Uncurrying

One thing that functional languages like PureScript do is generate curried functions. This appears to be a blocker for Closure. For example,
(function(){

  var Show_string = { show: function(s){ return s; } };

  function print(d,v){
    console.log(d.show(v));
  }

  function greet(d,v){
    return print(d,v + "!");
  }

  return greet(Show_string, "Mary");
})();

Closure outputs,
console.log("Mary!");

Excellent result. It did pretty straight-forward transformations here. Including removing the overhead of generic functions, which are achieved via dictionary (argument) passing in Haskell-like languages. However, in languages like Haskell/PureScript, functions are all single-argument chains of functions, like this:
(function(){

  var Show_string = { show: function(s){ return s; } };

  function print(d) {
    return function(v){
      console.log(d.show(v));
    }
  }

  function greet(d){
    return function(v){
      return print(d)(v + "!");
    }
  }

  return greet(Show_string)("Mary");
})();

Unfortunately, Closure outputs the following:
(function() {
  function c(a) {
    return function(b) {
      console.log(a.show(b));
    };
  }
  return function(a) {
    return function(b) {
      return c(a)(b + "!");
    };
  }({show:function(a) {
    return a;
  }})("Mary");
})();

This means that PureScript's output is both large and slow -- this example is small, but imagine large codebases with nested levels of this.
So it seems that "uncurrying" is not a process that Closure currently does. I'm not sure whether this was decided against, simply because it's not normal in JS to have functions like this, or whether it's an oversight, or whether there's a good reason that makes reducing these in the general case difficult.
Could someone fill me in?
If it's simply not something considered, how difficult would it be to add? Is it something I could implement myself in Closure? I'm discussing with the PureScript community and considering whether to add it to the compiler output, but on the other hand,
this kind of thing feels like Closure's bread and butter, so I'm attempting to do it the Right Way before going off and patching something further up the chain.

So it seems that "uncurrying" is not a process that Closure currently does. I'm not sure whether this was decided against, simply because it's not normal in JS to have functions like this, or whether it's an oversight, or whether there's a good reason that makes reducing these in the general case difficult.

I suspect this simply never came up as an important thing to look at, indeed because normal JavaScript doesn't produce code like this.
Can you share what the optimization algorithm you propose would look like? How would you identify the function expressions, and when to inline their contents?

My thinking so far is that whenever there is an uninterrupted sequence of successive function expressions, that is a match. This is a curried function of arity 2.
function f(x){
  return function(y){
    return ...;
    }
}

If the call site is f(1) then nothing special needs to happen. But if the function is fully saturated, i.e. f(1)(2), then we want to produce f(1,2) and go back to the definition and rewrite it to function f(x,y){ ... }. Obviously, this can only happen if all calls to the function are saturated to arity N.
Also consider that when uncurrying a function g e.g. of arity 5, that is called mostly fully saturated g(1,2,3,4,5), apart from sometimes with one final arg partially applied, we could generate a definition currying the last argument, e.g.  h = function(arg5){ return g(1,2,3,4,arg5) }, then we call h(1,2,3,4).
I've implemented this in a Haskell-like-to-JS compiler in the past (Fay) and found that increased code size pre-Closure, but decreased code size post-Closure pass. It's also a bit faster and less liable to stack overflow. In particular, type-class generic functions implicitly by the compiler are provided an argument for each class instance (this avoids doing vlookups). Naturally, the larger the call chain, the more argument passing we're doing. With curried functions, that's a lot of nested functions and lots of f(d1)(d2)(arg1)(arg1). Here's an example of compiler output.
PureScript like Haskell generates impure code only within a module boundary, so there's a lot of mileage out of such rewrites.
Please let me know if you think this is something that could be practically added to Closure or whether you think it'd be unlikely to make it in.

We'll discuss this and get back to you.

Some notes:

Here's a webservice link showing the lack of optimization even with ADVANCED optimizations.
The existing function inliner never inlines functions with both inner functions and local variables/parameters: https://github.com/google/closure-compiler/blob/d6c3d464b822c7e86f65e03fb97108d724c9a344/src/com/google/javascript/jscomp/InlineFunctions.java#L319-L330. Unfortunately that would include all curried functions. @concavelenz - do you recall the TODO in there?

Some notes:

Here's a webservice link showing the lack of optimization even with ADVANCED optimizations.
The existing function inliner never inlines functions with both inner functions and local variables/parameters: https://github.com/google/closure-compiler/blob/d6c3d464b822c7e86f65e03fb97108d724c9a344/src/com/google/javascript/jscomp/InlineFunctions.java#L319-L330. Unfortunately that would include all curried functions. @concavelenz - do you recall the TODO in there?

Thanks for the update @lauraharker. :smile: :tada:
I added some thoughts below as concerns that PS programmers have, and why I think they'll be covered already if we follow straight-forward rules.

Nullary functions
I know this may be obvious, especially to the Closure Compiler maintainers, but I'll note it anyway: PureScript uses function (){ .. } as a way to delay evaluation. It may be tempting to reduce that down, too, but it'd cause different semantics, e.g.
function print(s){
  return function(){
    console.log(s);
  }
}

then these are strung together via
when(x>5,then(print("hi"),then(print("world"),pure(123)))

and the then will call each action as action() to force evaluation. The when is a function that'll only run the composed action of then(.., then(.., ..)) if the bool matches.
Removing the intermediate function(){..} would change the semantics here and even break performance, as the actions would all run immediately.
Of course, following "only reduce it if fully saturated" would not remove such nullary functions anyway.
Verdict: no problem.
Intermediate results
Others in the PS community have pointed out e.g. func x = let thing = bigCalculation(x) in \y -> go y thing. would compile to something like
function func(x){
  let thing = bigCalculation(x);
  return function(y){
    return go(y)(thing);
  }
}

The motivation being that you might use func in map, e.g. map(func(blah), [1,2,3,...]) - you only want bigCalculation to happen once. Plus, it doesn't satisfy what I wrote above  in

uninterrupted sequence of successive

As this sequence is interrupted by let thing ... Only successive return function(){ <repeat> } would be a valid chain. In this example, I personally believe this is an exception to the rule. We do it sometimes, but it's a conscious decision to interrupt the function arguments to basically cache a value.
In other words, it's a concern PS programmers have, but it wouldn't come up anyway based on this thread.
Verdict: no problem.

Thanks for the update @lauraharker. :smile: :tada:
I added some thoughts below as concerns that PS programmers have, and why I think they'll be covered already if we follow straight-forward rules.

Nullary functions
I know this may be obvious, especially to the Closure Compiler maintainers, but I'll note it anyway: PureScript uses function (){ .. } as a way to delay evaluation. It may be tempting to reduce that down, too, but it'd cause different semantics, e.g.
function print(s){
  return function(){
    console.log(s);
  }
}

then these are strung together via
when(x>5,then(print("hi"),then(print("world"),pure(123)))

and the then will call each action as action() to force evaluation. The when is a function that'll only run the composed action of then(.., then(.., ..)) if the bool matches.
Removing the intermediate function(){..} would change the semantics here and even break performance, as the actions would all run immediately.
Of course, following "only reduce it if fully saturated" would not remove such nullary functions anyway.
Verdict: no problem.
Intermediate results
Others in the PS community have pointed out e.g. func x = let thing = bigCalculation(x) in \y -> go y thing. would compile to something like
function func(x){
  let thing = bigCalculation(x);
  return function(y){
    return go(y)(thing);
  }
}

The motivation being that you might use func in map, e.g. map(func(blah), [1,2,3,...]) - you only want bigCalculation to happen once. Plus, it doesn't satisfy what I wrote above  in

uninterrupted sequence of successive

As this sequence is interrupted by let thing ... Only successive return function(){ <repeat> } would be a valid chain. In this example, I personally believe this is an exception to the rule. We do it sometimes, but it's a conscious decision to interrupt the function arguments to basically cache a value.
In other words, it's a concern PS programmers have, but it wouldn't come up anyway based on this thread.
Verdict: no problem.

Unfortunately, given the body of code Closure is generally used on and the technical cost of this idea, we don't have any plans to implement it in the near future.

Unfortunately, given the body of code Closure is generally used on and the technical cost of this idea, we don't have any plans to implement it in the near future.

Thanks for the update @nreid260; I appreciate the frankness and quick turn around on this reply. Pleasure interacting with the team.
It was worth asking. I may take a shot at it sometime in Haskell as a basic rename-and-then-uncurry step.

Thanks for the update @nreid260; I appreciate the frankness and quick turn around on this reply. Pleasure interacting with the team.
It was worth asking. I may take a shot at it sometime in Haskell as a basic rename-and-then-uncurry step.

Tried setting assumeClosuresOnlyCaptureReferences = true and it worked:
On commit 2809700cd70d76b6212cd45540151b90c8d003ba, diff:
diff --git a/src/com/google/javascript/jscomp/CompilationLevel.java b/src/com/google/javascript/jscomp/CompilationLevel.java
index 02ec99aee..0211a6cc1 100644
--- a/src/com/google/javascript/jscomp/CompilationLevel.java
+++ b/src/com/google/javascript/jscomp/CompilationLevel.java
@@ -181,7 +181,7 @@ public enum CompilationLevel {
     options.setSmartNameRemoval(true);
     options.setInlineConstantVars(true);
     options.setInlineFunctions(Reach.ALL);
-    options.setAssumeClosuresOnlyCaptureReferences(false);
+    options.setAssumeClosuresOnlyCaptureReferences(true);
     options.setInlineVariables(Reach.ALL);
     options.setComputeFunctionSideEffects(true);
     options.setAssumeStrictThis(true);

Command:
java -jar bazel-bin/compiler_unshaded_deploy.jar -O ADVANCED --js ps.js --js_output_file minps.js

Input:
(function(){

  var Show_string = { show: function(s){ return s; } };

  function print(d) {
    return function(v){
      console.log(d.show(v));
    }
  }

  function greet(d){
    return function(v){
      return print(d)(v + "!");
    }
  }

  return greet(Show_string)("Mary");
})();

Output:
console.log("Mary!");

Thanks a bunch @krk, that's a highly encouraging tip! I'll try it.

:disappointed:   I'm not able to reproduce your result @krk with this Dockerfile https://gist.github.com/chrisdone/52124977ff5b6833558544f977423f0c and your patch on commit 2809700cd Run InferConsts as part of typechecking integration tests.
I made a docker image with that Dockerfile and ran
bazelisk build //:compiler_unshaded_deploy.jar

and then
java -jar bazel-bin/compiler_unshaded_deploy.jar -O ADVANCED --js demo.js --js_output_file /dev/stdout

The output is:
(function(){function c(a){return function(b){console.log(a.show(b))}}return function(a){return function(b){return c(a)(b+"!")}}({show:function(a){return a}})("Mary")})();

Any idea what's different between your and my setup?

@chrisdone, I have created a Dockerfile that demonstrates the patch at https://gist.github.com/krk/01355fedc9df9dd639498e23b6fa0380
# Expected output:
# Vanilla:
# (function(){function c(a){return function(b){console.log(a.show(b))}}return function(a){return function(b){return c(a)(b+"!")}}({show:function(a){return a}})("Mary")})();
#
# Patched:
# console.log("Mary!");

Thanks a bunch @krk! I’ve eyeballed the Dockerfile and can’t see where my attempt diverged from yours, but no matter, I’m sure it was something subtle and trivial.
Happy new year! 🎊

Hi @chrisdone, I am also a PureScript user looking for better handling on minification. Glad to see this thread that enables me to reuse the same findings with @krk.
There is an NPM package that I just published for easy usage:
https://www.npmjs.com/package/google-closure-compiler-acocr

I have packaged up @sd-yip's NPM package into a Nix Flake, which can be found here: https://github.com/jeslie0/closure-compiler-acocr.


[Prototype] Change Email View in SwiftUI

📲 What
As part of a personal goal to integrate SwiftUI into the main iOS Kickstarter repo, here is the prototype PR to change this view over to SwiftUI and possibly Combine
🤔 Why
Confluence document on the progress of this update and drawbacks/benefits of the process.
🛠 How
As you can see all the new code is in ChangeEmailView and represents most of the displayed UI within this page.
It's also launching inside a UIHostingViewController.
👀 See
UIKit 🐛
https://user-images.githubusercontent.com/4282741/197639685-a63d5c5d-de8d-4041-b6a4-9edfa5d239fb.mp4
SwiftUI 🦋
https://user-images.githubusercontent.com/4282741/201432575-a985681a-a8b6-4b4c-aae1-b94c66291916.mp4
✅ Acceptance criteria

[ ] ChangeEmailView replaces ChangeEmailViewController for iOS 15.0+

⏰ TODO

[x] Ensure cell separator is consistently displaying one pixel height, not cutoff by separator views.
[x] Add field styles to email, new email, password from view controller styles as guide
[x] Get return key going to next field and Done button disabled when no text on password field.
[x] Apply styles for messageLabelView, resendVerificationEmailButton, resendVerificationEmailView scrollView, unverifiedEmailLabel, warningMessageLabel from view controller.
[ ] Landscape mode on iPhone 13 Pro Max is missing the background colour in the safe area.
[ ] Hook up the vm, try to use ReactiveSwift instead of Combine.
[ ] Setup IBActions, target actions, custom modifier funcitons and delegate methods.
[ ] Test accessibility labels once all styling and vm is working on device.
[ ] Figure out snapshot testing, only view should require re-writing tests, unless we update the vm to Combine.

SwiftFormat found issues:

File
Rules

Kickstarter-iOS/Features/ChangeEmail/Controller/ChangeEmailView.swift:220:1
warning: (indent) Indent code in accordance with the scope level.

Kickstarter-iOS/Features/ChangeEmail/Controller/ChangeEmailView.swift:221:1
warning: (indent) Indent code in accordance with the scope level.

Kickstarter-iOS/Features/ChangeEmail/Controller/ChangeEmailView.swift:222:1
warning: (indent) Indent code in accordance with the scope level.

Kickstarter-iOS/Features/ChangeEmail/Controller/ChangeEmailView.swift:223:1
warning: (indent) Indent code in accordance with the scope level.

Kickstarter-iOS/Features/ChangeEmail/Controller/ChangeEmailView.swift:224:1
warning: (indent) Indent code in accordance with the scope level.

Kickstarter-iOS/Features/ChangeEmail/Controller/ChangeEmailView.swift:225:1
warning: (indent) Indent code in accordance with the scope level.

Kickstarter-iOS/Features/ChangeEmail/Controller/ChangeEmailView.swift:226:1
warning: (indent) Indent code in accordance with the scope level.

  Generated by :no_entry_sign: Danger

          1 Warning

:warning:
Big PR

  Generated by :no_entry_sign: Danger

closing this as it is old and diverged from my local...so instead of dealing with complicated merges..created a new branch


Framer Generator isn't working in Sketch v39

With the new update to Sketch v39, Framer Generator on http://builds.framerjs.com has stopped working. Framer Studio is still working fine.

Could you try the beta at http://framerjs.com/beta

Yup beta is working. I have Framer Studio. It is working fine. But the open source Framer Generator isn't. We are coding in JS at this agency hence we are relying on the github Framer.js. Hence the workaround is to generate the assets in Framer Studio and then later on copy the files to our own bootstrapped Framer.js folder which isn't ideal. Any chance we can export Framer generator as a standalone tool? Thanks (:

Ah, I see! Let me check if I can update generator quickly for you.

That will be most appreciated thanks @koenbok

Unfortunately this is not a quickie. We hope to fix it next week.

Any status update on this? (: @koenbok @nvh

I've just updated Framer Generator. To make this process more streamlined in the future, we've switched out the backend providing the updates. Therefore the Updating from Framer Generator won't work this time, but after redownloading it once, it will update itself in the future.

@nvh much appreciated! Awesome!


Connection issues

I'm using latest HA inside VM on Proxmox and I saw many mopidy integration errors in HA logs:

Mopidy connection error: HTTPConnectionPool(host='mopidy.local', port=6680): Max retries exceeded with url: /mopidy/rpc (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f7084b16200>: Failed to establish a new connection: [Errno 22] Invalid argument'))

After some testing: mopidy server is working fine, HA is working fine - I am able to use the dashboard at any time (no connection issues).

Same problem (

I realise this is a bit late, but are you still experiencing these issues?
This issue would mean there is no mopidy instance on mopidy.local @ port 6680
It might also mean your dns cannot resolve mopidy.local for some reason. Did you enter the hostname yourself, or was it picked up by the integration?

I realise this is a bit late, but are you still experiencing these issues?
This issue would mean there is no mopidy instance on mopidy.local @ port 6680
It might also mean your dns cannot resolve mopidy.local for some reason. Did you enter the hostname yourself, or was it picked up by the integration?

I made some tweaks to my home dns and it's working without any issues.


Add _conontentAvailable parameter to ExpoMassage

This parameter doesn't appear in the docs of expo API but it handles it and it's work. It has to be true if you want to handle the notification receiving with background tasks on iOS.

Hello @ctwillie,
Please accept my changes, it would be great if I can use this version from composer.


Slow peering on IBFT2 private network

Description
As an developer building a private network, I want my nodes to peer at a reasonable pace.
User: "It seems to take several hours for my local node to find more than a few peers on the network"
Acceptance Criteria
Peering should occur at at reasonable pace, or errors are thrown if there's a problem
Steps to Reproduce (Bug)

Start a Besu network with the following Genesis file and config

Genesis.json
{
  "config": {
    "chainId":<PHONE_NUMBER>9,
    "homesteadBlock": 0,
    "daoForkBlock": 0,
    "eip150Block": 0,
    "eip155Block": 0,
    "eip158Block": 0,
    "byzantiumBlock": 0,
    "constantinopleBlock": 0,
    "constantinopleFixBlock": 0,
    "muirglacierblock": 0,
    "berlinBlock": 0,
    "ibft2": {
      "blockperiodseconds": 5,
      "epochlength": 30000,
      "blockreward": "114085402000000000",
      "requesttimeoutseconds": 10
    }
  },
  "nonce": "0x0",
  "timestamp": "0x0",
  "gasLimit": "0x11EDD80",
  "difficulty": "0x1",
  "mixHash": "0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e6365",
  "alloc": {
    "0xDf4FE27cb676166a78EAE18bdB1D6Dc996635A50": {
      "balance": "1000000000000000000000000000"
    }
  },
  "extraData": "0xf893a00000000000000000000000000000000000000000000000000000000000000000f869947f9a67f84a010bda3d83493e4f1476f2651b1dab94948b655e3a1e3505c57d15f2c5c813e4abad9cb49411781ba3cd85671a6f8481514f84bce660b759199488cd6a0d883f9104432d729df772131efe44b82094b49ce87bcb7f8a1dde59bde1b4c18fbf00b424ac808400000000c0"
}

Config
# Production network genesis file
genesis-file="genesis.json"

# Network bootnodes
bootnodes=["enode://"X","X"]

# Data directory
data-path="data"

#Enable the JSON-RPCs
rpc-http-enabled=true
rpc-http-api=["ETH","NET","WEB3","TRACE","TXPOOL"]

#Debug
revert-reason-enabled=true
sync-mode="FULL"

#Metrics
metrics-enabled=true
metrics-host="<IP_ADDRESS>"
metrics-port=9545%

Versions (Add all that apply)

Software version: [besu --version]
Java version: [java -version]
OS Name & Version: [cat /etc/*release]
Kernel Version: [uname -a]
Virtual Machine software & version: [vmware -v]
Docker Version: [docker version]
Cloud VM, type, size: [Amazon Web Services I3-large]

Additional Information

This is using discovery, correct?

Yep, I removed two bootnodes from the code for privacy


feat: Deep connector Salesloft (Read)

Closes #260
Checklist

[x] Ran Linter
[x] All tests passing

Test script output
Location: test/salesloft/read/main.go

Completed via PR: #269
Closes #260


Template SDK for Python?

Any plans to provide an adaptive cards template expansion SDK for other langs (ie: python)?
If not is there a place for potentially submitting community created adaptive card tools?

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

ID: b499287b-06d7-456f-5d15-e50c954ace35
Version Independent ID: be6accea-502b-6340-c71a-f92d43ce87f5
Content: Templating SDKs - Adaptive Cards
Content Source: AdaptiveCards/templating/sdk.md
Product: adaptive-cards
GitHub Login: @matthidinger
Microsoft Alias: mahiding

+1 for this request, specifically for Python.

+1, since python is already supported in teams-ai bot to send adaptive card, then it is better to have templating SDK for adaptive card


Jammed page can not respond

Operating push and pop a few times on Android, the page will be stuck unable to respond. When this situation is more serious show navbar.

Seems duplicate of #355


Update Camera Shutter Privacy Guidelines

Updated the shutter guidelines to reflect a relaxation of the IR shutter requirements to support scenarios like presence sensing.

@usivagna, thanks for the PR.


[datadog] Changes to fixed configuration

what

Remove tolerations for cluster agent
Correctly set resource requests
Adjust resource requests based on observed behavior

why

Cluster agent only runs 1 (or 3) per cluster, not on each node, so it should not have tolerations
Resource limits were of unknown origin and were specified in the wrong place, leading them to be ignored and defaults applied. New resource limits are based on observed behavior of agents as well as taking defaults into account as recommendations.

Nice job


[Other issue]: The robot's model does not load correctly

Before proceeding, is there an existing issue or discussion for this?

[X] I have done a search for similar issues and discussions.

Description
Hello
When I ran the demo, I ran into some problems, my terminal shows [fleet_adapter-14] [INFO] [1706022280.900932158] [tinyRobot_command_handle]: Successfully added new robot: tinyRobot2 and
schedule_visualizer_node-4] [INFO] [1706022288.915672244] [schedule_data_node]: Requesting new schedule update because update timed out
[schedule_visualizer_node-4] [INFO] [1706022288.915734107] [schedule_data_node]: [rmf_traffic_ros2::MirrorManager::request_update] Requesting changes for query ID [1] since beginning of recorded history
[rmf_traffic_schedu
This is causing the bots to not load correctly on my map, and I would like to know what is causing this. Thank you for your time, and I sincerely thank you

The terminal printout that you're sharing is very normal, so it doesn't explain any problem that you're having.
You'll need to tell us a lot more about

What exactly are you doing, e.g. each terminal command that you are running
Are you running out-of-the-box demos from this rmf_demos repo or did you customize something? If you customized anything, you'll need to let us know what you changed.
What does you mean that the robot's model does not load correctly? Does the robot not appear at all in Gazebo? Does the model look wrong or different than you expect?

Hello, thank you very much for replying to my question. I am very grateful for your reply. I encountered an issue while running the Office World demo, and I only ran the ROS2 launch rmf_ Demos_ The command gz office. launch.xml was used, but the robot was not loaded on rviz

schedule_visualizer_node-4] [INFO] [1706255007.593262846] [schedule_data_node]: Requesting new schedule update because update timed out
[schedule_visualizer_node-4] [INFO] [1706255007.593336200] [schedule_data_node]: [rmf_traffic_ros2::MirrorManager::request_update] Requesting changes for query ID [1] since beginning of recorded history
[rmf_traffic_schedule-1] [INFO] [1706255007.603382619] [rmf_traffic_schedule_primary]: [ScheduleNode::update_mirrors] Sending remedial update starting from the beginning going to 6 for query 1
[schedule_visualizer_node-4] [INFO] [1706255027.603961849] [schedule_data_node]: Requesting new schedule update because update timed out
schedule_visualizer_node-4] [INFO] [1706255007.593262846] [schedule_data_node]: Requesting new schedule update because update timed out
[schedule_visualizer_node-4] [INFO] [1706255007.593336200] [schedule_data_node]: [rmf_traffic_ros2::MirrorManager::request_update] Requesting changes for query ID [1] since beginning of recorded history
[rmf_traffic_schedule-1] [INFO] [1706255007.603382619] [rmf_traffic_schedule_primary]: [ScheduleNode::update_mirrors] Sending remedial update starting from the beginning going to 6 for query 1
[schedule_visualizer_node-4] [INFO] [1706255027.603961849] [schedule_data_node]: Requesting new schedule update because update timed out
schedule_visualizer_node-4] [INFO] [1706255007.593262846] [schedule_data_node]: Requesting new schedule update because update timed out
[schedule_visualizer_node-4] [INFO] [1706255007.593336200] [schedule_data_node]: [rmf_traffic_ros2::MirrorManager::request_update] Requesting changes for query ID [1] since beginning of recorded history
[rmf_traffic_schedule-1] [INFO] [1706255007.603382619] [rmf_traffic_schedule_primary]: [ScheduleNode::update_mirrors] Sending remedial update starting from the beginning going to 6 for query 1
[schedule_visualizer_node-4] [INFO] [1706255027.603961849] [schedule_data_node]: Requesting new schedule update because update timed out
my terminal output timeout

Please use https://gist.github.com/ to upload and share large amounts of terminal output instead of putting it directly into your posts. That helps keep the conversations readable.
There's still nothing wrong with the terminal output that you're showing here. The timeout messages are normal when no robots are performing any tasks.
Here's a few things you can do that will help us understand what's going on:

Provide a screenshot of Gazebo
Copy/paste ALL the terminal output from after you run $ ros2 launch rmf_demos_gz_classic office.launch.xml into a gist
Copy/paste the output of $ ros2 topic echo /fleet_states into a gist

I'm sorry about this, I'm a beginner, and I can see from the rviz screenshot just now that the robot should be in the charger position, but my robot doesn't load, so I don't reply to the delivery or go to place commands from the robot, and the robot model loads normally on the screen of Gazebo.

https://gist.github.com/zzz11wh/6c7f4271a92c6fca4a6ee0a1df22f23a
Thank you very much for receiving your reply, this is the output of my terminal, and finally has been updating timed out, I wonder if this has something to do with the absence of bots on the map


getDOMNode is deprecated

Trying to use this lib with react v0.14.0-beta2 getting this error in console:
Warning: InputElement.getDOMNode(...) is deprecated.  Please use React.findDOMNode(instance) instead.
Stacktrace is
warning	@	warning.js:45
ReactBrowserComponentMixin.getDOMNode	@	ReactBrowserComponentMixin.js:30
setCaretPos	@	InputElement.js:223
setCaretToEnd	@	InputElement.js:164
.....

Could you, please, fix it?

Fixed


hard to see, but the tower is not doing the damage it should be doing

my guess is that ancients are wierd, and have 2 attack, 1 when rooted, and 1 when moving. Attack 1 is moving, attack 2 is rooted. I think if you could set the defender attack 2 to the same as attack 1, it will fix this very specific scenario

Probably whats happening is that the code is buffing the ancient attack 1. but while rooted they use attack 2


After error message, all below components are displaced

The validation adds a span tag under the validated input field but I cause that all below component are displaced down. How can I fixed that? I guess I could use a div instead of span but I am not sure.
I saw the code in validation-common.js and you mentioned that the error message could be shown as div. So, is it possible?
 /** Validate function, from the input value it will go through all validators (separated by pipe)      *  that were passed to the input element and will validate it. If field is invalid it will update      *  the error text of the span/div element dedicated for that error display.      * @param string value: value of the input field      * @param bool showError: do we want to show the error or hide it (false is useful for adding error to $validationSummary without displaying it on screen)      * @return bool isFieldValid      */     function validate(strValue, showError) {
Thanks!

Simply use Wiki - DisplayErrorTo which was made for this

Sound good! Thank you for your quick response!


Implement DataSource.get_contiguous_time_periods()

Pull Request
Description
This is a bite-sized part of a larger issue (#223).
The ultimate aim of #223 is to change the way nowcasting_dataset computes the set available datetimes across all DataSources.
This PR basically just implements one function and its test: DataSource.get_contiguous_time_periods().
There are a few other little bits-and-bobs (which, if I was being really well behaved, would be in separate PRs!)

There are also some small formatting tweaks (mostly fixing lines > 100 characters).
Removed the ancient "temporary code" from DataSource.get_locations_for_batch() which could silently create nasty bugs in our prepared data batches!

How Has This Been Tested?
The PR implements a new unit-test.  All tests pass.

[ ] No
[x] Yes

Checklist:

[x] My code follows OCF's coding style guidelines
[x] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[x] I have added tests that prove my fix is effective or that my feature works
[x] I have checked my code and corrected any misspellings

Looks good, very good to break it into a small PR.


refactor(schematron): decipher Schematron stylesheets

Probably for historical reasons, sch-location-compare.xsl and schut-to-xspec.xsl have some mysterious expressions including codepoints-to-string().
This pull request replaces them with self-explanatory ones.

I'm merging this so as not to block some more rework in this area like #984.


How to export to PDF

Anyway to export a adoc to PDF ?

Use the export button (box with curved arrow) to display the document in a browser. From there, you can print or save as PDF. Direkt generation of PDF is a bit out of scope for the previewer.

However, if you really want to create a full-featured PDF the official asciidoctor toolchain should be used instead.

Ok, got it.  thanks nerk!


Fix spacelift atmos stack

what

Add infrastructure_stack_name var to stack sub-module

why

Spacelif stack is different from infrastructure (atmos) stack, and has different name

/test all


feat: init node level sidecar.

Description:
init node level sidecar.

Testing done:
Done

Affected area:

Functional Area

New Functionality
[X]

CI System
[ ]

CLI Tool
[ ]

Certificate Management
[ ]

Control Plane
[ ]

Demo
[ ]

Documentation
[ ]

Egress
[ ]

Ingress
[ ]

Install
[ ]

Networking
[ ]

Observability
[ ]

Performance
[ ]

SMI Policy
[ ]

Security
[ ]

Sidecar Injection
[ ]

Tests
[ ]

Upgrade
[ ]

Other
[ ]

Please answer the following questions with yes/no.

Does this change contain code from or inspired by another project? no

Is this a breaking change? no

Has documentation corresponding to this change been updated in the fsm-docs repo (if applicable)? no

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 8.88278% with 995 lines in your changes missing coverage. Please review.

Please upload report for BASE (release/v1.5@484750d). Learn more about missing BASE report.

Files with missing lines
Patch %
Lines

...ent/xnetwork/informers/externalversions/factory.go
0.00%
102 Missing :warning:

pkg/sidecar/v2/xnet/maps/nat.go
0.00%
95 Missing :warning:

pkg/sidecar/v2/dns.go
0.00%
76 Missing :warning:

...typed/xnetwork/v1alpha1/fake/fake_accesscontrol.go
0.00%
68 Missing :warning:

pkg/xnetwork/client.go
0.00%
68 Missing :warning:

...kg/apis/xnetwork/v1alpha1/zz_generated.deepcopy.go
0.00%
66 Missing :warning:

pkg/sidecar/v2/acl.go
0.00%
51 Missing :warning:

...n/client/xnetwork/clientset/versioned/clientset.go
0.00%
47 Missing :warning:

...rsioned/typed/xnetwork/v1alpha1/xnetwork_client.go
0.00%
44 Missing :warning:

pkg/sidecar/v2/job.go
0.00%
40 Missing :warning:

... and 36 more

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@               Coverage Diff               @@
##             release/v1.5     #481   +/-   ##
===============================================
  Coverage                ?   15.69%
===============================================
  Files                   ?      856
  Lines                   ?    62924
  Branches                ?        0
===============================================
  Hits                    ?     9877
  Misses                  ?    52859
  Partials                ?      188

Flag
Coverage Δ

unittests
15.69% <8.88%> (?)

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

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


⚠ Samsung has degraded performance

In 93da885, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2686 ms

Resolved: Samsung performance has improved in e565c3a.


swing-toast-notifications in Maven Central?

I see you are using pom.xml yourself.
Would be great if projects making use of this nice library could refer to a maven dependency for ease of use.

This library not available in maven, try use jar file, by copy to the root project /library/swing-glasspane-popup-1.1.0.jar
<dependency>
    <groupId>raven.popup</groupId>
    <artifactId>swing-glasspane-popup</artifactId>
    <version>1.1.0</version>
    <scope>system</scope>
    <systemPath>${basedir}/library/swing-glasspane-popup-1.1.0.jar</systemPath>
</dependency>

I added it to the project, but it doesn't work with JDialog. Is there a solution?


Idea: Raise the Gold you get for killing an enemy lord

500 Gold minimum is a little low in my opinion.
I have a few ideas, I will only mention my favourite one:
How about the Gold for killing someone is not (only) depended on the Gold a player had, but also on the game time / years past.
That way, it would work great together with the bigger armies sent forth by ai players.

About 700 arab. swordsmen cost 56,000 Gold. Add 20 engineers (600 Gold), and the siege engines (~500 to 2,000 Gold) as well as 50 to 100 horse archers (~6000 Gold). Which adds up to 63,850.
500 Gold prize -> so not worth

@ByBurton Cool idea

But killing someone is not only about getting the gold, but also about getting rid of an enemy. :P

This is a good idea. I also think the amount of captured resources needs to be increased. It's always weird killing a Lord with a fully stocked stockpile or armory and only capture 2-3 resources. I feel killing a Lord should reward you with at least 40% of their total resources/food/weapons/etc.

This is a good idea. I also think the amount of captured resources needs to be increased. It's always weird killing a Lord with a fully stocked stockpile or armory and only capture 2-3 resources. I feel killing a Lord should reward you with at least 40% of their total resources/food/weapons/etc.

To be honest, I always assumed you get all the goods they had left. It just made sense to me.
I wish you WOULD get all the stuff now..

To be honest, I always assumed you get all the goods they had left. It just made sense to me.
I wish you WOULD get all the stuff now..

You generally get 25% of all gold and resources the victim had, rounded down to the nearest integer number. E.g. if the Wolf had 20001 gold and 103 stone at the time of his demise, you get 20001/4 = 5000.25 --> 5000 gold, and 103/4 = 25.75 --> 25 stone.
For gold, there is a lower border for the reward, which is 500 gold - i.e. the reward for victims with 0-2003 gold is equal, from 2004 on it rises proportionally.
Imho, the 25% quota could be changed to different values, e.g. 10% or 50% or even 100%. Depending on the situation, on value or the other might seem more logical or balanced in terms of game mechanics.
But giving a general bounty that comes out of the blue, that increases based on total game time and independent of what happened so far? I do not think this makes a lot of sense.

But killing someone is not only about getting the gold, but also about getting rid of an enemy. :P

Agreed. Killing someone has benefits far beyond the gold reward.

I do not mind the Gold mechanic in normal crusader. But with the patch you can up the recruitment speed of all AI opponents to rat niveau (but less than standard Caliph, who had 0, Rat has 1).
With this setting, almost no AI opponent is actually saving money up. Except the Abbot of course.
So earning 500 money after 30+minutes is just bullcrap.


login: Prep for web-auth

Some prep commits toward #36, with:

Making a transitive dependency into a direct dependency
Improvements to our API-modeling code
An NFC refactor of the username-password page

Thanks for the review! Revision pushed (and it looks like I forgot to comment about that last week).

Thanks! Looks good; merging.


Endpoint changes

In order for tools to better describe multiple endpoints int the manifest, we must include port information. At runtime most of the port information is dynamically generated and thus not described (for anything but containers), that doesn't work well when trying to deploy to various environments. We allocate ports in situations where there are none to match the runtime behavior.
Change also renames ContainerPort to TargetPort everywhere.
Added WithExternalHttpEndpoints to mark all http and https endpoints as external.

The exposed port (port in the manifest) is the port used to talk to this binding.
The target port (targetPort in the manifest) is the port the resource binds to.
From Copilot:
These rules determine the values of the targetPort and exposedPort variables based on the properties of an endpoint object:

If the targetPort property is already specified, use its value as the targetPort.
If the endpoint belongs to a ProjectResource and the targetPort is not specified, set the targetPort to null. This is because ProjectResource objects get their default port from the deployment tool.
If none of the above conditions are met, allocate a dynamic port for the targetPort.

Next, the exposedPort is determined based on the following conditions:

If the exposedPort and targetPort are the same, set the exposedPort to null. This means that the exposed port does not need to be explicitly mentioned because it is the same as the target port.
If the port property is specified, use its value as the exposedPort.
If the targetPort is specified and the port is not, set the exposedPort to null. In this case, the exposedPort will default to the targetPort.
If the endpoint has a URI scheme of "http" or "https" and both the port and targetPort are null, set the exposedPort to null. This allows the tool to infer the default HTTP and HTTPS ports.
For other URI schemes, allocate a a dynamic port for the exposedPort.

Fixes https://github.com/dotnet/aspire/issues/2099

/backport to release/8.0-preview5


Pypi.io does not exists anymore.

It was a temporary url, still redirect for some GET but should not be used.

Thanks :-)


Fixed quantity input bug

Added isNumeric test function before calling getBondingCurvePrice to stop site crashing if non numeric quantity input added in Play View. Also minor refactoring.

This will work, but I think we should make the user entirely unable to input non-numeric values into the text field before it gets parsed, like the input just won't happen. You should be able to achieve it like this: <TextInput
style={styles.textInput}
keyboardType='numeric'
onChangeText={(text)=> this.onChanged(text)}
value={this.state.myNumber}
maxLength={10}  //setting limit of input
/>


HSEARCH-2842 Verify and document interaction of full-text queries with an ORM filter

https://hibernate.atlassian.net//browse/HSEARCH-2842

merged (some days ago!)


Exclude TestUTCParse for JDK11 Linux for Adoptium only

ref https://github.com/adoptium/infrastructure/issues/3658#issuecomment-2220728689
Excluding this test just for Adoptium, unless others think it should be excluded for all vendors.
Will cherry pick this into the release branch once merged

Oops ive added it to the wrong group of tests. GIve me a sec to find its correct group

Now its in the correct group


Error occured when eject the cra-ts example

I download the cra-ts example and run :

npm run eject
npm run storybook

And the
WARNING in ./src/components/Button/Button.stories.tsx 7:20
Module parse failed: Unexpected token (7:20)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
| export default { title: 'Button' };
|
> export const Default: FC = () => (
|   <Button>{process.env.REACT_APP_TEST_VAR}</Button>
| );
 @ ./src sync \.stories\.(mdx|tsx?)$ ./components/Button/Button.stories.tsx
 @ ./.storybook/config.ts
 @ multi<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>./.storybook/config.ts (webpack)-hot-middleware/client.js?reload=true&quiet=true

ERROR in ./src/components/Button/Button.stories.mdx
Module not found: Error: Can't resolve './Button' in '/Users/yongxuexie/Desktop/neko/src/components/Button'
 @ ./src/components/Button/Button.stories.mdx 9:0-30 28:15-21 40:27-33 43:21-27 47:8-14 54:50-56 56:19-25
 @ ./src sync \.stories\.(mdx|tsx?)$
 @ ./.storybook/config.ts
 @ multi<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>./.storybook/config.ts (webpack)-hot-middleware/client.js?reload=true&quiet=true

Please help to fix it.

Hello @Mu-xue!
I've encountered the same issue after ejecting my CRA app that used @storybook/preset-create-react-app, and based my thoughts on the following answer https://github.com/storybookjs/storybook/issues/6690 (typescript config advice from that issue didn't solve anything):

The CRA config doesn't support ejection right now, you'd need to write your own config in that case - as we no longer have a reliable source.

So, I'm entirely new to Storybook infrastructure, but my understanding of things is this: Storybook has its own webpack config, which is configurable through presets specifically @storybook/preset-create-react-app. After ejecting, as per above issue, this preset no longer valid so actual storybook launch degrades to its default webpack config, which is actually reported in console output:

Default webpack config is lacking support of typescript (your case, you've got a syntax error due to non-js :FC type declaration) and JSX (my case and from the issue above).
So, what you have to do now is restore JSX and typescript support with separate config by adressing Typescript Config and Storybook for React sections of documentantion.
I was able to restore my expected behaviour (jsx, typescript and ts props exctraction) from @storybook/preset-create-react-app with following manual configuration:
// .storybook/main.js
const path = require("path")

module.exports = {
    stories: ['../src/**/*.stories.(tsx|mdx)'],
    webpackFinal: async config => {
        config.module.rules.push({
          test: /\.(ts|tsx)$/,
          include: path.resolve(__dirname, "../src"),
          use: [
              // There is also a second option in documentation to use babel instead of ts-loader which should also work
              {
                loader: require.resolve('ts-loader'),
              },
              {
                  loader: require.resolve('react-docgen-typescript-loader'),
                  options: {
                    tsconfigPath: path.resolve(__dirname, "../tsconfig.json")
                  }
              }
          ],
        })
        config.resolve.extensions.push('.ts', '.tsx');
        return config
      },
    addons: [
        '@storybook/addon-docs'
    ]
}

and tsconfig.json:
{
  "compilerOptions": {
    "target": "es5",
    "lib": [
      "dom",
      "dom.iterable",
      "esnext"
    ],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": false,
    "jsx": "react"
  },
  "include": [
    "src"
  ]
}

This correspond to my original config which I had before ejecting my CRA:
// .storybook/main.js
module.exports = {
    stories: ['../src/**/*.stories.tsx'],
    addons: [
        {
            name: '@storybook/preset-create-react-app',
            options: {
                tsDocgenLoaderOptions: {},
            },
        },
        '@storybook/addon-docs'
    ]
}

I was able to make it work with these changes:

Hello @Mu-xue!
I've encountered the same issue after ejecting my CRA app that used @storybook/preset-create-react-app, and based my thoughts on the following answer storybookjs/storybook#6690 (typescript config advice from that issue didn't solve anything):

The CRA config doesn't support ejection right now, you'd need to write your own config in that case - as we no longer have a reliable source.

So, I'm entirely new to Storybook infrastructure, but my understanding of things is this: Storybook has its own webpack config, which is configurable through presets specifically @storybook/preset-create-react-app. After ejecting, as per above issue, this preset no longer valid so actual storybook launch degrades to its default webpack config, which is actually reported in console output:
Default webpack config is lacking support of typescript (your case, you've got a syntax error due to non-js :FC type declaration) and JSX (my case and from the issue above).
So, what you have to do now is restore JSX and typescript support with separate config by adressing Typescript Config and Storybook for React sections of documentantion.
I was able to restore my expected behaviour (jsx, typescript and ts props exctraction) from @storybook/preset-create-react-app with following manual configuration:
// .storybook/main.js
const path = require("path")

module.exports = {
    stories: ['../src/**/*.stories.(tsx|mdx)'],
    webpackFinal: async config => {
        config.module.rules.push({
          test: /\.(ts|tsx)$/,
          include: path.resolve(__dirname, "../src"),
          use: [
              // There is also a second option in documentation to use babel instead of ts-loader which should also work
              {
                loader: require.resolve('ts-loader'),
              },
              {
                  loader: require.resolve('react-docgen-typescript-loader'),
                  options: {
                    tsconfigPath: path.resolve(__dirname, "../tsconfig.json")
                  }
              }
          ],
        })
        config.resolve.extensions.push('.ts', '.tsx');
        return config
      },
    addons: [
        '@storybook/addon-docs'
    ]
}

and tsconfig.json:
{
  "compilerOptions": {
    "target": "es5",
    "lib": [
      "dom",
      "dom.iterable",
      "esnext"
    ],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": false,
    "jsx": "react"
  },
  "include": [
    "src"
  ]
}

This correspond to my original config which I had before ejecting my CRA:
// .storybook/main.js
module.exports = {
    stories: ['../src/**/*.stories.tsx'],
    addons: [
        {
            name: '@storybook/preset-create-react-app',
            options: {
                tsDocgenLoaderOptions: {},
            },
        },
        '@storybook/addon-docs'
    ]
}

I was able to restore expected behaviour as well, but with a bit different webpack 4 config for storybook:
const path = require('path')

module.exports = {
  stories: [
    '../src/**/*.stories.mdx',
    '../src/**/*.stories.@(js|jsx|ts|tsx)',
  ], webpackFinal: async config => {
    config.module.rules.push({
        test: /\.(ts|tsx)$/,
        include: path.resolve(__dirname, '../src'),
        use: [// There is also a second option in documentation to use babel instead of ts-loader which should also work
          {
            loader: require.resolve('babel-loader'), options: {
              customize: require.resolve('babel-preset-react-app/webpack-overrides'),
              presets: [
                [require.resolve('babel-preset-react-app'), { runtime: 'automatic' }],
                [require.resolve('@babel/preset-env'), { targets: 'defaults' }],
              ],
              plugins: [
                [require.resolve('babel-plugin-named-asset-import'),
                  { loaderMap: { svg: { ReactComponent: '@svgr/webpack?-svgo,+titleProp,+ref![path]' } } },
                ],
              ],
            },
          }],
      }, {
        test: /\.ts$/,
        loader: 'babel-loader',
        exclude: /node_modules/,
      }, // Process any JS outside of the app with Babel.
      // Unlike the application JS, we only compile the standard ES features.
      {
        test: /\.(js|mjs)$/,
        exclude: /@babel(?:\/|\\{1,2})runtime/,
        loader: require.resolve('babel-loader'),
        options: {
          babelrc: false,
          configFile: false,
          compact: false,
          presets: [
            [require.resolve('babel-preset-react-app/dependencies'), { helpers: true }],
          ],
          cacheDirectory: true, // See #6846 for context on why cacheCompression is disabled
          cacheCompression: false, // Babel sourcemaps are needed for debugging into node_modules
          // code.  Without the options below, debuggers like VSCode
          // show incorrect code and set breakpoints on the wrong lines.
          sourceMaps: true,
          inputSourceMap: true,
        },
      }, {
        test: /\.scss$/,
        use: ['style-loader', 'css-loader', {
          loader: 'postcss-loader',
          options: { plugins: () => [require('autoprefixer')()] },
        }, 'sass-loader'],
      })
    config.resolve.extensions.push('.ts', '.tsx')
    return config
  }, addons: [
    '@storybook/addon-links',
    '@storybook/addon-essentials',
  ],
}


Up the logging for package controller

Level 6 logging gets all the appropriate data and does not overwhelm.

/lgtm

/approve

I don't mind this at all, but it'd be preferable for us to be able to set a logging level via the e2e test and have it passed through to all these places... I know that's a pretty involved task, because it touches lots of things, but it would make situations like this a lot easier to deal with. :)


Registry: Make it use its dedicated FullNode and use the Ledger directly

The first commit is unrelated, but trivial enough that I lumped it here.
The last commit was my goal, however in the process of doing so I realized that the test suite was relying on calling a different node directly for validation! Besides being quite slow, it's also brittle (as nodes[0] is likely to be tested).
So the third commit fixes this, and the second commit was just an easy step in that direction.

Looks like there's some extra fix needed for Flash.

So this fails on restart, any idea why @omerfirmak ?

(ldc-1.27.0)omer@DESKTOP-H1S5IJD:~/bpf/agora$ git diff source/agora/test/Base.d
diff --git a/source/agora/test/Base.d b/source/agora/test/Base.d
index 77cf39238..7abc59e28 100644
--- a/source/agora/test/Base.d
+++ b/source/agora/test/Base.d
@@ -864,6 +864,7 @@ public class TestAPIManager
         assert(conf.interfaces.length == 1);
         assert(this.registry.register(conf.interfaces[0].address, api.listener()));
         this.dns = api;
+        this.nodes ~= NodePair(conf.interfaces[0].address, new RemoteAPI!TestAPI(api.listener()), time, api);
     }

     /***************************************************************************
@@ -2235,23 +2236,23 @@ public APIManager makeTestNetwork (APIManager : TestAPIManager = TestAPIManager)

     auto net = new APIManager(blocks, test_conf, validator_configs[0].consensus.genesis_timestamp, eArgs);

+    // Then all the nodes
+    foreach (ref conf; all_configs)
+        net.createNewNode(conf, file, line);
+
     // First, create the name registry
     Config registry_config = {
       banman : ban_conf,
       node : makeNodeConfig(),
       interfaces: [ makeInterfaceConfig("name.registry") ],
       consensus: makeConsensusConfig(),
-      network : null,
+      network : net.nodes.map!(pair => pair.address).array.dup,
       logging: test_conf.logging,
       event_handlers : test_conf.event_handlers,
       registry: { enabled: true, },
     };
     net.createNameRegistry(registry_config, file, line);

-    // Then all the nodes
-    foreach (ref conf; all_configs)
-        net.createNewNode(conf, file, line);
-
     return net;
 }

This works with https://github.com/Geod24/localrest/pull/129

Hum, the registry should be created first, shouldn't it ? Currently it requires a network config I guess, but this is a restriction that should be lifted.

Also I wanted to avoid having the DNS in the nodes array as we often iterate on it.

Also I wanted to avoid having the DNS in the nodes array as we often iterate on it.

Why? It is just a regular FullNode at this point. Validating that it follows the network as expected is important IMO.

Why?

Mostly because nodes[0] is special in that it's the most requested node.
Also, it's not just a regular full node - It knows all the address and is a PoF, which means we shouldn't restart or make it sleep.

But we're adding it as the last node, so it's fine 🤦

It seems to consistently fail ValidatorRecurrringEnrollment now, oh joy.

It seems to consistently fail ValidatorRecurrringEnrollment now, oh joy.

Probably because registry node never receives any Enrollments

Maybe nodes should always use registry address in discovery to discover them as fUllnodes

Probably because registry node never receives any Enrollments

To be precise, we were iterating on all the nodes (including registry), and getting their enrollment. Then submitting it to the network. The one returned by registry should have been Enrollment.init, which was rightfully rejected, leading to a timeout on the externalization.
Now, do FullNode have a requirement to have txs and enrollments propagated to them ? I don't believe so.
A validator MUST to ensure that it is well-connected (it has all the required validators for SCP to work).
Besides that, a Validator MAY choose to connect to more nodes, validators or full node, for gossipping. But there is no guarantee it will do so.

I believe this needs https://github.com/bosagora/agora/issues/2524 to move forward. Or longer timeouts.

I believe this needs #2524 to move forward. Or longer timeouts.

Maybe give this a try?
diff --git a/source/agora/consensus/Ledger.d b/source/agora/consensus/Ledger.d
index 671c25ab5..1287168bb 100644
--- a/source/agora/consensus/Ledger.d
+++ b/source/agora/consensus/Ledger.d
@@ -85,7 +85,7 @@ public class Ledger
     private Block last_block;

     /// UTXO set
-    private UTXOCache utxo_set;
+    public UTXOCache utxo_set;

     // Clock instance
     private Clock clock;
diff --git a/source/agora/node/Registry.d b/source/agora/node/Registry.d
index 6cd541beb..438cfd747 100644
--- a/source/agora/node/Registry.d
+++ b/source/agora/node/Registry.d
@@ -187,7 +187,7 @@ public class NameRegistry: NameRegistryAPI
     public override void postValidator (RegistryPayload registry_payload)
     {
         import std.algorithm;
-
+        import agora.consensus.data.UTXO;
         TYPE payload_type = this.ensureValidPayload(registry_payload, this.validators.map);

         // Last step is to check the state of the chain
@@ -197,8 +197,14 @@ public class NameRegistry: NameRegistryAPI
             this.validator_info = this.ledger.getValidators(last_height);
             this.validator_info_height = last_height;
         }
+        UTXO utxo;
         ensure(this.validator_info.map!(info => info.address)
-            .canFind(registry_payload.data.public_key), "Not an enrolled validator");
+            .canFind(registry_payload.data.public_key) ||
+            this.ledger.enrollment_manager.enroll_pool
+                .getEnrollments(last_height).canFind!(
+                    enroll => this.ledger.utxo_set.peekUTXO(enroll.utxo_key, utxo)
+                        && (utxo.output.address == registry_payload.data.public_key)
+                ), "Not an enrolled validator");

         // register data
         log.info("Registering addresses {}: {} for public key: {}", payload_type,

and this
diff --git a/source/agora/test/Base.d b/source/agora/test/Base.d
index 90bd55bbe..e5e76250f 100644
--- a/source/agora/test/Base.d
+++ b/source/agora/test/Base.d
@@ -2122,7 +2122,7 @@ public APIManager makeTestNetwork (APIManager : TestAPIManager = TestAPIManager)
         .map!(en => validatorAddress(en.index, en.value)).array;

     auto full_node_addresses = test_conf.full_nodes.iota.map!(
-        idx => fullNodeAddress(idx)).array;
+        idx => fullNodeAddress(idx)).array ~ ["name.registry"];

     // full nodes and enrolled validators will connect to other enrolled validators
     // and other full nodes (but not to outsider nodes)

Found the bug, this should work now


DecodeError: a critical field of type 105 is unrecognized, redundant or out-of-order

I run ndnpeek "/testrepo/insert check" >/dev/null and get the following error in ndn-python-repo:
[2020-02-18 18:59:42]INFO:on_check_interest(): /testrepo/insert%20check
[2020-02-18 18:59:42]ERROR:Task exception was never retrieved
future: <Task finished coro=<NDNApp._receive() done, defined at /home/davide/.local/lib/python3.7/site-packages/ndn/app.py:70> exception=DecodeError('a critical field of type 105 is unrecognized, redundant or out-of-order')>
Traceback (most recent call last):
  File "/home/davide/.local/lib/python3.7/site-packages/ndn/app.py", line 85, in _receive
    await self._on_interest(name, param, app_param, sig)
  File "/home/davide/.local/lib/python3.7/site-packages/ndn/app.py", line 404, in _on_interest
    node.callback(name, param, app_param)
  File "/home/davide/.local/lib/python3.7/site-packages/ndn_python_repo/handle/command_handle_base.py", line 28, in on_check_interest
    parameter = self.decode_cmd_param_bytes(int_name)
  File "/home/davide/.local/lib/python3.7/site-packages/ndn_python_repo/handle/command_handle_base.py", line 85, in decode_cmd_param_bytes
    return RepoCommandParameter.parse(param_bytes)
  File "/home/davide/.local/lib/python3.7/site-packages/ndn/encoding/tlv_model.py", line 769, in parse
    raise DecodeError(f'a critical field of type {typ} is unrecognized, redundant or out-of-order')
ndn.encoding.tlv_model.DecodeError: a critical field of type 105 is unrecognized, redundant or out-of-order

Fixed with 3b909244c34d105062243ed3e15fa70aff3f16f2.


Post guidelines for suggestions

Discord Username
Not specified.
Related Problem
No.
Enhancement Description
Post suggestion guidelines specific to the tag(s) applied to a post. After a post is created, ping the OP with the guidelines.
Additional Information
None.
Code of Conduct

[X] I agree to abide by the Code of Conduct.

Resolved in 41115b532857e74cfa43cb578021cb73a4eb260b.


Enabling Kubernetes crashes OrbStack

Describe the bug
I pressed 'Enable Kubernetes'
To Reproduce
Update to 1.7.0 and enable Kubernetes
Expected behavior
No response
Diagnostic report (REQUIRED)
OrbStack info:
Version: 1.7.0
Commit: c5439c5612cdb5febbbc69169a4f3b11cdada6c2 (v1.7.0)
System info:
macOS: 14.5 (23F79)
CPU: arm64, 10 cores
CPU model: Apple M1 Pro
Model: MacBookPro18,3
Memory: 32 GiB
Full report: https://orbstack.dev/_admin/diag/orbstack-diagreport_2024-09-02T08-02-53.786365Z.zip

Screenshots and additional context (optional)
No response

I am really annoyed by this. I pay for this product but every update it is giving me new problems. It prevents me from performing me day to day work normally.

Released in v1.7.1.


[FLINK-5303] [table] Support for SQL GROUPING SETS clause.

Support for operators GROUPING SETS / ROLLUP / CUBE was added in this PR.
Also added some tests for check execution of SQL queries with them.
PR will close next issue: https://issues.apache.org/jira/browse/FLINK-5303.

PR closed to rename the branch.


Enhancements to Contact Section for Improved User Experience

I would like to propose some enhancements to the contact section of the website to improve the user experience and make it more user-friendly. The current contact section is simple in design, but I believe it can be further optimized to provide a better user experience and increase user engagement.
Some of the proposed enhancements are as follows:
Use appropriate color schemes, typography, and spacing to create a visually consistent and pleasing contact section.
Add interactive elements, with hover effects, to provide visual feedback and enhance the user experience.
Ensure that the contact section is responsive and displays well on different screen sizes and devices, including mobile and tablet devices.
Clearly label the form fields and provide placeholders or inline validation to guide users in filling out the form correctly.
and so on...…

I am eager to contribute to the implementation of these enhancements and collaborate with the development team to ensure their successful integration. Your feedback and thoughts on this proposal are greatly appreciated.

Please assign me this issue, thank you.


ARROW-2302: [GLib] Unify GNU Autotools build and Meson build into one Travis CI job

The C/glib build here took 16 minutes while it took on the order of 3 minutes before: https://travis-ci.org/apache/arrow/builds/373029547
Is that expected?

Umm.
It may be a network problem.

travis_install_linux.sh:

Before: took 11.12s
After: took 355.60s

travis_before_script_cpp.sh --only-library:

Before: took 43.14s
After: took 189.50s

This change doesn't include changes of these scripts.

Ok, I'm restarting the build to be sure.


nginx_location.conf -> location /.well-known/acme-challenge/ always causing 404 for acme-challenge

I just playing with the example configuration, cloned this repo - https://github.com/fatk/docker-letsencrypt-nginx-proxy-companion-examples - and configured with a test url like 'dev.test.site.com'.
the acme challanges were always failed:
letsencrypt-nginx-proxy-companion    | 2016/12/19 12:03:59 Received signal: terminated
letsencrypt-nginx-proxy-companion    | 2016/12/19 12:03:59 Received signal: terminated
letsencrypt-nginx-proxy-companion    | 2016/12/19 12:04:02 Contents of /app/letsencrypt_service_data did not change. Skipping notification '/app/update_certs'
letsencrypt-nginx-proxy-companion    | 2016/12/19 12:04:02 Watching docker events
letsencrypt-nginx-proxy-companion    | Reloading nginx proxy (using separate container nginx-gen)...
letsencrypt-nginx-proxy-companion    | 2016/12/19 12:04:02 Contents of /app/letsencrypt_service_data did not change. Skipping notification '/app/update_certs'
letsencrypt-nginx-proxy-companion    | Creating/renewal dev.test.site.com certificates... (dev.test.site.com)
letsencrypt-nginx-proxy-companion    | 2016-12-19 12:04:03,319:INFO:simp_le:1211: Generating new account key
letsencrypt-nginx-proxy-companion    | 2016-12-19 12:04:04,820:INFO:requests.packages.urllib3.connectionpool:756: Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
letsencrypt-nginx-proxy-companion    | 2016-12-19 12:04:05,436:INFO:requests.packages.urllib3.connectionpool:756: Starting new HTTPS connection (1): letsencrypt.org
letsencrypt-nginx-proxy-companion    | 2016-12-19 12:04:06,446:INFO:requests.packages.urllib3.connectionpool:207: Starting new HTTP connection (1): dev.test.site.com
letsencrypt-nginx-proxy-companion    | 2016-12-19 12:04:06,472:WARNING:simp_le:1303: dev.test.site.com was not successfully self-verified. CA is likely to fail as well!
letsencrypt-nginx-proxy-companion    | 2016-12-19 12:04:06,698:INFO:simp_le:1313: Generating new certificate private key
letsencrypt-nginx-proxy-companion    | 2016-12-19 12:04:09,685:ERROR:simp_le:1271: CA marked some of the authorizations as invalid, which likely means it could not access http://example.com/.well-known/acme-challenge/X. Did you set correct path in -d example.com:path or --default_root? Is there a warning log entry about unsuccessful self-verification? Are all your domains accessible from the internet? Failing authorizations: https://acme-v01.api.letsencrypt.org/acme/authz/k8nebPmh3hSORfdNao9RJNf7lO5m-YY4G2I5N3eXh_k
letsencrypt-nginx-proxy-companion    | Challenge validation has failed, see error log.
letsencrypt-nginx-proxy-companion    |
letsencrypt-nginx-proxy-companion    | Debugging tips: -v improves output verbosity. Help is available under --help.
letsencrypt-nginx-proxy-companion    | Sleep for 3600s

The problem was, nginx says HTTP 404
nginx                            | dev.test.site.com <IP_ADDRESS> - - [19/Dec/2016:12:04:06 +0000] "GET /.well-known/acme-challenge/ML2dYN0tmKtoxKNIR9SMqiPHAScQEwtglUJZk1KW2ab HTTP/1.0" 404 169 "-" "python-requests/2.8.1"
nginx                            | dev.test.site.com <IP_ADDRESS> - - [19/Dec/2016:12:04:06 +0000] "GET /.well-known/acme-challenge/ML2dYN0tmKtoxKNIR9SMqiPHAScQEwtglUJZk1KW2ab HTTP/1.0" 404 169 "-" "Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)"

despite the challange file is exists:
/usr/share/nginx/html/.well-known/acme-challenge/ML2dYN0tmKtoxKNIR9SMqiPHAScQEwtglUJZk1KW2ab

I found, the problem is with the vhost.d/default.conf file:
location /.well-known/acme-challenge/ {
	    allow all;
	    root /usr/share/nginx/html;
	    try_files $uri =404;
	    break;
	}

after I change the location config for this:
location ~ /\.well-known/acme-challenge/ {
	    allow all;
	    root /usr/share/nginx/html;
	    try_files $uri =404;
	    break;
	}

Now the nginx able find the challenge files in /usr/share/nginx/html/.well-known/acme-challenge/ folder and the cert generating and verifying is going well

This doesn't fix the problem for me. I edited the nginx_location.conf in the container and I get the same error for all of my containers.

Can you try this https://hub.docker.com/r/riid/docker-gen-multi ?

@Rid Would not it be better if you tried to collaborate with the original project rather than create a "clone"?

@thiagotalma I don't think the dev is currently active, I'm happy to make a PR if he's around, but judging by the lack of response he may be busy

I use the @Rid fork and a fork i made to correct this project in the alastaircoote/docker-letsencrypt-nginx-proxy-companion fork.
My pull request include the @Rid work and permits to reduce the docker image size :
https://github.com/alastaircoote/docker-letsencrypt-nginx-proxy-companion/pull/2
I'd welcome advices.

@Rid can you make a PR for this project ?

Hello
I made a PR here : https://github.com/alastaircoote/docker-letsencrypt-nginx-proxy-companion/pull/2 and it includes the @Rid work.
How to make the same PR here?


Console displays error when validating

Hi,
My form is validating quite fine, but I noticed that errors keep popping up in the console and terminal whenever a field is invalid.  Error below:
update failed: Error: [field_name] is required
    at getErrorObject...

The form is working perfectly fine by showing the appropriate messages, but I also get these errors printed out in the console and terminal.  Is this normal or does this mean there is something wrong with my implementation?
Thanks!

Those are errors coming from the update call that AutoForm does for you for a type="update" form. So that's normal.


suggest changes to content/structure

Hi Lars, this repo is there to share Timo's hardware design. I started putting together its conent. If you have any suggestions, please suggest or commit them into a branch.
Together with Nic, we figured out it does not make too much sense in using the Open Hardware license as it is quite specific to electronic harware design. I would just go with our standard CC-BY-4.0.

Thank you, @jaktk. This is exciting. Thank you for doing the research on licensing, good to know that CCBY works.
On content and structure:

Keep the landing README.md short and to the point, if you write up a more comprehensive handbook, do that separately and link it
Have a look if you can find other examples of best practices for setting up open source repositories for hardware. Have you seen this? https://github.com/aolofsson/awesome-opensource-hardware  (more details: https://www.perplexity.ai/search/What-are-best-eYt395oZQu.ZcB15YuS_Jw#1)

On archiving and citation.

Use the Zenodo GitHub integration for archiving on Zenodo and DOI generation. I would say that's the most important part.
Then add the DOI to your CITATION.cff
Once you are done, import the entry using the DOI to the ETH Research Collection

Addition to our GHE website:

we will need a new category "Designs" under "Publications" https://ghe.ethz.ch/publications.html

Thanks @larnsce, I've seen those repos, at least part of them. My problem with them is that they are very electronics-focused (where actually OHRW license would be a good option).
There is an open sprinkler project: https://github.com/OpenSprinkler where they cover both software and hardware (limited to cad drawings). However, the hardware part of this repo is much less developed compared to the software version and I somehow understand it - these are just the cad files.
To sumarize, I haven't found something very very relevant which would change my view on it. One example which I like (from NASA) is here: https://github.com/nasa-jpl/open-source-rover . But again, that's a repo where hardware development (i.e., frame, wheels) is important of less importance compared to electronics.
Regarding the README structure, do you have an example? I was used to writing everything in the main readme actually, sort of like with one of your repos: https://github.com/Global-Health-Engineering/durbanplasticwaste
Regarding citations, that's pretty clear. The only point which we should discuss is whether this should be imported as a seprarate entry to the ETH research collection or rather a supplementary information to the manuscript, just like in case of Dominic Waltti's work: https://www.research-collection.ethz.ch/handle/20.500.11850/646138

The only point which we should discuss is whether this should be imported as a seprarate entry to the ETH research collection or rather a supplementary information to the manuscript

As a separate entry. Then, still add it as supplementary information anyways. It will increase it's discoverability a lot by being a separate entry. I would also suggest to do that for students going forward.

Thanks, Lars.