Local debug with timer trigger on Python V2 Function fails to start listener

Investigative information
Please provide the following:

Timestamp: 10/15/2018 20:44:40
Function App name: scom_alerting_test_proj
Function name(s) (as appropriate): scom_alert_verifier

Repro steps
Provide the steps required to reproduce the problem:

Follow steps here https://github.com/Azure/azure-functions-python-worker/wiki/Create-your-first-Python-function to create a new Python function
Create a new function with 'func new' and choose Timer Trigger
Run 'func host start' to start host for new function

Expected behavior
Function host initializes and starts a listener for new timer trigger function, which can be manually triggered at http://localhost:7071/admin/functions/scom_alerting_verifier
Actual behavior
Function listener for function with timer trigger fails to start with 'Microsoft.WindowsAzure.Storage: Settings must be of the form "name=value"', then appears to start after a retry, but does not appear to be executed after a manual trigger URL for debugging. Functions with other trigger types start correctly.
[10/15/2018 20:44:40] Initializing Host.
[10/15/2018 20:44:40] Host initialization: ConsecutiveErrors=0, StartupCount=1
[10/15/2018 20:44:40] Starting JobHost
[10/15/2018 20:44:40] Starting Host (HostId=, InstanceId=1eb861f2-397e-4b32-b2c7-0527bb8c4e0f, Version=2.0.12115.0, ProcessId=20944, AppDomainId=1, Debug=False, FunctionsExtensionVersion=)
[10/15/2018 20:44:40] Starting language worker process:python  "C:\Users<user>\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin\workers\python\worker.py" --host <IP_ADDRESS> --port 59036 --workerId 8a9ee8f1-f0da-416d-b337-e436e2c829ec --requestId 63747daf-3427-451c-ab5b-01c69bcdcd11 --grpcMaxMessageLength 134217728
[10/15/2018 20:44:40] python process with Id=460 started
[10/15/2018 20:44:40] Generating 2 job function(s)
[10/15/2018 20:44:40] Found the following functions:
[10/15/2018 20:44:40] Host.Functions.scom_alert_verifier
[10/15/2018 20:44:40] Host.Functions.scom_subscriber_queue
[10/15/2018 20:44:40]
[10/15/2018 20:44:40] Host initialized (316ms)
[10/15/2018 20:44:40] The listener for function 'Functions.scom_alert_verifier' was unable to start.
[10/15/2018 20:44:40] The listener for function 'Functions.scom_alert_verifier' was unable to start. Microsoft.WindowsAzure.Storage: Settings must be of the form "name=value".
[10/15/2018 20:44:40] Host started (395ms)
[10/15/2018 20:44:40] Job host started
Hosting environment: Production
Content root path: C:\Users<user>\AzureFunctions\scom_alerting_test_proj
Now listening on: http://<IP_ADDRESS>:7071
Application started. Press Ctrl+C to shut down.
Listening on http://<IP_ADDRESS>:7071/
Hit CTRL-C to exit...
launch.json for VSCode configured.
[10/15/2018 20:44:41] starting timer function
[10/15/2018 20:44:41] starting timer function
[10/15/2018 20:44:42] Retrying to start listener for function 'Functions.scom_alert_verifier' (Attempt 1)
[10/15/2018 20:44:42] Listener successfully started for function 'Functions.scom_alert_verifier' after 1 retries.
Known workarounds
Related information
Provide any related information
https://github.com/Azure/azure-functions-python-worker/wiki/Create-your-first-Python-function
Environment:
Windows 10<PHONE_NUMBER>
Node 10.12.0
Python 3.6.4
Azure Function Tools 2.0.3
.NET Core 2.1.403

@maiqbal11 can you please investigate this?

Will do!

Hi @mbrat2005, could you provide your function.json as well as the code you are using for the timer trigger? Thanks!

Hi @maiqbal11,
I'm not modifying the function.json or init.py files at all from what is
created by 'func new' with a Timer trigger.
Here is function.json:
{
"scriptFile": "init.py",
"bindings": [
{
"name": "mytimer",
"type": "timerTrigger",
"direction": "in",
"schedule": "0 */5 * * * *"
}
]
}
and init.py:
import datetime
import logging
import azure.functions as func
def main(mytimer: func.TimerRequest) -> None:
utc_timestamp = datetime.datetime.utcnow().replace(
tzinfo=datetime.timezone.utc).isoformat()
if mytimer.past_due:
logging.info('The timer is past due!')
logging.info('Python timer trigger function ran at %s', utc_timestamp)
Below is a screenshot of the steps to reproduce:
[image: image.png]
Thanks!
On Mon, Oct 29, 2018 at 4:06 PM Maheer Iqbal<EMAIL_ADDRESS>wrote:

Hi @mbrat2005 https://github.com/mbrat2005, could you provide your
function.json as well as the code you are using for the timer trigger?
Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Azure/azure-functions-python-worker/issues/224#issuecomment-434113457,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AYNvWKMDQ34IsHAhnWPlSiYShHi0YRFEks5up4oLgaJpZM4XdJCZ
.

HI @mbrat2005, sorry for the delay in getting to this. This is definitely some bug on our end. To put into concrete terms what the issue is, the {AzureWebJobsStorage} connection string entry in the local.settings.json is somehow mismatched in its format:
{
  "IsEncrypted": false,
  "Values": {
    "FUNCTIONS_WORKER_RUNTIME": "python",
    "AzureWebJobsStorage": "{AzureWebJobsStorage}"
  }
}

When I specify an actual connection string with the correct format, I am able to see the timer trigger running correctly without needing a manual trigger. The correct format needs to specify "name=value" semi-colon separated pairs that combine to form a valid connection string. Obviously, you shouldn't have to specify a connection string just to run a timer trigger. I'll dig some more into this and post here with updates.

Closing as this is currently  part of the WebJobs SDK design. Please feel free to re-open/comment if you have concerns.


"Error: listen EADDRINUSE" for Node v20.13.0 and above

After setting up the project on a new machine (MPro M3 Max) I noticed that the frontend project cannot be run on Node version v20.13.0 and above. I had installed the latest LTS version of Node, v20.15.1. But when running yarn dev gave me the following error:
Error: listen EADDRINUSE: address already in use <IP_ADDRESS>:63237
    at Http2SecureServer.setupListenHandle [as _listen2] (node:net:1898:16)
    at listenInCluster (node:net:1946:12)
    at doListen (node:net:2116:7)
    at process.processTicksAndRejections (node:internal/process/task_queues:83:21) {
  code: 'EADDRINUSE',
  errno: -48,
  syscall: 'listen',
  address: '<IP_ADDRESS>',
  port: 63237
}

It took me a while to discover the issue, but eventually I ended up downgrading Node to match my previous machine and then it all worked as expected. I did some testing and it seems that the error appears from v20.13.0 and above

from what I make of the issue, it seems to be related to https://github.com/nodejs/node/issues/53204
I'll investigate further, in the meantime let's use at most 20.12.2

@timo-peakfijn that should be better now (tested on v22.7.0)


How to perform navigation actions from 'outside of a React component'

Moved from https://github.com/react-navigation/react-navigation/issues/1439

PR: #85

yay thank you @vonovak


Migrate to web_socket_channel

Describe the purpose of the pull request.
Breaking changes

This breaks the constructor signature and some public fields of the SocketClient class

Fixes / Enhancements

Migrated dependencies to web_socket_channel as described on #817

wth why did this close

F, ok – @renancaraujo sorry about that – I rebased and added some fixes like using broadcast stream, but then accidentally force pushed beta instead of my feature branch. That automatically closed the PR, because it is now empty. Now I can't push the actual changes to your fork, because I only  have push permissions when there's an open PR 🤦
I re-opened with the rebase+fixes in #830 – sorry again

Lol dont worry, I've commited the same mistake several times on my repos. I am glad I could help somehow.


Inconsistent related model values inside Events when using Eager loading by default

Laravel Version: 8.0.0
PHP Version: ^7.2.5
Database Driver & Version: psql, version unknown

Description:
When using Eloquent events and automatic (default) eager loading the relationships in the events are not reflecting the changes. I am aware this is maybe a vague description, so let's use an example: I have a one-to-many relationship: each Invoice has 1..n Line Items. When a Line Item is deleted/created/edited (note the past tense, the events used are the ones after the event completion, eg. deleted, saved...) the Invoice should have its values recalculated.
If default eager loading is not used, the recalculation works absolutely fine. If default eager loading via protected $when is used, however (eager load the Invoice Line Items automatically), the recalculation is suddenly using the old Line Items values, therefore the Invoice values are always incorrectly recalculated.
My guess is that this is somewhat justified by the logic of eager loading under the hood, so maybe just a mention in the eager loading documentation with an exclamation mark would be enough for the developers, unfortunately, for me, it caused quite the significant bug (as you would imagine with invoices) because I expected consistent behaviour from the events with or without eager loading.
Steps To Reproduce:

Have a one-to-many relationship
Set default eager loading via protected $when trait in the Model
Create some event logic for the edited item, which manipulates the related item in the booted function after delete or after save
Log the model and related record values from the event

Thanks for the cooperation, will gladly add a real code example if needed :)

Laravel 8 doesn't run on PHP 7.2 so I don't think this is a valid bug report.
Can you first please try one of the support channels below? If you can actually identify this as a bug, feel free to report back and I'll gladly help you out and re-open this issue.

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

Thanks

The composer.json has a requirement for ^7.2.5 (notice the arrow), the issue was on PHP 7.3.19, but I'll try the other channels I guess...
Thanks anyway.


Update README.md based on changes in EOS-16512

@mssawant @knekrasov Please have a look

@mssawant @knekrasov Please have a look

Please reword your commit and resolve DCO issue.

Please reword your commit and resolve DCO issue.

Please reword your commit and resolve DCO issue.

@knekrasov Done

Please reword your commit and resolve DCO issue.

@knekrasov Done

Suggestion for the commit message
Problem:  some sections in RFC 20 are incomplete

Solution: add more details to the sections describing implementation details of post_install and init commands.

(Problem line is the commit header, Solution (and probably some more context) go into the commit message)
I know that for this little change this comment may sound like nitpicking but this is a general rule how the commits should look like in Hare project.

Suggestion for the commit message
Problem:  some sections in RFC 20 are incomplete

Solution: add more details to the sections describing implementation details of post_install and init commands.

(Problem line is the commit header, Solution (and probably some more context) go into the commit message)
I know that for this little change this comment may sound like nitpicking but this is a general rule how the commits should look like in Hare project.

@knekrasov @mssawant  Please have a look


OnSelectionChange event

Summary
Expose a selection change event
eg. onSelectionChange={(min, max)} => ...}  so we can sync up with controls like date pickers.

bump


[1.1.x] Stop accept() when we reach MAX_RECEIVER_CONNECTIONS | Add DESTINATIONS_POOL_REPLICAS | client: deal correctly with cases where destinations are down | client: fix USE_RATIO_RESET with DESTINATION_POO

Backports the following commits to 1.1.x:

Stop accept() when we reach MAX_RECEIVER_CONNECTIONS (#800)
Add DESTINATIONS_POOL_REPLICAS (#801)
client: deal correctly with cases where destinations are down (#801)
client: fix USE_RATIO_RESET with DESTINATION_POOL_REPLICAS (#801)
Add a real random resolver for DESTINATIONS_POOL_REPLICAS (#801)
client: log errors in all deferred (#801)
routers: do not fail if there are 0 nodes (#801)
resolver: lint (#801)
cabon.conf.example: fix typo (#801)
Open stanza and 3.x compatibility (#802)
routers: return instead of StopIteration() (#801)

Backport of latest PRs to 1.1.x

Codecov Report

Merging #807 into 1.1.x will decrease coverage by 0.12%.
The diff coverage is 36.36%.

@@            Coverage Diff            @@
##           1.1.x     #807      +/-   ##
=========================================
- Coverage   49.8%   49.67%   -0.13%
=========================================
  Files         36       37       +1
  Lines       3351     3428      +77
  Branches     477      493      +16
=========================================
+ Hits        1669     1703      +34
- Misses      1575     1616      +41
- Partials     107      109       +2

Impacted Files
Coverage Δ

lib/carbon/conf.py
40.72% <ø> (ø)
:arrow_up:

lib/carbon/instrumentation.py
28.36% <0%> (ø)
:arrow_up:

lib/carbon/routers.py
68.75% <100%> (+1.02%)
:arrow_up:

lib/carbon/state.py
100% <100%> (ø)
:arrow_up:

lib/carbon/protocols.py
73.33% <19.04%> (-4.83%)
:arrow_down:

lib/carbon/client.py
55.31% <26.19%> (-1.72%)
:arrow_down:

lib/carbon/resolver.py
56.25% <56.25%> (ø)

lib/carbon/hashing.py
90.52% <0%> (+2.1%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 5363f55...f143cfe. Read the comment docs.


Panel shows up on browsers and Explorer windows with the title "Path of Exile"

You should be checking the top window's class name as well as title to make sure it's the actual PoE window.
GetClassName and check for "POEWindowClass".

Thanks for the reply, we will try to fix it as soon as possible.


Release 0.4.0

[FEATURE] Add support for HTTP POST body content #123

Signed-off-by: SuperQ<EMAIL_ADDRESS>

@rustycl0ck Thanks! I pushed the tag. The build should pop out of CI in a bit.


[circleci] fix yaml config.

Fixes a couple miscellaneous CircleCI issues.

It's already green on travis, circle has some other issues I still need to fix. Merging. Thanks!


Custom Picture

How to customize the picture, how to set the picture to have a selected state?

I have no idea what you are asking. Can you elaborate?

@sindresorhus lemme confirm something with him using his native language.
@Qinzhao 您是就「工具列的页签图示」也想定义一个「在选中之后显示的样子」以与「选中之前的样子」区分开吗？
(Are you trying to use different icon files for one tab page differentiating its "active tab" state and "non-active tab" state?)


(URGENT) Ribose PDF: "All right reserved" should be preceded with a period

"{year} {publisher}. All rights reserved"

@ronaldtse Ribose xslt updated.


BLD: change SCIPY_USE_PYTHRAN default to 1

This ensures we get more people to test with it, smoking out possible build issues.
Cc @serge-sans-paille
EDIT: I checked that the scipy-dev:latest Dockerfile already has pythran installed.

Ok, I'm going to merge this because the only CI failure is Appveyor, which I've now disabled in a separate PR with removal of config files + I also purged the webhook for Appveyor from our repo (see reasons above).
Thanks Ralf

Ok, I'm going to merge this because the only CI failure is Appveyor, which I've now disabled in a separate PR with removal of config files + I also purged the webhook for Appveyor from our repo (see reasons above).

Great, thanks!


#5-landing page feature - Iwona

Naming Rules
Name your PR like this: ISSUENUMBER-TITLE-YOURNAME
Description

Related to
Fixes #5
Checklist:

[x ] My code follows the style guidelines of this project
[x ] I have carefully reviewed my own code
[x ] I have commented my code
[x] I have updated any documentation

merged Iwona's pull request


Update method for routes

Enhancement
Just as the create and delete, add an update method for routes. It could be useful, instead of deleting and re-creating a route to update it.
Also, as suggested in https://github.com/spring-cloud/spring-cloud-gateway/issues/1002#issuecomment-482016780, I was wondering if there already was a possibility to reload static routes dynamically? If no, it could be an enhancement so we can perform requests on pre-configured routes.

You can do this if the routes are externalized in a config server

When you update routes in your externalized config you then need to refresh them in the Gateway either by calling /refresh or using something like webhooks and Spring Cloud Bus.


Allow pure statements that contain early returns

To support the usage of try in pure contexts, this PR changes the statement constraint checking to now allow pure statements if they contain any early returns.

@ayazhafiz thanks for the approval! I think that this will improve the state of Roc with the currently very simple try implementation even though it doesn't give very good type errors yet. I am now working on improving the try implementation to be a proper keyword instead of a desugaring, and will try to improve the behavior of this feature once that is done. If that sounds good to you, please consider unblocking again with another approval (I had to remove TypedHole as it was removed in a different PR).

All tests passed locally with me with cargo test --release, so this should pass CI.


Added Algolia Docsearch to docs website

Changes

Added Algolia Docsearch to the /docs pages of the documentation website.
The hosted website was indexed automatically by the crawler. I did not change the default parameters set in Algolia. But with time, I hope to fine-tune those parameters for better search results.

Old screenshot
[Video31.webm](https://github.com/iTwin/iTwinUI/assets/45748283/2c5ae2a1-3aa0-4e13-a611-7b18424b5eb8)

New screenshot:
Video33.webm
Testing

I tested it with a few simple queries. Later on, I hope to try more complex search queries and also try to see what search queries users are searching for to improve the results for those types of queries.
Docs

Added an Algolia search button to Header.astro

in general, it looks good apart. few minor comments:

i would like to make sure the mobile layout looks good.
instead of linking the algolia js/css from a cdn, we can self-host it
can we use a custom search button that opens the algolia dialog? the algolia search button doesn't fit the look&feel.
can we make the colors inside the dialog more accessible?

i would like to make sure the mobile layout looks good.

Here is how it looks on smaller screen widths:
Video32.webm

instead of linking the algolia js/css from a cdn, we can self-host it

I changed it to use yarn packages instead of the CDN url

can we use a custom search button that opens the algolia dialog? the algolia search button doesn't fit the look&feel.

I was thinking the default button might seem more intuitive for some users since they might used the default button on other doc websites that use Algolia DocSearch too. But I can change it if you feel so.

can we make the colors inside the dialog more accessible?

I changed the default Algolia colors to use the colors in _global.astro. (https://github.com/iTwin/iTwinUI/pull/1365/files#diff-f58c340d3e32a221844059fe1b76fc412a6668e448c2b16b3b93e93e228907f1R219-R225). Also, is there any alternative to using !important? If so, I can replace the !important with that.

i'm ok with leaving the search button styling unchanged in the initial PR but i would like to change it at some point.

Great, then I will focus on some other PRs and come back to the button styling a little later.

also, could you target dev branch instead of main?

Sounds good, changed the target branch to dev

One more thing i noticed the search results always go to the prod url. Can we make the urls use the current context? e.g. localhost vs dev url vs prod url

Cross posting Greta's comment from https://github.com/iTwin/iTwinUI/pull/1414#pullrequestreview-1534753758:

I have my OS in light mode so Algolia search button is light (probably does not belong in this PR but adding it anyways)

One more thing i noticed the search results always go to the prod url. Can we make the urls use the current context? e.g. localhost vs dev url vs prod url

I added the transformItems prop to remove the base url. (https://github.com/iTwin/iTwinUI/pull/1365/commits/3236957e9355b9a2af749766383d251bab3e0a23)

Cross posting Greta's comment from #1414 (review):

I have my OS in light mode so Algolia search button is light (probably does not belong in this PR but adding it anyways)

I fixed the styling issues so that it displays correctly when prefers-color-scheme is light and also when it is dark. (https://github.com/iTwin/iTwinUI/pull/1365/commits/7c9e00d4fcf30db81dda5b4ef93f71eb51fb6d6c)


Headerless C file specified as source, but not being included in a test

I'm trying to create a set of tests for a UI widget that has, as a dependency, an auto-generated font which is a .c file with no corresponding .h file. (In the UI framework I'm using, the auto generated headerless font source is made available to other source files using extern, e.g. extern const lv_font_t font_switzer_35_semibold;.
I've set up a yml file for the tests so that the .c font file (font_switzer_30_regular.c) is explicitly listed as one of the source files, e.g:
---
:paths:
  :test:
    - +:ui/src/widgets/scale/test/**
  :source:
      - ui/src/widgets/scale/ui_scale.c
      - ui/fonts/font_switzer_30_regular.c  <-- font file specified.
      ...
  :support:
    - test/esp_log
  :include:
    - ui/src/widgets/scale/include
    ...
...

...however when I run the test via ceedling test:ui_scale, I get "undefined symbol" errors corresponding to the content of the font .c file, and when I examine the command that the shell executed to build/run the test, its clear that no object file is being created for the font, i.e. no font_switzer_30_regular.o.
Is there a way, in ceedling, to specify that font_switzer_30_regular.c must be built, even though there is no corresponding header for this file included from the test source code?

First, when specifying files instead of paths, you want to switch to the :files section instead of the :paths section:

Thanks @mvandervoord!

If you want a file to get used in a test, you can include it in your test_ui_scale.c file using #include directly or (more tidily) using TEST_SOURCE_FILE("font_switzer_30_regular.c"). This latter option assumes you're using the pre-release of 1.0 which is soon to be released.

My team is still on ceedling-0.31.1... If I use the first option - #includeing the font .c file directly - I run into a wrinkle I neglected to describe earlier, which is that (because of the way font .c files are auto-generated), each font file has some internal structure that is identical to the internal structure of other font files.
More specifically, the UI widget under test actually has three fonts, and if I include the three corresponding .c files, e.g.
#include "font_switzer_30_medium.c"
#include "font_switzer_30_medium.c"
#include "font_switzer_30_semibold.c"

... I run into lots of error: redefinition of 'glyph_bitmap' errors (where glyph_bitmap is one of the internal parts of an autogenerated font file...).
Does this wrinkle essentially mean I will need to create  "wrapper" .h/.c files for each font, including the actual .c font files from the .c wrapper file, and then include the wrapper .h files from my test file (so Ceedling will find and compile the actual .c font files)?
Is there any cleaner way to handle this, that you can think of?
Thanks again.

By "wrapper", I mean something like the following:
support_font_switzer_20_semibold.h
#include "font_types.h"

#ifndef __SUPPORT_FONT_SWITZER_20_SEMIBOLD__
#define __SUPPORT_FONT_SWITZER_20_SEMIBOLD__

extern const lv_font_t font_switzer_20_semibold;

#endif  // __SUPPORT_FONT_SWITZER_20_SEMIBOLD__

support_font_switzer_20_semibold.c
#include "support_font_switzer_20_semibold.h"

#include "../../../../fonts/font_switzer_20_semibold.c"

Hm. Good question.
Perhaps the simplest solution might be to create a header file for each of your font files which publishes the public interface for it... then you can do this the traditional way just including the headers? Those header files could even exist solely in your test support directory, and I believe it'd work?
Otherwise, I think you're right... you'd have to create some kind of wrapper and/or conditional compilation for these files.

Good to know.
Thanks again!


Update guava to 29.0-jre

Updates com.google.guava:guava from 14.0.1 to 29.0-jre.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.google.guava", artifactId = "guava" } ]

labels: library-update

Codecov Report

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

@@           Coverage Diff           @@
##           master     #137   +/-   ##
=======================================
  Coverage   95.45%   95.45%
=======================================
  Files           5        5
  Lines          22       22
=======================================
  Hits           21       21
  Misses          1        1

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a9cbd7d...18d1400. Read the comment docs.


Round to nearest even floating number feature

Hi!
I'm trying to port some cuda code to sycl using HipSYCL but I have a problem. In this code there is a massive use of function like __fsqrt_rn,__fmul_rnetc. which round a floating point number to nearest floating point even value, and I haven't found anything similar in hipSYCL.
Is there an equivalent way in hipSYCL to enable this rounding feature?
Thank you!

AFAIK in SYCL rte (round to nearest even) is the default rounding mode for floating point values and most math builtins.
Do you have a use case where you think that hipSYCL is not doing the right thing? I'm trying to figure out whether your question is actually a question about the SYCL specification or really a hipSYCL issue.
Of course you can always leverage hipSYCL's backend interoperability mechanisms to call such CUDA intrinsics directly in the CUDA compilation pass.

Nono, I did not find a case where it is done incorrectly. I just wanted to know if this feature was implemented, I didn't know that this was the default behaviour.
Thank you a lot!


Update docstring menu.menus.Menu class

[DOCSTRING]: The css class attribute of Media class needs to change to a dict in order for the css file(s) to load.

Thank you for your contribution.
Can you also change the paths to static files to be relative instead of absolute and to remove /media/ (from Django 1.3 this is no longer needed)?

Sure. Done!


Improved documentation

Proposed Changes
Update documentation on several parts:

To match our Markdown code guidelines

Updated copyright years in preparation of the new release

Updated badges/shields

Added project stage badge
Added Scrutinizer badge
Added latests version on Packagist badge

Related Issues
This PR prepares for a next release as requested in #11

Changes look good. Minor request for change of existing text (see review comments).

@Potherca Updated this PR with the requested changed.


added code to secure tag name and value withoit quotes

This change has been asked by Brian to avoid injection


Add support for AsciiDoc

Fixes #2122
Changes proposed:

[x] Add
[ ] Delete
[ ] Fix
[ ] Prepare

No offence, but I don't like the square version.

No offence, but I don't like the square version.

I wasn't sure which version to pick, if @robertohuertasm do rather prefer the rounded square one, I will make the changes 👍

Hey, I don't really have a preference. I'm ok with the square one, too. We already have similar square icons with plain colors: JavaScript official, TypeScript official...  Whatever you want, I'm ok with it.

@JimiC, it seems that you're the only one with some concerns about this icon. I don't have a strong preference so I don't really care if we made this one or the one with rounded corners available. The thing is that I don't have now access to Illustrator so I can't make the change even if I wanted to.
How do you want to proceed? We merge this in order to deploy v9 and we'll revisit this in the future? or we wait to merge it until we have rounded corners?

No strong opinion. You may proceed.


fix loading linux musl addon Error on alpine linux

node@8 support was dropped by @node-rs/bcrypt, @gevorg could we drop 8.x testing from CI and add 14.x ?


autocert health check fails because of wrong name

Subject of the issue
The Autocert container fails to start when the health check GET returns a certificate with the wrong name.
{"level":"error","msg":"Error loading provisioner: client GET https://autocert-step-certificates.default.svc.cluster.local/health failed: Get \"https://autocert-step-certificates.default.svc.cluster.local/health\": x509: certificate is valid for mypublicdomain.com, not autocert-step-certificates.default.svc.cluster.local","time":"2021-08-20T18:58:40Z"}

Environment

Kubernetes version: K3s 1.21
Cloud provider or hardware configuration: Single node on dedicated 64-bit home server
OS (e.g., from /etc/os-release): Debian 10 / Buster
Kernel (e.g., uname -a): Linux k3s 5.6.0-1-amd64 #1 SMP Debian 5.6.7-1 (2020-04-29) x86_64 GNU/Linux
Install tools: k3s, helm, autocert-1.15.0
Other: NA

Steps to reproduce
Starting with an empty K3s cluster, issue helm install autocert autocert --repo=https://smallstep.github.io/helm-charts/
Expected behaviour
3 pods should start, finishing in Completed or Ready status.
Actual behaviour
Autocert pod status is CrashLoopBackOff, autocert-step-certificates is Pending.
Additional context
Log of steps taken:
[user@laptop]~/step-ca% helm install autocert autocert --repo=https://smallstep.github.io/helm-charts/
NAME: autocert
LAST DEPLOYED: Fri Aug 20 13:57:12 2021
NAMESPACE: default
STATUS: deployed
REVISION: 1
NOTES:
Thanks for installing Autocert.

1. Enable Autocert in your namespaces:
   kubectl label namespace default autocert.step.sm=enabled

2. Check the namespaces where Autocert is enabled:
   kubectl get namespace -L autocert.step.sm

3. Get the PKI and Provisioner secrets running these commands:
   kubectl get -n default -o jsonpath='{.data.password}' secret/autocert-step-certificates-ca-password | base64 --decode
   kubectl get -n default -o jsonpath='{.data.password}' secret/autocert-step-certificates-provisioner-password | base64 --decode

4. Get the CA URL and the root certificate fingerprint running this command:
   kubectl -n default logs job.batch/autocert

5. Delete the configuration job running this command:
   kubectl -n default delete job.batch/autocert

[user@laptop]~/step-ca% helm list
NAME    	NAMESPACE	REVISION	UPDATED                                	STATUS  	CHART          	APP VERSION
autocert	default  	1       	2021-08-20 13:57:12.491955374 -0500 CDT	deployed	autocert-1.15.0	0.15.0

[user@laptop]~/step-ca% kubectl get pods
NAME                           READY   STATUS             RESTARTS   AGE
autocert-step-certificates-0   0/1     Pending            0          94s
autocert-jxn6g                 0/1     Completed          0          96s
autocert-548575c945-drf8m      0/1     CrashLoopBackOff   3          96s
[user@laptop]~/step-ca% kubectl logs autocert-548575c945-drf8m
{"config":{"Address":":4443","Service":"autocert","LogFormat":"json","CaURL":"https://autocert-step-certificates.default.svc.cluster.local","CertLifetime":"24h","Bootstrapper":{"name":"autocert-bootstrapper","image":"cr.step.sm/smallstep/autocert-bootstrapper:0.15.0","resources":{"requests":{"cpu":"10m","memory":"20Mi"}},"volumeMounts":[{"name":"certs","mountPath":"/var/run/autocert.step.sm"}],"imagePullPolicy":"IfNotPresent"},"Renewer":{"name":"autocert-renewer","image":"cr.step.sm/smallstep/autocert-renewer:0.15.0","resources":{"requests":{"cpu":"10m","memory":"20Mi"}},"volumeMounts":[{"name":"certs","mountPath":"/var/run/autocert.step.sm"}],"imagePullPolicy":"IfNotPresent"},"CertsVolume":{"name":"certs","emptyDir":{}},"RestrictCertificatesToNamespace":false,"ClusterDomain":"cluster.local","RootCAPath":"/home/step/certs/root_ca.crt","ProvisionerPasswordPath":"/home/step/password/password"},"level":"info","msg":"Loaded config","time":"2021-08-20T18:58:40Z"}
{"level":"info","msg":"Loaded provisioner configuration","provisionerKid":"","provisionerName":"admin","time":"2021-08-20T18:58:40Z"}
{"level":"error","msg":"Error loading provisioner: client GET https://autocert-step-certificates.default.svc.cluster.local/health failed: Get \"https://autocert-step-certificates.default.svc.cluster.local/health\": x509: certificate is valid for mypublicdomain.com, not autocert-step-certificates.default.svc.cluster.local","time":"2021-08-20T18:58:40Z"}

This issue may be related to a specific config on my network and not in this software. I have a wildcard DNS which seems to be causing the health check URI to resolve improperly.
My solution is to set ndots: 4 in the deployment to force FQDN resolution. An alternative solution would be to add a trailing dot to the health check URI in _helpers.tpl in the second to last line: printf "https://%s-step-certificates.%s.svc.%s." but this may mess with the FQDN in the certificate. The best solution would be to fix my wildcard DNS ;-) .
For anybody with the same issue and wants to update ndots, there's a good writeup here.


Detect and handle reorganizations

Depends on #735

Let me rebase the original PR and apply your changes on top of it. @kirugan


feat: solana verifications

Motivation

Solana verifications enable associating Farcaster accounts with Solana account addresses

Change Summary

Update hub to support addition and removal of Solana account addresses

Merge Checklist
Choose all relevant options below by adding an x now or at any time before submitting for review

[x] PR title adheres to the conventional commits standard
[x] PR has a changeset
[x] PR has been tagged with a change label(s) (i.e. documentation, feature, bugfix, or chore)
[x] PR includes documentation if necessary.
[x] All commits have been signed

Additional Context
If this is a relatively large or complex change, provide more details here that will help reviewers

PR-Codex overview
This PR focuses on adding Solana verification support.
Detailed summary

Added noble-ed25519 package
Renamed signature field to addressVerificationSignature in VerificationAddAddressBody
Updated various files to support Solana verification
Added tests for Solana verification
Made changes to the documentation and lock file

The following files were skipped due to too many changes: packages/core/src/builders.test.ts, packages/core/src/protobufs/typeguards.ts, apps/replicator/src/util.ts, packages/core/src/verifications.ts, packages/hub-web/src/generated/message.ts, packages/hub-nodejs/src/generated/message.ts, packages/core/src/protobufs/generated/message.ts, apps/hubble/src/rpc/test/verificationService.test.ts, packages/core/src/validations.test.ts, packages/core/src/factories.ts, packages/core/src/validations.ts

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

Resolved conflicts and merged in https://github.com/farcasterxyz/hub-monorepo/pull/1668


Security FAQ for those who need ISO27001 or SOC2 compatible Vendors

Describe the feature you'd like to request
Hi Turborepo team!
I was led here by your FAQ (https://turborepo.org/docs/faq) about where to ask when the security section does not answer enough questions.  We have about 20 general security questions that are pretty common to the industry (especially any SaaS products that use Vanta). Where is the appropriate place to ask these questions?

Please send all inquiries through https://vercel.com/security
Thanks!


Accessing VBUS / 5V on Inventor 2040W

Hello,
is there any way to access the VBUS-Pin on the Inventor2040W ?
While using just the PICO, I can access the VBUS Pin to get the 5V Power from the USB.
Is there any chance that this is possible with the Inventor2040W ?
Thank you!

Hi @SebastianChristoph
The best way to get 5V out of the Inventor 2040W is to use one of the power pins from the Servo headers. This will receive power from either USB or the battery connector (whichever is higher).
If you are specifically needing VBUS then the only way to access that is by soldering on top of the Pico W's pad for that pin.
Hope that helps


Less doesn't build on SUSv1; portability fixes

I noticed that SUSv1 lacks any support for vsnprintf(); this breaks compilation.
Additionally SIGWINCH is not POSIX defined, so we should include #ifdef checks around the attempt to handle that signal.

Also, in main.c we have a syntax error if HAVE_VASPRINTF is false.


Create dark and light themes

Create a strategy to have dark and light themes for all the components

Make sure to remove all alt class names on badges and buttons

Closed via #310


Formatting versions

@op not really sure what the right interface is -- you know best. But it strikes me that since the logging functions take formatting, maybe they should follow stdlib practice of having both Name(string) and Namef(string, ...interface{}) variants.
Random reason to lean towards the extra f: lint errors like this:

What about (for example) just introducing Errorf as an alias for Error?  That would enable us to use Errorf to avoid go vet noise without breaking backwards compatibility.

@optimality it looks like an ok short-term solution if @op does not want to create a v2
The main remaining problem would be that some non-f methods such as Error expect a format, while others such as Panic don't, making things somewhat confusing. See: https://github.com/op/go-logging/blob/master/logger.go#L208-L211

@op Have you reached a decision on this?

Sorry, but if go vet reports an error by default with this, I'd prefer to stick to go vet and fork/fix the bug.

Right now I am using this syntax to workaround the problem:
go tool vet -printfuncs=Printf,Sprintf,Fprintf,Logf,Errorf,Fatalf,Warningf,Debugf src/

It would be best if I could get rid of this incomplete and error-prone workaround...

This is fixed now.


OS X cannot run external installed tools

Installed command line tools such as dot cannot be run through Workcraft in OS X.
This applies to the Workcraft.app installation, downloaded from the website.
The error given is:
error=2, No such file or directory```

This seems to be an issue of Workcraft not possessing the system `PATH`.

Some testing reveals that this only occurs when you run Workcraft by double-clicking the icon.
Running the workcraft start-up script from Workcraft.app/Contents/MacOS allows dot to be run correctly.

A workaround:
Add export PATH="/usr/bin:/opt/local/bin" to the Workcraft start up script.
This may not be ideal, as these three are needed specifically for java and dot.

Yet more information revealed from testing.
The default PATH just for Workcraft.app is "/usr/bin", which is the default place for the java executable. This is also the case for every .appin OS X, it doesn't use the PATH defined in  the terminal, unless you start an app from the terminal. Go Apple.
Thus, the start up script can include export PATH="$PATH:/opt/local/bin", which is where I have dot installed.
This whole thing started because I realised that I couldn't run runghc for testing the concepts tool as per #560. So I have also been including /usr/local/bin, for where this is installed.

Installing graphviz for OS X directly from the website installs it in /usr/local/bin, meaning we could probably just include the one extra line in the script:
export PATH="$PATH:/usr/local/bin"
And suggest to users that if dot doesn't work, they install it from their website directly.
runghc will be an issue for now, but this is only used as there are issues with the binary for the concepts tool, which shouldn't be a permanent issue.

Is there a native Graphviz distribution for OSX or did you install it via macports? If installing Graphviz is not straightforward, then we can include a cut-down version (only dot, similar to what we did for Windows).
Another option is to call dot (and maybe ghc) by the absolute pat -- check if /usr/local/bin/dot is present first).

There is a native one you can download on their website and install easily, download, double click, follow instructions. This binary is available from /usr/local/bin.
I initially had a Mac ports version installed which was the issue, and this version was available from /opt/local/bin/dot.
The issue here is that a user could install via either Mac ports (or home brew) or from a website just as easily, for both Haskell and Graphviz, and if we use the absolute path to /usr/bin/local/ for either dot or runghc and a user has the Mac ports version installed Workcraft can't use it.

It looks like Finder (of whatever that GUI thing for file browsing is called), has its own settings for PATH (defined in /etc/paths) and does not respect ~/.bash_profile settings.
The easiest option may be to add several most used path to workcraft script, .e.g:
export PATH=$PATH:/usr/local/bin:/opt/local/bin
If the some of the paths do not exist -- it should not be a problem.

I will add those then and send a PR for workcraft-dist-template.

Test it locally a bit longer -- there is no release till September :)


Allow '..' as an argument to 'pt'

The current version of the isHidden function will tag ".." as a hidden file. I commonly use 'pt ..' to expand the scope of a search.
Please take a look.

Looks good to me. Thanks!
I will release new version that contains this fix.

I have released v2.1.1 that contains this fix.
Thanks.
https://github.com/monochromegane/the_platinum_searcher/releases/tag/v2.1.1

I think this needs to be further extended and the directory pt is called with should never be flagged by isHidden. E.g. pt ~/.dotfiles will not work unless --hidden is used. But then the hidden files inside ~/.dotfiles are also searched which is not always wanted.


App Crash with IReviewManagerInvoker.RequestReviewFlow () Exception (Android)

Hi there,
I'm noticing many crash reports logged in my App Center Issues for Android:
IReviewManagerInvoker.RequestReviewFlow ()
Java.Lang.IncompatibleClassChangeError: no non-static method "Lcom/google/android/play/core/review/c;.requestReviewFlow()Lcom/google/android/play/core/tasks/Task;"

Details:
JniEnvironment+InstanceMethods.GetMethodID (Java.Interop.JniObjectReference type, System.String name, System.String signature)
JNIEnv.GetMethodID (System.IntPtr kls, System.String name, System.String signature)
IReviewManagerInvoker.RequestReviewFlow ()
StoreReviewImplementation.RequestReview (System.Boolean testMode)
ItemDetailPage.OnAppearing ()
AsyncMethodBuilderCore+<>c.<ThrowAsync>b__7_0 (System.Object state)
SyncContext+<>c__DisplayClass2_0.<Post>b__0 ()
Thread+RunnableImplementor.Run ()
IRunnableInvoker.n_Run (System.IntPtr jnienv, System.IntPtr native__this)
(wrapper dynamic-method) Android.Runtime.DynamicMethodNameCounter.102(intptr,intptr)
java.lang.NoSuchMethodError: no non-static method "Lcom/google/android/play/core/review/c;.requestReviewFlow()Lcom/google/android/play/core/tasks/Task;"
mono.android.animation.ValueAnimator_AnimatorUpdateListenerImplementor.n_onAnimationUpdate(Native Method)
mono.android.animation.ValueAnimator_AnimatorUpdateListenerImplementor.onAnimationUpdate()
android.animation.ValueAnimator.animateValue ValueAnimator.java:1346
android.animation.ValueAnimator.animateBasedOnTime ValueAnimator.java:1258
android.animation.ValueAnimator.doAnimationFrame ValueAnimator.java:1306
android.animation.AnimationHandler.doAnimationFrame AnimationHandler.java:146
android.animation.AnimationHandler.-wrap2(AnimationHandler.java)
android.animation.AnimationHandler$1.doFrame AnimationHandler.java:54
android.view.Choreographer$CallbackRecord.run Choreographer.java:957
android.view.Choreographer.doCallbacks Choreographer.java:734
android.view.Choreographer.doFrame Choreographer.java:667
android.view.Choreographer$FrameDisplayEventReceiver.run Choreographer.java:945
android.os.Handler.handleCallback Handler.java:751
android.os.Handler.dispatchMessage Handler.java:95
android.os.Looper.loop Looper.java:154
android.app.ActivityThread.main ActivityThread.java:6776
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run ZygoteInit.java:1520
com.android.internal.os.ZygoteInit.main ZygoteInit.java:1410

Bug
Version Number of Plugin: 3.0.0-beta
Device Tested On: Galaxy S8+, OnePlus 6 , Device, Y9 Prime 2019, and others
XF: <IP_ADDRESS>0
Steps to reproduce the Behavior
I show the dialog by calling the request review
await Plugin.StoreReview.CrossStoreReview.Current.RequestReview(false);
Note that the application language is Arabic.
I don't have a physical device in order try to reproduce it, but I wonder if you could get a hint from the log on what could be the issue.
Thanks,

Whats the Android version on those devices?
Android 7.0?
The error says Java.Lang.IncompatibleClassChangeError: no non-static method "Lcom/google/android/play/core/review/c;.requestReviewFlow()Lcom/google/android/play/core/tasks/Task;" so, it could just not be available

@darrabam Whats the Android version on those devices?
Android 7.0?
The error says Java.Lang.IncompatibleClassChangeError: no non-static method "Lcom/google/android/play/core/review/c;.requestReviewFlow()Lcom/google/android/play/core/tasks/Task;" so, it could just not be available

@saamerm
Android 7, 9 &10
No, I don't proguard for my project.

Could you please share a screenshot of the build settings in you Android project options? @darrabam

Are you sure that's the release project configuration? I don't believe you can publish an app with Shared Mono Runtime enabled

@saamerm sorry, you are right, this is the one:

If you use proguard or r8, you need to have a proguard file for now.
Please follow the instructions in the readme to add a proguard file and publish a build with that.
I highly recommend that you test the In-App Review using "Android Internal App Sharing" before you publish

@darrabam ^

@saamerm thanks for the hint, I'll try that.

Any success @darrabam

@saamerm yep, it worked! at least I got the rating dialog and managed to submit a review with a crash :)
Thank you very much

@darrabam you mean without a crash?


Builiding tensorflow C++ package on a new CPU platform.

System information
It's a cross compiling for tensorflow. The target platform is on Sunway Taihu Lake super computer. The CPU modle is SW26010 but it's hard for me to describe the instruction sets.  I'm building it through a cross compiler which is based on gcc5.3 with modified compiler backend and it runs on a normal x86 linux (I'm using ubuntu 18.04 through docker).  This compiler supports the C++11.
The bazel version is 0.18.0
Describe the problem
During the cross compiling, the boringssl tells me that #error "Unknown target CPU"
Here is the CROSSTOOL for this cross-compiling:CROSSTOOL
Provide the exact sequence of commands / steps that you executed before running into the problem
All configure options are "no" and the last -opt option is "-O2" .
The building commond is bazel build --sandbox_debug --verbose_failures --copt=-O2 --config=monolithic --crosstool_top=//tools/swgcc_compiler:toolchain --cpu=sw26010 //tensorflow:libtensorflow_cc.so
Any other info / logs
In file included from external/boringssl/src/include/openssl/asn1.h:61:0,
from external/boringssl/src/crypto/asn1/a_print.c:57:
external/boringssl/src/include/openssl/base.h:118:2: error: #error "Unknown target CPU"
#error "Unknown target CPU"

I tried to add these three macros, mips, LP64, OPENSSL_NO_ASM, into the CROSSTOOL file, the "unknown processor error" could be avoided but some more error will be encountered.


refactor!: merge mage and dagger directories as catalog

Keeping two different directories makes the project hard to understand and maintain.
This PR merges these two directories into one as a catalog  package
Breaking Change: changes package layout
Depends on #51

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 8.125%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
13

Relevant Lines:
160

💛  - Coveralls


Update color palette accessibility checker

Which page is this about?
Color
What kind of issue is this?
Content/tech issue
Describe your issue
The 3rd-party color palette accessibility checker we link to is no longer live (link throws a 500 error). We need to find an alternative to this, ideally that can replicate the behavior of our previous palette contrast checker. There are many color contrast tools available online but few of them support pre-loading them with a color palette, a feature we need.
Add any additional background info as needed
See the relevant discussion.
Should be updated on the following pages:

Color
Fonts

I loaded our colors into here: https://contrastchecker.com/?swatch_session=1612474035691
@anselmbradford @Scotchester Does the above link suffice?

I loaded our colors into here: https://contrastchecker.com/?swatch_session=1612474035691
@anselmbradford @Scotchester Does the above link suffice?

Unfortunately, I don't think so. It only shows each color on white. But loading every possible color combination at once would be ridiculous. (Also, wow, the sample text is tiny.)

I pulled the relevant comments from the Mattermost chat on this from April 2021. The next step would be to access these options and select the one that best suits our needs.
Options @contolini posted:

some other options as well: https://github.com/oomphinc/colorcube#alternatives-other-great-tools-that-provided-inspiration

Options @Scotchester posted:

Not quite the same, but pretty cool: https://oomphinc.github.io/colorcube/. Can it auto-populate a color scheme? Hmm, maybe not as currently coded. Looks like it just submits via JavaScript without populating URL params.
https://github.com/darekkay/a11y-contrast
Looks like you could slooowly load our palette into the history of https://contrastchecker.com/ and then share that.
https://onefrankguy.github.io/palette-a11y/ could also be good to fork/contribute.
This is clunky, but functionally seems somewhat promising: http://www.daniel-soltis.com/palette-creator/. A different version that might be easier to use: http://www.daniel-soltis.com/contrast/ Only displays the color values in RGB, though, which is annoying.
Not what we're looking for, but very cool: https://stylescratchpad.firebaseapp.com/
Not perfect, but promising: https://accessiblecolors.app/ (GitHub: https://github.com/codewithkyle/accessible-colors)
Not what we're looking for, but very cool: https://stylescratchpad.firebaseapp.com/
And finally, a node package that we could use to power our own custom thing, if we wanted to go down that road: https://github.com/jameelmoses/is-contrast-checker

I didn't see the original tool, but is this the kind of thing we're looking for? @nataliafitzgerald2 @contolini

I didn't see the original tool, but is this the kind of thing we're looking for? @nataliafitzgerald2 @contolini

❗ That looks awesome!!

Cool, thanks @scotchester! (We miss you!!)

Hi @sonnakim
I took a look at the tool and I have some thoughts. This tool does do a lot of what we would want but I wonder whether it provides so much information that the key information that a user would need to make a sound decision about their type would be lost. It is a pretty overwhelming output.
Some of the things I'd be looking for in our visualization:

Contrast ratio for small versus large type (and that this information is easy to locate)
Which combinations pass AA (large vs small type)
A definition of what we consider to be small and large type. WCAG only includes type sizes in points but I think that in the previous tool (or somewhere else) @Scotchester had documented a pixel translation. We'll have to track that down.
A list that is simple and not overwhelming that helps a less fluent user to make type color decisions that are both compliant and on brand.
I don't have a screenshot of the tool that @Scotchester built but I think that everything appeared on the screen at once without the need for horizontal scrolling. Do we have any screen shots of the original tool for reference?

I think it would make sense to simplify the output as much as possible in order to make it most applicable to the work. So I wonder whether a tool that includes only the most realistic combinations would be more helpful.

In the page content within the Design System we include "Fully accessible combinations," "Non-accessible combinations," and "Undesirable combinations." I imagine that as an exercise we could sort all of the combinations into these 3 categories and then decide which information is worth visualizing for the user/most helpful.
Our primary goal is to make type easy to read for our users. So all type color decisions should be made with this in mind.
In the majority of cases of type in our work we stick with white, gray, or black type.

One exception to this is that we use some type colors for interactive elements. We use Pacific for links/buttons, Teal for visited links, Navy for active links/button, Red for destructive links/buttons but in these cases we always use white text on the colored background or colored text on a white background.

It's helpful to show green type on white and white type on green because this is our brand color and users will be interested in whether this is contrast compliant for large and small type.
In general, we don't place type of one color on a background of a different color - even if there is sufficient contrast (for example teal type on a gold background). So it may make sense to not show these types of combinations. This would reduce the number of combinations by a lot.
For instances where we have a colored background, most notably hero graphics, social media graphics, featured content modules, and videos the best practice is to place white type on a dark background or black text on a light background (ensuring that the combinations have the proper contrast ratio).
It is not brand compliant to place green on black or black on green, even when there is sufficient contrast.

Maybe as a first step (MVP) we can use the tool that @sonnakim has populated so that in the near term we don't continue to have a dead link on the Design System page. And, as a next step we can try to develop something that is more specific to our goal of providing users with a tool for selecting type colors that have the proper contrast ratio AND are aligned with our brand guidelines and best practices.

I'm curious if there's a more simplified solution. Personally, I never used the previous tool because I knew the general rule that black text on any of our colors at 20% and white text on any of our 100%+ saturation colors (except gold) is accessible. If I wanted to use a different color or tint I would check that combination individually on the WebAIM tool. It rarely comes up because as Natalia mentions above we don't recommend using colored type on a colored background, or even colored type much at all. Most colored type that we use are embedded in our patterns.
Would it be easier to provide general rules on the design system like this?

During scrum we determined I would move forward with this proposed solution. Below is a mock-up of how I think the Fonts page could be updated to include more simplified guidance around accessible color combinations.
While we are at it, what do we think of changing the title of the page from "Fonts" to "Type"?
@sonnakim @designlanguage @ajbush mind letting me know what you think?
This would follow "Spacing" within the "Guidelines" section of the Fonts page.

@caheberer Nice! I like the simplicity and focus of what you've done here. It might be worth running this by one of the production designers as well to get their thoughts. Just a few small comments:

I like the idea of renaming the page to type — it does seem more appropriate. If you do rename it, I think we should add a redirect from the existing URL, as folks may be linking to this page from elsewhere. I think @brandon-rusk has handled redirects before, so you can let him know if you do rename it. I believe the nav will also have to be updated to link to the renamed page — that's something that you should have edit rights to do, but let me know if you run into issues.

Should we add the sentence "the only exception to colored type falls within illustration or other graphics" to the "Colored Type" section, and then add a jump link? Or combine these into one section? Otherwise it could sound like a contradiction. If there's a common enough use case for adding colored type in graphics, maybe we should make that clear, so there's no confusion.

I think "saturation of 100% and above" is a typo?

Should this say "Web Content Accessibility Guideline (WCAG) standards "? It's unusual to see "WCA" as a standalone acronym

Thanks for the feedback, @sonnakim  I'll work on incorporating your suggestions.

Here's the revised version. @sonnakim let me know if you have any additional feedback. I'm going to ping additional designers/production designers to take a look as well.

.

@caheberer looks great!

AJ reviewed and liked the simplicity. He also suggested incorporating the inclusion of "A few colors allow for slightly darker saturations while still maintaining accessibility." To cover the instances where we use darker saturations with black type, like in heroes.
I made the updates and published the page.


Sharing (not an issue) : code to set time/duration of event(s)

I'm sharing here, because I didn't found anything close after a lot of search (codex, kirki, stackoverflow, wordpress.stackexchange...).
Maybe someone did it before me with Kirki, but I just couldn't find it...
Case description:
I have a preloader and wanted to give my theme's users a way to set/choose the time/duration of the preloader before showing the site.
After a lot of research, as said before, I didn't find anything, and suddenly this crazy idea crossed my mind 🙄
My crazy idea :
To hide the preloader and show the site, after 1.5 second of preloading, I'm using a simple setTimeout() function :
setTimeout(function(){
    $('.preloader-wrapper').fadeOut();
}, 1500);

All I have to do is making a control that will give the users the ability to change this 1500ms in a range that I will define so they won't get crazy too 🤣
The solution
Obviously, the slider control was my best bet to define a range so :
// Set Preloader Animation Time
The_Clean_Blog_Kirki::add_field('thecleanblog', array(
    'type'        => 'slider',
    'settings'    => 'preloader_animation_time',
    'label'       => __( 'Set Preloader Animation Time', 'the-clean-blog' ),
    'section'     => 'preloader_settings',
    'default'     => 1500, // Set the default time to 1500ms
    'priority'    => 5,
    'choices'     => array(
        'min'  => '500', // minimum value 500ms
        'max'  => '3000', // maximum value 3000ms
        'step' => '500', // step of 500ms
    ),
    'transport'   => 'refresh', // to test the preloader time
    'output'      => array( // THIS IS THE INTERESTING PART, I'll EXPLAIN AFTER THE CODE !
        array(
            'element'  => '.preloader-wrapper',
            'property' => ' transition-duration',
            'value_pattern' => '$',
        ),
    ),
));

Explanation : I had to find a CSS property that allow to set the duration of an event, obviously again, transition-duration was my best bet, but I also had to find a way to output the value of this transition-duration and I remembered doing it, long ago, with the value-pattern  argument 😎 (this was the exact time of my crazy idea 🤣 ).
Now, all I had to do was really simple :
1- Localize my script
2- Pass the php variable to JS
3- Test my crazy idea 🙄
1- If someone is interested on how to do it, in functions.php :
function thecleanblog_scripts() {
...
    // Localize the-clean-blog.js to pass php variables to JS.
    wp_enqueue_script('thecleanblog-script', get_theme_file_uri('/assets/js/the-clean-blog.js'), array('jquery'), '', true);
    $thecleanblogSettings = array (
        ...
        'thecleanblog_preloader_animation_time' => get_theme_mod('preloader_animation_time', 1500),
        ...
    );
    wp_localize_script('thecleanblog-script', 'thecleanblog_set', $thecleanblogSettings);
...
}
add_action('wp_enqueue_scripts', 'thecleanblog_scripts');

2- Change the first setTimeout() function like so in the-clean-blog.js file that we had localized :
setTimeout(function(){
    $('.preloader-wrapper').fadeOut();
}, thecleanblog_set.thecleanblog_preloader_animation_time);

3- Test the AWESOMENESS of Kirki !!!

But for my theme, site load duration is between 1.5 and 3 seconds depending on content, while header is already displayed before loading with AJAX.
Users of my theme have this laps of time to play with the preloader.
I know because I've said it : it's a little bit of a crazy idea:joy:
SYA


[PECO-1020] Adding mock constructor method for WorkspaceClient to support mocked ApiClient

Adding additional constructor in WorkspaceClient to support mocking ApiClient
Changes
A new constructor in WorkspaceClient to support mocking ApiClient
Tests
Ran $mvn clean package to verify all test cases and compilation errors

Thanks for contributing this! Note that WorkspaceClient.java is a generated file. You need to make this change in .codegen/workspace.java.tmpl as well, otherwise this change will be erased the next time we update the SDK.

Thanks for contributing this! Note that WorkspaceClient.java is a generated file. You need to make this change in .codegen/workspace.java.tmpl as well, otherwise this change will be erased the next time we update the SDK.

Done, Thanks for pointing out.

jenkins merge


Exception in terminal alt buffer

@Tyriar Something has changed lately. The tmux issue we talked about (render missing) now often doesn't even resolve itself when resizing the pane. I noticed this in the dev tools, maybe it helps:

Can't figure out repro steps tho... not sure what triggers this state and what causes the terminal to get out of it.

I think this is related to a fix for tasks that @alexr00 and I did, I'll be more defensive.

Verification:

Run tmux
Run some commands


[bounty] convert obsidian pipe to nextjs

#935
/bounty 80
what could be a good UX? ATM backend pipes lack user feedback, people don't know what's happening and just leave
please use screenpipe js SDK with the pipe.settings feature somehow
and pipe.json cron feature which works like vercel cron https://vercel.com/docs/cron-jobs
not tested though but should work in theory :D

/attempt #936


SEGV in XML-Parser [rt.cpan.org #14943]

Migrated from rt.cpan.org#14943 (status was 'open')
Requestors:

<EMAIL_ADDRESS>
From  on 2005-10-05 15:58:44
:
I'm getting failures in "make test" from XML-Encoding, but I believe the actual problem may be in XML-Parser.  Here's the stripped down test case:
####################################################################
use XML::Encoding;

$doc1 =<<'End_of_doc;';
<encmap name="foo" expat="yes">
  <range byte='xa0' uni='x3000' len='200'/>
</encmap>
End_of_doc;

$p = new XML::Encoding();

eval { $p->parse($doc1); };
######################################################################

Running perl (5.6.1) on this program causes a core dump.  It works if
the "eval" is removed from the last line.

From<EMAIL_ADDRESS>on 2009-01-14 16:36:18
:
I'm getting bitten by this bug or a similar one in XML-RSS too:

http://www.cpantesters.org/show/XML-RSS.html#XML-RSS-1.43

Please fix it.

Regards,

-- Shlomi Fish

@shlomif do you have a suggested fix?

I'm a little confused. XML::Encoding is not a part of this package.


SW-5672 Modify deliverable search request

Change deliverable search request signature to take in an array of module IDs instead of a single module ID.
Add moduleStartDate and moduleEndDate to the deliverable search fields and response hydration.
Add ability to pass in specific search field node into deliverable search request.

#2982
#2981  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @nickgraz and the rest of your teammates on  Graphite

Merge activity

Aug 9, 11:05 AM EDT: @nickgraz started a stack merge that includes this pull request via Graphite.


add INSSEQ info for inserted_sequence

I am thinking of running something downstream that requires inserted sequences to infer amino acid sequence changes. I just added the INSSEQ ad hoc but please feel free to modify the PR to your liking.

@helrick Gotcha interesting I didn't notice this before. Anyways got it fixed

@helrick @waltergallegog Sorry for my delayed review on this PR; I have been quite content with the previous SAVANA version that I didn't care to pull the recent main branch.
I've now resolved the conflict requested; actually it's just about adding some lines for INSSEQ so wasn't too difficult.

@helrick I guess printing the inserted_sequence could be an option since it will increase the line length significantly. But since otherwise it's impossible to figure out what the inserted sequence is, I would vote that this indeed is a feature worth adding :)

Hi @soymintc I just tested and the proposed change alone does not work with the new version. It fails in the classification step, as the new SVINSSEQ field is not present in the data used for training (I think)
I have added a new modification on file classify.py, function get_info_fields(vcf) to ignore the SVINSSEQ field when performing inference:
def get_info_fields(vcf):
	""" initialize the data header from INFO fields of sample VCF """
	fields = []
	for rec in vcf.header_iter():
		if rec['HeaderType'] == "INFO":
			field = rec.info()['ID']
			if field != 'SVINSSEQ':
				fields.append(field)

It seems to work, I will push the modifications to my fork of SAVANA when I finish testing.

Hi both, thanks for the comments + PR. I agree that having the inserted sequence is a valuable feature, thanks @waltergallegog for the updates to @soymintc's proposed change. I should be able to test shortly.
However, I do agree with @soymintc that it may increase the size of output VCFs as well as decrease readability, especially when the inserted sequences are very long. One potential solution to this might be to have a "inserted sequence id" in the VCF file (i.e. ins_seq_01) if the length is over a certain threshold. Then a FASTA file with the inserted sequences could be included in the output directory containing for example:
> ins_seq_01
ATTCATCCATGGATAGAC...

Would the feature implemented in this way work for your use cases?

Hi @helrick thanks for the quick answer.
Regarding your proposed solution for me it would work without problems.

@helrick Agreed! Actually that'd the way to go; this branch just started for me as an ad hoc workaround, so if that's implemented, I figure this branch has no other utility.
@waltergallegog If you have urgent needs you could use the recent update I commited in the same PR, but if not I'd wait for Hillary's update :)

Hi @helrick, regarding the inserted sequence and length, do you have any plans to improve the selection of it?
For example in the insertion below, there are 29 supporting reads, with insertion length ranging from 166 to 343.
(The variance in length is caused repetitive AAA..AAAA of different lengths in each read)
Savana currently chooses as representative the read with the longest insertion, of length 343. From a quick inspection this reads seems more of an outlier to me, as most of the reads show insertion size in the range 240 - 300.
Maybe outputing as inserted sequence a consensus, or a more representative read could be better?
(Let me know if I should move this discussion to a new issue).

Hi both, thanks for the discussion and feedback on this! I've since added an insertion FASTA to the output files. So will close this PR. See a description of the output file here
Additionally, insertions are now clustered on their insert size, which should hopefully address the issue you mention above @waltergallegog


Implement proper routing

json.Unmarshaler to the rescue: http://attilaolah.eu/2013/11/29/json-decoding-in-go/

Currently we need the following routes:

auth.token
auth.google
auth.cert (?)
auth.account (?)
ping
close

This can be designed in Koa middleware style (https://github.com/koajs/route) to further accommodate request logging, request benchmarking, etc.

Done in Neptulon framework.


IOS not working for me

I am having trouble getting react-native-webworker to work for me.  I am trying to include it in my react native cli project.  I am just trying the most basic example.  I have installed as per the instructions and pod install.  I created a worker.js in the root identical to your example that simply defines the self.onmessage to take a parameter data and to use self.postMessage to send it back to the application.
self.onmessage = (data) => {   // Message is a string //   const message = e.data;    self.postMessage(Message from worker: "${data}"!); };
I used the code in the example folder to launch the webworker.
`
useEffect(() => {
const worker = new WebWorker('./worker.js',
//  {
//   enviromnent: 'light',
// }
);
worker.onmessage = ({ data }) => {
console.log("Got a message from worker ", data)
setMessages((m) => [...m, data]);
};
workerRef.current = worker;
// workerRef.current.postMessage("Testing")
console.log("Worker loaded", worker, worker.postMessage )
worker.postMessage("Testing")
return () => {
worker.terminate();
workerRef.current = undefined;
};
}, []);
const postMessage = () => {
  workerRef.current.postMessage(`Message ${messages.length + 1}`);
};

....
Messages:{messages.map((message, i) => (

{message}

))
`
I can see the log of the postMessage from my app.  I even added code to your Javascript code that launches the thread and to the postMessage method in Javascript. I can see the messages from the app going to the thread but no response.  I tried reactotron but it does nothing running in the thread.  My app is running react native 0.71.6 and react 18.2.0.  I have tried running it from npm run ios or launching from XCode but in neither case does to thread code appear to be responding.
Any clues or hints as to possible configuration or code issues?
Thanks,
Ray

Does the example folder work?

I tried building/ running it:
cd example
npm install
npx pod-install
npx react-native start / npm run ios (two different terminal sessions)
I also set the output to iPhone SE 3rd generation using xcode and assigned a team to the project.
I am getting the error:
/Users/rayhooker/Downloads/react-native-webworker-master/ios/RNWWWebWorker.mm:145:44 No member named 'NativeWebWorkerSpecJSI' in namespace 'facebook::react'
I did not see that error in my other project.  Any clues?

Actually never mind the previous message.  I made a change to my app.  I had commented out {environment: 'light'} and added it back. It worked but not without the parameter environment: 'light'. Two questions:

What is the syntax for enabling the regular environment and have you tested it?
Also I did not plan to using the react eventing structure but did plan to use realm database that is shared by my react-native app.  I will update the realm tables that are shared with my app.  I can postMessages back also during my processing to hopefully have the onMessage on the client site trigger updates to the app UI to show progress.
Thoughts on using environment 'light'?

Ray

The non-light environment definitely used to work. Can’t guarantee it still does 🤣 it’ll be something minor that’s broken. I’m away for a bit but can take a look when I’m back

Did you ever take a look when you got back @jacobp100

No lol. Are you also trying to use the non-light environment?


Object variable declaration conflicts on commonjs

TypeScript Version:  3.7.x-dev.20191203

Search Terms:
Code
export default {}
const Object = {};

Expected behavior:
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
{
exports.default = {};
const Object = {};
}

no error
Actual behavior:
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = {};
const Object = {};

VM69:2 Uncaught ReferenceError: Cannot access 'Object' before initialization
    at eval (eval at <anonymous> (main-3.js:1239), <anonymous>:2:1)
    at main-3.js:1239

Playground Link: http://www.typescriptlang.org/play/index.html?module=1#code/KYDwDg9gTgLgBAE2AMwIYFcA28DeBfAKAGMIA7AZ3gHkAjAK2CPgF458BuIA
Related Issues:

I'm pretty sure babel does the same thing. If you incompatibly mangle Object, than you incompatibly mangle Object.

Avoiding reference to global variables such as const { Object } = globalThis; is an effective performance tuning technique: https://falsandtru.github.io/benchmark/suites/10/

If you incompatibly mangle Object, then you incompatibly mangle Object.

As an aside, I'm not sure why you wrote the same thing twice. Do you need a coffee?

At a minimum we should issue an error when we detect that the emit won't work

However, developers would feel that error strange. And the error would be enabled only with the few module types (any other similar errors dependent on module types?). Basically other (mainly native) module types don't have this limitation. Therefore this is incompatibility of module types with a very common namespace. Compilers should hide such incompatibility as much as possible. I can find no reason to avoid an easy solution that just surrounding code by curly brackets.


Small changes in wiki to announce group studies

Can you check the home page and the Run Group Studies page? It has very little information but I guess for now it's enough

How about we put a link to that site on jatos.org?


ENH: Use regular rounding to calculate order amounts.

We previously tried to prevent accidental over-ordering by truncating
orders down unless they were within 1e-4 of the next higher integer.
Unfortunately, this makes it easy for a sell order to be one share short
of the desired position.
Using regular rounding treats both buys and sells in the same way.

Coverage decreased (-0.02%) to 87.41% when pulling ba13794d02f638e9c5d2839b1f863c3946017455 on round-orders into 43d6004cff4cb93d9ee5415caab4385746073271 on master.

Coverage decreased (-0.07%) to 87.411% when pulling b6b45a500ca687065e8dad3bfa4a132e2279db45 on round-orders into 759fc5bdffab47508a014b9dfa2656c27693afd1 on master.

Coverage decreased (-0.05%) to 87.432% when pulling 171df4c96251c02179d2e4142d4b4662542dfdf1 on round-orders into 8c211624fe028af01cdee5968e3aa0bb2be03ce3 on master.

LGTM (round two)

Coverage decreased (-0.05%) to 87.432% when pulling f9b8741133f702f5e3229eed5679ff43a88e14da on round-orders into 8c211624fe028af01cdee5968e3aa0bb2be03ce3 on master.


Fix issue 15033 -  Element type of float iota is double

https://issues.dlang.org/show_bug.cgi?id=15033
Use CommonType in iota()
See also<EMAIL_ADDRESS>

LGTM. FreeBSD seems to be randomly failing a lot lately for some weird reason... Looks unrelated to this pull.

I guess we should hava a unittest for this that failed before the change, right?

The test should be what is in the bug report:
    static assert(is (ElementType!(typeof(iota(0f))) == float));

Updated your title/summary to reflect bug report. You should also set up your log message to say "Fix 15033" and bugzilla will automatically close the bug for you.

LGTM

Done.

LGTM

Auto-merge toggled on


Six Dots Only

Can anyone help to solve this?

Go to the "Import / Export" menu. You should check the value of "index": and make sure that it increments by one (starting from 0). E.g.: {"secret1": {"index":0}, "secret2": {"index":0}, "secret3": {"index":2}} should be corrected to {"secret1": {"index":0}, "secret2": {"index":1}, "secret3": {"index":2}}. Then open and close edit mode to make sure it updates.


no-unused-variable -- Only trigger on last function parameter?

Regarding the "no-unused-variable" rule:
I'd love to keep this rule set to true, but it triggers too often in some patterns that I use often. Example below.
class ParentClass {
  constructor(callback:Function) {
    this.callback = callback;
  }
  name:string = 'parentName';
  title:string = 'parentTitle';
  body:string = 'parentBody';
  callback:Function;
  executeCallback():void {
    this.callback(this.name, this.title, this.body);
  }
  setCallback(callback:Function):void {
    this.callback = callback;
  }
}

function bodyLogger(name:string, title:string, body:string):void {
  console.log(body);
}

const instance = new ParentClass(bodyLogger);
instance.setCallback(bodyLogger);
instance.executeCallback();

The line function bodyLogger(name:string, title:string, body:string):void { triggers the "no-unused-variable" rule, because neither name, nor title are used in the function body.  Since I use the body parameter, though, I can't just remove them.
I'd like for this pattern to be allowed somehow -- perhaps by adding an option to only trigger "no-unused-variable" on the last parameter of a function declaration?

looks like you want the ignore-pattern option for the no-unused-variable rule  (https://github.com/palantir/tslint/pull/981). you can use it to set up a naming scheme for variables in your code which are allowed to be unused.

Oh boy, I had overlooked just renaming the unused parameters as a workaround, that will definitely work. Goodness. Appreciate the response!
I still think it could be useful to have an option to turn the mentioned functionality on universally. Otherwise you're stuck renaming variables and potentially breaking naming conventions to avoid hitting the rule.  Eslint has this functionality in their "no-unused-vars" rule as the "after-used" argument.

after-used only the last argument must be used. This allows you, for instance, to have two named parameters to a function and as long as you use the second argument, ESLint will not warn you about the first. This is the default setting.
https://github.com/eslint/eslint/blob/master/docs/rules/no-unused-vars.md

after-used is a nice to have feature. Is there a plan to implement it?

We have deprecated the no-unused-variable rule. Additional rule features are unlikely to get implemented. See https://github.com/palantir/tslint/releases/tag/4.0.0-dev.1 and the linked threads from #1481


Invalid handshake every 60 seconds

2018-11-25 20:14:50.338 [ERR] CMGR: Can't accept connection: unable to accept connection from <IP_ADDRESS>:32940: Act One: invalid handshake version: 71, only 0 is valid, msg=474554202f20485454502f312e310d0a557365722d4167656e743a206375726c2f372e33352e300d0a486f73743a20313139
Which is odd... because the IP is a private IP... one that doesn't exist on my network.  It should be impossible for my system to even see any traffic 10...*.
This message appears every 60 seconds, except the port is different each time.  I've stopped LND and updated from 5.0 to the latest, and still getting the error.

This isn't an lnd related error, and is usually someone trying to port scan your node. Say they try to probe for an HTTPS server at that port, we'll fail the handshake as we're expecting the brontide handshake.
Which version were you running prior? (also it's helpful if you fill in the issue template as it avoids back and forth to obtain basic information)
What other processes do you have running on the machine? Are you running behind a proxy?

"Which version were you running prior?"
"updated from 5.0 to the latest," It was the released 5.0 version
It's running on Raspberry PI with absolutely nothing else running.
It's not on a 10.* network, and since 10.* is not a routable IP... it should be impossible for the node to encounter any device with 10.* IP address.
It is running through a VPN, but neither the local, nor remote IP is running on the 10.* network.
Thanks.

Ok, it looks like the VPN does assign a 2nd local address in the 10. network.  The IP address listed is the "local" address of the server itself.
This only started happening (or being reported) since 5.0.

I don't think this has anything to do with LND (or could be cured by it).  Thanks.

Contacted the VPN service, it's a known issue on their end.

Ok... the "known issue" was that the source was showing up as a 10.* IP.
The problem is coming from a Lightning Node...
[ERR] CMGR: Can't accept connection: unable to accept connection from <IP_ADDRESS>:54673: Act One: invalid handshake version: 71

71 is "G", it's most likely an HTTP GET request that's hitting your LN port

Thanks.  It was coming from another lightning node, that I did not have a channel with, nor was connected to... But it has since ceased.
Thanks.


About training vida source model

Hi, @Yangsenqiao, thanks for releasing your code. I really appreciate it.
Btw, how can I train by myself this source model using your code base?
Thanks.

Thank you for your interest in our work. I recommend that you follow these two repositories.
https://github.com/jeonsworld/ViT-pytorch
https://github.com/kentaroy47/vision-transformers-cifar10

Thanks a lot Yangsenqiao!
Btw, while reimplementing your code and running source_vit.sh with the CIFAR10 dataset, I got pretty different source-only results like below.
[24/03/22 16:27:47] [cifar10c_vit.py:   68]: not resetting model
[24/03/22 16:29:41] [cifar10c_vit.py:   87]: error % [gaussian_noise5]: 88.48%
[24/03/22 16:29:41] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:31:37] [cifar10c_vit.py:   87]: error % [shot_noise5]: 87.51%
[24/03/22 16:31:37] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:33:33] [cifar10c_vit.py:   87]: error % [impulse_noise5]: 92.07%
[24/03/22 16:33:33] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:35:29] [cifar10c_vit.py:   87]: error % [defocus_blur5]: 89.76%
[24/03/22 16:35:29] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:37:26] [cifar10c_vit.py:   87]: error % [glass_blur5]: 89.25%
[24/03/22 16:37:26] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:39:34] [cifar10c_vit.py:   87]: error % [motion_blur5]: 88.75%
[24/03/22 16:39:34] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:41:32] [cifar10c_vit.py:   87]: error % [zoom_blur5]: 89.07%
[24/03/22 16:41:32] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:43:29] [cifar10c_vit.py:   87]: error % [snow5]: 89.86%
[24/03/22 16:43:29] [cifar10c_vit.py:   70]: not resetting model

I just utilized these config you provided.
MODEL:
  ADAPTATION: source
  ARCH: Standard_VITB
DATA_DIR: /dataset
TEST:
  BATCH_SIZE: 40
CORRUPTION:
  DATASET: cifar10
  SEVERITY:
    - 5
  TYPE:
    - gaussian_noise
    - shot_noise
    - impulse_noise
    - defocus_blur
    - glass_blur
    - motion_blur
    - zoom_blur
    - snow
    - frost
    - fog
    - brightness
    - contrast
    - elastic_transform
    - pixelate
    - jpeg_compression

I would be really appreciate if you have some ideas!

A little surprising. We will check it.
Best,
Senqiao
---- Replied Message ----
| From | Daeun @.> |
| Date | 3/22/2024 15:51 |
| To | @.> |
| Cc | Senqiao Yang @.> ,
@.> |
| Subject | Re: [Yangsenqiao/vida] About training vida source model (Issue #7) |
Thanks a lot Yangsenqiao!
Btw, while reimplementing your code and running source_vit.sh with the CIFAR10 dataset, I got pretty different source-only results like below.
[24/03/22 16:27:47] [cifar10c_vit.py:   68]: not resetting model
[24/03/22 16:29:41] [cifar10c_vit.py:   87]: error % [gaussian_noise5]: 88.48%
[24/03/22 16:29:41] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:31:37] [cifar10c_vit.py:   87]: error % [shot_noise5]: 87.51%
[24/03/22 16:31:37] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:33:33] [cifar10c_vit.py:   87]: error % [impulse_noise5]: 92.07%
[24/03/22 16:33:33] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:35:29] [cifar10c_vit.py:   87]: error % [defocus_blur5]: 89.76%
[24/03/22 16:35:29] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:37:26] [cifar10c_vit.py:   87]: error % [glass_blur5]: 89.25%
[24/03/22 16:37:26] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:39:34] [cifar10c_vit.py:   87]: error % [motion_blur5]: 88.75%
[24/03/22 16:39:34] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:41:32] [cifar10c_vit.py:   87]: error % [zoom_blur5]: 89.07%
[24/03/22 16:41:32] [cifar10c_vit.py:   70]: not resetting model
[24/03/22 16:43:29] [cifar10c_vit.py:   87]: error % [snow5]: 89.86%
[24/03/22 16:43:29] [cifar10c_vit.py:   70]: not resetting model
I just utilized these config you provided.
MODEL:
ADAPTATION: source
ARCH: Standard_VITB
DATA_DIR: /dataset
TEST:
BATCH_SIZE: 40
CORRUPTION:
DATASET: cifar10
SEVERITY:
- 5
TYPE:
- gaussian_noise
- shot_noise
- impulse_noise
- defocus_blur
- glass_blur
- motion_blur
- zoom_blur
- snow
- frost
- fog
- brightness
- contrast
- elastic_transform
- pixelate
- jpeg_compression
I would be really appreciate if you have some ideas!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

I would be wrong. I will try to see more accurately.

I just quickly checked the code, and it seems that the checkpoint was not loaded successfully (--checkpoint). I will further check and correct the code.

@Yangsenqiao, friend, I addressed it directly and assigned a checkpoint path here. If some has similar problem, it could be addressed like below.
  base_model = torch.nn.DataParallel(base_model) # make parallel
  checkpoint = torch.load('/d1/daeun/vida/cifar/dataset/vit_base_384_cifar10.t7')
  base_model.load_state_dict(checkpoint['model'], strict=False)

Thanks, we will update the code.

Thanks a lot. I think some elements in the config .yaml file are not working.

Senqiao, also may I ask how did you train ViDA source model (WideResNet-28)? (not ViT backbone)

This repository has the ResNet config, you could follow it.
https://github.com/kentaroy47/vision-transformers-cifar10

Thanks, you are the best!

@Yangsenqiao Hi, friend, could you kindly share your source model training code?
I assume you attached ViDAInjectedLinear to ViT. And my paper, BECoTTA shares the same sprits. I would really appreciate if you share your code to reimplement your method clearly. Thanks!

@Yangsenqiao Hi, friend, could you kindly share your source model training code? (It is warmup (initialization process) right?) I assume you attached ViDAInjectedLinear to ViT. And my paper, BECoTTA shares the same sprits. I would really appreciate if you share your code to reimplement your method clearly. Thanks!

Hi, Daeun, I am happy to see your new work :smiley:. Additionally, I have included your paper in our recently organized repository focus on awesome-CTTA related paper. I suggest that you cite more related work in your paper to help readers understand the context of this research topic :+1:.

Thank you for your interest in our work. I recommend that you follow these two repositories. https://github.com/jeonsworld/ViT-pytorch https://github.com/kentaroy47/vision-transformers-cifar10

And our training code follows these GitHub repositories. We first train the source model, then add the ViDA to the source model, freezing the backbone :snowflake: to tune the adapter :fire:.

@Yangsenqiao, friend, I addressed it by directly assigning a checkpoint path here. If someone has similar problem, it could be addressed like below. Thanks for your quick reply.
  base_model = torch.nn.DataParallel(base_model) # make parallel
  checkpoint = torch.load('/d1/daeun/vida/cifar/dataset/vit_base_384_cifar10.t7')
  base_model.load_state_dict(checkpoint['model'], strict=False)

These bugs have been fixed. Thanks!

@Yangsenqiao Hi, friend, could you kindly share your source model training code? (It is warmup (initialization process) right?) I assume you attached ViDAInjectedLinear to ViT. And my paper, BECoTTA shares the same sprits. I would really appreciate if you share your code to reimplement your method clearly. Thanks!

Hi, Daeun, I am happy to see your new work 😃. Additionally, I have included your paper in our recently organized repository focus on awesome-CTTA related paper. I suggest that you cite more related work in your paper to help readers understand the context of this research topic 👍.

For sure, why have not you released the segmentation part codes yet?????


replace raven client with sentry sdk [BF-1868]

Raven client is already deprecated.

I wonder if aiven-core pull request 30912 can also be relevant here? (Avoiding using DedupeIntegration as that can cause memory leak when used together with Google SDK.)

I wonder if aiven-core pull request 30912 can also be relevant here? (Avoiding using DedupeIntegration as that can cause memory leak when used together with Google SDK.)

Actually took that into consideration but was not 100% sure if it was relevant to add here since in theory it is a separate project and shouldn't be affected by the Google SDK. But still will ask @orange-kao about it

We will investigate the potential memory leak due to the DedupeIntegration in follow up testing.


Cow: Watch grandturkbazaar.com

Cow requests the watch of the watch_keyword grandturkbazaar\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by Jeff Schaller in Charcoal HQ

grandturkbazaar\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.


Sync player's PersistentDataContainer

Hi, are there plans to make it possible to also sync the player's PersistentDataContainer?
The reason is that I thought that HuskSync aims to make "switching between servers" behave the same as "switching between worlds" in vanilla. In vanilla, that includes all NBT tags, including the "BukkitValues" tag (which contains the PDC data).
(Reason why this would be nice is because many plugins, including mine, store player data in the PDC)

Hi there,
I was aware of PersistentDataContainer, but I didn't know players also had one. PersistentDataContainers within ItemMeta is already serialized.
Doing this will be added to the to-do list.

Closed via #33


Replaced gazebo_ros_control by gazebo_ros2_control

Description
When using the  tags generated in the package.xml for the use of Gazebo Classic, rosdep failed because it could not find the package gazebo_ros_control.
ERROR: the following packages/stacks could not have their rosdep keys resolved to system dependencies: ...: Cannot locate rosdep definition for [gazebo_ros_control]
I changed the template for the package.xml to include gazebo_ros2_control
It could also be useful to include a second commented paragraph containing gz_ros2_control for Gazebo.
Checklist

[x] Required by CI: Code is auto formatted using clang-format
[x] Extend the tutorials / documentation reference
[x] Document API changes relevant to the user in the MIGRATION.md notes
[x] Create tests, which fail without this PR reference
[x] Include a screenshot if changing a GUI
[x] While waiting for someone to review your request, please help review another open pull request to support the maintainers

@vonunwerth Thanks for that PR, I'll close this for now because of Sebastian's comment + moveit2 shouldn't depend on it anyways


Reusing the inputs of a function with minimal boilerplate

Sometimes one wants to reuse the input arguments (values and/or names) of a function.
But sometimes there are lot's such arguments, and therefore a lot of copy/pasting/editing and much visual space occupied by uninformative boilerplate.
What is an (or are) elegant way(s) to deal with that situation.
Here's an example (only with four arguments:
The usual way:
def fool(a, b=1, *, c=2, d=3):
    if min((a, b, c, d)) <= 0:
        return (a, b, c, d)
    else:
        return foo(a=a-1, b=b-1, c=c-1, d=d-1)

assert fool(9) == (8, 0, 1, 2)

A possible alternative with less boilerplate.
def foo(a, b=1, *, c=2, d=3):
    inputs = locals()  # must be the very first thing we do, to get nothing else than arguments
    if min(inputs.values()) <= 0:
        return tuple(inputs.values())
    else:
        return foo(**{k: v - 1 for k, v in inputs.items()})

assert foo(9) == (8, 0, 1, 2)

Is there a "better" way than this?
Note as well that this benchmark solution doesn't work if we have position-only arguments. For example, how would one implement a solution for:
def foo(a, /, b=1, *, c=2, d=3):
   ...

Posted here: https://stackoverflow.com/questions/66875587/reusing-the-arguments-of-a-python-function-with-minimal-boilerplate


google-chrome-stable segfaults on image upload

Issue description
I installed google-chrome Version 71.0.3578.80 (Official Build) (64-bit)  (master), because google-chrome in 18.09 didn't work for another reason (it crashed on startup and the version in master was supposed to solve that), but when I tried to upload an image, I got an immediate segmentation fault.
Steps to reproduce
Press Browse on https://imgur.com/upload.
Technical details

system: "x86_64-linux"
host os: Linux 4.14.87, NixOS, 18.09.git.b352d47 (Jellyfish)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.1.3
channels(root): "nixos-18.09.1571.7795a7ad5f0"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

I cannot reproduce this on unstable. Maybe something is fishy with the dialog that pops up. I wonder if this is DE-specific. It looks like a GTK box.

It affects all Chromium based browsers, including opera. Any operation resulting in the display of a file dialog crashes.
Firefox does not crash and shows a file dialog.

It looks like a null pointer dereference.

[39113.163736] chrome[11002]: segfault at 0 ip 00007ff0ea0ba9fd sp 00007ffd748a81c8 error 6 in libc-2.27.so[7ff0e9f69000+1aa000]
[40848.153486] opera[18375]: segfault at 0 ip 00007effeb66f9fd sp 00007fff82ed37b8 error 6 in libc-2.27.so[7effeb51e000+1aa000]

In Version 72.0.3626.81 (Developer Build) (64-bit) of chromium (not Google Chrome), it does work, but I see when I press the Browse button.

Gtk-Message: 17:34:03.414: GtkDialog mapped without a transient parent. This is discouraged.

In Version 72.0.3626.81 (Official Build) (64-bit) of Google Chrome it crashes.
Can someone share the exact setup they are using to run Google Chrome without such crashes?

@memberbetty can you try with 73.0.3683.27 (now in nixpkgs master and 18.09)?

@flokli Thanks for trying to help. Your instructions do not work on my system.
In configuration.nix:

extra = import (
fetchTarball https://github.com/NixOS/nixpkgs/archive/master.tar.gz
) {  config.allowUnfree = true; };

and then
environment.systemPackages = [  extra.google-chrome  ];
does not result in the version you said would exist. (I still get some version 72)
Am I doing something wrong?

you're right - I misread your text. I was referring to the chromium version bump on nixpkgs, which doesn't change anything with google-chrome obviously.
I'm currently running google-chrome-stable 72.0.3626.81 (from nixpkgs master) and didn't obsere such crashes.
Can you check if bumping google-chrome-stable to its latest version (72.0.3626.97) fixes it for you?

I can test things in master, but that version is not in master.
I also tested this with just a simple xterm session and then chrome also crashes.

@flokli The most likely underlying bug is this one: https://gitlab.gnome.org/GNOME/glib/issues/1645.
Do you know whether that is already fixed in any version of NixOS and whether Chrome dynamically links to that one?

@memberbetty upstream fixed this in glib 2.58.3.
nixpkgs master currently still is at 2.58.2, but the patch fixing that bug was applied in 462a6d32501b204944a9ef3f04a6d28f28c36cbc (from Jan 9)
nixpkgs 18.09 is at 2.56.0, the bug mentions it was introduced in 2.58.2.
Can you try if you can reproduce it on nixos-unstable?

I can now start google-chrome-stable on 18.09. I am closing this one.