[REQUEST] Raid Sim: Blood DPS icon change

Is your feature request related to a problem? Please describe.
The icon for Blood DPS in the raid sim uses the Rune Strike Icon, which is a predominantly Tank DK ability. It leads to a bit of confusion and I'd like to offer an alternative.
Describe the solution you'd like
I believe that the best Icon for Blood DPS in the sims would be Heart Strike. It is almost only used for Blood DPS or deep blood tank specs since most other blood tank specs opt out of it to get into frost deeper and the other DK DPS options have no way to get Heart Strike. It's pretty much THE spell that Blood cares about and I think it'd be a great change to make the spec distinction more clear. I have alternatives listed below, in the event you want to drastically change how specs are handled, but this solution of JUST changing Rune Strike to Heart Strike would be much simpler and serve the same purpose.
Describe alternatives you've considered
I've also considered maybe classifying the different DK specs in the raid sim using their most note-worthy ability icon since leave heart strike as dps but the blood presence icon as tank can lead to more confusion. Examples of each would be as follows:
Blood Tank: Death Strike or Will of the Necropolis, both are what blood tanks are known for and they're unique from other class icons as well.
Frost Tank: Frigid Dreadplate, pretty much the only one I can think of that would be distinct. Could maybe argue Frost Presence still since it's unquestionably the tank presence.
Unholy Tank: Bone Shield, also iconic for tank dk's, especially when added to blood in Cata. It's recognizable and makes sense.
ALL TANK SPECS: since the raid sim groups all of the dk tanks into one icon, you could just use Frost Pres here, then distinguish the dps by main ability as seen below.
Blood Dps: Heart Strike. Just Heart Strike. (See above)
Frost DPS: Obliterate. Just Obliterate. It's entirely too iconic not to use it.
2-Hand Unholy: Scourge Strike. It's what makes 2-hand vs Morb different for 2-hand.
Morb Unholy: Death and Decay. It's pretty much what Morb is based around, besides Gargoyle, but I feel Death and Decay is clearer.
Unholy is currently just 1 icon since the Morb vs 2-hander is all handled inside the Unholy spec sim itself, so alternatively you could use the Ghoul icon for Unholy since that's their unique mechanic.

Hey @NuptupTDOW 👋 the icon we use for DPS Blood is the same one that we've been seeing in Warcraftlogs. IIRC (and someone please correct me if I'm wrong) DPS Blood is labeled as "Runeblade" and uses the Rune Strike icon. We don't actually have the ability to distinguish between other "Runeblade" builds at the moment because we haven't found a way to grab talents from WCL to make the distinction. Hopefully this helps explain why we made the decision to use that icon 😄 I definitely hope that WCL will distinguish Blood DPS at some point and if they do we'll definitely do the same.

Huh, alrighty, that's I guess nice to know. So, it's effectively the "off-tank/Blood DPS" icon. Hmmmmmmmm. Well, here's hoping that can be addressed before blood dps starts to actually perform. It's already simming higher than warriors and ret pally's, so.., hopefully it'll be treated equal to them sooner than later.


ActionBar background artwork mising

I install roth ui only.  And I see config.lua and that option is true
:(

How many Actionbars do you have displayed?


move_edge_along_normal()

Method needs to be added to FacePrimitive in Modeler.Object3D.py

@dcrawforAtAnsys Do you mean move_faces_along_normal? I don't think you can move an edge that is connected to a faces without detaching it

In this case I wanted to move the edge of a rectangle in the normal direction. Move edge along normal is valid for a straight edge in a planar 2d object. I often use the following commands to create a port on the end of a trace (rectangle) with the following steps:

Select face
Create object from face
Select top/bottom edges
Move edge along normal (to make the connection to the top/bottom ground planes, for example in stripline)
Select the lateral edges
Move edge along normal (to make sure the port is wide enough to avoid near-field coupling between the edge pec and ground.
This ensures that the port retains the parameterization of the trace. So if the end of the trace moves because of a parameter change, the port surface will move with it.

Fixed in #1134


Add  Substring with Concatenation of All Words

Title - Substring with Concatenation of All Words
What will change -
Type of Issue -
Please add/delete options that are not relevant.
Adding New Code
Programming Language
Please add/delete options that are not relevant.
C++
Self Check
Ask for an issue assignment and wait to get assigned to it before making Pull Request.
Add your file to the proper folder
Clean Code and Documentation for better readability
Add Title and Description of the program in the file
🌟 Star it 🍴Fork it 🤝 Contribute to it!
Happy Coding,

Title - Substring with Concatenation of All Words
What will change -
Type of Issue -
Please add/delete options that are not relevant.
Adding New Code
Programming Language
Please add/delete options that are not relevant.
C++
Self Check
Ask for an issue assignment and wait to get assigned to it before making Pull Request.
Add your file to the proper folder
Clean Code and Documentation for better readability
Add Title and Description of the program in the file
🌟 Star it 🍴Fork it 🤝 Contribute to it!
Happy Coding,


Is this different from FastImage and does this lib support Fabric?

Just had two questions

Can this library act as replacement for react-native-fast-image and if there are any benchmarks available to compare the two?
Is this library compatible with the new Fabric renderer?

Hello @Miraj98 ,
FastImage saves images on memory so it is quite faster. We just noticed high memory consumption when we needed images at full resolution and decided to create this library so that we save images on the file system and have a little more control over caching. So it really depends on the use case.
This library depends on reanimated and react-native-file-access so whether or not we support fabric depends on these libraries

Oh, so react-native-image-cache does not support Fabric, got it. Reanimated supports Fabric in v3 btw.
Is there an active effort or a PR that is trying to port the library to Fabric?
I don't mind starting an issue on react-native-file-access if one is not already there that is tracking progress for Fabric.

@Miraj98 as @alpha0010 stated react-native-file-access will support Fabric in the future, closing this now.


add zstd compressor

Looks great overall, left a minor comment on a test case for external compressors.


feat(webapp): improve UI from main page

Title
What does this PR do?

Resolve #53

Steps to test

run the project and open localhost:3000 in your browser
click on income in the sidebar and see new features

CheckList

[] Follow proper Markdown format
[] The content is adequate
[] The content is available in both english and spanish
[] I Ran a spell check

The files deleted are by my recommendation, these are unused files that deleted on my PR, but both there were when created this branch


[melon-runtime] Ignore Melon.Models in .npmignore

Summary

Melon.Models project is not being properly ignored in .npmignore file and it is being uploaded in each release while it is not meant to be (melon-runtime releases should contain only the target build)

Solved in #153


feat: remove context header from ccs storybook

Remove the context header from the ibm-cloud-cognitive package storybook
What did you change?
Deleted the storybook files
How did you test and verify your work?
Storybook

Raised #931


Develop and provide the API

Is your feature request related to a problem? Please describe.
As developer I want to create the API to be used by the mobil application
Describe the solution you'd like
MVP Features  that will need to use API:

authentification to Yaki
user info
declaration info
team info

API documentation
a swagger well documented  will be provided for these API
Docker
Create the docker file
Create docker compose
CI/CD
Create Github actions CI
Tests
Create automated tests
Database
The server must be connected to the database to store and fetch data

Add the following depedencies:

[ ] ExpressJs
[ ] PostgreSql
[ ] Typescript


.terminate() failed to delete file xx.sqlite, clear() can not reset the file size...

.terminate() raise an error for it's in use when del the file, and after clear() the file size is still as large as before(43MB, not 3KB).
Indeed I prefer sqlitedict to tinydb...

Not sure I understand -- terminate() closes the file and then attempts to delete it.
What problem exactly are you reporting -- can you post the full log, at DEBUG level?
And also your OS, version of python, version of sqlitedict. Thanks!

Thanks for your answer & sorry for bother you... there is one python process is using that db and never be killed(maybe some sub-process), so it is not a issue any more.
by the way, may I ask one more question, the file size didn't release after I used db.clear(), even it had nothing in.

Alright, closing this issue.
Regarding clear(): it clears (deletes) all rows in a table, but doesn't VACUUM the space. I think that the vacuum operation was sometimes causing trouble we though was unnecessary. Feel free to call VACUUM manually (or delete/terminate the entire DB file and start from scratch).

You really did me a big favor, and I learned much from here, thanks
conn=sqlite3.connect('xx.sqlite')
conn.execute("VACUUM")
conn.execute("VACUUM")
conn.execute("VACUUM")
conn.close()
makes good

No problem. Enjoy!


How do I get the cool loader bar like in the Zeit blog?

It looks like Pace (or NProgress) ! So cool man!
But there isn't any isomorphic loading bar component out in the React ecosystem. Yes, I tried to make one, but it just feels un-natural, and I couldn't figure out how to place loading bar during AJAX/REST request...😂

@rauchg has mentioned he is going to do a write-up of how this was achieved soon. Closing this as duplicate of #88

Isn't this answered by https://github.com/zeit/next.js/tree/master/examples/with-loading ?

＠sedubois Oh yeah!😂 I'm too lazy to find it out.
But I couldn't make it shared across all pages. I've tried putting the router code on the pages/_document.js, but it didn't do anything.

You need to use a HOC. Can check my example app: https://github.com/relatenow/relate

@sedubois where should i look in your app for the proper example 😄 ?

See withLayout HOC: https://github.com/relatenow/relate/blob/master/hocs/withLayout.js#L25
Wrapped this way:
https://github.com/relatenow/relate/blob/master/pages/index.js#L6


Improve siddhi site

Purpose

improve siddhi site

Codecov Report

Merging #1213 into master will increase coverage by <.01%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #1213      +/-   ##
============================================
+ Coverage     61.44%   61.45%   +<.01%
  Complexity       35       35
============================================
  Files           619      619
  Lines         24942    24942
  Branches       3909     3909
============================================
+ Hits          15325    15327       +2
+ Misses         8289     8288       -1
+ Partials       1328     1327       -1

Impacted Files
Coverage Δ
Complexity Δ

...ut/stream/state/AbsentStreamPreStateProcessor.java
86.61% <0%> (+1.4%)
0% <0%> (ø)
:arrow_down:

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 9f7b21d...03faa63. Read the comment docs.


Release 5.6.2

Release notes:

Elasticsearch 5.6.2 Release Notes
Logstash 5.6.2 Release Notes
Kibana 5.6.2 Release Notes

Thanks for your contribution @edsharp! 🙌


Media query

Update media query for Footer.
Change font color on all pages/components.

 Media Query


cocomac: Watch w88xin.com

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

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

Approved by Spevacus in Charcoal HQ


fix: add persistent and noClickAnimation to change password dialog

The change password dialog is made modal and can't be exited by tapping another area.

Hi @Transmigration-zhou. Thanks for your PR.
PRs from untrusted users cannot be marked as trusted with /ok-to-test in this repo meaning untrusted PR authors can never trigger tests themselves. Collaborators can still trigger tests on the PR using /test all.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

没啥问题，我可以强行 merge

Fork的不行，得直接Clone。

fork 的不能走 ci ？

Error: Credentials could not be loaded, please check your action inputs: Could not load credentials from any providers
https://github.com/qor5/admin/actions/runs/10364752001/job/28691111458

configure-aws-credentials 过不了

https://github.com/aws-actions/configure-aws-credentials/issues/564
好像是 fork 的 PR id-token没有写权限


Add generatePath to the npm package

Hello, I need a kind of low-level API to generate route paths from patterns, and it looks like https://github.com/ReactTraining/react-router/blob/master/packages/react-router/modules/generatePath.js is just what I need. However it's not packaged into the npm bundle.
Could you please add it?

See #5661


[stable/grafana] re-add raw json dashboards in addition to files

Signed-off-by: Maor Friedman<EMAIL_ADDRESS>What this PR does / why we need it:
This PR restores functionality lost as part of PR #10546 - the ability to define dashboards as raw json within values.yaml. It maintains the new functionality that was added as part of the same PR.
Which issue this PR fixes

fixes #11542

Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md

/ok-to-test

/assign @cpanato
Thanks :)

/assign

/ok-to-test
/lgtm


[MINOR][BUILD] Fix an incorrect path in license-binary file.

What changes were proposed in this pull request?
I want to say sorry! this PR follows the previous https://github.com/apache/spark/pull/26050.
I didn't find them at the same time.
The LICENSE-binary file exists a minor issue has an incorrect path.
This PR will fix it.
Why are the changes needed?
This is a minor bug.
Does this PR introduce any user-facing change?
No
How was this patch tested?
Exists UT.

Test build #113666 has started for PR 26490 at commit 3f5b8a2.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/18549/
Test PASSed.

Test build #113666 has finished for PR 26490 at commit 3f5b8a2.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/113666/
Test PASSed.

Thanks, merged to master


[SoftLayer] Cannot allocate the machine to a specific vlan

Basically when I set :private_vlan => VLANID from the same datacenter in bootstrap_options, a machine keeps allocating to some other random vlan.

I think I found the way to force allocation to a specific :private_vlan and :vlan. Fix is in PR #216


Fix issue with outdated nodes in genesis blocks

Quite a few IPs are dead in the current genesis blocks. We need to update them to prevent unnecessary delays when using the BC Wallet.

Fix issue with outdated nodes in genesis blocks.
Enable genesis block build in CICD pipeline.

How did you fix the outdated nodes?  From the initial assessment, you were using the latest. Not so?


[Bug] NullPointerException when accessing contacts via a Dart Isolate (Background | Android)

Hey all, I'm in the process of migration from Flutter v1 to v2, and one of the things that seems like it broke is my Dart Background Isolate that handles Google FCM notifications. When a notification is received, the isolate gets spun up and the notification is handled, i.e., contacts get fetched, avatars get loaded, etc.
The issue I'm running into is when I fetch contacts from the isolate (even if permissions are granted), I get this error. This error does not occur when the app is open, only when the app is closed and the contacts service is used within the isolate.
There is a similar ticket to this, but it was for iOS. My issue is with Android: https://github.com/lukasgit/flutter_contacts/issues/200
Here is the error
2021-07-02 10:05:41.473 14769-14814/com.bluebubbles.messaging E/AndroidRuntime: FATAL EXCEPTION: pool-8-thread-1
    Process: com.bluebubbles.messaging, PID: 14769
    java.lang.RuntimeException: An error occurred while executing doInBackground()
        at android.os.AsyncTask$4.done(AsyncTask.java:415)
        at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383)
        at java.util.concurrent.FutureTask.setException(FutureTask.java:252)
        at java.util.concurrent.FutureTask.run(FutureTask.java:271)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:923)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.CharSequence android.content.res.Resources.getText(int)' on a null object reference
        at android.provider.ContactsContract$CommonDataKinds$Phone.getTypeLabel(ContactsContract.java:6288)
        at flutter.plugins.contactsservice.contactsservice.Item.getPhoneLabel(Item.java:42)
        at flutter.plugins.contactsservice.contactsservice.ContactsServicePlugin.getContactsFrom(ContactsServicePlugin.java:579)
        at flutter.plugins.contactsservice.contactsservice.ContactsServicePlugin.access$300(ContactsServicePlugin.java:55)
        at flutter.plugins.contactsservice.contactsservice.ContactsServicePlugin$GetContactsTask.doInBackground(ContactsServicePlugin.java:444)
        at flutter.plugins.contactsservice.contactsservice.ContactsServicePlugin$GetContactsTask.doInBackground(ContactsServicePlugin.java:420)
        at android.os.AsyncTask$3.call(AsyncTask.java:394)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:923)

Here is a log showing some prints for when we fetch the contacts from the isolate, and showing that permissions are granted, the the error:
I/flutter (15487): Database Opened
I/flutter (15487): ContactManager -> Checking Permissions...
I/flutter (15487): ContactManager -> We are checking access
I/flutter (15487): ContactManager -> Status: PermissionStatus.granted
I/flutter (15487): ContactManager -> Fetching contacts
E/AndroidRuntime(15487): FATAL EXCEPTION: pool-14-thread-1
E/AndroidRuntime(15487): Process: com.bluebubbles.messaging, PID: 15487

Here is my flutter doctor:
[√] Flutter (Channel stable, 2.2.2, on Microsoft Windows [Version 10.0.19043.1081], locale en-US)
    • Flutter version 2.2.2 at E:\src\flutter
    • Framework revision d79295af24 (3 weeks ago), 2021-06-11 08:56:01 -0700
    • Engine revision 91c9fc8fe0
    • Dart version 2.13.3

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at E:\AppData\Local\Android\Sdk
    • Platform android-30, build-tools 30.0.3
    • ANDROID_SDK_ROOT = E:\AppData\Local\Android\Sdk
    • Java binary at: C:\Program Files\Java\jdk1.8.0_291\bin\java
    • Java version Java(TM) SE Runtime Environment (build 1.8.0_291-b10)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions).

[√] VS Code (version 1.57.1)
    • VS Code at C:\Users\zach\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.24.0

[√] Connected device (3 available)
    • sdk gphone x86 arm (mobile) • emulator-5554 • android-x86    • Android 11 (API 30) (emulator)
    • Chrome (web)                • chrome        • web-javascript • Google Chrome 91.0.4472.124
    • Edge (web)                  • edge          • web-javascript • Microsoft Edge 91.0.864.59

! Doctor found issues in 1 category.

I will look into this issue over the weekend.  Thanks!

I will look into this issue over the weekend. Thanks!

Hey, this was solved when we switched from the old FlutterNativeView to using FlutterEngine to start the isolate. I don't believe this is an issue anymore for us. Thanks for replying so I remembered to close it!

Same issue inside Isolate.spawn().
Flutter version: 2.2.0 stable
Dart version: 2.13.0
contacts_service: ^0.6.1
issue :
E/flutter ( 6928): Null check operator used on a null value
E/flutter ( 6928): #0      MethodChannel.binaryMessenger (package:flutter/src/services/platform_channel.dart:142:86)
E/flutter ( 6928): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:148:36)
E/flutter ( 6928): #2      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:331:12)
E/flutter ( 6928): #3      ContactsService.getContacts (package:contacts_service/contacts_service.dart:24:24)

I will look into this issue over the weekend. Thanks!

Hey, this was solved when we switched from the old FlutterNativeView to using FlutterEngine to start the isolate. I don't believe this is an issue anymore for us. Thanks for replying so I remembered to close it!

Hi
Could you please describe how did you solve this ?
I'm facing the same issue and I can see multiple crashs on Firebase regarding this issue.
Thanks
Jerome

I will look into this issue over the weekend. Thanks!

Hey, this was solved when we switched from the old FlutterNativeView to using FlutterEngine to start the isolate. I don't believe this is an issue anymore for us. Thanks for replying so I remembered to close it!

Hi Could you please describe how did you solve this ? I'm facing the same issue and I can see multiple crashs on Firebase regarding this issue. Thanks Jerome

Hopefully this is helpful, but this is how we use FlutterEngine in our project: https://github.com/BlueBubblesApp/bluebubbles-app/blob/b7ad394233376c29a5081b6e136d90bd7303c17b/android/app/src/main/java/com/bluebubbles/messaging/workers/FCMWorker.java#L108-L109

Thanks for your answer.
So the idea is to run the "await" through a flutter engine ?
No other simpler way to avoid those crashes ?

https://github.com/BlueBubblesApp/bluebubbles-app/blob/b7ad394233376c29a5081b6e136d90bd7303c17b/android/app/src/main/java/com/bluebubbles/messaging/workers/FCMWorker.java#L108-L109

could you please he,p on what you mean running await? do I add this to the flutter code or the dependency

Here is an updated link to how we use the engine, with our latest code base. I dont think much has changed, but maybe it'll help: https://github.com/BlueBubblesApp/bluebubbles-app/blob/5ae9a183734bf3de2107a95b3799429c49a85186/android/app/src/main/java/com/bluebubbles/messaging/workers/FCMWorker.java#L106-L112


Very minor improvements to readme

@CosmoMatt I just made some very minor improvements to the readme (e.g. adding URLs for us, plus some other very minor revisions).  Could you please review.  I'm busy most of the day so if you could simply go ahead and merge after you review that would be great (I know that's not our normal procedure but these are minor and it would be good to get on main straight away).


Selection.Exists() method?

Hello,
What's the best way to determine if an element exists on a page? Two ways I've found are:

page.Find("selection").Count() > 0
page.Find("selection").Visible() is true

Both of these will return an error indicating that the selection isn't found; for example:

failed to select elements from selection 'Link: "no such link" [single]': element not found

But if this is an expected case, I can't find any easy way to match on this type of error (other than a text match).
I'd like to add a new method (perhaps Exists()) which would return (bool, error), and would simply return false (without any error) if the element doesn't exist. Just opening this issue first for discussion, if it sounds sensible then I can create a PR.
Jonathan

Looks like this is doable by looking for a 404 status code: https://w3c.github.io/webdriver/webdriver-spec.html#dfn-no-such-element

Just found a matcher that does this, which looks for a string suffix - seems more reliable to have an error type or const that can be matched against, or to have a special Exists method as described.

Use page.All("selection").Count().
page.Find is for selecting exactly one element.

Hey Stephen,
Thanks for the quick reply! That method indeed doesn't return any errors if no matching elements are found. It makes sense that Find is for "exactly one match expected" and and All is for "zero or more"
It'd be nice to document this somewhere (and I'm happy to submit a PR to add those docs) but I'm not sure where the best place to put it would be?
Jonathan

This is covered in the godoc:
https://godoc.org/github.com/sclevine/agouti#Selection.All
https://godoc.org/github.com/sclevine/agouti#MultiSelection.All
https://godoc.org/github.com/sclevine/agouti#Page.All
If you'd like to PR something more lengthy, the gh-pages branch of this repo backs agouti.org.


[R-266] New Propsal for Prompt

Detailed Proposal: PromptObject - v0.2
User Requirements

Create Simple prompts easily
Typed I/O
Adaption - stress test, use the current issues to understand the limitations
Ability to remove reasoning and other types
change demonstraction of the fly
change decoding strategy (this is the responsibility of the LLM)
unique identifier name for each prompt → this should also change when prompt is modified. Why?

let’s say user A adapts and saves ragas at v0.1
after a while he uses ragas again but with adapted language - but this time we had changed the prompt then it causes issues.

From SyncLinear.com | R-266

finished


add [slf4j-simple] to swagger-parser-v3/pom.xml

This will improve the logging output for unit tests.

ready for review @gracekarina

ready for review


Job coloring rework

About the PR
Rework Job, ID card and Encryption keys so it is a bit more fitting overall. Probably needs discussion for certain colors, icon choices etc.
For example the Valet would make sense to put under Cargo/Logistics colors but eh.
They are still all under HoP supervision.
Is this a big list for what amounts to tiny sprite changes? Yes, I wanted to be thorough with this for some reason.
Trying to follow the previously set color scheme of the "Service" departement jobs, they are split into Logistics/Cargo(Brown), Catering(Green), Civilian(Grey) and "Entertainment"(Pink).

Job icons changes

Assistant is a better letter A.
Roboticist now uses Engineering departement colors even if unused.
Valet now reuses the sprite for the Service encryption key as it fits relatively well.
Gladiator gets a new sprite in the form a sword and the same colors as the prisoner icon.
Martial Artist gets a new sprite in the form of a karate chop hand or something like that.
Reporter changes into Civilian grey.
Cyborg and MedicalCyborg gets job icons.
Service job icons are now greener, which makes it easier on the eyes and identical to their ID card icons

Encryption key changes

Renames the "science" encryption keys to "epistemic" encryption keys
Salvage and QM encryption keys sprites uses their corect color even if unused.
Roboticist encryption card now uses Engineering departement colors even if unused.
The Common encryption key now uses the Assistant job icon sprite.

ID Card changes

Salvage now uses the Miner sprites which has been recoloured to the Engineering departement
Roboticist now uses Engineering departement colors even if unused.
Assistant now has a proud A instead of a P.
Valet uses the new job icon that somewhat looks like someone holding a plate.
Chaplain, Mantis, Mystagogue and Acolyte now uses Epistemic departement colors, white and black.
Cataloguer now uses the Librarian sprite which has been recolored to the Epistemic departement colors.
Martial Artist gets a new ID icon similar to their new job icon.
Gladiator now uses the gladiator job icon and the same colors as the prisoner icon.
Boxer, Martial Artist, Musician get a pink icon and trim
Lawyer, Reporter and Janitor have a grey icon and trim

Job Spawner changes using the wiki icons I made previously.

Add sprites for Gladiator, Martial Artist, Boxer, Valet, Mail Carrier and Musician spawners.
Replaces the spawner sprites for; Scientist, Lawyer, Reporter, Librarian, Paramedic, RD, Janitor to better fit our current uses of them and how they look.
Give the Cyborg and MedicalCyborg sprites.

Various changes

Musician supervisor is now the HoP instead of "Anyone that hires you"
Using the Locale for the supervisors instead of plain text (mostly mystagogue)

Media
Changes to the encryption key sprites
Left to right; Common, MedEpi, Epi, Roboticist, Salvage, QM, Mysta

In game

Changes to the job icons sprites
Left to right; Assistant, Roboticist, Valet, Gladiator, Martial Artist, Reporter, Botanist, Bartender, Zookeeper, Chef

In game

Cyborg job icons

Changes to the ID card icons sprites
Left to right; Assistant, Salvage, Roboticist, Valet, Mantis, Cataloguer, Chaplain, Acolyte, Mysta, Boxer, Gladiator, Martial Artist, Janitor, Reporter, Lawyer, Musician

Service sub department visualized; Civilian, Catering, Cargo and Entertainment

Epistemics

Salvage Tech gets their own ID too

Map job spawners

Changelog

:cl:

tweak: Tweaked job and ID card icons to be more fitting.
add: Added Cyborgs job icons.

This is looking really good.
What's the mystagogue encryption key sprite about? You said the salvage and QM are unused, but is the mystagogue also unused?

This is looking really good.
What's the mystagogue encryption key sprite about? You said the salvage and QM are unused, but is the mystagogue also unused?

Yep pretty much unused.
I think it's due to upstream going for more of a "department" encryption keys instead of "role" encryption keys.
See the service key being the cargo sprite for exemple I guess.

Criticisms I can think of at the moment:
* The mime icon says more Space Invaders than mime to me.

* Is there a better icon we can have for the valet? At first glance, I thought the reporter was the valet, because it looked like a bell (bellhop).

* The Epi encryption key looks like an H but I can see how it's supposed to be an !.

* Do the `A`s look better if you use 2 pixels of spacing instead of 1 between the top and middle line?

The mime icon is unchanged from upstream and I don't see what else it could be personally.
Reporter icon is from upstream, just less green now. We could go back to the green A for valet, I thought using the service icon from the encryption key would look better for the valet. Or actually thinking about it, a V for Valet.
I just followed the pattern of using the job icon for the encryption key icon. Might be because epistemic are the only one not using white for the actual icon and instead uses black.
It looks different;

2 pixel spacing A looks more balanced to me.

For the Valet we could ignore the service icon (which looks like someone holding a plate or something) and just do a V


Update for German locale

Fixes for a couple of typos, missing punctuations and ambiguous formulations.

@mrdokenny Is there a reason why you hesitated so far from merging?

Sorry, but I have no reason to put out a point release at this time. So I'm holding off on any merges currently.


App crashes after opening long file

App Version:
2022.2.1
Affected Device(s):
Samsung SM-N910C, Android 6.0.1
Describe the bug
App crashes after some seconds after opening a long file
To Reproduce
Steps to reproduce the behavior

When you enter editor, open a long file (65KB)
Wait a few seconds
And it will just close itself or crash

Here is a video:
https://user-images.githubusercontent.com/103432992/213743036-6da814db-915f-4102-be5b-7426e579778e.mp4
Expected behavior
i should be able to edit or view file but it crashes

Hi @HAKANKOKCU, can you attach log file?

Hi @HAKANKOKCU, can you attach log file?

i dont know if this was the correct way but here you go:
bugreport (no emails).txt
i had to remove my emails to not get spammed (they are " (sorry i had to hide this to not get spammed by bots) ")

@HAKANKOKCU Sorry for the long answer, this is an internal bug in error checking. You can disable it in Settings > Editor

Just released v2023.1.0 where I completely removed error checking. It'll be rewritten from scratch in the future due to large amount of problems


Solves issue #40 Animation and Button addition in testimonial part

Fixes #40
The flip card animation has been added which on being hovered upon displays the reviews which the people has and also a dropdown button for the requests has been created which on being hovered displays the request and a link to the linkedin profile.
Before-

After-

GIF-

It is based on the issue #40.
@yash982000 kindly look into it.

@yash982000  In the requests section,I have not added the sub option drop menu as on hovering over requests section it displays the request and the icon of linkedin which will have the link to their profile.
And as you said the separate thing of testimonial and requests, so I have added a drop down list for it instead of having a complete separate thing for it.
I will now add the sub drop option menu which can have separate link for resume or Linkedin.

@yash982000 In the requests section,I have not added the sub option drop menu as on hovering over requests section it displays the request and the icon of linkedin which will have the link to their profile.
And as you said the separate thing of testimonial and requests, so I have added a drop down list for it instead of having a complete separate thing for it.
I will now add the sub drop option menu which can have separate link for resume or Linkedin.

@Khushi-agarwal Yes, please do that and let me know whenever you are done

@yash982000 I have added the sub drop menu option for the requests part.
The before gif is the same as above.
After-

@yash982000 Kindly look into it.

@yash982000 Kindly look into it.

This looks somewhat good.
Are those reviews still on the same page?

@yash982000 Kindly look into it.

Also, the thing is that these would not be static number of requests.
There will be requests coming from the backend as per the other user's wish.
So, will the drop-down menu automatically accommodate those new requests along with the links?

@Khushi-agarwal Actually, we will have to drop this idea.
Can you open a new issue or so?
Make this completely different from the testimonials page with a new HTML and CSS file.
The thing you wanted to do in testimonials, we will discuss it here in this thread itself but let's complete first this in a new issue.
We only have a responsive table requirement for the requests section which will contain a name, email, Linkedin, and resume link of the requester. And, final the submit button along with a small description for the reviewer to write and submit it back.
Here is some reference for you:-
https://codepen.io/DrewRyan/pen/YZxYER
https://colorlib.com/wp/css3-table-templates/
https://codepen.io/AllThingsSmitty/pen/MyqmdM
Let me know if you can do it or have any doubts.

@yash982000 Kindly look into it.

This looks somewhat good.
Are those reviews still on the same page?

Yes they are on the same page.

@yash982000 Kindly look into it.

Also, the thing is that these would not be static number of requests.
There will be requests coming from the backend as per the other user's wish.
So, will the drop-down menu automatically accommodate those new requests along with the links?

Yes,it will increase depending on the number of requests.

@Khushi-agarwal Actually, we will have to drop this idea.
Can you open a new issue or so?
Make this completely different from the testimonials page with a new HTML and CSS file.
The thing you wanted to do in testimonials, we will discuss it here in this thread itself but let's complete first this in a new issue.
We only have a responsive table requirement for the requests section which will contain a name, email, Linkedin, and resume link of the requester. And, final the submit button along with a small description for the reviewer to write and submit it back.
Here is some reference for you:-
https://codepen.io/DrewRyan/pen/YZxYER
https://colorlib.com/wp/css3-table-templates/
https://codepen.io/AllThingsSmitty/pen/MyqmdM
Let me know if you can do it or have any doubts.

I would love to work on this issue but it's my request that if you could merge this pr which was based on the testimonial page as you liked the idea, so if it could be merged then I would be highly grateful.If you merge only the testimonial part then it would be great for me as it would help me in my gssoc score . @yash982000 I hope you understand.
And regarding the working towards the requests section, it would be my pleasure to work towards it.

@Khushi-agarwal I understand. But the current feature doesn't suffice our requirements.
At the end, this is going to be a full working application so we cannot add things which we don't require now.
With matter to the score, do this table part. And I will count your work by giving a point level more in this PR.

@Khushi-agarwal I understand. But the current feature doesn't suffice our requirements.
At the end, this is going to be a full working application so we cannot add things which we don't require now.
With matter to the score, do this table part. And I will count your work by giving a point level more in this PR.

I believe your words and have created a issue for it. @yash982000

@Khushi-agarwal I understand. But the current feature doesn't suffice our requirements.
At the end, this is going to be a full working application so we cannot add things which we don't require now.
With matter to the score, do this table part. And I will count your work by giving a point level more in this PR.

I believe your words and have created a issue for it. @yash982000

@Khushi-agarwal I have assigned you and labeled it with points as well which is not the case generally before merging. :)

@Khushi-agarwal I understand. But the current feature doesn't suffice our requirements.
At the end, this is going to be a full working application so we cannot add things which we don't require now.
With matter to the score, do this table part. And I will count your work by giving a point level more in this PR.

I believe your words and have created a issue for it. @yash982000

@Khushi-agarwal I have assigned you and labeled it with points as well which is not the case generally before merging. :)

Thank you.

fixes #46
@yash982000 sir,I have created a new html and css page and have added the table as told by you.
Kindly have a look.
The page looks like this-

All the links of linkedIn and resume are active.

Fixes #46
@yash982000 sir,I have created a new html and css page and have added the table as told by you.
Kindly have a look.
The page looks like this-

All the links of linkedIn and resume are active.

Perfect!!
I hope it is dynamic and new can be added from the backend.

@Khushi-agarwal Merged.!!

@Khushi-agarwal Merged.!!

Thank you:)


fleet: add replace unit support

This PR allows units to be replaced with "submit", "load" and "start" commands. Just add the new "--replace" switch.
The previous discussion was about overwrite in this PR https://github.com/coreos/fleet/pull/1295
This PR tries to fix: https://github.com/coreos/fleet/issues/760

We need further testing for this one. thanks!

Regarding the test issue: I don't know whether this is a bug or expected behaviour; but there seems to be no guarantee that the units have reached the final states by the time the command returns. That's why all the existing tests use WaitForNActiveUnits(); and that's also why I created a similar loop in my new connectivity loss test: https://github.com/endocode/fleet/blob/antrik/tests-loss_of_connectivity/functional/connectivity-loss_test.go#L134 (I couldn't use WaitForNActiveUnits() in this case, as not all of the units are supposed to become active -- which I think also applies here, depending on the case?) I guess you need something similar.

According to the commit message of the first commit (and from a quick glance at the code), a command with --replace will only take effect if the unit is already in the respective state. As discussed earlier (out-of-band), I'm pretty sure this is not the desired behaviour. The commands should behave exactly the same as they would without --replace, except that if a matching unit already exists, it is replaced by the new version, rather than retaining the old one. So if a unit is inactive for example, start --replace should submit the new unit file (replacing the previous one), load it, and start it.
Slightly less clear is what to do for example if a unit is already launched, and we do submit --replace. In my understanding reconciliation will automatically reload and restart the updated unit as soon as it's submitted into the registry? That might be slightly unintuitive -- but I guess there is not much we can do about that...

Without actually digging into the code, I see some formal issues with this PR from looking through the commit messages. Some of the commits are just fixing things introduced in earlier commits of the same PR (such as the gofmt fix) -- these should be squashed into the respective commit(s) that introduced the problematic code in the first place.
Also, it looks like the order of the commits is wrong: the commit introducing the --replace switch for example can't possibly work without some of the internal changes introduced by the other commits -- so it should be committed after these changes, not before...

@antrik yes actually only one commit that gofmt which was fixed, thanks! ok could you please dig then in the code and ping us if we missed something, this is new functionality. On the note on how to replace units, Yes start --replace should overwrite submit and load but not the other way. Later fleet should be enforced to follow up the life cycle and states of units...
@jonboulle we have added functional tests to replace many units, etc, the functionality is there... but to be honest the thing that bothers me is the order of systemd directives... but hey it depends also on the units. Since fleet is declarative, putting StopPost directives that are buggy or do not finish and updating is asking for trouble...

Slightly less clear is what to do for example if a unit is already launched, and we do submit --replace. In my understanding reconciliation will automatically reload and restart the updated unit as soon as it's submitted into the registry?

I think we should provide 2 things.

A way to replace a unit and restart it.
and a way to replace a unit a reload it (systemctl daemon-reload)

So I think we could use submit/load for the latter and start for the first, is that a solution? or what do you think.

@antrik

Regarding the test issue: I don't know whether this is a bug or expected behaviour; but there seems to be no guarantee that the units have reached the final states by the time the command returns. That's why all the existing tests use WaitForNActiveUnits()

Makes sense. So I added such checks to the functional tests. Maybe during the next update, this patch will be included:
https://github.com/endocode/fleet/pull/21
https://github.com/endocode/fleet/commit/4e4cc9410215458d8df4b2c092680ad3afc67f6a
For now this test seems to work. However, I'm a little careful about adding more tests included in this PR. I'd rather create a new PR afterwards for further comprehensive tests.

@antrik

Slightly less clear is what to do for example if a unit is already launched, and we do submit --replace. In my understanding reconciliation will automatically reload and restart the updated unit as soon as it's submitted into the registry? That might be slightly unintuitive -- but I guess there is not much we can do about that...

submit is to submit units into the cluster, so the desired state is submit and incative:
https://coreos.com/fleet/docs/latest/states.html
Now if you add "--replace" into the game, and if I quote you "will automatically reload and restart" here you are mixing submit, load and start desired states. If you want to achieve that then just do "start --replace" why "--submit --replace" ? we should not mix desired states, and we should follow the life cycle of units and services, otherwise we introduce confusion, not to mention that these operations are also handled by systemd...
So here just use the appropriate command.

@klausenbusk

I think we should provide 2 things.

A way to replace a unit and restart it.
and a way to replace a unit a reload it (systemctl daemon-reload)
So I think we could use submit/load for the latter and start for the first, is that a solution? or what do you think.

The way to replace a unit and restart it, is what this PR does! we re-execute systemd directives, could you please try it ? edit your unit, then fleetctl start --replace ?
And the second way you mention is also handled and the manager instructs systemd to reload. Now for submit it does not at all involve systemd reload!
Thank you!

@klausenbusk AIUI fleet doesn't presently have any notion of reloading a unit? While IIRC there have been requests for that, I don't think we should try to address this question here. This PR is quite complicated as it is...

And the second way you mention is also handled and the manager instructs systemd to reload. Now for submit it does not at all involve systemd reload!

I want a way I can replace a unit without restarting it! But as @antrik said, that should be another pr.
Use-case: I want to replace my Mariadb Galera unit file. Currently I need to do:

fleectl destroy mariadb-galera
fleetctl load mariadb-galera
Bootstrap mariadb-galera manually on one of the nodes (docker run...).
Start mariadb with systemctl start mariadb-galera on node 2
Wait for it to finish SST and do the same on node 3.
Stop the manually started mariadb-galera
fleetctl start mariadb-galera

It a rather long process, and it take some time. If I could replace the unit, I could just ssh the every db server and do sudo systemctl restart mariadb-galera (without downtime).

And the second way you mention is also handled and the manager instructs systemd to reload. Now for submit it does not at all involve systemd reload!

I want a way I can replace a unit without restarting it! But as @antrik said, that should be another pr.
Use-case: I want to replace my Mariadb Galera unit file. Currently I need to do:

fleectl destroy mariadb-galera
fleetctl load mariadb-galera
Bootstrap mariadb-galera manually on one of the nodes (docker run...).
Start mariadb with systemctl start mariadb-galera on node 2
Wait for it to finish SST and do the same on node 3.
Stop the manually started mariadb-galera
fleetctl start mariadb-galera

It a rather long process, and it take some time. If I could replace the unit, I could just ssh the every db server and do sudo systemctl restart mariadb-galera (without downtime).

@klausenbusk ok, could you also explain in more details what are 3), 4), 5) and 6) ? and the content of your units ?
It seems you have the case of template units here? actually currently with this PR you could "submit --replace" a template unit, and already started units from the previous template will not be restarted. To do so you have to add an extra "start --replace<EMAIL_ADDRESS>so the question I see here: between this time could you think of a solution for your use case ?
"fleetctl start --replace" triggers systemd daemon-reload and all the same processes as "systemctl restart" after that.
And a note so we don't forget, we have these transitions:
inactive   ->    loaded        ->             launched
submit    ->  {load|unload} ->  {start | stop}
https://coreos.com/fleet/docs/latest/states.html
So unless I'm missing something here, if your units are in the launched state and you want to put them in the loaded state it will always involve a stop (Stop and StopPost directives) then daemon-reload, hence a downtime. Perhaps there is a solution for your use case if you could tell us more ?

@klausenbusk ok, could you also explain in more details what are 3), 4), 5) and 6) ? and the content of your units ?

Note: I have 3 db nodes.
3: Galera needs a cluster to connect to, but as I have shutdown the whole cluster, I need to start 1 instance of Galera with --wsrep_cluster_address=gcomm:// (create new cluster) which I do just with docker run ..
4: I start mariadb-galera on node 2 with sudo systemctl start mariadb-galera.
5: I wait for it to sync up with Galera, and do the same on node 3.
6: I stop docker run .. on node 1.
7: I do fleetctl start mariadb-galera so mariadb-galera is automated started if a machine is rebooted.

It seems you have the case of template units here?

Using templates you can ask fleet to start unit on corresponding machine, i.e.
fleetctl start mariadb-galera-initial@node1
fleetctl start<EMAIL_ADDRESS>fleetctl stop mariadb-galera-initial@node2
fleetctl start mariadb-galera@node1

These steps could be automated with sidekicks

@klausenbusk it seems what you are essentially asking for is a way to temporarily inhibit part of fleet's reconciliation logic, so it will submit (and load) the new unit, but ignore the fact that the existing unit doesn't match the new requested state...
While I can see the use case for this, I have no idea right now whether this could be done without breaking some fundamental assumptions...

Using templates you can ask fleet to start unit on corresponding machine, i.e.

I don't see any big benefit of using template. I only need to ssh to 1 node instant of 3, that the only benefit, and I can't add a new db node without doing fleetctl start mariadb-galera@<some-new-number>
The problem is that I need to stop the whole cluster to change the unit file. What I ask for, is a --replace which only replace the unint on disk and do sudo systemctl daemon-reload without restarting the unit.
Then I can ssh to all my db nodes, and restart mariadb-galera one-by-one, without stopping the cluster.

@klausenbusk what is the problem of using current implementation fleetctl start --replace mariadb-galera@node1? It will update only one unit on node1 and restart only one unit which is scheduled on node1.
Then you can run fleetctl start --replace mariadb-galera@node2 and fleetctl start --replace mariadb-galera@node3.
This solution doesn't require to stop the cluster.

@dongsupark if you have test cases in mind further testing the functionality introduced in this PR, they clearly belong here, and not into some followup.

@klausenbusk what is the problem of using current implementation fleetctl start --replace mariadb-galera@node1?

Oh, I didn't through it worked that way. :)
I still prefer a global unit, but template units could be a solution until then.
A flag which restart a global unit node-by-node could be useful.

A flag which restart a global unit node-by-node could be useful.

@klausenbusk yeah, that has been requested before. However, as I tried
to explain, this doens't really jibe well with fleet's automatic
reconciliation model. Also, AIUI it is considered somewhat out of scope
for fleet...

let me know when this is ready for review..

@antrik I added a new commit to change minor things as you wrote today.
@jonboulle I think this tree is ready for review.

Please correct me if I'm wrong; but as far as I can see, nowhere in the fleetctl code we wait after --replace for the unit(s) to actually get updated to the new versions? Shouldn't we do that (if in blocking mode), just as we wait for units to reach the desired run state?...

@antrik

Please correct me if I'm wrong; but as far as I can see, nowhere in the fleetctl code we wait after --replace for the unit(s) to actually get updated to the new versions? Shouldn't we do that (if in blocking mode), just as we wait for units to reach the desired run state?...

It's automatically handled when we update the job key, we only wait to reach the inactive state then start again...

@tixxdz
As #1544 introduced cluster operations like WaitForNUnits, WaitForNUnitFiles, I had to also update this PR, to avoid conflicts. See https://github.com/endocode/fleet/tree/dongsu/fleetctl-replace-unit-fxtests .
What I did:

Rebased tixxdz/fleetctl-replace-unit-v2 onto dongsu/fleetctl-unit-action-fxtests (#1544)
Changed functional tests for replace option, so that they make use of cluster.WaitForNUnits() and cluster.WaitForNUnitFiles().
Squashed functional test commits into 3 commits in total.

I didn't touch the main patches for the replace option. When you later got time to update this PR, please take also my patches from https://github.com/endocode/fleet/tree/dongsu/fleetctl-replace-unit-fxtests. Thanks!

@jonboulle it's ready, basically I ended up implementing it in an other way, please see comment: https://github.com/coreos/fleet/pull/1509#discussion_r58524088   and also to make sure that ExecStartPre of new unit is serialized after ExecStopPost of the old version of the unit, so we don't have further conflicts between the two versions of the unit, at same time it allows us to try to avoid races which may bring us to https://github.com/coreos/fleet/issues/1000 and https://github.com/systemd/systemd/issues/518 .
Another advantage we don't add replace target hashes nor wait from the client perspective fleetctl for the hashes to be updated to the new version, we just wait for the new unit (new hash) to reach its own desired state: submitted, loaded or started as it's currently done. The old unit will be stopped or unloaded before that when we set the inactive state. So instead of waiting for the reconcile, we just do what it does but without waiting and without adding so much code.
Thank you!

For the record, patches 9, 10, 11 lgtm, I just added a complex test to cover what I described in this comment: https://github.com/coreos/fleet/pull/1509#issuecomment-211829316  the test is documented and this allows us to make sure that systemd directives are serialized but only in the current replace context, external operations are not our fault.
Waiting for some lgtm, then will merge it, we have been rebasing this branch for some time now...
Thanks!

TestReplaceSerialization test looks good. Thanks!

@tixxdz there is one issue I've just found. When you replace templated unit, updated unit has being scheduled on different machine. Steps to reproduce:
fleetct submit<EMAIL_ADDRESS>fleetct start<EMAIL_ADDRESS>
Then you'll get the units list:
fleetctl list-unit-files
UNIT                    HASH    DSTATE          STATE           TARGET
<EMAIL_ADDRESS>        4e11fe3 inactive        inactive        -
<EMAIL_ADDRESS>       4e11fe3 launched        launched        63a6ca6f.../coreos1
<EMAIL_ADDRESS>      79699e3 launched        launched        5e719f91.../coreos2
<EMAIL_ADDRESS>       79699e3 launched        launched        5e719f91.../coreos2
<EMAIL_ADDRESS>       79699e3 loaded          loaded          8c849f40.../coreos3
<EMAIL_ADDRESS>       79699e3 launched        launched        8c849f40.../coreos3
<EMAIL_ADDRESS>       79699e3 launched        launched        5e719f91.../coreos2
<EMAIL_ADDRESS>       79699e3 launched        launched        8c849f40.../coreos3
<EMAIL_ADDRESS>       79699e3 launched        launched        5e719f91.../coreos2
<EMAIL_ADDRESS>       79699e3 launched        launched        8c849f40.../coreos3
<EMAIL_ADDRESS>       79699e3 launched        launched        5e719f91.../coreos2

Then make replace:
fleetctl start --replace<EMAIL_ADDRESS>Unit<EMAIL_ADDRESS>inactive
Unit<EMAIL_ADDRESS>launched on 63a6ca6f.../coreos1

And you'll see that unit has been moved from to coreos3 to coreos1:
fleetctl list-unit-files
UNIT                    HASH    DSTATE          STATE           TARGET
<EMAIL_ADDRESS>        4e11fe3 inactive        inactive        -
<EMAIL_ADDRESS>       4e11fe3 launched        launched        63a6ca6f.../coreos1
<EMAIL_ADDRESS>      79699e3 launched        launched        5e719f91.../coreos2
<EMAIL_ADDRESS>       79699e3 launched        launched        5e719f91.../coreos2
<EMAIL_ADDRESS>       79699e3 loaded          loaded          8c849f40.../coreos3
<EMAIL_ADDRESS>       4e11fe3 launched        inactive        63a6ca6f.../coreos1
<EMAIL_ADDRESS>       79699e3 launched        launched        5e719f91.../coreos2
<EMAIL_ADDRESS>       79699e3 launched        launched        8c849f40.../coreos3
<EMAIL_ADDRESS>       79699e3 launched        launched        5e719f91.../coreos2
<EMAIL_ADDRESS>       79699e3 launched        launched        8c849f40.../coreos3
<EMAIL_ADDRESS>       79699e3 launched        launched        5e719f91.../coreos2

Should we document that behavior or should be reschedule unit on the same machine it was started before and move it only when there is a explicit need or requirement? Otherwise when you use extra X-Fleet options, it works as expected, i.e.:
[X-Fleet]
MachineMetadata="hostname=coreos%i"

@kayrus fleetctl submit; load or start deal with the notion of cluster, and not a single specified machine. If we go that path then IMO we will reduce fleet functionality and further changes. If we schedule on the same machine:

We are explicitly setting "[X-Fleet] MachineMetadata="hostname=coreos%i"" for users that do not want it.

What happens if a user wants to replace a unit and schedule it based on fleet decisions or any other scheduling decision ? if we do that, then we explicitly chose for him and for sure it will end up re-scheduling all units again and again on the same node. Reducing the notion of migration and automatic replace that we are trying to add here.

We will hardcode that inside fleet logic, which I really do not like. At long term it will be a burden and we may see requests to change it.

It will conflict with [X-Fleet] MachineMetadata="hostname=coreos-another-one" then we have to add code to make one take precedence over the other...

Now if users want to replace on the same machine, there is already the option:
[X-Fleet] MachineMetadata="hostname=coreos%i"
This allows us to solve previous points:

Users who want it, will have to set it.

Users who want fleet to do right thing and do not bother are satisfied.

Nothing is hardcoded inside the code, everything is optional and one can even move units and services from one cluster with X number of machines to another cluster of Y number of machines.

We only have one and unique option we do not add extra logic nor code.

Now for the record we have to update fleetctl help message to let users that his replace a unit in the cluster and not into a specific node, now if you want it to be in node X, then add MachineMetadata option, which you can do it where previous versions of units are still running.
Will update the "--replace" help message right now. Thanks!

@tixxdz I've tried to not unload units, but just stop them. This doesn't work as expected. Fleet for some reason hangs. Other solution is to implement "desiredMachine" option, which could be ignored in case when unit could not be replaced on the same machine (i.e. [X-Fleet] options were added). But this is another issue and could be resolved in new PR if necessary.

@kayrus actually yes, we have to unload, free resources, reset status of failed units through systemd manager, and other operations to clean up things.
For the rescheduleOnSameMachine that's would be a nice addition not only for this PR, but probably for other parts or PRs.
Thank you!

So this one looks good, all tests pass, many comments. I'm merging it now to unblock the situation, so it won't be lost nor the upcoming PRs.
For users who want to replace units on the same machine they could use what's already being used:
[X-Fleet] MachineMetadata="hostname=coreos%i"
Later one may add rescheduleOnSameMachine.
@jonboulle in all ways, we have to unload then load, hence the rescheduling.
Thank you!


Rename C# Quickstarts as C# Tutorials

Search data indicates that the term "QuickStart" is not a common search term, when associated with a programming language.
The quickstarts will be rebranded as tutorials, with updated redirection and terminology throughout those articles.
In addition, the String Interpolation quickstart will move to the section with the other tutorials as it assumes more existing knowledge of C# and .NET.
Tracked internally here

@BillWagner I'd be happy to contribute to the string interpolation part of this issue.

In addition, the String Interpolation quickstart will move to the section with the other tutorials as it assumes more existing knowledge of C# and .NET.

Does that mean that during the move, the quickstart can be simplified by removing the bits that explain what class is, what property is? In that case the quickstart becomes the subset of the current tutorial:
https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/string-interpolation
Do you think those two should be merged?

@pkulikov That's a second step.  I'll get the first part done (just moving).
Then, I'll open a new issue for those items. It would be great to have you help on that.

The task list for this issue is:

[ ] rename "quick-start" directory to "intro-to-csharp" under "tutorials"
[ ] configure all redirects
[ ] find and update all links
[ ] update TOCs
[ ] Update the .NET Landing page
[ ] update any internal text for "quick start" to "Introduction to C# tutorial"

Extra list of tasks discovered while updating internal text:

[ ] Create issue to update Roslyn SDK quickstarts to tutorials (make that a separate PR)
[ ] Update directories and namespaces in related local tutorials.


Keybase App shows only blank panes

I recently uninstalled the version of keybase I had initially installed, and attempted to install a newer version. This has resulted in Keybase showing me only blank panes.
Host is OS X El Capitan on a MacBook Pro (Retina, 15-inch, Mid 2015).
Here's a screenshot of the menu bar item showing a blank pane:

And Keybase.app:

Sorry about this.  Please could you run keybase log send?
After that, I think that if you kill Keybase processes and restart from the Applications folder, it'll work.
CC @gabriel

my log id: 0d8a0a66097a6eab5cc90f1c
I have tried killing the Keybase processes, rebooting the machine, and even uninstalling and reinstalling the Keybase client (both the previous working one and the one that first exhibited the problem.) Nothing seems to recover these panes.

Thanks, we'll get on this.
(I see from your log that our Electron BrowserWindows are crashing, and also that an install step hung.)

@gabriel note we have a stack trace in the gui log for the installer. Please take a look at that

@chrisnojima (it looks like the stack trace is caused by the installer itself sending SIGABRT to keybase install after it times out.)

@tml Can you post another log send, am curious to see more logs from when you rebooted etc? And if same error message is coming up...
Some notes from reading logs:

Service starts: 2016-09-29T17:37:42.188951 ▶ [DEBU keybase globals.go:265] 007 Keybase CLI 1.0.17-20160922174631+f87e42c
Start app: Thu Sep 29 2016 17:37:56 GMT-0600 (MDT)<PHONE_NUMBER>018): Version: 1.0.17-20160922174631+f87e42c
Installer runs: Thu Sep 29 2016 17:37:56 GMT-0600 (MDT)<PHONE_NUMBER>095): Executing: /Applications/Keybase.app/Contents/Resources/KeybaseInstaller.app/Contents/MacOS/Keybase --app-path=/Applications/Keybase.app --run-mode=prod
Installer finishes: Thu Sep 29 2016 17:38:19 GMT-0600 (MDT)<PHONE_NUMBER>468): Exec (stderr): 09.29.2016 17:37:56.229 Installer... Output truncated though?
App window unresponsive:  Thu Sep 29 2016 17:38:52 GMT-0600 (MDT)<PHONE_NUMBER>900): Browser window unresponsive: { preventDefault: [Function: preventDefault],
KBFS restarts: 2016-09-29T17:40:28.762799 ▶ [INFO kbfs start.go:27] 001 KBFS version 1.0.2-20160922174706+fe68a67

Browser window unresponsive issue seems like it would be the cause of white screen. (It's unclear from logs what causes that though.)
Around this time " Thu Sep 29 2016 17:38:52 GMT-0600 (MDT) ", KBFS seems ok, Keybase did a rekey before this but seemed fine.
There are some other things which are a little weird but might not be the source of the problem:

The installer finished but the output was truncated
The installer ran for 23 seconds which is long
Why did KBFS restart 2 mins after installer exited?

In more logs if we see the window unresponsive error coming up again (everytime a white screen shows) it might indicate something is blocking synchronously the renderer thread?

I just installed the Keybase client app (I've never installed it before) and had the same issue. Ran the log command and here's my log id: dadf1230c78f3a0b2e5c631c

@cjb I see some browser window crashes in the log
@mrscobbler If you kill Keybase and re-run does it fix it:
pkill Keybase
open /Applications/Keybase.app

@chrisnojima found the issue and we have a fix and are testing

This is the relevant pr: https://github.com/keybase/client/pull/4560
Thanks!

The PR has been merged and should be in the next update. Let's reopen if this happens again. Thanks!


[BUG] Develop branch hung when using replica > 2

Describe the bug
I installed latest develop branch and run basic generation with StepResources(replica=8) and the generation hung. It does not happen to tags 88615c72182249203463401ec2f767e58ac84d9c
To Reproduce
Code to reproduce

Expected behaviour
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

Package version:
Python version:

Additional context
Add any other context about the problem here.

Hi @zye1996, thanks for reporting the issue. I'll check!

Hi again @zye1996! I confirmed that it gets hung. Just to confirm, at which moment of the execution of the pipeline do you see it gets hung? do you see that some replicas of the step finish?

we just merged a PR to develop that fixed one issue that made the pipeline hung just at the end of the execution because not all steps replicas were being unloaded. If you can try and confirm that your issue has been fixed would be awesome!


Feat(eos_cli_config_gen): Add support for BGP TCP AO

Enhancement summary
We have a project where a customer is asking for BGP TCP authentation as described in this TOI:
https://www.arista.com/en/support/toi/eos-4-28-2f/16087-bgp-tcp-authentication-option-tcp-ao
Which component of AVD is impacted
eos_cli_config_gen
Use case example
Customer wants additional encryption security in the fabric and password rotation in the fabric between leaves and spines.
Describe the solution you would like
Currently BGP does not allow to specifiy this type of encryption:
https://avd.arista.com/4.6/roles/eos_cli_config_gen/docs/input-variables.html#router-bgp
Configuration shoud allow:
neighbor NEIGHBOR_ID password shared-secret profile NAME algorithm ALGORITHM

Also the following:
management security
   session shared-secret profile NAME
      secret ID [LEVEL] SECRET {LIFETIME}
      ...

Describe alternatives you have considered
PS engineer is considering custom templates for this until this is natively supported.
Additional context
No response
Contributing Guide

[X] I agree to follow this project's Code of Conduct

Thanks @gmuloc, i missed that and edited the original issue. I dont think anyone in the project can work on this, not sure if someone from eos+ or avd team has some cycles for this. At the moment the PS engineer is looking into custom templates, but maybe not the best option.

@dgonzalez85 please test pr #3853 if it addresses what you need.

@dgonzalez85 please test pr #3853 if it addresses what you need.

Sorry for getting late to this, but i tested and working well :)


Official agar.io problem CONNECT!

Do not working. I go https://agar.io/?ip=<IP_ADDRESS>:443 NOT WORKING!
Please help!!

Support for the official agar client hasn't been maintained for a long time, please use a client such as Cigar.


YouTube Takes Down Replys

Hello. I’m not sure if you remember me or not. I’m that kid that needs assistance on his project. I keep trying to reply on YouTube, but it won’t let me. Can you please message me on discord @sfpv. Thanks

Hello, I´m sorry about youtube comments, it´s strange but possible. Please send me an email, it´s on the about page of the youtube channel.

Sorry but I don't see the email on your about page

Hello, I´m sorry about youtube comments, it´s strange but possible. Please send me an email, it´s on the about page of the youtube channel.

I sent the email


Benchmarks strongly favor wasmer runtime characteristics

Big fan of wasmer, but the benchmarks seem a little skewed.  I believe wasmer has an in-memory compile cache so likely better to hoist the cache step. Life can also be compiled AOT and compiles to native code:
vm, _ := life.NewVirtualMachine(wasmBytes, life.VMConfig{}, &life.NopResolver{}, nil)
aotSvc := platform.FullAOTCompile(vm)
vm.SetAOTService(aotSvc)
for i := 0; i < b.N; i++ {
    entryID, _ := vm.GetFunctionExport(exportName)
    result, _ := vm.Run(entryID, exportValues...)
    _ = result
}

After hoisting the compile step and enabling AOT for life I see these results:
pkg: github.com/wasmerio/go-ext-wasm/benchmarks-wasmer
Benchmark_Wasmer_Nbody-4                 	      30	  42971576 ns/op
pkg: github.com/wasmerio/go-ext-wasm/benchmarks-life
Benchmark_Life_Nbody-4                 	              30	  38405537 ns/op
pkg: github.com/wasmerio/go-ext-wasm/benchmarks-wagon
Benchmark_Wagon_Nbody-4                 	       1<PHONE_NUMBER> ns/op

In addition to those remarks, I personally would be interested in the Cgo penalty that wasmer incurs, to give an idea of the "worst case" compared to pure Go implementations.

That's a good point. @tiborvass also wrote me about improving the benchmarks to add more insight into the Cgo penalty.
Life AOT (Polymerase)
For benchmarking, we tried to use the Life with Polymerase (the one that is AOT) and we were unable to get it working.
At the same time, Polymerase transpiles the wasm code to C to then compile it with clang as a shared library (source here: https://github.com/perlin-network/life/blob/3010eb89946c347a3d158749b49aafe9bcd26d65/platform/aot_unix.go#L206), which is not ideal since requires clang to be present.
Because of that requirement we thought not a lot of people will be able to use it on their environments... and that's why we chose to not put more effort into get it working for the benchmark after our first trial.
Further analysis
In order to provide good benchmarks that are not biased we need to measure things like:

[x] How fast compiles the modules: since it relies on the Wasmer code generation, we can trust the numbers provided here
[x] How fast is the code at runtime: provided in the benchmarks
[ ] How fast is able to cross boundaries:

From Wasm to host functions in go
From go to Wasm functions

The last part is the one that we haven't measured yet, that I think it will be quite valuable for everyone.
What are your thoughts?
Are there any other things that will be useful to measure?

I would like to complete the answer about Life Polymerase. Cranelift is a JIT engine and is the default backend we use since it offers the best tradeoff between compilation-time and execution-time. If we want to get close to native, as Life with Polymerase does by transforming Wasm to C and then compiling it with clang, then we can use the LLVM Wasmer backend. It brings a slower compilation-time, but an extremely fast execution-time (as fast as native). In the current benchmarks, we wanted to compare apples to apples; hence comparing Life “raw” to Wasmer with Cranelift: Both do not require any third-party softwares to be present. With Polymerase, Life requires clang to be present, and with LLVM, Wasmer requires… LLVM to be present, … or not. It is likely we will generate a dynamic library for Wasmer that already includes LLVM: It largely increases the dylib size, but it is possible.
I wished that, just like Cargo/Rust has a feature compilation flag, Go could have something similar, but I didn't found a way to do that yet (any clue?). If a compilation flag can be used, then the user could decide what backend Wasmer must use: Singlepass, Cranelift or LLVM. I think it's the best option until we complete backend tiering.

@Hywan I think the differences you're describing are an issue with choosing benchmarks to highlight performance. Apples to apples would be "here are benchmarks between N pure-go wasm runtimes".
JIT is great, but if you're looking for performance and reduced runtime dependencies maybe it would be better to compile your wasm with Life/clang and ship the resulting binary with your Go program: https://github.com/perlin-network/life/blob/57f3819/platform/aot_unix.go#L234-L237
As far as I can tell, this isn't an option with Wasmer (maybe pre-populate the cache?).
The critique (which I think has been heard) is that "go-ext-wasm is much faster than everything else" is an incomplete picture. The use cases for building wasm into Go code are surely varied and there are a variety of pros and cons to each approach.

@Hywan also Cranelift is young, I'm sure it'll be as fast as llvm in no time! 😉


resource_Default_view comments aren't all up to date

Describe the bug
Several methods in MVP/ no longer have correct evaluate lines in their comments due to the recent namespacing. The same is true for other resource_*_view methods I've seen so far.
To Reproduce
Steps to reproduce the behaviour:

Go to class-side method resource_Default_view under most MVP classes
Check the "eval the following method" comment
Scroll down to 'ViewComposer openOn: ...'
If we have Tools.ViewComposer, that's correct. Most do not, they simply have ViewComposer.

Expected behaviour
Comments for resource_Default_view or other resource_*_view methods should be kept up to date along with the code in the rest of the method.
Please complete the following information):

OS: 32-bit Vista, 64-bit Fedora Linux
Dolphin: 7.2.9-47-g7d73ecc37

Additional context
I'll create pull requests for at least the MVP hierarchy to correct the comments in those methods, and I'll split them out per subset so I can find any mistakes I make. This should be one of those "low-hanging fruit" kind of jobs. Let me know if you already have this in hand.

Related pull has been closed, so I'll close this now. I may have some further text edits coming down the pipe but I'll batch those up much like I did these ones.


export-namespace-from is not respected

Describe the bug
Seems like export-namespace-from is not respected when used with Next.js
/sandbox/node_modules/react-dnd/dist/esm/index.js:1
export * from './common';
^^^^^^

SyntaxError: Unexpected token export
    at Module._compile (internal/modules/cjs/loader.js:721:23)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:690:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.react-dnd (/sandbox/.next/server/static/development/pages/index.js:1298:18)
    at __webpack_require__ (/sandbox/.next/server/static/development/pages/index.js:23:31)
    at Module../pages/index.js (/sandbox/.next/server/static/development/pages/index.js:1087:67)
    at __webpack_require__ (/sandbox/.next/server/static/development/pages/index.js:23:31)
    at Object.3 (/sandbox/.next/server/static/development/pages/index.js:1132:18)
    at __webpack_require__ (/sandbox/.next/server/static/development/pages/index.js:23:31)
    at /sandbox/.next/server/static/development/pages/index.js:91:18
    at Object.<anonymous> (/sandbox/.next/server/static/development/pages/index.js:94:10)
    at Module._compile (internal/modules/cjs/loader.js:776:30)

Reproduction
Live Reproduction
Steps to reproduce the behavior:

start any project with Next.js
install react-dnd
run the yarn dev

Expected behavior
It should get complied
Although, the same works with CRA, demo here

Hi. I got a similar problem, I think;
unexpected token error when running tests with Jest in the create-react-app / Typescript environment.

@kuldeepkeshwar, @miguelpel I had the same issue and maybe this can help you
similar discussion about module transpiling: https://spectrum.chat/next-js/general/have-no-idea-how-to-combine-amchart-with-next-js~37b6a631-663c-4a3c-94a0-568991f275de
the package itself: https://www.npmjs.com/package/next-transpile-modules
but what described abode didn't helped me, so I did how described here and it works
https://github.com/react-dnd/react-dnd/issues/1414
and use these libraries:
https://www.npmjs.com/package/react-dnd-html5-backend-cjs
https://www.npmjs.com/package/react-dnd-cjs

@Oleksandr-kopaevich thanks, that helped. Although it didn't require to use cjs library. I used the original react-dnd

when I npm install will get the error ""

@kuldeepkeshwar, @miguelpel I had the same issue and maybe this can help you
Similar discussion about module transpiling: https://spectrum.chat/next-js/general/have-no-idea-how-to-combine-amchart-with-next-js~37b6a631-663c-4a3c-94a0-568991f275de
the package itself: https://www.npmjs.com/package/next-transpile-modules
But what described above hadn't helped me, so I did how described here and it worked
#1414
and use these libraries:
https://www.npmjs.com/package/react-dnd-html5-backend-cjs
https://www.npmjs.com/package/react-dnd-cjs
===============
the version of react-dnd is 9.3.x;
when npm install react-dnd`` npm install react-dnd-html5-backend will get the error is "Unexpected token export ";
=>'npm uninstall react-dnd' & 'npm uninstall react-dnd-html5-backend ' &
'npm install react-dnd-cjs' 'npm install react-dnd-html5-backend-cjs'
and change the import :

import { DndProvider } from 'react-dnd-cjs'
import HTML5Backend from 'react-dnd-html5-backend-cjs'

will be ok;
thks

Installing cjs package worked for me .. I was using Next.js


Disable Mac Catalyst just so we can go green

Description of Change
It appears that the Mac Catalyst tests are now always crashing. We were green in the last build on July 30, but not anymore.
So sad.
I didn't touch it.

After 1000 red PR builds, i just merged and now it is green. Looks like CI is just temperamental.


nextFrame.value is null on last slide with click interations on presenter mode

Describe the bug
In presenter mode with the last slide that have click interactions, the last click cannot be performed
To Reproduce
Steps to reproduce the behavior:

Create a presentation with the last slide that have click interations:

# Foo

<v-click>

- Foo
- Bar

</v-click>

Go to that last slide

Try to perform the click interations

See the error nextFrame.value is null in the console for the last interation

Exception details
Uncaught (in promise) TypeError: nextFrame.value is null
 setup presenter.vue:70
 callWithErrorHandling runtime-core.esm-bundler.js:195
 callWithAsyncErrorHandling runtime-core.esm-bundler.js:202
 job runtime-core.esm-bundler.js:6100
 flushPreFlushCbs runtime-core.esm-bundler.js:356
 updateComponentPreRender runtime-core.esm-bundler.js:5290
 componentUpdateFn runtime-core.esm-bundler.js:5203
 run reactivity.esm-bundler.js:181
 update runtime-core.esm-bundler.js:5270
 updateComponent runtime-core.esm-bundler.js:5079
 processComponent runtime-core.esm-bundler.js:5013
 patch runtime-core.esm-bundler.js:4471
 componentUpdateFn runtime-core.esm-bundler.js:5226
 run reactivity.esm-bundler.js:181
 update runtime-core.esm-bundler.js:5270
 callWithErrorHandling runtime-core.esm-bundler.js:195
 flushJobs runtime-core.esm-bundler.js:409
 promise callback*queueFlush runtime-core.esm-bundler.js:319
 queueJob runtime-core.esm-bundler.js:313
 scheduler runtime-core.esm-bundler.js:6121
 resetScheduling reactivity.esm-bundler.js:266
 triggerEffects reactivity.esm-bundler.js:319
 triggerRefValue reactivity.esm-bundler.js:1084
 set value reactivity.esm-bundler.js:1131
 finalizeNavigation vue-router.mjs:3443
 pushWithRedirect vue-router.mjs:3308
 promise callback*pushWithRedirect vue-router.mjs:3275
 push vue-router.mjs:3200
 replace vue-router.mjs:3203
 set route.ts:28
 promise callback*nextTick runtime-core.esm-bundler.js:286
 set route.ts:24
 set value reactivity.esm-bundler.js:1030
 set useNav.ts:307
 set value reactivity.esm-bundler.js:1030
 next useNav.ts:146
 trigger shortcuts.ts:29
 callWithErrorHandling runtime-core.esm-bundler.js:195
 callWithAsyncErrorHandling runtime-core.esm-bundler.js:202
 job runtime-core.esm-bundler.js:6100
 resetScheduling reactivity.esm-bundler.js:266
 triggerEffects reactivity.esm-bundler.js:319
 triggerRefValue reactivity.esm-bundler.js:1084
 set value reactivity.esm-bundler.js:1131
 setRefs index.mjs:4221
 updateRefs index.mjs:4242
 useMagicKeys index.mjs:4255

Desktop (please complete the following information):

OS: Linux
Browser: Firefox
Slidev version: 0.49.10

Sorry, I can't reproduce this. I also checked the code but had no idea why this would happen.

I myself cannot reproduce this error anymore after refreshing the page :sweat_smile:


Day Night Cycle is too fast

The current day/cycle is too fast, transitioning through a full Cycle every 10min or so. It's so quick you can see the moon moving across the sky in jerky phases.
According to ParagonWiki:
One real time hour is equivalent to two in-game days, with midnights occurring on the hour and on the half hour.
They have a handy chart as well: https://paragonwiki.com/wiki/Time
And includes information regarding timed events, which means eventually we'll want to expose the game "clock" to the Lua scripting engine for missions and spawns.

Yup, the world day/night speed was set so high since I wanted to be able to tell if it works at all, without waiting a few hours :)
Right now the time of day is stored inside World object, and it's updated in World::update


[Bitcoin] Copy bitcoin address button doesn't work under account name

This copies the stacks address instead of the (t)BTC address, the other two copy buttons work as intended.

This appears resolved in the latest build


Update Hub main page to just have Meltano Plugins, maintain separate Singer pages

Migrated from GitLab: https://gitlab.com/meltano/hub/-/issues/261
Originally created by @tayloramurphy on 2022-05-27 18:41:01

From https://gitlab.com/meltano/hub/-/issues/258,

[ ] on the main page there should only be the plugin types Meltano knows about. Extractors should be 300+ etc.
[ ] We will want to maintain the https://hub.meltano.com/singer/ page but don't need to have a link in the header for it.

View 11 previous comments from the original issue on GitLab

@tayloramurphy closing this also as part of https://github.com/meltano/hub/pull/514.


ReferenceError: window is not defined

After an upgrade to<EMAIL_ADDRESS>I started getting the error below. This is happening because this function is being called: https://github.com/mjackson/history/blob/1370f889784c01d3a16c192e5c1a052310e20a4d/modules/BrowserProtocol.js#L13 in a server context (where "window" is not defined).
[2] [dev:server] /Users/shripadk/test/node_modules/history/lib/DOMUtils.js:39
[2]   return window.navigator.userAgent.indexOf('Trident') === -1;
[2]          ^
[2] [dev:server] ReferenceError: window is not defined
[2]     at supportsPopstateOnHashchange (/Users/shripadk/test/node_modules/history/lib/DOMUtils.js:39:10)
[2]     at Object.<anonymous> (/Users/shripadk/test/node_modules/history/lib/BrowserProtocol.js:17:75)
[2]     at Module._compile (module.js:556:32)
[2]     at Object.Module._extensions..js (module.js:565:10)
[2]     at Module.load (module.js:473:32)
[2]     at tryModuleLoad (module.js:432:12)
[2]     at Function.Module._load (module.js:424:3)
[2]     at Module.require (module.js:483:17)
[2]     at require (internal/module.js:20:19)
[2]     at Object.<anonymous> (/Users/shripadk/test/node_modules/history/lib/createBrowserHistory.js:13:24)

Thanks for the quick fix, @shripadk.


Contributed cmake project files.

Supersedes #6997.

LGTM. Filed #7220 to remind us to get a test put together.


Look for track specific metadata in .meta

Fixes #45
Store track specific metadata under .meta

They are metadata so .meta is a more appropriate location.
In .meta files won't need to be explicitly ignored when serving files to
students.

Note:
This change is not backwards-compatible but there is a PR https://github.com/exercism/xrust/pull/285 that makes this unnecessary, simplifying the changes required here.
Waiting on: ~~https://github.com/exercism/xrust/pull/285~~ - Merged
Edit:
Note: root metadata.yml files have been added to exercism/coq

I'm fine with merging this and breaking the Coq track for a few minutes. I'll go submit a PR to Coq fixing it in a moment.

Thank you @Insti!


Test on PHP 8.1

Thank you! I don't expect any problems, the extensions are already tested on 8.1 here: https://github.com/phpstan/phpstan/actions/workflows/extension-tests.yml
But it's useful anyway :)


Problem with long topic string

Hi,
I am trying to use pubsubclient for an MQTT subscriber for devicehub.net using an ESP32 device.
I ran into a lot of problems with seemingly simple code.  After many trial and error, I found that if the topic string is too long (longer 109 characters), the client will not work.  By that, I meant the callbacks will not be called for new messages to that topic.  With devicehub.net, it is quite easy to get such long string.  For example,
"/a/75ae2ce1-af0f-44b0-8a2c-d39b9c4d7da7/p/12345/d/5f650aba-f1f0-4069-a590-d2bcc6fcacdb/actuator/myActuator/state"
I am not sure if the problem is specific to ESP32 or not.  I hope the problem will get fixed soon.
Thanks,
Joseph

Have you increased the max message size setting in PubSubClient.h? The default is 128 which won't leave you much room if your topic is 109 chars.

Thanks for the quick response.  Yes, that was the problem.  Increasing it to 512 solves this and some other problems I have!


fix(help): workaround plugin/users overwritting tags

Previous solution
Most plugin managers run :helptags in the plugin, which silently
overwrites the existing doc/tags. this is an issue for us since lspconfig
is manipulating the tags file to point to servers_configurations.md
By renaming the tags file as tags-en :helptags won't overwrite it since
there's no lspconfig.enx help file. Now when :helptags is run in
lspconfig it will generate doc/tags missing the cherry picked tag, but
:help will always look (from my testing) into tags-en. So everything
should work well.

Most plugin managers run :helptags in the plugin, which silently
overwrites the existing doc/tags. this is an issue for us since lspconfig
is manipulating the tags file to point to servers_configurations.md
Instead create a markdown comment with the name of the wanted tag and
make a copy in the repository of servers_configurations.md to
server_configurations.txt. Now when :helptags runs it finds the txt file
and generates the appropriate tag.
The advantage is this solution should work in all platforms, it also
removes lines from docgen CI.
fixes #1507

@perrin4869 does this address your issue?

https://user-images.githubusercontent.com/9699804/143923766-089821e9-13a2-42a5-9877-f677124416a8.mp4
Quick video from barebones neovim, It gives an error message when going to the tag but still does it weirdly. Might be a blocker?

Maybe the txt solution but I hate it.

Duplicating the server config file is ugly but guaranteed to work with no errors. At the end of the day git is doing deduplication and in the filesystem it's a few kb.
We can also completely remove all the new logic in docgen. And since the file is automatically generated no worries on being out of date.

That's fine then. let's just do it.

Yeah this doesn't change the helptags anymore, but :help lspconfig-server-configurations doesn't seem to be available under this branch

Yeah this doesn't change the helptags anymore, but :help lspconfig-server-configurations doesn't seem to be available under this branch

Yeah, the txt file will be generated by CI  in the master bran once this is merged.


0.36 Nested Collections not stored in a separate Sub Index

Initial Checks

[X] I have read and followed the docs and still think this is a bug

Description
I have a document structure as per the docs given below. Until version 0.36, the nested fields "paths" were stored in separate collections with Qdrant. So with a collection name of "channel_category" for the parent doc, the paths would be stored in "channel_category__paths". With 0.36 the nested paths vectors and their collections are being held in the parent collection "channel_category" as separate records. Is this an intended change or a bug in how nested data is stored?

class MetaPathDoc(BaseDoc):
    path_id: str
    level: int
    text: str
    embedding: Optional[AnyTensor] = Field(
        space=similarity_space, dim=dim_size)

class MetaCategoryDoc(BaseDoc):
    node_id: Optional[str]
    node_name: Optional[str]
    name: Optional[str]
    product_type_definitions: Optional[str]
    leaf: bool
    paths: Optional[DocList[MetaPathDoc]]
    embedding: Optional[AnyTensor] = Field(
        space=similarity_space, dim=dim_size)
    channel: str
    lang: str

Example Code
I'm loading documents to QDrant via a Jina executor like this:
import os
import sys

import more_itertools
from docarray import DocList
from docarray.index import QdrantDocumentIndex
from utils.docs import MetaCategoryDoc
from jina import Executor, requests
from jina.logging.logger import JinaLogger
from qdrant_client.http import models

QDRANT_LOCATION = os.getenv('QDRANT_LOCATION', "http://localhost:6333")
QDRANT_API_KEY = os.getenv('QDRANT_API_KEY', None)

class MetaChannelCategoryIndexingExec(Executor):
    def __init__(self,
                 collection_name: str = "channel_category",
                 batch_size: str = 64,
                 qdrant_location: str = QDRANT_LOCATION,
                 qdrant_api_key: str = QDRANT_API_KEY,
                 *args, **kwargs):
        super().__init__(*args, **kwargs)

        self.logger = JinaLogger('meta_channel_category_indexing')

        db_config = QdrantDocumentIndex.DBConfig(
            location=qdrant_location,
            api_key=qdrant_api_key,
            collection_name=collection_name,
            quantization_config=models.ScalarQuantization(
                scalar=models.ScalarQuantizationConfig(
                    type=models.ScalarType.INT8,
                    quantile=0.99,
                    always_ram=False,
                )
            ),
            optimizers_config=models.OptimizersConfigDiff(
                memmap_threshold=20000, indexing_threshold=20000),
            on_disk_payload=True,
            hnsw_config=models.HnswConfigDiff(m=16,ef_construct=100,on_disk=True),
            wal_config=models.WalConfigDiff(
                wal_capacity_mb=64, wal_segments_ahead=1),
            prefer_grpc=False)

        self.doc_index = QdrantDocumentIndex[MetaCategoryDoc](db_config)
        self.batch_size = batch_size

    @requests(
        request_schema=DocList[MetaCategoryDoc],
        response_schema=DocList[MetaCategoryDoc]
    )
    def index_metadata(self, docs, **kwargs):
        """ Save products to the Vector DB.
        """
        for doc_batch in more_itertools.chunked(docs, self.batch_size):
            # Indexing the documents
            self.doc_index.index(
                doc_batch
            )

Python, Pydantic & OS Version
0.36.0

Affected Components

[X] Vector Database / Index
[X] Representing
[ ] Sending
[ ] storing
[ ] multi modal data type

Another issue is I have structures like the following. These contain multiple embeddings at the top level and also TermDoc has embeddings for each item in the list. It seems as if now it only works with multiple embeddings at the parent doc, or a single embedding with the parent and the nested embeddings but not both. It will give an error from QDrant saying "title_embedding" does not exist which I assume is because this isn't in the TermDoc in the same collection.
class ProductDoc(ProductCoreDoc):
...
terms: Optional[DocList[TermDoc]]
title_embedding: Optional[AnyTensor] = Field(
space=similarity_space, dim=dim_size)
description_embedding: Optional[AnyTensor] = Field(
space=similarity_space, dim=dim_size)
category_embedding: Optional[AnyTensor] = Field(
space=similarity_space, dim=dim_size)
embedding: Optional[AnyTensor] = Field(
space=similarity_space, dim=dim_size)

First of all,
Can you confirm that it did not work the same in 0.35.0?

Yes, if I downgrade to 0.35.0 I get this from Qdrant where the paths is created as a separate collection:
collections=[CollectionDescription(name='channel_category_nested'), ... CollectionDescription(name='channel_category_nested__paths')]

@kacperlukawski may be able to help here and give better insights.

I believe this issue is caused by #1705

@JoanFM thanks for this. I see a fix has been merged to main. I assume this will be in the next 0.37.0 release.

yes, u can also have it if u use the prerelease by pip install docarray --pre


Hide hidden files from sidebar

Oni Version: 0.3.6
Neovim Version (Linux only): v0.3.1-113-gda6874a7b
Operating System: Linux
Issue: Currently, all hidden files, including ones hidden by my global gitignore that git ls-files doesn't show, are being shown in the Explorer sidebar. Any thoughts on how to change that? I'm 100% happy if there's any configurable way to achieve this, even if it's not a simple option.

I think this relates to the discussions in #2217 and #2149.  Not adding any value here, just linking issues. :slightly_smiling_face:


Broken link error 404 at https://openmobilehub.github.io/android-omh-auth/advanced-docs/plugin-google-non-gms/README/

Checklist

[ ] I've checked the issues list and there's no issue created for this behavior
[x] I'm not asking for help in this section. Use our discussions section for that

Describe the bug
A clear and concise description of what the bug is.
**It returns a 404
https://openmobilehub.github.io/android-omh-auth/advanced-docs/plugin-google-non-gms/README
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on 'Here'
Scroll down to '....'
See error： 404

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Hi @Nataliagros it looks like the url in the markdown is missing something. Can someone from the team look into it? Thanks!

One suggestion. See this comment https://github.com/openmobilehub/android-omh-auth/pull/94#issuecomment-2278850317

@hwag2024 This one should be working. PTAL


Fix inline PowerShell to support multiple traceloggingconfig.h files from different WIL versions.

If there are multiple traceloggingconfig.h files from different package versions of WIL, then the script fails as it only expects there to be one traceloggingconfig.h file.
Instead, replace all of the files with the one from microsofttelemetry.h

/azp run

/azp run


fixing error code missing because of wrong error conversion

ECOPROJECT-1828
fixing error code missing because of wrong error conversion

/retest


CoffeeScript support

I wrote comments in coffeScript and compile it in JS. Then I try to run gulp-ngdocs with these compiled files. But CoffeeScript doesn't support non-standard comments.
So this expression
###
# @ngdoc directiverer
# @name rfx.directive:rAutogrow
###

is compiled into
/*
 * @ngdoc directiverer
 * @name rfx.directive:rAutogrow
 */

But in you there is no normal way to set two asterisks in the beginning
/**

@AlexanderKozhevin how 'bout this http://stackoverflow.com/a/9157241 ?

@miletsky , Thanx a lot!
NgDocs is a one more step in improvement my gulp production system.


added hint to llvm/clang

Hi there,
after building oxigraph in a fresh Debian VM I adjusted the README to hint at LLVM / clang as an implicit dependency, so others can save time (in a similar situation).
Cheers,
tpltnt

Thank you! Sorry for the time lost looking for this information.

No worries. I learned a thing so others don't have to. And there is an small improvement to oxigraph :)


Generate events for BigPanda

REST json interface for writing events into BigPanda
https://docs.bigpanda.io/docs/integrations/index.html?v=v2.8.0#alerts-rest-api
Add an option to generate events and hook up to BigPanda to generate interesting event stream scenarios when the simulated architecture does things.
Couldn't find a go library for creating the events, so first step is to build objects and an http writer.

Nice!
On Thu, Oct 1, 2015 at 9:50 PM Adrian Cockcroft<EMAIL_ADDRESS>wrote:

REST json interface for writing events into BigPanda
https://docs.bigpanda.io/docs/integrations/index.html?v=v2.8.0#alerts-rest-api
Add an option to generate events and hook up to BigPanda to generate
interesting event stream scenarios when the simulated architecture does
things.
Couldn't find a go library for creating the events, so first step is to
build objects and an http writer.
—
Reply to this email directly or view it on GitHub
https://github.com/adrianco/spigo/issues/55.