update repo-infra to v0.2.4

What type of PR is this?
/kind cleanup
What this PR does / why we need it:

update repo-infra to v0.2.4
follow up of https://github.com/kubernetes-sigs/release-utils/pull/22

/assign @justaugustus @saschagrunert @Verolop @puerco @xmudrii
cc @kubernetes-sigs/release-engineering
Which issue(s) this PR fixes:
None
Special notes for your reviewer:
Does this PR introduce a user-facing change?

NONE

/lgtm


[WORK IN PROGRESS] Adds new finetuning pipelines + other fixes

Adds new finetuning models
Prepares one of the final working Moabb pipeline

Hi @Drew-Wagner This PR is ready once you are done with reviewing. Feel free to merge :)
Overall the TGNN model gets good baseline results and we can use it as Encoder for the transformer.


add new sharpziplib assembly name to ignore list - Issue #2095

Summary
Added the updated SharpZipLib assembly name to the ignore list of assemblies to scan for Dnn features and extension points.
Details
In v9.2.0 the assembly was updated but the CanScan function wasn't. This pull request updates Dnn to be aware of both assemblies since in v9.2.1 we are attempting to solve the breaking change for any module developers who were directly referencing SharpLibZip

#2118


JOTTing down some thoughts

I see you are using bash variables in this. Is there a potential hazard involved in this if it overwrites variables used by other programs?
Also, have you considered rewriting it in Haskell?

Agreed, I also believe that the jott.cfg variables need to be validated.
Furthermore, maybe not storing the glossary URL in a variable. No harm in hard-coding it into the curl request.


Create a wiki page for the end to end tests

There should be a wiki page explaining the structure of end to end tests, how to run them and how to go about adding new tests.

Added a comprehensive initial wiki page here- https://github.com/Azure/azure-functions-python-worker/wiki/End-to-End-publishing-tests


More logging for /rows

I'd like to understand better why specific requests take so long (eg refinedweb, the-stack).
Locally they work fine but take too much time in prod.

Codecov Report
Patch coverage has no change and project coverage change: -5.68 :warning:

Comparison is base (1528ec9) 90.29% compared to head (a8060bf) 84.62%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1485      +/-   ##
==========================================
- Coverage   90.29%   84.62%   -5.68%
==========================================
  Files         189       39     -150
  Lines       11534     1047   -10487
==========================================
- Hits        10415      886    -9529
+ Misses       1119      161     -958

Flag
Coverage Δ

jobs_cache_maintenance
?

jobs_mongodb_migration
84.62% <ø> (ø)

libs_libcommon
?

services_admin
?

services_api
?

services_rows
?

services_worker
?

Flags with carried forward coverage won't be shown. Click here to find out more.
see 150 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Hot restart doesn't work

After pressing R I get this exception:
        hot restart failed to complete: _flutter.runInView: (-32000) Could not run configuration in engine.
        #0      new _OutstandingRequest (package:vm_service/src/vm_service.dart:265:34)
        #1      VmService._call.<anonymous closure> (package:vm_service/src/vm_service.dart:1771:25)
        #2      VmService._call (package:vm_service/src/vm_service.dart:1783:8)
        #3      VmService.callServiceExtension (package:vm_service/src/vm_service.dart:1733:14)
        #4      VmService.callMethod (package:vm_service/src/vm_service.dart:1716:12)
        #5      FlutterVmService.callMethodWrapper (package:flutter_tools/src/vmservice.dart:501:28)
        #6      FlutterVmService.runInView (package:flutter_tools/src/vmservice.dart:580:11)
        <asynchronous suspension>
        #7      Future.wait.<anonymous closure> (dart:async/future.dart:518:21)
        <asynchronous suspension>
        #8      HotRunner._launchInView (package:flutter_tools/src/run_hot.dart:588:5)
        <asynchronous suspension>
        #9      Future.wait.<anonymous closure> (dart:async/future.dart:518:21)
        <asynchronous suspension>
        #10     HotRunner._launchFromDevFS (package:flutter_tools/src/run_hot.dart:608:5)
        <asynchronous suspension>
        #11     HotRunner._restartFromSources (package:flutter_tools/src/run_hot.dart:709:5)
        <asynchronous suspension>
        #12     HotRunner._fullRestartHelper (package:flutter_tools/src/run_hot.dart:830:16)
        <asynchronous suspension>
        #13     HotRunner.restart (package:flutter_tools/src/run_hot.dart:770:38)
        <asynchronous suspension>
        #14     TerminalHandler._commonTerminalInputHandler (package:flutter_tools/src/resident_runner.dart:1790:40)
        <asynchronous suspension>
        #15     TerminalHandler.processTerminalInput (package:flutter_tools/src/resident_runner.dart:1830:7)
        <asynchronous suspension>

        Error connecting to the service protocol: Exception: connection to device ended too early```

App still works, but devtools gets disconnected.
`patrol_cli` hangs up after this and I have to ctrl+c to quit.

Closing, doesn't occur after rebase on master


setContent Text prinded twice

Main.kt
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableIntStateOf
import androidx.compose.runtime.setValue
import com.jakewharton.mosaic.MosaicScope
import com.jakewharton.mosaic.runMosaic
import com.jakewharton.mosaic.ui.Text
import kotlinx.coroutines.delay

suspend fun main() = runMosaic {
    setContent {
        Text("The count is: 0")
    }
}

motule.yaml
product: jvm/app
dependencies:
#  - com.googlecode.lanterna:lanterna:3.1.2
  - com.jakewharton.mosaic:mosaic-runtime:0.12.0

settings:
  compose: enabled

In both 0.12.0 and 0.13.0 versions.
Maybe its because of Linux.

Screencast from 2024-07-31 06-00-07.webm
Also it looks like the terminal is not cleared

The IntelliJ built-in terminal does not respect ANSI control characters and will not work.
I'm not sure what the other terminal is, but it appears that it does not respect them either.
On Linux I would try Ghostty, Kitty, Alacritty, or even xterm.

Oh you're running within Gradle. Gradle strips ANSI control characters. Run the resulting jar manually and you should see it work.

Thanks, now it working

It could be helpful to add that info to readme (dont use gradle to run)

Yes, I will document this.


PatternFly chart update

PatternFly chart update and a couple other fixes

Added unique IDs for chart legend labels
Clone start date so reference is not changed
Updated demo contract dates

Codecov Report

Merging #58 (d6c0065) into main (d4089a6) will decrease coverage by 0.03%.
The diff coverage is 0.00%.

Additional details and impacted files

@@           Coverage Diff            @@
##            main     #58      +/-   ##
========================================
- Coverage   9.01%   8.98%   -0.04%
========================================
  Files         30      30
  Lines        987     991       +4
  Branches     149     149
========================================
  Hits          89      89
- Misses       898     902       +4

Impacted Files
Coverage Δ

...mponents/charts/breakdown-chart/BreakdownChart.tsx
0.00% <0.00%> (ø)

...outes/components/charts/trend-chart/TrendChart.tsx
0.00% <0.00%> (ø)

src/routes/overview/OverviewHeader.tsx
0.00% <0.00%> (ø)

...ents/committed-spend-trend/CommittedSpendTrend.tsx
0.00% <0.00%> (ø)

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 d4089a6...d6c0065. Read the comment docs.


Add metadata field to audit events

This is our equivalent of the upstream https://github.com/cloudfoundry-community/go-cfclient/pull/238. That is made from my personal repo.
👀 Merge (rebase) https://github.com/alphagov/paas-go-cfclient/pull/1 first to make this PR small.
Our Event type represents items from Cloud Controller's /v2/events endpoint. There is a metadata field missing from our Event type. This field is important because it gives more context on what each event did. This PR adds that missing field.
I used map[string]interface{} because the values can have varying types. This is what the CF CLI did.
The test had to workaround that neither ShouldEqual or ShouldResemble correctly compared that type.

https://github.com/alphagov/paas-go-cfclient/pull/2/commits/c14b8e0d65c9f22765846687597a3d8e30d5ac00 LGTM but this should be rebased after #1

@tlwr rebased 🚀


Implement API endpoint to connect to Twitch websocket

We need an endpoint that is the workhorse of the Twitch integration. It needs to do the following:

Fetch an OAuth token from the authorization code
GET the Twitch channel ID for the given authorization code (from the user who authorized it)
Store the channel ID as a primary key for the record (and the associated OAuth details), as well as a connection status.
Spawn a websocket connection to the specific channel topic

Note: The websocket client code should update the connection status of the record for a given channel on the first ping response? Not sure if that's the best way to do it.

A harder part of this is scaling out. Websocket management will be tricky.


On using /react , Error:Error in callchat : Unexpected token 'A' , "An intern" is not valid JSON.

On using /react , Error:Error in callchat : Unexpected token 'A' , "An intern" is not valid JSON.

Thanks for this report. Confirmed I saw this before. Will look into it.

@vaibhavard Are you able to reproduce this? I have not been able to reproduce - it was probably an OpenAI error (two days ago the API was misbehaving). Let me know or I'll close this

@enricoros Yes , still getting the same error (though only on gpt-4 , other models seem to work )
How can i view the full  trace of the problem? Also , is it related to invalid api response? -- Never encountered while directly using api...
Note: I modified prompt.ts and then get this error , but only sometimes on particular questions and slight modifications remove the error and sometimes cause the error....
Modified prompt.ts:

You will receive a Question from the User.
In order to answer any Question, you run in a loop of  Action, PAUSE, Observation.
If from the  Observation you can derive the answer to the Question, you MUST also output an "Answer: ", followed by the answer and the answer ONLY, without explanation of the steps used to arrive at the answer.
You will use "Action: " to run one of the actions available to you - then return PAUSE. NEVER continue generating "Observation: " or "Answer: " in the same response that contains PAUSE.
"Observation" will be presented to you as the result of previous "Action".
If the "Observation" you received is not related to the question asked, or you cannot derive the answer from the observation, answer the question in detail , but only from your own data.

ALWAYS assume today as {{currentDate}} when dealing with questions regarding dates.
Never mention your knowledge cutoff date.ALWAYS Provide Valid website Links to the info asked in your answer.Always Answer In DETAIL.

Your available "Actions" are:

google:
e.g. google: Django
Returns google custom search results
ALWAYS look up on google when the question is related to live events or factual information, such as sports, news, or weather.

calculate:
e.g. calculate: 4 * 7 / 3
Runs a calculation and returns the number - uses Python so be sure to use floating point syntax if necessary

wikipedia:
e.g. wikipedia: Django
Returns a summary from searching Wikipedia

ONLY look things up on Wikipedia when explicitly asked to do so.

Example session:

Question: What is the capital of France?
Action: wikipedia: France

You will be called again with the following, along with all previous messages between the User and You:

Observation: France is a country. The capital is Paris.

You then output:
Answer: The capital of France is Paris.It is the largest city in France and serves as the country's political, cultural, and economic center.
Is there anything else you would like to ask?

Added extensive UI messages to explain the error in case it happens again (and more messages on the console).
Let me know if this shows up again.

Adding demo of ReAct for archival purposes.
https://github.com/user-attachments/assets/b0e40abf-8c73-49f5-b62f-4667df004268


Standardise the property label instead title

Description
@joepavitt  @Steve-Mcl
As this related issue is only mentioned about the docs update but as per my understanding it should update all the areas of gauge node related with title but this will lead to a problem with the existing gauges that currently use title property in NR flows.

Therefore the dashboard users have to update their flows otherwise I should limit this PR just for a one line docs update

Related Issue(s)
https://github.com/FlowFuse/node-red-dashboard/issues/1284
Checklist

[x] I have read the contribution guidelines
[ ] Suitable unit/system level tests have been added and they pass
[x] Documentation has been updated

[ ] Upgrade instructions
[ ] Configuration details
[ ] Concepts

[ ] Changes flowforge.yml?

[ ] Issue/PR raised on FlowFuse/helm to update ConfigMap Template
[ ] Issue/PR raised on FlowFuse/CloudProject to update values for Staging/Production

Labels

[ ] Includes a DB migration? -> add the area:migration label

The only request was to support ui_update.label in the dynamic properties functionality, and for thag to then, under the covers, update the title property.
The title field doesn't need to change, this should require no changes from the user.

The other option here is that we keep these changes, do move forward with label, but support injection of config.label if a config.title is present in the js file when the node is registered. This will prevent the need for users to manually update.
@Steve-Mcl can talk you through that process if required.

The title field doesn't need to change, this should require no changes from the user.

This is the preferred direction IMO.  It will be seamless to the user. We will continue to use title in the flows and continue to support ui_update.title (but depreciate it) and support ui_update.label going forwards.  Under the hood, ui_update.title and ui_update.label should be stored in the datastore as the same prop (I propose that prop is label). I also propose we do not mention title in the docs (even though it will continue to work as before)
Gayan and I have discussed this. If I get time today i will make the changes to this branch/PR otherwise, Gayan is to pick it up in the morning.
@gayanSandamal let me know is anything needs further clarification please.  Ta.

Approved. Merged only after tests pass

looks good - only the usual ✖  widgets/control.spec.js    fail


Adding logstash references/different use cases

Hey,
I was thinking it would be worth while to add a reference folder for logstash in docker-elk, which can display how one can connect to different data sources. This can act as different use cases for docker-elk and logstash.
For example, imagine if someone was using docker-elk and they wanted to connect to a database. It would be really nice if there was a folder to the effect of "logstash-references" in which they can open up and get direction on how to connect to a database using logstash, which would essentially make their workflow very efficient, imho.
I am still thinking this through, but thats the initial thought I had.
Any other thoughts on this?

The question had already been raised when @rgroten opened the PR #13.
My initial thoughts on this project were the following:

Easy to use, basically clone and run
Mininum changes to official images in order to work

I feel that adding a folder containing logstash-references could bloat the project. Maybe a wiki or external reference...
The project is open, let's debate about this, what do you guys think about it?

@navdeep-G Are you thinking these references are in the form of sample config file(s)?  Or more instructional?  I think samples would fit in the project ok, instructions would be better for a wiki like @deviantony said.

@rgroten I was thinking sample config file(s) for now.

+1 for examples

I really like the simplicity of this docker compose setup and how readable the readme.md is, which was the reason I chose to use this docker image.
I'm working on doing a basic ssl setup with self-signed certificates in a fork: https://github.com/nilsnh/docker-elk-ssl Would happily contribute a short guide back to this project either in the readme or in a wiki page.

Hi, I have added support for rabbitMQ here https://github.com/vladoatanasov/docker-elk
Maybe we can set up a list of the forks that extend functionality?

If people feel that they need examples I suggest we create wiki pages for more advanced setups like this one, instead of creating more branches and making this project complex to maintain.

I started populating the wiki with some information: https://github.com/deviantony/docker-elk/wiki/External-applications
@navdeep-G (and everybody else who still follows that issue) if you have a scenario in mind that could be a candidate for a wiki page feel free to talk about it here.

Do you think something like this https://www.elastic.co/guide/en/beats/packetbeat/current/packetbeat-sample-dashboards.html would be a candidate? I'm using the x-elk branch and being able to load the sample dashboards would be helpful. I'm starting from scratch with ELK and am pretty green with things, can do some docker and compose but not nearly as proficient as I'd like to be. (And would like to contribute back someday to this repo.)

It seems like Elastic also distributes images for their Beats products: https://www.elastic.co/guide/en/beats/metricbeat/current/running-in-container.html 💪
I successfully imported the dashboards like this:
docker run --rm --network dockerelk_elk docker.elastic.co/beats/metricbeat:5.4.0 \
  ./scripts/import_dashboards \
  -es http://elasticsearch:9200 \
  -user elastic \
  -pass changeme

Could you try it and confirm it works for you as well? If yes I can certainly add it to the wiki.

Yeah, that seems to work just perfectly! Thanks!

I have Twitter template in json format, and is stored in my host. I couldn't figure out how I can map it to logistash container. Using following entries, I got this error: [2019-05-09T14:15:38,783][ERROR][logstash.agent           ] Failed to execute action {:action=>LogStash::PipelineAction::Create/pipeline_id:main, :exception=>"LogStash::ConfigurationError", :message=>"Expected one of #, input, filter, output at line 33, column 1
entry in docker-compose.yml:
    volumes:
      - ./logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml:ro
      - ./logstash/pipeline:/usr/share/logstash/pipeline:ro

entry in logstash.conf:
output {
        elasticsearch {
                hosts => "localhost:9200"
                index => "twitter_index"
                template => "/usr/share/logstash/pipeline/twitter_template/twitter_template.json"
                template_name => "twitter"
                template_overview => true
        }
}

Is anyone can give an example of using twitter template?

It was really nice, it was up and running in a couple of seconds
But I'm facing issues in adding filebeat to it. can you please tell me how to add filebeat in this ?

@Narendranath2 let's take this conversation to Gitter (first badge at the top of the README) since it's vastly unrelated to the topic of this issue.
Thanks

This discussion has been inactive for quite a while, and the latest comments have been mostly unrelated to the original topic. I'm not sure whether docker-elk should be the place for documenting all possible ways to use Logstash, but if there is something we can help with, we will.


Fix typo: licence ->license

Reduce next warnings during parent project build:
[INFO] big.js has no license file.
[INFO] big.js has a "license" property.

The noun is "licence" here in the UK, so I don't want to change that spelling.
What build tool is giving the warning?

In my node_module folder there are:

File name (case insensitive)
Count

LICENSE
477

LICENSE.md
43

LICENSE.txt
14

LICENSE-*
35

LICENCE
3

LICENCE.md
0

LICENCE.txt
0

LICENCE-*
0

So, big.js is not the single UK library!


Azimuth FM rate mismatch mitigation

This PR adds the functionality of calculating the azimuth FM rate mismatch mitigation described in ETAD ATBD (doc ID: ETAD-DLR-DD-0008), available here
Highlights of changes

A new dataclass BurstExtendedCoeffs was added to s1_annotation.py. That is necessary to (linear) interpolate the FM rate and Doppler centroid along azimuth
A new member extended_coeffs_fm_dc was added to Sentinel1BurstSlc
A new method az_fm_rate_mismatch_mitigation() was added to Sentinel1BurstSlc, with auxiliary methods _evaluate_polynomial_array() and _latlon_to_ecef()

TODO:
- [ ] Replace _latlon_to_ecef() to equivalent ISCE3 function

[x] Make sure it can take DEMs in arbitrary projections such as UTM and PS
[x] Check if isce3.io.Raster can be generated on memory to avoid disk write

Regarding the LLH -> XYZ computation in the comment here: https://github.com/opera-adt/s1-reader/pull/80#discussion_r1036533764
Did some test to compare the performance. Looks like the numpy-based computation works several times faster than the ISCE3-based one.
Also checked the output values from the two methods, and there was no practical difference between them (<< 1.0e-9 meters).
So I will stick with the current implementation.

The figure below is the comparison of our calculation, the reference ETAD, and the difference (IW1). The jupyter notebook and the sample data is available upon request. Below are the detail about the test data.
SAFE file: S1A_IW_SLC__1SSV_20160805T230627_20160805T230654_012471_0137E2_B36E
Orbit file: S1A_OPER_AUX_POEORB_OPOD_20210313T055556_V20160804T225943_20160806T005943.EOF
DEM: Copernicus DEM, in EPSG3413 (cropped version of the .vrt version in the internal server)
ETAD: S1A_IW_ETA__AXSV_20160805T230627_20160805T230654_012471_0137E2_91C6

Based on the information in the ETAD data, I reconstructed the radar grid as close as their correction grid
The reconstructed radargrid was provided into the implemented function in this PR.
We can see some terrain-like features in the difference plot (the 3rd column). Based on their pattern, I think that is caused by either difference in DEM resampling method, and/or difference in the starting time of the radargrid.

@seongsujeong ETAD provides both the radar grid times and the geodetic coordinates of each point in the grid itself. Have you compared that grids with yours?
Regarding the DEM, I thing that ETAD uses GLO-90 (DGED). Are you using the same?


The freebase API do not return the response

A.Cedraro on 5 Nov 2014 at 8:45:
What steps will reproduce the problem?
1. freebaseService, err := freebase.New(oauthHttpClient)
2. search := freebaseService.Search().Query(query)
3. err := search.Do()

What is the expected output? What do you see instead?
no response is returned, only the error

What version of the product are you using? On what operating system?
I'm looking at the tip

Please provide any additional information below.

Successfully auto-migrated from code.google.com:
https://code.google.com/p/google-api-go-client/issues/detail?id=69

This should be fixed by: https://code-review.googlesource.com/#/c/1831
Leaving open.


Help With Fees - Call CCD with different URL when application is HWF

Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Test Configuration:

Hardware:
O/S and version:
JDK:

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

CCD changes are now live. Agreed with BA to merge. Merging.


Destroy already initialized widget

Please how do I remove an already initialized element?
$('#datetimepicker').data("DateTimePicker").destroy() doesn't work and throws Cannot read property 'destroy' of undefined

Sorry I figured it out. The destroy method was available on dp.change


Build error for frameworks importing Alamofire through swift package manager

Created to discuss https://github.com/Alamofire/Alamofire/issues/1544#issuecomment-256215728

Could you provide some more detail here @AndrewSB? What exactly would you like to discuss? What exactly is holding you up from the Moya perspective?

For sure @cnoon!
In short, we have a https://github.com/Moya/Moya/tree/swift-package-manager branch, which is ready to go once we have Alamofire being pulled down & building.
The instructions in #1544 for spm were focused on projects that were executables, and not app projects (I think the comments at the bottom of the issue say the same thing).
I haven't tested the integration for a couple weeks now, but assuming nothing has changed, swift package build doesn't successfully pull down & build alamofire


Switch the linter from golint to revive.

golint is deprecated and archived, golangci-lint now recommends
switching to revive. There are no new lint errors, so it's a simple
bump.
Signed-off-by: Dan Lorenc<EMAIL_ADDRESS>

Ref https://github.com/tektoncd/plumbing/pull/882

/lgtm

/lgtm


FilterEXtensions

Tested locally, both netkan and inflated ckan. Works fine.

#rebuild

#rebuild

#rebuild

Jenkins is misbehaving I think, I'm merging anyway. Blame me if things happen.


🔧(helm) improve volumes and ingress configurations

Purpose
We need more flexibility to better integrate Ralph deployment using the official Helm Chart.
Proposal
Integrate @rprin changes from #437

@jmaupetit I force-pushed because I rebase to fix conflict on the Changelog


Add a BDD style 'EXPECT' clause as in GIVEN/EXPECT/WHEN to be aligned with mock frameworks constraints

Most, if not all, mock frameworks out there require to declare the expected callbacks BEFORE executing the stimulus on the SUT.
This defers from the regular pattern of GIVEN/WHEN/THEN where the expectations are checked AFTER the stimulus.
So to be more readable, one would prefer to complete the pattern with something like GIVEN[/EXPECT]/WHEN[/THEN].
This can be achieved by adding a new define like this:
#define EXPECT(name)     DOCTEST_SUBCASE("  Expect: " name)
#define AND_EXPECT(name) DOCTEST_SUBCASE("     And: " name)

Example of usage with gmock:
SCENARIO("example of mock usage") {
  GIVEN("an initial state") {
     NaggyMock<MyMock> myMock;
     MyClass sut(myMock);
     EXPECT("my mock callback to be called once") {
       EXPECT_CALL(myMock, myCallback());
       WHEN("the SUT is stimulated") {
         sut.callMeMaybe();
      }
    }
  }
}

This and the other BDD-related issue will go into the next release. Thanks for reporting!

FYI I never implemented this in the next release as I had said, but if it's important for someone they can open a PR.

Ah sorry, I took you on your words there ;)
To clarify this issue, it is a feature request to add support for testing that a function is called a certain number of times as in gtest (this is not BDD think, if I understand correctly?).
Seems more difficult than just adding a new macro.

I think @boutblock meant simply adding the defines - hopefully doctest can be integrated with mock frameworks and not have to deal with many other things such as counting callback calls, but I haven't thought much about mocking tbh so this is a very surface level response.


Increase leaderboard count

Task/Issue URL: https://app.asana.com/0/488551667048375/525633294284205
Tech Design URL: N/A
Description:
This task updates the preexisting logic to wait until at least 30 sites are visited before displaying the tracker networks leaderboard on the Privacy Dashboard.
Note this was not quite the 1-liner expected. It introduces a new db table to support counting the total number of unique sites visited. Some lint tidy ups were also performed.
Steps to test this PR:

Visit 30 sites, preferably sites with lots of trackers (you may want to edit LEADERNOARD_MIN_DOMAINS in PrivacyDashboardViewModel.kt to reduce this to 10)
Open the dashboard
Ensure the leaderboard is displayed

Migration test:
Install this PR over a preexisting version of the app (whatever is in develop) to ensure the db migration succeeds.

Internal references:
Software Engineering Expectations
Technical Design Template

On iOS I made the number of sites dependent on the type of build (debug vs release) though mainly so that I could capture screenshots in the UI tests without having to visit 30 sites. Worth doing this on Android as well?

I think the debug option is a good idea although I don't think we need it yet and I'm not keen to refactor the unit tests to add it. How do you feel about us deferring that until we do screenshots? We can have a different flavor for screenshots and have the option in there.

@brindy I've made db migration changes so probably worth a re-review before I merge.


feat(dia-112): verified representation click tracking

Closes DIA-112

Does this include eigen as well? I'm only seeing ClickedVerifiedRepresentative but no TappedVerifiedRepresentative


Latest Alpine Linux does not support python2 dev/pip 3.11 worked

… for me

@Montana - Should that be done manually? even if you do that only the latest version of the python will be added right?
Won't it eventually break, we cannot expect the code written in a specific version of python to be compatible with all new versions right?


language:   "iface" keyword

Proposal: "iface" keyword
Author(s): Leszek Dubiel
Last updated: 2016-04-20
Abstract
Go's syntax is clean and compact, but still verbose. Keywords are short and idomatic -- func to define function, not a full word function, var for variable, const for constant.
Keyword interface doesn't fit that rules and because it's long, reading programs that use lots of interfaces is hard.
This proposal doesn't aim at reducing number of keystrokes, but to improve readability.
Background
Long interface keyword is very dominant:
func Map(f func(interface{}) interface{}, xs []interface{}) []interface{} {
	var ys = make([]interface{}, len(xs))
}
type shape interface {
		area() float64
}

This is easier to read:
func Map(f func(iface{}) iface{}, xs []iface{}) []iface{} {
	var ys = make([]iface{}, len(xs))
}
type shape iface {
		area() float64
}

More examples (http://bouk.co/blog/idiomatic-generics-in-go/):
func Map(in interface{}, fn func(interface{}) interface{}) interface{} {
	val := reflect.ValueOf(in)
	out := make([]interface{}, val.Len())

	for i := 0; i < val.Len(); i++ {
		out[i] = fn(val.Index(i).Interface())
	}

	return out
}

func Reduce(in interface{}, memo interface{}, fn func(interface{}, interface{}) interface{}) interface{} {
	val := reflect.ValueOf(in)

	for i := 0; i < val.Len(); i++ {
		memo = fn(val.Index(i).Interface(), memo)
	}

	return memo
}

func Filter(in interface{}, fn func(interface{}) bool) interface{} {
	val := reflect.ValueOf(in)
	out := make([]interface{}, 0, val.Len())

	for i := 0; i < val.Len(); i++ {
		current := val.Index(i).Interface()

		if fn(current) {
			out = append(out, current)
		}
	}

	return out
}

versus:
func Map(in iface{}, fn func(iface{}) iface{}) iface{} {
	val := reflect.ValueOf(in)
	out := make([]iface{}, val.Len())

	for i := 0; i < val.Len(); i++ {
		out[i] = fn(val.Index(i).Interface())
	}

	return out
}

func Reduce(in iface{}, memo iface{}, fn func(iface{}, iface{}) iface{}) iface{} {
	val := reflect.ValueOf(in)

	for i := 0; i < val.Len(); i++ {
		memo = fn(val.Index(i).Interface(), memo)
	}

	return memo
}

func Filter(in iface{}, fn func(iface{}) bool) iface{} {
	val := reflect.ValueOf(in)
	out := make([]iface{}, 0, val.Len())

	for i := 0; i < val.Len(); i++ {
		current := val.Index(i).Interface()

		if fn(current) {
			out = append(out, current)
		}
	}

	return out
}

Compatibility
Add iface keyword that is an alias of interface. After a few years have passed add compiler warning about obsolete long interface. It would be backwards compatibile.

iface is commonly used as an identifier today.  How do you propose adding it as a keyword while remaining backwards compatible?

You're right. Please tag this for "Go2" for far future.

I don't want this alias even for Go 2. How is using iface more readable
than interface? Humans don't read letter by letter....

Some people dislike long keywords (as function in Javascript). Go's keywords func, chan, var, go are short and elegant.

Humans don't read letter by letter, but it applies only to short words? I think short keywords allow easily extract them from code, while long ones need more attention. func doesn't disturb clarity, while interface does.

While iface is obliviously shorter, interface is more readable and understandable.
Defining a new interface does not happen very often so the shortness of iface does not make up for the loss of readability here.
The keyword iface could shorten signatures of functions with empty interfaces like in your examples but using empty interfaces is not a practice that need to be encouraged.

This makes writing easier, but I disagree that it makes reading easier in the common case. Your "generic map" function is not representative of the majority of Go code, and the interface keyword appears far less than one instance per line on average, even when you measure only function signatures.
JavaScript code has proportionally more functions than Go has either functions or interfaces. Arguments for shortening the function syntax in that language may not apply with equal magnitude in this language.
The counter-point I find more compelling is that func-tion, chan-nel, var-iable are all fairly unambiguous prefixes in addition to being abbreviations. iface is not a prefix, thus has a different tone/feel when reading or discussing it. If fn had been chosen as the function keyword, I might not have this reservation.

I'm not personally in favor of this.  Perhaps interface is on the long side, but iface does not seem like a good substitute.

I am not a fan of this. I don't think it buys anything. If there is any principle that one might apply to the choice if keywords, it might be that frequently used keywords for simple concepts should be compact, while others (for more complex and less frequently used ones) can be longer.
I'm very much a fan of succinct names in local context, and longer names in larger context, but there are exceptions (such as widely used constants in global contexts, etc.). But I am not fond of mangling keywords for shortness.
interface is common but not that common. Note that keywords are usually not shortcut in Go with a few exceptions: var, const, and struct, really for historic reasons (and they are reasonably frequent). The very first spec versions used functionnot func, and the only other one that's abbreviated is chan.
I like @extemporalgenome's counter-point, all the abbreviated keywords we have are prefixes that naturally extend to full length when spoken.

I don't like this: "iface" sounds ugly and is not even a proper abbreviation or prefix, as @griesemer points out.
There are many things that could be improved in Go, maybe for a second version, but the spelling of interface is not a problem that needs to be fixed.


document.registerElement deprecation in Chrome

I see this in the console:
[Deprecation] document.registerElement is deprecated and will be removed in M80, around February 2020. Please use window.customElements.define instead. See https://www.chromestatus.com/features/4642138092470272 and https://developers.google.com/web/updates/2019/07/web-components-time-to-upgrade for more details.
registerAsciinemaPlayerElement @ asciinema-player.js:308

Seems like a duplicate of #98.


Add a sanity check for positions in the system

I had some simulations blowing up today, so I though this could be nice to have.
Remaining questions are:

should the checking interval be configurable by the user?
should we have a fully featured trait for this?

I think the answers are no and no, because (1) this should be transparent for the user (no setup required) and (2) it seems overkill (I can't think of a way someone would like to add other sanity checks from outside the core crate).
Both questions could also be addressed by (ab)using the Output trait for this, and maybe having
some default output included with every simulation. They would need to be opt-out.

I share your intuition that it should not be a trait.
Would it be worthwhile to check the forces or velocities instead of the positions? A sanity check of positions would always succeed if we'd e.g. wrap molecules from time to time.

We can check everything, that's right. How about 1000 A/fs as the maximal velocity and 1000 A/fs^2/100 mass unit for the force?

Is there a specific reason this is in Simulation and not in System::increment_step() ?

I prefer to use simulation for behaviour and system for data, and the function name increment_step indicate this is not doing a lot of work.

My bad, I thought this was the one doing all the word, but it's Propagator::propagate().

I added the check on velocities too, but not on the forces as we don't store them in the system.
This is good for me.

Maybe we should change the message for velocities so that we know which check failed? Maybe something as simple as "Observed very high velocities, the simulation might blow up!"

Yes, we should. This is a copy/paste error on my side. That is what I get for doing too many things at the same time !

Fine for me. Can I merge?

Yes, sure !
To prevent ambiguity about merging, how about we stick to the following convention? We use [WIP] in the PR title if we still need/want to work on the code, and else the reviewer is free to merge whenever he wants. What do you think?

Sounds good! Let's do it that way.


Can't download flutter for Mac (Access Denied) in Turkey

I'm trying to download flutter for Mac but unfortunately the server reports Access Denied.
I'm on Turkey's internet service provider.
Here is the link
https://storage.googleapis.com/flutter_infra/releases/stable/macos/flutter_macos_2.0.3-stable.zip
I tried installing it using brew  it's the same.

It worked using VPN. But why I have to use VPN for that?

@Blacktoviche
I think you need a new super VPN acceleration solution .
https://bit.ly/3fcL0ND

Hi @Blacktoviche
This is probably that Google host service is not available in your country/city/location.
Where are you located?

@pedromassango but why? I'm located in Turkey.
Why wouldn't Google services available in Turkey.

Why wouldn't Google services available in Turkey.

I'm not sure what is the cause as well.
Please see https://github.com/flutter/flutter/issues/48030 for suggestions on things you can try to solve this issue.

Now I also can't use "flutter pub get"
pub get failed (server unavailable)
It's Google's service issue.
A few days ago everything was working fine.

I'm checking other services. It seems there is a full block on Google services in turkey.
I can't install anything related to Google (Android Studio etc) using (brew) on Mac.
Yet I can download android studio from the official website.
Is there anybody from Google who can explain the problem please?
I'm getting my stuff done using VPN. But why?
As far as I know now there is no political issues in the air.

There should be no restrictions on Google products in Turkey at this point.

Based on above comment and also considering that there has been no activity on this issue, I am going ahead and closing this as stale.
@Blacktoviche If you are still facing same issue, open a new issue so that we can properly address it.


Add ScheduledModifierManager.from_str

Hello,
Thanks for your work!
Is your feature request related to a problem? Please describe.
I sometimes need to modify my yaml on the fly but it is a bit cumbersome to have to dump it temporarily on my drive to use ScheduledModifierManager.from_yaml.
Describe the solution you'd like
Can we have a SchedulerModifierManager.from_str which accepts a str? ScheduledModifierManager.from_yaml could leverage this new staticmethod once it has loaded the yaml file.
Happy to provide more context, it should be easy to implement if you decide to integrate this into your framework. :)

from_yaml supports str already :)


added patch to openmc.Source

this PR overrights the openmc.Source method with the method in the package

plasma source plot is failing but this can be made to work with updates on the openmc-plasma-source package


Grunt causes issues when clustering.

Aborted due to warnings.
Running "clean:dev" (clean) task
Cleaning .tmp/public...ERROR
Warning: Unable to delete ".tmp/public" file (ENOENT: no such file or directory, rmdir '.tmp/public/admin/bower_components/iron-selector/test').
------------------------------------------------------------------------

error: Looks like a Grunt error occurred--
error: Please fix it, then **restart Sails** to continue running tasks (e.g. watching for changes in assets)
error: Or if you're stuck, check out the troubleshooting tips below.

error: Troubleshooting tips:
error:
error:  *-> Are "grunt" and related grunt task modules installed locally?  Run `npm install` if you're not sure.
error:
error:  *-> You might have a malformed LESS, SASS, CoffeeScript file, etc.
error:
error:  *-> Or maybe you don't have permissions to access the `.tmp` directory?
error:      e.g., `/srv/smmtool/.tmp` ?
error:
error:      If you think this might be the case, try running:
error:      sudo chown -R YOUR_COMPUTER_USER_NAME /srv/smmtool/.tmp

I think, the reason of problem is clustering. When i lift more than 1 process of sails in cluster mode, the first process removes .tmp directory. Second process triyng to do the same, but can not.
The problem appears only when i lift more than one process.
How to solve it?

I had problem with clustering at the orm level. I had de activated the grunt hook, so I don't know if my fix would apply.
I noticed that launching all the forks at once was causing 'race' issues (like db login, or maybe grunt)
Can you trigger forks one by one ? With pm2 it's something like 'scale' if I recall correctly.
I would also like to be able to cluster, it would be good to have a stable built in api.

Hi @misterjt, thanks for posting.  You are correct in that the issue here is Grunt.  Each time your app lifts, Grunt attempts to process your app's assets (including compiling .less files) and copy them to a .tmp folder.  If multiple processes attempt to do this at once, they'll step on each-other's toes.  Similarly, as @Kallikrein stated, in certain situations (mainly when using config/bootstrap.js to create data, or when using the migrate: alter strategy), having multiple Sails apps connect to a database at once can cause issues.
Here's some tips, which should make their way into the documentation (PRs to our docs are always welcome, by the way!):

When testing your clustering strategy, always have the apps start in the production environment, either by setting the NODE_ENV environment variable to "production" (the preferred way) or lifting with the --prod command-line argument.  This will best mimic your actual deployment environment.
Grunt tasks are bundled with Sails as a convenience, but if they're hindering your development, you can always change them or turn Grunt off entirely.  For example, you can comment out all of the subtasks in  tasks/register/prod.js to stop Grunt from running in the production environment:

module.exports = function(grunt) {
  grunt.registerTask('prod', [
//    'compileAssets',
//    'concat',
//    'uglify',
//    'cssmin',
//    'sails-linker:prodJs',
//    'sails-linker:prodStyles',
//    'sails-linker:devTpl',
//    'sails-linker:prodJsJade',
//    'sails-linker:prodStylesJade',
//   'sails-linker:devTplJade'
  ]);
};

or add "hooks": {"grunt": false} to your .sailsrc file to turn off the Grunt hook completely (though this will affect your development environment as well)

Once you've turned off Grunt for production environments, you can copy those subtasks into a new task (called cluster for example), which you call directly when starting your clustered server:

// In tasks/register/cluster.js
module.exports = function(grunt) {
  grunt.registerTask('cluster', [
    'compileAssets',
    'concat',
    'uglify',
    'cssmin',
    'sails-linker:prodJs',
    'sails-linker:prodStyles',
    'sails-linker:devTpl',
    'sails-linker:prodJsJade',
    'sails-linker:prodStylesJade',
    'sails-linker:devTplJade'
  ]);
};

and then start with something like grunt cluster && pm2 start (or however you start pm2).  This lets you still take advantage of the asset pipeline that Sails sets up for you, but it will only run once (before pm2) instead of once per Sails server.

Make sure to use migrate: safe when in the production environment (this is the default--just don't override it!)
If you have a config/bootstrap.js file that creates data, create a separate config/env/production/bootstrap.js file that will run in the production environment without creating data.

One more issue. Exactly the same condition, but with sockets.
A socket is being allowed to connect, but the session could not be loaded.  Will create an empty, one-time session to use for the life of the socket connection.  Details:
 Error: Session could not be loaded
    at _createError (/srv/smmtool/node_modules/sails/lib/hooks/session/index.js:271:21)
    at /srv/smmtool/node_modules/sails/lib/hooks/session/index.js:274:13
    at /srv/smmtool/node_modules/connect-redis/lib/connect-redis.js:93:25
    at try_callback (/srv/smmtool/node_modules/connect-redis/node_modules/redis/index.js:522:9)
    at RedisClient.return_reply (/srv/smmtool/node_modules/connect-redis/node_modules/redis/index.js:592:13)
    at RedisReplyParser.<anonymous> (/srv/smmtool/node_modules/connect-redis/node_modules/redis/index.js:265:14)
    at emitOne (events.js:77:13)
    at RedisReplyParser.emit (events.js:169:7)
    at RedisReplyParser.send_reply (/srv/smmtool/node_modules/connect-redis/node_modules/redis/lib/parser/javascript.js:281:18)
    at RedisReplyParser.execute (/srv/smmtool/node_modules/connect-redis/node_modules/redis/lib/parser/javascript.js:188:26)
    at RedisClient.on_data (/srv/smmtool/node_modules/connect-redis/node_modules/redis/index.js:478:27)
    at Socket.<anonymous> (/srv/smmtool/node_modules/connect-redis/node_modules/redis/index.js:79:14)
    at emitOne (events.js:77:13)
    at Socket.emit (events.js:169:7)
    at readableAddChunk (_stream_readable.js:146:16)
    at Socket.Readable.push (_stream_readable.js:110:10)
    at TCP.onread (net.js:523:20) { [Error: Session could not be loaded] code: 'E_SESSION' }
sails-hook-sockets :: connected to Sails admin message bus.

When i have 1 instance (even in cluster mode) of sails, everything works fine. When i start 2 instances (in cluster mode too), i got this problem.
This is my config
/**
 * Production environment settings
 *
 * This file can include shared settings for a production environment,
 * such as API keys or remote database passwords.  If you're using
 * a version control solution for your Sails app, this file will
 * be committed to your repository unless you add it to your .gitignore
 * file.  If your repository will be publicly viewable, don't add
 * any private information to this file!
 *
 */

module.exports = {

	/***************************************************************************
	* Set the default database connection for models in the production        *
	* environment (see config/connections.js and config/models.js )           *
	***************************************************************************/

	models: {
		connection: 'MongoServer'
	},
	session:{
		adapter:'connect-redis'
	},
	sockets:{
		adapter:'socket.io-redis'
	},
	port:1337,
	host: '<IP_ADDRESS>',
	/***************************************************************************
	* Set the log level in production environment to "silent"                 *
	***************************************************************************/

	log: {
		level: "silly"
	}

};

@misterjt are you using websockets as your only transport?  That is, do you have both the transports setting in config/sockets.js, and io.sails.transports in your client-side Javascript set to ['websocket']?  If not, and if you don't have sticky sessions in your environment, then the initial connection made via polling may not reach the same server as the final handshake, leading to a socket with a mismatched session ID.  See this note in the documentation.  (We should probably add this to the "multi-server environments" page of the Realtime concepts section as well).

@sgress454
Could we implement a sails clustering hook, and maybe some health-check api ?

@Kallikrein I am not entirely sure what you mean, but you are certainly welcome to make a proposal!.
@misterjt Your sockets issue sounds unrelated to this thread; please check out my previous comment and open a new issue if it doesn't help.
Added some info to the docs, so closing this.  Thanks everyone!

@Kallikrein 'clustering' is different for everyone. I use pm2 and other people use forever, nodemon, etc.. To perform clustering this would be different for each.
My current workaround for production deployment & clustering [with pm2] is duplicating the grunt task "prod" to tasks/register/production.js and commenting out the tasks in the prod.js. This allows you to cluster in a more simple manner, ie:
$ grunt production
   ...grunt running production build...
$ pm2 start app.js -i 4 --name "sails" -- --port 80

@crobinson42 I do agree, but whatever the solution, the whole sails app is clustered.
It means that grunt tasks, database handshakes, and every custom hook etc. will be launched several times.
I personnaly use pm2 and apart from some docker issues, it's flawless for production.
To go further, I do distinguish two aspects : launch and listen.
While we don't want to cluster the launch (grunt, orm, ..), we do want to cluster the listen.
That's why I've started, a while ago, to dig into the 'listen' point and see how to cluster my app just before this event.
I failed miserably :) I'm still a beginner though.
@sgress454 Just as a synopsis, the idea is to allow sails to expose a built-in master/worker api. I think it's good to have a separation of route and concepts between what the master and the workers would be listening to / connecting to.


Slow engine creation - only when using FastAPI

Hello,
I am currently working on a FastAPI application which calls Databricks using databricks-sql-connector, however the code appears to slow down massively on the engine creation stage.
I've narrowed the issue down to .venv\Lib\site-packages\databricks\sql\thrift_api\TCLIService\ttypes.py, where when running in debug mode the script is loaded incredibly slowly (around 5-10 minutes). However when the exact same code is run outside of a FastAPI function (ie, in a standalone script, notebook, etc) it runs almost instantly and the engine is created in under 1 second.
The details of my test application are:
main.py:
from fastapi import FastAPI
from fastapi.responses import RedirectResponse
import uvicorn
from routes import test_route

app = FastAPI(
     title="TestAPI",
     version="1.0",
     description="Test API",
     )

@app.get("/", include_in_schema=False)
async def docs_redirect():
     return RedirectResponse(url='/docs')

app.include_router(test_route.router)

if __name__ == '__main__':
     uvicorn.run('main:app', host='<IP_ADDRESS>', port=8000)

test_route.py:
import fastapi
from fastapi import APIRouter

from sqlalchemy import create_engine
from sqlalchemy import text

router = APIRouter(tags=["Test"])

@router.post("/test_route", description="Test")
async def test():
    import time

    print("Connecting to engine....")
    startT = time.time()
    engine = create_engine(
        url = f"databricks://token:<<TOKEN>>@<<HOST>>?http_path=/sql/1.0/warehouses/<<WAREHOUSE>>&catalog=<<CATALOG>>&schema=<<SCHEMA>>"
    )
    print("Engine Connected!")
    print(f"Time taken: {time.time() - startT} seconds.")

    with engine.connect() as connection:
        result = connection.execute(text("SELECT * from range(10)"))
        for row in result:
            print(row)

    print(f"Execution time: {time.time() - startT} seconds.")
    pass

    return "Ok."

requirements.txt:
fastapi==0.111.1
uvicorn==0.30.3
databricks-sql-connector[SQLAlchemy]==3.3.0

The same issue occurs when using:
from databricks import sql

connection = sql.connect(
                        server_hostname = <HOST>,
                        http_path = <HTTP>
                        access_token = <TOKEN>)

cursor = connection.cursor()

cursor.execute("SELECT * from range(10)")
print(cursor.fetchall())

cursor.close()
connection.close()

but given it all goes to create_engine under the hood I was trying to simplify my test case.
As mentioned, the call stack points to .venv\Lib\site-packages\databricks\sql\thrift_api\TCLIService\ttypes.py taking all of this extra time. This can be fixed through editing ttypes.py directly and removing all rows which begin    None,  #. However this directly violates the warning given at the top of ttypes.py about not editing. Removing these rows reduces the file from ~100,000 lines to ~10,000, and completely solves the time delay issue when using FastAPI.
So my main questions are:

Why does this delay in engine creation only occur in a FastAPI app (is it something to do with it being asynchronous?).
How can this delay be remedied?
Can ttypes.py be safely edited to remove all "None" rows or is this not a viable solution?

Thanks!

Feeling like a bit of a numpty - after a day of debugging I found the issue is also solved by using a different Python version.
Version originally used: 3.12.4
Version which fixes the issue: 3.11.9
I'll leave this issue up as the docs do say all versions of Python 3.8+ are supported, but feel free to close if no fix / update is planned.

Hi @jaames-bentley! Thank you for reporting this issue (and for partially figuring it out while I wasn't around)!

Why does this delay in engine creation only occur in a FastAPI app (is it something to do with it being asynchronous?)

TBH, I don't know. There are many things that work different in FastAPI/uvicorn, comparing to WSGI server or CLI apps, and I'm not so deeply familiar with all the differences. it may be some kind of cache miss (Python should cache .pyc files after first import and then reuse it, but if your app spawns some background workers - they may have conflicts on this step). It may be something caused by async features of Python itself, or uvloop, or even both.
It would be perfect if you can create an example that stabily reproduces the issue (e.g. dockerfile). Or, at least, please share more details about your OS and Python version, other Python packages installed, how exactly you run your app (maybe, there are some command line switches passed ty Python interpreter, which change its behavior) - for both your environments.

Can ttypes.py be safely edited to remove all "None" rows or is this not a viable solution?

No, generally this file shouldn't be edited. Most of that None values are somehow used by the thrift package, and thus should be available. Probably there are some structures we don't use in out library, but it's hardly possible to figure that out

I'm a bit late to the party here but this is an exact duplicate behaviour from here https://github.com/databricks/databricks-sql-python/issues/369#issuecomment-2000352199 and does appear to be an issue with certain other libraries that have not been updated to Python 3.12.


Image recognition example for Tensorflow Lite Micro

This is a demo showing how to use Tensorflow Lite Micro to perform image recognition using a STM32F746G-DISCO discovery board with a STM32F4DIS-CAM camera module attached.

Sorry for the slow response. Overall this looks great, thanks! We will have to move the model file outside of the repo unfortunately, since it's 280KB and larger files like that cause problems as they grow the download for all users.
You can see how we do something similar for the person detection model here:
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/experimental/micro/examples/micro_vision/Makefile.inc#L1
It would also be great if you could update the readme to mention the specific kinds of recognition that this model is doing, "Plane", "Car",  "Bird", "Cat", "Deer",  "Dog",  "Frog", "Horse", "Ship",  "Truck", and that it will always try to put what it's shown into one of these categories. Could you also rename it to cifar_recognition? I realize I started a confusing trend with "micro_speech", I should have named it something clearer.

Sorry for the slow response. Overall this looks great, thanks! We will have to move the model file outside of the repo unfortunately, since it's 280KB and larger files like that cause problems as they grow the download for all users.
You can see how we do something similar for the person detection model here:
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/experimental/micro/examples/micro_vision/Makefile.inc#L1

Sure, I'll take a look at that.

It would also be great if you could update the readme to mention the specific kinds of recognition that this model is doing, "Plane", "Car", "Bird", "Cat", "Deer", "Dog", "Frog", "Horse", "Ship", "Truck", and that it will always try to put what it's shown into one of these categories.

That's a good idea, reading through the README I realize that it's unclear on what the example actually does.

Could you also rename it to cifar_recognition? I realize I started a confusing trend with "micro_speech", I should have named it something clearer.

Yes, no problem.

I've updated the PR with regards to the review comments. I've removed the testcase from the Makefile.inc in order to prevent it from running until the model is made available for download, something which I'm working on.
The commits should be squashed before merging, since the model appears in the git-history twice, one when adding and one when removing. If it's not done automatically, I can do it myself and force push after the changes have been approved.

@petewarden  I've added the URL for the network model, and it builds fine. And I've come to think of one thing.
Since the testcase (image_recognition_test.cc) uses the first 10 images in the CIFAR10 dataset of test images, I've added so that the CIFAR10 image set is downloaded. I've only managed to find it distributed as a single tar.gz-file including all of the 60000 images, and it is quite large (~160 MB).
So it could take a while on a slow internet connection. I tried looking through the Makefile to see if there is a way do only download the image set if the image_recognition_test is being built.
I wasn't able to really find a solution, since it seems like the Makefile.inc:s in micro/examples/ are called before it is determined which exact testcases are to be built.
Do you (or anyone) know if this is a problem in the first case, and if it can be solved without making large changes to the make system?

@petewarden gentle reminder.

@jenselofsson Can you please resolve conflicts? Thanks!

@gbaned Done!

The "Resolve conflicts" button was greyed out, so I merge the upstream/master-branch locally. Let me know if I need to fix it further in any way.

@jenselofsson Can you please check reviewer comments and keep us posted. Thanks!

It has been 15 days with no activity and the awaiting response label was assigned. Is this PR still valid? Assigning the stalled label. Please comment to reassure me that this is still being worked on.

@tensorflowbutler It's being worked on.

When I try to view the "MacOS CPU Python3" build logs, it shows a 404 error.

@jenselofsson Can you please check petewarden's comments and keep us posted? Thanks!

@petewarden No problem, updating the PR ASAP.

@petewarden Ping for review.

Overall looks good.  If possible, could you rename the "disco" directory to something a bit more descriptive?  Perhaps stm32f746_discovery or stm32f746_disco.

@njeffrie Done!

@rthadur Done!

The error in the Windows Bazel build seems to be due to keras, which is unrelated to this PR.

@jenselofsson, @rthadur is it ready to merge?

@njeffrie can you please help merge this PR internally ?

@rthadur @njeffrie Ping for review

@njeffrie is working internally to merge this PR , lets wait until he comes back.Thanks for your patience.


Improve localIP assignment and SSD detection

Rebased PR #3424 from rootzoll/raspiblitz to dev  branch
1. Fix localip assignment:
use localip=$(hostname -I | awk '{print $1}') in place of localip=$(ip addr | grep 'state UP' -A2 | grep -E -v 'docker0|veth' | grep 'eth0\|wlan0\|enp0' | tail -n1 | awk '{print $2}' | cut -f1 -d'/').
The former assignment seems to work on a wider range of hardware.
related: https://github.com/rootzoll/raspiblitz/commit/5d61d0b216b281ff7b99e0488c39390d1d5e038c#commitcomment-89042523
2. Improve reliability of solid state drive detection:
smartctl seems to be more compatible with a wider array of hardware.
isSSD=$(cat /sys/block/${hdd}/queue/rotational 2>/dev/null | grep -c 0) incorrectly sets SSD to false for Odroid HC2. isSSD=$(sudo smartctl -a /dev/${hdd} | grep 'Rotation Rate:' | grep -c "Solid State") correctly identifies the SSD.
Related issue: https://github.com/rootzoll/raspiblitz/issues/3423#issue-1439092806

@rootzoll should be all set to test now that the PR is based on dev .

wifilocalIP is still wrong and with the wildcard it will print the LAN IP instead nothing, if wifi is not used

wifilocalIP is still wrong and with the wildcard it will print the LAN IP instead nothing, if wifi is not used

Is it as simple as changing it to: hostname -I | awk '{print $1}'

Just remove the wildcard (*) from the IP addr command to get the wifi IP. You can check if it prints your lan ip, it should not print your lan ip. Should be empty without wifi used

@ChuckNorrison Okay, reverted back to original.  Should be all set now.


Feat/bds 1937 add compatibility mode

Jira
http://vjira2:8080/browse/BDS-1937
Summary
Adds a compatibility flag that determines whether a webpack build is necessary when esModules is enabled.
Details
If both prod is false and esmodules is true, by default local builds will only get the "modern" webpack bundle (as defined in create-webpack-config.js).  This dramatically improves build time while allowing local development for most situations.
If, however, you want to test or debug the legacy build while working locally (the most obvious use case is if you want to troubleshoot IE 11), this PR allows you to do so by running yarn run start:compat (under the hood, yarn bolt start --compat).
How to test
On this feature branch:

Run yarn run start:compat.  Confirm that you see two webpack build progress indicators in the browser while starting (and that the docs site works in IE 11)
Run yarn run start.  Confirm that only one webpack build runs (and that the docs site does not works in IE 11)

Hmm, looks like part of the build not passing is that the changes in this commit have unintentionally modified the logic.
I assumed that these changes to cli.js would mean that if the prod flag is set, the compat flag is also set.  However, when I run yarn jest locally, it build both new and legacy builds before this commit (meaning config.prod is true), but only the new build after this commit (meaning config.compat is false).
Needs work :/

@adamszalapski, good suggestion about adding start:compat to the root package.json, I've made that update.
I did try testing in IE 11 again with yarn run start:compat and it seemed to work fine.  I don't know why it would be working for you-- what do you see when you do that?  And you're saying you did check that you have both a bolt-global.js and a bolt-global.modern.js file in the www/build directory?

Re: the failing jest test, it turns out that the changes I made to the cli in updateConfig() don't apply when running jest commands.  That results in config.compat being false even though config.prod is true when running jest tests.
It looks like this same problem applies to other config that's conditionally set in updateConfig() (for example, config.i18n)-- none of it applies when running tests.  @sghoweri, any thoughts about the best way to handle this?


Dynamic popular tasks

⚠ This repo is Continuously Deployed: make sure you follow the guidance ⚠
Follow these steps if you are doing a Rails upgrade.

Closing in favour of different approach: https://github.com/alphagov/collections/pull/3829


configs/dntr/aitod_dntr_r50_1x.py

Hello,thank you for sharing the code,but I can't find configs/dntr/aitod_dntr_r50_1x.py

Sorry for the confusion. I've updated the name to aitod_DNTR_mask.py.  You may try it again.

Sorry for the confusion. I've updated the name to aitod_DNTR_mask.py. You may try it again.

Thank u！


Types for map generation incorrectly require callback

There is an issue with map generator create methods requiring a callback even if the usage doesn't require it.
Current Behavior
Attempting to call the create method of the Cellular map generate (and others, it looks like) will cause an error.
const generator = new Cellular(width, height)
generator.create() // Expected 1 arguments, but got 0. An argument for 'callback' was not provided.

// have to put in an empty callback to make it work
generator.create(() => {}) // not ideal, and tslint complains

I found this on the Cellular map but it appears to be a problem in other cases. I don't know the full extent or I would submit a PR for it. I believe it's an easy fix, though. Here is the relevant code:
https://github.com/ondras/rot.js/blob/754d7967aec6af5cefdce70fab8e70de05df41d3/src/map/cellular.ts#L65
Expected Behavior
It appears that according to the docs and the code (and my own experiments), this parameter is not required.
I believe that this method (and other CreateCallback) should be defined as
create(callback?: CreateCallback) {  // add the ? to make it optional

The code already correctly checks the presence of the value, so I don't think any other changes are required to fix this.

Hi @bbugh,
thanks for the bugreport. I just pushed a new version where these callbacks have correct optional signatures.

Wow, quick turnaround, thanks! It's working great. Much appreciated.


change the working of a spell

just a suggestion to change the working of spell avada-kedavra from rm to pkill
or if there is another killing spell ( not a harry potter fan so I don't know much ) I would like to create a pull to add it (this will help me learn js)

we can maybe gather people to get started into this project now since we have hacktober going on.
Therefore I am adding hacktoberfest label to this repository as well

Is this spell supposed to be called https://en.wikipedia.org/wiki/Abracadabra? I can update in a PR if you like and clean up some of the formatting?

rm and pkill are (to my knowledge not related, remove/delete a file, vs stopping a process), so just wanted to check if this issue is required in general?

this is a fun repository, you can add your suggestions anytime.
yes rm and pkill are not related to each other closely, but we need that they are closely related to the spell that they are bonded to.
thanks!


[BUG] - Volume Control in Video Stream doenst work.

If i start the video stream in HomeApp. I can see the live video and get the audio sound. But the volume control i see below the stream doesnt work or change the volume. Any solution for this?
Thats my alst problem. all other works now fine.
Thanks
best regards rene

Hey @renedivx , The Volume Control on HomeApp is not compatible with Dafang as of yet. Its WIP. You can use your iOS Device Volume for now.

Thanks for your fast reply. Ok good to know. Yes i use than iOS Device Volume. Thanks for your help. best regards rene


Set permissions /bin/vendor to be root:www-data and 770

This fixed issue: https://github.com/pi0/osticket-docker/issues/3. With this fix the webui runs and is reachable.

@pi0

Thanks!


MSID: 93698 Version: 1 DOI: 10.1101/2<IP_ADDRESS>8051

MSID: 93698
Version: 1
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>8051
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=93698
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>8051

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/93698v1
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>8051
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/93698/v1/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

HI @rkcook312, looks like this was edited already and fixed: https://hypothes.is/a/yqPwuNVZEe63htfwIWDirA.
Would you be OK to publish this one, and retrigger the workflow tomorrow (when the review HTML update is recognised by data hub)? WDYT?

Thanks @fred-atherden, yes I can publish this one now, and do a temporal workflow reset first thing tomorrow.


Collect metrics for ArgoCD ApplicationSet

What does this PR do?
This PR adds capability to collect metrics from ArgoCd ApplicationSet.
Motivation
Currently our team has to collect ApplicationSet metrics separately as custom metrics. Other ArgoCD controllers are already supported in dd-agent.
Additional Notes

Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[x] PR title must be written as a CHANGELOG entry (see why)
[ ] Files changes must correspond to the primary purpose of the PR as described in the title (small unrelated changes should have their own PR)
[ ] PR must have changelog/ and integration/ labels attached
[ ] If the PR doesn't need to be tested during QA, please add a qa/skip-qa label.

@steveny91 I saw that you reviewed similar PR regarding ArgoCD integration in the past. Is there a chance that you can have a look at this one as well?
thank you

@steveny91 - this is similar to the PR you approved:

Add ArgoCD notifications controller metrics #14690

hopefully this can get merged?

Thanks for bring this up, @vincentgna!
Yes, the PR you've mentioned was created by my teammate and I worked with him to bring mine PR to the standards. I will appreciate the review by @steveny91

Hey 👋 ! Thanks for your PR, and sorry that it took us so long. I mostly have a few minor things concerning the service_checks.json file, everything else is looking good to me.
Also, we now require a changelog entry with every PR, see https://datadoghq.dev/integrations-core/guidelines/pr/#changelog-entries. If you're using the latest ddev, ddev release changelog new will help you do the right thing.
Finally, it would also be helpful if you could point us to documentation regarding these metrics, if there's any.

Thank you for the review!
I'm working on the changes that you suggested. Regarding the docs for ApplicationSet metrics - unfortunately, there is not much of them. Here is a gist that I created by saving the output of applicationset-controller-metrics endpoint.
There are plans to improve this part of ArgoCD. Meanwhile, we gather existing metrics to have some visibility into ApplicationSet health.

Hey 👋 ! Thanks for your PR, and sorry that it took us so long. I mostly have a few minor things concerning the service_checks.json file, everything else is looking good to me.
Also, we now require a changelog entry with every PR, see https://datadoghq.dev/integrations-core/guidelines/pr/#changelog-entries. If you're using the latest ddev, ddev release changelog new will help you do the right thing.
Finally, it would also be helpful if you could point us to documentation regarding these metrics, if there's any.

I think I used ddev properly to add an entry to argocd/CHANGELOG.md properly, but let me know if I did it wrong. I appreciate your help with this PR

Hi everyone, this seems to have a bug for some of those metrics. Can y'all review https://github.com/DataDog/integrations-core/issues/17968 and let us know what the expectation there is?  We can make a contribution if that helps, but open to a swing by the original authors as well.


Effects reset

Each time an effect is modified, the animations are reset.
For example to have a dynamic origin or to have emitDuration based on a dynamic value.
Is there a way to keep the particles generated without everything being reset?

Do you have a sample app to reproduce? or some code? Normally you should be able to have the effect not resetting.

I have create this small sample code to recreate the behavior:

Code
import 'package:flutter/material.dart';
import 'package:newton_particles/newton_particles.dart';
import 'package:pausable_timer/pausable_timer.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(home: HomeScreen());
  }
}

class HomeScreen extends StatefulWidget {
  const HomeScreen({super.key});

  @override
  State<HomeScreen> createState() => _HomeScreenState();
}

class _HomeScreenState extends State<HomeScreen> {
  late final PausableTimer _timer = PausableTimer.periodic(const Duration(milliseconds: 100), _updateOrigin);
  Offset origin = const Offset(0, 0);

  @override
  void dispose() {
    _timer.cancel();
    super.dispose();
  }

  void _updateOrigin() {
    setState(() => origin += const Offset(5, 5));
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.black,
      body: Newton(
        activeEffects: [
          ExplodeEffect(
            particleConfiguration: ParticleConfiguration(
              shape: CircleShape(),
              color: const SingleParticleColor(color: Colors.red),
              size: const Size(10, 10),
            ),
            effectConfiguration: EffectConfiguration(
              origin: origin,
              minAngle: -180,
              maxAngle: 180,
              particlesPerEmit: 10,
            ),
          )
        ],
        child: Center(
          child: TextButton(
            child: const Text('Update Origin'),
            onPressed: () {
              setState(() => origin += const Offset(5, 5));
            },
          ),
        ),
      ),
      floatingActionButton: FloatingActionButton(
        child: const Icon(Icons.play_arrow),
        onPressed: () {
          if (_timer.isPaused) {
            _timer.start();
          } else {
            _timer.pause();
          }
        },
      ),
    );
  }
}

Each time the setState function is called inside the _updateOrigin method, the particles are reset and the explode animation start from scratch

Took time to answer but what kind of animation are you trying to achieve? Updating the origin will trigger a refresh cause there is no way to know that the same explode effect. If you want to move the explode effect around, you can use a global key on Newton widget to access the current state and add a new exploding effect with a fixed particle count and that should achieve the desired effect.
Something like:
void _updateOrigin(Timer timer) {
    origin += const Offset(5, 5);
    newtonKey.currentState?.addEffect(ExplodeEffect(
      particleConfiguration: ParticleConfiguration(
        shape: CircleShape(),
        color: const SingleParticleColor(color: Colors.red),
        size: const Size(10, 10),
      ),
      effectConfiguration: EffectConfiguration(
        origin: origin,
        minAngle: -180,
        maxAngle: 180,
        particlesPerEmit: 10,
        particleCount: 100
      ),
    ));
  }

Will close this issue as you can already move an effect around. You can also implement your own effect to achieve this result.


TP-928: Add UI to transition WorkBasket status

TP-928: Add UI to transition WorkBasket status

Why

As part of getting the policy team to use the Editor, we need a way to both:

Control when their workbaskets are serialised to envelopes
Update the system when envelopes are accepted by CDS

To do this we need to add a button to the as-yet secret workbasket UI to manually transition workbaskets through the workflow. This does not need to bypass the normal validation and routines.
So e.g. add a button to the workbasket details view that allows moving the workbasket to the next state in the workflow. For states where the “next state” can be multiple, show multiple buttons, one for each state.
In ADR 0008 we decided to reduce the number of workflow states we used to keep the app simple.
What

Add custom admin form with "transition" field to enable transitioning a WorkBasket
from one status to another
Refactor workbasket status FSM as specified in ADR-008
Refactor workbasket tests
Migrate database to new status values
Refactored WorkBasket session storage, because it was unnecessarily complicated
Small tweaks to some XML tests to use XPath, because they did not work on my machine

Checklist

Requires migrations? Yes
Requires dependency updates? No

See: TP-289

LGTM!


Corrected invalid chiplet id values for MCS units

This change is need to resolve an issue where new partial good processing deconfigures all the MCS units (no memory to boot) because their chiplet IDs are wrong.


Update ionicons icons (release v4.5.10-1)

Based on #251 I decided to update the ionicons iconpack to the latest version. I'm not sure why the test was failing there, for me it was simply the case that the css classname for the icon has changed.
@suda, have you ever considered including the iconpacks as dependencies, that would make it possible to update them more quickly/easily/automatically.

Thanks Eric! I believe that Atom couldn't resolve the path to the font files when being imported from the CSS when using npm dependencies, but feel free to try, maybe this isn't true anymore.

Looks like this update removed a bunch of icons from the ion set.
ion-refresh and ion-close to name a few

Looks like it removed all material style icons and only left ios style icons

or material design icon now need to be prefaced with md-

Right the md- fix the issue.
Thanks for the quick response

or material design icon now need to be prefaced with md-

This seems to be what happened :wink:


Form Dao and Class without Tests

@Tbot101 we really need those tests. What is the progress on that?

@crchong1 Just made changes to the form class and dao with the updated tree structure and serialization. Both memory and database tests are working now.


Generate Android library modules with resources

Generate Android library module with Android resources, while controlling programatically:
Strings, layouts, manifest, images
Several approaches:

Easy, Duplicating the basic elements
`

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

<style name="AppTheme1" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

`
Can be easily cut of by the toolchain

More challenging, making sure that all the generated elements are get called, need to keep a model of everything in the project, loses simplicity

Pull sufficiently interesting modules from github. Requires some kind of analysis over github. Here is how to do it https://stackoverflow.com/questions/33066582/how-to-download-a-folder-from-github

Compromise between the first and the second ways, is to have one number configurable number of activities == same number of auto generated layouts ==> same number of auto generated views.
Thus we add one number to UI, that results in all project generation

@NikitaKozlov

Yeah, let's go for a mix. If we can generate activity with recycler view that has an adjustable number of types, then we can have as many different ViewHolders (aka layouts) as we want. To call all strings/images we will reference them from the layout. Generating images would be a bit trickier, although we can do both, jpeg generation and vector generation.

Generating images shouldn't be difficult, either we take one image and reuse it by different names or use BufferedImage API (https://docs.oracle.com/javase/tutorial/2d/images/drawonimage.html)

Fixed - https://github.com/borisf/java-generator/commit/eaab426faaafe538a0ec7f18f4acdca255351480


Laravel 5.2 Auth doesn't give error on wrong credentials or empty form

The errors in red are missing from the login page i created 2 apps one I edited on I didn't both have the same Auth problem. It doesn't happen in my previous 5.2 apps
if i dump the $errors array that usually held the error message I get this:
object(Illuminate\Support\ViewErrorBag)#173 (1) { ["bags":protected]=> array(0) { } }

Please ask on the forums.

any solution on this ?

well it appears to be working now...i just created a new laravel app today...and that problem didn't occur anymore...to be honest I don't know what happened


Port async fixes

Porting https://github.com/Microsoft/TypeScript/pull/27190, https://github.com/Microsoft/TypeScript/pull/27396, and https://github.com/Microsoft/TypeScript/pull/27491 to release-3.1.

@andy-ms any sense of why the test is failing? seems related to a code fix of yours

#27675


Added Gunjan Dhanuka Resume

Happy Hacktoberfest!

Thanks for your contribution :)
sorry ,the pr in this  repo is not considered under hacktoberfest ,you can contribute to other repo's


Date-time cell with -3h

Hello guys.
I was trying to export a few data from my SQL Server DB.
So, it's ok, but when i open the .xlsx file, i have some date-time columns with dd/mm/yyyy and not dd/mm/yyyy hh:mm
beyound that, its removing 3 hours from the original date.
Please, can someone help me?
    let ws = XLSX.utils.json_to_sheet(p.recordset)
    let wb = XLSX.utils.book_new()
    XLSX.utils.book_append_sheet(wb, ws)
    XLSX.writeFile(wb, destination + file,{compression:true,dateNF: 'DD-MM-YYYY HH:mm'})
    console.timeEnd

nobody can help me?

@SheetJSDev can u help me?

@SheetJSDev or anybody?


Add support for spatie/browsershot v5

@stefanzweifel Please will this PR get merged anytime soon?

@dammy001 Yeah, will merge this soon. Just didn't have the time the last few days.


feat(publish): add force flag

🤕 do no merge 🤕
fixes #67

after conversations in air and chat, we've decided that overwrite should be the default and not an option, closing this.


Asynicio error with Spyder and certain versions of Tornado

File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\spyder\plugins_init_.py", line 514, in
toggled=lambda checked: self.toggle_view(checked),
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\spyder\plugins\ipythonconsole.py", line 725, in toggle_view
self.create_new_client(give_focus=False)
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\spyder\plugins\ipythonconsole.py", line 1038, in create_new_client
self.connect_client_to_kernel(client)
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\spyder\plugins\ipythonconsole.py", line 1073, in connect_client_to_kernel
kc.start_channels(shell=True, iopub=True)
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\qtconsole\kernel_mixins.py", line 43, in start_channels
super(QtKernelClientMixin, self).start_channels(*args, **kw)
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\jupyter_client\threaded.py", line 212, in start_channels
self.shell_channel._inspect = self._check_kernel_info_reply
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\jupyter_client\client.py", line 143, in shell_channel
socket, self.session, self.ioloop
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\jupyter_client\threaded.py", line 205, in ioloop
self._ioloop = ioloop.IOLoop()
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\tornado\util.py", line 312, in new
instance.initialize(*args, **init_kwargs)
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\zmq\eventloop\ioloop.py", line 139, in initialize
super(ZMQIOLoop, self).initialize(impl=impl, **kwargs)
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\tornado\ioloop.py", line 845, in initialize
super(PollIOLoop, self).initialize(**kwargs)
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\tornado\ioloop.py", line 357, in initialize
self.make_current()
File "C:\Users\Radha\Anaconda3\envs\tensorflow\lib\site-packages\tornado\ioloop.py", line 315, in make_current
assert asyncio is None
AssertionError

Closing as duplicate of #6622.

PermissionError: [Errno 13] Permission denied: 'C:\Users\Radha\AppData\Roaming\jupyter\runtime\kernel-16eae32a20f1.json'
Well, the error says it all. You don't have reading nor writing permissions in that directory and Spyder needs that to start an IPython console. Please fix that in your end because there's nothing we can do about it
This can't be the explanation to close this issue as a duplicate.

Sorry, they looked like the same problem, but this is an issue with Tornado.
Please run in a system terminal, after activating your environment:
conda install tornado=4.5.3

to fix it.

Indeed, almost surely a duplicate of #6627 . As such, closed.

Thank you for your replies. I have solved the problem by reinstalling a clean Anaconda Distribution. spyder is starting without problems. In fact, the version of Tornado that is installed by this Anaconda Distribution is indeed 4.5.3. I should not have updated Tornado to version 5.0.

Thank you. Changing to 4.5.3 fixed the issue

Yes. It fixed the issue. Thank you.
Os Melhores Cumprimentos,
Sérgio Oliveira
2018-03-07 15:10 GMT+00:00 Radhakrishna Dasari<EMAIL_ADDRESS>
Thank you. Changing to 4.5.3 fixed the issue
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/spyder-ide/spyder/issues/6623#issuecomment-371169001,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AjZ-vlp8sz7nYQwUi0lv4ugQ80TBGOJ3ks5tb_hLgaJpZM4Sfkkr
.

Changing tornado to 4.5.3 doesn't change the issue in Anaconda 1.8.2. I can't find a solution online, except for "reinstalling anaconda", which I would very much like to avoid because of all of the environments, libraries and everything I have already installed and set up. So, would be very happy if we figure out a solution to the problem.
All the best,
Bojan

So, would be very happy if we figure out a solution to the problem.

Sorry you're still having this issue. As we have been very clear, unfortunately there is nothing we can do about this from the Spyder side, as the problem lies in interactions between several third party packages on your system, and has nothing to do with Spyder itself.

Anaconda 1.8.2

Try installing a more recent version of Anaconda...1.8.x is 4-5 years old; the current version is 5.1.0

if I start the Spyder in a separate conda environment

Again, this is a clear indication that it is due to conflicting versions of certain factors in one environment, but not the other. Closely examine the versions between the two environments, and try to replicate what you have in the environment that works in the one that doesn't—or just ditch the old one and just use the one that works.

I am not sure if anaconda updates all environments when I use the automatic updater, so I was wondering if this might be the problem (different anaconda versions for different environments)

Nope; that's the whole point of different environments, to be able to isolate them from one another in order to resolve problems like these.

I would like to try it out, but I really don't want my spyder broken in the separate environment as well, so I wouldn't try it just yet.

There's no harm in trying; that's the whole point of it being an isolated environment.
Best of luck!.

I am sorry, I guess I meant to say that I was updating the Anaconda Navigator, not Anaconda itself. It was just a boring message that prompted me to update to latest version of Anaconda Navigator (v 1.8.2) and when I did it all broke down, as I explained. I was trying to downgrade all the relevant (in my opinion) packages to the version of the environment that works, but as it appears, I just made it worse.
When I tried and executeed spyder it didn't even start, it was just printing this error:
Traceback (most recent call last):
File "C:\Users\bojan\Anaconda3\Scripts\spyder-script.py", line 10, in
sys.exit(main())
File "C:\Users\bojan\Anaconda3\lib\site-packages\spyder\app\start.py", line 159, in main
from spyder.app import mainwindow
File "C:\Users\bojan\Anaconda3\lib\site-packages\spyder\app\mainwindow.py", line 78, in
from qtpy.compat import from_qvariant
File "C:\Users\bojan\Anaconda3\lib\site-packages\qtpy\compat.py", line 15, in
from .QtWidgets import QFileDialog
File "C:\Users\bojan\Anaconda3\lib\site-packages\qtpy\QtWidgets.py", line 22, in
from PyQt5.QtWidgets import *
ImportError: DLL load failed: The specified procedure could not be found.
This happened when I tried to downgrade Python from 3.6.4 (that was in my base environment) to 3.5.5 (which was in my other environment that was working correctly).
I had a similar qtpy/pyqt5 issue with Anaconda itself before. Each time I tried to start the anaconda-navigator, this error appeared. Then I manually (re)installed qtpy and pyqt5 (I had to install pyqt5with pip since conda couldn't find it) and the navigator started working again. Now, both libraries are installed, but for some reason, when I start spyder (but apparently anaconda-navigator as well) this error still occurs. I uninstalled them and reinstalled them again and then a pop up window was reporting a "Python is not responding" each time I tried to start Spyder or Anaconda Navigator. So I get the feeling that I am just doing worse and worse with every attempt at trying to fix it.
Also, I am not sure whether it is relevant, but when I am updating some libraries, this message appears:
DEBUG menuinst_win32:create(323): Shortcut cmd is C:\Users\user_name\Anaconda3\pythonw.exe, args are ['C:\Users\user_name\Anaconda3\cwp.py', 'C:\Users\user_name\Anaconda3', 'C:\Users\user_name\Anaconda3\pythonw.exe', 'C:\Users\user_name\Anaconda3\Scripts\spyder-script.py']
It is weird, since i haven't seen it before when updating/installing packages and libraries.
Then I tried updating python again and the previous error didn't occur, but the kernel was not starting still. It showed the following message:
An error ocurred while starting the kernel
Error in sitecustomize; set PYTHONVERBOSE for traceback:
ImportError: cannot import name 'constants'
Traceback (most recent call last):
File
Also, while spyder was on, a cmd windows was turning off and then on every 2 or 3 seconds.  My point is, I don't really care about my base/root environment, since I do most of the work in separate environments all the time. So, if there is something like a "environment reset to defaults", or something like that, I would be willing to do that. Also, I know it is possible to clone an environment, so if it is OK to remove the base environment and then clone one of my other and name it (base) and set it as root, I would do that as well. But, since it is my root environment, I am afraid not to break something in general, so yeah, that's my question.

@BojanMatovski We're sorry, but as we've stated multiple times, and your most recent statement only continues to confirm, your issue clearly has nothing to do with Spyder, and is instead due to your Anaconda installation. Though we'd like to help further, and we have already provided a few solutions/workarounds that should get Spyder functional again and answered your questions, as the bug tracker for Spyder and given our limited resources due to being unfunded, there isn't really much more we're able to do. Thanks for understanding, and best of luck!

@BojanMatovski, did you use pip to install PyQt5? If that was the case, you most probably corrupted all your conda envs and you'll have to recreate them again.

I know that pip and conda don't like each other a lot, but I was forced to use pip to install PyQt5 because conda couldn't locate it in its own repository.
As I said, I've done this in the past and it didn't had an (obvious) negative impact and it affect only the local environment, as far as I can tell, all of the remaining environments work OK.
I don't want to spam any longer, so if anybody has an idea how to revert the root environment to its defaults I would really like to hear it, if not, I wouldn't want to be all over the place with my problems, which obviously, as said, are connected more with anaconda than they are with spyder.
So thanks for the help guys and all the best!


Supports storageclass

Supports using storageclass to provide storage and enable pods to mount pvc volumes

开发者太懒了，都开源这么久了，对于K8S的适配还不是很友好


Implement IBC UpgradeClient

How do we handle the case when counterparty chains upgrade?

Relevant docs https://ibc.cosmos.network/main/ibc/upgrades/quick-guide.html#step-by-step-upgrade-process-for-relayers-upgrading-counterparty-clients (thanks @zbuc)

This ticket is specifically about accepting and verifying counterparty chain MsgUpgradeClient and porting over the verification logic from ibc-rs:

[ ] https://github.com/cosmos/ibc-rs/blob/95704fcede4146fd9039580a8a8ca2218180e400/crates/ibc/src/core/ics02_client/handler/upgrade_client.rs#L16

[ ] https://github.com/cosmos/ibc-rs/blob/95704fcede4146fd9039580a8a8ca2218180e400/crates/ibc/src/clients/ics07_tendermint/client_state.rs#L301

Stretch goal: @avahowell might be able to land this by EOD, but otherwise we'll target 63, and likely re-assign to @zbuc.


Cant register

When trying to register i get the following errors
Type "help", "copyright", "credits" or "license" for more information.
>>> from pgesmd_self_access.api import PgeRegister
>>> pge_reg = PgeRegister()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/david/pgesmd_self_access/pgesmd_self_access/api.py", line 367, in __init__
    self.auth = method(auth_path)
  File "/home/david/pgesmd_self_access/pgesmd_self_access/helpers.py", line 21, in get_auth_file
    json_data = json.loads(data)
  File "/usr/lib/python3.8/json/__init__.py", line 357, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.8/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.8/json/decoder.py", line 353, in raw_decode
    obj, end = self.scan_once(s, idx)
json.decoder.JSONDecodeError: Expecting ',' delimiter: line 3 column 3 (char 28)
>>> pge_reg = PgeRegister()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/david/pgesmd_self_access/pgesmd_self_access/api.py", line 367, in __init__
    self.auth = method(auth_path)
  File "/home/david/pgesmd_self_access/pgesmd_self_access/helpers.py", line 21, in get_auth_file
    json_data = json.loads(data)
  File "/usr/lib/python3.8/json/__init__.py", line 357, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.8/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.8/json/decoder.py", line 353, in raw_decode
    obj, end = self.scan_once(s, idx)
json.decoder.JSONDecodeError: Expecting ',' delimiter: line 3 column 3 (char 28)
>>> pge_reg = PgeRegister

dependancies have been installed and running in python environment


bug/post-message-with-thread-ts fixed bug for post message in the eve…

…nts api

@jasonmullins Thank you for your contribution! I just published version 1.0.11 which includes your fix.