ReferenceError: GoogleMaps is not defined

Hi there,
I've just tried installing your package, am excited to take it for a spin.
I performed the default install into my app via:
meteor add dburles:google-maps
I checked it's installed by using:
meteor list
and the following was retrieved:

autopublish           1.0.4  (For prototyping only) Publish the entire database to all clients
blaze-html-templates  1.0.1  Compile HTML templates into reactive UI with Meteor Blaze
dburles:google-maps   1.1.5  Google Maps Javascript API v3
ecmascript            0.1.6  Compiler plugin that supports ES2015+ in all .js files
es5-shim              4.1.14  Shims and polyfills to improve ECMAScript 5 support
insecure              1.0.4  (For prototyping only) Allow all database writes from the client
jquery                1.11.4  Manipulate the DOM using CSS selectors
meteor-base           1.0.1  Packages that every Meteor app needs
mobile-experience     1.0.1  Packages for a great mobile user experience
mongo                 1.1.3  Adaptor for using MongoDB and Minimongo over DDP
session               1.1.1  Session variable
standard-minifiers    1.0.2  Standard minifiers used with Meteor apps by default.
tracker               1.0.9  Dependency tracker to allow reactive callbacks

I have the following in my JS code only:
if (Meteor.isClient) {
  Template.map.helpers({
      //helpers go here
     });

  Template.map.events({
   //events go here
  });
}

if (Meteor.isServer) {
  Meteor.startup(function () {
    // code to run on server at startup
    GoogleMaps.load();
  });
}

When I try and run the code though, this is what happens:
[[[[[ ~/Sites/meteor/gmaps01 ]]]]]

=> Started proxy.
=> Started MongoDB.
W20151031-09:28:09.219(10)? (STDERR)
W20151031-09:28:09.220(10)? (STDERR) /Users/username/.meteor/packages/meteor-tool/.<IP_ADDRESS>b51q9m++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:245
W20151031-09:28:09.220(10)? (STDERR) 						throw(ex);
W20151031-09:28:09.221(10)? (STDERR) 						      ^
W20151031-09:28:09.221(10)? (STDERR) ReferenceError: GoogleMaps is not defined
W20151031-09:28:09.221(10)? (STDERR)     at gmaps01.js:21:5
W20151031-09:28:09.221(10)? (STDERR)     at /Users/username/Sites/meteor/gmaps01/.meteor/local/build/programs/server/boot.js:249:5
=> Exited with code: 8
W20151031-09:28:13.139(10)? (STDERR)
W20151031-09:28:13.140(10)? (STDERR) /Users/username/.meteor/packages/meteor-tool/.<IP_ADDRESS>b51q9m++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:245
W20151031-09:28:13.140(10)? (STDERR) 						throw(ex);
W20151031-09:28:13.140(10)? (STDERR) 						      ^
W20151031-09:28:13.147(10)? (STDERR) ReferenceError: GoogleMaps is not defined
W20151031-09:28:13.147(10)? (STDERR)     at gmaps01.js:21:5
W20151031-09:28:13.147(10)? (STDERR)     at /Users/username/Sites/meteor/gmaps01/.meteor/local/build/programs/server/boot.js:249:5
=> Exited with code: 8
W20151031-09:28:16.961(10)? (STDERR)
W20151031-09:28:16.962(10)? (STDERR) /Users/username/.meteor/packages/meteor-tool/.<IP_ADDRESS>b51q9m++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future.js:245
W20151031-09:28:16.962(10)? (STDERR) 						throw(ex);
W20151031-09:28:16.962(10)? (STDERR) 						      ^
W20151031-09:28:16.967(10)? (STDERR) ReferenceError: GoogleMaps is not defined
W20151031-09:28:16.968(10)? (STDERR)     at gmaps01.js:21:5
W20151031-09:28:16.968(10)? (STDERR)     at /Users/username/Sites/meteor/gmaps01/.meteor/local/build/programs/server/boot.js:249:5
=> Exited with code: 8
=> Your application is crashing. Waiting for file change.

So the error at line 21:5 is:
GoogleMaps.load();
Can you see anything I'm doing incorrectly?  I'd love to make a start with the maps tools but am stuck at the start.
Many thanks.
Rob

Hey the problem there is that GoogleMaps is client side only

On 31 Oct 2015, at 11:11 AM, therealrobster<EMAIL_ADDRESS>wrote:
Hi there,
I've just tried installing your package, am excited to take it for a spin.
I performed the default install into my app via:
meteor add dburles:google-maps
I checked it's installed by using:
meteor list
and the following was retrieved:
autopublish 1.0.4 (For prototyping only) Publish the entire database to all clients
blaze-html-templates 1.0.1 Compile HTML templates into reactive UI with Meteor Blaze
dburles:google-maps 1.1.5 Google Maps Javascript API v3
ecmascript 0.1.6 Compiler plugin that supports ES2015+ in all .js files
es5-shim 4.1.14 Shims and polyfills to improve ECMAScript 5 support
insecure 1.0.4 (For prototyping only) Allow all database writes from the client
jquery 1.11.4 Manipulate the DOM using CSS selectors
meteor-base 1.0.1 Packages that every Meteor app needs
mobile-experience 1.0.1 Packages for a great mobile user experience
mongo 1.1.3 Adaptor for using MongoDB and Minimongo over DDP
session 1.1.1 Session variable
standard-minifiers 1.0.2 Standard minifiers used with Meteor apps by default.
tracker 1.0.9 Dependency tracker to allow reactive callbacks
I have the following in my JS code only:
if (Meteor.isClient) {
Template.map.helpers({
//helpers go here
});
Template.map.events({
//events go here
});
}
if (Meteor.isServer) {
Meteor.startup(function () {
// code to run on server at startup
GoogleMaps.load();
});
}
When I try and run the code though, this is what happens:
[[[[[ ~/Sites/meteor/gmaps01 ]]]]]
=> Started proxy.
=> Started MongoDB.
W20151031-09:28:09.219(10)? (STDERR)
W20151031-09:28:09.220(10)? (STDERR) /Users/username/.meteor/packages/meteor-tool/.<IP_ADDRESS>b51q9m++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future
.js:245
W20151031-09:28:09.220(10)? (STDERR)                        throw(ex);
W20151031-09:28:09.221(10)? (STDERR)                              ^
W20151031-09:28:09.221(10)? (STDERR) ReferenceError: GoogleMaps is not defined
W20151031-09:28:09.221(10)? (STDERR)     at gmaps01.js:21:5
W20151031-09:28:09.221(10)? (STDERR)     at /Users/username/Sites/meteor/gmaps01/.meteor/local/build/programs/server/boot.js:249:5
=> Exited with code: 8
W20151031-09:28:13.139(10)? (STDERR)
W20151031-09:28:13.140(10)? (STDERR) /Users/username/.meteor/packages/meteor-tool/.<IP_ADDRESS>b51q9m++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future
.js:245
W20151031-09:28:13.140(10)? (STDERR)                        throw(ex);
W20151031-09:28:13.140(10)? (STDERR)                              ^
W20151031-09:28:13.147(10)? (STDERR) ReferenceError: GoogleMaps is not defined
W20151031-09:28:13.147(10)? (STDERR)     at gmaps01.js:21:5
W20151031-09:28:13.147(10)? (STDERR)     at /Users/username/Sites/meteor/gmaps01/.meteor/local/build/programs/server/boot.js:249:5
=> Exited with code: 8
W20151031-09:28:16.961(10)? (STDERR)
W20151031-09:28:16.962(10)? (STDERR) /Users/username/.meteor/packages/meteor-tool/.<IP_ADDRESS>b51q9m++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/fibers/future
.js:245
W20151031-09:28:16.962(10)? (STDERR)                        throw(ex);
W20151031-09:28:16.962(10)? (STDERR)                              ^
W20151031-09:28:16.967(10)? (STDERR) ReferenceError: GoogleMaps is not defined
W20151031-09:28:16.968(10)? (STDERR)     at gmaps01.js:21:5
W20151031-09:28:16.968(10)? (STDERR)     at /Users/username/Sites/meteor/gmaps01/.meteor/local/build/programs/server/boot.js:249:5
=> Exited with code: 8
=> Your application is crashing. Waiting for file change.
So the error at line 21:5 is:
GoogleMaps.load();
Can you see anything I'm doing incorrectly? I'd love to make a start with the maps tools but am stuck at the start.
Many thanks.
Rob
—
Reply to this email directly or view it on GitHub.

Well that's a bit embarrassing but thank you for replying (and so quickly).
I'm very new to Meteor and javascript in general so I appreciate your help.
Thanks so much, that worked perfectly.  Hopefully this will help another beginner in the future.
Thanks again.  Rob

No problem


SqlException within concurrent call to ExecuteReader returns bad connections to the pool

Under certain conditions, it's possible for a call to ExecuteReader to return results and/or errors from another instance of SqlCommand.  For context, we're seeing this bug when calling Dapper's Query method.  The following conditions must be met for this bug to occur:

A connection is being used in a thread-unsafe way
The two threads using the connection must be calling ExecuteReader, and at least one of the commands must throw a SqlException
A third, unrelated thread, using its own isolated SqlConnection, should run its own query at roughly the same time

Under these conditions, the third thread mentioned above may receive the error or result set from one of the first two threads' queries.
The bug occurs much more often if ExecuteReader(CommandBehavior.CloseConnection) is used.
The bug does not occur if:

Neither of the two threads throws an error
ExecuteReaderAsync is used instead

To reproduce
See attached zip solution/project
ConnectionPoolPoisoning.zip
Expected behavior
Errors coming from thread-unsafe usage of SqlConnection shouldn't cause errors in other, well-behaving parts of the application.
Further technical details
Microsoft.Data.SqlClient version: 5.0.1
.NET target: .NET 6.0
SQL Server version: SQL Server Express, Azure SQL Managed Instance as well
Operating system: Windows 10
I was also able to reproduce this with System.Data.SqlClient.

Thanks @burns47 for bringing this issue to our attention and providing a repro sample.  We're currently in the middle of a release.  We'll get back to you soon.

@burns47 I have not looked into the details of this issue, but in general Connections are not thread safe. We have had several issues  such as #1758.

I agree that we shouldn't expect to be able to use a connection from multiple threads - however I was hoping that the resulting undefined behavior would be isolated to the connection that you were using in an unsafe way.  That doesn't seem to be the case.  If you're using a SqlConnection in a thread-unsafe manner, errors can appear in any part of the application using SqlConnections, even if they're using their own connection safely.  I was hoping there would be a way to limit the blast radius of such a bug!

There is. Don't ever use connections in an unsafe and unsupported way and you won't have a problem.

FWIW I do agree that it's important for buggy user code to not cause completely undefined/unpredictable behavior, as much as possible; such behavior makes the bug that much harder to track down. Developers do occasionally introduce bugs in code, and it's important for components to take that into account and be as friendly/safe as possible.

Hi @burns47 , this seems like a bug, we'll investigate.

👀 (sneaking in..)
I have been looking into it, tried capturing traces and it seems to be related to the 'stateObj' re-assignment (you can run the repro in debug and notice a debug assert failing..), which seems to be causing exceptions/results left unread and flow into the pool from where next connection picks up.
I agree, this should be fixed to avoid any surprises for unintentional designs.

Thanks @cheenamalhotra for your investigation. We'll look into a fix after the release.


Update service worker logic, add MWC components

This makes the service worker more reliable, and works even with devtools (and its reload service worker option) is open. I think there's on remaining case where a page was open for a long time where the service worker can be unregistered and the connection to the page lost. Still working on that one.
This also adds some MWC components. It was a little hard to separate the changes. I did remove the CodeMirror component, and TypeScript worker to save for the next PRs.

I think I figured out the last bit of flakiness. With devtools closed, or the "update service workers on reload" option off, there was a case where the preview iframe would request a URL before the FileAPI had been sent from the component to the service worker, resulting in a 404. I solved this by making _files and _serviceWorkerAPI reactive properties, and only generating the src property for the preview when those two are defined. This way we have a FileAPI and files to serve when the preview boots up.
@e111077 PTAL


index.js:1205 Uncaught Error: SecurityError: An insecure SockJS connection may not be initiated from a page loaded over HTTPS

I get the error. please tell me how to fix it?

+1

https://webpack.js.org/configuration/dev-server/#devserverhttps

+1

Maybe:

yeah, it is a blocking error

Hmm, I haven't been able to reproduce. Would you try adding https: false to the webserver config?

content script error, when open a third-part page:

Anyone help?

This is definitely an issue with the WebPack or Web Dev Server and I am not proficient enough at either to know how to fix it.

However I cloned @octohedron's updated fork with a completely custom web server. I was able to install, unpack, and try it out and it had no web socket errors and the content scripts loaded without issues and I could see the console logs it does from the template.

Yes this is an issue with content script not loading on any page due to this error

Content script not working due to this... it kind of makes the whole boilerplate unusable.  any help?

@hadnet @uri3000 Use this fork instead, it has a better and working dev server.

In webserver.js, change https property to true **. This will get things working, even though you will still see errors on the console. Probably need to configure a local cert to completely silence this, but at least the content script will be loading/running.
** Better yet, replace https: true with server: 'https', as the https property is deprecated.

Was anyone able to configure the local cert to silence the error?


refactor: moving hash functions to relevant classes

Fixes #4411

Current dependencies on/for this PR:

master

PR #4551   👈

This stack of pull requests is managed by Graphite.

Benchmark results
Metrics with a significant change:

note_trial_decrypting_time_in_ms (8): 38.7 (+90%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Values are compared against data from master at commit db803bd5 and shown if the difference exceeds 1%.
L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
8 txs
32 txs
128 txs

l1_rollup_calldata_size_in_bytes
45,700
180,580
720,100

l1_rollup_calldata_gas
222,832
871,228
3,464,692

l1_rollup_execution_gas
316,023
989,676
3,685,070

l2_block_processing_time_in_ms
1,167 (+1%)
4,697 (+8%)
17,320 (-1%)

note_successful_decrypting_time_in_ms
328 (+5%)
1,054 (+8%)
3,750 (-2%)

note_trial_decrypting_time_in_ms
:warning: 38.7 (+90%)
47.3 (-55%)
149 (-4%)

l2_block_building_time_in_ms
18,439
72,726
292,352

l2_block_rollup_simulation_time_in_ms
13,523
53,392
214,788

l2_block_public_tx_process_time_in_ms
4,887 (+1%)
19,255
77,287 (+1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 16 txs.

Metric
5 blocks
10 blocks

node_history_sync_time_in_ms
15,533 (+6%)
28,097 (+1%)

note_history_successful_decrypting_time_in_ms
2,442 (+4%)
4,754 (+3%)

note_history_trial_decrypting_time_in_ms
85.5 (-11%)
188 (-12%)

node_database_size_in_bytes
17,338,448
33,075,280

pxe_database_size_in_bytes
29,923
59,478

Circuits stats
Stats on running time and I/O sizes collected for every circuit run across all benchmarks.

Circuit
circuit_simulation_time_in_ms
circuit_input_size_in_bytes
circuit_output_size_in_bytes

private-kernel-init
307
44,528
25,825

private-kernel-ordering
197
44,145
16,193

base-rollup
1,458
130,286
933

root-rollup
83.1 (+1%)
4,192
729

private-kernel-inner
438
71,331
25,825

public-kernel-private-input
251 (+1%)
34,687
27,457

public-kernel-non-first-iteration
249
34,729
27,457

merge-rollup
7.85
2,712
933

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
0 deployed contracts
1 deployed contracts

tx_size_in_bytes
16,827
40,014

Transaction processing duration by data writes.

Metric
0 new commitments
1 new commitments

tx_pxe_processing_time_ms
558 (+1%)
1,314

Metric
0 public data writes
1 public data writes

tx_sequencer_processing_time_ms
0.554 (+15%)
600 (+1%)


Header value 0 gets discarded in Zend\Mail

This issue has been moved from the zendframework repository as part of the bug migration program as outlined here - http://framework.zend.com/blog/2016-04-11-issue-closures.html

Original Issue: https://api.github.com/repos/zendframework/zendframework/issues/7594
User: @dendemann
Created On: 2015-06-23T18:19:29Z
Updated At: 2015-10-25T07:16:51Z
Body
A generic mail header containing the value 0 will lose that value during header parsing.
Example:
$message =
    "From<EMAIL_ADDRESS>    ."To<EMAIL_ADDRESS>    ."Subject: plain text email example\r\n"
    ."X-Spam-Score: 0\r\n"
    ."X-Some-Value: 1\r\n"
    ."\r\n"
    ."I am a test message\r\n";

$msg = Zend\Mail\Message::fromString($message);
echo $msg->toString();

Result:
From<EMAIL_ADDRESS>To<EMAIL_ADDRESS>Subject: plain text email example
X-Spam-Score:
X-Some-Value: 1

I am a test message

I debugged my way through and found the problem within the constructor of GenericHeader:
    public function __construct($fieldName = null, $fieldValue = null)
    {
        if ($fieldName) {
            $this->setFieldName($fieldName);
        }
        if ($fieldValue) {
            $this->setFieldValue($fieldValue);
        }
    }

If $fieldValue contains 0 the value won't get set. Is this wanted behavior?

Comment
User: @dendemann
Created On: 2015-06-24T08:05:48Z
Updated At: 2015-06-24T08:05:48Z
Body
I added a fix that works for me: https://github.com/rapidsoft-de/zend-mail/commit/301d7b3cd844d7f6902b68cdad4d63a75471bdaa
Review and comments appreciated.

Comment
User: @Martin-P
Created On: 2015-07-04T15:02:51Z
Updated At: 2015-07-04T15:02:51Z
Body
The components are split up in their own repositories. For Zend\Mail: https://github.com/zendframework/zend-mail/issues
You can open an issue and create a pull request there (instead of a link to your fix) and it will be reviewed there.

@dendemann I cherry-picked your commit and add unit tests for it and create a PR for it at #105


Can I maintain the application image cache separately

Can I maintain the application image cache separately？
Delete, add images

If you want to add a image to CloudImage, recommend way is using build, like lite build.
Delete I think we don't have a solution now, do you have any idea about the design?

@clcc2019 ，we can use sealer build -t app:v1 --base=false to build a cloud image without rootfs layer.


Global Role Bindings orphaned after cluster is removed

With the addition and removal of clusters, over time the list call on grb resources ends up taking ~10 seconds when there are around 1200 records.
Looking at the grb user, it can be seen that:
displayName: System account for Cluster c-vwtbx
Looking at the cluster:
kubectl get cluster -o yaml c-vwtbx Error from server (NotFound): clusters.management.cattle.io "c-vwtbx" not found
It appears as though we aren't cleaning up the role bindings or users when the clusters are removed.

The system account that gets created from clusterdeploy.go, results in creation of globalrolebindings. But on cluster removal, there's no deletion being called for this system account. That could be causing the previous grbs to still exist even after cluster is removed.

Same with projects, system accounts created for them aren't removed, hence globalRoleBindings are also not being removed

Can be tested with v0.2.3-rc1

Reproduced this issue on rancher:v2.2.2
Steps Taken:

On Rancher v2.2.2, deploy a cluster.
Verify the role bindings, users created - kubectl get clusterrolebinding, kubectl get users and kubectl get globalrolebindings
Create a project and namespace
Verify the role bindings, users created - kubectl get clusterrolebinding, kubectl get users and kubectl get globalrolebindings
Delete the project and namespace - You will see that the global role bindings created, will not be deleted.
Delete the cluster. You will see that the global bindings created for the cluster, will not be deleted.

Verified on rancher:v2.2.3-rc3
Steps Taken:

On Rancher v2.2.3-rc3, deploy a cluster.
Verify the role bindings, users created - kubectl get clusterrolebinding, kubectl get users and kubectl get globalrolebindings
Delete the cluster  and verify the role bindings.
The user role bindings are not deleted for the projects in the cluster.

Is there anyone working on this? Is it going to be part of v2.3 or it may get delayed again?
We are deeply impacted by this in our environment.

@alexandrem what version of rancher are you on and in what way is it impacting you?
We are currently fixing a bug in this area, but I just want to make sure it will address your problem

@cjellick We are on v2.2.3.
It's extremely long to load the main page in Rancher UI after login because of this.
We see the ajax call to the globalrolebindings api taking usually more than 20 seconds.

@alexandrem Can you check if you have any globalRoleBindings with DeletionTimestamp set?
You can use this command to check:
kubectl get globalrolebinding -o json | jq -r '.items[] | select(.metadata.deletionTimestamp != null)'

Hello @mrajashree.  I work with @alexandrem. We observe a lot of orphaned project and cluster system users from deleted projects/clusters, each of those users also have a grb, clusterrole and clusterrolebinding. We have not yet seen for orphaned local user rolebindings.
Deleting a single user record will result in purging of the said resources. However it looks like deletion of the grb triggers an update on all other grbs which creates a storm of requests to the api server slowing everything down (We have around 3400 GRBs in total). If we continue  deleting the users back to back the apiservers will eventually get overwhelmed and crash. We have resorted to throttle our deletions to 1 user per 30 seconds to keep the apiserver load and rancher api response times at an acceptable levels.


Common cathode as option

Adds a common cathode flag

@I-hate-2FA Hi. I've updated it to have code enum. I don't have device around to test. Could you please test if it works?

didnt work, or i didnt know how to use it correctly
Compiling .pioenvs/esphome-trash-can/src/main.cpp.o
/config/esphome-trash-can.yaml: In function 'void setup()':
/config/esphome-trash-can.yaml:500:62: error: 'CommonAnode' is not a member of 'esphome::lcd_digits::LcdDigitsComponent'
*** [.pioenvs/esphome-trash-can/src/main.cpp.o] Error 1
========================= [FAILED] Took 65.51 seconds =========================

display:
- platform: 7segment_gpio
  id: sevenseg
  segment_pins: [4, 16, 17, 5, 18, 23, 19]
  display_type: COMMONANODE
  update_interval: 100ms
  lambda: |-
    if(id(keepon).state){
      if((millis()%2000) < 500){
        it.printf(0,"O");
      }else if((millis()%2000) < 1000){
        it.printf(0,"P");
      }else if((millis()%2000) < 1500){
        it.printf(0,"E");
      }else{
        it.printf(0,"n");
      }
    }else if(id(ledr).state){
      it.printf(0,"%d",id(timer));
    }else{
      it.printf(0,"H");
    }

@I-hate-2FA I know what is it. Try now.

Found another bug. Give me a sec

@I-hate-2FA now should be fine

its even worse now
Compiling .pioenvs/esphome-trash-can/src/main.cpp.o
/config/esphome-trash-can.yaml: In function 'void setup()':
/config/esphome-trash-can.yaml:500:62: error: 'CommonAnode' is not a member of 'esphome::lcd_digits::LcdDigitsComponent'
/config/esphome-trash-can.yaml:97:28: error: 'lcd_digits' is not a type
             - lambda: "return !(id(motor_moving).state);"
                            ^~~~~~~~~~
/config/esphome-trash-can.yaml: In lambda function:
/config/esphome-trash-can.yaml:159:14: error: request for member 'printf' in 'it', which is of non-class type 'int'
         it.printf(0,"O");
              ^~~~~~
/config/esphome-trash-can.yaml:161:14: error: request for member 'printf' in 'it', which is of non-class type 'int'
         it.printf(0,"P");
              ^~~~~~
/config/esphome-trash-can.yaml:163:14: error: request for member 'printf' in 'it', which is of non-class type 'int'
         it.printf(0,"E");
              ^~~~~~
/config/esphome-trash-can.yaml:165:14: error: request for member 'printf' in 'it', which is of non-class type 'int'
         it.printf(0,"n");
              ^~~~~~
/config/esphome-trash-can.yaml:168:12: error: request for member 'printf' in 'it', which is of non-class type 'int'
       it.printf(0,"%d",id(timer));
            ^~~~~~
/config/esphome-trash-can.yaml:170:12: error: request for member 'printf' in 'it', which is of non-class type 'int'
       it.printf(0,"H");
            ^~~~~~
/config/esphome-trash-can.yaml: In function 'void setup()':
/config/esphome-trash-can.yaml:172:4: error: no matching function for call to 'esphome::lcd_digits::LcdDigitsComponent::set_writer(setup()::<lambda(int&)>)'

    ^
In file included from src/esphome.h:3,
                 from src/main.cpp:3:
src/esphome/components/7segment_gpio/7segment_gpio.h:86:8: note: candidate: 'void esphome::lcd_digits::LcdDigitsComponent::set_writer(esphome::lcd_digits::lcd_digits_writer_t&&)'
   void set_writer(lcd_digits_writer_t &&writer);
        ^~~~~~~~~~
src/esphome/components/7segment_gpio/7segment_gpio.h:86:8: note:   no known conversion for argument 1 from 'setup()::<lambda(int&)>' to 'esphome::lcd_digits::lcd_digits_writer_t&&' {aka 'std::function<void(esphome::lcd_digits::LcdDigitsComponent&)>&&'}
*** [.pioenvs/esphome-trash-can/src/main.cpp.o] Error 1
========================= [FAILED] Took 65.07 seconds =========================

@I-hate-2FA my bad. Please try again

still doesnt work
Compiling .pioenvs/esphome-trash-can/src/main.cpp.o
/config/esphome-trash-can.yaml: In function 'void setup()':
/config/esphome-trash-can.yaml:97:28: error: 'lcd_digits' is not a type
             - lambda: "return !(id(motor_moving).state);"
                            ^~~~~~~~~~
/config/esphome-trash-can.yaml: In lambda function:
/config/esphome-trash-can.yaml:159:14: error: request for member 'printf' in 'it', which is of non-class type 'int'
         it.printf(0,"O");
              ^~~~~~
/config/esphome-trash-can.yaml:161:14: error: request for member 'printf' in 'it', which is of non-class type 'int'
         it.printf(0,"P");
              ^~~~~~
/config/esphome-trash-can.yaml:163:14: error: request for member 'printf' in 'it', which is of non-class type 'int'
         it.printf(0,"E");
              ^~~~~~
/config/esphome-trash-can.yaml:165:14: error: request for member 'printf' in 'it', which is of non-class type 'int'
         it.printf(0,"n");
              ^~~~~~
/config/esphome-trash-can.yaml:168:12: error: request for member 'printf' in 'it', which is of non-class type 'int'
       it.printf(0,"%d",id(timer));
            ^~~~~~
/config/esphome-trash-can.yaml:170:12: error: request for member 'printf' in 'it', which is of non-class type 'int'
       it.printf(0,"H");
            ^~~~~~
/config/esphome-trash-can.yaml: In function 'void setup()':
/config/esphome-trash-can.yaml:172:4: error: no matching function for call to 'esphome::lcd_digits::LcdDigitsComponent::set_writer(setup()::<lambda(int&)>)'

    ^
In file included from src/esphome.h:3,
                 from src/main.cpp:3:
src/esphome/components/7segment_gpio/7segment_gpio.h:86:8: note: candidate: 'void esphome::lcd_digits::LcdDigitsComponent::set_writer(esphome::lcd_digits::lcd_digits_writer_t&&)'
   void set_writer(lcd_digits_writer_t &&writer);
        ^~~~~~~~~~
src/esphome/components/7segment_gpio/7segment_gpio.h:86:8: note:   no known conversion for argument 1 from 'setup()::<lambda(int&)>' to 'esphome::lcd_digits::lcd_digits_writer_t&&' {aka 'std::function<void(esphome::lcd_digits::LcdDigitsComponent&)>&&'}
*** [.pioenvs/esphome-trash-can/src/main.cpp.o] Error 1
========================= [FAILED] Took 64.33 seconds =========================

@I-hate-2FA found it. Please try again

it still doesnt work
i had to repair my pc a bit now im back
Compiling .pioenvs/esphome-trash-can/src/esphome/components/7segment_gpio/7segment_gpio.cpp.o
Compiling .pioenvs/esphome-trash-can/src/main.cpp.o
src/esphome/components/7segment_gpio/7segment_gpio.cpp: In lambda function:
src/esphome/components/7segment_gpio/7segment_gpio.cpp:379:33: error: 'display_type' was not declared in this scope
     const auto digit_on_level = display_type == CommonAnode;
                                 ^~~~~~~~~~~~
src/esphome/components/7segment_gpio/7segment_gpio.cpp:379:33: note: suggested alternative: 'DisplayType'
     const auto digit_on_level = display_type == CommonAnode;
                                 ^~~~~~~~~~~~
                                 DisplayType
src/esphome/components/7segment_gpio/7segment_gpio.cpp: In lambda function:
src/esphome/components/7segment_gpio/7segment_gpio.cpp:384:35: error: 'display_type' was not declared in this scope
     const auto segment_on_level = display_type != CommonAnode;
                                   ^~~~~~~~~~~~
src/esphome/components/7segment_gpio/7segment_gpio.cpp:384:35: note: suggested alternative: 'DisplayType'
     const auto segment_on_level = display_type != CommonAnode;
                                   ^~~~~~~~~~~~
                                   DisplayType
src/esphome/components/7segment_gpio/7segment_gpio.cpp: In member function 'void esphome::lcd_digits::LcdDigitsComponent::set_progress(float)':
src/esphome/components/7segment_gpio/7segment_gpio.cpp:391:44: error: invalid use of void expression
       pin->digital_write(digit_level(false));
                                            ^
src/esphome/components/7segment_gpio/7segment_gpio.cpp:394:44: error: invalid use of void expression
     pin->digital_write(segment_level(false));
                                            ^
src/esphome/components/7segment_gpio/7segment_gpio.cpp:395:83: error: invalid use of void expression
   interrupt_data_.segment_pins[current_segment]->digital_write(segment_level(true));
                                                                                ^
src/esphome/components/7segment_gpio/7segment_gpio.cpp:397:41: error: invalid use of void expression
     pin->digital_write(digit_level(true));
                                         ^
*** [.pioenvs/esphome-trash-can/src/esphome/components/7segment_gpio/7segment_gpio.cpp.o] Error 1
========================= [FAILED] Took 89.51 seconds =========================

@I-hate-2FA Sure. Have your time. Fixed this. Let me know if it works.

Just realized I don't have device but have config. So I can compile on my side. It's compiling fine now. @I-hate-2FA Please validate if display works.

both common anode and common cathode works

@I-hate-2FA Awesome. Thanks again. I'm merging

i sugest to use common_anode or commonAnode insted of COMMONANODE

but its up to you

I've added underscore. It should work in upper or lower case as I understand.

i go checked other esphome internal component enum and indeed they used all upper case with underscore

Yup. Done the same. Also there is option in enum config parser to convert to upper or lower case. I think it will work the same way if you write lowercase with underscore in configuration.

the readme need to be updated too

Updated in main. Please let me know what could be improved there.

I'm going to delete this branch. Please switch to main in your project config.

@I-hate-2FA Thanks again for your help!

had to deal with the pc again
hopefully stable now
maybe you can add it in the example code below, or if this option is optional (it shouldnt be, right?) you can choose not to

I've added
   # display_type: common_cathode # Uncomment this line for common cathode display


PLAT-2322: Specify worker-port-list only if worker ports are defined

What problem does this PR solve?
To enable Istio for Ray, the Distributed Compute Operator replaces random worker ports with static ones and defaults to 5 worker ports.  This means that only up to 5 worker processes are allowed per worker pod.  This causes Ray programs to fail if they try to schedule more than 5 worker processes based on the resource requirements and the amount of cpu/gpu available in the hardware tiers.
https://github.com/cerebrotech/domino/pull/24018 addresses this by configuring the worker port list to 100 ports by default.  The worker port range is configurable in Central Config.
For non-Istio deployments, we should not specify any static worker ports at all (which is only required for Istio deployments).
What is the solution?

Nucleus will configure spec.workerPorts for Istio deployments only
Remove default worker ports
Specify worker-port-list only if worker ports are defined

https://dominodatalab.atlassian.net/browse/PLAT-2322

Verified that --worker-port-list is set only for Istio deployment.
Regular Ray worker pod:
spec:
  containers:
  - name: ray
    args:
    - start
    - --block
    - --node-ip-address=$(MY_POD_IP)
    - --num-cpus=$(MY_CPU_REQUEST)
    - --object-manager-port=2384
    - --node-manager-port=2385
    - --head
    - --ray-client-server-port=10001
    - --port=6379
    - --redis-shard-ports=6380,6381
    - --gcs-server-port=2386
    - --include-dashboard=true
    - --dashboard-host=<IP_ADDRESS>
    - --dashboard-port=8265
    command:
    - ray

Istio Ray worker pod:
spec:
  containers:
  - name: ray
    args:
    - start
    - --block
    - --node-ip-address=$(MY_POD_IP)
    - --num-cpus=$(MY_CPU_REQUEST)
    - --object-manager-port=2384
    - --node-manager-port=2385
    - --worker-port-list=11000,11001,11002,11003,11004,11005,11006,11007,11008,11009,11010,11011,11012,11013,11014,11015,11016,11017,11018,11019,11020,11021,11022,11023,11024,11025,11026,11027,11028,11029,11030,11031,11032,11033,11034,11035,11036,11037,11038,11039,11040,11041,11042,11043,11044,11045,11046,11047,11048,11049,11050,11051,11052,11053,11054,11055,11056,11057,11058,11059,11060,11061,11062,11063,11064,11065,11066,11067,11068,11069,11070,11071,11072,11073,11074,11075,11076,11077,11078,11079,11080,11081,11082,11083,11084,11085,11086,11087,11088,11089,11090,11091,11092,11093,11094,11095,11096,11097,11098,11099
    - --head
    - --ray-client-server-port=10001
    - --port=6379
    - --redis-shard-ports=6380,6381
    - --gcs-server-port=2386
    - --include-dashboard=true
    - --dashboard-host=<IP_ADDRESS>
    - --dashboard-port=8265
    command:
    - ray


apksigcopier: init at 1.0.0

Motivation for this change

New package; related to Reproducible Builds for Android; used by e.g. F-Droid.
I'm the upstream author; and also the Debian maintainer.
I'd also like to maintain it for NixOS :smile_cat:
(It's also available on PyPI and someone has packaged it for Arch in the AUR.)

Things done

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

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

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Relase notes)

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

[x] Fits CONTRIBUTING.md.

FIXME

[ ] I was not quickly able to find out how (& where) to install the man page: help wanted.
[ ] On Debian, this package recommends apksigner (from the Android SDK; needed for 1 of the 4 subcommands). I don't see a separate package for that in NixOS. It might be in included in some Android SDK package, but that seems like a rather large dependency. So maybe it's best to just leave it up to the user to install apksigner?

@ofborg eval
(Sorry, ofborg's certs recently had an issue, meaning that it was unable to
react to PRs. This has been fixed, but all PRs filed in this period will need
ofborg to be manually kicked off.)


Widget should refresh if Provider is updated

Dev Home version
0.11
Windows build number
No response
Other software
No response
Steps to reproduce the bug

I had Dev Home open and the widget pinned
I clicked the Extension link, it opened the Microsoft Store page, I clicked update
After it was done updating, Dev Home refreshed and the Dashboard appeared to attempt to refresh the widget - the UI was removed and replaced with an indeterminate spinner, that never advanced any further
I closed and re-opened Dev Home and the widget appeared again

Expected result
No response
Actual result
.
Included System Information
No response
Included Extensions Information
No response

I think this might have to do with how the widget service sends deleted/added messages instead of updated, need to investigate.


[DO NOT MERGE][PoC] Prow test job

@stevekuznetsov includes a script that allows us to do batch merges w/o any patching involved in any of the prow components.
PoC:
I0629 11:02:40.998287       1 mungegithub.go:60] Running mungers
I0629 11:02:41.698004       1 submit-queue-batch.go:307] merging batch: {master 97d901d8e77fff6e8e1b6889e743fe66e7fbbc8b [{%!s(int=3) 0a590d0c5c54aaea23e9142423887196f6dc4294} {%!s(int=4) bcb00a13b286bc025ab560c3d703fca81d9aa9c8}]}
I0629 11:02:42.370580       1 github.go:2531] Munged 0 modified issues. (0 because of status change)
I0629 11:02:42.370605       1 github.go:257] Made 24 API calls since the last Reset 1.176334 calls/sec
I0629 11:02:42.370680       1 mungegithub.go:76] Sleeping for 18.627597114s
I0629 11:02:42.757507       1 github.go:1952] Merging PR# 3
I0629 11:02:42.757535       1 github.go:2171] Commenting in 3: "Automatic merge from submit-queue (batch tested with PRs 3, 4)"
I0629 11:02:44.222187       1 github.go:1444] PR 3 setting "Submit Queue" Github status to "MERGED! (batch)"
I0629 11:02:44.288969       1 github.go:1952] Merging PR# 4
I0629 11:02:44.288996       1 github.go:2171] Commenting in 4: "Automatic merge from submit-queue (batch tested with PRs 3, 4)"
I0629 11:02:46.805112       1 github.go:1444] PR 4 setting "Submit Queue" Github status to "MERGED! (batch)"
I0629 11:02:55.117971       1 github.go:1444] PR 3 setting "Submit Queue" Github status to "Second github e2e run failed."

https://ci.openshift.redhat.com/jenkins/job/test_branch_prow_check/29/
https://github.com/origin-prow/origin/pull/3
https://github.com/origin-prow/origin/pull/4
If we are ok with having the python script and updating our jobs to use it, I will open a separate PR with the changes.

Closing in favor of https://github.com/openshift/aos-cd-jobs/pull/392


Make NETA, BOOT unverified

Removing a couple more assets (NETA, BOOT) from Main due to disqualification.

Removing a couple more assets (NETA, BOOT) from Main due to disqualification.

Hi!
Could you please point to the rules which define the parameters for qualification\disqualification?

Why is the attribute not called isIncentivized?


executable flag of the share folder

running "sudo make install" will install any file of the share folder and its subfolder with executable bit set. However, Verilog files don't have a Shebang and should not be executable.

Issues should be filed in the upstream rather than this fork


Store the images externally to improve performance

As 'nedb' cannot handle large database (e.g. more than 250MB), store the
image inside database will have significant impact on performance, even
usability. (For my case, the database exceed 380MB, which caused zazu-clipboard stopped working.)
To reduce such impact, this PR stores the clipboard images externally in the cache
directory, 'data/images'.
This PR also improved the performance by using hash (sha1) for the clipboard change detection, which increase the performance a lot. (1000ms => 20-30 ms if it's a photo).
Also fixed the 'unitName' case to upper case.
Signed-off-by: Tao Wang<EMAIL_ADDRESS>

This is awesome!
One case that needs to be handled is pruning of the images. We currently have a "capped collection". We might need to do something so it stays pure (no domain logic) but still provides us a way to prune the images when the record gets deleted.

Updated. Now it will remove the image if the clip is removed from the database, and add more test cases.

Works for me, thank you!


feat(remix-react): emulate put/patch/delete when JS is unavailable

References #4420

[x] Docs
[x] Tests

Ensure <Form method=...> behaves the same with and without JavaScript. Although native forms don't support PUT/PATCH/DELETE, we can emulate them by doing a POST and injecting a _method parameter into the action URL. The Remix server runtime then provides action handlers a Request with the overridden method so they are none the wiser.
This provides a more reliable way to use these methods, which can be more ergonomic to write and handle than hidden inputs or buttons with values.
Note:
The emulation only works for action requests handled by Remix; if the form is submitted to another endpoint, it would need to handle the _method URL parameter accordingly.

Is it possible to make it work with <button formmethod="put | delete" />?

@znycheporuk there are a couple big hurdles:

Browsers don't support setting the other form methods on a button. When you do <button ..., React is essentially running document.createElement("button") and then setting attributes on it. If you set a formmethod value other than get or put, the browser silently ignores it, which means we have no way of getting it later.
Even if we could get the other form methods to stick on the button element somehow, when the form is submitted without/before JavaScript, it would not get used because browsers don't support that at submission time.

It may be possible to emulate it a different way, but that would require more plumbing and not be worth the trouble. One idea might be for remix to provide a Button component along these lines:
function Button({ formmethod, name, value, ...props }) {
  if (["put", "patch", "delete"].includes(formmethod)) {
    name = "_method"
    value = formmethod
  }
  return <button name={name} value={value} {...props} />
}

A downside is that you couldn't use an explicit name+value in conjunction with such a formmethod, since they would be overridden. Additionally, the server-side _method logic would need to be adjusted to also look in formData (multipart or url-encoded), which would make the code more complex and may have performance implications.
I suspect it's probably not worth the trouble, and there may be a much simpler alternative if you want to associate a custom form method with a specific button: use multiple forms :) ... for example, instead of this:
<Form>
  <input name="todoItem" defaultValue={myTodo} />
  <button formmethod="put">Update</button>
  <button formmethod="delete">Delete</button>
</Form>

You could structure your elements like so:
<Form method="put">
  <input name="todoItem" defaultValue={myTodo} />
  <button>Update</button>
<Form>
<Form method="delete">
  <button>Delete</button>
</Form>

Or if for some reason you really want the buttons in the same form (e.g. to facilitate styling), you can associate it with another form:
<Form method="put">
  <input name="todoItem" defaultValue={myTodo} />
  <button>Update</button>
  <button form="delete-form">Delete</button>
<Form>
<Form method="delete" style={{ display: "none" }} id="delete-form"></Form>

If neither of those approaches work or your use case (e.g. you need all buttons to submit all the form data), then I'd suggest instead using buttons with a name+value like intent="update", and keying off of that on the server side.

As explained in https://github.com/remix-run/remix/discussions/4420#discussioncomment-4412645, I don't think it's a good idea to make non-JS & JS work the same in this case

I'm personally in favor of dropping non-GET/POST tbh, as that makes us work closer to the spec.
Although it's maybe not that much discouraged in the current Form.method docs, we did make sure all other docs use GET/POST & set the submit button's name to 'intent' if necessary not that long ago.
Not discouraging using non-GET/POST would make people also want to use <button formmethod="delete|patch|put" />, which is something we'll never be able to support without a custom Button component on our end & some crazy logic on our end (as perfectly explained by @jenseng above & in https://github.com/remix-run/remix/pull/4496#issuecomment-1320222238)
We have <button name="intent" value="update">...</button> to support these kind of things anyways, so I would rather make sure the docs are more pushing towards that instead tbh.
So what I think we should do is:

Keep the current support for non-GET/POST, but add a deprecation warning when people are using them
Deprecate non-GET/POST in v2

I agree that this would mean non-JS isn't working the same as when JS is enabled, which is something we should fix in most cases.
I do however think we shouldn't fix it in this case, as that would encourage using non-GET/POST more, which is (as I explained above) not a good thing imo.

Happy to rebase/revisit this if we can get consensus from the Remix team... do we 1. want to move forward with emulation or 2. just want to deprecate those methods in v2 (or later?)
I think there are good arguments to be made for and against either approach. My personal preference is emulation, but either option would be preferable to the inconsistent status quo.


feat($resource): pass isArray to http config

This will allow to indentify request type in global interceptor.
I need to identify if request is array or object and put necessary array or object to httpCache accordingly if request does not need to be made.

I don't get the usecase (and I suspect this might not be something commonly useful to include in core).
Could you provide more details on why you need this/how you will use this ? (An example maybe ?)

You are right, this is not a common usecase. But, why drop isArray param? I would expect all data that I enter in resource configuration to be found in http config object. I can find cache, method, header and transformer params, so why no isArray?

Hm...good point. As a work-around, you can pass your custom param (but you must be in charge of all $resources and it's less than ideal). E.g.:
var Thing = $resource('/api/thing/:id', {id: '@id'}, {
  query: {method: 'GET', isArray: true, itsAnArray: true}
});
// ...then look for `config.itsAnArray` in your interceptor

--
Regarding the question "why not to include isArray":
I guess it was skipped in the first place, because it is a $resource-specific property and doesn't have any usefulness for $http.
On the other hand, it is (kind of) related to/characterizing the request.
I could definitely leave with passing isArray to $http.
So, it LGTM after all.
Let's see what other people have to say.

Thanks, I will implement temporary workaround and will wait for what you decide


Added the production server and static handling

Hi Mr. Sadegh, I added the Gunicorn production-ready server for handling requests that comes to the Django and API that have better performance and stability than the development server.
I also added a Caddy server for reverse proxy and static file handling.
In the next step, I will try to make the Postgres database secure by hiding its port in the next step and handling the Pgadmin requests with Caddy.

Also, I want to mention to the docker build tag that it will not reinstall all dependencies when a code changes, and this happens because we copy our requirements file before the source code, and the cache will not expire when a change applies to the source.

hello Mr.Raufzzahed, thanks for your contribution, as I haven't had any experience with caddy, how can I test it? as you know this Backend server is used by 15 frontend developers in their final project so I need to test it before merging, another thing is that will be great if you can keep your migrations files out of the repo. thanks in advance.

I added some hot fixes, please confirm them before merging

I will confirm the first and last commit, but the others commits are wrong.
The port 8000 is for the development server, and it doesn't use in production. We will handle the production requests with Gunicorn and the Caddy web server and expose them as 80 port and 443 port for SSL.
The Gunicorn WSGI will process our requests with better performance, also, we will manage its requests and assets with the Caddy webserver.
Also, as you mentioned, this project is used in production and can't use the Django development server.

Note: Caddy Handles SSL automatically and all you must do is replace your production server URL with localhost in the Caddyfile

we need to have development environment due to probable issues might happen in the future, we need to ask our clients to send us the errors, with production environment it is not possible. so, we need port 8000 on that case too. if it is confirmed. we will merge it today.

we need to have development environment due to probable issues might happen in the future, we need to ask our clients to send us the errors, with production environment it is not possible. so, we need port 8000 on that case too. if it is confirmed. we will merge it today.

If you need the errors log you must use a logger instead of the development server. This is not a good reason to use the development server in the production stage.
Logging | Django

you are right by all means, but the project is being used by front-end developers at the same time for the final project, as I should maintain their needs for another 2 weeks, I prefer to compromise some security issues for simplicity during this phase. I appreciate it if you can work on it and wait two weeks for merging into the main. let this pull request stay open and work on other security issues for the time being. thanks for your contribution.

Of course, When you are ready to work on the production version, just send a new comment here to notify me.

Hi, any progress?

it's just about to be finished, final review will be next Friday and we are ready to merge. by the way I will ask all if they don't wanna give the last updates, we can do the merge sooner


LCFS support for MacOS/Apple

The changes mostly involve adding

ifdefs for apple.
A few missing functions in apple are replaced with the equivalent ones.

State of LCFS on mac

Able to mount a device with lcfs
Unable to start docker using lcfs.

Is someone reviewing this PR? @adityadani @jjobi @jvinod ?

Merged!

Unable to start docker using lcfs.

Is this still true? There's a few of us @basecamp that would be happy to help test.

Instead of bringing up lcfs on Mac, it may be easier to bring up lcfs in
the Linux VM docker is running.
With Docker for MAC, that vm could be accessed using the following command:
screen
~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
On Fri, Feb 3, 2017 at 11:46 AM, Taylor Weibley<EMAIL_ADDRESS>wrote:

Unable to start docker using lcfs.
Is this still true? There's a few of us @basecamp
https://github.com/basecamp that would be happy to help test.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/portworx/lcfs/pull/4#issuecomment-277343914, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AVgYSoX7zGNDNgOy5buwvcNA5nMB7RkSks5rY4QNgaJpZM4Lk5io
.


Revert "修复了API提交URL时的命令执行"

Reverts WhaleShark-Team/cobra#1201

Pull Request Test Coverage Report for Build 457

0 of 1 (0.0%)  changed or added relevant line in 1 file are covered.
19 unchanged lines in 8 files lost coverage.
Overall coverage increased (+15.2%) to 54.856%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

cobra/utils.py
0
1
0.0%

Files with Coverage Reduction
New Missed Lines
%

cobra/engine.py
1
26.68%

cobra/init.py
1
29.11%

cobra/utils.py
1
35.34%

cobra/log.py
1
44.93%

cobra/templite.py
1
0.0%

cobra/config.py
2
63.64%

cobra/api.py
4
12.79%

cobra/cve.py
8
80.49%

Totals

Change from base Build 455:
15.2%

Covered Lines:
1237

Relevant Lines:
2255

💛  - Coveralls

Pull Request Test Coverage Report for Build 457

0 of 1 (0.0%)  changed or added relevant line in 1 file are covered.
19 unchanged lines in 8 files lost coverage.
Overall coverage increased (+15.2%) to 54.856%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

cobra/utils.py
0
1
0.0%

Files with Coverage Reduction
New Missed Lines
%

cobra/engine.py
1
26.68%

cobra/init.py
1
29.11%

cobra/utils.py
1
35.34%

cobra/log.py
1
44.93%

cobra/templite.py
1
0.0%

cobra/config.py
2
63.64%

cobra/api.py
4
12.79%

cobra/cve.py
8
80.49%

Totals

Change from base Build 455:
15.2%

Covered Lines:
1237

Relevant Lines:
2255

💛  - Coveralls


Implement "Copy/Paste" feature

Feature Description
Currently, there is a lack of a feature for pasting code from the clipboard for the user.
Context of issue
The current implementation of the TextInput component is the following: there is a single <TextInput /> component that is being hidden while the value inputted in it is being displayed inside the separated <Text /> components, which are the actual "Input cells" that the user sees on the screen. <TextInput /> mentioned above is focused when <Text /> (cells) are being tapped. P.S. the tap is handled by Pressable that wraps each Text component:
https://github.com/anday013/react-native-otp-entry/blob/7db6d76c2cea11969438069c21a97f7d74cd1b98/src/OtpInput/useOtpInput.ts#L10-L16
Recap: There is a single TextInput that's hidden and several Text components in the form of "cells", where each of the digits of the OTP code is being populated and displayed.
Issue
The "copy/paste" feature is a built-in feature in TextInput component, and in our case, it's been hidden from the user, there is no way for the user to pop up the built-in TextInput "text selection menu", which looks like this:

Possible solutions
Easy approach: It is possible to add context menu on long press and add custom options; however, it would kill the native feeling.
+: Easy to implement
-: Not native UX
Deep approach: It would be cool to trigger the native "text selection menu", however it probably requires a native piece of code for each platformw
+: Fully native UX
-: Requires platform native knowledge to implement
TODOs:

[ ] Paste functionality
[ ] Copy functionality

@anday013 would you try implementing the same?

@Biki-das I am trying to come up with ideas :)

@Biki-das I've added some possible ways to implement it, you can take a look

@Ozaoujal it's been implemented, please update to the latest version (v1.5.0)  :)


🚀 Feature: Implement MariaDB database support

🔖 Feature description
Imlement MariaDB support in Backstage
🎤 Context
Currently, Backstage supports PostgreSQL, MySQL and SQLite. However, we also need to add support for MariaDB in Backstage and its associated plugins. Building on previous efforts, such as an issue and a PR that introduced MySQL support in the Catalog plugin, we aim to extend this work to ensure MariaDB compatibility within Backstage. Since Knex already supports MariaDB as a database backend, these updates can be made without changing the existing database abstraction layer.
✌ Possible Implementation
Follow how it was done for MySQL: https://github.com/backstage/backstage/issues/18668
If it's ok with you to have MariaDB support I can look into this and create corresponding PR.
👀 Have you spent some time to check if this feature request has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
Yes I am willing to submit a PR!

Hi @ypetrych, this seems reasonable to me, would need to be contributed by the Community. I would suggest that we get the maintainers feedback before starting anything on this though. Maybe you could attend one of the Framework SIGs to talk about it?
Just wanted to clarify something: Backstage only supports Postgres officially in all environments. SQLite is ONLY supported for local development. MySQL is NOT supported officially though work has been done in place to start building support for it but this is only for Core features and the larger ecosystem of plugins won't have support.

I'd like to push back gently on this for the time being. We still only officially support postgres, to the point of considering whether it'd be a valuable simplification to tear our the sqlite support and instead use an in-memory postgres for local dev and testing needs.
The mysql support was explored for a while by the community, is spotty, and work on it has stalled. As expected it's a lot of work to support multiple database engines with fully proper behaviours across the board. The code is peppered with if statements doing different things depending on what the current backing implementation is, because it turns out that knex doesn't really help much with glossing over the truly important things; it only covers some superficial differences.
So adding one more engine while the previous one isn't in place nicely feels risky. And even if MariaDB used to be a drop in replacement for MySQL more or less, if I understand things correctly, that picture has shifted a lot over the years. See for example:
https://mariadb.com/kb/en/compatibility-differences-incompatibilities-and-feature-differences-between/
https://mariadb.com/kb/en/incompatibilities-and-feature-differences-between-mariadb-10-5-and-mysql-8-/
The maintainers themselves are still focused on postgres and will be for the foreseeable future. Maybe one day we lean more into putting compartments in place that make different engines more clearly pluggable, but for a project like e.g. the catalog, that's a pretty sizeable surface to cut out cleanly.

Hi @freben @awanlin! It's a good idea to join your SIGs to discuss why we need this support and possible solutions. I'm a bit confused since the meetings are bi-weekly. Are you going to have it this or next week? Thanks!


Examples don't work

Getting this error: Uncaught TypeError: props.className is not a function(…) on fields.js, line 13. Just cloned from master.

Thanks for the heads up @mglidden. I'll take a look.

This is resolved. Let me know if you have any further issues! Thanks. 😄

I'm seeing this same error for line 33 in fields.js. Uncaught TypeError: props.className is not a function. Just installed via npm npm install react-input.

@alandickinson same for me :(

@alandickinson @Allend13 @mglidden Can you install<EMAIL_ADDRESS>and confirm if the issue is resolved in this release? Tests pass for version 4.1.2.

Running the examples in the repo works for me


Unify parameter types in documentation

Checklist

[x] documentation is added or updated

There are two instances of int in doc/man7/EVP_KDF-KB.pod that should be integer.

There are two instances of int in doc/man7/EVP_KDF-KB.pod that should be integer.

Fixup pushed with 3 instances :grin: Still approved?


allow fk field filtering python style

I have edited the FieldAccessor._check_field method to allow foreign keys filtering in python style.  More details about this in #846

Codecov Report

Merging #854 (9a2d2b0) into master (fd0f40a) will not change coverage.
The diff coverage is 100.00%.

:exclamation: Current head 9a2d2b0 differs from pull request most recent head 721ad00. Consider uploading reports for the commit 721ad00 to get more accurate results

Additional details and impacted files

@@            Coverage Diff            @@
##            master      #854   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          188       188
  Lines        16038     16038
=========================================
  Hits         16038     16038

Impacted Files
Coverage Δ

ormar/queryset/field_accessor.py
100.00% <100.00%> (ø)

tests/test_model_definition/test_fields_access.py
100.00% <100.00%> (ø)


Terminate earlier on failures?

A slightly modified version of the toy example in the README currently causes many linesearch-failures before the solver gives up. The underpinning problem seems to be that the inner loop breaks early and then the outer-loop concludes that the sub-problem was easy to solve, causing it to tighten \epsilon further.
Reproducer:
using MixedComplementarityProblems

M = [0 1; -1 0]
A = [1 0; 0 1]
b = [1; 1]
θ = rand(2)

G(x, y; θ) = M * x - θ - A' * y
H(x, y; θ) = A * x - b

mcp = MixedComplementarityProblems.PrimalDualMCP(
    G,
    H;
    unconstrained_dimension = size(M, 1),
    constrained_dimension = length(b),
    parameter_dimension = size(M, 1),
)
sol = MixedComplementarityProblems.solve(MixedComplementarityProblems.InteriorPoint(), mcp, θ)

@lassepe Thoughts on the PR?


Unable to run sudo phigaro-setup

(phigaro) ➜  ~ sudo phigaro-setup
sudo: phigaro-setup: command not found

I didn´t have locate

Please, then follow the manual setup instructions:
you need to download hmms,  copy config.yml, change paths of hmmer, and prodigal, write paths to the downloaded hmms and put this file to $HOME/.phigaro directory.

@PollyTikhonova the problem was that I did not have locate installed. Sorry for bothering you and thank you for the support.

No problem, just thought that maybe you did not have an opportunity to install locate


A single post is not reactive

On post/:postId, the post on display is not reactive.
This may be because findOne, used here, does not return a reactive data source. How can we make it reactive?

Maybe something like this would work?
Meteor.subscribe('posts.single', postId, () => {
  const posts = Collections.Posts.find({ _id: postId }).fetch();
  let data = {};
  if (posts.length) {
    data.post = posts[0];
  }
  onData(null, data);
});

That subscribe callback is running just once anyway.
But disabling tracker on Posts.findOne few lines below is quite easy to identify....

Checkout the master branch now. It has a better version.

Thanks @arunoda !

@arunoda Why does the solution work? Is it because the subscription handle is a reactive data source, and it causes the composer to re-run when the data changes? see https://github.com/mantrajs/mantra-sample-blog-app/blob/master/client/modules/core/containers/post.js#L7

@sungwoncho Yes. And it's less code.


site is down https://akveo.github.io/ng2-smart-table/

it is not loading, just showing "Loading..."

Hey @unruledboy, loading fine on my side, could you try again and/or change the browser?

@nnixaa sorry, I tried the latest version of Chrome, it is loading. But initially I used another browser called Maxthon using older version of chronium which is not working, telling me:
Uncaught TypeError: Cannot call method 'apply' of undefined vendor.d925b9f8e0443ee79717.bundle.js:8
Anyway, it should not be a major issue. Thanks.


Question: How to manage admin panel with only one email (admin's emails)

I want to manage the admin only with one email. So no one else can request a login url.
Best Regards.

@tigrankhachikyan
API will check, does email exists in tokens collection when someone request login URL.
So no one can request a login URL.

Oh I see.
May be I'm doing something wrong, but.
here is my steps.

/admin is available from Chrome and Firefox
Logout from Chrome (/admin/logout)
Request url for another email (/admin/login)
3.1 it says Access denayd
/admin is still available in Firefox and Chrome

note, no access tokens are created from admin panel.Am I missing something?
http://<IP_ADDRESS> for my example
Thanks in advance.

@tigrankhachikyan
You need to disable developer mode in config files.
https://github.com/cezerin/cezerin/blob/master/docs/how-to-deploy-a-cezerin-on-ubuntu-16-04.md#7-turn-off-developer-mode

I did all these steps, but /admin url is still available.
Add access token in Dashboard or MongoDB
Set SMTP server from Dashboard or in config/server.js
Remove developerMode from config/server.js
Remove developerMode from config/admin.js
npm run build inside Cezerin container
pm2 reload api inside Cezerin container

ok, sorry, need to restart docker container as well
Closing.
Thank you!


Business Logic Framework

Application DB Context
Interface & base classes for BL Framework
Generate Entities / Models
BL classes

@Kelvin789 Working on Repository & Unit Of Work pattern


Scope down marin3r Secret cluster wide access

Cluster scope requirement
Marin3r's only supported install mode is cluster wide, basically because it needs to manage cluster scoped resources:

discoveryservices.operator.marin3r.3scale.net: this is the custom resource that users use to deploy an envoy discovery service and activate the injection of envoy sidecars in Pods of the selected namespaces.
mutatingwebhookconfigurations.admissionregistration.k8s.io: this is the resource that the discoveryservice controller creates to enable pod injection of envoy sidecards in the pod resources of a namespace.

Due to the existence of these two resources that are managed by the controllers of the project, the operator needs to run using a ClusterRole, as a ClusterRole is the only way to interact with cluster scoped resources.
Access to Secrets requirement
The operator uses certificates for three different purposes:

It has the feature of delivering certificates to the envoy proxies through the the discovery service. These certificates are read from kubernetes Secret resources, thus the requirement of read access for Secrets.

Related to the previous point, to protect certificate private keys from being exposed to any client that connects to the discovery service server, envoy proxies are required to authenticate with the discovery service server using mTLS, otherwise any client in the cluster could connect to the discovery service server and retrieve the certificates' private keys. To setup mTLS for both the discovery server and the envoy proxies that the operator manages, the operator creates server and client certificates using a self-signed certificate authority.

A kubernetes admission webhook requires that a CA bundle is specified to validate the identity of the webhook server it connects to in order to validate/mutate admission requests. The CA certificate and the webhook server certificates for this are also stored as Secrets.

Link to documentation on how the operator manages certificates for these three requirements: https://github.com/3scale/marin3r/blob/master/docs/design/operator.md
Install modes
An operator can be installed in four modes: AllNamespaces (aka cluster scope), MultiNamespace, SingleNamespace and OwnNamespace. So even if the operator only needs to read/write Secrets in a few namespaces, the AllNamespaces install mode is required to be able to manage the MutatingWebhookConfiguration cluster scoped resource. This effectively makes the operator have access to all Secrets in the cluster, with no possibility of scoping it down, as a mixed mode where cluster resources are accessed with a ClusterRole and namespaced resources are accessed with a Role is not possible, at least not when installing an operator through OLM.
Possible solutions

Disable all the Secret related marin3r features through a field in the DiscoveryService resource. Still, something external would need to provide the certificate for the mutating webhook. For example cert-manager could be used as a certificate provider. The cert-manager operator would be the one having access to the Secrets in the cluster, but in the end we would be granting cluster scope access for Secrets to the operator that provides the certificates, be it Mari3nr or something else, so not sure this solves much.

Adding a flag to filter out events from privileged namespaces (any namespace that matches openshift-* for example). The problem with this approach it's that the operator would still require the permissions to access Secrets cluster wide and the responsibility of filtering would be left to the operator itself, so in a way you would have to trust that the code is doing the right thing and filtering out events from those privileged namespaces. This is probably something worth doing anyway to reduce the number of events the controllers receive.

There is a different option that we hadn't considered that could solve the problem:

Instead of the operator itself deploying the webhook, let OLM install it as part of the operator's installation. OLM has embedded logic to provide the server certificates that webhooks require.
Once the operator doesn't have to manage the webhook, the DiscoveryService resource can be converted to a namespaced resource, allowing the operator to be installed using namespaced mode. This way the operator would only have access to the namespace where the DiscoveryService resource is created. Only thing to take into account is that the DiscoveryService resource would need to be created in the same namespace where the envoy sidecars are injected.

Having OLM deploy the webhook seems reasonable  . As the operator will be watching for CRs in namespace A it seems reasonable to add an instance of the discovery service to that namespace also if that makes the permissions simpler.

One question do you know which version of OCP supports that?

We have just released a new version of the operator with the proposed changes (see #60 ):

Namespaced DiscoveryService resource
Webhook deployed through OLM

We are right now testing it in our 3scale SaaS staging environment which is OCP 4.6, all good so far.
We have also tested that the webhook installation through OLM also works with 4.5. We haven't done any test in older OCP clusters and I have been unable to find references to this feature outside of the 4.6 official documentation (see https://docs.openshift.com/container-platform/4.6/operators/operator_sdk/osdk-generating-csvs.html#olm-webhook-considerations_osdk-generating-csvs). This feature is also referred in these olm docs but not tied to a specific version.
Which OCP release are you targeting?

This has beed implemented with #60 and released in v0.7.0

This has beed implemented with #60 and released in v0.7.0


Lodestar receives a lot of gossipsub Prune requests

Describe the bug
This is from a mainnet node

This "Unsubscribed" reason is misleading, it just means we received Prune request from our peer, see https://github.com/ChainSafe/js-libp2p-gossipsub/pull/440
Expected behavior
Receive small number of prune request
Steps to reproduce
No response
Additional context
No response
Operating system
Linux
Lodestar version or commit hash
v1.9.0

This is one reason https://github.com/ChainSafe/js-libp2p-gossipsub/issues/441

this is from a stable mainnet node v1.10.0

Still 6.8 prunes per second is a lot right?

the network thread should reduce it down to <= 2.5s, this is from #5896 branch

@dapplion  I'm reopening the issue to track 👍

Worth reinvestigating now that we only subscribe to 2 subnets

Resolved as of now o'clock


[Question] Creating an event grid subscription on an event grid in a different deployment/resource group?

I have a scenario where there is an event grid topic that has been created by a seperate deployment in another resource group, and I need my current deployment/resource group to create a subscription to it. I can't work out how to do this, so far I have:
resource existingEventGrid 'Microsoft.EventGrid/topics@2020-06-01' existing = {
  name: 'myEventGrid'
  scope: resourceGroup(subscription().subscriptionId, 'myOtherRg')
}

resource eventGridsubscription 'Microsoft.EventGrid/eventSubscriptions@2020-06-01' = {
  name: 'mySubscription'
  scope: existingEventGrid
  properties: {
    ...
  }
}

This gives me the error The root resource scope must match that of the Bicep file. To deploy a resource to a different root scope, use a module..
So I've also tried creating/exporting the existing event grid from a module as suggested, however it then complains that both The property "scope" must be evaluable at the start of the deployment, and cannot depend on any values that have not yet been calculated... and The property "scope" expected a value of type "resource" but the provided value is of type "object". - because we can't export a resource from the module itself?
Is it possible to achieve what I'm trying to do and how?
(I come from a Terraform background so haven't dealt with this sort of thing in ARM before)

ARM currently does not allow deploying a resource to a scope outside of the current template's scope. This is a long-standing limitation in the deployment service that we're working to remove, but still have quite a lot of work to do.
The only place that you are allowed to cross scope boundaries is when declaring modules (which are translated to nested ARM templates). So the current way to achieve this would be using a module using something like the below.
eventsubscription.bicep:
param eventGridName string
param subscriptionName string

resource existingEventGrid 'Microsoft.EventGrid/topics@2020-06-01' existing = {
  name: eventGridName
}

resource eventGridSubscription 'Microsoft.EventGrid/eventSubscriptions@2020-06-01' = {
  name: subscriptionName
  scope: existingEventGrid
  properties: {
    ...
  }
}

main.bicep:
module eventGridsubscription './eventsubscription.bicep' = {
  name: 'eventGridsubscription'
  scope: resourceGroup('myOtherRg')
  params: {
    eventGridName: 'myEventGrid'
    subscriptionName: 'mySubscription'
  }
}

Awesome, that works for me.
Thank you for the quick response.


Background task not running if not debug remotely

Hi Author !
I have a weird problem. When I tested the background-task in my app in debug remotely, It worked fine and  I got the task done.
However, If I didn't turn the debug remotely on or built the app to production, the background-task didn't seem to work

Thank for your help

@petixiuxx  did you find a way to solve this problem?

I have exactly the same problem. And in iPhone I cannot reach to get a background task trigger that is not from the XCode triggerer.

@Oleksandrrr not yet. So I replace with background job which only works for Android
@xSmoggeRx  the same for me with IOS devices


Rename (Local)ObjectReference typed fields to ...Ref

This is the convention for gitops-toolkit.

Fixed in #17


BIGTOP-3494. Add MapReduce settings to yarn.nodemanager.env-whitelist in yarn-site.xml.

https://issues.apache.org/jira/browse/BIGTOP-3494
MapReduce job does not work without adding HADOOP_MAPRED_HOME to the value of yarn.nodemanager.env-whitelist. testDistcpIntra and testDistcpIntra_MultipleSources reproducibly fails after upgrading hadoop to 3.2 due to this.

./docker-hadoop.sh --smoke-tests hdfs,yarn,mapreduce passed on 3-node docker provisioned cluster on CentOS 8.

+1, I also confirmed the above command succeeded with this PR on CentOS 7, Debian 10, and Ubuntu 18.04 using a three-node cluster. Thanks @iwasakims!


PR For Host to Review Errors Discussed In Chat

For errors in the chat
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named {pr_number}.significant.rst or {issue_number}.significant.rst, in newsfragments.

Everything else is looking good. LGTM


[BUG] Office Online doesn't support tables generated by addTables

🐛 Bug Report
Office Online says that the XLSX generated is broken and is unable to fix it. It's impossible to edit the document, only view it.
Lib version: 3.8.0
Steps To Reproduce

Generate a XLSX with a table like so:

const Excel = require('exceljs')
const workBook = new Excel.Workbook()
const workSheet = workBook.addWorksheet("1")
workSheet.addTable({
  ref: "A1",
  name: "1",
  columns: [
    { name: "1" },
    { name: "2" }
  ],
  rows: []
})

workBook.xlsx.writeFile("test.xlsx")

Import it to Office Online
Get the following errors:

Resource Removed: Part autofilter of /xl/tables/table1.xml (Table)
Resource Removed: Part table of /xl/tables/table1.xml (Table)

The expected behaviour:
No errors.
Possible solution (optional, but very helpful):
I've been investigating, but so far, nothing.

It seems like I get the same issue if I run this code:
  const table = worksheet.addTable({
    name: 'Holdliste',
    ref: 'A3',
    headerRow: true,
    style: {
      theme: 'TableStyleDark3',
      showRowStripes: true,
    },
    columns: [
      { name: 'foo' },
      { name: 'bar' },
      { name: 'qux' },
    ],
    rows: [
      // [1, 2, 3]
    ],
  });
  table.commit();

But not if I add a row
  const table = worksheet.addTable({
    name: 'Holdliste',
    ref: 'A3',
    headerRow: true,
    style: {
      theme: 'TableStyleDark3',
      showRowStripes: true,
    },
    columns: [
      { name: 'foo' },
      { name: 'bar' },
      { name: 'qux' },
    ],
    rows: [
       [1, 2, 3]
    ],
  });
  table.commit();

This is in the desktop version of excel - I would assume this potentially has something to do with empty-row tables not working.

I faced the same problem. I hope rows accepts object of array.

For Excel online, adding or removing row data doesn't seem to help


Use vcpkg in a Visual Studio project without running vcpkg integrate install

We tried running  "vcpkg integrate install" and found it to be extremely toxic, basically it broke lots of existing working builds as it messes around with include and link paths. Also getting all users to run  vcpkg integrate install is very hard in a big organization.
So is there any documentation on how to use vcpkg from Visual Studio without running vcpkg integrate install. Ideally we add stuff to a vcxproj file and/or import a .props file it imports and things just work after checking out the code. Note ideally this would use caching. I have looked in lots of places and they all say run "vcpkg integrate install". It would be great if https://vcpkg.io/en/docs/users/integration.html had a section on how to do this.

As an extra question. Is there any documentation anywhere of script we could look at that shows what "vcpkg integrate install" actualy does?

So is there any documentation on how to use vcpkg from Visual Studio without running vcpkg integrate install. Ideally we add stuff to a vcxproj file and/or import a .props file it imports and things just work after checking out the code. Note ideally this would use caching. I have looked in lots of places and they all say run "vcpkg integrate install". It would be great if https://vcpkg.io/en/docs/users/integration.html had a section on how to do this.

The article you linked also describes vcpkg export which seems exactly what you want. Have you looked into it if this is viable for your organization? Or is there any issue using export too?

We tried running "vcpkg integrate install" and found it to be extremely toxic, basically it broke lots of existing working builds as it messes around with include and link paths. Also getting all users to run vcpkg integrate install is very hard in a big organization.

Can you provide more information such as a example?
vcpkg only do the following steps when integrating msbuild:

Add VCPKG_ROOT/installed/TRIPLET/include to the Additional Include Directories,
Add VCPKG_ROOT/installed/TRIPLET/debug/lib or VCPKG_ROOT/installed/TRIPLET/lib to Additional Dependencies (depending on different configurations)
Priority to build dependencies in manifest mode (automatically disabled if there is no manifest file).
Install the dependencies after the private project is built.

@davidhunter22  Ping for response.

After some digging I discovered that  "vcpkg integrate install" works as follows

Microsoft.Cpp.Common.props does an  of $(LOCALAPPDATA)\vcpkg\vcpkg.user if it exists
$(LOCALAPPDATA)\vcpkg\vcpkg.user.props imports C:\vcpkg\scripts\buildsystems\msbuild\vcpkg.props if it exists ( I believe this file is created when you run vcpkg integrate install and points the generated file will contain the path of where you have vcpkg installed )
vcpkg\scripts\buildsystems\msbuild\vcpkg.props dows all sorts of stuff like adding things to paths

Note a similar sequence happens for targets.
So to solve my issues I can do one of two things

Not run vcpkg integrate install and import C:\vcpkg\scripts\buildsystems\msbuild\vcpkg.props and vcpkg.targets in my project files
The import in $(LOCALAPPDATA)\vcpkg\vcpkg.user.props  is conditional on a poperty called VCPkgLocalAppDataDisabled. So I can set that to true for a given project and the imports won't happen.

It would be nice if the above was document somewhere.
My view is that using a combination of centralized packages and what vcpkg integrate install dows to MSBuild is extremely problematic. It may make it easier for first time users but it not scable and is brittle.

@davidhunter22  Can you provide a scenario to prove that the integration of msbuild destroys the compilation environment?

We don't have enough information to solve this issue, unfortunately; if you have any more information to help us solve this, please reopen!


Gaia Speedup

This code reworks the Gaia-functions to facilitate running at scale

adds chunks to overcome maximum of the Gaia datalink server
re-writes the Gaia functions which take the products of the datalink server to a MultiIndexDFObject.  This was a bottleneck to running at scale

The re-write now takes the the datalink product which is some sort of dictionary which has a list of tables for values and converts that to a pandas data frame directly.  Then joins that data frame to a source list to include information from the original input catalog about objectid and label.  Finally it cleans up the units and makes the whole thing a nice MultiIndexDF
This PR relies on #156 so it needs to be tested and merged after that one.
As such, I can't actually test the code here.
I did run what is hopefully the exact same thing on the 'Extra Large' server on the SMCE and it made 500,000 light curves in a blazingly fast 37 minutes.

Merging this will close #150

Going ahead with this one first, and will rebase #156 if needed. Thanks @jkrick!


doc: release notes: Finalize 1.12 release notes and docs

Removes the "draft" tag from the 1.12 release notes and adds a 1.12 link
on the release notes page. Adds a link to the 1.12 docs on the home
page.
Signed-off-by: Maureen Helm<EMAIL_ADDRESS>

Codecov Report

Merging #8267 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #8267   +/-   ##
=======================================
  Coverage   64.53%   64.53%
=======================================
  Files         420      420
  Lines       40117    40117
  Branches     6762     6762
=======================================
  Hits        25891    25891
  Misses      11108    11108
  Partials     3118     3118

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 ed3ea06...fed5755. Read the comment docs.


vuex-class support

I am not sure how this should be working.
I have this component:
<script lang="ts">
import Vue from 'vue'
import Component from 'nuxt-class-component'
import { Action } from 'vuex-class'

import { CommentType } from '~/types'

// @vue/component
@Component({})
/**
 * Stateless component.
 * The primary idea of this component is to illustrate,
 * how `@Action` decorator works.
 */
export default class ActionBar extends Vue {
  @Action('fetchComments')
  /**
   * Typed alias to Vuex `fetchComments` action.
   */
  fetchComments!: () => Promise<CommentType[]>
}
</script>

Which uses vuex-class to type actions from vuex.
When documentation is generated it defines fetchComments as a Prop. And I am not sure if it is a correct thing to do. Since fetchComments is an action from vuex.

What do you think?

This bug was caused by https://github.com/vuese/vuese/commit/e76655c10be862c05225f00378afc16a555dc8fc commit, I have fixed it and added a test case.
Again<EMAIL_ADDRESS>


[FEAT][TODO] Add TailwindCSS on top of MUI v5

I think it would be really nice if we could start implementing Tailwind CSS on top of MUI.
https://mui.com/base-ui/guides/working-with-tailwind-css/
https://www.youtube.com/watch?v=QQIfuMlA6TI

Hi @gbowne1, please assign this issue to me.

Any collaborator and maintainer could theoretically assign themselves to a issue and just to make you aware, that is completely fine with me. I've assigned you this task.  Thank you :)

Oh, I didn't know that. Still new to this collaborator thing 🤣.

It's ok.  You also have direct push access, but I still prefer collaborators do PR's.
I really need to revise the collaboration/contributing guide.


Where do we find the app://??

[Enter feedback here]
So the documentation linked in the comments in the example code
            // For your custom apps, you will need to register them with Azure AD yourself.
            // See https://docs.microsoft.com/powerapps/developer/data-platform/walkthrough-register-app-azure-active-directory
            var clientId = "<guid>";
            var redirectUri = "app://<guid>";   <<<< ---- Where do we get this from, it's never explained, in the link above.

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

ID: 61e6ca03-5e73-39aa-c2f0-2df8aa19cad9
Version Independent ID: 4e6eb61b-e550-a1cb-6862-2ba4e9e07702
Content: Quick Start: Web API sample (C#) (Microsoft Dataverse) - Power Apps
Content Source: powerapps-docs/developer/data-platform/webapi/quick-start-console-app-csharp.md
Service: powerapps
Sub-service: dataverse-developer
GitHub Login: @divka78
Microsoft Alias: dikamath

We found this! :-)
In the app registration, click authentication, click the "+ Add a platform" then click Mobile, and desktop applications.

Please update the docs to explain this, it's very confusing when you don't know how.

Thanks for your comment, @RamblingGeekUK. This issue has been assigned to the doc author for review.

@RamblingGeekUK You should read the referred to documentation about Azure AD app registration. The clientId and redirectUri are taken from that registration.
https://docs.microsoft.com/powerapps/developer/data-platform/walkthrough-register-app-azure-active-directory

@phecke Thanks for the reply.  I did read the doc and the link you provided, however I feel they are misleading/confusing as the example code has app: the document has

Which isn't in the same format.  That article should explain that you need to click on app registration > Authentication > "+ Add Platform" > Mobile and Desktop applications, which mentions Console, even then it's not clean you can enter "app://" and nowhere explains that you generate your own or at least that's my understanding as it's never explained from what I have read and seen.
I found this confusing and frustrating, maybe it does exisit and I missed it, however the documentation imho shouldn't leave yu wondering or confused.
Thanks for your time.


ICE on thread_local check

It seems I'm quite lucky with bugs, found another ICE. How to reproduce:
git clone https://github.com/Amanieu/thread_local-rs.git
$cg_clif_dir/cargo.sh check

Error
error: internal compiler error: src/librustc_mir/monomorphize/collector.rs:754: cannot create local mono-item for DefId(15:20 ~ lazy_static[96a2]::lazy[0]::{{impl}}[0]::get[0])

thread 'rustc' panicked at 'Box<Any>', src/librustc_errors/lib.rs:904:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports

note: rustc 1.44.0-nightly (7f3df5772 2020-04-16) running on x86_64-unknown-linux-gnu

note: compiler flags: -Z panic-abort-tests -Z codegen-backend=/home/kitsu/dev/rustc_codegen_cranelift/target/release/librustc_codegen_cranelift.so -C debuginfo=2 -C incremental -C panic=abort -C debuginfo=2 --crate-type lib

note: some of the compiler flags provided by cargo are hidden

error: aborting due to previous error

error: could not compile `thread_local`.

Backtrace
  12: std::panicking::begin_panic
  13: rustc_errors::HandlerInner::bug
  14: rustc_errors::Handler::bug
  15: rustc_middle::util::bug::opt_span_bug_fmt::{{closure}}
  16: rustc_middle::ty::context::tls::with_opt::{{closure}}
  17: rustc_middle::ty::context::tls::with_opt
  18: rustc_middle::util::bug::opt_span_bug_fmt
  19: rustc_middle::util::bug::bug_fmt
  20: rustc_mir::monomorphize::collector::should_monomorphize_locally
  21: <rustc_mir::monomorphize::collector::MirNeighborCollector as rustc_middle::mir::visit::Visitor>::visit_terminator_kind
  22: rustc_mir::monomorphize::collector::collect_items_rec
  23: rustc_mir::monomorphize::collector::collect_items_rec
  24: rustc_mir::monomorphize::collector::collect_items_rec
  25: rustc_mir::monomorphize::collector::collect_items_rec
  26: rustc_mir::monomorphize::collector::collect_items_rec
  27: rustc_mir::monomorphize::collector::collect_items_rec
  28: rustc_mir::monomorphize::collector::collect_items_rec
  29: rustc_mir::monomorphize::collector::collect_items_rec
  30: rustc_mir::monomorphize::collector::collect_items_rec
  31: rustc_mir::monomorphize::collector::collect_items_rec
  32: rustc_session::utils::<impl rustc_session::session::Session>::time
  33: rustc_mir::monomorphize::collector::collect_crate_mono_items
  34: rustc_mir::monomorphize::partitioning::collect_and_partition_mono_items
  35: rustc_middle::ty::query::<impl rustc_query_system::query::config::QueryAccessors<rustc_middle::ty::context::TyCtxt> for rustc_middle::ty::query::queries::collect_and_partition_mono_items>::compute
  36: rustc_middle::dep_graph::<impl rustc_query_system::dep_graph::DepKind for rustc_middle::dep_graph::dep_node::DepKind>::with_deps
  37: rustc_query_system::dep_graph::graph::DepGraph<K>::with_task_impl
  38: rustc_query_system::query::plumbing::get_query
  39: rustc_codegen_cranelift::driver::aot::run_aot
  40: rustc_codegen_cranelift::driver::codegen_crate
  41: <rustc_codegen_cranelift::CraneliftCodegenBackend as rustc_codegen_ssa::traits::backend::CodegenBackend>::codegen_crate
  42: rustc_interface::passes::start_codegen
  43: rustc_middle::ty::context::tls::enter_global
  44: rustc_interface::queries::Queries::ongoing_codegen
  45: rustc_interface::interface::run_compiler_in_existing_thread_pool
  46: scoped_tls::ScopedKey<T>::set
  47: rustc_ast::attr::with_globals

Similar issue comes from lazy_static crate with cargo.sh check --tests

Strange. The ICE happens before cg_clif does any actual work in a query that cg_llvm also calls.

cargo.sh test for lazy_static compiles, but all tests fail (because of #969?). Also, if run cargo.sh test --features spin_no_std compilation fail with the following error:
error[E0460]: found possibly newer version of crate `core` which `spin` depends on
 --> lazy-static.rs/src/core_lazy.rs:8:1
  |
8 | extern crate spin;
  | ^^^^^^^^^^^^^^^^^^
  |
  = note: perhaps that crate needs to be recompiled?
  = note: the following crate versions were found:
          crate `core`: toolchains/nightly-2020-04-17-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-8665d05dd7401b76.rlib
          crate `spin`: lazy-static.rs/target/x86_64-unknown-linux-gnu/debug/deps/libspin-abd3f734466a789e.rlib

I guess that is unrelated to problem above

Yes, I think that is #969.

Current repro:
#[macro_use]
extern crate lazy_static;

lazy_static! {
    static ref THREAD_ID_MANAGER: () = ();
}

pub struct ThreadId(usize);
impl ThreadId {
    fn new() -> ThreadId {
        &*THREAD_ID_MANAGER;
        ThreadId(0)
    }
}
thread_local!(pub static THREAD_ID: ThreadId = ThreadId::new());

Current repro:
//- lazy_static/lib.rs
pub struct Lazy;

impl Lazy {
    pub fn get(&'static self) -> &() {
        loop {}
    }
}

unsafe impl Sync for Lazy {}

//- thread_local/lib.rs
extern crate lazy_static;

#[allow(non_camel_case_types)]
struct THREAD_ID_MANAGER_TYPE;

static THREAD_ID_MANAGER: THREAD_ID_MANAGER_TYPE = THREAD_ID_MANAGER_TYPE;
impl std::ops::Deref for THREAD_ID_MANAGER_TYPE {
    type Target = ();
    fn deref(&self) -> &() {
        static LAZY: lazy_static::Lazy = lazy_static::Lazy;
        LAZY.get()
    }
}

thread_local!(pub static THREAD_ID: () = {
    &*THREAD_ID_MANAGER;
});

Minimal repro:
//- lazy_static/lib.rs
pub fn get() {
    loop {}
}

//- thread_local/lib.rs
extern crate lazy_static;

pub const THREAD_ID: fn() = lazy_static::get;

Opened https://github.com/rust-lang/rust/issues/71293.

The problem was that I hadn't implemented check mode yet.


[libcap] Build error on arm64-linux

Package<EMAIL_ADDRESS>Host Environment

Host: arm64-linux
Compiler: GNU 11.3.0
vcpkg-tool version: 2999-12-31-unknownhash
vcpkg-scripts version: ce1916404 2024-03-30 (21 hours ago)

To Reproduce
vcpkg install
Failure logs
-- Downloading https://git.kernel.org/pub/scm/libs/libcap/libcap.git/snapshot/libcap-3c7dda330bd9a154bb5b878d31fd591e4951fe17.tar.gz -> libpcap-2.69.tar.gz...
[DEBUG] To include the environment variables in debug output, pass --debug-env
[DEBUG] Trying to load bundleconfig from /media/psf/Source/test/vcpkg/vcpkg-bundle.json
[DEBUG] Failed to open: /media/psf/Source/test/vcpkg/vcpkg-bundle.json
[DEBUG] Bundle config: readonly=false, usegitregistry=false, embeddedsha=nullopt, deployment=Git, vsversion=nullopt
[DEBUG] Metrics enabled.
[DEBUG] Feature flag 'binarycaching' unset
[DEBUG] Feature flag 'compilertracking' unset
[DEBUG] Feature flag 'registries' unset
[DEBUG] Feature flag 'versions' unset
[DEBUG] Feature flag 'dependencygraph' unset
[DEBUG] 1000: execute_process(curl --fail -L https://git.kernel.org/pub/scm/libs/libcap/libcap.git/snapshot/libcap-3c7dda330bd9a154bb5b878d31fd591e4951fe17.tar.gz --create-dirs --output /media/psf/Source/test/vcpkg/downloads/libpcap-2.69.tar.gz.292231.part)
[DEBUG] 1000: cmd_execute_and_stream_data() returned 22 after  1220708 us
error: Failed to download from mirror set
error: https://git.kernel.org/pub/scm/libs/libcap/libcap.git/snapshot/libcap-3c7dda330bd9a154bb5b878d31fd591e4951fe17.tar.gz: curl failed to download with exit code 22
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

curl: (22) The requested URL returned error: 404

[DEBUG] /media/psf/Source/test/vcpkg/buildtrees/_vcpkg/src/vcpkg-tool-2024-03-14/src/vcpkg/base/downloads.cpp(1031):
[DEBUG] Time in subprocesses: 1220708us
[DEBUG] Time in parsing JSON: 5us
[DEBUG] Time in JSON reader: 0us
[DEBUG] Time in filesystem: 187us
[DEBUG] Time in loading ports: 0us
[DEBUG] Exiting after 1.2 s (1221699us)

CMake Error at scripts/cmake/vcpkg_download_distfile.cmake:32 (message):

      Failed to download file with error: 1
      If you are using a proxy, please check your proxy setting. Possible causes are:

      1. You are actually using an HTTP proxy, but setting HTTPS_PROXY variable
         to `https://address:port`. This is not correct, because `https://` prefix
         claims the proxy is an HTTPS proxy, while your proxy (v2ray, shadowsocksr
         , etc..) is an HTTP proxy. Try setting `http://address:port` to both
         HTTP_PROXY and HTTPS_PROXY instead.

      2. If you are using Windows, vcpkg will automatically use your Windows IE Proxy Settings
         set by your proxy software. See https://github.com/microsoft/vcpkg-tool/pull/77
         The value set by your proxy might be wrong, or have same `https://` prefix issue.

      3. Your proxy's remote server is out of service.

      If you've tried directly download the link, and believe this is not a temporary
      download server failure, please submit an issue at https://github.com/Microsoft/vcpkg/issues
      to report this upstream download server failure.

Call Stack (most recent call first):
  scripts/cmake/vcpkg_download_distfile.cmake:270 (z_vcpkg_download_distfile_show_proxy_and_fail)
  buildtrees/versioning_/versions/libcap/23bb9f2743e684bacba57b8cc8a931756f0e7447/portfile.cmake:1 (vcpkg_download_distfile)
  scripts/ports.cmake:175 (include)

Additional context
vcpkg.json
{
  "name": "example",
  "version-string": "0.0.1",
  "dependencies": [
    {
      "name": "gtest",
      "version>=": "1.11.0"
    },
    {
      "name": "opencv",
      "version>=": "4.5.5"
    },
    {
      "name": "pcl",
      "version>=": "1.14.0"
    },
    {
      "name": "eigen3",
      "version>=": "3.4.0#4"
    },
    {
      "name": "opencascade",
      "version>=": "7.8.0"
    },
    {
      "name": "libuvc",
      "version>=": "0.0.7"
    }
  ],
  "builtin-baseline": "ce1916404fc6f2b645f419a6d47b7ebafe686582"
}

#37851

The upstream response is "503 Service Temporarily Unavailable"

Duplicate with #37851