Android app says, Invalid URL

I have installed everything as per the directions. API is also working. But the android app says URL is invalid.
I set up a separate server on domainname.com directly. Apache2 folder path includes the core folder.
https://lh5.googleusercontent.com/Yv3THGuAwP5avJ8FWadr7YZUS485ZuQLH7GaSGwJG9vy1-9EzwUyBPu3sOGflOWkj6N5dVTYVHM12aEAR46c7k1rSW2Xe4TVw8F32H_N20gozOj_nUpVhU9VtqV67muAnpceBHmN

Hi, you need to enter the complete url address. Let's say you put the core files in a folder named core. The url should then be http://t.shiraz-ahmad/core also rember to check if the server uses https or http. Did this  fix it?

To check if the app is not responding can you use the url https://knoph.cc/footer it should say that the url is valid but wrong token.

This link (https://knoph.cc/footer
https://mailtrack.io/trace/link/fa792845a53b8d2c655932fa859172158d8e65ca?url=https%3A%2F%2Fknoph.cc%2Ffooter&userId=5034341&signature=e1ad1cb4a27e0291)
works fine.
my core folder is hosted on the following URL: http://t.shiraz-ahmad/
http://t.shiraz-ahmad/
*You can test by yourself using the following link *http://t.shiraz-ahmad.com
https://mailtrack.io/trace/link/ec4cdbe4bfeb4fbfdcf3e1938bef30338a0734f9?url=http%3A%2F%2Ft.shiraz-ahmad.com&userId=5034341&signature=dfae255a0265985f
?token=b2c73d4f013922ae7e3fa41aac92238e&subject=subject&=addr=addr
URL is operational but app is not accepting it. It is hosted on port 80
(http)
[image: image.png]
Shiraz
On Tue, Jul 6, 2021 at 6:37 PM Marcus @.***> wrote:

To check if the app is not responding can you use the url
https://knoph.cc/footer
https://mailtrack.io/trace/link/05f020d1aeb39bc1623847d6fe5f6e24aad74822?url=https%3A%2F%2Fknoph.cc%2Ffooter&userId=5034341&signature=a618df0e9f0b73a1
it should say that the url is valid but wrong token.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://mailtrack.io/trace/link/f64f7c1403165cd1f2202e3dc39add7d773ce434?url=https%3A%2F%2Fgithub.com%2FsuxSx%2FTRAWO%2Fissues%2F2%23issuecomment-874767730&userId=5034341&signature=8b8ebc704dc9a418,
or unsubscribe
https://mailtrack.io/trace/link/77bd4f24ad1c0dec1827381fdf01e5b5abe87176?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAIPEPP7D2Q34Y7U3M4V32PDTWMBLLANCNFSM474SH2TQ&userId=5034341&signature=71d77ac06517440f
.

Great that it worked out for you. Nice to know that it has an glitch when it comes to http/https. Thanks for the update, I will make an update later on addressing this issue.

Update needed for app fetch request using http and https.


network.external.name is deprecated

When I clone the project and try to run it in production I get the following warnings/errors:

Can you help me or tell me which settings I have to change to get it running?

Workaround: docker network create nginx-proxy

My apologies, that's an artifact from those 2 hours the system was actually deployed on my hosting infrastructure.
You can either use @net47 workaround, or run ./docker/control.sh startdev which won't require the nginx-proxy network.


Show version in scrum/eod if defined

In list of issues next to project name add -<version> if it exists for readability

Probably best to also show this in list functions


Bitlocker and NextGenerationWindowsSecurity parameters are created even if N/A

Default parameters in CISRESCREsourceGeneration.psm1 are statically created but Bitlocker and potentially also NextGenerationWindowsSecurity are not always applicable to a benchmark. Ex: Server 2016 1603 does not contain Bitlocker recommendations. These should instead be created with logic based on the worksheets in the excel documentation.

resolved in mentioned PR


[KYUUBI #3926][FOLLOWUP] Supplement LICENSE-binary

Why are the changes needed?

This pr is followup of the https://github.com/apache/kyuubi/pull/3944, it supplement LICENSE-binary
How was this patch tested?

[ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[ ] Run test locally before make a pull request

cc @pan3793

Codecov Report

Merging #4163 (f5e325e) into master (03fe8a8) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head f5e325e differs from pull request most recent head 92d907d. Consider uploading reports for the commit 92d907d to get more accurate results

@@            Coverage Diff            @@
##             master    #4163   +/-   ##
=========================================
  Coverage     53.02%   53.02%
  Complexity       13       13
=========================================
  Files           548      548
  Lines         29938    29938
  Branches       4023     4023
=========================================
  Hits          15875    15875
+ Misses        12589    12586    -3
- Partials       1474     1477    +3

Impacted Files
Coverage Δ

...e/kyuubi/jdbc/hive/ClosedOrCancelledException.java
0.00% <0.00%> (-100.00%)
:arrow_down:

...apache/kyuubi/engine/JpsApplicationOperation.scala
77.41% <0.00%> (-3.23%)
:arrow_down:

...ache/kyuubi/operation/KyuubiOperationManager.scala
80.00% <0.00%> (-2.67%)
:arrow_down:

.../engine/spark/session/SparkSQLSessionManager.scala
78.48% <0.00%> (-1.27%)
:arrow_down:

...g/apache/kyuubi/operation/BatchJobSubmission.scala
76.60% <0.00%> (-1.17%)
:arrow_down:

...n/scala/org/apache/kyuubi/engine/ProcBuilder.scala
80.24% <0.00%> (-0.62%)
:arrow_down:

.../apache/kyuubi/client/KyuubiSyncThriftClient.scala
89.78% <0.00%> (+0.42%)
:arrow_up:

.../org/apache/kyuubi/session/KyuubiSessionImpl.scala
81.50% <0.00%> (+5.47%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

@pan3793 Hi, have other suggestions? This PR is ready to merge

Any possible link to the original version of antlr's BSD license source?

Any possible link to the original version of antlr's BSD license source?

https://github.com/antlr/antlr4/blob/master/LICENSE.txt

Thanks all, merged to master


Improve logging around MPD keepalive failure

Per discussion in #39, this attempts to ease troubleshooting by adding a hint in the logs that the user should check their connection_timeout setting in MPD.
$ MPD_TIMEOUT=7 go run cmd/mpd-mpris/main.go
2023/07/28 13:10:57 command 'albumart' failed: No file exists
2023/07/28 13:10:57 mpd-mpris running
2023/07/28 13:10:57 Using MPD_TIMEOUT's keepalive clock of %v 7s
2023/07/28 13:11:04 Connection to mpd is severed: EOF
github.com/natsukagami/mpd-mpris/mpd.(*Client).Keepalive
	/home/justin/git/mpd-mpris/mpd/client.go:220
runtime.goexit
	/usr/lib/go/src/runtime/asm_amd64.s:1598
Ensure MPD's "connection_timeout" setting is greater than 7 seconds.
exit status 1

Thanks! I'll take this chance to fix a small logging error


update: add the missing l10n entries

update: add the missing l10n entries
changed file:

factory.de.tr
factory.en.tr
factory.template.tr
factory.zh_CN.tr

added line :

line 40-41 > items/battery_item.lua
lline 143-147 > ores/register.lua

It seems to work well, cheers (～￣▽￣)～[] ~

add Traditional Chinese file.


Add Sarven to the list of editors

Done. By the way, the panel is called "Notifications" not "Events and Notifications". I suppose you/we can update that later? I didn't touch it for now.

Closing this in favour of https://github.com/solid/process/pull/121


Patternfly upgraded to v3.10.0

Upgrading to Patternfly and Angular-Patternfly 3.10.0 in preparation for navigation changes.

:exclamation:  Please to not merge this until I test how/if this effects Blueprints.

:thumbsup:  Ok, tested blueprint's use of bootstrap treeview, select dropdowns, filters, sorting, drag-n-drop, designer toolbox and canvas ops.  Everything looks good.

@skateman @epwinchell @himdel Please review

Not seeing any problems in the UI, so .. I'd merge, except I'm not sure about that bootstrap-treeview vs patternfly-bootstrap-treeview problem..

@himdel I've updated bower.json

Thanks @jeff-phillips-18 , merging when green.. :)


An additional API endpoint with lots of interesting stuff ;-)

Maybe you should have a look at http://<IP-OF-YOUR-SONNEN-BATTERY>:8080/api/configuration

Lots of information there, but could you please point out, which of them are of interest for the user?

In my case, it's not the mostly static values but the additional components, the battery is capable of managing. Have you heard of sonnenPlug, sonnenCharger or sonnenHeater. There's an "operating mode" which can be logged. I'm also using the sonnenFlat, which is interesting for some of the users.
But let the users decide for themselves, which information is interesting and which is not.
In addition, there's another API at my.sonnen.de which is probably worth to have a closer look...

my.sonnen.de is depenend on an active internet connection. Basically I want to avoid this.
For the configuration endpoint I could at least store the JSON string in a state. If you have specific data which is of interest for you, I can also create some states. But for most of the data it won't make sense from my point of view.
I've heard of the smart home devices by sonnen, but haven't had a closer look at them until now.


fix(ipfs-coord): Updating to v6.7.4

:tada: This PR is included in version 2.4.6 :tada:
Your semantic-release bot :package::rocket:


Overall time limit

In some situations where there are many possible mutants or they're slow to test, it might be good to say "test at many as you can in n minutes".
After the time expires cargo mutants should allow any current tests to finish and then return a result on what it found so far.

Overall I think this is not likely to be very useful. If we stop early it's hard to say if that should be treated as a success or failure. And, CI systems typically have a way to put a time limit.


the module name is 'rt.debounce'

readme says just 'debounce'

why do you think it is 'rt.debounce'?

My apologies, meant to submit this to a different repo


Create wallet from private key

Is there a possibility to create a wallet by using the private key and not the mnemonic?

Right now it's not possible. The module depends on cardano-wallet API, which doesn't provide such functionality.


ci: Add terraform fmt to lint and format targets

Description

Adds terraform fmt to both lint and format makefile targets.
format: will rewrite the files, while lint will return with an error
when the files aren't formatted according to terraform fmt.
Motivation and Context

Have terraform fmt run the checks in the CI.
Types of Changes

[x] Refactoring (improves code quality but has no user-facing effect)

no problem, it wasn't urgent 🙂


change report action button bg color if there's held expenses

Explanation of Change
Fixed Issues
$ https://github.com/Expensify/App/issues/52569
PROPOSAL: https://github.com/Expensify/App/issues/52569#issuecomment-2477990920
Tests
Same as QA

[X] Verify that no errors appear in the JS console

Offline tests
Same as QA
QA Steps
One Expense

Go to any chat/workspace
Submit expense
Hold the expense
Make sure the pay/approve button color is gray inside the header
Go back
Make sure the report preview the pay/approve button color is gray

More than 1 Expense

Go to any chat/workspace
Submit more than 1 expense
Hold one of the expense
Make sure the pay/approve button color is gray inside the header
Go back
Make sure the report preview the pay/approve button color is gray

[X] Verify that no errors appear in the JS console

PR Author Checklist

[X] I linked the correct issue in the ### Fixed Issues section above
[X] I wrote clear testing steps that cover the changes made in this PR

[X] I added steps for local testing in the Tests section
[X] I added steps for the expected offline behavior in the Offline steps section
[X] I added steps for Staging and/or Production testing in the QA steps section
[X] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[X] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[X] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[X] I included screenshots or videos for tests on all platforms
[X] I ran the tests on all platforms & verified they passed on:

[X] Android: Native
[X] Android: mWeb Chrome
[X] iOS: Native
[X] iOS: mWeb Safari
[X] MacOS: Chrome / Safari
[X] MacOS: Desktop

[X] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[X] I followed proper code patterns (see Reviewing the code)

[X] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[X] I verified that comments were added to code that is not self explanatory
[X] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[X] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[X] If any non-english text was added/modified, I used JaimeGPT to get English > Spanish translation. I then posted it in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[X] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[X] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[X] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[X] I verified the JSDocs style guidelines (in STYLE.md) were followed

[X] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[X] I followed the guidelines as stated in the Review Guidelines
[X] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[X] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[X] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[X] I verified that if a function's arguments changed that all usages have also been updated correctly
[X] If any new file was added I verified that:

[X] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[X] If a new CSS style is added I verified that:

[X] A similar style doesn't already exist
[X] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[X] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[X] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[X] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[X] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[X] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[X] I verified that all the inputs inside a form are aligned with each other.
[X] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[X] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[X] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
https://github.com/user-attachments/assets/09608706-8f70-43e0-8cd8-5f034b9c0df8

Android: mWeb Chrome
https://github.com/user-attachments/assets/94581783-9a90-4f9c-b4e0-390ea2f601b9

iOS: Native
https://github.com/user-attachments/assets/fc431d89-71ac-4dcb-b16c-a4acf02fb42f

iOS: mWeb Safari
https://github.com/user-attachments/assets/8522fd7e-32a6-4fe7-a3a1-fcfc83c11005

MacOS: Chrome / Safari
https://github.com/user-attachments/assets/fc32ecd0-3183-4070-b09b-306e27b9dc91

MacOS: Desktop
https://github.com/user-attachments/assets/c6b79aca-6e58-4bec-bed9-6ff5b3686734

@NJ-2020 quick bump on the PR comments.

Testing the changes.

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.ts or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] For any bug fix or new feature in this PR, I verified that sufficient unit tests are included to prevent regressions in this flow.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native
https://github.com/user-attachments/assets/4108774d-0359-4d0e-8200-14602913f353

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari
https://github.com/user-attachments/assets/383f8b05-d305-4747-9108-72633a56c70b

MacOS: Desktop
https://github.com/user-attachments/assets/f9a4cadd-0326-4ff9-bda2-44e4a56e14eb

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

Following up on this issue, On this PR, we missed the case where the approve button turns green when selected via the checkbox. To address this, we updated the button style by adding buttonDefaultHovered. More details can be found in the selected proposal: https://github.com/Expensify/App/issues/53897#issuecomment-2535446744

BTW we're reverting these changes and no longer changing button colors so if you're aware of any additional work changing the button colors, please stop immediately.


handle empty text elements

Currently an exception is thrown if there are any text elements with no content (<text></text>) since obj.childNodes[0] is undefined.

Nice.  Thanks jRiest!


Button to remove all app permissions

The buttons on the profile website only remove one app-permission, but sometimes I feel the need to remove them all.
A button to quickly do this would be nice :)

This is already part of Inter-Actief/amelie#182


Bug fix/mds 1098 dropping variable content to early

Scope & Purpose
*In Traversals If we use a variable as the StartVertex and also for Filtering like this:
FOR candidate IN ["vertices/1", "vertices/2"]
FOR v,e,p IN 1 OUTBOUND candidate GRAPH "myGraph"
FILTER e.MostLikedNeighbor == candidate
RETURN v
The variable candidate can be erased too early if another optimizer rule replaces the InputVaribale (e.g. for Distribution in DisjointSmartGraph case)
*

[X] :hankey: Bugfix
[ ] :pizza: New feature
[ ] :fire: Performance improvement
[ ] :hammer: Refactoring/simplification

Checklist

[X] Tests

[X] Regression tests
[ ] C++ Unit tests
[ ] integration tests
[ ] resilience tests

[ ] :book: CHANGELOG entry made
[ ] :books: documentation written (release notes, API changes, ...)
[ ] Backports

[ ] Backport for 3.10: (Please link PR)
[ ] Backport for 3.9: (Please link PR)
[ ] Backport for 3.8: (Please link PR)

Related Information
(Please reference tickets / specification / other PRs etc)

[ ] Docs PR:
[ ] Enterprise PR: No Enterprise part
[X] GitHub issue / Jira ticket: https://arangodb.atlassian.net/browse/MDS-1098 and https://arangodb.atlassian.net/browse/BTS-1304
[ ] Design document:

The red test in matrix-pr is by no means related to this change.


[pulsar-broker] MockZK: Handle zk-children watch notification

Motivation
MetadataCache caches empty list of children if zk path doesn't exists and depends on ZK-watch when zpath gets created.
Right now, MockZooKeeper doesn't fire the children watch which is required by test-case usecases that use metadata-cache to get children.

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks


[FEAT] user defined "Easy, Good, Hard" values instead of or in addition to the algorithm defined one.

Is your feature request related to a problem? Please describe.
Yes it is, I use real short 'maximum interval' like 7days or 8days this makes the recommended "easy, good, hard" intervals to saturate real quick by that I mean, all the three of them will show the max interval after some time usually after 3-4 consecutive "easy or good" reviews for a given card, I don't really want that to happen and I think this defeats the purpose of reviewing a given card altogether.
Describe the solution you'd like
I want the increment intervals ie., "easy, food, hard" to be constant values and is user defined in the settings, like 7days for easy, 4days for good and 1day for hard, and this should be constant for all the cards in a deck no matter new or old ie., bypassing the algorithm altogether. I'm not saying get rid of the algorithm, this is more like an alternative option for people like me who don't get how the algorithm works.
Additional context
I really don't get how the algorithm works, the interval increments are almost always partial values like 3.5days, 7.3days, I tried various combinations of 'base ease' and 'interval' values in the algorithm settings but it doesn't seem to do much, on top of it there is this saturation problem with the algorithm. I also don't want the values of the review intervals to be constantly changing from card to card and depending on the previous reviews, I just like constant intervals it makes the reviewing process a bit easy, I don't have to check for the new easy intervals for each and every card I review, I review a lot of them, trust me it becomes tedious after some time, and it also breaks the flow of recalling the content that I'm reviewing, if I knew beforehand that "easy" will mark this card for 6days or 2days for a hard one, then the whole reviewing process will become much more fluid and less tedious.
here is examples of saturation problem

So, its been a week, I'm able to muster up some time and with the help of Chat-GPT, I was able to bypass the algorithm's schedule by commenting out some lines and added a 'constant value' function in schedule.ts, also added the corresponding UI in the settings.ts for the user to set the constant values for "Easy, Good, Hard", the defaults are "7, 4, 1".
I'm not sure should i close this thread, i'm leaving it for the mod to decide.
I'm ok with it being closed as i got some rudimentary solution.
Here are some screenshots of the modification.
Flashcard screen-grab

Settings UI screen-grab

Here is the main.js file if some poor soul like me needs it.
Don't forget to rename it back to .js.

YES! I think this would work much better for long term retention than the SM2 algorithm with an upper bound on the interval. I very much hope this is made available as an alternative "algorithm" in the existing plugin. But until that happens, is there any chance you could make your solution available as a separate community plugin, @visaeryon? I'm ok with there being some irrelevant settings and other things left over.

I pledge to donate 200 USD to anyone who can make a working solution available as a community plugin, as a small token of appreciation.
For those who don't understand the need for something other than the SM2 algorithm, consider my use case. I don't really use spaced repetition for the initial learning, but to retain knowledge long term. Especially knowledge I don't engage with regularly. The SM2 algorithm isn't really ideal for that use case. The exponentially increasing interval means it sort of jumps around wildly if you try to keep it on a certain level with the hard-good-easy buttons. I've tried setting an upper bound to about 2 months, but with lots of flash cards that's actually too many to review, and I have too little control over the interval. The "good" and "easy" bottom both result in an interval of 2m, so no ability to selectively increase the duration, and the easy sometimes takes the interval way down, and other times almost not at all, depending on the ease factor.
As an alternative to letting the user choose the 3 intervals, the intervals could be non-configurable if there were more than 3 to choose from. Something like 1d, 1w, 1m, 2m, 3m, 6m and 2y should cover every need.

Hey, thanks for the suggestions.
I'm currently towards the tail end of implementing [FEAT] Refactor code to support diff methods of storing the scheduling info, and diff SR algorithms
This is a necessary step before [FEAT] sm-2 is outdated, can you please replace it with the fsrs algorithm?
I personally haven't used the FSRS algorithm, but it does appear to be very well researched:
https://github.com/open-spaced-repetition/fsrs4anki/wiki
Potentially, a more advanced algorithm would not have the negative characteristics described above. Meaning that we wouldn't need to implement the easy/good/hard fixed intervals.
In any case, if anyone is planning to implement the suggestions here, I suggest waiting till I complete #878, or at least be in touch about it.
Cheers
Ronny

Thanks for the update.
It's possible the FSRS algorithm will work slightly less badly for me, but I don't really think a more complicated algorithm is what I need. There are things I want to repeat regularly even if recall is always easy, because I want to have it forefront enough in my mind that it'll likely pop up when I need it, or to be able to make connections to other things that I wouldn't otherwise make. With FSRS it seems like I would still have to "lie" and push the "hard" button just to get the interval I want. Why not let the user select the interval directly instead?
The "algorithm" suggested here is probably much, much simpler to implement, so perhaps you could do it first (once the refactoring is completed) to sort of verify that the code is factored is a way that allows for multiple algorithms?

The "algorithm" suggested here is probably much, much simpler to implement, so perhaps you could do it first (once the refactoring is completed) to sort of verify that the code is factored is a way that allows for multiple algorithms?

Great idea.

@danhje  ,
if you're ok with some irrelevant settings and don't want to use the existing algorithm, I would suggest you use the already provided "main.js" file as a temporary solution.
You just have to replace the existing 'main.js' file inside the ".../.obsidian/plugins/spaced-repetition" directory of your vault,
If you want a different name for the replaced one, just change the "name" field in the "manifest.json" file located in the same directory.
I hope this helps
I think making a whole new separate plugin and get it approved just for this one change is redundant,
if I'm missing the point please let me know.
the plugin directory.

to rename the plugin.

defining flascards is as usual, using the tags.

constant interval fields are at the bottom of the plugin settings tab, just ignore all other settings they are disabled.

Hi all
I have completed the design changes that were required before being able to implement the enhancement requested here.
Those changes are available for beta testing at https://github.com/st3v3nmw/obsidian-spaced-repetition/pull/1006. If you are able to do any testing, that would be appreciated. It would assist on the path of getting a more robust plugin with this feature implemented.
Thanks
Ronny

Hi there!
If you are going to implement custom constant intervals, maybe it makes sense to implement custom button set at the same time? For example button set per deck


updated README.md and package.json

Coverage remained the same at 98.311% when pulling 0f89028a047593fa371147cfb2f4688a47865106 on dogman222:master into a65f6086a26c22736eb4d7cfa43c096afad5b5e8 on EyalAr:master.


Option to choose which monitor scrcpy opens on

Describe the solution you'd like
I'm using Scrcpy on my Windows 10 PC, with triple monitors. I've got it set up with Autoadb to start on plugging my phone in, but would like the option to choose which monitor it opens on. I currently have to drag/move the scrcpy window from my primary monitor to my other monitor every time

Did you try playing with --window-x VALUE --window y VALUE?

i didn't, will do now. i thought that was just for the size of the window

That worked, thank you for the super quick help. I used --window-x 3400 --window-y 25 - to open a windowed version of scrcpy in the top right of my second display.


"Add button" feature

User flow:

Click "Add a PayButton"
Enter a name (unique to this user+server) and 1 or more (multiple) addresses. Only accept BCH or XEC formats as we will use these to determine which currency was intended on each payment.
Generate a unique ID hash for the button that can be added to it to track payments regardless of the address used (although whichever address IS used will allow us to know the intended currency). https://github.com/PayButton/paybutton/issues/67

This can be closed when the four PRs above are merged.


panics when compressing empty data

Hi! Attempting to compress empty data (my example uses compress_seekable but I have tested a file also) causes a panic.
fn main() {
    let cursor = std::io::Cursor::new(&[]);
    let mut out = Vec::new();
    zopfli::compress_seekable(
        &zopfli::Options::default(),
        &zopfli::Format::Gzip,
        cursor,
        &mut out,
    );
}

thread 'main' panicked at 'attempt to subtract with overflow', /home/sky/git/zopfli/src/deflate.rs:311:19
stack backtrace:
   0: rust_begin_unwind
             at /rustc/45e2c2881d11324d610815bfff097e25c412199e/library/std/src/panicking.rs:584:5
   1: core::panicking::panic_fmt
             at /rustc/45e2c2881d11324d610815bfff097e25c412199e/library/core/src/panicking.rs:142:14
   2: core::panicking::panic
             at /rustc/45e2c2881d11324d610815bfff097e25c412199e/library/core/src/panicking.rs:48:5
   3: zopfli::deflate::calculate_block_symbol_size_small
             at /home/sky/git/zopfli/src/deflate.rs:311:19
   4: zopfli::deflate::calculate_block_symbol_size_given_counts
             at /home/sky/git/zopfli/src/deflate.rs:345:9
   5: zopfli::deflate::try_optimize_huffman_for_rle
             at /home/sky/git/zopfli/src/deflate.rs:856:20
   6: zopfli::deflate::get_dynamic_lengths
             at /home/sky/git/zopfli/src/deflate.rs:905:5
   7: zopfli::deflate::calculate_block_size
             at /home/sky/git/zopfli/src/deflate.rs:836:31
   8: zopfli::squeeze::lz77_optimal
             at /home/sky/git/zopfli/src/squeeze.rs:506:20
   9: zopfli::deflate::blocksplit_attempt
             at /home/sky/git/zopfli/src/deflate.rs:1147:17
  10: zopfli::deflate::deflate_part
             at /home/sky/git/zopfli/src/deflate.rs:164:31
  11: zopfli::deflate::deflate
             at /home/sky/git/zopfli/src/deflate.rs:104:9
  12: zopfli::gzip::gzip_compress
             at /home/sky/git/zopfli/src/gzip.rs:49:5
  13: zopfli::compress
             at /home/sky/git/zopfli/src/lib.rs:98:25
  14: zopfli::compress_seekable
             at /home/sky/git/zopfli/src/lib.rs:83:5
  15: scratch::main
             at ./src/main.rs:4:5
  16: core::ops::function::FnOnce::call_once
             at /rustc/45e2c2881d11324d610815bfff097e25c412199e/library/core/src/ops/function.rs:227:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Hi there! I've verified the same issue and added a failing test to the repo. I've also opened PR #3 with a proposed patch for this. Could you try the code from #3 and see if it resolves the issue for you (and produces a valid result)?


Demonstrate some support for CLIs

"write parameterizedfn(s) (with parameters), turn into commands (with options)"
http://nbviewer.jupyter.org/github/ceball/snippets/blob/master/cmd.ipynb

Could do something similar for REST: https://github.com/AlbertDeFusco/tranquilizer

I am not familiar with the many argument parsing libraries that are available. Maybe it would be possible to use one that's higher level/easier to use than argparse, replacing parts of this PR?
E.g.

https://github.com/pallets/click
https://github.com/neithere/argh
...?

closing this pr as stale. there are several related open issues.


[ILVerify] Handling of assignment of interface to object

Sample IL:
.class interface abstract auto ansi public IFace
{
} // end of class IFace
.method public hidebysig static void  MyMethod(class IlTestApp.Program/IFace IFace) cil managed
{
  // Code size       4 (0x4)
  .maxstack  1
  .locals init (object V_0)
  IL_0000:  nop
  IL_0001:  ldarg.0
  IL_0002:  stloc.0
  IL_0003:  ret
} // end of method Program::MyMethod

Same in C#:
public interface IFace
{ }
public static void MyMethod(IFace IFace)
{
      Object o = IFace;
}

ECMA-335:

If T is an interface type, then its direct base class is System.Object.

It would be better to switch this to call CastingHelper.CanCastTo. It will take care of this case as well as many other cases.

Thanks, CastingHelper looks very useful! ...but this case does not seem to be handled. It returns false.  I see a very similar logic to the one we have in IsAssignable(TypeDesc src, TypeDesc dst, bool allowSizeEquivalence = false) here: https://github.com/dotnet/corert/blob/9aa607be455d6d3b013fdb8caaabda600d649fde/src/Common/src/TypeSystem/Common/CastingHelper.cs#L355
but similarly it ignores the interface case. I debugged through it and it just hits the return false after the loop.

...but this case does not seem to be handled

Right, CastingHelper is designed to check whether we can cast an object of type X to a location of type Y. X can never be an interface in that case because it's not possible to allocate an instance of an interface on the GC heap. ILVerifier needs different casting semantics that check whether something that was allowed to be stored in location X can be stored in location Y (without knowing the concrete type of the object instance stored in it). A lot of the logic is similar, but it's also a bit different (e.g. the existing CanCastTo will also say that e.g. Int32 is castable to Object, but you can't stloc an Int32 to a local of type object without first boxing it, for example).

I see… How should we proceed here?
The options I see here:

Create another class, very similar to CastingHelper  that checks for assignment compatibility specifically for ILVerify.
Parametrize CastingHelper  to be able to deal with such cases
Leave it as it was originally and extend the IsAssignable methods in ILVerify (basically my original PR)
+Of course I’m happy to hear your ideas.

Let me know which direction I should go and I will try to prototype it.

Parametrize CastingHelper to be able to deal with such cases

This should be the preferred option.

ILVerifier needs different casting semantics that check whether something that was allowed to be stored in location X can be stored in location Y

It should be fine to handle the interface -> object case in the CastingHelper by default, without any parametrization. This case is effectively unreachable today, and so it does not harm to add it.
Could you please add it there, and also add tests for it to https://github.com/dotnet/corert/blob/master/src/ILCompiler.TypeSystem/tests/CastingTests.cs ?

Int32 is castable to Object, but you can't stloc an Int32 to a local of type object without first boxing it

This case will need parameterization. Here is how the parametrization looks in the runtime itself: https://github.com/dotnet/corert/blob/9aa607be455d6d3b013fdb8caaabda600d649fde/src/Runtime.Base/src/System/Runtime/TypeCast.cs#L28 . It would be nice to do it same or very similar way here. Can be separate PR.

We had some branching issues on our fork, so I opened a new PR: #3666


Unable to access K3s cluster from Host system (MacOS, M1) from Lima VM.  (x509: certificate signed by unknown authority)

Description
Hi Team,
I really do not know where to post this or guide me if it is not the correct place; thanks.
I am unsure if this is a bug or something from my side issue.
I set up K3s in Lima VM in MacOS by using the following link
K3s Set Up in LimaVM
All things are okay in my Lima VM, however, I am unable to access the K8s Cluster in my MacOS, though I did the
# $ export KUBECONFIG=$(limactl list k3s --format 'unix://{{.Dir}}/copied-from-guest/kubeconfig.yaml')
On my MacOS (M1 Chip), I am running into the following error when I access K3s cluster.
On-Host-Machine-MacOS:lima-test ramu$ kubectl get pods -A
E0401 10:16:35.103374   17263 memcache.go:265] couldn't get current server API group list: Get "https://<IP_ADDRESS>:6443/api?timeout=32s": tls: failed to verify certificate: x509: certificate signed by unknown authority
Unable to connect to the server: tls: failed to verify certificate: x509: certificate signed by unknown authority

I have tried adding the certificates to the MacOS keychain. However, the keychain says this root certificate cannot be trusted.
Same issue with Rancher Desktop on my MacOS,
===

    client-key-data: REDACTED<Certificate Authoirity Key>

2024-03-31T19:02:21.682Z: Error starting lima: Error: self signed certificate in certificate chain
    at TLSSocket.onConnectSecure (node:_tls_wrap:1543:34)
    at TLSSocket.emit (node:events:513:28)
    at TLSSocket._finishInit (node:_tls_wrap:962:8)
    at TLSWrap.onhandshakedone (node:_tls_wrap:746:12) {
  code: 'SELF_SIGNED_CERT_IN_CHAIN'
}

Does anyone know how to resolve this in MacOS with Lima VM where K3s has been installed?
Thanks.

I have followed this article also. Thanks
https://medium.com/nttlabs/containerd-and-lima-39e0b64d2a59

@developer1622 is this still an issue for you? Is it your personal machine or a work machine? I have a feeling that probably you have some proxy environment variable on your host that is causing the request not to hit https://localhost:6443 properly.

The CA is part of the kubeconfig, so it is supposed to work - as long as it is talking to the right cluster, that is...


Viewport tag

It says in Google Chrome the viewport tag is missing but I actually find it in head.html. Howcome it only scores 70 on SEO i wanted to change it but i couldnt.

I don't know why, but I modified some of the code to try it out and was able to get 100 scores for SEO.
Perhaps this commit has something to do with it : 431cc90

Thanks a lot! Yea it works thanks! I'll let this open until merged then :)

Um, that's a commit on the master branch, so I don't think I need to merge it...

Omg sorry, I'm little new my bad.


Dynamic localization

It looks like R.swift doesn't support dynamic localization. Is this support planned for the future?
Currently, I am using SwiftGen and have something like this in the template that generates the code for localizable String constants:
private static func tr(_ table: String, _ key: String, _ args: CVarArg...) -> String {
    let locale = UserDefaults.standard.userLocale
    let format: String
    switch locale {
      case .en:
        format = NSLocalizedString(key, comment: "")
      default:
        let bundle = LocalizationsManager.shared.bundle(forLocale: locale)
        format = NSLocalizedString(key, bundle: bundle, comment: "")
    }

    return String(format: format, arguments: args)
  }

So the app language is independent of the OS language and can be changed dynamically in the app and the selected value is stored in UserDefaults. Then the localization bundle is selected based on that.

Closing this issue, see #219 for updates on this feature request.


Add KL-Divergence loss support

Description
Hello, as i see all loss functions in DJL manualy implemented (there is no jni mapping for native implementations).
My question is about KL-Divergence loss. Here is pytorch implementation: https://github.com/pytorch/pytorch/blob/7cc029cb75c292e93d168e117e46a681ace02e79/aten/src/ATen/native/Loss.cpp#L69-L94
As you can see it has a custom backward function. So is there a way to implement custom backward function in DJL?
What if i implement only forward function? Would autograd function give a tottaly different behavior?
References
https://pytorch.org/docs/stable/generated/torch.nn.functional.kl_div.html#torch.nn.functional.kl_div

DJL provides an abstract class for various loss functions. api/src/main/java/ai/djl/training/loss. You can create a PR and add them there.
About the backward functions shown in torch library, I don't think it is required in DJL implementation. autograd should be able to cover it, by calling .backward for example in api/src/main/java/ai/djl/training/EasyTrain.java.
examples/src/main/java/ai/djl/examples/training/transferlearning/TransferFreshFruit.java is an another example where customer loss function is added.


Spring Data JDBC 2.2.1 -> 2.2.2 변경 사항 추적 반영

https://github.com/spring-projects/spring-data-jdbc/compare/2.2.1...2.2.2
There's nothing special to follow. :)
After merge #50 I will upload 2.2.2 commit.


Subscription error - JSONDecodeError

Users cannot subscribe and the following error is thrown.
JSONDecodeError: Expecting value: line 1 column 1 (char 0)
at subscribe (/app/cannlytics_website/api.py:28)

Removed an undeclared variable, subscriptionId. User's should now be able to subscribe.


pipeline example fails on workflow machine

with:
================================================================================
 EnsembleMD (0.3.7)
================================================================================

Starting Allocation                                                           ok
        Verifying pattern                                                     ok
        Starting pattern execution                                            ok
--------------------------------------------------------------------------------
Executing 3 pipeline instances of 16 steps on 1 allocated core(s) on 'local.localhost'

Job waiting on queue...
Job is now running !
Waiting for step_1 to complete.                                             done
Waiting for step_2 to complete.                                             done
Waiting for step_3 to complete.                                             done
--------------------------------------------------------------------------------
Pattern execution successfully finished

Starting Deallocation2015-10-21 21:33:03,659: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : ERROR   : Resource error: SAGA job state for ComputePilot pilot.0000 is Failed.
2015-10-21 21:33:03,659: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : ERROR   : Pattern execution FAILED.
2015-10-21 21:33:03,660: radical.pilot       : MainProcess                     : Thread-1       : ERROR   : pilot manager controller thread caught system exit -- forcing application shutdown
Traceback (most recent call last):
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_manager_controller.py", line 335, in run
    self.call_callbacks(pilot_id, new_state)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_manager_controller.py", line 258, in call_callbacks
    cb(self._shared_data[pilot_id]['facade_object'](), new_state)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/ensemblemd/single_cluster_environment.py", line 127, in pilot_state_cb
    sys.exit(2)
SystemExit: 2
Traceback (most recent call last):
  File "pipeline.py", line 117, in <module>
    cluster.deallocate()
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/ensemblemd/single_cluster_environment.py", line 103, in deallocate
    self._session.close(cleanup=self._cleanup)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/session.py", line 281, in close
    pmgr.close (terminate=terminate)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/pilot_manager.py", line 175, in close
    self.cancel_pilots()
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/pilot_manager.py", line 566, in cancel_pilots
    self._worker.register_cancel_pilots_request(pilot_ids=pilot_ids)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_manager_controller.py", line 601, in register_cancel_pilots_request
    time.sleep(0.3)
KeyboardInterrupt

Can you rerun this and see if it repeats ? The error seems to be during dellocation (shutdown). You can run it with RADICAL_ENMD_VERBOSE=debug RADICAL_PILOT_VERBOSE=debug incase the failure is during the steps.

The error seems to be during dellocation (shutdown)

Yes, It seems to finish, but fails during deallocation

I am not sure why, but I have been noticing shutdown issues on the workflow machine. I don't see this on  my machine though.

With RADICAL_ENMD_VERBOSE=debug it did not produce any errors and now with export RADICAL_ENMD_VERBOSE=REPORT worked as well. I have no idea what happened.

yes at a third attempt produces error as well:
Pattern execution successfully finished

Starting Deallocation2015-10-21 22:07:37,580: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : ERROR   : Resource error: SAGA job state for ComputePilot pilot.0000 is Failed.
2015-10-21 22:07:37,580: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : ERROR   : Pattern execution FAILED.
2015-10-21 22:07:37,580: radical.pilot       : MainProcess                     : Thread-1       : ERROR   : pilot manager controller thread caught system exit -- forcing application shutdown
Traceback (most recent call last):
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_manager_controller.py", line 335, in run
    self.call_callbacks(pilot_id, new_state)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_manager_controller.py", line 258, in call_callbacks
    cb(self._shared_data[pilot_id]['facade_object'](), new_state)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/ensemblemd/single_cluster_environment.py", line 127, in pilot_state_cb
    sys.exit(2)
SystemExit: 2
Traceback (most recent call last):
  File "pipeline.py", line 117, in <module>
    cluster.deallocate()
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/ensemblemd/single_cluster_environment.py", line 103, in deallocate
    self._session.close(cleanup=self._cleanup)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/session.py", line 281, in close
    pmgr.close (terminate=terminate)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/pilot_manager.py", line 184, in close
    self._worker.cancel_launcher()
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_manager_controller.py", line 195, in cancel_launcher
    worker.stop ()
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_launcher_worker.py", line 91, in stop
    self.join()
  File "/opt/radical/lib/python2.7/threading.py", line 949, in join
    self.__block.wait()
  File "/opt/radical/lib/python2.7/threading.py", line 340, in wait
    waiter.acquire()
KeyboardInterrupt

With debug flags output is:
2015-10-21 22:09:17,631: radical.enmd.pipeline.static.default: MainProcess                     : MainThread     : DEBUG   : Created step_2 CU: {'kernel': None, 'executable': '/bin/bash', 'name': 'step_2', 'restartable': False, 'output_staging': [{'source': 'cfreqs-3.dat', 'target': 'cfreqs-3.dat'}], 'stdout': None, 'pre_exec': [], 'mpi': False, 'environment': None, 'cleanup': False, 'arguments': ['-l', '-c', 'grep -o . asciifile-3.dat | sort | uniq -c > cfreqs-3.dat'], 'stderr': None, 'cores': 1, 'post_exec': None, 'input_staging': [{'action': 'Link', 'source': '/home/antontre/radical.pilot.sandbox/rp.session.workflow.iu.xsede.org.antontre.016730.0004-pilot.0000/unit.000002/asciifile-3.dat', 'target': 'asciifile-3.dat'}]}.
2015-10-21 22:09:17,631: radical.enmd.pipeline.static.default: MainProcess                     : MainThread     : INFO    : Submitted tasks for step_2.
2015-10-21 22:09:33,440: radical.enmd.misc.chksum: MainProcess                     : MainThread     : INFO    : python.interpreter   version: 2.7.10 (default, Oct 19 2015, 13:07:33) [GCC 4.4.7 20120313 (Red Hat 4.4.7-16)]
2015-10-21 22:09:33,442: radical.enmd.misc.chksum: MainProcess                     : MainThread     : INFO    :                      pid: 1752808
2015-10-21 22:09:33,442: radical.enmd.misc.chksum: MainProcess                     : MainThread     : INFO    :                      tid: MainThread
2015-10-21 22:09:33,489: radical.enmd.pipeline.static.default: MainProcess                     : MainThread     : DEBUG   : Created step_3 CU: {'kernel': None, 'executable': '/bin/bash', 'name': 'step_3', 'restartable': False, 'output_staging': [{'source': 'cfreqs-3.sha1', 'target': 'cfreqs-3.sha1'}], 'stdout': None, 'pre_exec': ['command -v sha1sum >/dev/null 2>&1 && export SHASUM=sha1sum  || export SHASUM=shasum'], 'mpi': False, 'environment': None, 'cleanup': False, 'arguments': ['-l', '-c', '$SHASUM cfreqs-3.dat > cfreqs-3.sha1'], 'stderr': None, 'cores': 1, 'post_exec': None, 'input_staging': [{'action': 'Link', 'source': '/home/antontre/radical.pilot.sandbox/rp.session.workflow.iu.xsede.org.antontre.016730.0004-pilot.0000/unit.000005/cfreqs-3.dat', 'target': 'cfreqs-3.dat'}]}.
2015-10-21 22:09:33,490: radical.enmd.pipeline.static.default: MainProcess                     : MainThread     : INFO    : Submitted tasks for step_3.
2015-10-21 22:09:38,307: radical.enmd.SingleClusterEnvironment: MainProcess                     : MainThread     : INFO    : Deallocating Cluster
2015-10-21 22:09:42,039: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : INFO    : Resource local.localhost state has changed to Canceled
2015-10-21 22:09:43,284: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : INFO    : Resource local.localhost state has changed to Failed
2015-10-21 22:09:43,285: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : ERROR   : Resource error: SAGA job state for ComputePilot pilot.0000 is Failed.
2015-10-21 22:09:43,285: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : ERROR   : Pattern execution FAILED.
2015-10-21 22:09:43,285: radical.pilot       : MainProcess                     : Thread-1       : ERROR   : pilot manager controller thread caught system exit -- forcing application shutdown
Traceback (most recent call last):
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_manager_controller.py", line 335, in run
    self.call_callbacks(pilot_id, new_state)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_manager_controller.py", line 258, in call_callbacks
    cb(self._shared_data[pilot_id]['facade_object'](), new_state)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/ensemblemd/single_cluster_environment.py", line 127, in pilot_state_cb
    sys.exit(2)
SystemExit: 2
Traceback (most recent call last):
  File "pipeline.py", line 117, in <module>
    cluster.deallocate()
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/ensemblemd/single_cluster_environment.py", line 103, in deallocate
    self._session.close(cleanup=self._cleanup)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/session.py", line 281, in close
    pmgr.close (terminate=terminate)
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/pilot_manager.py", line 184, in close
    self._worker.cancel_launcher()
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_manager_controller.py", line 195, in cancel_launcher
    worker.stop ()
  File "/home/antontre/myenv/lib/python2.7/site-packages/radical/pilot/controller/pilot_launcher_worker.py", line 91, in stop
    self.join()
  File "/opt/radical/lib/python2.7/threading.py", line 949, in join
    self.__block.wait()
  File "/opt/radical/lib/python2.7/threading.py", line 340, in wait
    waiter.acquire()
KeyboardInterrupt

2015-10-21 22:09:42,039: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : INFO    : Resource local.localhost state has changed to Canceled
2015-10-21 22:09:43,284: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : INFO    : Resource local.localhost state has changed to Failed
2015-10-21 22:09:43,285: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : ERROR   : Resource error: SAGA job state for ComputePilot pilot.0000 is Failed.
2015-10-21 22:09:43,285: radical.enmd.SingleClusterEnvironment: MainProcess                     : Thread-1       : ERROR   : Pattern execution FAILED.

Double shutdown attempt ? I ran into this in one of the RP 0.37.? versions.

Yes, likely an RP level problem: a cancelled pilot is sometimes reported as FAILED, which then rtiggers a callback on your end...


[WIP] Auto reload the local operator for code changes

When running the operator using operator-sdk up local command,
restart the operator whenever there is a change in Go source code
in the file-system.
Fixes #1484

[x] Flag to disable auto-reload
[ ] Tests
[ ] Flag to set ignore directories (default: .git,build)

@baijum This looks like a good start. Just a couple of other ideas to think about:

Can you make this work for the helm and ansible operator types as well?
It would be interesting to see this implemented using the functional options pattern entirely behind the exsting API of projutil.ExecCmd, where the function could be updated to something along the lines of:

func ExecCmd(cmd *exec.Cmd, opts ...func(*ExecOptions) error) error {
    execOptions := ExecOptions{}
    for _, opt := range opts {
        if err := opt(&execOptions); err != nil {
            return err
        }
    }
    ...
}

Then could export a new RestartOnChange function that configures ExecCmd to watch a directory and restart the passed cmd on change:
func RestartOnChange(rootDir string, ignorePaths []string) func(*ExecOption) error {
    return func(opt *ExecOption) error {
        opt.RestartOnChange = true
        opt.WatchRootDir = rootDir
        opt.WatchIgnorePaths = ignorePaths
        return nil
    }
}

With this pattern, existing usages would be unchanged:
projutil.ExecCmd(myOneShotCmd)

But to restart a command based on a watch, it could look like:
projutil.ExecCmd(
    myRestartableCmd,
    projutil.RestartOnChange(".", []string{".git", "deploy", "build"})
)

I think doing something along these lines would make it easy to extend this to other commands (like ansible and helm), and it would make it easy to extend the ExecCmd function in other ways in the future.
Thoughts?

@joelanford Thanks for the idea. I will study that pattern.
I agree that helm and ansible should be covered.

@joelanford Looks like ansible and helm operators are not using ExecCmd to start the operator.
https://github.com/operator-framework/operator-sdk/blob/bd4dc8c52ddbe7aa5bd9e8c433d54895963b22a9/pkg/ansible/operator/operator.go#L83
https://github.com/operator-framework/operator-sdk/blob/bd4dc8c52ddbe7aa5bd9e8c433d54895963b22a9/pkg/helm/run.go#L111

@baijum Oh, right. In that case, we probably need an abstraction that handles each case. In fact, the entire ansible.Run and helm.Run commands would need to be wrapped so that the watches.yaml file could be reloaded.
It looks like the projutil.ExecCmd, ansible.Run, and helm.Run commands all have the same signature, but it also looks like we'd have to have two different ways to stop them.
We might have to have something like the following with a couple of struct implementations (one for ExecCmd and another for the Run functions, perhaps):
type Runnable interface {
   Run() error
   Stop() error
}

@baijum Before you get too far with this, I want to make sure this is something we're likely to accept.
/cc @hasbro17 @LiliC @shawn-hurley @estroz @AlexNPavel @theishshah
Thoughts on including this functionality in operator-sdk? Would we be better off documenting how to do this with inotify or fswatch?

@joelanford I think this is very useful and right now I think users just assume this is already working and run into problems when changes are not applied, thinking the problem is in their code. So this is very much needed 👍

@baijum thanks again for opening this PR. Do you plan on working on this going forward? If not, one of the SDK main contributors can potentially pick it up.


Search whole class hierarchy when enabling/disabling features

@ssilvert

Yes, exactly.
Not yet. Triggered the pipelines now:
https://keycloak-jenkins.com/job/universal-test-pipeline-server/2029/
https://keycloak-jenkins.com/job/universal-test-pipeline-adapters/1628/
I don't expect any failures caused by this. Even though it might not seem so, it's a relatively small change which doesn't change current behaviour in most cases (until now, we didn't need to "combine" the enable/disable annotations before, i.e. we had only one annotation in given class hierarchy).

Not yet. Triggered the pipelines now:
https://keycloak-jenkins.com/job/universal-test-pipeline-server/2029/
https://keycloak-jenkins.com/job/universal-test-pipeline-adapters/1628/
I don't expect any failures caused by this. Even though it might not seem so, it's a relatively small change which doesn't modify the current behaviour in most cases (before now, we didn't need to "combine" the enable/disable annotations, i.e. we had only one annotation in given class hierarchy).

Let me know if the tests look good.  If so, I'll merge.

New test results:
https://keycloak-jenkins.com/job/universal-test-pipeline-server/2033/
https://keycloak-jenkins.com/job/universal-test-pipeline-adapters/1631/
The tests look ok, my changes didn't break anything. But we still need to resolved the issues mentioned in the main PR (which are not caused by this).
@ssilvert Feel free to merge this. :)


Conformer ASR model gives prediction over a few words

Hi, I am training the Conformer on a Vietnamese dataset (around 100 hours of speech). I have trained a Sentencepiece tokenizer (5000_unigram) with the dataset, and it looks like this

Then I trained the ASR model with the recipe speechbrain/recipes/LibriSpeech/ASR/transformer/train.py and then re-config the conformer_small.yaml (I only change the datasets csv and using a Vietnamese 5000 unigram tokenizer, other settings left unchanged).
Here is what I got after 45 epochs of training and The WER stays ~100 after 45 epochs.

I have also tried training on LibriSpeech train-clean-100 (with the conformer recipe) and WER decreases real fast

The predictions on the test set (Vietnamese model) spread over only a few words :

Has anyone faced the same issue when training in other languages datasets? Should I keep training or what should I do? Thanks a lot

Here is the output of S2STransformerBeamSearch that I get by running self.hparams.valid_search(enc_out.detach(), wav_lens)
while the model is training
(Pdb) self.hparams.valid_search(enc_out.detach(), wav_lens)
([[50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16], [50, 16]], tensor([[-13.9380],
        [-13.9920],
        [-13.8977],
        [-13.9881],
        [-13.9300],
        [-13.9235],
        [-13.9532],
        [-13.8694],
        [-13.9957],
        [-13.9751],
        [-13.9338],
        [-13.9440],
        [-14.0289],
        [-14.0106],
        [-13.9450],
        [-13.9525]], device='cuda:0', grad_fn=<TopkBackward>))

Sometimes making a transformer-based model converging is challenging. Did you try with a standard transformer instead? An alternative that I might suggest is doing pretraining with wav2vect (it normally helps even on different languages). You can find an example in the current development branch (see /recipes/LibriSpeech/ASR/ctc). The issue is that the ctc+wav2vect system can be very memory demanding.

Thank you, I tried a smaller version of standard transformer and it's now converging :D


Parrot account not working with WaterWaysMap.org rss

The birb set up this account for waterwaymap.org but doesn't appear to have noticed/posted the last few updates. Any idea? Any other diagnostic I can provide.
Here's a link into the thread I had with the bot:
https://rss-parrot.net/u/birb/status/1704748268325307221
Many thanks for this lovely idea.

Most of the items in the feed have one of these two links:
https://waterwaymap.org
https://amandasaurus.github.io/osm-river-basins
These are meant to be unique per post; the link identifies the different posts.
The two posts showing up in the parrot account are for these two URLs.
Hope that helps!

Thanks for looking at it.
Specifically I was hoping to get the bot to pick up this feed of data update times, which does seem to have separate items: https://pub-02bff1796dd84d2d842f219d10ae945d.r2.dev/2023-04-01/data_updates.xml. Another rss->email service was able to find this and use it successfully. If there's something that needs to be modified on waterways I can always ping the owner over there.

The bot is a bit simplistic in that it only toots the first time a new post appears in the feed (a post being something with a unique link pointing to it). Subsequent updates are ignored, roughly to the tune of "I've  seen this post and tooted about it already".
My mental model has been a blog or news feed with posts. There every new post is accessible via its own link. Sometimes an existing post gets edited/updated, and there can be an item about that in the RSS feed, but with the bot I just focused on tooting when a post is first released.

Got it. Totally reasonable. I look forward to using the bot for other more typical things. I appreciate your time.


Update Sigstore Blog Logo + Favicon

Description
Sigstore has a new logo. I'm not sure who made the blog logo? New artwork is available here.

Favicon
And attaching the favicon here. The designer didn't provide an .ico file, let me know if you need that.

Completed this a little while ago


portconfigure: ensure SDK directory is not empty

On older versions of macOS (e.g. OS X El Capitan), even though "macosxfake" is not a valid SDK,
env DEVELOPER_DIR="/Library/Developer/CommandLineTools" /usr/bin/xcrun --show-sdk-path --sdk macosxfake has zero exit value but outputs an empty string.

When does this make a difference? Normally on these OS versions with the CLTs installed we would already have returned on line 560 or 567.

Instead of tracking down when the behavior of xcrun changed or worrying about the possibility of a Portfile changing configure.sdk_version, this seemed safer.


Removes bucketName fields from Protocol

Fixes: #38 #36
This PR aims to remove the bucketName fields in the protocol in favor of the bucketID field in the Bucket.spec. We also remove the API-approved annotation.

/assign wlan0


feat: update docs sandpack deps

What is the current behavior?
https://sandpack.codesandbox.io/docs/getting-started/install

What is the new behavior?
website/docs/src/NestedSandpack.tsx
line 48
customSetup={{
  dependencies: {
-    "@codesandbox/sandpack-react": "1.0.0",
+    "@codesandbox/sandpack-react": "latest",
-    "@codesandbox/sandpack-themes": "1.0.0",
+    "@codesandbox/sandpack-themes": "latest",
  },
}}

Checklist

[x] Documentation;
[ ] Storybook (if applicable);
[ ] Tests;
[x] Ready to be merged;

@danilowoz

Thank you!


calicp-kube-controllers can't get API Server: context deadline exceeded

I have the problem after having installed microk8s on my Ubuntu 21.10 server:
sudo snap install microk8s --channel=1.23 --classic

Checked the pods and saw that one crushed:
$ microk8s.kubectl get pods -n kube-system
calico-node-c7h46                          1/1     Running            1 (7m38s ago)   10m
calico-kube-controllers-5ddf994775-gp8cv   0/1     CrashLoopBackOff   7 (34s ago)     10m

In logs , I see that something is wrong with the API Server:
$ microk8s.kubectl logs calico-kube-controllers-5ddf994775-gp8cv  -n kube-system
2022-04-22 13:26:15.311 [INFO][1] main.go 88: Loaded configuration from environment config=&config.Config{LogLevel:"info", WorkloadEndpointWorkers:1, ProfileWorkers:1, PolicyWorkers:1, NodeWorkers:1, Kubeconfig:"", DatastoreType:"kubernetes"}
W0422 13:26:15.312587       1 client_config.go:543] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
2022-04-22 13:26:15.313 [INFO][1] main.go 109: Ensuring Calico datastore is initialized
2022-04-22 13:26:25.313 [ERROR][1] client.go 261: Error getting cluster information config ClusterInformation="default" error=Get "https://<IP_ADDRESS>:443/apis/crd.projectcalico.org/v1/clusterinformations/default": context deadline exceeded
2022-04-22 13:26:25.313 [FATAL][1] main.go 114: Failed to initialize Calico datastore error=Get "https://<IP_ADDRESS>:443/apis/crd.projectcalico.org/v1/clusterinformations/default": context deadline exceeded

Result of microk8s.inspect
inspection-report-20220422_132011.tar.gz

I see these these in the kubelite logs
Apr 22 13:19:39 drift-test-rig microk8s.daemon-kubelite[843]: I0422 13:19:39.899796     843 proxier.go:657] "Failed to load kernel module with modprobe, you can ignore this message when kube-proxy is running inside container without mounting /lib/modules" moduleName="ip_vs"
Apr 22 13:19:39 drift-test-rig microk8s.daemon-kubelite[843]: I0422 13:19:39.916612     843 proxier.go:657] "Failed to load kernel module with modprobe, you can ignore this message when kube-proxy is running inside container without mounting /lib/modules" moduleName="ip_vs_rr"
Apr 22 13:19:39 drift-test-rig microk8s.daemon-kubelite[843]: I0422 13:19:39.918799     843 proxier.go:657] "Failed to load kernel module with modprobe, you can ignore this message when kube-proxy is running inside container without mounting /lib/modules" moduleName="ip_vs_wrr"
Apr 22 13:19:39 drift-test-rig microk8s.daemon-kubelite[843]: I0422 13:19:39.930530     843 proxier.go:657] "Failed to load kernel module with modprobe, you can ignore this message when kube-proxy is running inside container without mounting /lib/modules" moduleName="ip_vs_sh"
Apr 22 13:19:39 drift-test-rig microk8s.daemon-kubelite[843]: I0422 13:19:39.931278     843 proxier.go:657] "Failed to load kernel module with modprobe, you can ignore this message when kube-proxy is running inside container without mounting /lib/modules" moduleName="nf_conntrack"

I don't know if there is a need to load these manually.  I suppose kube-proxy loads them on start thats why it triggered this...
If you can try manually loading these like this.
$ sudo modprobe ip_vs
$ sudo modprobe ip_vs_rr
$ sudo modprobe ip_vs_wrr
$ sudo modprobe ip_vs_sh
$ sudo modprobe nf_conntrack

Then restart microk8s.  I am not sure if this will work though.
@neoaggelos @ktsakalozos thoughts?

I have exactly the same probelm with my Raspberry Pi cluster running Microk8s.

I too have the same issue, although mine is an existing cluster.

microk8s  v1.22.8        3057   1.22/stable      canonical✓  classic

I noticed the issue after installing the latest (5.13.0-40-generic) kernel and restarting the server.
$ uname -a
Linux homeserver 5.13.0-40-generic #45-Ubuntu SMP Tue Mar 29 14:48:14 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

$ kubectl get pods -n kube-system
NAME                                       READY   STATUS             RESTARTS         AGE
calico-node-cc4m2                          1/1     Running            1 (11m ago)      30m
coredns-7f9c69c78c-kh7df                   0/1     Running            9 (11m ago)      139d
calico-kube-controllers-75c5f98cdc-9xhc7   0/1     CrashLoopBackOff   14 (4m2s ago)    29m
hostpath-provisioner-5c65fbdb4f-w298z      0/1     CrashLoopBackOff   504 (2m5s ago)   139d

The logs of the calido-kube-controllers is the same as above.
I've tried to specify the calico interface in the /var/snap/microk8s/current/args/cni-network/cni.yml file, but that had no effect. I see the calico-node pod is running, and the logs show the expected IP address.
Happy to help in any way.
inspection-report-20220424_004208.tar.gz

I am having the same issue on Ubuntu 21.10 running on multiple Raspberry Pi 4s with the latest kernel installed 5.13.0-1025-raspi
After long trail and error I at least found a solution to temporarily get the cluster sort of up and running again.
Possible temporary mitigation/solution

From the logs of various pods (I have a kubernetes dashboard, traefik, among others) it seems that the master control plane node is not reachable via the internal ip address <IP_ADDRESS> (same as in opening post).
As soon as I forcefully moved the calico-kube-controller pod to the master control plane node, it started working again.
From there I drained and cordoned all other nodes except the master (only one in my setup now).
After some time the workloads healed and came all up again. 🎉

Side note:

I also downgraded the kernel to the previous version as I suspected some kind of change during the last apt upgrade to sudo flash-kernel --force 5.13.0-1024-raspi.
This did not suffice in restoring the cluster and I took the route described above.

Hopefully this helps in either fixing the issue and restoring some smaller clusters. 😉
I am happy to provide more diagnostics if needed.

Hey @balchua, the modules are loaded:
$ sudo lsmod | grep ip_vs
ip_vs_wrr              16384  0
ip_vs_sh               16384  0
ip_vs_rr               16384  0
ip_vs                 163840  6 ip_vs_rr,ip_vs_sh,ip_vs_wrr
nf_conntrack          151552  6 xt_conntrack,nf_nat,xt_nat,xt_MASQUERADE,ip_vs,xt_REDIRECT
nf_defrag_ipv6         24576  2 nf_conntrack,ip_vs
libcrc32c              16384  7 nf_conntrack,nf_nat,btrfs,nf_tables,xfs,raid456,ip_vs

It maybe the reason for RasPI, but I'm using Ubuntu Server 21.10 for amd64.

Dear all,
I have the same issue on a single node raspberry pi 4 deployment on ubuntu server 21.10.
I set up a clean virtual machine (amd64) with ubuntu server 21.10 and ran into the same issue after installing microk8s.
Regards
Jörg

Dear all,
I have the same problem on an AMD Ubuntu server 21.10 deployment. Even tried to update Ubuntu to 22.04 and microk8s to 1.23.5.  But the problem still exists.
I'm happy to test any suggestions on the vm.
Best regards,
Samuel

Hey folks, we'll take a look at this right away. Thank you all for raising this!

Can I please ask you to try our other channel? snap refresh microk8s --channel=latest/edge ?
This will help us/me eliminate a few varibles.

Also please try showing us output from ethtool --offload vxlan.calico rx off tx off

Changed the channel to latest/edge and did an update of microk8s.
root@kubernetes:~# ethtool --offload vxlan.calico rx off tx off
netlink error: no device matches name (offset 24)
netlink error: No such device

Updating to edge did not make a difference for me.
"ethtool --offload vxlan.calico rx off tx off doesn't give any output.

Changed the channel to latest/edge and did an update of microk8s.
root@kubernetes:~# ethtool --offload vxlan.calico rx off tx off
netlink error: no device matches name (offset 24)
netlink error: No such device

A second attempt of the command showed no output

Thanks @blicknix the idea here is we sometimes come across issues with offloading being enabled.
Can you please try restarting the calico controller?

Updating to edge did not make a difference for me.
"ethtool --offload vxlan.calico rx off tx off doesn't give any output.

Apologies I reworded the ask, this will disable offloading, if you restart the pods/microk8s lets see whether that brings back up the controller.

I did
kubectl rollout restart deployment -n kube-system calico-kube-controllers
The pod is still in crashloop.
 Let me know if I should try something

Similar to @nc-kab, I've updated to the latest/edge and restarted the calico pods. Still having the same issue.

When the calico CNI sets up the network it needs to select a network interface through which it will route traffic. In /var/snap/microk8s/current/args/cni-network/cni.yaml search for IP_AUTODETECTION_METHOD and you will see that calico will use by default the "first-found" interface to route traffic. It is possible this interface auto-detection method is selecting an inappropriate interface (eg an interface of lxd). Let's try to provide a hint on which interface it should be used. Edit /var/snap/microk8s/current/args/cni-network/cni.yaml and replace first-found with can-reach=<IP_IN_NETWORK_TO_BE USED> with IP_IN_NETWORK_TO_BE USED being an IP of a machine in the network we want to use for routing traffic. I think that could be the public facing IP of the host. Then reapply the cni.yaml with microk8s kubectl apply -f /var/snap/microk8s/current/args/cni-network/cni.yaml. In case of multi-node clusters we are able to identify where we should route traffic through because we know where the join node is reached from so this problem should not be present in multi-node clusters.

Changed IP_AUTODETECTION_METHOD but didn't change anything in the outcome, but also I only use a Single Node Cluster.

Here is a source of errors I would appreciate if you could please eliminate.
When the calico CNI sets up the network it needs to select a network interface through which it will route traffic. In /var/snap/microk8s/current/args/cni-network/cni.yaml search for IP_AUTODETECTION_METHOD and you will see that calico will use by default the "first-found" interface to route traffic. It is possible this interface auto-detection method is selecting an inappropriate interface (eg an interface of lxd). Let's try to provide a hint on which interface it should be used. Edit /var/snap/microk8s/current/args/cni-network/cni.yaml and replace first-found with can-reach=<IP_IN_NETWORK_TO_BE USED> with <IP_IN_NETWORK_TO_BE USED> being an IP of a machine in the network we want to use for routing traffic. I think that could be the public facing IP of the host. Then reapply the cni.yaml with microk8s kubectl apply -f /var/snap/microk8s/current/args/cni-network/cni.yaml. In case of multi-node clusters we are able to identify where we should route traffic through because we know where the join node is reached from so this problem should not be present in multi-node clusters.

Didn't work for me, too, but thank you

Could you also modprobe br_netfilter ?

Could you also modprobe br_netfilter ?

$ modprobe br_netfilter
modprobe: ERROR: could not insert 'br_netfilter': Operation not permitted
$ sudo modprobe br_netfilter
[sudo] password for burtonr:
$

@dereisele could you share a microk8s inspect tarball?

 Is there an easy way to share the tarball with you and without anybody getting the information?

Is there an easy way to share the tarball with you and without anybody getting the information?

@blicknix you can find us in #microk8s on the Kubernetes slack. I am kjackal there, ping me.

Hi could you please try this.

Edit /etc/modules and add in there a new line: br_netfilter . This will load br_netfilter at boot time.
sudo microk8s stop to stop MicroK8s services
Edit /var/snap/microk8s/current/args/kube-proxy and remove the --proxy-mode completely.
sudo modprobe br_netfilter to load the br_netfilter if not already loaded.
sudo microk8s start to start MicroK8s services

It looks like this works! 🎉

Hi could you please try this.

Edit /etc/modules and add in there a new line: br_netfilter . This will load br_netfilter at boot time.
sudo microk8s stop to stop MicroK8s services
Edit /var/snap/microk8s/current/args/kube-proxy and remove the --proxy-mode completely.
sudo modprobe br_netfilter to load the br_netfilter if not already loaded.
sudo microk8s start to start MicroK8s services

It looks like this works! 🎉

Hi could you please try this.
1. Edit `/etc/modules` and add in there a new line: `br_netfilter` . This will load `br_netfilter` at boot time.

2. `sudo microk8s stop` to stop MicroK8s services

3. Edit `/var/snap/microk8s/current/args/kube-proxy` and remove the `--proxy-mode` completely.

4. `sudo modprobe br_netfilter` to load the `br_netfilter` if not already loaded.

5. `sudo microk8s start` to start MicroK8s services

This worked for me, too. Thank you very much!  🎉

This worked for me as well. Thank you @ktsakalozos!
Would  it be possible to explain what happened, and why br_netfilter and removing the proxy was the fix? I only ask to satisfy my own curiosity. Thanks again

Yesterday I was having a hard time with a new install and came across this issue. I can confirm that this is also working for me too.
Thanks @ktsakalozos !

I don't see any --proxy-mode under /var/snap/microk8s/current/args/kube-proxy using MicroK8s v1.23.5
# Content of /var/snap/microk8s/current/args/kube-proxy
--kubeconfig=${SNAP_DATA}/credentials/proxy.config
--cluster-cidr=<IP_ADDRESS>/16
--healthz-bind-address=<IP_ADDRESS>
--profiling=false

Hi could you please try this.

Edit /etc/modules and add in there a new line: br_netfilter . This will load br_netfilter at boot time.
sudo microk8s stop to stop MicroK8s services
Edit /var/snap/microk8s/current/args/kube-proxy and remove the --proxy-mode completely.
sudo modprobe br_netfilter to load the br_netfilter if not already loaded.
sudo microk8s start to start MicroK8s services

Would it be possible to explain what happened, and why br_netfilter and removing the proxy was the fix? I only ask to satisfy my own curiosity.

The CNI used by default in MicroK8s is calico. Calico works best with the br_netfilter kernel module loaded. When MicroK8s starts it tries to load the br_netfilter module, if it fails it sets the proxy-mode to userspace. Userspace routing means that the routing is taken care in userspace instead of via iptable rules. This proxy-mode is the oldest mode and is kept for  compatibility reasons. The issue you are seeing is that both MicroK8s fails to load the kernel module and calico fails to play well with the userspace routing. Reproducing this issue is not straight forward. I see it happening under certain conditions on Ubuntu 21.10 but not on any of the 18.04, 20.04, 22.04. Maybe some combination of libraries is at fault here that I only happen to find in 21.10.
In any case, we will be shipping a patch in the following days for this issue. We would appreciate if you could verify that the edge channel of the track you are using works for you. You can test this by doing a fresh install or refreshing to the respective channel, eg assuming you are on the 1.23 track you can do sudo snap refresh microk8s --channel=1.23/edge. Thank you and apologies any the trouble we may have caused.

This just resolved the issue where I was seeing it on Fedora 36 and saved my cluster. Thank you!

For a bit of extra context, we are targeting 1.21/stable

do these changes (#3085 (comment)) made to /var/snap/microk8s/current/args/kube-proxy persist after a microk8s auto update?

Yes these changes will persist through updates.

do these changes (#3085 (comment)) made to /var/snap/microk8s/current/args/kube-proxy persist after a microk8s auto update?

Yes these changes will persist through snap refreshes.

Awesome, thank you!

This is happening to me in 1.24, ubuntu 22.04 on raspberry pi

Yes, error reintroduced. Added br_netfilter as well to the /etc/modules file and restarted entire system.
MicroK8s v1.26.0 revision 4390 on a NUC 16GB RAM, Intel Celeron 5095, 1TB SSD
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.1 LTS
Release:        22.04
Codename:       jammy
Reproduce:

Install accordingly: https://microk8s.io/docs/getting-started
microk8s kubectl get all -A

NAMESPACE     NAME                                           READY   STATUS             RESTARTS      AGE
kube-system   pod/calico-node-gpj5s                          1/1     Running            3 (32s ago)   57m
kube-system   pod/calico-kube-controllers-7874bcdbb4-5ftc2   0/1     CrashLoopBackOff   14 (9s ago)   57m

NAMESPACE   NAME                 TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)   AGE
default     service/kubernetes   ClusterIP   <IP_ADDRESS>   <none>        443/TCP   57m

NAMESPACE     NAME                         DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR            AGE
kube-system   daemonset.apps/calico-node   1         1         1       1            1           kubernetes.io/os=linux   57m

NAMESPACE     NAME                                      READY   UP-TO-DATE   AVAILABLE   AGE
kube-system   deployment.apps/calico-kube-controllers   1/1     1            1           57m

NAMESPACE     NAME                                                 DESIRED   CURRENT   READY   AGE
kube-system   replicaset.apps/calico-kube-controllers-79568db7f8   0         0         0       57m
kube-system   replicaset.apps/calico-kube-controllers-7874bcdbb4   1         1         1       57m

kc logs pod/calico-kube-controllers-7874bcdbb4-5ftc2 -n kube-system -f
2022-12-27 22:40:30.430 [WARNING][1] runconfig.go 162: unable to get KubeControllersConfiguration(default) error=Get "https://<IP_ADDRESS>:443/apis/crd.projectcalico.org/v1/kubecontrollersconfigurations/default": dial tcp <IP_ADDRESS>:443: connect: no route to host
E1227 22:40:30.430453       1 reflector.go:138] pkg/mod/k8s.io/client-go@v0.23.3/tools/cache/reflector.go:167: Failed to watch *v1.Pod: failed to list *v1.Pod: Get "https://<IP_ADDRESS>:443/api/v1/pods?resourceVersion=3624": dial tcp <IP_ADDRESS>:443: connect: no route to host
E1227 22:40:30.430461       1 reflector.go:138] pkg/mod/k8s.io/client-go@v0.23.3/tools/cache/reflector.go:167: Failed to watch *v1.Node: failed to list *v1.Node: Get "https://<IP_ADDRESS>:443/api/v1/nodes?resourceVersion=3520": dial tcp <IP_ADDRESS>:443: connect: no route to host
2022-12-27 22:40:34.242 [ERROR][1] client.go 272: Error getting cluster information config ClusterInformation="default" error=Get "https://<IP_ADDRESS>:443/apis/crd.projectcalico.org/v1/clusterinformations/default": context deadline exceeded
2022-12-27 22:40:34.242 [ERROR][1] main.go 242: Failed to verify datastore error=Get "https://<IP_ADDRESS>:443/apis/crd.projectcalico.org/v1/clusterinformations/default": context deadline exceeded
2022-12-27 22:40:34.498 [ERROR][1] main.go 277: Received bad status code from apiserver error=Get "https://<IP_ADDRESS>:443/healthz?timeout=20s": dial tcp <IP_ADDRESS>:443: connect: no route to host status=0
2022-12-27 22:40:34.498 [WARNING][1] runconfig.go 162: unable to get KubeControllersConfiguration(default) error=Get "https://<IP_ADDRESS>:443/apis/crd.projectcalico.org/v1/kubecontrollersconfigurations/default": dial tcp <IP_ADDRESS>:443: connect: no route to host
W1227 22:40:34.498077       1 reflector.go:324] pkg/mod/k8s.io/client-go@v0.23.3/tools/cache/reflector.go:167: failed to list *v1.Pod: Get "https://<IP_ADDRESS>:443/api/v1/pods?resourceVersion=3624": dial tcp <IP_ADDRESS>:443: connect: no route to host
E1227 22:40:34.498257       1 reflector.go:138] pkg/mod/k8s.io/client-go@v0.23.3/tools/cache/reflector.go:167: Failed to watch *v1.Pod: failed to list *v1.Pod: Get "https://<IP_ADDRESS>:443/api/v1/pods?resourceVersion=3624": dial tcp <IP_ADDRESS>:443: connect: no route to host

Following the steps here:
Rpi Cluster using microk8s
To get simillar error:
raveesh@rpifour:~$ sudo microk8s.kubectl get node
E0121 17:12:01.856814  184356 memcache.go:265] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": net/http: TLS handshake timeout
E0121 17:12:39.979944  184356 memcache.go:265] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": net/http: TLS handshake timeout
E0121 17:13:26.410135  184356 memcache.go:265] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": context deadline exceeded
E0121 17:14:17.193100  184356 memcache.go:265] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
I0121 17:14:32.681800  184356 request.go:697] Waited for 1.720689523s due to client-side throttling, not priority and fairness, request: GET:https://<IP_ADDRESS>:16443/api?timeout=32s
E0121 17:15:17.290230  184356 memcache.go:265] couldn't get current server API group list: Get "https://<IP_ADDRESS>:16443/api?timeout=32s": context deadline exceeded
Unable to connect to the server: context deadline exceeded

What could be the reason...


Set up the wiki

What is your feature?
Add a wiki to the repo
Why is this feature needed?
Helps keep track of discussion, contributors and updates to the application
Who is your feature for?
For both the developers and anyone curious about the development process of this application
Additional context
Easy way to help keep everyone updated on the dev process

Wiki has been created with a meeting notes, list of contributors and patches pages


fix: upgrade dependency flow-bin from 0.81.0 to 0.98.0

Issue: #103
Description of changes:
Upgrades flow-bin dependency from version 0.81.0 to 0.107.0, fixing type-errors caused by changes in flow-bin version 0.95.0.
Also does a small update of the flow-typed for jest since a version in between 0.95.0 and 0.107.0 started noticing errors there.

Any updates on this?  This would remove a lot of the warnings I'm getting.

Did another small update to get it to<EMAIL_ADDRESS>open to extra feedback if more changes are wanted.


Minimap with XML highlighter

Minimap scrolling with XML highlighter is bouncing strangely. Similar problem with the column selection mode. Also with large (> 100MB) XML file the scolling jumps to the start when scrolled to the end.
Note to self: check line 8415 TODO.

This is not a component issue. Moved to EditBone issues.


Only display unapproved verification requests on the provider portal landing page

Addresses feedback from https://trello.com/c/wpIzRRsg/165-edit-provider-portal-copy-to-make-the-difference-between-requests-and-providers-clearer.
Scope:

exclude approved requests from rendering on the provider portal home page,
add a test to verify the new logic

Thanks for your feedback @mrchrisadams, I addressed it in https://github.com/thegreenwebfoundation/admin-portal/pull/463/commits/04ae6539e7eed1da6e28bdb26e2b730558538756


fix slider and navbar after sidebar merge

solved with https://github.com/TheSecretOrganization/ft_transcendence/pull/201§§


Add multi host pjit + GDA tests

Added multi host pjit + GDA tests to the existing test setup of 2 nodes and 1 process per GPU

I don't think there's any need to repeat the tests here. Why not just subclass the original pjit tests and run them in Slurm?

Also add a TODO to remove the GDA tests and move them to Array.

addressed the concerns

fixed lint and doc build issues now

Done with making changes as requested

Few minor comments, after that LGTM

ping after fixing nits


Bundle option does not return keys uploaded today

There are two options to retrieve keys from the server: 1) the keys uploaded on a particular day or 2) the entire bundle of keys currently available. There is an inconsistency between the two options. Using the first option, it is possible to download the keys uploaded so far today. However, the bundle from the second option does not contain the keys uploaded so far today.
To illustrate, these are the time windows from the two export.bin's with the downloaded keys as of today (2020-10-16 UTC):
First option:      2020-10-16 00:00:00 UTC - 2020-10-17 00:00:00 UTC
Second option: 2020-10-01 00:00:00 UTC - 2020-10-16 00:00:00 UTC
My understanding is that the problem is with the second option since the keys uploaded today should be retrievable today. Either these keys were used yesterday (or earlier) or they were used earlier today but a new key was set when they were retrieved by the app for uploading.
There's a similar inconsistency at the beginning of the bundle period, just reversed.
The fix is to change
endDate := timemath.CurrentDateNumber() - 1
to
endDate := timemath.CurrentDateNumber()
in covid-alert-server/pkg/server/retrieve.go, line 84.
Also, the time window allowed by the two options is too large, even after the fix is applied. In the example above, the time window for the bundle would start on 2020-10-02 after the fix is applied but it really should start only on 2020-10-03 (and end on 2020-10-17). That said, this is less of a problem since the keys from 2020-10-02 (or earlier) are already gone in the database.

Thanks for the issue , I'll take a look when I get the chance to see what impact this could potentially have on the mobile app.

Hi @uhengart, thank you for your interest in the server and app!
This is currently by design.
The 14 day back bundle is only downloaded once by the app when the app is installed and then ideally never again. The initial implementation of the app saw a mechanism where you would iterate through the past 14 days and download a bundle for each day. The problem was that Google and Apple have rate limited API calls to the underlying EN framework (one is at 15 calls per day, the other at 21). So what would happen is that you would install the app, download each day bundle individually, and exhaust your API call limit after the first install. Any subsequent calls to the EN framework would error out. The solution here was to create one back bundle to force only one API call for the previous keys, allowing you to make subsequent calls for current day keys.
To your point about the date logic - early in the development we wanted to retain the ability to limit downloads to back days only and also avoid missing any keys due to off by one errors. We should at some point refactor the code there.
Let me know if you have any other questions!

Makes sense. Thanks for the explanation!