Air alarm admin logs

About the PR
This adds thorough admin logs to air alarm interactions, I think I covered everything you can do in the UI. Closes #23297.
I have no idea what impact the logs should have, so they're all medium for now. Admin/maintainer input would be appreciated.
Why / Balance
Air alarms have no admin logs. See linked issue for more details.
Technical details
I peppered admin log calls in AirAlarmSystem, AtmosMonitoringSystem, GasVentPumpSystem and GasVentScrubberSystem. I added a new AtmosDeviceSetting admin log type since these are going to be very verbose (every click in the UI makes a change and therefore logs). I added a diff-like helper to AtmosAlarmThreshold so it's easier to only log modified settings rather than everything, which would be uselessly verbose.
There are two kinds of logs added by this PR: player-side logs and device-side logs. The player-side air alarm logs are unfortunately vague, only logging the broad kind of change and the device that is being changed. Conversely, the device-side logs are specific in the kind of change but lack any information about the player who initiated the change.
Admins will need to look at adjacent log lines with the same timestamp to put together "Urist changed VNT-123 settings" and "Vent/1023 pressure threshold changed from 122 kPa to 123 kPa" as a single event, which is not the best ergonomics, especially since the latter log will not be associated to a player and is hidden by default. Still, much better than no logs at all.
The main reason for this limitation is that any change made with an air alarm gets sent as a full data update to the relevant device (pump, vent, or the alarm itself) rather than the individual changes. For example, if I click the "+" button in a pressure threshold, all of the pressure thresholds for that device are sent to the server. The data packet is then later deconstructed and applied field-by-field to the actual device settings in the server code, but by that point that initiator of the change is no longer available.
I tried to get the best outcome possible in the current framework (which I think is a solid architecture) by logging after the new state is received by the server, but before it's forwarded to the device, where the user is still available but details of changes are not (in AirAlarmSystem), and then later again when details of changes are available but no user is (in AtmosMonitoringSystem and GasVentPumpSystem).
Because the changes in the latter logs are not linked to a player, if an air alarm mode change automatically causes a change to a linked device, that's logged too, and if we ever add the ability to control networked atmos devices via other means (remotes?), those interactions will be logged too.
Media

Requirements

[x] I have read and am following the Pull Request and Changelog Guidelines.
[x] I have added media to this PR or it does not require an ingame showcase.

Breaking changes
None
Changelog
:cl:
ADMIN:

add: Added admin logs to air alarms

The CI failure seems unrelated to the changes?

I think it'd be fine to add an Admin Changelog for this as it's probably useful for admins to know about the new logging available.

Ah my bad, I forgot those were a thing

ADMIN:
add: Added admin logs to air alarms

Wouldn't it be more clear to say "Added atmospherics device information to admin logs"?
I feel like the way you originally phrased it may cause confusion. You're talking about the implementation (admin logging code added to air alarms), but for the end user/admin, they only really care that there's new information in the admin logs.
Also it's more than just air alarms, so it might be more useful to just use the general term "atmospherics devices" (and hope they don't confuse it with any other atmos devices...).


Switching Packages/Projects with mutual references

Say I have two packages/projects that I'd like switch out, Lib1 and Lib2, where Lib2 also references Lib1 as a project reference, and I want to keep it that way.  Switching from packages to projects works fine - all projects are now in my solution with everyone having project references, but then when I switch back to packages, the tool thinks that Lib2 is one of the projects that should be updated to have a NuGet package reference of Lib1, which I don't want.  Only the other projects in my solution not listed in my .dnt file should get updated.

v1.0.14 can you check whether its fixed?

Do you also have the problem that mapped projects are not always added to the solution?

It all seems to be working great for me know - I can switch back and forth repeatedly without any issues.  Thanks!


Namespace(Schema) support + Catalog refactoring

1. catalog refactoring

Get rid of catalog table singleton. Make pg_table, pg_index, pg_attribute, pg_stats_tables, pg_trigger under per database. All of them are now stored in a per-database object in catalog_map (under catalog.h)
Add version_id column into pg_table
Add update(with index scan) helper function inside AbstractcCatalog.cpp

2. Namespace(Schema) support

support create/drop schema

default_database=#CREATE TABLE foo(a int);
create table under default namespace "public"

default_database=#CREATE SCHEMA private;
default_database=#CREATE TABLE private.foo(a int);
create table with same name "foo" under different namespace "private"
default_database=#DROP SCHEMA private;
delete record from pg_namespace catalog table and drop table private.foo

Add pg_namespace catalog table
Add namespace(schema) information in parser, binder, planner and executor
Need to pass in database name, schema name and table name to locate one unique table object

DataTable *table = catalog::Catalog::GetInstance()->GetTableWithName(
    database_name, schema_name, table_name, txn);

TableCatalogObject *table_object = catalog::Catalog::GetInstance()->GetTableObject(
    database_name, schema_name, table_name, txn);

3. To-Do

 Fix test cases (consult with PR #1286)
Add more namespace test cases

Coverage decreased (-77.0%) to 0.0% when pulling 4752c932f7a1304eda9df71eada12aed09b706ed on camellyx:master into 78b85dc21d5f1d7b09b150380ecec22b92ea804e on cmu-db:master.

Hey @poojanilangekar!
Thank you for your reviews and I've made changes according to your suggestion. The following is a summary to what I've modified and answers to some of your question.

delete all the commented out line
Add java doc style documentation if necessary
Add CATALOG_TABLES_COUNT variable into catalog_defaults.h to get rid of the magic number 8
The reason why we change the visibility of the catalog contractors from private to public is that: before this PR each catalog table is a global singleton (thus the constructor must be private), but now each database has their own set of catalog tables (a.k.a system_catalogs.h), when creating a new system catalog object, we need to create multiple catalog tables(pg_table, pg_index, etc), thus the constructors must be public now
In all the test cases, we require you to use lowercase database_name. Cause many test cases invoke catalog::CreateDatabase(database_name) directly, and we use create sql to build secondary catalog tables(e.g CREATE TABLE database_name.pg_trigger(a int);) which means that this sql statement will pass through parser--> binder-->optimizer-->planner-->executor.And binder/optimizer will convert whatever name to be lowercase. We need to keep both name in sync, otherwise "can't find database" exception will be thrown.
PR # 1286 is adding TempSchema
I'll push the schema test cases during weekend.

@tcm-marcel, The same issue again. Travis build is not triggered. Do you think the bug is because of some error in our configuration or a bug on their end?

@poojanilangekar Thanks for your comments. We are working on adding more tests, if possible, once we have time.

@camellyx Can this PR be merged in for now?
You can add more tests in the subsequent PR. If this gets merged in and I merge in the layout PR #1327, then we can start work on schema change. Or do you want to wait? Let me know what works for you.

@poojanilangekar I think we are ready to go.

Thanks @mengranwo!
@pervazea @apavlo Can you please merge this in?

@mengranwo I think there are typos in src/include/catalog/catalog_defaults.h and other places. DEFUALT_SCHEMA_OID and DEFUALT_SCHEMA_NAME  which should be DEFAULT_SCHEMA_OID and DEFAULT_SCHEMA_NAME


Fix french setup broken links

Hello,
Browsing the french documentation I found some broken links on the following pages:

https://kubernetes.io/fr/docs/setup/#a-suivre
https://kubernetes.io/fr/docs/setup/pick-right-solution/#tableau-des-solutions

Here is the patch.
Thomas

/assign @jygastaud

Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA.
It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.

If you've already signed a CLA, it's possible we don't have your GitHub username or you're using a different email address.  Check your existing CLA data and verify that your email is set on your git commits.
If you signed the CLA as a corporation, please sign in with your organization's credentials at https://identity.linuxfoundation.org/projects/cncf to be authorized.
If you have done the above and are still having issues with the CLA being reported as unsigned, please log a ticket with the Linux Foundation Helpdesk: https://support.linuxfoundation.org/
Should you encounter any issues with the Linux Foundation Helpdesk, send a message to the backup e-mail support address at<EMAIL_ADDRESS>
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

CLA should be ok now.

/check-cla

/check-cla

@thcdrt Do you have any issue while signing the cla?

CLA must be ok now. I think I didn't do it right last time.

@mhamdisemah well I signed everything, I don't understand why the CLA is not good.


Check https://github.com/kauegimenes/jsonexport/issues/9

Size would be more than array of 500 JSON objects.

Can you try with a lower number of elements?

But it is of no use then.

I am trying to confirm if the issue is releated to the collection size.

Yes
Does it support all sizes of collection?

Have you guys tried json2csv? I'm experimenting with it now because i need to use with collection over 3000 results.
https://www.npmjs.com/package/json2csv

@harshalyeole-tudip @jtlindsey v2.0.0 should support big collections using node.js streams https://github.com/kauegimenes/jsonexport/tree/v2.0.0


Added support for shortening computer names and re-adding computers

Fixed missing space and found another place with missing space. I think I got them all.


Java part: Built-in biome extraction

This PR adds a biomes.json file in the output for use in build.rs. Rust is yet to be implemented.

I have discovered a bug, don't merge this, I'll have another PR ready soon. My apologies!


WatchOS support breaks compilation under Xcode 6.4

The recent updates to support WatchOS cause AFNetworking to no long be able to be built in Xcode 6.4. The root cause of this is the usage of TARGET_OS_IOS, which is only defined starting in Xcode 7.
This should be updated to support older versions of Xcode.

Please see the notes in the 2.6 changelog.


Can't open designer after latest release

Describe the Bug with repro steps
The VSCode designer for Logic App (Standard ) worked completely fine on the previously release, however it is now reporting errors.
Several colleagues have the same issue.

Right click on workflow.json
Open with designer

4:53:58 PM: Azure Logic Apps Standard Runtime Dependencies validation and installation completed successfully.
[2023-12-21T16:53:58.492Z] Error configuring services in an external startup class.
[2023-12-21T16:53:58.492Z] Error configuring services in an external startup class. Microsoft.Azure.Workflows.WebJobs.Extensions: Could not load type 'Microsoft.Azure.WebJobs.Host.Listeners.IListenerDecorator' from assembly 'Microsoft.Azure.WebJobs.Host, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
[2023-12-21T16:53:58.550Z] A host error has occurred during startup operation '8f52183b-e61b-410d-b494-7cceeca17da0'.
[2023-12-21T16:53:58.550Z] Microsoft.Azure.WebJobs.Script: Error configuring services in an external startup class. Microsoft.Azure.Workflows.WebJobs.Extensions: Could not load type 'Microsoft.Azure.WebJobs.Host.Listeners.IListenerDecorator' from assembly 'Microsoft.Azure.WebJobs.Host, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
Value cannot be null. (Parameter 'provider')
[2023-12-21T16:53:58.568Z] Host startup operation has been canceled
[2023-12-21T16:53:58.593Z] Azure Storage connection string is empty or invalid. Unable to write diagnostic events.
Attempted the resolution under https://github.com/Azure/LogicAppsUX/issues/3888 but no change.
What type of Logic App Is this happening in?
Standard (VSCode)
Are you using new designer or old designer
New Designer
Did you refer to the TSG before filing this issue? https://aka.ms/lauxtsg
Yes
Workflow JSON
{
    "definition": {
        "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
        "actions":{},
        "contentVersion": "<IP_ADDRESS>",
        "outputs": {},
        "triggers": {},
        "parameters": {}
    },
    "kind": "Stateful"
}

Screenshots or Videos

Browser
Chrome, Edge, Firefox
Additional context
No response

Hi @leighchilcott thanks for raising this issue. Does this only happen with the latest release? (v2.86.5) It does look like it might be something related to the back end.
Could you please execute the following command in your terminal?func host start --verbose --port "port number you are using" and let me know what is the result of it?
This command initializes the design time api and the --verbose prop will help us to have a better idea on what is going on. Thanks!

Hey @ccastrotrejo
Rolling back to a previous version of the extension also gives the same errors as shown above, however a couple of days ago this was absolutely fine.
Running that command I get the following, but then nothing else from the terminal:
PS [Redacted]> func host start --verbose --port 8000
MSBuild version 17.6.1+8ffc3fe3d for .NET
Determining projects to restore...
All projects are up-to-date for restore.
C:\Program Files\dotnet\sdk\7.0.302\Current\SolutionFile\ImportAfter\Microsoft.NET.Sdk.Solution.targets(36,5): warning NETSDK1194: The "--output" option isn't supported when building a solution. Specifying a solution-level output path results in all projects copying outputs to the same directory, which can lead to inconsistent builds. [[Redacted].sln]
[Redacted] -> [Redacted].dll
Build succeeded.
C:\Program Files\dotnet\sdk\7.0.302\Current\SolutionFile\ImportAfter\Microsoft.NET.Sdk.Solution.targets(36,5): warning NETSDK1194: The "--output" option isn't supported when building a solution. Specifying a solution-level output path results in all projects copying outputs to the same directory, which can lead to inconsistent builds. [[Redacted].sln]
1 Warning(s)
0 Error(s)
Time Elapsed 00:00:23.71
              %%%%%%
             %%%%%%
        @   %%%%%%    @
      @@   %%%%%%      @@
   @@@    %%%%%%%%%%%    @@@
 @@      %%%%%%%%%%        @@
   @@         %%%%       @@
     @@      %%%       @@
       @@    %%      @@
            %%
            %

Azure Functions Core Tools
Core Tools Version:       4.0.5198 Commit hash: N/A  (64-bit)
Function Runtime Version: <IP_ADDRESS>67
[2023-12-22T09:55:24.070Z] Found [Redacted].csproj. Using for user secrets file configuration.
[2023-12-22T09:55:30.681Z] Host lock lease acquired by instance ID '00000000000000000000000045B00C31'.

hi @ccastrotrejo
I am also experiencing the exact same problem since yesterday 22/12/23.
It happened since the latest release of Azure Logic Apps (Standard) extension v2.86.5
Even though I rolled back to v2.81.5 , I restarted machine, I have uninstalled and reinstalled Azure Functions Core Tools v. 4.0.5455  but Visual Studio Code is giving me the same error as @leighchilcott - both when trying to open the workflow designer, or when trying to create a data map using the data mapper:
Azure Functions Core Tools
Core Tools Version:       4.0.5198 Commit hash: N/A  (64-bit)
Function Runtime Version: <IP_ADDRESS>67
[2023-12-22T15:00:32.571Z] Error configuring services in an external startup class.
[2023-12-22T15:00:32.571Z] Error configuring services in an external startup class. Microsoft.Azure.Workflows.WebJobs.Extensions: Could not load type 'Microsoft.Azure.WebJobs.Host.Listeners.IListenerDecorator' from assembly 'Microsoft.Azure.WebJobs.Host, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
[2023-12-22T15:00:32.619Z] A host error has occurred during startup operation '07701869-117a-4df2-abdc-fa32dc37e048'.
[2023-12-22T15:00:32.619Z] Microsoft.Azure.WebJobs.Script: Error configuring services in an external startup class. Microsoft.Azure.Workflows.WebJobs.Extensions: Could not load type 'Microsoft.Azure.WebJobs.Host.Listeners.IListenerDecorator' from assembly 'Microsoft.Azure.WebJobs.Host, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
Value cannot be null. (Parameter 'provider')
[2023-12-22T15:00:32.650Z] Host startup operation has been canceled
[2023-12-22T15:00:32.678Z] Azure Storage connection string is empty or invalid. Unable to write diagnostic events.
3:30:17 PM: Error: connect ECONNREFUSED <IP_ADDRESS>:8000

Same issue, started recently. Designer worked about a week ago, reverting to previous versions of standard logic apps extension didn't help.
--verbose func host start:
https://pastebin.com/t0pSvLTP

Hi all, thank you so much for sending the information with the verbose. It does seem to be a BE issue. I will transfer the issue and start an internal thread with the team, so they can be aware of it and start working on the fix.
In the meantime, as a workaround can you update your host.json extension bundle version from the default [1.*, 2.0..0) to [1.44.16]? This will download and use an older bundle to rule out regression. Please provide the same logs if this works or doesn't work when starting the host.


Docs: Improvements for core-concepts/layouts

In core-concepts/layout page, the markdown example can be improved to maontain continuity with above stated specifications, here (https://github.com/withastro/docs/blob/main/src/pages/en/core-concepts/layouts.md)

Improvements:

Comment the indication that the long text below the --- will be shown in slot
{frontmatter.author} is useless as-of-now as there is no author defiend in above markdown file. Therefore we can add an author + utilise the description property from above markdown to maintain consistence.

P.S: I would like to work on this issue and would like to be counted as a valid hacktoberfest contribution.

Hi @himanshu007-creator!
I'd be happy to have you make a PR to address those two specific issues! Thank you for offering to work on this. I believe your improvements will be helpful. When you make the PR please do mention that it "closes" this issue 1781, and I'll apply the hacktoberfest label to it.  🎃


Fixed type error

On Debian Jessie with python 3.4.2 I got this error when running the script
TypeError: can't use a string pattern on a bytes-like object

Hey @predator5047, as people are requesting, I'm planning to license the project under MIT License. Since I've merged your pull request, I wanted to ask if you consent.

Yes it's fine.


Improvement suggestions after my initial review

Simplify test_package
add package_type
fix licenses & topics
Add openssl version range
Don't pass uneeded cmake variables

Hi @RubenRBS, did you have the chance to take a second look at this PR?


chore(docs): build bb.js in docs build script

The docs need to build the latest bb.js now to build correctly, after this PR.
Checklist:
Remove the checklist to signal you've completed it. Enable auto-merge if the PR is ready to merge.

[ ] If the pull request requires a cryptography review (e.g. cryptographic algorithm implementations) I have added the 'crypto' tag.
[ ] I have reviewed my diff in github, line by line and removed unexpected formatting changes, testing logs, or commented-out code.
[ ] Every change is related to the PR description.
[ ] I have linked this pull request to relevant issues (if any exist).

I think the better solution is to use netlify CLI in our build pipeline and push the built site to netlify. https://github.com/AztecProtocol/aztec-packages/issues/3336


Consumer group with random prefix

I'm running two beam pipelines on Apache Flink which read messages from the same Kafka topic by using KafkaIO. Both of them are in the same consumer group, so in my understanding each message should be consumed by either pipeline (but not both) but I observed that the same set of messages is consumed by each pipeline, meaning each message is processed at least twice.
I can see in the log that additional consumer group with prefix "Reader-1_offset_consumer_<random_number>_" was created and also consume messages.
Could you explain what should I do to consume messages only once by one consumer group and why that additional group was created?
Similar issue: BEAM-12880
Imported from Jira BEAM-12995. Original Jira may contain additional context.
Reported by: htsi.

Duplicate of https://github.com/apache/beam/issues/20159 per original discussion.


Issue #2030. AModule enable_click & enable_scroll

Hi @Alexays . This PR supplement modules action and solves the Issue #2030 . The issue here is module (like Clock) when format-alt is not provided can call ALabel contstructor with enable_click = false or enable_scroll = false.  In the same time user can use redefining action functionality. As a result even user redefined actions AModule don't catch events. So AModule first check this. And in case when user redefined actions, AModule initializes event catching.

Thanks!


Introduce a macro to implement printf attribute

This lets us remove a lot of #ifdef __GNUC__ in function declarations, which makes them more readable.

Thanks for the PR this was merged manually as there were some fun internal changes that I had to make to be able to pull in this code.


Support for UWP callers and a non command line interface API

Description of the new feature/enhancement
The Windows Package Manager currently exposes a command line interface to search for packages, install them, view progress, and more. This request is for a COM API so that callers have a more programmable way to make use of that functionality. The COM API would be preferred by callers that want to receive progress and completion events, and UWP packages that do not have permission to launch command line processes.
Proposed technical implementation details (optional)
The winget package could expose an out of proc COM server with an API surface that allows install of packages.
UWP apps and other callers would use the COM server to activate the objects.
The calling apps would include the winmd of the API in their project in order to handle marshalling data between processes.

I added a draft proposal here https://github.com/microsoft/winget-cli/pull/889 . I do not believe I have permission to link the draft pull request to this item.

Sorry for the partly unrelated question, but I am not super familiar with COM and many others will possibly wonder the same thing:
Will this automatically enable remote activation of the interface via DCOM or would you have to specifically support DCOM?

@doctordns this is some of the required work to build PowerShell cmdlets.

@jantari The proposed feature wouldn't have DCOM support automatically in the sense that people asking that question would mean. DCOM at some point did refer to any out of process scenario such that COM over RPC could have been called DCOM. But since it was introduced the cross process stuff is now so built in that most everyone would just consider that COM which leaves the cross machine scenarios as what everyone would mean when asking about DCOM. Those scenarios are more complex than regular COM and now pretty unusual. For cross-machine scenarios I would speculate you'd be more likely to get support by a CSP feature request for something like https://docs.microsoft.com/en-us/windows/client-management/mdm/enterprisemodernappmanagement-csp but I have no insight into whether anything like that is planned. If you follow through to the draft proposal you can see that the proposal is an out of proc com server that can return winrt objects to workaround Windows limitations for packaged com (no out of proc winrt servers), so not intended to support remote scenarios.

Thank you, and yes cross-machine DCOM is what I was referring to but I just wanted the clarification - I am not advocating for remote DCOM support in winget, as you've said it has faded into obscurity a bit and many of the usecases I knew of have been replaced by WinRM/WSMAN/remote WMI years ago - which would also work for wingets local COM interface, e.g. interacting with it over a WinRM connection in PowerShell with Invoke-Command and New-Object -ComObject so I don't see a need for DCOM


Observatory: Flutter Observatory debugger and profiler not working in browser

In future when reporting Flutter issues please do it at https://github.com/flutter/flutter/issues and make sure to include output of flutter doctor, which contains version information of your flutter installation.
Do you see any error messages in the console of the browser?
There was a regression on master branch which has since been resolved. See https://github.com/flutter/flutter/issues/64333 - if you are on master please upgrade and try again.

Okay sure,
--Do you see any error messages in the console of the browser?--
No
--There was a regression on master branch which has since been resolved. See flutter/flutter#64333 - if you are on master please upgrade and try again.--
Okay

Let us know if upgrading solves it. If it does not we need more information e.g. browser version, if you use any extensions (try disabling extensions to see if they interfere with the page) and Flutter version (output of flutter doctor).


Readability: fix text extraction. (#405) r=bgrins

This passes my own ad-hoc testing by dumping the function into the Firefox web console and making a heinous mishmash of <li>, <p>, and text nodes.

Coverage decreased (-0.01%) to 30.74% when pulling 2d9e5676ab25877aa8cad5e8de773dd6816b830e on rnewman/fix-text-extraction into c12b4608213c837a97aa35e17ce292e1c34ae053 on master.

LGTM with the comment addressed

Coverage increased (+16.3%) to 45.446% when pulling<PHONE_NUMBER>d5b7b5ee86d54d0f36d554a576332d on rnewman/fix-text-extraction into 585cb4efa8f82b4eab41afcc554d4e4198fb2a22 on master.


Add paged CSV readers and writer that span multiple files

Create a reader and a writer for CSVs that span multiple files, where each file represents a page.

Solved by #22, because it is easy to chain multiple flowables together and is no longer something we have to explicitly implement.


Regression in ParquetFilters rewrite

Believe the below change is causing stack overflows when there are larger sets of values in an IN set (273 in my example)
https://github.com/palantir/spark/pull/41
Proposed fix is two-fold:

do a treeReduce instead of leftReduce at https://github.com/palantir/spark/pull/41/files#diff-67a76299606811fd795f69f8d53b6f2bR240
create a new config value to set a threshold past which we don't do the IN set -> OR list conversion.  Similar to existing spark.sql.optimizer.inSetConversionThreshold

Disagree on the root cause here. If it got logged it already got converted and sent over the wire and as such issue might be coming from somewhere else doing conversion to the filter. This doesn't need a flag. Just a udp (userdefinedpredicate to handle that).

Relevant upstream PR is 14076

I suggest using https://github.com/apache/parquet-mr/pull/353 and then reintroducing https://github.com/apache/spark/pull/14076 but it needs to implement canDrop/inverseCanDrop instead of keep

Mentioned on the thread, but yeah we can go either way. When doing the UDP approach we will want to keep the keep method so that we can do dictionary filtering.

Parquet side fixed in https://github.com/palantir/parquet-mr/pull/13
Spark fixed in https://github.com/palantir/spark/pull/74

Fixed in 2.1.0-palantir20


Revert "Add recruitment banner for cost of living tree test"

The cost of living banner recruitment banner can now be removed as we have enough participants.
https://trello.com/c/vwqFgpRr/1539-take-down-cost-of-living-banner
Reverts alphagov/frontend#3472

@hannako pact tests are still failing as it's re-running an existing workflow that used the old configuration. Any future PRs should be fine, as they'll pick up the new config. For now you can ignore this failing test, as its passed in Jenkins (it shouldn't block you merging)

idk how I managed to approve this twice


JSLint - dissallowDanglingUnderscores (should it be added?)

I wondered if "disallowDanglingUnderscores": true, should be added to the JSCS.json file.
The affect of the change would be a series of warnings requiring some JS changes.
See http://jslinterrors.com/unexpected-dangling-_-in-a
I'm working with Visual Studio's Web essential's addin see: https://github.com/madskristensen/WebEssentials2013 and the default setting for that project includes
"disallowDanglingUnderscores": true,
What are your thoughts?

@JenasysDesign thanks for the question, we are currently updating our grunt tasks and also the jscs rules in #1185. I will keep your remark in mind when setting up the new rules. For further progress in updating the rules keep an eye out on PR #1185


Support correct ANSI marshaling semantics

https://github.com/dotnet/corert/blob/master/src/System.Private.CoreLib/src/Internal/Runtime/CompilerHelpers/InteropHelpers.cs
 internal static unsafe byte[] StringToAnsi(String str)
        {
            if (str == null)
                return null;

            // CORERT-TODO: Use same encoding as the rest of the interop
            var encoding = Encoding.UTF8;

It needs to account for ANSI in Windows.

Also, it would be nice for it to allocate on stack for small strings... .

Fixed in https://github.com/dotnet/corert/pull/3315


Fix for event Linq querying if you happen to have an Event.Id member.…

… Closes GH-2777

I'm not going to lose any sleep over that comment staying in:-)


Spfx form customizer edit form gives error

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

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

Additional environment details

browser version
SPFx version 1.19.0
Node.js version 18.20.2 / 20.15.1
etc

Describe the bug / error
When you try to open edit form it constantly gives error every second.

New item form works without any problem but the edit form gives error. It doesn't matter it is in gulp serve or published to the server. I tried in both v18 and v20 in node with spfx 1.19.0
Steps to reproduce

create spfx form customizer (react) with yo
create test list in SP online and add one test item so that there is a item with ID 1
modify the serve config for the test list
run gulp serve --config=helloWorld_EditForm

Expected behavior
I expected to see the empty custom page when the page starts.

I'm experiencing the same issue with spfx version 1.18.2 (node 16.13.2). Both with existing and new form customizers. As soon as I run gulp serve I'm getting an error. In the developer tools I'm receiving the same error every second, as mentioned in the post above.

So basicly debugging for form customizers does not seem to work at the moment.

Could this be related to some SharePoint Online update? Because older spfx version doesn't work too and also form customizers still doesn't work in either in workbench or as a published app in production.


Tree - column option

Is it possible to have a ColumnNum option under Tree's Configuration.
For more detail please see example image.

Do you want to achieve something like this?

@atatanasov  it works as the layout you mention, but is it a way to let users know which one did they checked or how many did checked when this layout collapsed.

I'm still not sure what you need to have as configuration option. Could you give me more details and examples.

I will close this ticket for now. Please reopen it if you can provide more details and make it more clear.


Squeeze more screen space on mobile devices

I noticed while playing Pyramid (iPhone 7 Plus, in the landscape orientation) today that if the deck was placed on the right or on the left, there would be much more space available for the cards, so that they would've been bigger.
Experiment with layout and spacing between cards on mobile devices. Maybe elements could be rearranged automatically if there's no much space available?

You can even experiment with some kind of auto-hiding of foundations and the deck on mobile devices. I don't know... make them appear only when necessary, put them behind the edge of the screen, represent foundations only by some small symbols, etc. You might actually find a way to squeeze out even more space if you try...
Yeah, but as I have mention before the most important thing is for foundations and the deck to by in a place where they won't "steal" the space from other cards.

Right now, each game has exactly one layout, but there's the potential to have multiple layouts and choose the one most appropriate for the current aspect ratio.
However, the most annoying part of completing a game is creating the layout. I built an auto-layout engine, but it's not perfect for every game so I still need to tweak it manually for most games. Adding landscape and portrait layouts doubles the work.


Added PostMarkdown component

I thought this would be needed for https://mattermost.atlassian.net/browse/PLT-8236, but it turned out that the fix for that issue was way easier, and I just wasted a bunch of time refactoring this. Oops.
This does end up eliminating some duplicated code between posts and the post textbox preview at least.

Agreed on leaving it until 4.6. I meant to mention that when I submitted it

@hmhealey
/home/jenkins/workspace/mattermost-webapp_PR-404-RRTOZMLHIBLBF2LSOM4OR2D4TPPIBO2NG2FA425JW6YLM3RPB66Q/mattermost-webapp/components/post_markdown/post_markdown.jsx
  63:9  error  Duplicate key 'channelNamesMap'  no-dupe-keys


BLC_15: Menus on bubble chart are not localized under language PT

SEVERITY: Major
MODULE: Bubble Chart
OS/BROWSER: Windows 7/Chrome 45.0
STEPS TO REPRODUCE:

Navigate to URL: http://static.gapminderdev.org/vizabi/release/v0.5.1/preview/bubblechart.html
Bubble chart page will be loaded
Click on Set Lang: button of interaction button
Note that some of the menus are not localized

ACTUAL RESULTS:
Some menus of bubble chart are not localized in setting language as PT
EXPECTED RESULTS:
All menus should be localized according to selected language
SCREENSHOT:

Can't reproduce this issue on develop branch.

It might be fixed, also can't be reproducible here on my side as checked on develop branch

yes, it was fixed in v0.6


istioctl --hub option did not work for both 'istio/init:0.1' and 'alpine' images

Due to company rules, I should deploy istio without network... so i had save/load all istio images to my own docker registry.
And when i execute below command:
kubectl create -f <(istioctl kube-inject -f samples/apps/bookinfo/bookinfo.yaml)

It seemed that I need download 2 more images when init-containers: istio/init:0.1 and alpine:latest.
So i check the istioctl options, it shows --hub parameter could use my own docker hub.
After use '--hub' option, I could only pull init:0.1 from my own docker registry, instead of both  istio/init:0.1 and alpinet.
[root@master istio]# kubectl describe pod details-v1-317329131-76jrn -n scic-microservice-istio
Name:           details-v1-317329131-76jrn
Namespace:      scic-microservice-istio
Node:           <IP_ADDRESS>/<IP_ADDRESS>
Start Time:     Fri, 16 Jun 2017 14:35:24 +0800
Labels:         app=details
                pod-template-hash=317329131
                version=v1
Annotations:    alpha.istio.io/sidecar=injected
<EMAIL_ADDRESS>                kubernetes.io/created-by={"kind":"SerializedReference","apiVersion":"v1","reference":{"kind":"ReplicaSet","namespace":"scic-microservice-istio","name":"details-v1-317329131","uid":"f9cd39e4-525d-11e7-...
Status:         Pending
IP:             <IP_ADDRESS>
Controllers:    ReplicaSet/details-v1-317329131
Init Containers:
  init:
    Container ID:       docker://dd90f118619e245ba8a7e1122c96b13f5d254be1a20d140a0000a8cb67dde215
    Image:              <IP_ADDRESS>:5000/init:0.1
    Image ID:           docker-pullable://<IP_ADDRESS>:5000/init@sha256:0e20cda1a6bbb226f3a05dc6137f147701cd7fdb91b1796467eb75be070fab0f
    Port:
    Args:
      -p
      15001
      -u
      1337
    State:              Terminated
      Reason:           Completed
      Exit Code:        0
      Started:          Mon, 01 Jan 0001 00:00:00 +0000
      Finished:         Fri, 16 Jun 2017 14:35:26 +0800
    Ready:              True
    Restart Count:      0
    Environment:        <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-q3nzk (ro)
  enable-core-dump:
    Container ID:
    Image:              alpine
    Image ID:
    Port:
    Command:
      /bin/sh
    Args:
      -c
      sysctl -w kernel.core_pattern=/tmp/core.%e.%p.%t && ulimit -c unlimited
    State:              Waiting
      Reason:           ImagePullBackOff
    Ready:              False
    Restart Count:      0
    Environment:        <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-q3nzk (ro)
Containers:
  details:
    Container ID:
    Image:              <IP_ADDRESS>:5000/istio-bookinfo-details-v1
    Image ID:
    Port:               9080/TCP
    State:              Waiting
      Reason:           PodInitializing
    Ready:              False
    Restart Count:      0
    Environment:        <none>
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-q3nzk (ro)
  proxy:
    Container ID:
    Image:              <IP_ADDRESS>:5000/proxy_debug:0.1
    Image ID:
    Port:
    Args:
      proxy
      sidecar
      -v
      2
    State:              Waiting
      Reason:           PodInitializing
    Ready:              False
    Restart Count:      0
    Environment:
      POD_NAME:         details-v1-317329131-76jrn (v1:metadata.name)
      POD_NAMESPACE:    scic-microservice-istio (v1:metadata.namespace)
      POD_IP:            (v1:status.podIP)
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-q3nzk (ro)
Conditions:
  Type          Status
  Initialized   False
  Ready         False
  PodScheduled  True
Volumes:
  default-token-q3nzk:
    Type:       Secret (a volume populated by a Secret)
    SecretName: default-token-q3nzk
    Optional:   false
QoS Class:      BestEffort
Node-Selectors: <none>
Tolerations:    <none>
Events:
  FirstSeen     LastSeen        Count   From                    SubObjectPath                           Type          Reason           Message
  ---------     --------        -----   ----                    -------------                           --------      ------           -------
  20m           20m             1       default-scheduler                                               Normal        Scheduled        Successfully assigned details-v1-317329131-76jrn to <IP_ADDRESS>
  20m           20m             1       kubelet, <IP_ADDRESS>  spec.initContainers{init}               Normal        Pulling          pulling image "<IP_ADDRESS>:5000/init:0.1"
  20m           20m             1       kubelet, <IP_ADDRESS>  spec.initContainers{init}               Normal        Pulled           Successfully pulled image "<IP_ADDRESS>:5000/init:0.1"
  20m           20m             1       kubelet, <IP_ADDRESS>  spec.initContainers{init}               Normal        Created          Created container with id dd90f118619e245ba8a7e1122c96b13f5d254be1a20d140a0000a8cb67dde215
  20m           20m             1       kubelet, <IP_ADDRESS>  spec.initContainers{init}               Normal        Started          Started container with id dd90f118619e245ba8a7e1122c96b13f5d254be1a20d140a0000a8cb67dde215
  20m           20m             1       kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Warning       Failed           Failed to pull image "alpine": rpc error: code = 2 desc = Error response from daemon: {"message":"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:45471-><IP_ADDRESS>:53: read: connection refused"}
  20m           20m             1       kubelet, <IP_ADDRESS>                                          Warning       FailedSync       Error syncing pod, skipping: failed to "StartContainer" for "enable-core-dump" with ErrImagePull: "rpc error: code = 2 desc = Error response from daemon: {\"message\":\"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:45471-><IP_ADDRESS>:53: read: connection refused\"}"

  20m   20m     1       kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Warning Failed          Failed to pull image "alpine": rpc error: code = 2 desc = Error response from daemon: {"message":"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:38396-><IP_ADDRESS>:53: read: connection refused"}
  20m   20m     1       kubelet, <IP_ADDRESS>                                          Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "enable-core-dump" with ErrImagePull: "rpc error: code = 2 desc = Error response from daemon: {\"message\":\"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:38396-><IP_ADDRESS>:53: read: connection refused\"}"

  20m   20m     1       kubelet, <IP_ADDRESS>          Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "enable-core-dump" with ErrImagePull: "rpc error: code = 2 desc = Error response from daemon: {\"message\":\"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:54411-><IP_ADDRESS>:53: read: connection refused\"}"

  20m   20m     1       kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Warning Failed          Failed to pull image "alpine": rpc error: code = 2 desc = Error response from daemon: {"message":"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:54411-><IP_ADDRESS>:53: read: connection refused"}
  19m   19m     1       kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Warning Failed          Failed to pull image "alpine": rpc error: code = 2 desc = Error response from daemon: {"message":"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:54519-><IP_ADDRESS>:53: read: connection refused"}
  19m   19m     1       kubelet, <IP_ADDRESS>                                          Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "enable-core-dump" with ErrImagePull: "rpc error: code = 2 desc = Error response from daemon: {\"message\":\"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:54519-><IP_ADDRESS>:53: read: connection refused\"}"

  17m   17m     1       kubelet, <IP_ADDRESS>          Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "enable-core-dump" with ErrImagePull: "rpc error: code = 2 desc = Error response from daemon: {\"message\":\"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:46707-><IP_ADDRESS>:53: i/o timeout\"}"

  17m   17m     1       kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Warning Failed          Failed to pull image "alpine": rpc error: code = 2 desc = Error response from daemon: {"message":"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:46707-><IP_ADDRESS>:53: i/o timeout"}
  14m   14m     1       kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Warning Failed          Failed to pull image "alpine": rpc error: code = 2 desc = Error response from daemon: {"message":"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:58731-><IP_ADDRESS>:53: read: connection refused"}
  14m   14m     1       kubelet, <IP_ADDRESS>                                          Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "enable-core-dump" with ErrImagePull: "rpc error: code = 2 desc = Error response from daemon: {\"message\":\"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:58731-><IP_ADDRESS>:53: read: connection refused\"}"

  9m    9m      1       kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Warning Failed          Failed to pull image "alpine": rpc error: code = 2 desc = Error response from daemon: {"message":"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:42669-><IP_ADDRESS>:53: i/o timeout"}
  9m    9m      1       kubelet, <IP_ADDRESS>                                          Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "enable-core-dump" with ErrImagePull: "rpc error: code = 2 desc = Error response from daemon: {\"message\":\"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:42669-><IP_ADDRESS>:53: i/o timeout\"}"

  20m   4m      8       kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Normal  Pulling         pulling image "alpine"
  4m    4m      1       kubelet, <IP_ADDRESS>                                          Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "enable-core-dump" with ErrImagePull: "rpc error: code = 2 desc = Error response from daemon: {\"message\":\"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:38103-><IP_ADDRESS>:53: i/o timeout\"}"

  4m    4m      1       kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Warning Failed          Failed to pull image "alpine": rpc error: code = 2 desc = Error response from daemon: {"message":"Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: read udp <IP_ADDRESS>:38103-><IP_ADDRESS>:53: i/o timeout"}
  20m   12s     100     kubelet, <IP_ADDRESS>  spec.initContainers{enable-core-dump}   Normal  BackOff         Back-off pulling image "alpine"
  20m   12s     100     kubelet, <IP_ADDRESS>                                          Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "enable-core-dump" with ImagePullBackOff: "Back-off pulling image \"alpine\""

It does seem like a bug but as a workaround in the meantime just edit the injected yaml:
istioctl kube-inject -f samples/apps/bookinfo/bookinfo.yaml > /tmp/toinject.yaml
vi /tmp/toinject.yaml # and change the images you want to change
kubectl create -f  /tmp/toinject.yaml

going to close this with the assumption 0.2 install will be smoother. reopen (in https://github.com/istio/issues/issues ) if needed


Memory usage review requested for test-godaddy-centos7-x64-1

One of the tests is reporting that it can't find 4g of available memory on the machine, while the pre-test check appears to believe the os has more than that much.
Please check this machine and see if something's hogging the memory.
If it is, please get the memory released if possible, or perhaps just turn the machine off + on?

There were a couple of docker images on the machine which I've cleared up - both were running java processes using in the order of 1Gb of RAM. One was camel-quarkus and the other was tomee microprofile-tck.
I'm fairly sure this will resolve it.

Thanks @sxa :)


Clean-up Media Type Info

Related Issue(s): #
Proposed Changes:

This organizes how we talk about media types a bit better. It makes the media types of stac structures (item/catalog/collection) more clear, moves the common media types to 'best practices', and talks about asset media types a bit differently than link media types.

PR Checklist:

[x] This PR is made against the dev branch (all proposed changes except releases should be against dev, not master).
[x] This PR has no breaking changes.
[x] a CHANGELOG entry is not required.

Should probably squash commits on merge, since this has the history of #944 in it.

I think I addressed all the comments, so this should be good for final review.


Add swift-tagged

Pull Request Description
This adds https://github.com/pointfreeco/swift-tagged to the source compatibility suite. It relies on conditional conformance to be useful and is Swift 4.1-compatible.
Acceptance Criteria
To be accepted into the Swift source compatibility test suite, a project must:

[x] be an Xcode or swift package manager project (both)
[x] support building on either Linux or macOS (both)
[x] target Linux, macOS, or iOS/tvOS/watchOS device (all of the above)
[x] be contained in a publicly accessible git repository
[x] maintain a project branch that builds against Swift ~4.0~ 4.1 and passes any unit tests (this library relies on conditional conformance to be useful, requiring 4.1)
[x] have maintainers who will commit to resolve issues in a timely manner
[x] be compatible with the latest GM/Beta versions of Xcode and swiftpm
[x] add value not already included in the suite
[x] be licensed with one of the following permissive licenses:

BSD
MIT 👈
Apache License, version 2.0
Eclipse Public License
Mozilla Public License (MPL) 1.1
MPL 2.0
CDDL

[x] pass ./project_precommit_check script run (TBD?)

Ensure project meets all listed requirements before submitting a pull request.

I've left one item unchecked since this library, relying heavily on conditional conformance, requires Swift 4.1. I hope the value proposition makes this worth inclusion regardless.

$ ./project_precommit_check Tagged --earliest-compatible-swift-version 4.1
** CHECK **
--- Validating Tagged Swift version 4.1 compatibility ---
--- Project configured to be compatible with Swift 4.1 ---
--- Checking Tagged platform compatibility with Darwin ---
--- Platform compatibility check succeeded ---
--- Locating swiftc executable ---
$ xcrun -f swiftc
--- Checking installed Swift version ---
$ /Applications/Xcodes/PublicGMs/Xcode-9.3-GM.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc --version
--- Version check succeeded ---
--- Executing build actions ---
$ runner.py --swift-branch swift-4.1-branch --swiftc /Applications/Xcodes/PublicGMs/Xcode-9.3-GM.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc --projects projects.json --include-repos 'path == "Tagged"' --include-versions 'version == "4.1"' --include-actions 'action.startswith("Build")'
PASS: Tagged, 4.1, 6e0798, Tagged-Package, generic/platform=macOS
PASS: Tagged, 4.1, 6e0798, Tagged-Package, generic/platform=iOS
PASS: Tagged, 4.1, 6e0798, Tagged-Package, generic/platform=tvOS
PASS: Tagged, 4.1, 6e0798, Tagged-Package, generic/platform=watchOS
PASS: Tagged, 4.1, 6e0798, Swift Package
========================================
Action Summary:
     Passed: 5
     Failed: 0
    XFailed: 0
    UPassed: 0
      Total: 5
========================================
Repository Summary:
      Total: 1
========================================
Result: PASS
========================================

@swift-ci test

@swift-ci test

Looking through the last results, none of the failures were from swift-tagged, so I expect this to go green soon. Thanks for your patience here.

@swift-ci test


add showlabels compatibility

Lists showlabels as compatible and adds a test. The labels are correctly tagged as artifacts.

I think it is arguable if this is correct. Artifact means that this information should be ignored when presenting the document in a different format. However, one can argue that this is intentional information, ie data dat should be presented, e.g., as an "aside". I think this warrants further thought.

In other wirds, maybe this should be labeled, partially compatible with a note or task stating that what kind of tagging should be deployed needs further thoughts.

Changed to partially-compatible with a tasks entry. Let me know if anything should be changed or added

@mbertucci47 since the discussion we had is here and not on any issue that can be easily found, either link the merge record or not in thecomments that these need some decision on the right tagging, thanks


Add customer_screenshot.png

When you open "Browse all available themes" is not convenient to activate the theme

Fixed by https://github.com/cscart/cscart-boilerplate/commit/8b2fd86b146076be4a1c725b9d35dd49a6ce57dd


The message is not being sent

Summary
The message is not being sent
Reproduction Steps
I want to write a bot that will write to users in the bos, but it does not do this
Code
@bot.command()
async def ping(ctx):
    for member in ctx.guild.members:
        try:
            dm = await member.create_dm()
            await dm.send('1')
        except:
            continue
    print('1')

Expected Results
I want to write a bot that will write to users in the bos, but it does not do this
Actual Results
A Dm is created but no messages are sent
System Information

Python v3.11.3-final
discord.py v1.7.0-final
aiohttp v3.7.4.post0
system info: Windows 10 10.0.22621

Checklist

[X] I have searched the open issues for duplicates.
[X] I have shared the entire traceback.
[X] I am using a user token (and it isn't visible in the code).

Additional Information
No response

This issue provides absolutely no info. Please reopen and properly fill out the bug form.


⚠ Bofrost.si has degraded performance

In 8e6a34d, Bofrost.si (https://www.bofrost.si) experienced degraded performance:

HTTP code: 500
Response time: 3482 ms

Resolved: Bofrost.si performance has improved in e455fc3 after 8 minutes.


FileSystemProvider: file operations not reflected

Refs: https://github.com/Microsoft/vscode/issues/48421
Setup:

clone https://github.com/bpasero/remote-fs
F5
click "Refresh" in the explorer
you should see the current working directory as a remote folder using the file system provider for scheme datei://

Steps

do a local operation from the explorer such as "New File"

=> after doing so the file is opened in the editor but the explorer is not showing it
=> it seems there is a file operation but the outcome is not good?
/cc @jrieken

@bpasero I can not reproduce it. Do you see this constantly?
Can you reproduce this with a regular FS? On what OS are you?

I think this is the same casue as #48663
Let's wait for @sandy081 to fix that one

Sorry, this was me having a bad workspace file entry where I used a relative URI.


fix: install aws cli for current host architecture

Issue #, if available:
Description of changes:
Install the awscli binary for the correct host architecture
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

FWIW, I just tried this successfully and as a user I found this pretty helpful. Note that the version number needs to be bumped.

Hello, will this PR be merged in any of the coming releases?


[WIP] Major refactor roadmap

DSPy has a small number (maybe 5-6) of extremely powerful concepts that have grown organically over the past year as open source.
Internally, it's time for a major refactor that will simplify things greatly and make sure everything works more smoothly. I have received a lot of interest from the community to contribute to this, so we just need to make sure the goals and milestones are clearly defined.
Potential leaders in this space include @CyrusOfEden @stalkermustang (and from the internal DSPy side possibly @krypticmouse and @arnavsinghvi11 but I haven't checked with them) and there has been a lot of in-depth shots at this from @thomasahle so I'm curious if he's also interested broadly in this.
Starting this issue just to collect the necessary tasks and prioritize them in the right dependency order.
Off the top of my head, I think we have to have:

Cleaner LM abstraction that requires a lot less work to maintain and is clearer about the boundaries. The amazing @CyrusOfEden has already defined this on paper. This will include cleaner "Backend" abstraction, which is a bit of a wrapper around LMs that does template adaptation and other things that Cyrus has in mind.

Cleaner Signature abstraction. I think the push by @thomasahle here is perfectly on the right track. Types, and immutable signatures. We just need to make more decisions about how far down Pydnatic/Types we go, and how far down, say, SGLang we go, or having our own logic, etc. I do like outsourcing parsing logic and type logic but we need to make sure it doesn't break existing features.

Cleaner Modules. This is actually easy but needs to be streamlined. Predict, CoT need to be Modules. And they need to store instructions (not leave it to the signature). They need to handle multiple outputs more consistently. This can be any of us really, esp @arnavsinghvi11, me, @krypticmouse , @thomasahle if any of the folks is interested.

Cleaner Optimizers. Well, we can leave this to me and it's a final easy step once signatures and modules are good.

More guidance on common patterns in the docs. We now finally have docs for all the key components and we have plenty of individual examples. But we do not have enough guidance on the common e2e workflows. This also partly includes clear guidance on what people should do with local LMs: ollama for cpu, tgi or sglang or vllm(?) for gpus? What about quantization etc.

Thoughts? Other things we need?

Production concerns? Streaming. Async.
Docstrings.
Various individual issues.

Yes, RMs too but RMs can honestly just be function calls so it's easier for people to deal with it now.
Actually CoT and Predict should be dspy.Modules. CoT shouldn't inherit from Predict, that's a bad old decision that we'll change.

Sounds perfect! I was wondering if we can shift Example, Prediction and Completions classic to Pydantic.
Tensors are the only dtype in pytorch and so is the case for Examples an dtype but interally all that the other two do could be wrapped in a class method.
This would be a wayy big of a migration and possibly not even backwards compatible. So might wanna think on this.

I disagree with that @krypticmouse . Predictions are already Examples anyway.

I'm for using as much Pydantic as we can here

Indeed, Prediction are basically Example thought they do have the from_completion method that Examples don't. That doesn't make much difference yes, but yea I thought this could've become a class method of a Pydantic model.
Not a major issue tbh though, just a thought :)

Reliably keeping within token limits when compiling and running programs, without having to set the module config for a specific LM, is big for me to be able to deploy this to production. IMO, ideally the config could stay pretty much the same if you move from a 32k context to a 8k context. You'd just recompile and it'd automatically use less or shorter demos and whatever else it needed to
My initial thoughts are that this have two main elements:

Add something like an estimate_tokens method to LM. It'd take the same arguments as an LM call but would just return the tokens that would be used if you actually called it. Same idea as a 'what if' in infrastructure deployments, takes the same parameters but doesn't run anything just tells you what'd it'd to if you actually ran it.
Make use of the new estimate_tokens method when compiling to stay within token limits

The distinction between the 2 elements is because it's not just for compiling that it'd be useful. When we create a module or program it'd be good to be able to estimate tokens so you can do things like limit the amount of context given by retrieval

I want to echo your point @okhat about the instructions/prompts in modules. I think right now they are a little spread out in code as strings in various places that is sometimes appended together. If that could be elevated in terms of abstractions and/or made clearer, it might even make it easier to analyse a module and potentially perform some interesting transformation on itself later down time line. I don't quite think we need to go as far as the prompting first abstractions that langchain offers but prompting is not something we can completely divorce this from, but doing so in a more organised fashion that allows for future analysis could be useful?

Integrating 4 (optimizers) in the thinking early on might be necessary, since they are what put the biggest strain on the API. We need to think about what features they require to be available, such as

Changing the signatures
Storing traces/examples
Reconfiguring the lms
and so on, and find the simplest Predict classes etc. that satisfy those.

Assertions is another example of an "involved" feature, that needs a lot of support, but hopefully not a lot of special casing. Right now there's the whole new_signature keyword argument that gets used sometimes, and seems to be introduced specifically for Retry to use.

#368 should get merged in (or at least, its tests) before we embark on any major refactor because we ought to have tests to ensure we don't have any unintended regressions

Hey team, some notes so far:

Backend refactor sounds great!
Indeed, this is an interesting one.
Can’t comment on how this is currently configured.
Awesome, certain the team you’ve put together will come up with something interesting for this! Already super love the BayesianSignatureOptimizer.
Ah fantastic, sorry for the delay here — will touch up on the WeaviateRM.

I like the idea of extending RMs to be more than function calls, but I do think that interfacing, for example, the Weaviate python client with the module’s forward pass probably will work fine for awhile.
Keeping within token limits sounds amazing. The LMs have an internal max_tokens state that you could probably just multiple by the upper bound of number of calls in your module’s forward passes. Compiling is another story I don’t know enough about DSPy yet to comment on.

still have a couple more responses to read, will update with @s

I'll try to kick off the backend refactor Saturday, if not, @isaacbmiller is down to have the first part ready by Tuesday–Wednesday of next week

Recently, Ollama released an OpenAI-compatible API. Other companies like Mistral AI also offer APIs that follow OpenAI specifications. Additionally, there are projects like LiteLLM that provide API-compatibility layers (e.g., using proxies).
So I think that LM abstraction could potentially be a thin wrapper around the OpenAI API specification. Is this a viable option?

@S1M0N38 you would still need the thin wrapper though to pass in optional arguments with kwargs.

@S1M0N38 @CShorten just came across LiteLLM today — and it seems like a home run for inference (not fine-tuning). Am I missing anything?

@S1M0N38 you would still need the thin wrapper though to pass in optional arguments with kwargs.

@CShorten what are optional kwargs that differ from provider to provider that are need by DSPy? (e.g. I think temperature is one of those needed to control the amount of prompt "exploration", isn't it?). Here for example are the input params that LiteLLM support for different providers.

... just came across LiteLLM today — and it seems like a home run for inference (not fine-tuning). Am I missing anything?

@CyrusOfEden I believe you're correct, but upon examining the code in dsp/modules/[gpt3|cohere|ollama].py, it appears that the only requests being made are HTTP requests to the inference endpoint, namely /completion, chat/completion, /api/generate, api/chat, etc. These are all inference requests for text. Could you elaborate on the fine-tuning you mentioned?
I'm not entirely familiar with the inner workings and requirements of this framework, so everything I've mentioned may not be feasible. Therefore, please take my statements with a grain of salt. In my opinion, for a project like this, it's best to focus on core concepts rather than implementing numerous features. The idea is to defer those to other libraries or leave them to the user to implement, guided by high-quality documentation.

@S1M0N38 I think the way multiple generations are sampled -- for example Cohere has num_generations but the google.generativeai API has no such option. Probably little nuances like this, but the chart you shared is great, I trust your judgment on this.

@S1M0N38 yup, LiteLLM would be good for inference — and currently LMs don't have a .finetune method but we want that later.

I'm new to this library, I'd love to see more support for production deployment, my prioritized wish list would be:

Deployment tools/docs (clarity for: how does this fit into your CI/CD?)
Async
Type annotations
Doc strings
Streaming

@bencrouse those are definitely on the roadmap — I think the focus right now is reliability / API / typed outputs / everything Omar originally mentioned and then afterwards we want to do some thinking through what it means to productionize this (async/streaming/deployment/etc.)

+1 For supporting all OpenAI compatible local LLM servers for inferencing and not just Ollama. I think this will increase adoption because a lot of "application developers" of LMs who are not ML experts use tools like LM Studio, GPT4All, etc.

Hi I'm the litellm maintainer - what's missing in litellm to start using it in this repo ? @CyrusOfEden @S1M0N38
Happy to help with an issues / feature requests - even minor ones

Hi I'm the litellm maintainer - what's missing in litellm to start using it in this repo ? @CyrusOfEden @S1M0N38
Happy to help with an issues / feature requests - even minor ones

Tbh I think you're good for now, great to have your support 🔥

@ishaan-jaff how does tool use work with models that don't necessarily support it?
Would be really cool if I could use LiteLLM for tool use for whatever model -- is there a table for tool use support somewhere?
Separately, is LiteLLM able to integrate something like Outlines to support tool use for models that don't natively support it?

Interesting question, I suspect digging into how dspy.ReAct implements the dspy.Retieve tool could be a good start to understanding how to interface all tools @CyrusOfEden.
Maybe this is the argument for why these tools should be integrated deeper into DSPy than externally used as calls to the forward pass (or there is some kind of API contract with the ReAct for passing in arbitrary functions as well).

Yeah I’m in favor of minimal abstractions around tools. I think a tool being just a function whose docstring and arguments and name can be used by ReAct can achieve this

The coupling between DSPy and "tools", in the ReAct sense, should be as light as possible in my opinion. There could be some annotations that could be made that makes optimisation easier, however; for instance, to enable backtracking with it.
More generally, I feel like some of the coupling with other technologies like RMs may be a little too strong at the moment from a software engineering perspective, which I understand the reason behind as it unlocks a lot of cool things like retrieveEnsemble, but it does feel a little specific at the moment.
My vague intuition is that it would be great if DSPy could have a more generic boundaries and well defined boundaries when it comes to the backend components(hopefully backed by classes and types and less so magic strings/attributes). A more defined internal operating mechanics/schema could make future development of passes and features a lot less burdensome.

Yeah I’m in favor of minimal abstractions around tools. I think a tool being just a function whose docstring and arguments and name can be used by ReAct can achieve this

LiteLLM on it — really liking what I'm finding in this repo — they have a util for converting from a Python function to a JSON schema tool def [0]
[0] https://litellm.vercel.app/docs/completion/function_call#litellmfunction_to_dict---convert-functions-to-dictionary-for-openai-function-calling

@ishaan-jaff how does tool use work with models that don't necessarily support it?

We switch on JSON mode if the provider supports it and we add thefunction / tools to the prompt and then get a response
Does this answer your question ?

@CShorten, @okhat  Currently, in WeaviateRM, the Weaviate client is still from Weaviate v3. Are there any plans in the current roadmap to update it to Weaviate Python Client (v4)? If not, should we add it?

Hey @ovshake! Yes planning on updating that soon, but please feel free if interested would really really appreciate it!
On a side note related to the WeaviateRM, @okhat. I am preparing a quick set of demos on the discussion above about how to use Weaviate as an external tool and how to then interface the functions with docstrings for ReAct.

Thanks @CShorten , I will definitely take a stab at it and open a PR :)

@CyrusOfEden @okhat I started looking into a liteLLM integration as a starting place for a nicer universal integration. We might be blocked from getting an openAI version running until we upgrade to > OpenAI v1.0.0(#403 is merged). I'm still going to try to see if I can get an Ollama version to work.

Hello,
Could we also add the feature that allows loading a compiled/optimized module with its assertions and inferences to the roadmap?
If that's already supported, please share a notebook. I can propose a notebook if I get the code snippet for how to do this.
Thank you!

Question thats come up in a few different places.
With the LiteLLM integration, would we sunset all provider specific classes (OpenAI, Cohere etc), and direct everyone to use the LiteLLM interface?

@ishaan-jaff can you add me on Discord? cyrusofeden

Hi, Omar asked me to tag you @CyrusOfEden . Here is a notebook where I use LangChain's gpt model and am able to use it with native DSPy predict function: [Google Colab]. Please let me know if you have questions

If the trainset and metric function were tied to the module (via the predict function for each module), the teleprompters could optimize each and every layer (module) in a multi-module app. Off the top, this does not seem like a difficult thing to implement.
I realize assertions and suggestions are a step in this direction, but I don't think they are a replacement for optimizing each layer individually.

^ Big topic I think -- I would love to at least be able to control the max_bootstrapped_examples per module in optimization, because some tasks like reranking or summarizing 20 documents require more input tokens for few-shot examples than say query generation or yes/no / low cardinality output routers like vector search or text-to-sql as a random example.
I think it's also related to the concept of taking a single component out, optimizing it separately on the incoming inputs and outputs and plugging it back into the broader network with the compiled signature. But then I'm not sure how the new round of compilation impacts those examples -- although I suppose they are stored as predictor.demos() so the compiler probably does have some kind of interface in place.

sent a discord request @CyrusOfEden

@okhat @CyrusOfEden New to dspy, looking to contribute, but the bounty board is empty and all the discussing seems to be happening here; thought I'd tag you directly. How might I actually contribute here?

@mgbvox agreed with the static typing aspects!

Even better would be just using enums and other nested pydantic objects. This works but it should ideally just implicitly call the typed versions when annotations are available, and use function calling to generate structured outputs.
class EmotionType(Enum):
    sadness = "sadness"
    joy = "joy"
    love = "love"
    anger = "anger"
    fear = "fear"
    surprise = "surprise"

class Emotion(dspy.Signature):
    sentence = dspy.InputField()
    sentiment: EmotionType = dspy.OutputField()

sentence = "i started feeling a little vulnerable when the giant spotlight started blinding me"

classify = TypedPredictor(Emotion)
classify(sentence=sentence)

Prediction(
    sentiment=<EmotionType.fear: 'fear'>
)

@chris-boson You can already do this now, right?
I think Cyrus backend work will allow types to go through function calling, or schema APIs or whichever way the underlying model prefers.

Just my personal opinion. But I would much prefer seeing this module adopt an async-await programming model. All of the LLM calls are I/O bound, so the current thread model doesn't make much sense and is harder to debug. It's also much easer to go async -> sync (using asyncio.run()) than the other way around. This would also make it much simpler to throttle the number of parallel calls, since there is no need to share a counter/completion state between threads.

Async is definitely in popular demand and would be nice to have, but I don’t understand the claim about threading. Threads work great right now for throughput.

@okhat it's more for deployment —
when you're using threading to compile / run once it doesn't make all that big a difference
in production async uses way less memory

@chris-boson You can already do this now, right? I think Cyrus backend work will allow types to go through function calling, or schema APIs or whichever way the underlying model prefers.

Yes, it works, just a bit cumbersome to explicitly call the typed versions. Good to know we're working on integrating function calling!
Generally having type annotations / pydantic flow through the entire stack would make it significantly more useful when interacting with APIs or other traditional software systems where structured output is crucial. Also types constrain the problem space and can be checked with something like mypy to uncover many issues early. I think that would mesh very well with the idea of "programming" LLMs. I think the way instructor is going looks very promising.

@AndreasMadsen I agree that async is the way to go to make DSPy more useful in production settings, and more elegant. In the meantime, might I recommend this way forward? I understand it's not 100% what you're looking for, but maybe in the meantime it unblocks you.
Here's an example of what you could do:
from asgiref.sync import sync_to_async

program_a = ...
program_b = ...

async_program_a = sync_to_async(thread_sensitive=False)(program_a)
async_program_b = sync_to_async(thread_sensitive=False)(program_b)

with dspy.context(lm=x):
    a, b = await asyncio.gather(
        async_program_a(*args, **kwargs),
        async_program_b(*args, **kwargs)
    )

I like (and share) your idea of passing the LM directly to the program, because right now the code above (is probably) not compatible with different LMs per-concurrent-program. I'll noodle on that further as part of the backend refactor :-)

Modules is an area that needs refactoring, for sure. The problem for open source models is that dspy modules conflate the hosting provider (Bedrock, Sagemaker, Azure, ...) with the model (Mixtral, Phi2, ...).
A related issue is that DSPy prompts are currently model-agnostic, but the best results do require a model-aware prompt. People have pointed this out on Discord or come up with various hacks to simulate system prompts etc.
Is this work in-scope? I see 'LiteLLM' posts here that seem related but not quite

To catch this thread up, weve got a new backend infrastructure up and basically ready to review/merge. This should offer the following:

LiteLLM integration, 100+ models out of the box.
Global caching for lm calls.
Chat mode and dynamic prompting.
JSON mode for applicable models.
A modularized, type safe and tested API to build from.

@KCaverly - Arize Phoenix depends on all LM classes being under the 'dsp' module. Something to consider testing before merge

i am interested in integration with LLM-based optimization techniques such as OPRO:
https://github.com/google-deepmind/opro

@den-run-ai I think COPRO is loosely based on OPRO to work for multi-stage pipelines.

JSON mode for applicable models.

@KCaverly Is there any publicly available info about this? Would be happy to help test this capability in the context of Claude 3/GPT-4 family models. Thank you!

@vilkinsons there's this branch https://github.com/stanfordnlp/dspy/tree/backend-refactor

@KCaverly is this still in progress or has the goal moved away from this refactor?

I saw the new dspy multiopenai (https://dspy-docs.vercel.app/api/language_model_clients/MultiOpenAI)
It can give support for litellm proxy
however, can we also add a class in sentence_vectorizer to give a quick solution for litellm embedding.
I have a PR add LiteLLMVectorizer to allow more embeddings to be used (https://github.com/stanfordnlp/dspy/pull/1240)
May I change the class name to MultiOpenAIVectorizer to support all the api using openai api format including litellm proxy.


community.aws.ec2_elb_info not found

The 3.x.x release of community.aws has removed the module, ec2_elb_info.
See https://docs.ansible.com/ansible/latest/collections/community/aws/ec2_elb_info_module.html#deprecated

Similarly I think community.aws.rds is now community.aws.rds_instance


Changed template location lookup to use configured file extension

Currently by default, ".mustache" and ".html.mustache" works for base templates, although partials always use the template_extension configuration and will throw errors if named ".mustache".
I updated the potential_paths to use the file extension in the configuration rather than a hardcoded set of paths to help remove ambiguity.

This looks great. Thanks!


renames /examples in /plugins

supposed to be fixed. not yet sure. all tests i tried worked tho.
closing. reopen later if needed


NOISSUE - Return to transport only things service errors

Currently, we send to transport.go errors from different sources (db, cache, etc.). However, not all of these errors are addressed by the switch case in the transport.go. So we have a double problem: firstly, inconsistent error sources, secondly unaddressed errors.
Also, we need to make swagger spec in agreement with new error handling.

Currently, we send to transport.go errors from different sources (db, cache, etc.). However, not all of these errors are addressed by the switch case in the transport.go. So we have a double problem: firstly, inconsistent error sources, secondly unaddressed errors.
Also, we need to make swagger spec in agreement with new error handling.

@darkodraskovic It would be better to create an issue to explain this

Codecov Report

Merging #1236 into master will decrease coverage by 1.82%.
The diff coverage is 36.69%.

@@            Coverage Diff             @@
##           master    #1236      +/-   ##
==========================================
- Coverage   76.18%   74.36%   -1.83%
==========================================
  Files         106      106
  Lines        6983     6159     -824
==========================================
- Hits         5320     4580     -740
+ Misses       1278     1194      -84
  Partials      385      385

Impacted Files
Coverage Δ

things/api/auth/http/endpoint.go
100.00% <ø> (ø)

things/redis/channels.go
64.70% <0.00%> (-9.21%)
:arrow_down:

twins/api/http/transport.go
87.33% <0.00%> (-0.94%)
:arrow_down:

things/postgres/things.go
79.42% <4.16%> (-1.38%)
:arrow_down:

things/postgres/channels.go
79.68% <18.18%> (-1.91%)
:arrow_down:

things/redis/things.go
66.66% <20.00%> (-4.77%)
:arrow_down:

things/api/things/http/transport.go
87.71% <53.84%> (-0.81%)
:arrow_down:

things/service.go
77.68% <57.57%> (-8.65%)
:arrow_down:

things/api/auth/grpc/server.go
92.15% <100.00%> (-4.34%)
:arrow_down:

things/api/auth/http/transport.go
90.14% <100.00%> (+0.95%)
:arrow_up:

... and 106 more

Continue to review full report at Codecov.

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

@sprql we've decided to go for 401 as authn error and to use 403 with the upcoming groups feature. Maybe you could review my PR - which converts 403 to 401 as a side effect and eventually refactor your pr to match the other parts of the MF code.

@darkodraskovic that looks like a good idea


Defer manifest

w/o defer loading this script is a blocking resource, but it doesn't need to be. The scripts that need it are already <script type=module> which are automatically deferred. Deferred scripts are executed in order, so it's guaranteed to be available before the following scripts that need it are executed.
Testing Strategy: It's just <script defer> so we don't need to test that chromium defers correctly. Since all existing tests pass, we know it doesn't break apps.

@ryanflorence Since this PR was added, the script was updated with async instead of defer. Is that not correct behavior? Do we really need to defer execution or is simply not blocking sufficient here?


Pass registration form to frontend through an API endpoint

Related component: api, registration form
Description
Currently we have the /api/registration endpoint that accepts fields from the frontend and validates them. This validation happens in the model level, the serializer level and in the frontend, and the form fields are redeclared in the frontend and the serializer level.
Instead, this should be a Django form. This form needs to contain all the validation in it, and it needs a way to be converted into JSON to pass to the frontend through a new API endpoint with the following data:

Form title
Form destination URL (for example /api/registration)
For each field:

field name
field label
field type
regexes that should apply (in which case pass the regex) / other validations that should also be on frontend side

The missions here are:

Create a registration Django form
Create a way to convert forms into JSON
Create an API endpoint to pass the registration form as JSON

when it will be available for use?

On hold until the new system is stabilized


WASI implementation test automation

I couldn't find any test suite in WAMR which tests end-to-end WASI interfaces. I thought it'd be good to have a set of tests (possibly in a form of standalone applications with assertions) that get executed on WAMR and execute various WASI methods (e.g. file operations etc.). I'm more than happy to work on details of that and share my ideas, but before that I'd like to know community thoughts, and whether there's already something like that planned?

Hello @loganek,
I think that would be a great idea to have some additional end-to-end WASI tests. To add some information regarding file operations, I have written some tests under the form of a sample that can be found in my recent pull request: #1489 (check this file).
The location of such tests would also be a good discussion with the devs since I'm not sure the samples directory is the best location for them.
Cheers!

Thanks @JamesMenetrey for the feedback. Whereas I'm yet to come up with a concrete proposal, I think it's probably better to keep sample apps and tests separate, as their purpose is slightly different. The purpose of sample apps is to demonstrate the usage of the APIs in a lightweight, possibly more a tutorial-style form, whereas tests are expected to check various edge cases, be exhaustive etc.
I think there always will be an overlap here, but that's OK. Also, I think some of our sample apps are more like test apps, so once we have a separation, we can move them around.

Wamr is using a separate repo to maintain WASI test suites . It is forked from another open source project and kind of out-of-date, but still a good reference.
If want to reuse that, please let us know, and we will add your team into that repo. Or another brand new test framework is welcomed. In that case, it is free to create the new test framework in either one of both.

Wamr is using a separate repo to maintain WASI test suites . It is forked from another open source project and kind of out-of-date, but still a good reference.

i'm interested in the repo too.

If want to reuse that, please let us know, and we will add your team into that repo. Or another brand new test framework is welcomed. In that case, it is free to create the new test framework in either one of both.

i occasionally use a fork of wasm3 wasi tests for the purpose. its coverage is not great though.

Wamr is using a separate repo to maintain WASI test suites . It is forked from another open source project and kind of out-of-date, but still a good reference.

i'm interested in the repo too.

@yamt I have added you to the user list of the repo, could you please check the email and accept the invitation?

Wamr is using a separate repo to maintain WASI test suites . It is forked from another open source project and kind of out-of-date, but still a good reference.

i'm interested in the repo too.

@yamt I have added you to the user list of the repo, could you please check the email?

i accepted the invitation. thank you.

Hey! I would also be interested in getting access to this repository, please. :)

@JamesMenetrey added :)

@wenyongh Great thanks!


Only allow for lower-case version name, fixes #22

@phorward  tbh, I don't like the new behavior to implicit fix the version. I think the user should choose a correct one, otherwise refuse it. Is there any essential reason for this change?

@phorward  tbh, I don't like the new behavior to implicit fix the version. Is there any essential reason for this change?

yes, it's a classic Felix Mac-user issue.


Short Comments Not compatible with video or web links

when you paste a Video link in Telegram, or Signal, or WhatsApp,
generates a preview image...
but Odysee.com fails, same as Github.com

![ThisIsaTest](https :// youtu .be/O0xpTtdPD4w)
video preview image is a division of the video,
if video is 1920x1080, preview could be:
/10 = 192x108
/8 = 240x135
/6 = 320x180
/5 = 384x216
/4 = 480x270
/3 = 640x360
/2 = 960x540
IF video is 4:3  compatible for Cellphone vertical screen, needs other values.
https://en.wikipedia.org/wiki/NTSC
https://en.wikipedia.org/wiki/Fullscreen_(aspect_ratio)
the idea is to pass-through the link, Not give error,
and give a preview in Odysee Premium.
when preview image is clicked, grows to Box size like Yandex browser.
The problem is related to adding ! at the beginning,
just [...] (...) work fine, No !
Click New Comments:
https://odysee.com/@Happy:9/Howtocommentwithanimage:7
Web link Automatic: https://en.wikipedia.org/wiki/Fullscreen_(aspect_ratio) <-- Error
Manual [without](https://en.wikipedia.org/wiki/Fullscreen_(aspect_ratio)) !,
and ![with](https://en.wikipedia.org/wiki/Fullscreen_(aspect_ratio)) !
Video Link: [without](https://youtu.be/O0xpTtdPD4w) !,
and ![with](https://youtu.be/O0xpTtdPD4w) !

Don't plan to change anything here at this time, sorry.


python310Packages.pyunifiprotect: 4.3.3 -> 4.3.4

Description of changes
https://github.com/AngellusMortis/pyunifiprotect/releases/tag/v4.3.4

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 196657 run on x86_64-linux 1

4 packages built:

home-assistant-component-tests.unifiprotect
python310Packages.pyunifiprotect
python39Packages.pyunifiprotect
unifi-protect-backup


Why the "" in "[$\w]" ?

Won't the \w in [_$\w] already match the _? Just asking out of curiosity :mag:

It's useless indeed, thanks for picking it up!

I really did think there was reason, I would've submitted a PR removing them otherwise :disappointed_relieved: np


Check if there is buffer left before reading first tag

The conformance suite attempts to decode a lot of empty messages.

@rwstauner do you mind resolving the conflicts?


[139] added tooltip on hover

PR Checklist
Please check if your PR fulfills the following requirements:

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

What is the current behavior?

Issue Number: N/A
What is the new behavior?
Does this PR introduce a breaking change?
[ ] Yes
[ ] No

Other information

Any other changes @faizanu94 you want ot make before i release this?

None as of now - I'll pick and start something soon :) Thanks

Is there a way to tweak this logic so we can add a custom tooltip?
I created a custom node using the <foreignObject /> approach and tried adding a custom tooltip, but I don't think atm reaflow allows custom tooltips
for example
import { NodeProps, Node } from "reaflow";

const CustomTooltip = () => {
 // Custom Tooltip component
}

export default const CustomNode = (nodeProps: NodeProps) => {

   return (
    <Node
         {...nodeProps}
         onClick={handleClick as any}
       >
         {({ node, x, y }) => {
           return (
             <CustomTooltip>
               <foreignObject
                 x={0}
                 y={0}
                 width={node.width}
                 height={node.height}
               >
                 <span>{node.id}</ span>
               </ foreignObject>
             </ CustomTooltip>
           );
         }}
    </Node>
   )
}


Verify that "Abrud-Sat" is listed in the dropdown menu when searched

Description:
"Abrud-Sat" should appear in the dropdown menu with correct spelling and locality information.
Preconditions:
The website is up and running.

Step 1
Type "Abrud-Sat" in the search bar.
Expected results:
The dropdown is listing "Abrud-Sat" as the first location in the dropdown menu.

Step 2
Observe the dropdown menu.
Expected results:
"Abrud-Sat" is displayed and selectable from the dropdown menu.


[CARBONDATA-3842] Fix incorrect results on mv with limit (Missed code during mv refcatory)

Why is this PR needed?
Already issue fixed in PR-3652. Missed code during mv code refactory
What changes were proposed in this PR?
Copy subsume Flag and FlagSpec to subsumerPlan while rewriting with summarydatasets.
Update the flagSpec as per the mv attributes and copy to relation.
Does this PR introduce any user interface change?

No

Is any new testcase added?

No

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1403/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3127/

@Indhumathi27 why the test cases didnt catch this. If we do not have test cases, please add a test case for the limit case.

retest this please

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1563/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3300/

retest this please

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1578/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3316/

retest this please

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3335/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1595/

LGTM


Visual Studio Test Platform Installer' task to have option to choose latest release

Environment

Server - VSTS or TFS on-premises? -> VSTS

Agent - Hosted or Private: -> NA

Issue Description
Visual Studio Test Platform Installer has only an option for the Latest Pre-Release but not for latest release:

@bergmeister the task is still in pre-view. Right now Latest Pre-Release gets you the latest version (Stable or Preview). We will soon be adding an option for latest Stable also.
But do note that as of today if the latest version available is a stable version then choosing latest pre-release gets you that.

@bergmeister for all intents and purposes latest pre-release == latest release.
These pre-release versions are also thoroughly tested internally.
Also if you are adamant on sticking to a specific stable version then you can use the specific version option.

Ok, thanks, understood. To me it sounds like it would be best to have 3 options:

Latest version (no matter if release or pre-release) as currently present but rrenaming it to Latest version (allow pre-release) or something like that would make it clearer
Latest released version as per this issue request
Specific version as currently present

@bergmeister thank you for your feedback. We should picking this up in sometime when we get the task out of preview. @PBoraMSFT to take a look at the suggestion for naming the options.

@bergmeister Apologies. Will keep it open for tracking. The reason is that internally we track all our work items elsewhere and that customers sadly don't have visibility over that. Will take your feedback going forward and keep issues that have pending action items open and tag them appropriately.
Thank you for pointing this out :).

@bergmeister - we have picked this up for execution. Apart from the latest stable / latest including pre-release options, we are also adding support for custom feeds and the task will come out of preview.
ETA for roll-out to all accounts is 3-4 weeks from now.

@ShreyasRmsft - can you close the issue if the deployment rollout has started ?

@PBoraMSFT Thanks, I can see it already in my VSTS account :-)

Closing the issue.

So....how do I use a custom feed? There's ZERO documentation on this--ANYWHERE.
I selected to use a custom feed and used http://mynugetserver.com/v3/index.json, but acquiring the test tools failed: WARNING: This version of nuget.exe does not support listing packages from source 'http://mynugetserver.com/v3/index.json'.
We're using Azure DevOps Server 2019 (not sure if it's RTM or update 1 or 2). Task version 1.*.
Please add documentation about what the URL should look like. Also, it might be a good idea to document the minimum version of Nuget.exe that is required and how to go about checking that you meet such a minimum requirement since these tasks are all "black boxes".....


Create roadmap.md

Development roadmap updates

@shebuk Can you configure your Git client to add a signoff line? I have the technical ability to override it if needed, but it's a bit annoying.


Video showing ESP-RFID

Hi chaps, not really an issue - I made a youtube video showing how to implement ESP-RFID
see here
enjoy.

Thanks for the video, I'm using 1.3.3 and I can't set a pin code other than a single digit. Is this a feature of the 1.3.7 version or do I just have a inferior wiegand keypad?
Thanks

Thanks for the video, I'm using 1.3.3 and I can't set a pin code other than a single digit. Is this a feature of the 1.3.7 version or do I just have a inferior wiegand keypad?
Thanks

I have this same issue, I require atleast a 4 digit pin to make this a viable option.


URCap could claim the Tool-IO

Currently, we grab the tool IOs once this URCap is installed. This makes it impossible to have this installed in conjunction with other URCaps, such as Robotiq_gripper. Similar to the latter, we could claim the resources only when configured to do so.
This would enable users to easily activate/deactivate this without the requirement of uninstalling it when unneeded.

This makes it impossible to have this installed in conjunction with other URCaps, such as Robotiq_gripper.

Is the the official Robotiq URCap that you'd use to control the gripper in Polyscope?
I feel like a documentation warning/sidebar
that points to this might save people some headaches, since I suppose a lot of us with Robotiq grippers have their URCap installed already.
Fortunately I stumbled on this issue right before trying it😆

@danzimmerman I've created a corresponding issue and PR relative to that. Thanks for the suggestion.