Re: NostoClient interface missing from v2 package dist

Hello Nosto Dev Team!
As the title states we just upgraded to v2 and lost typing for our analytics code that records attributes.
Also both in v2 and v3 the .recordAttribution method returns an object rather than a representation of the actual object returned.
For now we've added a return type ourselves as below, copied from the nosto lib.
interface Attribution {
  recordAttribution: (event: Event) => Attribution
  dumpData: () => EventTuple[]
  done: () => Promise<void>
}

 const VIEW_PRODUCT = "vp"
 const LIKE_PRODUCT = "lp"
 const DISLIKE_PRODUCT = "dp"
 const REMOVE_PRODUCT = "rp"
 const BOUGHT_PRODUCT = "bp"
 const VIEW_CATEGORY = "vc"
 const ORDER = "or"
 const INTERNAL_SEARCH = "is"
 const ADD_TO_CART = "cp"
 const EXTERNAL_CAMPAIGN = "ec"
 const EXTERNAL_SEARCH = "es"
 const GIVE_COUPON = "gc"
 const SOURCE = "src"
 const CART_POPUP_RECOMMENDATIONS = "cpr"
 const PAGE_LOAD = "pl"
 const CUSTOM_CAMPAIGN = "cc"
 const CONTENT_CAMPAIGN = "con"

const eventTypes = [
  VIEW_PRODUCT,
  LIKE_PRODUCT,
  DISLIKE_PRODUCT,
  REMOVE_PRODUCT,
  BOUGHT_PRODUCT,
  VIEW_CATEGORY,
  ORDER,
  INTERNAL_SEARCH,
  ADD_TO_CART,
  EXTERNAL_CAMPAIGN,
  EXTERNAL_SEARCH,
  GIVE_COUPON,
  SOURCE,
  CART_POPUP_RECOMMENDATIONS,
  PAGE_LOAD,
  CUSTOM_CAMPAIGN,
  CONTENT_CAMPAIGN,
] as const

type EventType = (typeof eventTypes)[number]

type EventRefType = (typeof refTypes)[number]

const TRIGGERED_MAIL = "email"
const EMAIL_WIDGET = "imgrec"
const ONSITE_RECOMMENDATIONS = "rec"
const API_RECOMMENDATIONS = "api"
const ONSITE_CAMPAIGNS = "oc"
const CATEGORY_MERCHANDISING = "cmp"
const ONSITE_SEARCH = "os"

const refTypes = [
  TRIGGERED_MAIL,
  EMAIL_WIDGET,
  ONSITE_RECOMMENDATIONS,
  API_RECOMMENDATIONS,
  ONSITE_CAMPAIGNS,
  CATEGORY_MERCHANDISING,
  ONSITE_SEARCH,
] as const

type EventTuple = [
  type: EventType,
  target?: string,
  ref?: string,
  refSrc?: string,
  targetFragment?: string,
  refType?: EventRefType
]

Many thanks

Thanks for the bug report and apologies for the delayed answer. I'll adjust the type declarations accordingly.

@Dashue There is now a dedicated module for nostojs typing available. Does that satisfy your needs?


Need Help - IonTabs - default selected tab (as part of Route) is not selected

Need help here:
https://ionicsvelte.firebaseapp.com/components/tabs/blabla
Should select tab - blabla as starting point, but the select method on IonTabBar does not yield results
https://github.com/Tommertom/svelte-ionic-app/blob/master/src/lib/ionic/svelte/components/IonTab.svelte

Fixed with workaround - known issue with Ionic https://github.com/ionic-team/ionic-framework/issues/20060


Update scripts to handle geo_groups

Description

Updates generate-misc-state-data to create entries in
geo_groups.json for any authorities of type "other", with empty
lists to be filled in by the engineer.
A couple of wrinkles: the standardizer that gets created in this
script has empty value mappings, which means the check for authority
type has to look for the spreadsheet string Other rather than the
standardized other. I don't know why the value mappings are empty
in this case, but looking for the unstandardized value feels wrong.
The standardizer is also created in strict mode, which means it
errors out because there are extra columns in the CO and VT
spreadsheets now ("description character count"/"description word
count" and "questions / comments" respectively). I had to turn off
strict mode to test the changes.

Updates spreadsheet standardizer to add eligible_geo_group to any
incentive with authority_type other.

The intended workflow, starting from initial state translation, is:

The "geographic eligibility" column in the sheet is filled with
free text describing the criterion (or it's absent).

Run generate-misc-state-data, which will generate an entry in
geo_groups.json for every authority with an "other"-type incentive.

Edit geo_groups.json manually, to define what those groups are,
based on the free text in the sheet and/or manual research.

If customization is needed -- such as if one "other"-type authority
doesn't have the same geo eligibility for all their incentives --
define the necessary geo groups manually, and update the
spreadsheet to put the appropriate geo group ID in the "Geographic
Eligibility" column of each incentive where it's necessary.

Run spreadsheet-to-json. It will use the value of "Geographic
Eligibility" as the eligible_geo_group if it looks like a geo
group ID, or mechanically derive it from the authority name (the
same way as in step 2) otherwise.

Test Plan
Go through the above workflow with CO. (Although, as noted, I had to
turn off strict mode in step 2; I also had to comment out updating the
programs files since I'm doing this without #338.)

Thanks for doing this. I fixed the strict mode issue in https://github.com/rewiringamerica/api.rewiringamerica.org/pull/338 and the programs update is merged now, so hopefully a bit less painful going forward.
Re: VALUE_MAPPINGS, feel free to add them. Up until now, the program/authority updater has only needed to standardize column names since the values in authority and program columns are free strings. This is the first case where a field value is load-bearing for the class, so makes sense to standardize those too going forward.


soft delete is no longer a recognized parameter

please update the following
az keyvault create -n myKeyVaultName -g myResourceGroup -l myAzureRegionName  --enable-purge-protection true --enable-soft-delete true
remove  --enable-soft-delete true
the text of the article where soft delete is mentioned needs to be revised as well.
re:  https://learn.microsoft.com/en-us/azure/key-vault/general/soft-delete-change

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: cb36087b-eaa6-ae3b-b3bb-6cb58268c3b9
Version Independent ID: 2567f115-766c-f94f-7696-eb3bb94ba480
Content: Use a customer-managed key to encrypt Azure disks in Azure Kubernetes Service (AKS) - Azure Kubernetes Service
Content Source: articles/aks/azure-disk-customer-managed-keys.md
Service: container-service
GitHub Login: @MGoedtel
Microsoft Alias: magoedte

@RaymondHallquist
Thanks for your feedback! We will investigate and update as appropriate.

@RaymondHallquist
Thanks for reporting this! We have created a PR for this issue and the changes should go live soon.


Update failed - Step "Wait for backup complete" failed - UndefinedError: 'pending_update_list' is undefined**

Hello, unfortunately I have had the problem for months that this blueprint does not work for me.
I have reimported the BluePrint and also changed the settings (created a new automation), but unfortunately this has not changed anything.
With one step I always get:
Error: In 'template' condition: UndefinedError: 'pending_update_list' is undefined
From Systemlog:
``Logger: homeassistant.components.automation.xsystem_automatisches_update_system
Quelle: components/automation/init.py:776
Integration: Automatisierung (Dokumentation, Probleme)
Erstmals aufgetreten: 05:00:51 (1 Vorkommnisse)
Zuletzt protokolliert: 05:00:51
Error while executing automation automation.xsystem_automatisches_update_system: In 'template' condition: UndefinedError: 'pending_update_list' is undefined`
`Logger: homeassistant.components.automation.xsystem_automatisches_update_system
Quelle: helpers/script.py:2026
Integration: Automatisierung (Dokumentation, Probleme)
Erstmals aufgetreten: 05:00:51 (4 Vorkommnisse)
Zuletzt protokolliert: 05:00:51
xSYSTEM - Automatisches Update System: Backup: If at step 3: If at step 3: Error executing script. Error for wait_template at pos 1: In 'template' condition: UndefinedError: 'pending_update_list' is undefined
xSYSTEM - Automatisches Update System: Backup: If at step 3: Error executing script. Error for if at pos 3: In 'template' condition: UndefinedError: 'pending_update_list' is undefined
xSYSTEM - Automatisches Update System: Backup: Error executing script. Error for if at pos 3: In 'template' condition: UndefinedError: 'pending_update_list' is undefined
xSYSTEM - Automatisches Update System: Error executing script. Error for if at pos 8: In 'template' condition: UndefinedError: 'pending_update_list' is undefined`
And the entire script aborts. I have deliberately not installed the latest HA version as I still need something to test. I usually keep my versions up to date manually, but this time I didn't do it because I want to tackle the problem with the AutoUpdate.
Here is my current starting situation. If any information is missing, please let me know.

Here the code:
alias: xSYSTEM - Automatisches Update System description: "" use_blueprint:   path: edwardtfn/auto_update_scheduled.yaml   input:     schedule_entity: schedule.automatisches_update_zeitfenster     actions_pre_restart:       - metadata: {}         data:           title: HA Reboot           message: Das System wird aufgrund von Updates {{ updates_list }} rebootet         action: notify.mail_chris     actions_pos_update:       - metadata: {}         data:           title: HA Update complete           message: >-             Der automatische Updateprozess ist durchgelalufen. Bitte prüfen ob             alles läuft. Geupdated wurde: {{ updates_list }}         action: notify.mail_chris     restart_type: core     verbose_logging_bool: true
Pending Updates:

I would be very happy if the problem can be solved. Since the error looks to me like it comes from the blueprint, I unfortunately need a little help here. Many thanks in advance!

I believe that is fixed now. Could you please reload the blueprint and try again?

I believe that is fixed now. Could you please reload the blueprint and try again?

Oh, that was fast. Sorry, I didn't expect you to fix the error so quickly. I did a re-import but currently have no more updates open as I installed them yesterday. But the next update should be released in the next few days. I'll test it then and get back to you, I promise.

Good Morning,
So this morning two update processes started automatically in the scheduled time window:
The first one updated ESPHome and Zigbee. This also worked technically, but unfortunately update_list does not seem to be output. Here are two screens, one shows the output and the other the config in the BP.

Then the update process started again, this time the mail output was correct, but it was not updated:

What data / traces do you still need for further analysis?
But thank you very much for your work. If the notifications work properly now, I'll be happy. I already know that the ESP firmwares don't run through, or should that actually work too?

I will take a look... I've never used the post-update myself, so I will try that. Probably the variable is being update during the update, so it is complete on pre-update (where I'm using) but not at the post-update.

I believe that is fixed now. And I've created a new var pending_updates_list which will contain at any point the items pending updates (due to a failure?).

HA v2024.10.0 will come later today. 😉

HA v2024.10.0 will come later today. 😉

Great, then we'll have the next real test tomorrow.

Good morning,
The current situation is as follows:
Yesterday (as you announced) the new core release was published.
The core update was also installed automatically this morning, but the output is incorrect:
I have not received a message about the core installation. Below you can see how I was shown that only the Alexa update was installed.

Which is unfortunately wrong. Yes, there is a new update, but it has not been installed.

Systemlog ist clean.
do you need more information ?
unfortunately i don't know the best way to make the whole trace available to you. if that helps you, please tell me the best way to do it.

The challenge is about using the post-update message. It will work fine for updated that won't restart HA, but when an update restarts it automatically, the script is interrupted before the message is sent, then when it restarts that update is not in the list anymore.
Have you considered sending the message in the pre-update, then use the post-update only for the pending_updates_list to inform whatever failed?

OK, I'll try, but of course it won't be as “beautiful”. I'll report back tomorrow on how the Alexa update has performed.
But I still have two questions:

why has the Alexa update not been installed? The time window was not exhausted.
why am I not getting this message?

why has the Alexa update not been installed?

Looks like something is broken with that integration: https://community.home-assistant.io/t/psa-alexa-media-player-v4-13-3-breaks-all-versions-of-home-assistant/778171
I would suggest you pausing its update until HA v2024.10.1 is out.

2. why am I not getting this message?

updates_list is a list, while that field expects a string.
Please try this:
message: 'Your custom message {{ updates_list | join(", ") }}'

why has the Alexa update not been installed?

Looks like something is broken with that integration: https://community.home-assistant.io/t/psa-alexa-media-player-v4-13-3-breaks-all-versions-of-home-assistant/778171 I would suggest you pausing its update until HA v2024.10.1 is out.

Thanks for the info, I have clicked on skip update. It would be annoying if it didn't work again, I was disturbed long enough ;-)

why am I not getting this message?

updates_list is a list, while that field expects a string.
Please try this:
message: 'Your custom message {{ updates_list | join(", ") }}'

OK, I have made an adjustment. We'll see more next time. Thank you !
I'll get back to you when there's something new

There is a little news, today the update of Battery Notes has been executed.  :-) :-)
I have followed your advice and will now be informed in advance:

But unfortunately I did not receive a reboot message again. Set up as follows:

The system log is clean and the traces show no errors. I'm just not quite sure which is the part for the reboot notification.

I'm just not quite sure which is the part for the reboot notification.

Home Assistant updated will behave in one of the 3 ways:

Update with no need to reboot
Update with "pending reboot" - The update will be completed during the next reboot
Update with automatic reboot (most of the core updates, like HA core, supervisor, OS, etc.).

For 1, no "Pre-restart actions" will be executed, those will be executed only when an update of type 2 is pending restart and you select in your blueprint to force the restart.
However, the updates of type 3 will reboot automatically and we don't have control of that, so most likely that will stop the blueprint abruptly and no further (or pending) actions will be executed, bypassing the Pre-restart actions.

OK, thanks for the clarification. Then I would say the issue is closed. The main thing that works now is that the updates are carried out. And I can also live with the notification in advance.
So thank you very much for your time and your work.  👍

@edwardtfn -
Hello, unfortunately I have to get in touch again.
The update has not been working for days, but when I look at the trace I can't find any errors, the script runs without errors according to the trace.
In the system logs no error is recognizable for me.
What data can I provide or where can I look to find the error?
Here are two more of my mail notifications, where you can also see that the script ran, but did not install anything.

Here is the current status. Unfortunately unchanged.

I will now start the update process by hand, please let me know if you want me to pull a new version from git to test.

Unfortunately I haven't had a chance to look at this yet. It was a quite busy week, but I will try to find some time this weekend and come back to you.

Unfortunately I haven't had a chance to look at this yet. It was a quite busy week, but I will try to find some time this weekend and come back to you.

Thanks for the feedback, I'll update manually again until I hear something new from you. It's really strange that it's not working again.

Unfortunately I haven't had a chance to look at this yet. It was a quite busy week, but I will try to find some time this weekend and come back to you.

Hi, have you the time to take a closer look? Do you need any more data from me ?

Unfortunately I haven't had a chance to look at this yet. It was a quite busy week, but I will try to find some time this weekend and come back to you.

Hi @edwardtfn, have you the time to take a closer look? Do you need any more data from me ?

Today I'm quite happy that the automatic update didn't work ;-)
But do you have any idea when you have time for bugfixing ?


posts images is broken next time I log in

It's not reproducible 100%. I just know, that I posted an image, and the next day I logged in, the image is broken.

how to reproduce?

idk, add an image, come back a while later, image is broken. you can see for user nbui3, password same as username.


Utah Broadband Center Support (FY24 Q4)

Benefit
As the GOEO Broadband Center navigates the processes for distributing federal funds for expanding broadband service in Utah, they require and request technical analysis and mapping of a variety of data to adhere to defined federal and state processes, and that the funds are distributed properly. UGRC provides these technical analytical services.
Acceptance Criteria
Provide results within timelines sought by the GOEO Broadband Center. Specific tasks will be determined and described within sprint-level comments.
Notes
No response
Risks

lack of clarity of requirements
short deadlines/turnaround times
interruption of other PI objectives

Issue Reference
refs #

Sprint 2 Notes

Jake matched records with the fabric and returned a csv

Beehive expanded their footprint of addresses to be served with the BAG grant.  We need the addresses converted to Fabric BSL I.D. to add to our Challenge map as an enforceable commitment.

Sprint 6
From Steve Greene:

We need to get this map updated with the lates BAG grant information. Specifically HiCountry Net's updated proposal. The map shows phase 1 and 2 but they have increased phase 1 locations as well as added phase 4 locations. I have included a spread sheet of the updated information and was hoping to get it added to the map.
It looks like Direct Communications has already been added.

https://docs.google.com/spreadsheets/d/1yxj25yZc2rOUuWZ9MQlNZ_Kz9msy7vLO/edit#gid=1092794634


run 'ious' get an error

❓ Questions & Help
hi, i run the 'dgcnn_segmentation' for a test, but get:
"ious=[[ ] for _ in range(loader.dataset.categories)]
TypeError: 'list' object cannot be interpreted as an integer"
can you help me?

Are you running the latest PyTorch Geometric version?

Are you running the latest PyTorch Geometric version?

i run with 1.3.0, not 1.3.1, should i update to 1.3.1??

Yes, I believe the ShapeNet dataset changed slightly recently.


CSSGridLayout - Lazy loading

Required to support the changes of https://github.com/grafana/grafana/pull/79397, uses the same LazyLoader as the existing SceneGridLayout.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


bad comment line break in librustc_trans/trans/consts.rs

I found this snippet in https://github.com/rust-lang/rust/blob/master/src/librustc_trans/trans/consts.rs#L122-L123
fn addr_of_mut(ccx: &CrateContext, cv: ValueRef, align: machine::llalign, kind: &str) -> ValueRef {
    unsafe {
        // FIXME: this totally needs a better name generation scheme, perhaps a simple global
        // counter? Also most other uses of gensym in trans.
    }
}

It gets reformatted to
fn addr_of_mut(ccx: &CrateContext, cv: ValueRef, align: machine::llalign, kind: &str) -> ValueRef {
    unsafe {
        // FIXME: this totally needs a better name generation scheme, perhaps a simple
        // global
        // counter? Also most other uses of gensym in trans.
    }
}

which is totally wrong. Either it needs to work with the comment in the next line, or, what I would have expected, leave it be, since it hasn't hit the 100 char line length limit.

That's not very good.. I'm afraid some choices will have to be made when it comes to comment formatting. A bit more here: https://github.com/nrc/rustfmt/pull/505#issuecomment-149651970.

Oh and we broke the line because we try to keep comments within 80 characters per line, excluding indentation.

Perhaps we should only use the shorter width when there is no indentation? The intention is that large blocks of text comments don't end up too wide, but short inline comments like this could be extended to 100.
I think that if we are breaking comments, we should aim to do proper word-wrapping. That is harder than it sounds, but not impossible.

More: https://github.com/rust-lang/rust/commit/2bcf540df085c67df4433de215c3283c813372a5
I think we should turn off line breaking until we have a proper word-wrap algorithm implemented, it looks pretty bad.

Triage: this is fixed, closing.


Development

closes #47
icon component with examples of usage
p.s. don't delete development branch after merging :upside_down_face:

Super 🎉
Thanks @mar-bi
I've gone ahead and protected the development branch from the settings so we can't accidentally delete it anymore, I guess we'll soon find out if it interferes with anything.


use enumerable: false for temporary no-longer-exists getters

There are a few objects in the codebase with getters that give more helpful errors messages that describe what features have replaced these removed/renamed features. However, these getters are also triggered when doing an object { ...spread }, which isn't very helpful. This updates these to use Object.definedProperties so that we may specify enumerable: false on these getters.
Please don't delete this checklist! Before submitting the PR, please make sure you do the following:

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[x] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[x] Run the tests with pnpm test and lint the project with pnpm lint and pnpm check

Changesets

[x] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpm changeset and following the prompts. All changesets should be patch until SvelteKit 1.0

this is to provide a load wrapper with a fetch that provides a base URL? that sounds handy and like something I would use and I've seen other people ask for. what do you think about adding that to the FAQ?

@benmccann for fetch specifically, the intent was to let server-only load functions use the same fetch as shared load functions, so that specific case would no longer be necessary.
There are other times it would be useful to do this, but right now we're stymied by url being a getter: https://github.com/sveltejs/kit/blob/b335f38a35acb3be2408f23cde27eb4a34e1ffda/packages/kit/src/runtime/client/client.js#L536-L539
In #6056 I plan to replace that with a TrackedURL object that only triggers the dependency tracking on accessing things like pathname and toString (not origin or hostname, because those can't change), instead of url itself.
(parent is too, but it actually doesn't need to be — we only need to care about invocation, not access.)
There's also event.clientAddress, which I think we'll need to change to event.getClientAddress() so that we can promote patterns that use object spread (and also use it ourselves).


Rename SedProcessor

Let's discuss this. A possible alternative would be Processor

We were discussing this today. And think a good name would be PESWorkflow or something similar. Since the processor.py module currently is a workflow manager for PES experiments, and is not general enough for all single event dataframes.
So the suggestion is to have core contain only core necessities for SED and PESWorkflow as a derivative of it.
We already have another user interested in adoption this code for their case. I think a discussion will happen sometime mid feb (Dima will write to us).

duplicate of #184

obsolete


Implement "Go to Top" Button

As part of enhancing user experience on our website, we'd like to implement a "Go to Top" button. This button will provide users with a convenient way to quickly scroll to the top of the page, especially on longer pages.
Add Button in HTML: Integrate the "Go to Top" button at the bottom of our web pages.
Update the HTML file to include the button.
Ensure the button is styled appropriately for a clean and user-friendly appearance.
CSS Styling: Apply styles to the button for a visually appealing look.
JavaScript Functionality:
Write JavaScript functions to handle scrolling to the top smoothly.
Display the button dynamically based on the user's scroll position.
Testing:
Test the "Go to Top" button on various browsers to ensure consistent behaviour.
Verify that the button appears when scrolling down and smoothly scrolls to the top when clicked.

@Spandan-Bhattacharya assign me this issue under JWOC

Go for it! @rahat2134


Prefix all entities with nostr:

It's a small config in nostr-editor extensions, just extend renderText to add nostr: in front of nevent, naddr, nprofile.
If we expect those entities to always be prefixed by nostr:it might be worth a PR on nostr-editor

#490


docs: add operator documentation

Fixes #3305
Future Work

[ ] Document when operators are enabled/disabled
[ ] Add annotations
[ ] Document operator implementation
[ ] Document where operators are used: client, server, both.
[x] Add priority
[ ] Check parameter descriptions

Thanks for working on this!
IMHO we should differentiate between global & instance parameters in the docs as well. Maybe we should even add the fully qualified name of the instance parameters so that they're easy to copy/paste - like operators.sort.sort.

Maybe we should even add the fully qualified name of the instance parameters so that they're easy to copy/paste - like operators.sort.sort.

Added them. I hope I didn't messed around with some of them.

Not right now, but I think we should add that as an option.

ok, let's document that when we implement this support.

Having the complete operator doc together on one page is another advantage of that, then 😄

That's a good discussion. I think combining all the documentation on the same page is good for maintaining purposes and for avoiding duplication, however I think it'll become too complex for folks that only want to understand what an operator does and don't care about its implementation. In any case, I'd like not to block this PR on that discussion.

My concern about providing that documentation here is that it'll be too much information for users. Going a step back, I've envisioned the documentation to be focused in three different targets:

gadget users: Folks that want to run gadgets
gadget developers: Folks that want to create gadgets
Inspektor Gadget developers: Folks that develop the framework of Inspektor Gadget

The reference documentation is only oriented for "gadget users", and the gadget development one for "gadget developers". In order to document operators we have two options:
1. Split the documentation for different targets (Idea on this PR)
This PR is only covering the operators documentation for "gadget users". For gadget developers we have the information spread around on https://inspektor-gadget.io/docs/latest/gadget-devel/gadget-ebpf-api and https://inspektor-gadget.io/docs/latest/gadget-devel/metrics and we don't have anything for "Inspektor Gadget developers". Probably we should create a new operators page under the gadget developer to provide developer-specific details, like annotations, types, etc.
2. Provide the full documentation of the operator on the same page
We could divide that on introduction, parameters, and developer specific things like annotations, types, etc and then we could also have architecture and more advance topics for "Inspektor Gadget developers".
I think keeping the documentation separated will help readers, even if that will complicate the life for us as things will be spread around. Any opinions on this one?

The reference documentation is only oriented for "gadget users", and the gadget development one for "gadget developers".

Mmmmm if your idea is that reference documentation is only oriented for "gadget users", then I think we shouldn't put operators' documentation there.  IMO, the Running Gatgets is already enough: it describes the filtering, output modes + fields and other special flags like timeout (Maybe here we are missing here the --map-fetch-*).

My concern about providing that documentation here is that it'll be too much information for users.

Now that you said that reference documentation is only oriented for "gadget users", I understand why you're saying that. It's indeed too much info. But, IMO, as I said above, describing operators here is already too much. I just checked, and there is no one reference to operators in the whole folder docs/reference.
BTW, we need to specify somewhere (maybe in the README) that:

Documentation for "Gadget users" is in docs/reference
Documentation for "Gadget developers" is in docs/gadget-devel
Documentation for "Inspektor Gadget developers" is in docs/development (?)

In order to document operators we have two options:

My proposal:

"Gadget users" (docs/reference): No specific reference or info of operators, just what is written in the README.
"Gadget developers" (docs/gadget-devel): The content of this PR + annotations.
"Inspektor Gadget developers" (docs/development or wherever it will go): Description of methods implemented by operators (PreStart, Start, etc.), what should be done on each stage, which operators runs on server and/or client, etc. Then, all this info is referenced from an architecture doc where we have a diagram showing which methods are called for gRPC calls, e.g., for GetGadgetInfo we instantiate operators and call ExtraParams, while for Run we do the same + call PreStart and Start.

Mmmmm if your idea is that reference documentation is only oriented for "gadget users", then I think we shouldn't put operators' documentation there.

I think it's not bad to document the operators here. They are a key component of the whole architecture and users interact with them by using the flags. If we don't document them here, where can we put the flags that operators provide?

BTW, we need to specify somewhere (maybe in the README) that:

Let's discuss this documentation separation with the team to be sure we're all aligned on that.

Mmmmm if your idea is that reference documentation is only oriented for "gadget users", then I think we shouldn't put operators' documentation there.

I think it's not bad to document the operators here. They are a key component of the whole architecture and users interact with them by using the flags.

Do the users need to know they are interacting with the operators? Isn't it enough to know what flags they can use with an example?

If we don't document them here, where can we put the flags that operators provide?

We are already describing them in the different guides:

Running Gadgets describes how to use the flags provided by cli (output mode and fields) and localmanager/kubemanager (for filtering) operators.
Insecure Registries, Restricting Gadgets, Verifying Assets, etc., describe the flags provided by the oci operator.
ig describes the flags provided by the localmanager operator specifically for ig, like enrich-with-k8s-apiserver. BTW, I noticed we are missing the ones related to the runtime: runtime, runtimeprotocol, the ones for the socket path, etc. But as we have discussed several times, that doc needs to be refactored.

In general, I prefer presenting flags to "gadget users" in a feature-oriented way, instead of listing the flags per operator. Instead, for "gadget developers" and "IG developers", I definitely want to have documentation for each operator and all the flags, annotations, etc., it offers.
Of course, that's my preference. Let's try to understand together what's the most clear way we can present all this for different users 🙂.

After thinking more about it, I decided to move the whole operators documentation to spec/. I'm not sure we should be exposing this concept in that a direct way to users, instead we can mention the functionality operators provide without explicitly mentioning the operator (as we're already doing and as it was mentioned in https://github.com/inspektor-gadget/inspektor-gadget/pull/3406#issuecomment-2317107437).
Hence, I think it's fine to add much more details to the documentation of operators, like annotations, implementation, etc. I added a bunch to TODOs to be handled later on.

Thanks a lot all for the reviews. Since I got a lot of help, I added your signoffs to the commit with the documentation.
There are still some TODOs, but I'd rather merge it now instead of keep iterating forever.


TypeError when "requestJoin" turns false

Using the colyseus-examples, with those changes:
import { Room } from "colyseus";

export class ChatRoom extends Room {

    onInit (options) {
        this.setState({ messages: [] });
        console.log("ChatRoom created!", options);
    }

+    requestJoin(options) {
+       const canJoin = this.clients.length < 2;
+      console.log('can join', canJoin, this.clients.length );
+      return canJoin;
+    }

    onJoin (client) {
        this.state.messages.push(`${ client.id } joined.`);
    }

    onLeave (client) {
        this.state.messages.push(`${ client.id } left.`);
    }

    onMessage (client, data) {
        this.state.messages.push(data.message);
        console.log("ChatRoom:", client.id, data);
    }

    onDispose () {
        console.log("Dispose ChatRoom");
    }

}

I get:
ChatRoom created! {}
can join true 0
can join true 1
process 6992 is responding to REQUEST_JOIN_ROOM
can join true 1
can join false 2
process 6992 is responding to REQUEST_JOIN_ROOM
/src/colyseus-examples/node_modules/colyseus/lib/cluster/Worker.js:100
                process.send([matchMakingPid, joinOptions.clientId, process.pid, room_1.roomId$ score_1]);
                                                                                ^

TypeError: Cannot read property 'roomId' of undefined
    at /src/colyseus-examples/node_modules/colyseus/lib/cluster/Worker.js:100:88
    at Object.6992:6 (/src/colyseus-examples/node_modules/colyseus/lib/cluster/Worker.js:124:9$
    at Store.consume (/src/colyseus-examples/node_modules/memshared/lib/Store.js:25:47)
    at process.workerHandleIncomingMessage (/src/colyseus-examples/node_modules/memshared/lib/$ndex.js:31:19)
    at emitTwo (events.js:130:20)
    at process.emit (events.js:213:7)
    at handleMessage (internal/child_process.js:753:14)
    at Pipe.channel.onread (internal/child_process.js:472:11)
worker 6986 died. Respawn.
/src/colyseus-examples/node_modules/colyseus/lib/ClusterServer.js:47
                worker.send([Protocol_1.Protocol.PASS_WEBSOCKET, {
                      ^

What should be the expected behavior?

I also experience this issue when the first Room is full and returns false for requestJoin and then someone else attempts to join.

wow, thanks for the inputs, there must be a problem scheduling clients to the worker.

Thanks @oyed @Federkun
Last version is 0.5.4 with this fix.

Just updated to try it out - now instead of erroring it just hangs, Clients can connect to the server but joining a room is hanging. (This is after the first room is filled and returns false)

Thanks for your work @endel, it works for me.
@oyed can you provide a PoC?

requestJoin:
/**
 * Should return whether an instance of this Room can be joined by a new
 * Player. This is where matchmaking and ranking should happen.
 *
 * @param {Object} options
 *
 * @return {Boolean|Number}
 */
requestJoin(options) {
    return this.clients.length < this.options.maxPlayers;
}

Everything Client-side is standard colyseus.js. maxPlayers is 2.

Start the Server
Joining the Room in Chrome (Works)
Joining the Room in Safari (Works)
Now that requestJoin is false, trying to join the room in FireFox/Incognito Chrome hangs
Any communication between already connected clients also hangs/stops (But they do not disconnect)

@oyed that's really odd, will try to reproduce here.

Hey @oyed! I've tried exactly what you described but still couldn't reproduce. Do you mind sharing a minimal project on GitHub that breaks for you? Cheers!

@endel Could you DM me your email via Twitter?


fix: properly parse rabbitmq prefetch

Reason for This PR
closes: https://github.com/roadrunner-server/roadrunner/issues/1197
Description of Changes

Previously, prefetch was used as an int, but RR receives it as a string via RPC.

License Acceptance
By submitting this pull request, I confirm that my contribution is made under
the terms of the MIT license.
PR Checklist
[Author TODO: Meet these criteria.]
[Reviewer TODO: Verify that these criteria are met. Request changes if not]

[ ] All commits in this PR are signed (git commit -s).
[ ] The reason for this PR is clearly provided (issue no. or explanation).
[ ] The description of changes is clear and encompassing.
[ ] Any required documentation changes (code and docs) are included in this PR.
[ ] Any user-facing changes are mentioned in CHANGELOG.md.
[ ] All added/changed functionality is tested.


Json adaptation

Describe your changes
Extend model generator to support json files as input
Issue ticket number and link
Checklist before requesting a review

[ ] I have performed a self-review of my code
[ ] If it is a core feature, I have added thorough tests.
[ ] Do we need to implement analytics?
[ ] Will this be part of a product update? If yes, please write one phrase about this update.

@BjoernAtBosch you probably need to create your own branch from the SDV org. Copy&Paste the changed files manually and create a commit with your account to have a working eca check

Closed as Marko not yet has contributor state


Use worker to compile files?

Snowpack is using worker to perform the babel transformation. I don't think it's a heavy process and that worker/thread would make a big difference but it's worth a try
https://github.com/snowpackjs/snowpack/blob/b34b011a68b746c5e738cfe039b90a7ede23500b/plugins/plugin-babel/plugin.js#L28

To keep in mind

https://www.npmjs.com/package/workerpool
https://www.npmjs.com/package/node-worker-threads-pool
https://gist.github.com/dmail/eb7cd22fd5afb200313f1f00fd7fd064

So I mad a package @jsenv/workers to understand how it works and so on.
Then I tested how worker threads performs during babel transformation and stuff like that.
Basically they are bad because babel transformation is about transforming many little files and involves more input/output power (sending the file to transform and receiving the transformed file) than CPU power.
See https://github.com/jsenv/workers/blob/main/script/performance/babel_transform/transform_worker.mjs.
One last thing to try however would be transfer in and out the file using buffers as second parameter to postMessage instead of strings.

Investigated and here is the thing: worker threads won't help.
There is no CPU intensive operation in jsenv, only small concurrent things to do.
Starting 2,3,4 servers using the cluster module is the thing to do.
It will be tracked in https://github.com/jsenv/jsenv-core/issues/208 because once we have the cluster in place, we have a process controlling child process and able to restart server when file changes.


Add --dry-run option

Pelican Service:

[x] Client

Is your feature request related to a problem? Please describe.
With the ever increasing number of utilities out there for copying files, directories, and objects — e.g., cp, rsync, rclone, unison, aws, s3cmd, mc, and now pelican — comes an ever increasing number of variations on how paths on the command-line are interpreted: Is a trailing / significant? Is it the directory itself or the contents of the directory that get copied? Etc.
Describe the solution you'd like
Add a --dry-run option to object get, object put, and object sync, the idea being to display what would be copied from the source and to where at the destination, without actually modifying the destination.
Additional context
Imagine a scenario where thousands or millions of objects need to be copied, especially to an origin where one has limited or no ability to "clean up" objects that got placed at the wrong path.

For a small taste of command-line arguments can be interpreted, I've catalogued cp vs. rsync vs. rclone vs. aws: https://github.com/PelicanPlatform/pelican/issues/1616#issuecomment-2397821942.


add Guarda

A suggestion to add Guarda Wallet to the list of Light Wallets, they allow you to view the TX Key and the address import is free.

Is guarda updated for v0.18 hard fork?

Yes, Guarda is updated for v0.18.

@bchrvl
Are you sure?
It appears that none of the Mymonero wallets are working.

Yes, Guarda is updated for v0.18.

@bchrvl
Are you sure? It appears that none of the Mymonero wallets are working.

I am sure that they have updated however there are problems after this update which they are currently trying to resolve.

@nahuhh @erciccione, Would you be able to connect me to someone from the Monero team? We require some help with API. More precisely, looking for API docs describing methods, params/ parameter types, and the workflow (like the sequence of methods request). Also, where do we obtain the API keys to interact with the blockchain?

@nahuhh @erciccione, Would you be able to connect me to someone from the Monero team? We require some help with API. More precisely, looking for API docs describing methods, params/ parameter types, and the workflow (like the sequence of methods request). Also, where do we obtain the API keys to interact with the blockchain?

I don't know which API are you talking about but if you want to contact with team check here.


Error with 2 or more players with playlists

Hello.
If you create a number (2 ore more) of players with different playlists you can't properly change tracks.
Only one playlist works, others are linked to it.
That's because of joint 'videos' object.
Could you please divide scopes along different player instances.

I've made pull-request

Thank you for the pull request.
Merged


Chaining multiple filters together

I am trying to chain 3 different filters (brightness,contrast and saturation) together. Actually the goal is to have three UISliders that change these three values and apply them on an image. My code does not seem to work though.
I use this code for all the UISlider Actions:

(IBAction)brightnessSlider:(UISlider *)sender {
brightnessValue = sender.value;
UIImage *inputImage = [UIImage<EMAIL_ADDRESS>GPUImagePicture *stillImageSource = [[GPUImagePicture alloc] initWithImage:inputImage];
[brightnessFilter setBrightness:brightnessValue];
[contrastFilter setContrast:contrastValue];
[saturationFilter setSaturation:saturationValue];
[brightnessFilter addTarget:contrastFilter];
[contrastFilter addTarget:saturationFilter];
[stillImageSource addTarget:brightnessFilter];
[brightnessFilter useNextFrameForImageCapture];
[stillImageSource processImage];
UIImage *currentFilteredVideoFrame = [stillImageSource imageFromCurrentFramebuffer];
brightnessOutput = currentFilteredVideoFrame;
imageView.image = currentFilteredVideoFrame;
}

Depending on how you set up your filter chain, you should not need to reset your image or pull a frame from it.
Filter setup:
UIImage *inputImage = [UIImage<EMAIL_ADDRESS>
sourcePicture = [[GPUImagePicture alloc] initWithImage:inputImage smoothlyScaleOutput:YES];
f1 = [[GPUImageBrightnessFilter alloc] init];
f2 = [[GPUImageContrastFilter alloc] init];
f3 = [[GPUImageSaturationFilter alloc] init];

GPUImageView *imageView = (GPUImageView *)self.view;
[sourcePicture addTarget:f1];
[f1 addTarget:f2];
[f2 addTarget:f3];
[f3 addTarget:imageView];

[sourcePicture processImage];

Then in your slider handlers you should only need to update the properties on your existing filter chain. Then call processImage to propagate the change. The code below has all the filter properties though two are commented out.
CGFloat value = [(UISlider *)sender value];
[(GPUImageBrightnessFilter*)f1 setBrightness:value];
//[(GPUImageContrastFilter*)f2 setContrast:value];
//[(GPUImageSaturationFilter*)f3 setSaturation:value];

[sourcePicture processImage];

@Phando thanks for the reply but i still did not get anything from the above code so i decided to use filter groups but still no progress.
brightnessValue = sender.value;
UIImage *inputImage = [UIImage<EMAIL_ADDRESS>GPUImagePicture *sourcePicture = [[GPUImagePicture alloc] initWithImage:inputImage smoothlyScaleOutput:YES];
GPUImageFilterGroup *groupFilter = [[GPUImageFilterGroup alloc]init];

GPUImageBrightnessFilter *brightnessFilter = [[GPUImageBrightnessFilter alloc] init];
[brightnessFilter setBrightness:brightnessValue
 ];

GPUImageContrastFilter *contrastFilter = [[GPUImageContrastFilter alloc] init];
[contrastFilter setContrast:contrastValue];

GPUImageSaturationFilter *saturationFilter = [[GPUImageSaturationFilter alloc] init];
[saturationFilter setSaturation:saturationValue];

[brightnessFilter addTarget: contrastFilter];
[contrastFilter addTarget: saturationFilter];

[groupFilter addTarget:brightnessFilter];
[groupFilter addTarget:contrastFilter];
[groupFilter addTarget:saturationFilter];

[groupFilter setInitialFilters:[NSArray arrayWithObjects:brightnessFilter, nil]];
[groupFilter setTerminalFilter:saturationFilter];

[sourcePicture addTarget:groupFilter];

[sourcePicture processImage];

UIImage *outputImage1 = [groupFilter imageFromCurrentFramebuffer];

imageView.image = outputImage1;

Ok i figured it out, the above code is correct i was only missing [groupFilter useNextFrameForImageCapture];


Disable 311cdh build by default because of a missing dependency

The build started to fail to build 311cdh due to missing dependency in their repo:
[2022-01-28T17:38:28.398Z] [ERROR] Failed to execute goal on project rapids-4-spark-sql_2.12: Could not resolve dependencies for project com.nvidia:rapids-4-spark-sql_2.12:jar:22.04.0-SNAPSHOT: Could not find artifact log4j:log4j:jar:1.2.17-cloudera1 in apache-snapshots-repo (https://urm.nvidia.com/artifactory/sw-spark-maven) -> [Help 1]
Since they will change CDH version when they pick up 22.02 we can stop building 311cdh for now.
Disable in the premerge and the nightly and also remove it from the buildall script.
Signed-off-by: Thomas Graves<EMAIL_ADDRESS>

build

build

build


feat(TestModels): LanguageSpecificLogic

Issue #, if available:
Description of changes:
NET only for now. Java requires the 4.4.0 DafnyRuntime, which is not available on Maven. GHI: https://github.com/dafny-lang/dafny/issues/4883
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

If you have a moment, a Java target would go far.
Otherwise, we can add that at a later date.

Agreed, I really wanted to get this in to demonstrate true per-language behavior, but replaceable is a >4.4.0 feature,
and Java requires the 4.4.0 DafnyRuntime, which is not available on Maven. GHI: https://github.com/dafny-lang/dafny/issues/4883
I think NET is working on <4.4.0 because the Java issue is about different code generation in >4.2.0; see the GHI for details on this.


Bot stops and doing nothing after logged in ( OS X )

Expected Behavior
bot start farming and catching after "starting bot" message
Actual Behavior
2016-08-10 13:20:47,331 [PokemonGoBot] [INFO] [login_started] Login procedure started.
2016-08-10 13:20:48,997 [PokemonGoBot] [INFO] [login_successful] Login successful.
2016-08-10 13:20:51,155 [PokemonGoBot] [INFO]
2016-08-10 13:20:51,155 [PokemonGoBot] [INFO] --- ... ---
...
2016-08-10 13:20:51,156 [PokemonGoBot] [INFO]
2016-08-10 13:20:51,156 [PokemonGoBot] [INFO] Found encrypt.so! Platform: darwin Encrypt.so directory: /Users/user/Desktop/untitled folder/PokemonGo-Bot
2016-08-10 13:20:51,156 [PokemonGoBot] [INFO]
2016-08-10 13:20:53,190 [PokemonGoBot] [INFO] [bot_start] Starting bot...
2016-08-10 13:20:53,515 [UpdateTitleStats] [INFO] [update_title] Uptime : 0:00:06 | 0.00km walked | Level 27 (234,985 / 450,000, 52%) | +0 XP | Visited 0 stops | Caught 0 pokemon | Evolved 0 pokemon
2016-08-10 13:20:53,848 [CollectLevelUpReward] [INFO] [level_up_reward] Received level up reward: []
2016-08-10 13:20:53,849 [IncubateEggs] [INFO] [next_egg_incubates] Next egg incubates in 0.05 km
2016-08-10 13:21:55,071 [UpdateTitleStats] [INFO] [update_title] Uptime : 0:01:08 | 0.00km walked | Level 27 (234,985 / 450,000, 52%) | +0 XP | Visited 0 stops | Caught 0 pokemon | Evolved 0 pokemon
2016-08-10 13:22:55,781 [UpdateTitleStats] [INFO] [update_title] Uptime : 0:02:08 | 0.00km walked | Level 27 (234,985 / 450,000, 52%) | +0 XP | Visited 0 stops | Caught 0 pokemon | Evolved 0 pokemon
Your config.json (remove your credentials and any other private info)
"location": "37.787994,-122.407437",
"gmapkey": "x",
"tasks": [{
"type": "HandleSoftBan"
}, {
"type": "UpdateTitleStats",
"config": {
"min_interval": 60,
"stats": ["uptime", "km_walked", "level_stats", "xp_earned","stops_visited", "pokemon_caught", "pokemon_evolved"]
}
}, {
"type": "CollectLevelUpReward"
}, {
"type": "IncubateEggs",
"config": {
"longer_eggs_first": true
}
}, {
"type": "RecycleItems",
"config": {
"run_interval": 60,
"item_filter": {
"Pokeball": {
"keep": 80
},
"Greatball": {
"keep": 60
},
"Ultraball": {
"keep": 80
},
"Masterball": {
"keep": 80
},
"Potion": {
"keep": 0
},
"Super Potion": {
"keep": 0
},
"Hyper Potion": {
"keep": 0
},
"Max Potion": {
"keep": 0
},
"Revive": {
"keep": 0
},
"Max Revive": {
"keep": 0
},
"Razz Berry": {
"keep": 50
}
}
}
}, {
"type": "EvolvePokemon",
"config": {
"evolve_all": "Pidgey,Rattata,Zubat,Weedle,Drowzee,Spearow,Venonat,Caterpie,Krabby,Paras,Jigglypuff,Sandshrew,Vulpix,Meowth,Psyduck,Mankey,Tentacool,Ponyta,Slowpoke,Magnemite,Doduo,Seel,Voltorb,Horsea,Goldeen,Staryu,Ekans",
"first_evolve_by": "cp",
"evolve_above_cp": 0,
"evolve_above_iv": 0,
"logic": "or",
"evolve_speed": 1,
"use_lucky_egg": false,
"run_interval": 180
}
}, {
"type": "TransferPokemon",
"config": {
"run_interval": 180
}
}, {
"type": "MoveToFort",
"config": {
"lure_attraction": true,
"lure_max_distance": 2000,
"ignore_item_count": true
}
}, {
"type": "SpinFort",
"config": {
"ignore_item_count": true
}
}, {
"type": "CatchVisiblePokemon"
}, {
"type": "CatchLuredPokemon"
}],
"map_object_cache_time": 5,
"forts": {
"avoid_circles": true,
"max_circle_size": 500
},
"websocket_server": false,
"walk": 80,
"action_wait_min": 0,
"action_wait_max": 1,
"debug": false,
"test": false,
"health_record": false,
"location_cache": false,
"distance_unit": "m",
"reconnecting_timeout": 15,
"evolve_captured": "NONE",
"catch_randomize_reticle_factor": 1.0,
"catch_randomize_spin_factor": 1.0,
"catch": {
"any": {
"always_catch": true
}
},
"release": {
"any": {
"keep_best_iv": 1
},
"Moltres": {
"keep_best_iv": 3
},
"Zapdos": {
"keep_best_iv": 3
},
"Articuno": {
"keep_best_iv": 3
},
"Mewtwo": {
"keep_best_iv": 3
},
"Dragonite": {
"keep_best_iv": 3
},
"Dratini": {
"keep_best_iv": 3
},
"Dragonair": {
"keep_best_iv": 3
},
"Snorlax": {
"keep_best_iv": 3
}
},
"vips": {
"any": {
"catch_above_cp": 1200,
"catch_above_iv": 0.9,
"logic": "or"
},
"Lapras": {},
"Moltres": {},
"Zapdos": {},
"Articuno": {},
"Mewtwo": {},
"Dragonite": {},
"Snorlax": {},
"Mew": {},
"Arcanine": {},
"Vaporeon": {},
"Gyarados": {},
"Exeggutor": {},
"Muk": {},
"Weezing": {},
"Flareon": {}
}
}
Other Information
OS: X
Python Version: Python 2.7.12

@ulovehash same for me, relaunched it 3 times and then just waited for ~7 minutes and it continuied by himself.

@Nik0lashka same story now bro

idem

after 4 hours it came back, just starting bot and that's all


Exception Handling in C++

Description 📜
C_CPP:- Video of Exception Handling in C++ #6957 issue was assigned to me. I did my best and added VIDEO_Exception Handling in C++ folder into Exception Handling directory of C_CPP branch.
Fixes #6957

Type of change 📝

[x] Video (Animations, screen-recordings, presentations and regular explanatory films are all possibilties etc)

Domain of Contribution 📊

[x] C/CPP

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

Screenshots / Gif (Optional) 📸

@Suvraneel plz review this corrected PR. I closed previous one cause of so many mistakes.

@Suvraneel Plz review this corrected PR. Closed previous one cause of so many mistakes.

@saniya44  You havent brought over those corrections here...
For example the video link is an image there...
Also, code highlighting is gone

@saniya44  Anyway, fixed... Just take a note
LGTM ❤ 🚀

Okay thank you. Will surely remember next time👍


Add extra dns zones and links

Resolves #2827
How is this addressed

Adds extra DNS zones + links to core network
[ ] Update CHANGELOG.md if needed

@microsoft-github-policy-service agree [company="UCL"]

Depending how the azure services are planned to be deployed it might be possible to use shared services for this?

good question – not sure. will need @marrobi 's input

Depending how the azure services are planned to be deployed it might be possible to use shared services for this?

good question – not sure. will need @marrobi 's input

Each one could be done as a separate shared service, or could do something similar to what I've done with External URI, single shared service, can be deployed multiple time with different DNS zone name. or even an array? PR is open, and @tanya-borisova is looking at how to handle singleton services as part of #2820 .
The other option is we have an environment variable with a list of all the DNS zones passed into the core deployment.
@tamirkamara thoughts? A single DNS zones shared service with array is maybe a nice solution for these "optional" DNS zones.

Also worth noting @t-young31 has followed the approach used for AML, so maybe merge this and then take the "improved" approach, as a new issue?

One more thing, if it was a single shared service with an array, a pipeline in the workspace could add the DNs zones as per the same method used for firewall rules.

A single DNS zones shared service with array is maybe a nice solution for these "optional" DNS zones.
Yes, something like this. Another approach to the lack of state for the core system, is to add a shared service exactly for that, something like common state (store) and have the pipeline procedure interact with it. It seems a bit "hacky" but will work...

/test 1214b09

/test-extended 1214b09


New version: Catsxp.Catsxp version <IP_ADDRESS>

This pull request is automatically generated by 🥟 Dumplings in #3216
Microsoft Reviewers: Open in CodeFlow

Sequence contains no elements

https://github.com/microsoft/winget-pkgs/issues/133371

(Automated response - build 655.)

Automatic Validation ended with:

2024-01-25T03:44:48.3092135Z Processing manifest: manifests\c\Catsxp\Catsxp\<IP_ADDRESS>
2024-01-25T03:44:48.3101496Z -----------------------------------------------------
2024-01-25T03:44:48.3109131Z Status: Started
2024-01-25T03:44:48.3116853Z Manifest file is Deleted
2024-01-25T03:44:49.2982609Z Status: Completed
2024-01-25T03:44:49.2983891Z ##[error] Result: Failed
2024-01-25T03:44:49.2986093Z ##[error] Sequence contains no elements
2024-01-25T03:44:49.2988531Z ##[error]Manifest Validation Failed

(Automated response - build 655.)


problems when upgrading to meteor 1.0.5

I'm not sure, but I think its a jade issue.  Here's the error:
TypeError: undefined is not an object (evaluating 'Template.__body__.__contentParts.push')

Here's my jade file:
head
  title Health Marketplace
  meta(name="viewport" content="width=device-width, initial-scale=1.0" http-equiv="X-UA-Compatible")
body
  +activeScreen

Here's my helper:
UI.body.helpers({
  activeScreen:function(){
    return Template[Session.get('activeScreen')];
  },
});

I went back and forth with git and I've narrowed it down to upgrading to Meteor 1.0.5 from Meteor 1.0.2.
Perhaps I'm doing something wrong? Was something deprecated?

What version of jade are you using?

My sincerest apologies.  It turns out, I had two problems:
First, I wasn't using your jade package, I was using cryptoquick:jade. Switching to your package solved the problem.  I didn't notice this cause it was an older project and all my new projects use your package.
The second problem seems to be in the mrt:accounts-ui-bs3-and-blaze package.  Given the name, it's probably long due for an update.  Switching to ian:accounts-ui-bootstrap-3 removed the second error.
For the record, both packages gave me the error above, so each time I refreshed, I would get the error above twice.
Thanks a lot for providing your package and keeping it running!


list-buildconfigs command

We need an osbs list-buildconfigs command in order to work out

what BuildConfigs exist
what triggers they have
which ImageStreamTag they will update

and ultimately to be able to show the full dependency chain.

+1


Fix terminals in editor area not reloading

This PR fixes #140429
This isn't perfect because it just reopens then without setting the original location, but at least it reloads them.
If you have any thought on how to do that, I can try to implement it.  I think people would probably appreciate them at least reloading though.
Testing

Make sure terminal.integrated.persistentSessionReviveProcess setting is enabled.
Other a few terminal in the terminal window.
Quit VS Code.
Reopen VS Code, which should reopen the terminals.

Thank you for reviewing this and making the updates, @meganrogge.  Please let me know if you need me to do anything more on this.

@Tyriar when I revert ae7a4ba555b640be4d76ed482f043a51418df3bb, I don't see the duplicated prompt but I do see two terminal editors (with the same content) on reload

Thanks for the tip, @Tyriar.  It took me quite a while to come up with this new fix, but I don't think I would have gotten there without your suggestion.
The issue is _onWillShutdown is called before TerminalInputSerializer serializes, so I added shutdownPersistentProcessId to record the ID for use in TerminalInputSerializer.
After that, when restoring the editor, it was using the ID from before the shutdown, which is no longer valid.  So I added getRevivedPtyNewId to get the new ID.
I wasn't able to test the remote terminal settings because I wasn't really sure what "remote terminals" meant.  I assumed it had something to do with https://code.visualstudio.com/docs/remote/ssh so I tried installing the extension and connect to SSH, but it failed after trying to install a VS Code Server on the server.

@ssigwart for remote you can create a test resolver window for the remote side of things:

Thanks, @Tyriar.  I think I got that working now.


Usage of additional types in the model

Some additional types should working in the model layer

new Java time API
Locale
Java Money?
BigDecimal, ...
Byte[] ?

see #97 and #55 and #75

PR: #263


Using public network on fixed IP address

I want to check the VCCW environment from mobile devices through Wi-Fi network.
So, I change an option in the Vagrantfile as blow, referring this article.
site.yml
hostname: tsumugi.local
ip: <IP_ADDRESS>

Vagrantfile
config.vm.network :public_network, ip: _conf['ip']

But, when I ran "vagrant up", there occurred errors as blow, and couldn't access by hostname or fixed IP address(written in site.yml) both in browsers.
SIOCADDRT: Network is unreachable

The SSH command responded with a non-zero exit status.

So, I tried again with an option just as blow.
Vagrantfile
config.vm.network :public_network

And I looked up IP address by ssh commands.
ifconfig | grep "inet addr"
inet addr:<IP_ADDRESS>  Bcast:<IP_ADDRESS>  Mask:<IP_ADDRESS>
inet addr:<IP_ADDRESS>  Bcast:<IP_ADDRESS>  Mask:<IP_ADDRESS>
inet addr:<IP_ADDRESS>  Mask:<IP_ADDRESS>

By this way, I could access the VCCW environment as <IP_ADDRESS> in both PC and mobile browsers.
Is there the way to access by fixed IP address or hostname through Wi-Fi network?
Or, is there something wrong with my settings?
My environments are here.
Mac OS 10.10.5
VirtualBox 5.0.14
Vagrant 1.8.1

See https://www.vagrantup.com/docs/networking/public_network.html.
But I though you shouldn't make VCCW public, because firewall is disabled on it.
So you should use vagrant share or ngrok.

https://www.vagrantup.com/docs/cli/share.html
https://ngrok.com/

Thank you!
I tried Vagrant Share and it works well :smile:

After that, I tried Vagrant Share with multisite setting again, and I failed with the error below.
Is there anyone who occurred the same error, or knowing the solution about this?
Vagrant was unable to detect an HTTP port for your machine.

Your Vagrant machine is reporting that it is accessible at
the address: '<IP_ADDRESS>'.

Vagrant tries some common HTTP ports to try to find a listening
HTTP server, but all the attempts failed. There are a few options
to fix this error:

  1. Turn off HTTP sharing with the `--disable-http` flag.

  2. Have your HTTP server listen on port 80, 3000, 4567, 8000,
     or 8080. Vagrant will automatically try these.

  3. Specify an HTTP port explicitly to vagrant share with the
     `--http` flag.

  4. Make sure that the address above along with your HTTP port
     are accessible from this machine. Sometimes firewalls or
     binding to the wrong IP cause it to become inaccessible.


Cordova plugins not working for device / simulator when using --livereload

FIXED WITH @ionic/app-scripts version 0.0.47
This issue is fixed if you update @ionic/app-scripts devDependency in your package.json:
"devDependencies": {
    "@ionic/app-scripts": "0.0.47"
}

Short description of the problem:
When running for device / simulator with --livereload the Cordova plugins are not working because cordova.js is mocked.
What behavior are you expecting?
Cordova plugins working without mocking cordova.js.
Steps to reproduce:

Create a simple project using ionic start sampleapp --v2.
Add some Cordova plugin to your project using ionic plugin add [your-cordova-plugin].
Run the project for the iOS or Android device / simulator using ionic run ios --emulator --livereload or ionic emulate ios --livereload.

Output:
[09:30:33]  ionic-app-scripts 0.0.45
[09:30:33]  watch started ...
[09:30:33]  build dev started ...
[09:30:33]  clean started ...
[09:30:33]  clean finished in 4 ms
[09:30:33]  copy started ...
[09:30:33]  transpile started ...
[09:30:35]  transpile finished in 1.99 s
[09:30:35]  webpack started ...
[09:30:35]  copy finished in 2.10 s
[09:30:40]  webpack finished in 5.21 s
[09:30:40]  sass started ...
[09:30:42]  sass finished in 1.07 s
[09:30:42]  build dev finished in 8.29 s
[09:30:42]  watch ready in 8.32 s
[09:30:42]  dev server running: http://<IP_ADDRESS>:8000/

Test that your Cordova plugin funcionality is not working.

Post the output of ionic info below please
Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-rc.3
Ionic CLI Version: 2.1.12
Ionic App Lib Version: 2.1.7
Ionic App Scripts Version: 0.0.45
ios-deploy version: 1.9.0
ios-sim version: 5.0.11
OS: macOS Sierra
Node Version: v7.1.0
Xcode version: Xcode 8.1 Build version 8B62

I was just about to add an issue for this.
It happens in iOS simulator, but also on iOS device + Android device.

Really! I changed the title and description of the issue for that.
I suppose the problem is related with dev builds, not directly with --livereaload. But --livereload produces always dev builds and that dev builds has a mocked version of file cordova.js with the following content:
// mock cordova file during development

I don't know why dev builds use a mocked version of cordova.js, but I think that can be fixed using one of the following:

Adding support for creating prod builds when using --livereload (for me that will be perfect)
-- or --
Disabling mocking cordova.js when creating dev builds

Anyway, creating a prod build (i.e. without using --livereload) the output binary supports correctly Cordova plugins (either for the simulator and for the device).

Any progress?

Full of bugs. Ionic 2 team has done a great job but unfortunately when debugging etc is way way behind. Disappointed.

After upgrading to RC3.  So sad for that.

@pjorquera , I tried to fix another bug in RC3. It accidentally fixes the issue you mention.
https://github.com/driftyco/ionic-app-scripts/issues/473

@hpwahyao this fix disable livereload

@biesbjerg @pantonis @hpwahyao I found a temporary workaround for fixing this issue: using latest (HEAD) version of @ionic/app-scripts.
You can found the full instructions for applying the fix in the edited description of this issue. Anyway, the steps are the following:

Edit your package.json and use the following version for @ionic/app-scripts dev dependency:

"devDependencies": {
  "@ionic/app-scripts": "https://github.com/driftyco/ionic-app-scripts"
}

Update dependencies and build the @ionic/app-scripts dependency:

npm install
cd node_modules/\@ionic/app-scripts/
npm install
npm run build

Copy or move your main.dev.ts to main.ts:

cd src/app
cp main.dev.ts main.ts

Start your project with livereload, cordova and debug support:

ionic run ios --emulator --livereload -c -s

npm install
cd node_modules/@ionic/app-scripts/
npm install
npm run build

npm run build failed with following errors.
==================
ajay:app-scripts$ npm run build

<EMAIL_ADDRESS>build /home/ajay/a/ionic2/ionic2RC-2.1.3/demo/demo-cordova-livereload/node_modules/@ionic/app-scripts
npm run clean && tsc && npm run sass

<EMAIL_ADDRESS>clean /home/ajay/a/ionic2/ionic2RC-2.1.3/demo/demo-cordova-livereload/node_modules/@ionic/app-scripts
rimraf ./dist

<EMAIL_ADDRESS>sass /home/ajay/a/ionic2/ionic2RC-2.1.3/demo/demo-cordova-livereload/node_modules/@ionic/app-scripts
node-sass ./src/dev-client/sass/ion-dev.scss --output ./bin/ --output-style compressed

No input file was found.
npm ERR! Linux 4.2.0-27-generic
npm ERR! argv "/opt/node6npm3IonicRC0/node-v6.7.0-linux-x64/bin/node" "/opt/node6npm3IonicRC0/node-v6.7.0-linux-x64/bin/npm" "run" "sass"
npm ERR! node v6.7.0
npm ERR! npm  v3.10.3
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>sass: node-sass ./src/dev-client/sass/ion-dev.scss --output ./bin/ --output-style compressed
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>sass script 'node-sass ./src/dev-client/sass/ion-dev.scss --output ./bin/ --output-style compressed'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the @ionic/app-scripts package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-sass ./src/dev-client/sass/ion-dev.scss --output ./bin/ --output-style compressed
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs @ionic/app-scripts
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls @ionic/app-scripts
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR<EMAIL_ADDRESS>npm ERR! Linux 4.2.0-27-generic
npm ERR! argv "/opt/node6npm3IonicRC0/node-v6.7.0-linux-x64/bin/node" "/opt/node6npm3IonicRC0/node-v6.7.0-linux-x64/bin/npm" "run" "build"
npm ERR! node v6.7.0
npm ERR! npm  v3.10.3
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>build: npm run clean && tsc && npm run sass
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>build script 'npm run clean && tsc && npm run sass'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the @ionic/app-scripts package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     npm run clean && tsc && npm run sass
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs @ionic/app-scripts
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls @ionic/app-scripts
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR<EMAIL_ADDRESS>

When revert to<EMAIL_ADDRESS>it starts to build fine again.

@hoodaajay99 It's fixed if you update your package.json the following dev dependency:
"devDependencies": {
    "@ionic/app-scripts": "^0.0.47"
}

I've this config:
Cordova CLI: 6.5.0
Ionic Framework Version: 2.0.0
Ionic CLI Version: 2.2.1
Ionic App Lib Version: 2.2.0
Ionic App Scripts Version: 1.0.0
ios-deploy version: 1.9.0
ios-sim version: 5.0.13
OS: macOS Sierra
Node Version: v6.9.4
Xcode version: Xcode 8.2.1 Build version 8C1002
and i've started a new app with: ionic start pic3 blank --v2 --ts
but i've the same error running ionic serve cmd:
Native: tried calling Splashscreen.hide, but Cordova is not available. Make sure to include cordova.js or run in a device/simulator
about my dev script:
"devDependencies": {
"@ionic/app-scripts": "1.0.0",
"typescript": "2.0.9"
whats wrong ?


zeal: update to 0.1.1

Update and cleanup of the package. The patching and fixup phase are not necessary anymore.

Travis complains that the log is greater than 4 mb. I compiled and tested the package on my machine and did not encounter any issues.

Changed, amended, force pushed.
Is there a particular reason why github's tarball hashes change, but not from zip files?

AFAIK, it's not that the zip files don't change, but that fetchzip extracts the zip files and then calculates the hash (over the extracted files).

@bjornfor, thanks for the explanation.

Yes, some meta-data inside the archives change. (The name fetchzip is slightly confusing, as it works with all common archive types.)

Ok, I fixed the package to use fetchzip. It can be merged now.

IMO it's best to keep fetchFromGitHub :-) To continue the explanation: currently its implementation just composes URL and uses fetchzip link, but it may happen github changes how it offers downloads or we find a better way to fetch from them...

Makes sense. I updated the package to fetchFromGitHub back again ^^

Pushed. It seems to build and run fine.


Add glu: alternative to glue:any

closes #78 you can't use glue, as they have to be under the same domain, but you can use glu:
@jstac @choldgraf

Amazing! I had assumed it wasn’t possible, which is why I was using “glue”. I’ll merge this in, and we can update the docs in #77


Dependents data refresh

Should also deactivate the failing dependency from here: https://github.com/neostandard/neostandard/pull/84


IE11 - Leaderboards button stacked with play button in level popup

Fixed by https://github.com/codecombat/codecombat/commit/c4f46faf2565f353691bc42fa0cd7db847043b39


NEOS / OMS in CKAN

Now that Nehemiah has given me the go-ahead to be the official maintainer until his (hopefully soon) return, I'd like to investigate how best to get his excellent mod-collection into CKAN.
Basically it consists of a number of very closely-linked mods which all share a plugin and some common configuration/models (names below correspond to the current directory paths):

Kemini - early science using just the Mk1 capsule

Requires: Module Manager

KEES - mid-level science, using KAS to attach various exposure experiments to the outside of a craft

Requires Kerbal Attachment System
Recommends: K2 Command Pod

KerbalLifeScience/OMS - end-level station science requiring building a station and using various supply missions to stock it with equipment and experiments

Recommends: Connected Living Spaces

MultiPurposeParts- Common parts (not released as a separate mod at present, but included in KLS and OMS)
NE_Science_Common - Plugin and common configuration (not released as separate mod at present, but included in Kemini/KEES/KLS/OMS)

The first 4 are released as separate downloads, as well as in a single "Science Pack" download. Each of the components has an AVC-compatible version file, and all are released via GitHub at present:
https://github.com/mwerle/OrbitalMaterialScience/releases
All mods are installed under GameData/NehemiahInc
Part of the reason for splitting the mods up originally was due to the relatively large download-sizes of some of them (affected some users), as well as some users only wanting a subset (usually Kemini). By far the biggest number of downloads is for the "Science Pack" though.
How would you recommend the mods be structured in future to be both good for CKAN as well as continuing to be good for standalone distribution?  I don't really want standalone users to have to download A + B + C separately before they have a usable install.
For CKAN I'm guessing having a "lite" version of each download which only includes its own data, with links to the dependent mods, then for standalone distribution have the current "full" versions which include the dependencies inside the ZIP.
Alternatively could just link the "Science Pack" for CKAN, which means CKAN users would always have to do the full download (14MiB) on any update.

We still have the netkan files for these mods. They are still pointing to KS but easy to change to your github.
This is the structure I plan:

Nehemiah Science Common

Gets NE_Science_Common from KEES
Depends on ModuleManager

Nehemiah Multi Purpose Parts

Gets MultiPurposeParts from MultiPurposeParts
Depends on ModuleManager

Kerbal Environmental Effects Study

Depends on NehemiahScienceCommon & KIS
Recommends K2CommandPodCont

Kemini Research Program

Depends on NehemiahScienceCommon

Kerbal Life Science

Depends on NehemiahScienceCommon & NehemiahMultiPurposeParts
Recommends ConnectedLivingSpace

Orbital Material Science

Depends on NehemiahScienceCommon & NehemiahMultiPurposeParts
Recommends ConnectedLivingSpace

Nehemiah Inc - All-in-one Pack

Depends on ModuleManager & KIS
Recommends K2CommandPodCont & ConnectedLivingSpace

This way people can install some ones seperatly or choose to use the all-in-one pack

"We still have the netkan files for these mods. "

great  :)  I was just reading up on how to make them..

"Gets NE_Science_Common from KEES"

Ah so I don't have to break apart the ZIPs I currently build/release to best suit CKAN?
And how does that work - does it effectively extract NE_Science_Common from the KEES release, and repackage it? If so where is it hosted (I thought CKAN was just metadata repo). Also, the "all-in-one" would be the better ZIP to extract NE_Science_Common from as that is always guaranteed to be updated (In future, some releases may update only some parts, eg, a bug-fix in Kemini only)
Otherwise any download will download KEES + whatever, even though  already includes NE_Science_Common, or am I misunderstanding something here?

"Gets MultiPurposeParts from MultiPurposeParts"

There is currently no separate "MultiPurposeParts" download (although I can make one).
I just joined #ckan - @Micha - but going to lunch soon. Can discuss further this afternoon if you're free.

Ah so I don't have to break apart the ZIPs I currently build/release to best suit CKAN?

No, the way it is now will work.

And how does that work - does it effectively extract NE_Science_Common from the KEES release, and repackage it? If so where is it hosted (I thought CKAN was just metadata repo).

Because KEES depends on NehemiahScienceCommon, we can download the KEES zip and only install the NE_Science_Common folder. When it tries to install KEES it already has downloaded the zip and will only install the KEES folder.

Also, the "all-in-one" would be the better ZIP to extract NE_Science_Common from as that is always guaranteed to be updated (In future, some releases may update only some parts, eg, a bug-fix in Kemini only)
Otherwise any download will download KEES + whatever, even though already includes NE_Science_Common, or am I misunderstanding something here?

If this will always be updated it is better to install it from here, but if we need to download it just to get NE_Science_Common for KEES, this take up extra space. But we can discuss this further on IRC.

There is currently no separate "MultiPurposeParts" download (although I can make one).

That was a typo, I meant "Gets MultiPurposeParts from KLS" (or other zip)

I just joined #ckan - @micha - but going to lunch soon. Can discuss further this afternoon if you're free.

Great, just ping me (Olympic1) on there when you're back.


There is no minified version on bower/npm

Can you also add minified version to bower?

+1

I don't have a build script yet. I suppose I will add one some day. On the other hand, every project I saw either had it's own minification procedure for everything, or they did not care, because it was internal project.

https://github.com/bower/spec/blob/master/json.md#main

Do not include minified files.

http://stackoverflow.com/questions/24852850/why-is-bower-recommending-to-ignore-minified-source-file
:-)

@Mistrall I understand why you would want a minified version, but you really ought to be using your own build script. I would recommend generator-gulp-angular or generator-angular.

The minify version a file is created for easing the life the developer. :+1:
For default, using Bower.json do download packages library Front-end for motif and NPM do download packages builders and tasks, facilitates management.


Remote API Usage

The documentation doesn't talk about how to use the SM API remotely. When calling the API from a remote host, the python module for SM requires 'SECURITY_MONKEY_SETTINGS' variable be set. It might be worth updating the docs to reflect this setup.

Good news: You would end up using the same REST API the Angular app is using.
Bad news: Flask-Security-Fork has an (odd) method for API access; it requires disabling CSRF protection.
http://mandarvaze.github.io/2015/01/token-auth-with-flask-security.html
^ Note the section on disabling CSRF:
# Without this get_auth_token via POST request w/ JSON data does not work
# You keep getting "CSRF token missing" error
WTF_CSRF_ENABLED = False

So, if there's a way to disable CSRF JUST on the endpont required to get the authorization_token, that would be the ideal scenario.  We would likely need to sprinkle auth_token_required decorators on the REST endpoints and make sure the auth-Z still works as expected.
It would also be nice if you could generate the tokens in the Users table under settings.
If this is simpler than I'm making it out to be, please let me know.  I've had a number of requests to use the API from other apps, and I hate having them send session cookies.  It's dirty.

Seems like this could probably be done by exempting the auth token view from CSRF.
http://flask-wtf.readthedocs.io/en/stable/csrf.html#exclude-views-from-protection
@app.route('/foo', methods=('GET', 'POST'))
@csrf.exempt
def my_handler():
    # ...
    return 'ok'


Added Inventory Page

Description
A page to keep track of inventory for items that will be sold at the SCE shop. Basic backend CRUD functions, search bar to look items up, table to keep track of each item. Frontend does scale. Also created/edited the backend and frontend tests.
Testing Features

To view the Inventory Page, log in to an admin account and click the "Inventory Page" tab under the Admin Dashboard. It should look something like this, but empty.

To add an item, click the "+" icon to the right of the search bar. A modal form should pop up. Fill it with the information necessary. Price and Stock must be numerical values. Item Name should be unique (not case-sensitive). The only non-required input is the Picture, it can be left blank for a default "SCE Item" picture as a filler.

To edit an item, click the pencil+paper icon on the furthest right column of your item in the table. A modal form should pop up with your existing information. Edit it as you please and click the "Confirm" button.

To delete an item, click the pencil+paper icon on the furthest right column of your item in the table. A modal form should pop up with your existing information. At the bottom of the modal, there should be a "Delete" button (reference screenshots in testcase #3).

To search for an item, literally just start typing in the search bar. Keep in mind that it filters by item name.

If there are any issues, please let me know 😊

All change requested so far should be covered in this commit. Let me know if I missed anything. 👍
TO-DO:

Category -> Dropdown
Empty Description -> "N/A"
Asterisks next to required fields in modals
Price Rounding
Form validation + alerts
Confirm button no longer disabled
Confirmation modal on delete button
Button color changes
A bunch of trimming/validation stuff
Old comments removed from code

Updated Pictures for Reference:

All change requested so far should be covered in this commit. Let me know if I missed anything. 👍
TO-DO:

Category -> Dropdown
Empty Description -> "N/A"
Asterisks next to required fields in modals
Price Rounding
Form validation + alerts
Confirm button no longer disabled
Confirmation modal on delete button
Button color changes
A bunch of trimming/validation stuff
Old comments removed from code

Updated Pictures for Reference:

Implemented Aash's requested changes, all tests passed on my end, rebase and lint errors resolved.
Let me know if there are any other issues 👍

Implemented Aash's requested changes, all tests passed on my end, rebase and lint errors resolved.
Let me know if there are any other issues 👍

Recent force-push for rebase

Recent force-push for rebase

I think it looks good, except on mobile (the inventory table rows cut off content and it becomes unusable).

Superior UI. Excellent work
Resizing after a certain point cuts off column names. Please fix that

Aash and I fixed the responsive issue by removing some of the less important columns (Image, description) starting at a certain screen size. There shouldn't be any more issues with that, but let me know if there is anything else. 👍

Improved mobile view where each row has its own block rather than having it all squished in a table row.

Please let me know if I missed anything. Thanks 👍
QoL Stuff

SVG buttons (add item, edit item) had a weird outline around them after clicking, so I removed those for a cleaner look.
Description Inputs in modals were able to be resized to an unusable height. Added min height styling.

Table Responsiveness Fixes

Removed outer container div that originally contained search and table component (margin: auto on outer container was making huge left/right margins at a certain screen size). Switched to 5% margins on left/right side for search and table containers individually.
Uniform heights on rows.  Fixed to a 100px uniform height. Overflow text/images are scrollable. Slight visual issue is that with scrollable, the images do get hidden horizontally at around 910px screen size.

Charlotte's dependency conflicts

Not too sure what to do about the package-lock.json, but lmk what I need to do.
Seems like dev branch's tinymce is up to date now? "@tinymce/tinymce-react": "^3.10.2".

Description
Pretty straightforward changes. Add character limit to description input in modal. Adjust responsiveness of table to remove description column earlier (at 1100px rather than 768px). Screenshots below.
Screenshots


node:internal/process/promises:246  triggerUncaughtException(err, true /* fromPromise */);

node:internal/process/promises:246
          triggerUncaughtException(err, true /* fromPromise */);

i get the following error if i try to scrape a profile
async function scrapeProfile() {

    const profileScraper = await scrapedin({ email<EMAIL_ADDRESS>password: '******' })
    const profile = await profileScraper('https://www.linkedin.com/in/some-profile/')
    console.log(profile)
}

scrapeProfile()

i'm having the same error.

i think this is no longer mantained nor supported

i think this is no longer mantained nor supported

Unfortunately. This is a nice project.

I have the same issue


Migrate gh-pages build script to CircleCI 2

This is necessary before 31 August when it will break.

Already done


Improve Search UI

Up for discussion on how exactly the UI should be changed.
I don't think searching is a primary action, but the search bar is always "up front" (with a fixed size) in the app bar. It seems to be taking up too much space when it isn't being used. I have one of two proposals:

Have a small search button which, when clicked, reveals a search bar which takes up the app bar space and can be used to search the list.
Have a small search button which, when clicked, shows a full-screen search dialog.

I noticed also that flutter has a SearchBar widget. We could use it.
What do you think?

I would vote for option 1, replacing the current search input with a search button.
I think the SearchBar is too big for what we want.

Do you think we could use animated_search_bar? It looks "fairly" up-to-date (last published 5 days ago).

It looks pretty good

@Pertempto  Would it be okay if I ditched this issue and started on React?


Logging payload inconsistencies based on global library requirements

For internal Google devs: this is a mega issue tracker as a result of some cross language/platform benchmarking work.
@codeowner, feel free to modify or discard suggestions based on language standards or not reproducible:
Across all GCP platforms

[ ] STDOUT logs via System.out.printf(stdlog); do not show up in Pantheon/log view. To reproduce, try these logging quickstarts in GKE or GAE
[ ] log entries missing resource auto-detection, e.g. gce_instance, gae_app as in Go/Node/Python
[ ] log entries missing trace & span ids
[ ] httprequest type logs missing protocol autodetection, i.e. httpRequest.protocol should default to HTTP/1.1 based on requestMethod
[ ] httprequest.NewBuilder.setRequestMethod (and other methods) should take in url in string format (in addition to the custom RequestMethod type. According to API docs

Platform specific

[ ] GCE: Logging client library doesn't log in GCE (though it could be user configuration issue). To reproduce, try deploying this GCE x logging quickstart
[ ] GCF: execution_id not captured
[ ] GCF: Logging client library doesn't log in GCF (known issue). I was able to reproduce this unresolved/closed issue #33 from before. To reproduce, try deploying this boilerplate
[ ] GCF: A naming conflict arises when using logging library in Cloud Functions:

com.google.cloud.logging.HttpRequest
com.google.cloud.functions.HttpRequest

Usage for the user become verbose. Similar to the python naming issue @Daniel-Sanche is looking at

@minherz - this bug is great as it can be treated as older friction log and now we can compare the structured logging outcome to this feedback and see if there is any other gap

Marking it resolved. All mentioned issues except for samples were addressed in the recently released 3.6.0.
Samples will be updated in Q1'22.


New Level Properties Hierarchy

In one of the recent version (20w17a?) Mojang abstracted level properties to a hierarchy.
Inheritance tree:

Interface description

class_5217: A basic interface, exposing some getters for spawn pos, raining, thundering, time, difficulty, generator info
class_5269: additionally includes some setters (spawn pos/time). One protected final instance kept in World class.
class_5268: additionally includes some getters for logical server side properties, e.g. dimensional data, weather time, wandering trader properties. One private final instance kept in ServerWorld class, same as that instance in World class but both are visible in ServerWorld
class_5219: A basic interface for level.dat elements that applies to an instance of MinecraftServer. One instance of it is kept in field_24372. Includes data pack info, brand info, seed, difficulty, gamerule, etc. many of which are the same methods in the hierarchies of class_5268. Also used by LevelSummary.

Implementation description

LevelProperties: Seems like the old level properties, and the only implementation in this tree that comes from loading level.dat file.
SecondaryLevelProperties: No longer extend LevelProperties as before; blanks out setters; has a delegate class_5268 and a delegate class_5219, in which some properties are delegated from the 5219 and some from 5268. Also has special handling of world data setting/getting, in which passes the dimension type object this properties hold to its delegate to get dimension-specific world data.
ClientWorld$class_5271: Implements interface methods but additionally have two setters for difficulty and locking. One private final instance kept in ClientWorld class (but unused), same as that instance in World class but both are visible in ClientWorld. Updated through ClientPlayNetworkHandler's packet reception where one instance is kept as well (created at GameJoinS2CPacket, difficulty updated in DifficultyS2CPacket, updated on player respawn as well).

My two cents:
Mojang seems to start splitting off stuff from level.dat into components that should be available to the client world, each server world, and the server in general. Although the client and server split is clean, the server world and general server split seems to be half-done (as all worlds still uses the same world border and generator options from the main level.dat data, even for secondary/derived world properties).

My plan:
I personally want to rename LevelProperties to LevelData as these are loaded from the Data subtag of the root NBT compound of the level.dat file, while the world-specific interfaces I suggest rename the series to WorldData MutableWorldData ServerWorldData ServerData SecondaryServerWorldData(data of secondary server world) LevelData(level.dat) ClientWorld$Data.

Final words
I want some quality bikeshedding here. Many prs attempt to work on this system, yet I find them confusing and incompetent to convey this updated structure. Please bikeshed here so we don't have to debate again for fixing up the upcoming poor names.
If you want to rename the existing LevelProperties to like WorldData or so, please suggest here as well!

I wrote my thoughts in the relevant PR :

The LevelProperties name seems a bit outdated. Currently it seems to reflect the state of a single world/dimension. As such, I would recommend naming class_5219 (the base interface) "WorldProperties".
class_5269 is a specialization of class_5219 with setters. I would suggest naming it "MutableWorldProperties".
class_5271 and class_5268 are the specializations of class_5269 for ClientWorld and ServerWorld, respectively. As such, I would suggest simply naming them ClientWorldProperties and ServerWorldProperties.
UnmodifiableLevelProperties is a specialization of class_5268, used by SecondaryServerWorld. It adds the property "Derived" to crash reports, which leads me to suggest DerivedWorldProperties.
class_5219 is the interface where every global method from the old LevelProperties went (eg. getLastPlayed or getEnabledDataPacks). If we consider level to mean "the whole save", this interface is the one that should be called LevelProperties.
The class that is currently named LevelProperties implements class_5268 and class_5219. It does not seem unlikely that it gets split in the future. I guess we could call it PrimaryWorldProperties.

My few cents for @Pyrofab:

Properties -> Data (rename this part).
Properties sounds resembling of something from a java .properties file, yet level.dat is not a .properties file. The main data of level.dat is stored in the Data subcompound in the root NBT compound, so I am using the name Data. There may be better alternatives.
class_5219 shouldn't be LevelProperties:
class_5219 is used in like LevelSummary, which means it is like a save(server) specific information (note that one Minecraft server can only run on one save). Calling it Level I disagree; a name with like Save Server should be used to outline that attribute.

What exactly is wrong with LevelSummary using LevelData ?

Now I decide to keep the Properties suffix and class_5219 will be like SaveProperties. How does that sound @Pyrofab?

Now the plan is like WorldProperties MutableWorldProperties ClientWorld$Properties ServerWorldProperties SecondaryServerWorldProperties LevelProperties (name kept) SaveProperties. How's that?

This set of new names has been included in #1353. Can close this after that pr is merged.


Add timeout to Socket

Add setTimeout(int) to jsocket.socket.Socket. This feature is seen in jsocket.datagram.Datagram and needs to be added to the tcp side

This has been added. Now can use Socket::setSoTimeout(int). If a timeout is set, Socket::receive and Socket::receiveAll(int) will throw jsocket.exceptions.SocketTimeException.


Use RouterLink in CustomEditorComponent

Hi,
Thanks to your example, I am able to create a custom editor (https://github.com/akveo/ng2-smart-table/blob/master/src/app/pages/examples/custom-edit-view/custom-editor.component.ts). However, the editor is having anchor tag and redirects the user. What I want to do is use RouterLink instead of anchor tag, but somehow, am not able to do so.
As per my understanding, inside the component,
this.cell.newValue = a href='${href}'>${name};
This is the line that decides what has to be shown on the UI. I modified this, and instead of using 'href', put routerLink, as below:
this.cell.newValue = a routerLink='${href}'>${name};
My understanding was that this will change href to routerLink, but didn't happen that way. I also tried adding dummy text here, in the name variable, but the values didn't reflect on the page.
Can you help me in understanding what I am missing here?

I'm also facing the same issue. Please help me if anyone have solution

//In your settings configure like this in the column
objektelinks: {
title: 'Objektelink',
type: 'custom',
renderComponent: LinkViewComponent,
},
// create a render component like this
import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';
import { ViewCell } from 'ng2-smart-table';
@Component({
selector: 'ngx-link-view',
template:   <a [routerLink]= "['/auth/register']"> Objekte </a>  ,
})
export class LinkViewComponent implements ViewCell, OnInit {
renderValue: string;
@Input() value: string | number;
@Input() rowData: any;
@Output() save: EventEmitter = new EventEmitter();
ngOnInit() {
this.renderValue = this.value.toString().toUpperCase();
}
onClick() {
this.save.emit(this.rowData);
}
}

@eboakyegyau  solution should be added to the docs as a example.


Doesn't place nicely with RBAC when unable to create namespaces

Tiller checks for the existence of a namespace by attempting to create one anyway. On my cluster, users are unable to create namespaces any helm install fails to RBAC.
It would be better if Tiller attempted to Get a namespace and then create it if it didn't exist.

@mariusgrigoriu , I am proposing reimplementing Tiller using Kube 3rd part objects. https://github.com/kubernetes/helm/pull/1717
That should solve this issue too.

Merged @mariusgrigoriu 's patch to fix this issue, so I'm marking as closed.


Can I POST 4 images using this library?

Can I POST 4 images using this library?

Yes, of course, you just need to add them as parts of the images array in the embed section. Before that you need to upload them and get blob of course

Thank you for your response. It was helpful.

Perfect.


changing the name of Azure Stack Edge pro 2 after Setting it up

In "Device" Tab under "Configration" menu
Is there a way to change the device name, after setting it up for the first time, without resetting the device?
Thanks
Mousa

@Moseee7
Thanks for your feedback! We will investigate and update as appropriate.

@Moseee7
It would be great if you could add a link to the documentation you are following for these steps? This would help us redirect the issue to the appropriate team. Thanks!!

@Moseee7
We are going to close this thread .if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.

this is the documentation link that you asked for :
https://learn.microsoft.com/en-us/azure/databox-online/azure-stack-edge-pro-2-deploy-checklist?pivots=single-node