SPFX webpart pointing to older versions files

What type of issue is this?
Question
What SharePoint development model, framework, SDK or API is this about?
💥 SharePoint Framework
Target SharePoint environment
SharePoint Online
What browser(s) / client(s) have you tested

[ ] 💥 Internet Explorer
[X] 💥 Microsoft Edge
[X] 💥 Google Chrome
[ ] 💥 FireFox
[ ] 💥 Safari
[ ] mobile (iOS/iPadOS)
[ ] mobile (Android)
[ ] not applicable
[ ] other (enter in the "Additional environment details" area below)

Additional environment details
browser version
Google Chrome - Version 101.0.4951.67 (Official Build) (64-bit)
Microsoft Edge - Version 101.0.1210.47 (Official build) (64-bit)
SPFx version
1.12.1
Node.js version
14.15.1
Issue description
SPFX web part is serving older version of files while doing normal refresh. It works fine when doing a hard reload. This problem appears again if another standard refresh is done.

Hi @JayHB1 - thank you for reporting this one.
Are you using CDN to host the files (either Office 365 CDN or custom CDN)?
If you add ?sw=bypass - will the error go away?
@demyren - fyi

I am using app catalog sites to render files.

@JayHB1 - can you check if ?sw=bypass removes the error?
Can you also check the Network in both situations (when correct and incorrect versions are loaded) and provide what files and from what location are loaded.


Remove Prod-Pipes PAT

Repo is no longer private, and this expired token is crashing the deploy workflow
Also bumps the gcloud setup workflow which is available at V0
https://github.com/marketplace/actions/set-up-gcloud-cloud-sdk-environment

useful thread https://github.com/actions/checkout/issues/664


add tests for core.fix

I was debugging some issues with the Fix functionality and wrote some tests. Figured they would be useful!
@junners

Appreciate your contribution Kyle!!


added new user to  servicenow-devops. plugin access

added new user to  servicenow-devops. plugin access
Link to GitHub repository
https://github.com/jenkinsci/servicenow-devops-plugin
When modifying release permission
List the GitHub usernames of the users who should have commit permissions below:

ramasnow

This is needed in order to cut releases of the plugin or component.
If you are modifying the release permission of your plugin or component, fill out the following checklist:

### Release permission checklist (for submitters)
- [x] The usernames of the users added to the "developers" section in the .yml file are the same the users use to log in to [accounts.jenkins.io](https://accounts.jenkins.io/).
- [x] All users added have logged in to [Artifactory](https://repo.jenkins-ci.org/) and [Jira](https://issues.jenkins.io/) once.
- [x] I have mentioned an [existing team member](https://github.com/orgs/jenkinsci/teams) of the plugin or component team to approve this request.

When enabling automated releases (cd: true)
Follow the documentation to ensure, your pull request is set up properly. Don't merge it yet.
In case of changes requested by the hosting team, an open PR facilitates future reviews, without derailing work across multiple PRs.
Link to the PR enabling CD in your plugin

### CD checklist (for submitters)
- [x] I have provided a link to the pull request in my plugin, which enables CD according to the documentation.

### Reviewer checklist
- [x] Check that the `$pluginId Developers` team has `Admin` permissions while granting the access.
- [ ] In the case of plugin adoption, ensure that the Jenkins Jira default assignee is either removed or changed to the new maintainer.
- [ ] If security contacts are changed (this includes add/remove), ping the security officer (currently `@Wadeck`) in this pull request. If an email contact is changed, wait for approval from the security officer.

There are IRC Bot commands for it.

Existing team member:  mdavireddy approved the PR


[3.x] Fix crash when dragging from Input Map to VisualScript editor

Fixes #60043
When dragging Input Map entries, the drag data mislabeled itself as "nodes".

Thanks!


docs(guidelines): pre-commit note for adding to path after install

Note of adding pre-commit to PATH after installation.

@cvetakra what happens if you just delete the .idea/.gitignore file and commit the changes here.
I think that will remove the file from this PR entirely :)


Thorium and Sensor Kits

If you use a remote sensor kit on an IC2 reactor that contains IC2 fuel cells (uranium or MOX) then it can provide the time remaining until the reactor runs out of fuel (assuming constant runtime). However this piece of information doesn't work for thorium.

NC: 2.3.3Exist
Pack: InfiTech 2

Just quoting @Blood-Asp:

Purely code on NC side. Me replacing also Uranium&Mox fuel rods in the latest GT version will also break that support currently working partly.

We'll probably have to do our own PR on his repo to get this fixed.

This or his?

Hah, I thought I was posting that to the modpack repo. But I meant that we'd probably have to make a PR here to get it fixed, as you haven't expressed any interest.
It would probably be easier if @Blood-Asp explained what changed, and @xbony2 explained what NC is actually looking for in a fuel cell.

NC used to support for this, but it was dropped in GT5 since it removed those nuclear components. This may be relevant.

You mean the relevant GT API was removed, or the actual fuel cells were removed? GT5U (which is the only version of GT5 which is in active development) added them back in.

Both were.


fix(datastore): v1 swap like for instr in sql queries

Issue #

Description

General Checklist

[ ] Added new tests to cover change, if needed
[ ] Build succeeds with all target using Swift Package Manager
[ ] All unit tests pass
[ ] All integration tests pass
[ ] Security oriented best practices and standards are followed (e.g. using input sanitization, principle of least privilege, etc)
[ ] Documentation update for the change if required
[ ] PR title conforms to conventional commit style
[ ] New or updated tests include Given When Then inline code documentation and are named accordingly testThing_condition_expectation()
[ ] If breaking change, documentation/changelog update with migration instructions

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #2819 (de81d1c) into v1 (f659187) will increase coverage by 0.00%.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@           Coverage Diff           @@
##               v1    #2819   +/-   ##
=======================================
  Coverage   64.40%   64.41%
=======================================
  Files         720      720
  Lines       22836    22837    +1
=======================================
+ Hits        14708    14710    +2
+ Misses       8128     8127    -1

Flag
Coverage Δ

API_plugin_unit_test
66.62% <ø> (+0.09%)
:arrow_up:

AWSPluginsCore
73.37% <ø> (ø)

Amplify
51.27% <ø> (ø)

Analytics_plugin_unit_test
72.58% <ø> (ø)

Auth_plugin_unit_test
83.80% <ø> (ø)

DataStore_plugin_unit_test
82.06% <100.00%> (-0.02%)
:arrow_down:

Geo_plugin_unit_test
57.87% <ø> (ø)

Predictions_plugin_unit_test
33.58% <ø> (ø)

Storage_plugin_unit_test
59.53% <ø> (ø)

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

Impacted Files
Coverage Δ

...yPlugin/Storage/SQLite/QueryPredicate+SQLite.swift
100.00% <100.00%> (ø)

...Plugin/Storage/SQLite/SQLStatement+Condition.swift
98.00% <100.00%> (ø)

... and 5 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Adding arm64 job in Travis-ci

Why you need it?
I was trying to add arm64 jobs in Travis-ci. For this, I have installed docker-ce_18.06.0~ce~3-0~ubuntu as in this version docker-containerd will use port 10010 in docker.service by default. Added the required changes in the hack/codegen/swagger.sh and hack/install/install_local_persist.sh file in order to install it for arm64. I found that criu is not present for arm64 in xenial. So I have changed the distribution from xenial to bionic in .travis.yml and after that observed that some of the jobs start to fail for amd64 giving assertion error.
Like for "Integration test 0" getting the below assertion error -
=== RUN   Test
----------------------------------------------------------------------
FAIL: cli_run_blkio_test.go:40: PouchRunBlkioSuite.TestRunBlockIOWeight
cli_run_blkio_test.go:52:
    c.Assert(blkioWeight, check.Equals, strvalue)
... obtained string = "0"
... expected string = "100"

For the changes and other job issues please refer to the below commit and travis link.
Commit Link: https://github.com/odidev/pouch/commit/2b81e2b4f5c4125fffb7b2f27492bf27936323eb
Travis Link: https://travis-ci.com/github/odidev/pouch/builds/191448669
How it could be?
Are there any plans for adding arm64 jobs in Travis-ci and changing distribution from xenial to bionic?
To start with adding support in Travis-ci, can I get suggestions on the above issue?

I have switched to focal in order to use arm64-graviton but in focal docker-containerd is not using port 10010. As after docker-ce_18.06.0~ce~3-0~ubuntu version, by default containerd is not running in port 10010. So for now, I have commented the check_port function.
I have also done a few changes like -

Installed criu from the source as it is not available for focal using apt-get.

For nsenter it is already present in focal so just copied to the desired location.

Upgraded KUBERNETES_VERSION to "v1.18.10".

Installed various binaries for arm64 and also put the checks to pick the correct image and its tag.

Skipped some of the test cases which were failing for arm64 as the test cases were using busyboxImage 1.25 and this is not available for arm64.

Did some changes in “alibaba/cri-tools” repository in order to resolve the test cases that were failing for “CRIv1alpha2 test” job.
Link - https://github.com/pheobe12/cri-tools/commit/abd4867f508709c144fc69e4dcf12b819955ad2f

For the changes and the job issues please refer to the below commit and Travis link.
Commit Link- https://github.com/pheobe12/pouch/commit/f5182252c693aa67caa057e007eea6307f7b2695
Travis Link- https://travis-ci.com/github/pheobe12/pouch/builds/204896892
After these changes there are jobs that are failing for arm64 as well as amd64 and docker-containerd is not running in port 10010. Can you please provide any pointers on them?


Flickering in empty state panel

See attached animated gif
Private Zenhub Image

Duplicate of https://github.com/digma-ai/digma-ui/issues/211


Back navigation issue (using letest version in android)

in Upto Android 13 devices?
When I navigate from one screen to another, the app closes after pressing the back button of the device
He is taking me to the home screen instead of the back screen

same

Would it be possible to get a sample project or reproduction so it can be fixed?

Hi! @baptistejamin any chance there's a fix for this issue? Downgrading to 0.13.3 doesn't seem like a good workaround and I couldn't figure out how to force the underlying android sdk to be 1.0.18 with the 0.14.1 version as @robert-lk suggested. Thanks!

You can use pnpm patch or patch-package and path node_modules/react-native-crisp-chat-sdk/android/build.gradle
e.g.
diff --git a/android/build.gradle b/android/build.gradle
index d3bf82eb91152c038ea14cd1d932932e2fe3363d..6a16b5776aaf4fb33dea8e64f66bde89ed3a751e 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -126,5 +126,5 @@ dependencies {
   // noinspection GradleDynamicVersion
   api 'com.facebook.react:react-native:+'
   implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
-  implementation 'im.crisp:crisp-sdk:2.0.0beta1'
+  implementation 'im.crisp:crisp-sdk:1.0.18'
 }

Anyone here can provide a demo project that is getting affected with this?

Same issue :/
@baptistejamin just init a Expo project with the lib at 0.14.1. Build Android app with React Navigation with 2 Stack. when press back button on Android it close the app.

@baptistejamin
This is because android:enableOnBackInvokedCallback is set to true at the application level in the Android manifest file. This breaks system back navigation on React Native apps with Android versions above 13.
To fix this issue:
Add
android:enableOnBackInvokedCallback="true" tools:replace="android:enableOnBackInvokedCallback" in the application attribute of your AndroidManifest.xml
This was a very annoying issue to debug. I hope this is fixed in the next release or at least documented.

@Doc1faux I tried replicating my project bit by bit to see what was the cause of the error, when I installed "react-native-crisp-chat-sdk": "^0.14.4",, I faced this error, again on new project, I updated the package to new version still same issue.
I will share the repo to reproduce this bug in a moment.

@Doc1faux I tried replicating my project bit by bit to see what was the cause of the error, when I installed "react-native-crisp-chat-sdk": "^0.14.4",, I faced this error, again on new project, I updated the package to new version still same issue.
I will share the repo to reproduce this bug in a moment.

Link to reproduce.
Clone locally and test.
Back button close the app:

run npm install
run npm run android

Back button work fine:

Remove "react-native-crisp-chat-sdk": "^0.15.2", from package.json
run rm -rf node_modules
run npm install
run npm run android

https://github.com/raghav-phonebox/navigation-test

same, downgrade android sdk to 1.0.18 helped

This throws error in new version.


Multicall 403 sleeping after 4 min

Did you read the instructions?

[X] I have read the README.

The problem
The script is working perfect. Thanks a lot, it works very nice!
I have a multical 403 from ennatuurlijk in the Netherlands. A version with a battery.
When you press a button you can read the meter for 4 minutes. After 4 minutes it is going in a sleep modus and you have to press a button to wake it. After 4 minutes it will fall asleep again.
I do use this reader: https://wiki.hal9k.dk/projects/kamstrup with magnets. I already placed some more magnets, but it does not work. Does anyone have a solution for this, or do I have to add a servo wich will press the button before reading the meter? :-X
What version of this integration has the issue?
2.2.0
What version of Home Assistant Core has the issue?
Core 2023.2.2
Home Assistant log
No response
Diagnostics
No response
Additional information
No response

Hi Marmachine,
My sensor (IR reader) is working when the kamstrup is awake. So I think buying another reader will not be the solution.
In the customer reviews I don't see a solution to keep the multical 403 awake. Do you?

The setup-loop does not contain a configurable parameter for IR sleep or disable, so I think you should be able to read the meter with any interval. This integration reads the meter with a default interval of one hour but you can decrease that if you wish. Because it also has a battery indicator you will be warned of low battery conditions in time.

Update: I might have found the issue here (from reading the manual).

So placement of the magnets in the optical interface is key to your problem.

Am confirming HAEedwin's observation. Last half year I've an easy-to-replace as well as continuously working set up with a small magnat (3 cm long, 0.5 cm thick, 1 cm wide) on top of the Kamstrup (somewhere just above the window) and the eye centered 1 cm from the IR window. All is 'temperarily' fixed with elastic bands.
Most pleased with the set-up !
A bracket such as mentioned at https://www.thingiverse.com/thing:5615493 may even be better, and I guess the magnat can then be permanently glued on the plastic lip.
By the way maybe an extra idea for Golles integration and related to the Kamstrup sleeping and awake (=testingreading) mode: the Intelligent battery saver function triggered by event on top of the default scan interval for contineous operation of say every hour.
Dear Golles, please consider a scan interval that is variable depending the flow (or flow changes) and extra measurent triggered via one 'external' input. HA can configure to gather events such as douche_on, douche_off and radiator_heat_on and radiator_heat_off and summarise this to the input event of your integration.
Then both batterylife (although not our oncern as the meter is owned and selected by the heatcompany and thus to be maintained by that company) can be extended as well as that we are getting more accurate (read frequenter) flow measurement at the start and stop of these heat peaks and during these peak heat loads.
Why peak head loads? The heat grid has high capacity and hence (due to time based, present based switched on thermostat, douching people) most of heat consumption in the house is with 'shock loads'.  See refered picture with a flow graph. The heat loads with a more steady pattern twice a day for one hour are caused by the heating of the floor.
Even the by smart thermostats regulated 'quick' radiators have a heat-consumption-time-sequence with a heat peak of 15 minutes and then 30 min offcooling while in constant heating mode.
So when the Kamstrup heat readout is more frequent during those heat-up periods, then in-overall a more timed accurate measurement is made meanwhile saving battery during the none peak duration. And in that more accurate case HA can also such be configured to couple this time accurate heat measurement with time accurate water usage, and then HA can even calculate the heat usage e.g. for one shower, rather than per fixed e.g. 600 seconds.
And if so, then HA can even substract the douche heat from the air heating and show to us more complete  heat balance of the house.
Anyhow, maybe the above mentioned idea is a bit over the top.
I already much appreciate the current integration and am most pleased with the current set-up ;) .

Fascinating conversation, this could also explain an issue I had a while ago. I wasn't getting data from my meter for a couple of days and after replacing the optical eye, it worked again. Probably the magnet was too far away by accidentally changing the placement of the optical eye...

Dear Golles, please consider a scan interval that is variable depending the flow (or flow changes) and extra measurent triggered via one 'external' input. HA can configure to gather events such as douche_on, douche_off and radiator_heat_on and radiator_heat_off and summarise this to the input event of your integration.

@Wipnose, doing something depending on flow is very difficult (chicken-egg problem); you need to read from the meter to know the flow...
However, you can do manuel updates without changing the scan interval. If you trigger the homeassistant.update_entity service with any given entity from this integration, all the values will be read from the meter:
service: homeassistant.update_entity
target:
  entity_id: sensor.kamstrup_403_heat_energy_e1

In your case, you can trigger that service every x seconds/minutes with an automation while your douche_on is set.

I was reading this with interrest @Wipnose though the simple solution could lie in the addition to install a 24V adapter. It would indeed be great to increase the interval when for example the bathroom lights are switched on. Can the interval also be influenced by calling the service somehow? I see the DataUpdateCoordinator must be implemented first to enable changing the interval without restart probably.
I'll call Eneco and ask if they are willing to provide me an adapter (but it will need an installer and costs time/money). The installer that came by yesterday could not provide one (out of scope of duties).

I have found the solution.
In my reader are 4 magnets. I printed a new housing with place for 1 round 10mm magnet just above the display. It failed. Turning the magnet 18- degree fixed it. It looks like the magnet has to be above the display and north / south of the magnet does matter.

@Golles: invoking the heat reading with a service invoked/called by homeassistant.update_entity solves the time issue ! Great.
I will set my Kamstrup integration scan interval to 3600 sec and once the douche starts and during other detected 'heat peak loads' my automation in Node Red will call the measurement service in much shorter time intervals.
Thanks for your trigger suggestion.

I have found the solution.
In my reader are 4 magnets. I printed a new housing with place for 1 round 10mm magnet just above the display. It failed. Turning the magnet 18- degree fixed it. It looks like the magnet has to be above the display and north / south of the magnet does matter.

Awesome that you managed to resolve this. Maybe you can add a short summary to #38 or mention this issue with a post in there as well. I'm pretty sure that this information will help others as well!
Also, if you want, you can close this issue, if you want to leave it open to continue the discussion for some time, I'm also happy with that.

I have found the solution.
In my reader are 4 magnets. I printed a new housing with place for 1 round 10mm magnet just above the display. It failed. Turning the magnet 18- degree fixed it. It looks like the magnet has to be above the display and north / south of the magnet does matter.

Awesome that you managed to resolve this. Maybe you can add a short summary to #38 or mention this issue with a post in there as well. I'm pretty sure that this information will help others as well!
Also, if you want, you can close this issue, if you want to leave it open to continue the discussion for some time, I'm also happy with that.

I will do that. I'm desining a new housing for the IR reader with 1 round 10mm magnet. I will post a picture and a URL of the desing here. Thanks very much for all the reply's and the help!

Here are some pictures and a new housing:
https://www.thingiverse.com/thing:5179312
It works perfect. HA does read the kamstrup every 3600 seconds without falling in sleep.
Thanks!


Update logstash-http-status-codes.dict

Missing , at line 431

Hey mate,
Great stuff on these .conf files for bro.  The all-inclusive one is working like a charm for the newer versions of Logstash, however the older files that more individually address each .log file are throwing all kinds of shits.  I tried poking around and seeing if it was not happen with certain syntax but I’m clueless on it thus far.
Any updates or have you had similar issues?  Cheers.
Best Wishes,
James Rudisill
SFS Member | CyberCorp
Vice President  | 49th Security Division
Board Advisor | Charlotte Metro ISSA
Cyber Security | SIS Department | CCI College
University of North Carolina at Charlotte
On Dec 9, 2016, at 3:36 AM, Tim Molter <notifications<EMAIL_ADDRESS>wrote:
Merged #1https://github.com/timmolter/logstash-dfir/pull/1.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/timmolter/logstash-dfir/pull/1#event-888030602, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AOh-T4vS0exUMX42Q4u8iunDwE0DLEd6ks5rGRL8gaJpZM4LIk7M.

I haven't had time to look into it, nor will I unfortunately. Sounds like they changed the API or something making them incompatible. :(


Improve Travis build process

We should update Travis to use a more robust build process for Wowser:

npm run lint
npm test --coverage
npm run web-release

Ideally, this will keep Wowser in a much better state for new users to tinker with, as well as keep us more honest about resolving linting complaints.

👍


Shorter name for this package

I feel that Sorting.jl is a better name for this package.

It's a pain to rename packages after they've been registered, not really worth it.

No need to rename.


Renew local environment Setup

Since we don't have a backend component anymore, the docker-compose file doesn't need a db and server component anymore. Furthermore, the Dockerfile for the frontend has to be rebuilt. We may also think about completely removing the backend directory from our repository.

https://github.com/taia-x/taia-x/blob/a3a178a712b157736f7066958ffd200be75eedba/frontend/Dockerfile#L7
Hey Kevin, would you consider changing it to yarn install, it seems more stable to me, and npm install was causing some errors?

#9 223.1 [4/4] Building fresh packages...
#9 224.7 error /opt/taia-x/frontend/node_modules/deasync: Command failed.
#9 224.7 Exit code: 1
#9 224.7 Command: node ./build.js
#9 224.7 Arguments:
#9 224.7 Directory: /opt/taia-x/frontend/node_modules/deasync
#9 224.7 Output:
#9 224.7 gyp info it worked if it ends with ok
#9 224.7 gyp info using<EMAIL_ADDRESS>#9 224.7 gyp info using<EMAIL_ADDRESS>| linux | arm64
#9 224.7 gyp ERR! find Python
#9 224.7 gyp ERR! find Python Python is not set from command line or npm configuration
#9 224.7 gyp ERR! find Python Python is not set from environment variable PYTHON
#9 224.7 gyp ERR! find Python checking if "python3" can be used
#9 224.7 gyp ERR! find Python - "python3" is not in PATH or produced an error
#9 224.7 gyp ERR! find Python checking if "python" can be used
#9 224.7 gyp ERR! find Python - "python" is not in PATH or produced an error
#9 224.7 gyp ERR! find Python
#9 224.7 gyp ERR! find Python **********************************************************
#9 224.7 gyp ERR! find Python You need to install the latest version of Python.
#9 224.7 gyp ERR! find Python Node-gyp should be able to find and use Python. If not,
#9 224.7 gyp ERR! find Python you can try one of the following options:
#9 224.7 gyp ERR! find Python - Use the switch --python="/path/to/pythonexecutable"
#9 224.7 gyp ERR! find Python (accepted by both node-gyp and npm)
#9 224.7 gyp ERR! find Python - Set the environment variable PYTHON
#9 224.7 gyp ERR! find Python - Set the npm configuration variable python:
#9 224.7 gyp ERR! find Python   npm config set python "/path/to/pythonexecutable"
#9 224.7 gyp ERR! find Python For more information consult the documentation at:
#9 224.7 gyp ERR! find Python https://github.com/nodejs/node-gyp#installation
#9 224.7 gyp ERR! find Python **********************************************************
#9 224.7 gyp ERR! find Python
#9 224.7 gyp ERR! configure error
#9 224.7 gyp ERR! stack Error: Could not find any Python installation to use
#9 224.7 gyp ERR! stack     at PythonFinder.fail (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/find-python.js:330:47)
#9 224.7 gyp ERR! stack     at PythonFinder.runChecks (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/find-python.js:159:21)
#9 224.7 gyp ERR! stack     at PythonFinder.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/find-python.js:202:16)
#9 224.7 gyp ERR! stack     at PythonFinder.execFileCallback (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/find-python.js:294:16)
#9 224.7 gyp ERR! stack     at exithandler (node:child_process:404:5)
#9 224.7 gyp ERR! stack     at ChildProcess.errorhandler (node:child_process:416:5)
#9 224.7 gyp ERR! stack     at ChildProcess.emit (node:events:390:28)
#9 224.7 gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:288:12)
#9 224.7 gyp ERR! stack     at onErrorNT (node:internal/child_process:477:16)
#9 224.7 gyp ERR! stack     at processTicksAndRejections (node:internal/process/task_queues:83:21)
#9 224.7 gyp ERR! System Linux 5.10.76-linuxkit
#9 224.7 gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
#9 224.7 gyp ERR! cwd /opt/taia-x/frontend/node_modules/deasync
#9 224.7 gyp ERR! node -v v16.13.1
#9 224.7 gyp ERR! node-gyp -v v8.3.0
#9 224.7 gyp ERR! not ok
#9 224.7 Build failed

I'm also getting this error, which from what I could find on google, looks like node-gyp is failing because it can't find Python. Here is the link to the issue.
I will install Python global, but the purpose of docker is that anyone can run it locally just by executing docker-compose up, so I don't think that this problem should occur at all. Maybe we have to look a bit more into this, what do you think?

@eliodemollari I don't know, for me everything runs just fine via docker compose up or docker compose up frontend.

@eliodemollari can you pull the latest version of the branch and try again? Beforehand I would suggest to delete the old container via docker rm <container id> and delete the image via docker rmi <image id>.

@amrap030 Unfortunately it's not working, even though I deleted first all images & containers. It looks like a conflict between two dependencies:
While resolving<EMAIL_ADDRESS>Found<EMAIL_ADDRESS>
Do you have any idea, because from what I read on google it occurs when using vue.js

@eliodemollari I have no idea. We can look at it via Zoom if you want. Just hit me up on slack, to find a suitable timeslot.
What happens when you run it without docker and only run npm run serve in the frontend folder?

@amrap030 I changed the version of the two dependencies and now it seems to work

@eliodemollari @amrap030 I have integrated a dotenv file for the frontend, so that we no longer track the contract address (which is different for everyone in the sandbox - please keep in mind that you need to create the .env file). If you now want to originate the contract in the testnet and use it in the frontend, you have to manually adjust the url and contract address inhere after deployment with yarn deploy:testnet. If you have ideas to solve this more elegantly (e.g. with two different modes - dev and staging - with which you can start the docker-compose services) I'm open to it, but I couldn't think of a better solution based on our use case (Against the two modes speaks for example that the staging mode is actually also local, because the frontend is not deployed anywhere).

Merged via #108

I was still having some troubles with thedeploy.js. So I will reopen it and work today on the error.


Enforce LF

This fixes issues on Windows where autocrlf is true by default

Force push is never great for others @XhmikosR ...

Well, it's great for me to keep the branch clean.
On Sun, Feb 23, 2020, 12:49 Nissar Chababy<EMAIL_ADDRESS>wrote:

Force push is never great for others @XhmikosR
https://github.com/XhmikosR ...
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/StevenBlack/hosts/pull/1157?email_source=notifications&email_token=AACVLNLBVXKKWWPZUZXH463REJIC5A5CNFSM4KZRPZ2KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMVYQAQ#issuecomment-590055426,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACVLNOFKGFQH3PFXPUDN2DREJIC5ANCNFSM4KZRPZ2A
.

It's a great way to keep a branch clean. But it may cause some issues on the merge. It does not happen every time. But for a few times, I played with it. It broke the copies of all my teammates.
It's unnecessary noise. I agree it's great to be able to push --force. But on a bigger scale when we are more than 2 people cloning. It can be a nightmare!
My opinion...

It does not happen every time. But for a few times, I played with it. It broke the copies of all my teammates.

This is true 100%, but hey, it's my fork so I'm the only contributor :P
It's not that hard to deal with rebases in unmerged branches, but requires some extra steps. Alternatively, one can just use the option when merging a PR, which isn't being used here judging by the last PR merge.

It's yours Steve @StevenBlack !

Nissar @funilrys, do you know, what's the impact of this for the repo, as a whole?
Last thing I want is enormous diffs each time PRs alternate from Windows authors to non-Windows authors.
It's the Windows OS that, from its earliest days, gets line-endings wrong.

This actually just enforces the line endings to be LF like in the editor
config file regardless of the OS.

Last thing I want is enormous diffs each time PRs alternate from Windows
authors to non-Windows authors.
It's the Windows OS that, from its earliest days, gets line-endings wrong.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/StevenBlack/hosts/pull/1157?email_source=notifications&email_token=AACVLNLANXWGMTLYAW6NKJDREKZZHA5CNFSM4KZRPZ2KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMWCRPA#issuecomment-590096572,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACVLNLFEDPMK5A7Z5THSOLREKZZHANCNFSM4KZRPZ2A
.

Oh I get it now.  Duh!
Merging.
Thanks everyone!


operator: make Job a child of component

Description
Components make its kubernetes resources 'children' of the component resource: This helps with navigating around the kubernetes APIs as well as with garbage collection.
The current implementation only does this for Deployments, Services and PersistentVolumeClaim. This issue is to include Jobs (Job resource in the batch/v1 K8s API).

We should also allow cronjobs, statefulsets, configmap, secret, serviceaccount, role, rolebinding (in addition to services, deployments, persistentvolumeclaims, jobs). We should not support:

ingress - A developer should express a components intent via APIs and not via ingress. The canvas should create any required ingress
pod, replicaset - a developer should use deployments (for stateless microservices) or statefulsets (for stateful microservices)
demonset - a component developer should have no need for creating a demonset
clusterrole, clusterrolebinding - a component developer should have no need for creating a clusterrole, clusterrolebinding they should be using role, rolebinding
(I'll create a separate issue in the CTK to warn about these.)


Fixing multiple redirects on logout

@blueorangutan package

@davidjumani a Jenkins job has been kicked to build primate packages. I'll keep you posted as I make progress.

Packaging result: :heavy_check_mark:centos :heavy_check_mark:debian :heavy_check_mark:archive.
QA: http://primate-qa.cloudstack.cloud:8080/client/pr/771 (JID-3544)


Web demo GUI changes

Please consider these changes to the web GUI!
The web page is now in a side-by-side style for displaying errors. It also attempts to configure itself from the server rather than from static values and supports Markdown and Wiki document parsing.
Since there can be multiple configurations per language, it lets you choose language and configuration separately.
There is a small change in core - I created a map for the parser names to the parser instances so they could be discovered, and modified the 'of' method to use the map to reduce string value duplication.
I had a little spare time so I corrected some of the English in the error messages.
Please let me know if there are any issues or suggestions!

Coverage increased (+0.14%) to 81.63% when pulling f7a7dd87612a051597336dabc29f08ae97c87955 on gerryhocks:master into 1b48906716d2300d17ef9f2bf55b7b89e620dae5 on recruit-tech:master.

Coverage increased (+0.14%) to 81.63% when pulling ee5d2e32f6298009c69c09fb462a9131edc0f381 on gerryhocks:master into 1b48906716d2300d17ef9f2bf55b7b89e620dae5 on recruit-tech:master.

Very sorry for the late reply I will look into the changes and merge it.

LGTM

Thank you for the excellent web demo @gerryhocks!


Having trouble reproducing results

I've been trying to reproduce your results on MNIST, CIFAR10 and ImageNet but I can't quite get the same accuracies as in your paper. I tend to trust your results so I think it's more of a code or hyperparameters problem.
I had no problem on MNIST, I got 99.40%.
On CIFAR10 I ran the exact command supposed to yield 90.35% accuracy:
python main.py --net-type 'noiseresnet18' --dataset-test 'CIFAR10' --dataset-train 'CIFAR10' --nfilters 128 --batch-size 10 --learning-rate 1e-4 --first_filter_size 3 --level 0.1 --optim-method Adam --nepochs 450
I obtained 89.38%. The same command with 256 filters instead of 128 gets me to 90.76%. It's ok compared to 90.35%, as I don't know the variance of PNNs, but you also say that after rerunning experiments following MK's remark, the 94% of your paper more or less holds. My results are quite far from that, in between MK's and that of the paper.
ImageNet is more problematic. The code on this repo doesn't seem to be actually intended to run on ImageNet, so I needed to fix a few things first. I don't think it's important but I'll put the modifications here just so you have all the informations. I added this in main.py between line 123 and 125:
 elif self.dataset_train_name.startswith("ImageNet"):
        self.nclasses = 1000
        self.input_size = 224
        if self.filter_size < 7:
           self.avgpool = 14  #TODO
        elif self.filter_size == 7:
           self.avgpool = 7

just copying what was above and changing nclasses and input_size, but maybe I should have changed avgpool as well. There was also a little change needed because some arguments for creating ImageNet dataloaders are not parsed, namely input_filename_train and input_filnename_test.
I had to change line 494 in models.py from pool = 1 to pool = 7 because otherwise there was a dimension mismatch at the linear layer. A pooling with kernel size 1 and stride 1 is useless, so I guess it was a typo. Finally, I had to change NoiseLayer to this so I could run on two GPUs (there was a device problem with your implementation):
class NoiseLayer(nn.Module):
    def __init__(self, in_planes, out_planes, level, act):
        super(NoiseLayer, self).__init__()
        self.register_parameter('noise', None)
        self.level = level
        self.layers = nn.Sequential(
            act,
            nn.BatchNorm2d(in_planes),  # TODO paper does not use it!
            nn.Conv2d(in_planes, out_planes, kernel_size=1, stride=1),
        )

    def set_noise(self, input):
        noise = input.new(input.data[0].size()).uniform_()
        noise = self.level * (2*noise - 1)
        self.noise = nn.Parameter(noise)

    def forward(self, x):
        if self.noise is None:
            self.set_noise(x)

        y = torch.add(x, self.noise)
        return self.layers(y)  # input, perturb, relu, batchnorm, conv1x1

I tried 3 different settings, always with noiseresnet-18, Adam with learning rate 1e-4, first filter size of 7 and noise level of 0.1.
First was 64 filters and batch size 128, I got 39%.
Second was 128 filters and batch size 128, I got 52%.
Now I'm running 256 filters and batch size 64 (which you can imagine is slow). It's not finished yet but at epoch 24 the validation accuracy is 47%, which is about 10% (in absolute) behind your best model in Figure 5 of your paper at the same epoch. The curve looks like it's going to reach about 60% at most. Also I doubt you put as many as 256 filters in the first layer of your model (it should be 64 if it's a proper ResNet-18, but tell me if not), so there is probably something wrong with what I do.
I suspect the problem is with the number of masks but there is something I don't understand about it. From your paper I get that there is an intermediate representation of m channels, with m a multiple of p, the number of input channel and m/p the number of mascks per input channel, but a few things seem incoherent to me with respect to that.
First, equation 2 only works with m=p. Shouldn't the index on x be a fixed one indicating the input channel, so we apply m masks to the same input channel ? Otherwise it doesn't really fit to the multiple different "views" of a single channel that was already in LBCNNs. In that case you would also need to indicate that index on nu if you want to have m x p perturbations masks, like in part 4.1. Moreover, it would mean there is a confusion between m and m / p : m is the number of masks per input channel in equation 2 and becomes the total number of channels of the intermediary representation in part 4.1. Following the first case, the intermediary representation would actually be of size mxp and you would have m x p x q learnable parameters, otherwise the output would be to big by a factor of p. The parameter saving would then be h x w  / m, which is the same as p x h x w / m is if we replace m / p by m. Also, your implementation only allows for m=p, unlike MK's. So then what does N masks (e.g. 256) mean exactly in your paper ? While reading, I assumed it was a fixed number throughout all layers, but that means the last block(s) would have less than one mask per input channel, which does not make sense to me. Is it then the number for the first perturbative layer, meaning m=4p for N=256 ? In that case what code did you actually run if the one on this repo only allows for m=p ? Or is it simply the number of filters and m=p throughout the network ? Then the difference of performance between my model and yours would come from other hyperparameters.
Sorry, I didn't realize before starting this issue that my understanding was so fuzzy, and it got longer than expected. I hope you will find the time to answer my questions, which are in brief:

could you clarify how exactly the masks are added to the input and combined together ? which interpretation is the right one ?
what are the new accuracies you get after rerunning the experiments following MK's post ?
did you use this code to run your experiments ? if yes (which doesn't seem to be the case for ImageNet) which command should I use to reproduce your results ?

hi there, thanks for your questions. currently i am on sabbatical and i will be able to answer some of your questions after i come back around mid april.

Hey, I'm trying to reproduce the results on MNIST. Currently, when running:
python main.py --net-type 'noiseresnet18' --dataset-test 'MNIST' --dataset-train 'MNIST' --nfilters 128 --batch-size 10 --learning-rate 1e-4 --first_filter_size 3 --level 0.1 --optim-method Adam --nepochs 450
I get the following error:
File "main.py", line 320, in <module>     tr_loss, tr_acc = train(epoch, loader_train)   File "main.py", line 202, in train     output = self.model(input)   File "/home/eli/anaconda3/envs/pytorch/lib/python3.7/site-packages/torch/nn/modules/module.py", line 489, in __call__     result = self.forward(*input, **kwargs)   File "/home/eli/Workspace/test/pnn.pytorch.update/models.py", line 536, in forward     x1 = self.pre_layers(x)   File "/home/eli/anaconda3/envs/pytorch/lib/python3.7/site-packages/torch/nn/modules/module.py", line 489, in __call__     result = self.forward(*input, **kwargs)   File "/home/eli/anaconda3/envs/pytorch/lib/python3.7/site-packages/torch/nn/modules/container.py", line 92, in forward     input = module(input)   File "/home/eli/anaconda3/envs/pytorch/lib/python3.7/site-packages/torch/nn/modules/module.py", line 489, in __call__     result = self.forward(*input, **kwargs)   File "/home/eli/anaconda3/envs/pytorch/lib/python3.7/site-packages/torch/nn/modules/conv.py", line 320, in forward     self.padding, self.dilation, self.groups) RuntimeError: Given groups=1, weight of size [128, 3, 3, 3], expected input[10, 1, 28, 28] to have 3 channels, but got 1 channels instead
Any help please?
Thanks.

Hi,
I'm having the same issues like @elisim describe. can someone please assist?
Best regards,
Tal.

That's because noiseresnet18 is not intended to be run on MNIST. It expects RGB images (3 channels) but MNIST is greyscale (1 channel). I used lenet.

hi there, thanks for your questions. currently i am on sabbatical and i will be able to answer some of your questions after i come back around mid april.

Hi Felix, are you back and able to answer my questions, by any chance ?


Copying logs ends up pulling in line numbers (bug)

To track the issue raised here https://github.com/ocurrent/ocaml-ci/issues/635#issuecomment-1326724311

This looks to be a fairly complex problem due to the logs being a HTML table, with the line numbers in one column and the text logs in the other. According to this Stack Overflow answer it requires some quite involved JS.
However, copying and pasting logs is a very important feature!
WDYT @novemberkilo?

Thanks for the investigation @benmandrew - I am wondering if this is also addressed by simply providing the logs in raw form (no line numbers and no formatting).

I think that's a better solution for now. Line numbers are important but I'd prefer to have copy-pasting in first.

I can reproduce the issue in Safari on Mac OS but this does not occur when copying logs in Firefox (Developer Edition) or Brave (Chromium) on Mac OS.

Following #698 received the following from GitHub support:

Hey Navin,
I'm glad I could get you closer to what you're after.
Unfortunately I think what you're running into now are quirks specific to these browsers, when copying from tables, as I get the same results pasting into a plain-text editor as pasting on GitHub.com
I was able to find a number of bug reports that may be relevant to this behaviour.

Firefox

table has newlines added upon copying
user-select: none in table adds linebreaks to copied text

Safari/Webkit

Bug 19625 - In Safari, Copying text from a table cell is copying the table around the text
Bug 80159 - Content with -webkit-user-select: none should be skipped during copy

I was going to suggest adding -webkit-user-select: none to your line-numbers as I thought that may prevent Safari from copying them, however that didn't work in my testing. In surprising fortune however it looks like this is unintended behaviour that has a fix on the way, with a PR added to WebKit/WebKit in just the last week.

Will leave open and track this to see if we can implement line-numbers in CSS rather than as part of the table content.


Feature Request:  Indexer DB validation mode

Summary
Currently Indexer can run as an DB updater  or a read-only mode.  It would be helpful if there as a third mode that would validate blocks between algod and what's in the PostgreSQL backend.  Ideally, it would have some REST API or Prometheus endpoint that would produce a list of blocks that have failed validation.
Urgency/Relative Priority

Not über urgent, but might help catch latent issues in the DB.  As more apps and wallets rely on the data Indexer is returning from the PostgreSQL backend, it seems it would be more important to verify the accuracy of that data.

Hi @PSjoe,
Thanks for that comment. The idea of a live one is great, though I'm not sure how it "fits" in the current architecture. It seems like it would fit an external service. Maybe we would be able to run a validation after every block simply as part of the import process (though might be tricky performance-wise). Nonetheless, we would look into it.

@PSjoe we have a couple tools which can validate indexer and algod:
https://github.com/algorand/indexer/tree/develop/cmd/validator
https://github.com/algorand/indexer/blob/develop/misc/validate_accounting.py
It's unlikely that we'll build these into indexer directly.

Closing since we have the validation tools for this now.


[Failed] failed to update deployment "flowers-sample-predictor-default-8h6b5-deployment"

Environment:

Istio Version: installed with kubeflow v1.0
Knative Version: installed with kubeflow v1.0
KFServing Version: installed with kubeflow v1.0
Kubeflow version: v1.0
Minikube version:
Kubernetes version: (use kubectl version): v1.15.1
OS (e.g. from /etc/os-release): ubuntu

I run the sample of tensorflow , but the inferenceservices was not in ready. the revision controller give error:
`Events:
  Type     Reason         Age   From                 Message
  ----     ------         ----  ----                 -------
  Warning  InternalError  10m   revision-controller  failed to update deployment "flowers-sample-predictor-default-8h6b5-deployment": Operation cannot be fulfilled on deployments.apps "flowers-sample-predictor-default-8h6b5-deployment": the object has been modified; please apply your changes to the latest version and try again`

Any suggestions? thanks.

the rollout history as follows:
$ kubectl rollout history inferenceservice.serving.kubeflow.org/flowers-sample -n sfe-serving
error: no kind "InferenceService" is registered for version "serving.kubeflow.org/v1alpha2" in scheme "k8s.io/kubernetes/pkg/kubectl/scheme/scheme.go:28"

describe the revision.serving.knative.dev/flowers-sample-predictor-default, report the following error:
$ kubectl describe revision.serving.knative.dev/flowers-sample-predictor-default-cxxp6 -n my-serving
....
Events:
  Type     Reason         Age    From                 Message
  ----     ------         ----   ----                 -------
  Warning  InternalError  3m35s  revision-controller  failed to update PA "flowers-sample-predictor-default-cxxp6": Operation cannot be fulfilled on podautoscalers.autoscaling.internal.knative.dev "flowers-sample-predictor-default-cxxp6": the object has been modified; please apply your changes to the latest version and try again
  Warning  InternalError  85s    revision-controller  failed to update deployment "flowers-sample-predictor-default-cxxp6-deployment": Operation cannot be fulfilled on deployments.apps "flowers-sample-predictor-default-cxxp6-deployment": the object has been modified; please apply your changes to the latest version and try again

Are you looking into following guide? I have also stacking even in sklearn-iris
KFSERVING_DEBUG_GUIDE.md

@edenbuaa Can you provide more details? the error you posted is benign k8s retry warning

thanks @sakaia.
@yuzisun  It maybe a deployment problem. I redeploy and the error is disappear. But I still can not run the sample successfully. When I run the sklearn sample following its guide. it give me 404 error:
$ curl -v -H "Host: ${SERVICE_HOSTNAME}" http://localhost:8080/v1/models/sklearn-iris:predict -d @./docs/samples/sklearn/iris-input.json
*   Trying <IP_ADDRESS>...
* Connected to localhost (<IP_ADDRESS>) port 8080 (#0)
> POST /v1/models/sklearn-iris:predict HTTP/1.1
> Host: sklearn-iris.sfe-serving.example.com
> User-Agent: curl/7.47.0
> Accept: */*
> Content-Length: 76
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 76 out of 76 bytes
< HTTP/1.1 404 Not Found
< x-powered-by: Express
< content-security-policy: default-src 'none'
< x-content-type-options: nosniff
< content-type: text/html; charset=utf-8
< content-length: 170
< date: Tue, 26 May 2020 10:47:55 GMT
< x-envoy-upstream-service-time: 10
< server: istio-envoy
<
<!DOCTYPE html>

<meta charset="utf-8">
<title>Error</title>

Cannot POST /v1/models/sklearn-iris:predict

* Connection #0 to host localhost left intact

Can the storageUri use a nas or nfs address?

@edenbuaa Can you paste your inference service yaml ?

@yuzisun the inference service yaml is same to the  sklearn sampe:
apiVersion: "serving.kubeflow.org/v1alpha2"
kind: "InferenceService"
metadata:
  name: "sklearn-iris"
spec:
  default:
    predictor:
      sklearn:
        storageUri: "gs://kfserving-samples/models/sklearn/iris"

and the status for the sklearn deployment:
NAME                                                   TYPE           CLUSTER-IP       EXTERNAL-IP                                            PORT(S)                             AGE
service/sklearn-iris-predictor-default                 ExternalName   <none>           cluster-local-gateway.istio-system.svc.cluster.local   <none>                              14h
service/sklearn-iris-predictor-default-g5jw5           ClusterIP      <IP_ADDRESS>    <none>                                                 80/TCP                              14h
service/sklearn-iris-predictor-default-g5jw5-private   ClusterIP      <IP_ADDRESS>   <none>                                                 80/TCP,9090/TCP,9091/TCP,8022/TCP   14h

NAME                                                              READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/sklearn-iris-predictor-default-g5jw5-deployment   0/0     0            0           14h

NAME                                                                         DESIRED   CURRENT   READY   AGE
replicaset.apps/sklearn-iris-predictor-default-g5jw5-deployment-74bf9dd698   0         0         0       14h

NAME                                                                CONFIG NAME                      K8S SERVICE NAME                       GENERATION   READY   REASON
revision.serving.knative.dev/sklearn-iris-predictor-default-g5jw5   sklearn-iris-predictor-default   sklearn-iris-predictor-default-g5jw5   1            True

NAME                                                         URL                                                             LATESTCREATED                          LATESTREADY                            READY   REASON
service.serving.knative.dev/sklearn-iris-predictor-default   http://sklearn-iris-predictor-default.sfe-serving.example.com   sklearn-iris-predictor-default-g5jw5   sklearn-iris-predictor-default-g5jw5   True

NAME                                                               LATESTCREATED                          LATESTREADY                            READY   REASON
configuration.serving.knative.dev/sklearn-iris-predictor-default   sklearn-iris-predictor-default-g5jw5   sklearn-iris-predictor-default-g5jw5   True

NAME                                                       URL                                                             READY   REASON
route.serving.knative.dev/sklearn-iris-predictor-default   http://sklearn-iris-predictor-default.sfe-serving.example.com   True

@edenbuaa Can you try my last comment on https://github.com/kubeflow/kfserving/issues/839

@yuzisun thanks. I follow your instructions to edit the config. but the second one kubectl edit cm config-istio -n knative-serving  not found in the config:
# Please edit the object below. Lines beginning with a '#' will be ignored,
# and an empty file will abort the edit. If an error occurs while saving this file will be
# reopened with the relevant failures.
#
apiVersion: v1
data:
  gateway.knative-serving.knative-ingress-gateway: kfserving-ingressgateway.istio-system.svc.cluster.local
  local-gateway.knative-serving.cluster-local-gateway: cluster-local-gateway.istio-system.svc.cluster.local
  local-gateway.mesh: mesh
  reconcileExternalGateway: "false"
kind: ConfigMap
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"v1","data":{"gateway.knative-serving.knative-ingress-gateway":"kfserving-ingressgateway.istio-system.svc.cluster.local","local-gateway.knative-serving.cluster-local-gateway":"cluster-local-gateway.istio-system.svc.cluster.local","local-gateway.mesh":"mesh","reconcileExternalGateway":"false"},"kind":"ConfigMap","metadata":{"annotations":{},"labels":{"app.kubernetes.io/component":"knative-serving-install","app.kubernetes.io/instance":"knative-serving-install-v0.11.1","app.kubernetes.io/managed-by":"kfctl","app.kubernetes.io/name":"knative-serving-install","app.kubernetes.io/part-of":"kubeflow","app.kubernetes.io/version":"v0.11.1","kustomize.component":"knative","networking.knative.dev/ingress-provider":"istio","serving.knative.dev/release":"v0.11.1"},"name":"config-istio","namespace":"knative-serving"}}
  creationTimestamp: "2020-05-22T10:44:22Z"
  labels:
    app.kubernetes.io/component: knative-serving-install
    app.kubernetes.io/instance: knative-serving-install-v0.11.1
    app.kubernetes.io/managed-by: kfctl
    app.kubernetes.io/name: knative-serving-install
    app.kubernetes.io/part-of: kubeflow
    app.kubernetes.io/version: v0.11.1
    kustomize.component: knative
    networking.knative.dev/ingress-provider: istio
    serving.knative.dev/release: v0.11.1
  name: config-istio
  namespace: knative-serving
  resourceVersion: "3307"
  selfLink: /api/v1/namespaces/knative-serving/configmaps/config-istio
  uid: e75035ff-03e2-4ce3-b15c-e5abdf85a25b

Do you mean the  gateway.knative-serving.knative-ingress-gateway ？

@edenbuaa yes, change gateway.knative-serving.knative-ingress-gateway: kfserving-ingressgateway.istio-system.svc.cluster.local to gateway.kubeflow.kubeflow-gateway: "istio-ingressgateway.istio-system.svc.cluster.local"

@yuzisun  it still reports the same 404 Not Found
Does it need to reapply the inference service?

@yuzisun  I reapply the sklearn inference service.  It doesn't work.
$ kubectl apply -f docs/samples/sklearn/sklearn.yaml  -n my-serving
inferenceservice.serving.kubeflow.org/sklearn-iris created
$ kubectl get inferenceservices sklearn-iris -n my-serving
NAME           URL   READY   DEFAULT TRAFFIC   CANARY TRAFFIC   AGE
sklearn-iris                                                    3m58s

$ kubectl get all -n my-serving
No resources found in sfe-serving namespace.

@yuzisun  I recovery the ingress gateway config. and deployment the sklearn inference service again.
the pod exit quickly. the pod's logs as follows:
$ kubectl logs sklearn-iris-predictor-default-wt4kj-deployment-dc9b67d89-qwrnt -n sfe-serving
error: a container name must be specified for pod sklearn-iris-predictor-default-wt4kj-deployment-dc9b67d89-qwrnt, choose one of: [kfserving-container queue-proxy] or one of the init containers: [storage-initializer]

@edenbuaa you need to specify the container name with -c  like
kubectl logs sklearn-iris-predictor-default-wt4kj-deployment-dc9b67d89-qwrnt -n sfe-serving -c kfserving-container or
kubectl logs sklearn-iris-predictor-default-wt4kj-deployment-dc9b67d89-qwrnt -n sfe-serving -c storage-initializer
In KFServing 0.2.2 the pod will go down after sometime if the service is idle which is knative's scale to zero feature, but once you send a request it will come up again to serve. In KFServing 0.3 onward we are defaulting minReplica to 1 so there will be minimally one pod serving the request load.

@yuzisun got it.
I found the listening port is 8080 in the kfserver:
$ kubectl logs sklearn-iris-predictor-default-2bcqq-deployment-6d8fb598d8l8cn2  -c kfserving-container
[I 200528 01:35:08 storage:35] Copying contents of /mnt/models to local
[I 200528 01:35:09 kfserver:83] Registering model: sklearn-iris
[I 200528 01:35:09 kfserver:72] Listening on port 8080
[I 200528 01:35:09 kfserver:74] Will fork 0 workers
[I 200528 01:35:09 process:126] Starting 16 processes

So, I set the port-forward to 8080.(it's 80 in the guide)
$ kubectl port-forward --namespace istio-system $(kubectl get pod --namespace istio-sysm --selector="app=istio-ingressgateway" --output jsonpath='{.items[0].metadata.name}') 8080:8080
and then, send a request to inference server. it report the following error:
*   Trying <IP_ADDRESS>...
* Connected to localhost (<IP_ADDRESS>) port 8080 (#0)
> POST /v1/models/sklearn-iris:predict HTTP/1.1
> Host: sklearn-iris.sfe-serving.example.com
> User-Agent: curl/7.47.0
> Accept: */*
> Content-Length: 76
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 76 out of 76 bytes
* Empty reply from server
* Connection #0 to host localhost left intact
curl: (52) Empty reply from server

portforward.go give errors:
E0528 09:49:26.370326   68982 portforward.go:400] an error occurred forwarding 8080 -> 8080: error forwarding port 8080 to pod 49ff87f9777fd918f16fe8fc3e74c2de8fea412c0d49fe9f1a1a537b03d70a26, uid : exit status 1: 2020/05/28 09:49:26 socat[256735] E connect(5, AF=2 <IP_ADDRESS>:8080, 16): Connection refused
Any suggestions?

more details for the pod:
$ kubectl logs sklearn-iris-predictor-default-2bcqq-deployment-6d8fb598d8l8cn2  -c storage-initializer
[I 200528 01:34:54 initializer-entrypoint:13] Initializing, args: src_uri [gs://kfserving-samples/models/sklearn/iris] dest_path[ [/mnt/models]
[I 200528 01:34:54 storage:35] Copying contents of gs://kfserving-samples/models/sklearn/iris to local
[I 200528 01:34:57 _metadata:95] Compute Engine Metadata server unavailable onattempt 1 of 3
[I 200528 01:35:00 _metadata:95] Compute Engine Metadata server unavailable onattempt 2 of 3
[I 200528 01:35:03 _metadata:95] Compute Engine Metadata server unavailable onattempt 3 of 3
[I 200528 01:35:04 storage:111] Downloading: /mnt/models/model.joblib
[I 200528 01:35:05 storage:60] Successfully copied gs://kfserving-samples/models/sklearn/iris to /mnt/models

@yuzisun got it and thanks.
I follow your instructions to edit inferenceservice-config . but it still give the same error:
*   Trying <IP_ADDRESS>...
* Connected to localhost (<IP_ADDRESS>) port 8080 (#0)
> POST /v1/models/sklearn-iris:predict HTTP/1.1
> Host: sklearn-iris.sfe-serving.example.com
> User-Agent: curl/7.47.0
> Accept: */*
> Content-Length: 76
> Content-Type: application/x-www-form-urlencoded
>
* upload completely sent off: 76 out of 76 bytes
< HTTP/1.1 404 Not Found
< x-powered-by: Express
< content-security-policy: default-src 'none'
< x-content-type-options: nosniff
< content-type: text/html; charset=utf-8
< content-length: 170
< date: Thu, 28 May 2020 02:38:40 GMT
< x-envoy-upstream-service-time: 2
< server: istio-envoy
<
<!DOCTYPE html>

<meta charset="utf-8">
<title>Error</title>

Cannot POST /v1/models/sklearn-iris:predict

* Connection #0 to host localhost left intact

@yuzisun any suggestions?

@edenbuaa did you recreate the service ? This guide https://github.com/kubeflow/kfserving/blob/master/docs/KFSERVING_DEBUG_GUIDE.md#debug-kfserving-request-flow can help you debug.

@yuzisun yes, I recreate the service and receiving the same response. that guide you mentioned seems can not solve my problem.

@yuzisun the vs spec is:
$ kubectl get vs sklearn-iris -oyaml  -n my-serving
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"serving.kubeflow.org/v1alpha2","kind":"InferenceService","metadata":{"annotations":{},"name":"sklearn-iris","namespace":"my-serving"},"spec":{"default":{"predictor":{"sklearn":{"storageUri":"gs://kfserving-samples/models/sklearn/iris"}}}}}
  creationTimestamp: "2020-05-28T12:02:48Z"
  generation: 1
  name: sklearn-iris
  namespace: my-serving
  ownerReferences:
  - apiVersion: serving.kubeflow.org/v1alpha2
    blockOwnerDeletion: true
    controller: true
    kind: InferenceService
    name: sklearn-iris
    uid: 4043b375-7a98-4b66-9876-117c11f9e3f7
  resourceVersion: "3504903"
  selfLink: /apis/networking.istio.io/v1alpha3/namespaces/my-serving/virtualservices/sklearn-iris
  uid: fd8ea930-3c24-4554-96fa-cfa86276a468
spec:
  gateways:
  - knative-ingress-gateway.knative-serving
  hosts:
  - sklearn-iris.my-serving.example.com
  http:
  - match:
    - uri:
        prefix: /v1/models/sklearn-iris:predict
    route:
    - destination:
        host: istio-ingressgateway.istio-system.svc.cluster.local
        port: {}
      headers:
        request:
          set:
            Host: sklearn-iris-predictor-default.my-serving.example.com
      weight: 100

@edenbuaa I see the host mismatch there, you are curling with sklearn-iris.sfe-serving.example.com but the on vs it is sklearn-iris.my-serving.example.com

@yuzisun It doesn't matter, I created another namespace named my-serving.  and curl with sklearn-iris.my-serving.example.com

@yuzisun  I use browser to access http://localhost:8080 after execute kubectl port-forward --namespace istio-system $(kubectl get pod --namespace istio-system --selector="app=istio-ingressgateway" --output jsonpath='{.items[0].metadata.name}') 8080:80 , it's kubeflow's dashboard page, is there anything wrong？

@edenbuaa on browser you need to setup a proper dns for the inference service otherwise the gateway does not know how to route without the host.

@yuzisun thanks. It's strange that I can run the sklearn or tensorflow sample successfully if I install kfserving standalone. but failed if installing with kubeflow even though I edit the above ingressgateway you mentioned

@yuzisun another questions: Can the storageUri of model support a nas or nfs address?

@yuzisun another question: Can the storageUri of model support a nas or nfs address?

check the example here https://github.com/kubeflow/kfserving/tree/master/docs/samples/pvc.

@yuzisun thanks. It's strange that I can run the sklearn or tensorflow sample successfully if I install kfserving standalone. but failed if installing with kubeflow even though I edit the above ingressgateway you mentioned

@edenbuaa which kfdef you are using ? seems like virtual service sklearn-iris-predictor-default is not created?

@yuzisun Where to check my kfdef?

How did you install kubeflow?
Which kfdef from here are you using: https://github.com/kubeflow/manifests/tree/master/kfdef

@cliveseldon I installed kubeflow following the instructions here: https://www.kubeflow.org/docs/started/k8s/kfctl-k8s-istio
and use the kfdef: https://raw.githubusercontent.com/kubeflow/manifests/v1.0-branch/kfdef/kfctl_k8s_istio.v1.0.2.yaml

@yuzisun I see the triton sample has come out. but when I try to apply the bert inference service, got this error:
Error from server: error when creating "./bert.yaml": admission webhook "inferenceservice.kfserving-webhook-server.validator" denied the request: Exactly one of [Custom, ONNX, Tensorflow, TensorRT, SKLearn, XGBoost] must be specified in PredictorSpec
How to run triton inferenceservice in my kfserving v0.3.0?

There is an open PR for this: https://github.com/kubeflow/kfserving/pull/747

@cliveseldon thanks. So when will the new version with triton be released?

See https://github.com/kubeflow/kfserving/pull/747#issuecomment-637848891
Feel free to add a comment.

@yuzisun by the way, Can the autoscaling feature of kfserving work on gpu sharing by multiple pod?

@yuzisun thanks. It's strange that I can run the sklearn or tensorflow sample successfully if I install kfserving standalone. but failed if installing with kubeflow even though I edit the above ingressgateway you mentioned

How did you install kfserving standalone? Which version did you use? I got the same error. But nothing in this page help solve the problem.

@yuzisun thanks. It's strange that I can run the sklearn or tensorflow sample successfully if I install kfserving standalone. but failed if installing with kubeflow even though I edit the above ingressgateway you mentioned

How did you install kfserving standalone? Which version did you use? I got the same error. But nothing in this page help solve the problem.

@yuzisun thanks. It's strange that I can run the sklearn or tensorflow sample successfully if I install kfserving standalone. but failed if installing with kubeflow even though I edit the above ingressgateway you mentioned

How did you install kfserving standalone? Which version did you use? I got the same error. But nothing in this page help solve the problem.

you can follow these two steps, let me know if any issues
https://github.com/kubeflow/kfserving#prerequisites
https://github.com/kubeflow/kfserving#install-kfserving

@yuzisun thanks. It's strange that I can run the sklearn or tensorflow sample successfully if I install kfserving standalone. but failed if installing with kubeflow even though I edit the above ingressgateway you mentioned

How did you install kfserving standalone? Which version did you use? I got the same error. But nothing in this page help solve the problem.

you can follow these two steps, let me know if any issues
https://github.com/kubeflow/kfserving#prerequisites
https://github.com/kubeflow/kfserving#install-kfserving

I've done those. Nothing helps. The error preserves.
This is what i got:
Install microk8s 1.18.2 + kubefflow 1.0.0 using kfctl_k8s_istio. KFServing is not working. Got 404 Not Found
inferenceservice.serving.kubeflow.org/flowers-sample created
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to <IP_ADDRESS> (<IP_ADDRESS>) port 80 (#0)
> POST /v1/models/flowers-sample:predict HTTP/1.1
> Host:
> User-Agent: curl/7.58.0
> Accept: */*
> Content-Length: 16201
> Content-Type: application/x-www-form-urlencoded
> Expect: 100-continue
>
< HTTP/1.1 100 Continue
* We are completely uploaded and fine
< HTTP/1.1 404 Not Found
< x-powered-by: Express
< content-security-policy: default-src 'none'
< x-content-type-options: nosniff
< content-type: text/html; charset=utf-8
< content-length: 172
< date: Wed, 03 Jun 2020 18:16:16 GMT
< x-envoy-upstream-service-time: 0
< server: istio-envoy
<
<!DOCTYPE html>

<meta charset="utf-8">
<title>Error</title>

Cannot POST /v1/models/flowers-sample:predict

* Connection #0 to host <IP_ADDRESS> left intact

There is no status for inference service.
NAME             URL   READY   DEFAULT TRAFFIC   CANARY TRAFFIC   AGE
flowers-sample                                                    115s

Details
apiVersion: v1
items:
- apiVersion: serving.kubeflow.org/v1alpha2
  kind: InferenceService
  metadata:
    annotations:
      kubectl.kubernetes.io/last-applied-configuration: |
        {"apiVersion":"serving.kubeflow.org/v1alpha2","kind":"InferenceService","metadata":{"annotations":{},"name":"flowers-sample","namespace":"test"},"spec":{"default":{"predictor":{"tensorflow":{"storageUri":"gs://kfserving-samples/models/tensorflow/flowers"}}}}}
    creationTimestamp: "2020-06-03T18:16:13Z"
    generation: 1
    name: flowers-sample
    namespace: test
    resourceVersion: "10935"
    selfLink: /apis/serving.kubeflow.org/v1alpha2/namespaces/test/inferenceservices/flowers-sample
    uid: bb19b816-d525-40a4-81e1-b9c2924f1042
  spec:
    default:
      predictor:
        tensorflow:
          resources:
            limits:
              cpu: "1"
              memory: 2Gi
            requests:
              cpu: "1"
              memory: 2Gi
          runtimeVersion: 1.14.0
          storageUri: gs://kfserving-samples/models/tensorflow/flowers
  status: {}
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""

No port-forwarding. Using KFServing tensorflow examples.
The same example is teseted under microk8s 1.15 with the same manifest. Confirmed working. I'm not sure if this is kfserving or kubeflow anymore.

Can you check if kfserving controller is up running?
kubectl get pod kfserving-controller-manager-0 -n kubeflow

kubectl get pod kfserving-controller-manager-0 -n kubeflow

Yes it is.
fwiw
NAME                             READY   STATUS    RESTARTS   AGE
kfserving-controller-manager-0   2/2     Running   1          67m

It is odd it does not have status, can you check the kfserving-controller-manager-0 pod log?

Hmmm
This is the start of the log
{"level":"info","ts":1591207785.5650575,"logger":"entrypoint","msg":"Setting up client for manager"}
{"level":"info","ts":1591207785.5652418,"logger":"entrypoint","msg":"Setting up manager"}
{"level":"info","ts":1591207785.775447,"logger":"entrypoint","msg":"Registering Components."}
{"level":"info","ts":1591207785.7754824,"logger":"entrypoint","msg":"Setting up scheme"}
{"level":"info","ts":1591207785.7755861,"logger":"entrypoint","msg":"Setting up Knative scheme"}
{"level":"info","ts":1591207785.775642,"logger":"entrypoint","msg":"Setting up Istio schemes"}
{"level":"info","ts":1591207785.7756734,"logger":"entrypoint","msg":"Setting up controller"}
{"level":"info","ts":1591207785.775705,"logger":"kubebuilder.controller","msg":"Starting EventSource","controller":"kfserving-controller","source":"kind source: /, Kind="}
{"level":"info","ts":1591207785.7758102,"logger":"kubebuilder.controller","msg":"Starting EventSource","controller":"kfserving-controller","source":"kind source: /, Kind="}
{"level":"info","ts":1591207785.7758622,"logger":"kubebuilder.controller","msg":"Starting EventSource","controller":"kfserving-controller","source":"kind source: /, Kind="}
{"level":"info","ts":1591207785.775906,"logger":"entrypoint","msg":"Setting up webhooks"}
{"level":"info","ts":1591207785.7759328,"logger":"entrypoint","msg":"Starting the Cmd."}
{"level":"info","ts":1591207785.8761127,"logger":"kubebuilder.webhook","msg":"installing webhook configuration in cluster"}
{"level":"info","ts":1591207785.876116,"logger":"kubebuilder.controller","msg":"Starting Controller","controller":"kfserving-controller"}
{"level":"info","ts":1591207786.0597801,"logger":"kubebuilder.controller","msg":"Starting workers","controller":"kfserving-controller","worker count":1}
{"level":"info","ts":1591207865.324363,"logger":"kfserving-v1alpha2-types","msg":"Defaulting InferenceService","namespace":"admin","name":"flowers-sample"}
{"level":"info","ts":1591207865.6267726,"logger":"kfserving-v1alpha2-types","msg":"Validating InferenceService","namespace":"admin","name":"flowers-sample"}
{"level":"info","ts":1591207865.6271873,"logger":"kfserving-v1alpha2-types","msg":"Successfully validated InferenceService","namespace":"admin","name":"flowers-sample"}
{"level":"info","ts":1591207865.7606103,"logger":"CredentialBulder","msg":"found secret","SecretName":"default-token-wdlk9"}
{"level":"info","ts":1591207865.7606575,"logger":"Reconciler","msg":"Creating Knative Service","namespace":"admin","name":"flowers-sample-predictor-default"}

Then the following msg is repeating:
{"level":"info","ts":1591210183.2476034,"logger":"CredentialBulder","msg":"found secret","SecretName":"default-token-wdlk9"}
{"level":"info","ts":1591210183.2476382,"logger":"Reconciler","msg":"Creating Knative Service","namespace":"admin","name":"flowers-sample-predictor-default"}
{"level":"error","ts":1591210183.2495756,"logger":"kfserving-controller","msg":"Failed to reconcile","error":"admission webhook \"webhook.serving.knative.dev\" denied the request: mutation failed: cannot decode incoming new object: json: unknown field \"fieldsType\"","stacktrace":"github.com/kubeflow/kfserving/vendor/github.com/go-logr/zapr.(*zapLogger).Error\n\t/go/src/github.com/kubeflow/kfserving/vendor/github.com/go-logr/zapr/zapr.go:128\ngithub.com/kubeflow/kfserving/pkg/controller/inferenceservice.(*ReconcileService).Reconcile\n\t/go/src/github.com/kubeflow/kfserving/pkg/controller/inferenceservice/controller.go:154\ngithub.com/kubeflow/kfserving/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/go/src/github.com/kubeflow/kfserving/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:215\ngithub.com/kubeflow/kfserving/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func1\n\t/go/src/github.com/kubeflow/kfserving/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:158\ngithub.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil.func1\n\t/go/src/github.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133\ngithub.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil\n\t/go/src/github.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134\ngithub.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait.Until\n\t/go/src/github.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88"}
{"level":"error","ts":1591210183.2496254,"logger":"kubebuilder.controller","msg":"Reconciler error","controller":"kfserving-controller","request":"admin/flowers-sample","error":"admission webhook \"webhook.serving.knative.dev\" denied the request: mutation failed: cannot decode incoming new object: json: unknown field \"fieldsType\"","stacktrace":"github.com/kubeflow/kfserving/vendor/github.com/go-logr/zapr.(*zapLogger).Error\n\t/go/src/github.com/kubeflow/kfserving/vendor/github.com/go-logr/zapr/zapr.go:128\ngithub.com/kubeflow/kfserving/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/go/src/github.com/kubeflow/kfserving/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:217\ngithub.com/kubeflow/kfserving/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func1\n\t/go/src/github.com/kubeflow/kfserving/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:158\ngithub.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil.func1\n\t/go/src/github.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133\ngithub.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil\n\t/go/src/github.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134\ngithub.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait.Until\n\t/go/src/github.com/kubeflow/kfserving/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88"}

@decewei this seems like knative version issue, which knative serving version your are using?

@decewei this seems like knative version issue, which knative serving version your are using?

It's knative v0.11.1 in microk8s 1.15.11

I faced the same issue with knative v0.11.1 with k8s 1.18.2. It appears to me, after some amount of digging through source code of knative v0.11.1, that webhook handler of knative is incompatible with k8s 1.18.2. I switched to knative v0.15.0 following knative installation instructions. Then I was able to kfserving samples. One other difference is that I'm running istio 1.5.1, but that probably isn't material here.

I faced the same issue with knative v0.11.1 with k8s 1.18.2. It appears to me, after some amount of digging through source code of knative v0.11.1, that webhook handler of knative is incompatible with k8s 1.18.2. I switched to knative v0.15.0 following knative installation instructions. Then I was able to run kfserving samples successfully. One other difference is that I'm running istio 1.5.1, but that probably isn't material here.

I confirmed this method works on kfctl_k8s_istio 1.0.0 with microk8s 1.18.3. Not sure if there's any other side effect to this.

please check here https://knative.dev/community/contributing/mechanics/release-versioning-principles/, Kubernetes 1.18 is released Mar 25, 2020 and knative serving 0.11 is released way before that, so there is good chance that Kubernetes 1.18 is not supported with knative serving 0.11.

@edenbuaa about how to use a nas address, can you share some idea? please


Optional parameters errors throwing "uncaught object" in angular

Exists on master only.
I deliberately leave out some state configuration to create this issue:
$stateProvider
    // bunch of code ommitted
    .state('state1', {
      params: {
        paramName: {value: null}
      },
      url: "/state1/:paramName",
    })
    .state('state1.list', {
      params: {
        paramListName: {value: null}
      },
      url: "/list/:paramListName",
    })

Check out this plunkr
Breakpoint on angular.js L3801 is the only way of currently knowing that the error is:
"Missing required parameter 'paramName' in state 'state1.list'"
First off, the errors would be helpful in console output. Secondly, since module creation doesn't complete, the app never loads. In my usual experience with ui-router, I run my app, access a state and address concerns thereby.
In this case, however, the only way to get more context is to breakpoint. Let me know if you have trouble replicating the issue on the plunkr.

I just ran into this issue as well. I would recommend updating the documentation here with a link to here, because as the OP mentions it states there it can be used to inject into controllers, but doesn't mention it can't be used for routing to components.


update aws_sdk to latest (0.4) & fix broken build with 0.3

👋  Hey the library is great! I just wanted to update the alpha branch to be compatible with the latest aws_sdk version from crates.io (0.4). I saw someone already made one for 0.3 but it doesn't compile due to an incompatibility in the change from version 0.2 -> 0.3

tagging @bryanburgers for review, whenever you get some free time 🙇

Thanks!

https://crates.io/crates/serde_dynamo/3.0.0-alpha.3


There seems to be something wrong with the api call example

@hongshui3000 Echoing Ben's comment, thanks for the good catch! We'll get a fix for the docs and publish again. Thanks!

@gcampbell-msft
By the way
listAvailablePorts The latest api is not yet available??

@hongshui3000 Thanks for the heads up.
This is currently expected as we have not merged this implementation yet. It is coming.
I should note that while the API version is 0.x.x, we are not making any claims about stability. When we are confident about the format of the API we will notify you and update the version to 1.x.x. It's exciting to hear that you're trying it out!

This issue is now fixed in the official release of the extension, v0.8.0. Closing this issue.


MergeRollupTask and RealtimeToOfflineSegmentsTask don't clean up old segments

In terms of  MergeRollupTask task, from the design docs,
I see old segments should be deleted by configuring  “oldSegmentCleanup”:"true" in offline table config, and this config is default to be true. But I couldn't find this config from source codes and my offline table didn't delete old segments, either.
The picture below is offline table segment's names, which end timestamp is later than<PHONE_NUMBER>000 ( 2022-02-23 16:09:00).

my offline table segments are first generated by RealtimeToOfflineSegmentsTask, and then merged segments are generated by MergeRollupTask.
And same thing happened to RealtimeToOfflineSegmentsTask task which didn't delete old realtime segments after the task finished.
The picture below is realtime table segment's names,

And here is my table config:
{
  "OFFLINE": {
    "tableName": "transcripts_OFFLINE",
    "tableType": "OFFLINE",
    "segmentsConfig": {
      "timeType": "MILLISECONDS",
      "schemaName": "transcripts",
      "retentionTimeUnit": "HOURS",
      "retentionTimeValue": "2",
      "replication": "1",
      "timeColumnName": "timestampInEpoch",
      "allowNullTimeValue": false,
      "replicaGroupStrategyConfig": {
        "partitionColumn": "studentID",
        "numInstancesPerPartition": 2
      }
    },
    "tenants": {
      "broker": "DefaultTenant",
      "server": "DefaultTenant"
    },
    "tableIndexConfig": {
      "invertedIndexColumns": [
        "lastName"
      ],
      "sortedColumn": [
        "firstName"
      ],
      "bloomFilterColumns": [
        "score"
      ],
      "loadMode": "MMAP",
      "enableDefaultStarTree": false,
      "enableDynamicStarTreeCreation": false,
      "segmentPartitionConfig": {
        "columnPartitionMap": {
          "studentID": {
            "functionName": "HashCode",
            "numPartitions": 4
          }
        }
      },
      "aggregateMetrics": false,
      "nullHandlingEnabled": false,
      "rangeIndexColumns": [
        "score"
      ],
      "rangeIndexVersion": 1,
      "autoGeneratedInvertedIndex": false,
      "createInvertedIndexDuringSegmentGeneration": false
    },
    "metadata": {
      "customConfigs": {}
    },
    "task": {
      "taskTypeConfigsMap": {
        "MergeRollupTask": {
          "1hour.mergeType": "rollup",
          "1hour.bucketTimePeriod": "1h",
          "1hour.bufferTimePeriod": "3h",
          "1hour.maxNumRecordsPerSegment": "1000000",
          "1hour.maxNumRecordsPerTask": "5000000",
          "1hour.maxNumParallelBuckets": "5",
          "1day.mergeType": "rollup",
          "1day.bucketTimePeriod": "1d",
          "1day.bufferTimePeriod": "1d",
          "1day.roundBucketTimePeriod": "1d",
          "1day.maxNumRecordsPerSegment": "1000000",
          "1day.maxNumRecordsPerTask": "5000000",
          "score.aggregationType": "sum"
        }
      }
    },
    "routing": {
      "segmentPrunerTypes": [
        "partition"
      ],
      "instanceSelectorType": "replicaGroup"
    },
    "isDimTable": false
  },
  "REALTIME": {
    "tableName": "transcripts_REALTIME",
    "tableType": "REALTIME",
    "segmentsConfig": {
      "timeType": "MILLISECONDS",
      "schemaName": "transcripts",
      "timeColumnName": "timestampInEpoch",
      "allowNullTimeValue": false,
      "replicasPerPartition": "2",
      "replicaGroupStrategyConfig": {
        "partitionColumn": "studentID",
        "numInstancesPerPartition": 2
      }
    },
    "tenants": {
      "broker": "DefaultTenant",
      "server": "DefaultTenant"
    },
    "tableIndexConfig": {
      "invertedIndexColumns": [
        "lastName"
      ],
      "streamConfigs": {
        "streamType": "kafka",
        "stream.kafka.consumer.type": "lowlevel",
        "stream.kafka.topic.name": "transcript-topic_1",
        "stream.kafka.decoder.class.name": "org.apache.pinot.plugin.stream.kafka.KafkaJSONMessageDecoder",
        "stream.kafka.consumer.factory.class.name": "org.apache.pinot.plugin.stream.kafka20.KafkaConsumerFactory",
        "stream.kafka.broker.list": "aptssd1.safe.lycc.qihoo.net:19092",
        "realtime.segment.flush.threshold.rows": "0",
        "realtime.segment.flush.threshold.time": "3m",
        "realtime.segment.flush.threshold.segment.size": "50M",
        "stream.kafka.consumer.prop.auto.offset.reset": "smallest"
      },
      "sortedColumn": [
        "firstName"
      ],
      "bloomFilterColumns": [
        "score"
      ],
      "loadMode": "MMAP",
      "enableDefaultStarTree": false,
      "enableDynamicStarTreeCreation": false,
      "segmentPartitionConfig": {
        "columnPartitionMap": {
          "studentID": {
            "functionName": "HashCode",
            "numPartitions": 4
          }
        }
      },
      "aggregateMetrics": false,
      "nullHandlingEnabled": false,
      "rangeIndexColumns": [
        "score"
      ],
      "rangeIndexVersion": 1,
      "autoGeneratedInvertedIndex": false,
      "createInvertedIndexDuringSegmentGeneration": false
    },
    "metadata": {
      "customConfigs": {}
    },
    "task": {
      "taskTypeConfigsMap": {
        "RealtimeToOfflineSegmentsTask": {
          "bucketTimePeriod": "6h",
          "bufferTimePeriod": "1d",
          "roundBucketTimePeriod": "1m",
          "mergeType": "rollup",
          "score.aggregationType": "max",
          "maxNumRecordsPerSegment": "100000"
        }
      }
    },
    "routing": {
      "segmentPrunerTypes": [
        "partition"
      ],
      "instanceSelectorType": "replicaGroup"
    },
    "instanceAssignmentConfigMap": {
      "CONSUMING": {
        "tagPoolConfig": {
          "tag": "DefaultTenant_REALTIME",
          "poolBased": false,
          "numPools": 0
        },
        "replicaGroupPartitionConfig": {
          "replicaGroupBased": true,
          "numInstances": 0,
          "numReplicaGroups": 2,
          "numInstancesPerReplicaGroup": 2,
          "numPartitions": 0,
          "numInstancesPerPartition": 0
        }
      }
    },
    "isDimTable": false
  }
}

Could you help me how to clean up old segments for MergeRollupTasks and RealtimeToOfflineSegmentsTasks? Thanks a lot.

I think those two minion tasks don't remove the segments directly. For segments in RT table, they should be removed based on table retention. For segments in OFFLINE table, in addition to table retention, they also should be removed based on segment lineage. As you may have noticed in the design doc, segment lineage is used by MergeRollup task for atomic segment swap.
So, did you see any logs from this manageSegmentLineageCleanupForTable method and this manageRetentionForTable method at the controller side?  to see if deletion kicked in or not.

I think those two minion tasks don't remove the segments directly. For segments in RT table, they should be removed based on table retention. For segments in OFFLINE table, in addition to table retention, they also should be removed based on segment lineage. As you may have noticed in the design doc, segment lineage is used by MergeRollup task for atomic segment swap.
So, did you see any logs from this manageSegmentLineageCleanupForTable method and this manageRetentionForTable method at the controller side? to see if deletion kicked in or not.

Thanks a lot. I see my logs, it was because my MergeRollupTask's mergeType for offline table is rollup. So table retention and segment lineage are not worked. Is there any way to delete old segments for rollup offline tables?

hmm.. interesting. do you have logs to help me locate the code where the deletion logic skips rollup segments?

from your logs, I spotted a few lines like (thrown from code)
2022/03/02 11:02:51.289 WARN [RetentionManager] [pool-6-thread-3] Invalid retention time: null null for table: transcriptss_OFFLINE, skip

Yes. For transcriptss_OFFLINE table ,I didn't configure a retention strategy.I guess the old segments of this table were deleted based on segment lineage, cause there are indeed a few old segments that have been deleted based on segments' screenshots above.
I guess the reason that I didn't see these old segments name from this log is log manager has deleted the log file.I found the default log configuration only maintain 10 log gzip files.

Thanks for helping me again,I will just close this issue :)


Include high-order byte in field length calculation for non-numeric fields

This is what I have to do to get correct memo field lengths on a bunch of DBF files that I have to read in. Throwing it out there for consideration.
See #7 at http://www.manmrk.net/tutorials/database/xbase/dbf.html#DBF_NOTE_7_SOURCE

@jlindsey3 Thanks for PR. Actually I don't have any case to test your improvement. Can you provide dbf file for tests?

Thanks @gam6itko
No problem, here is a DBF and FPT
https://github.com/DMSWorksLLC/php-xbase-test-data

Testing the library with your file showed no errors. Do you have a problem with this file and php-xbase library?

So sorry, I accidentally gave you the wrong file. I have pushed the correct one, F5_2.DBF, which has 18 fields and 5 rows. This file does not parse correctly with php-xbase because the field "note" (type C) has a length of 300 but php-xbase thinks it is only 44 because it does not consider the high byte. This throws off the offsets for all fields following "note," and the result is that none of the memo fields following it are correctly read in.
I don't know if having fields longer than 255 is standard, but my actual data files definitely do have several C fields with long lengths.
Thanks for your time, I hope this helps!

@jlindsey3 ok I've found the moment you're talking about. Thanks for your contribution


Drops calendar - Lower ETH price is shown as zero price

I added few base projects to our calendar. The problem? Its showing the price 0 even though I added proper price in the cloudfare.
Concrete - 0.001
Festa - 0.0005
I think it's may be rounding, and it's rounding too low.

is there a calculator for this @Jarsen136? so in the future I know how to calculate it 😄

is there a calculator for this @Jarsen136? so in the future I know how to calculate it 😄

I can't find a suitable tool or website for now : )
So we have to calculate it manually.
DOT:  1 dot =<PHONE_NUMBER>0   (tokenDecimals: 10)
KSM: 1 ksm =<PHONE_NUMBER>000 (tokenDecimals: 12)
ETH: 1 eth =<PHONE_NUMBER>000000000 (tokenDecimals: 18)


⚠ Bofrost.ch has degraded performance

In babfb9d, Bofrost.ch (https://www.bofrost.ch) experienced degraded performance:

HTTP code: 200
Response time: 4419 ms

Resolved: Bofrost.ch performance has improved in 0d372a8.


Operation is not supported on this platform // FastReport.NET => NET 5 Project

Hi!
FastReport.Net Open Source, .NET 5 project:
ERROR:
System.PlatformNotSupportedException: 'Operation is not supported on this platform.'
on line:
report.Prepare();
in .NetFramework (4.6x / etc) projects, everything is OK.

What platform are you using: Windows, linux, android, ios or other?

Visual Studio 2022 / Windows OS / WPF Project / NET 5.0

The same WPF project built with NET Framework 4.6.1 with the same Fast Report Open Source works flawless.

I've checked, under such an environment, it seemed ok. Tested Text.frx from demo.
Are you using any weird objects in the report? Is there an possibility to share the report? Can you check text.frx?
Is it also possible to send the full stacktrace of the error?

System.PlatformNotSupportedException
HResult=0x80131539
Message=Operation is not supported on this platform.
Source=System.CodeDom
StackTrace:
at Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch(CompilerParameters options, String[] fileNames)
at Microsoft.CSharp.CSharpCodeGenerator.FromSourceBatch(CompilerParameters options, String[] sources)
at Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromSourceBatch(CompilerParameters options, String[] sources)
at System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromSource(CompilerParameters options, String[] sources)
at FastReport.Code.AssemblyDescriptor.InternalCompile(CompilerParameters cp, CompilerResults& cr)
at FastReport.Code.AssemblyDescriptor.InternalCompile()
at FastReport.Code.AssemblyDescriptor.Compile()
at FastReport.Report.Compile()
at FastReport.Report.Prepare(Boolean append)
at FastReport.Report.Prepare()
at System.Windows.Threading.DispatcherOperation.InvokeDelegateCore()
at System.Windows.Threading.DispatcherOperation.InvokeImpl()

Hello @imawoinc . You install .NET 5 SDK or Runtime version? We need a test report (or project) to reproduce the error.

NET 5 & 6 that comes with Visual Studio 2022.
The project was originally build with netFramework 4.6.1 (no problems here)
Migrating the project to NET 6, => the issues described above.
I can't sent you the report, it's a production report.

Exactly the same problem here too (please use google translate for the page):
https://blog.csdn.net/hrx521/article/details/119764127

What objects do you use in the report? Are you using WinForms objects (dialog controls), event handlers in the report?

Are you using FastReport.OpenSource version or other? Core, NET etc.?

FastReport.OpenSource
FastReport.Compat
FastReport.OpenSource.Data.MySql
FastReport.OpenSource.Export.PdfSimple
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Drawing;
using System.Data;
using FastReport;
using FastReport.Data;
using FastReport.Dialog;
using FastReport.Barcode;
using FastReport.Table;
using FastReport.Utils;
namespace FastReport
{
public class ReportScript
{
private void Child2_BeforePrint(object sender, EventArgs e)
{
textDiscount.Visible = ((int)Report.GetColumnValue("view_raport_oferta.DISCOUNT") != 0);
  textNotaBand.Visible = ((string)Report.GetColumnValue("view_raport_oferta.NOTA") != "");
  textNota.Visible = ((string)Report.GetColumnValue("view_raport_oferta.NOTA") != "");
}

private void PageHeader1_BeforePrint(object sender, EventArgs e)
{

}

}
}

Can you show references/PackageReference in your *.csproj file? for example

<ItemGroup>     <PackageReference Include="FastReport.OpenSource" Version="2021.4.15" />     <PackageReference Include="FastReport.OpenSource.Data.MySql" Version="2021.4.0" />     <PackageReference Include="FastReport.OpenSource.Export.PdfSimple" Version="2021.4.15" />     <PackageReference Include="FirebaseAdmin" Version="2.2.0" />     <PackageReference Include="Google.Protobuf" Version="3.19.1" />     <PackageReference Include="K4os.Compression.LZ4.Streams" Version="1.2.15" />     <PackageReference Include="MySql.Data" Version="8.0.27" />     <PackageReference Include="MySqlConnector" Version="2.0.0">       <Aliases>MySqlConnectorAlias</Aliases>     </PackageReference>     <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />     <PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" />     <PackageReference Include="System.Threading.Tasks.Extensions" Version="4.5.4" />     <PackageReference Include="Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers" Version="0.3.256001">       <PrivateAssets>all</PrivateAssets>     </PackageReference>   </ItemGroup>

I have the same problem with FastReports.NET.
I bought the version PROFESSIONAL just AFTER I tested the demo. The demo is compiled in .NET Core 3.1 and works fine. But the version PROFESSIONAL is compiled in .NET Framework and does not work.
I came back to demo version until it is solved.
It is the ILSpy showing the targets:

The last one (in blue) is the demo version which works fine. The second and third is the PRO version that does not work.
My scenario: WPF in .NET6 running on Windows 10. Visual Studio 2022

Hi @marcosgerene. This is very strange, this behavior should not be. Here is an example of my .NET 6 vs2022 WinForms application with FastReport.Net.Pro package. Are you sure you are using the correct package?

Guy, I am so sorry, I tried to use the DLL which comes in the folder of my installer because I did it with the demo version.

This problem still is present.
WPF core net 6 app, trying to call an empty report with a [Date].Year() field, WILL CRASH the app.
Calling the same report from a WPF framework4.8 works like a charm.
FastReport is the only thing keeping me in framework 4.8

the error occurs when I use nested objects, in the .net Framework version it worked normally.
WPF .net 6
did anyone find a solution?

Same problem here. If i try call Prepare()|Print()|Show() i get System.PlatformNotSupportedException
WPF net 6.0
BUT with trial version of dll from FastReport.CoreWin_Demo app works just fine

So, it simply still does not work for net6-windows + UseWPF?

Are you still encountering the problem on version 2024.1.3?

Are you still encountering the problem on version 2024.1.3?

Well, briefly, all the problems I'd been encountering were caused by the wrong *.Compat assembly loaded. It is something wrong in the way how the Compat or/and FastReport nugets are arranged. And if you load your app dynamically, as plug-in, using AssemblyLoadContext, then you have to pay attention.
My workarround is:

https://www.fcnsoft.com/Home/ShowArticleNews/473 按这个办法即可处理解决问题，亲测有效。


Braintree cc setup

Improving Braintree gateway billing tests.

By small refactoring this PR simplifies asserts used by billing tests.
This Pr also introduced an overall better structure needed for further test expansion.
Adding tests that are focused on adding cards. With an emphasis on adding a new card for an account. In the future, we would like to add tests for payment verification and occurring payments.

I agree with @pehala on the named parameter in braintree_gateway fixture. Also maybe an enum for cards would be great to recognize card purpose easier
Agree with the fixture.
CC's purpose is apparent from the test doc itself, but I am open to any idea.