try use transport error:No user found for cluster:monitor/nodes/info

now I can use es with https and kibana, but can not use es with transport client.Here is my elasticsearch log:
[2018-12-04T11:08:16,772][ERROR][c.f.s.f.SearchGuardFilter] No user found for cluster:monitor/nodes/info from <IP_ADDRESS>:13626 TRANSPORT via netty {Authorization=Basic Q049c2lsdmlhLnp5c29mdC5jb20sIE9VPU9wcywgTz0iWnlzb2Z0IENvbSwgSW5jLiIsIERDPXp5c29mdCwgREM9Y29tOnsdfsfpbHZpYQ==, _sg_initial_action_class_header=NodesInfoRequest}
I guess maybe I lack some configuration about user.Here is my sg_config.yml
searchguard:
dynamic:
......
authc:
......
transport_auth_domain:
http_enabled: false
transport_enabled: true
order: 2
http_authenticator:
authentication_backend:
type: internal
authz:
......
internal_authorization:
enabled: true
authorization_backend:
type: internal
lastly,here is my transprot request:
	Settings settings = Settings.builder()
			.put("path.home", ".")
			.put("cluster.name", "demo")
			.put(SSLConfigConstants.SEARCHGUARD_SSL_TRANSPORT_ENABLED, true)
			.put(SSLConfigConstants.SEARCHGUARD_SSL_TRANSPORT_PEMCERT_FILEPATH,"../src/main/resources/ssl/node0.pem")
			.put(SSLConfigConstants.SEARCHGUARD_SSL_TRANSPORT_PEMKEY_FILEPATH,"../src/main/resources/ssl/node0.key")
			.put(SSLConfigConstants.SEARCHGUARD_SSL_TRANSPORT_PEMKEY_PASSWORD,"5suaaf8uT8")
			.put(SSLConfigConstants.SEARCHGUARD_SSL_TRANSPORT_PEMTRUSTEDCAS_FILEPATH,"../src/main/resources/ssl/root-ca.pem")
			.put("searchguard.ssl.transport.enforce_hostname_verification", false)
			.put("client.transport.ignore_cluster_name", true)
			.build();
    	TransportClient client = new PreBuiltTransportClient(settings, SearchGuardSSLPlugin.class)
    	.addTransportAddress(new TransportAddress(InetAddress.getByName("<IP_ADDRESS>"),9300));
    	client.threadPool().getThreadContext().putHeader("Authorization", "Basic "+encodeBase64("CN=silvia.ff.com, OU=Ops, O=\"ff Com, Inc.\", DC=ff, DC=com:silvia"));
		client.admin().cluster().nodesInfo(new NodesInfoRequest()).actionGet();
    	//搜索数据
		GetResponse response = client.prepareGet("user_hpq", "user_hpq", "1").execute().actionGet();

You need to replace "../src/main/resources/ssl/node0.pem" with an non-node (=client) certificate.
Pls see

https://docs.search-guard.com/latest/offline-tls-tool#node-and-client-certificates
https://docs.search-guard.com/latest/elasticsearch-transport-clients-search-guard#using-transport-clients
https://search-guard.com/transport-client-authentication-authorization/
https://search-guard.com/tls-certificate-generator/
https://search-guard.com/generating-certificates-tls-tool/

Please do not ask questions here.
For that refer to https://groups.google.com/forum/#!forum/search-guard or, if you are a paying customer, contact our support.
Github is a place only for reporting bugs or feature requests.


Add spot fix function/class

PR Overview
We noticed during the FERC1 transform process that some plant records with missing name values can be manually rescued, with plant names fairly easily found by manual inspection for rows with data (#1980). In order to preserve these records from getting dropped, this PR adds a new general transform method to the AbstractTableTransformer. Built to be flexible for different datasets and sources, this function is designed to be used during the main stage of transformation, before drop_invalid_rows() is called. These parameters should be stored as a list of dictionaries, where each dictionary is a set of transformations containing the following parameters:

idx_cols: the column names used to identify records to be spot-fixed
fix_cols: the columns to be spot-fixed
expect_unique: is the user expecting that each spot fix will only be applied to one row in the dataframe? A boolean.
spot_fixes: a list of tuples containing the values for the idx_cols and fix_cols for each fix.

As defensive measures, the code includes the following checks:

checks that the input data can be converted to the data type of the dataframe
checks that the index columns provided act as a unique index if expect_unique is TRUE
checks that the records identified to be fixed are actually in the dataset / data subset.

Particular forms of feedback that would be useful, in addition to general review:

@cmgosnell Is the original set of manual fixes you provided still working as intended, even though record_id isn't a primary key anymore?
Are there any missing input type hints? We can provide datetime objects as strings and they'll get converted using the new dtype checker.
Should the spot fixer live at the very start or very end of transform_main?
Is the documentation for this transformation clear enough?

PR Checklist

[x] Merge the most recent version of the branch you are merging into (probably dev).
[x] All CI checks are passing. Run tests locally to debug failures
[x] Make sure you've included good docstrings.
[ ] For major data coverage & analysis changes, run data validation tests
[x] Include unit tests for new functions and classes.
[x] Defensive data quality/sanity checks in analyses & data processing functions.
[x] Update the release notes and reference reference the PR and related issues.
[x] Do your own explanatory review of the PR to help the reviewer understand what's going on and identify issues preemptively.

Made some major updates in response to the great feedback above. Here's what's changed:

Building on @zaneselvans 's MultiIndex code, the function now iterates through "sets" of fixes (e.g., name changes for the steam table, manual capacity fix), rather than through each individual fix. Users can specify multiple index column for each set of fixes.
Added expected_unique boolean parameter based on @aesharpe 's suggestion. This will return a ValueError if users think they've supplied a primary set of indexing columns but they haven't. Conversely, we can also use the function to apply the same fix to multiple rows, if this is desired behavior.
Expects that the dtypes of the input data will match the dtypes of the spot fixed records, and throws a ValueError if not. Note that this might cause a headache if dtypes are changing throughout the transform_main step, or might change where in the process we want to add this function?

Some questions still to resolve:

@cmgosnell Is the original set of manual fixes you provided still working as intended, even though record_id isn't a primary key anymore? I'll wait to update test.validate.ferc1_test.test_minmax_rows until I know what we're changing immediately, if anything.
Tests still need to be written. What's a good way to scope out potential use/edge cases to test this function out on. especially as someone who is still new to the codebase?
What is the entire list of datatypes found in extracted dataframes that we might want to update? (And how do I get pydantic to play nicely with them?)

A small-scale demonstration of the actual spot-fixer function with barry:
from datetime import datetime

import numpy as np
import pandas as pd

# A few records from our favorite test plant...
barry = pd.DataFrame(
    np.rec.array(
        [
            (3, "1", "2020-01-01T00:00:00.000000000", 153.1),
            (3, "2", "2020-01-01T00:00:00.000000000", 153.1),
            (3, "3", "2020-01-01T00:00:00.000000000", 272.0),
            (3, "1", "2021-01-01T00:00:00.000000000", 153.1),
            (3, "2", "2021-01-01T00:00:00.000000000", 153.1),
            (3, "3", "2021-01-01T00:00:00.000000000", 272.0),
            (3, "1", "2022-01-01T00:00:00.000000000", 153.1),
            (3, "2", "2022-01-01T00:00:00.000000000", 153.1),
            (3, "3", "2022-01-01T00:00:00.000000000", 272.0),
        ],
        dtype=[
            ("plant_id_eia", "int64"),
            ("generator_id", "O"),
            ("report_date", "<M8[ns]"),
            ("capacity_mw", "<f8"),
        ],
    )
)

spot_dict = [
    {
        "idx_cols": ["plant_id_eia", "generator_id"],
        "fix_cols": ["capacity_mw"],
        "expect_unique": False,
        "spot_fixes": [
            (3, "1", 1000.0),
            (3, "2", 999.0),
        ],
    },
    {
        "idx_cols": ["generator_id", "report_date"],
        "fix_cols": ["capacity_mw"],
        "expect_unique": True,
        "spot_fixes": [
            ("1", datetime.strptime("2022-01-01", "%Y-%m-%d"), 200.1),
            ("1", datetime.strptime("2021-01-01", "%Y-%m-%d"), 100.1),
        ],
    },
]

for spot_fix in spot_dict:

    spot_fixes_df = pd.DataFrame(
        spot_fix["spot_fixes"], columns=spot_fix["idx_cols"] + spot_fix["fix_cols"]
    )

    assert (
        spot_fixes_df.dtypes
        == barry[spot_fix["idx_cols"] + spot_fix["fix_cols"]].dtypes
    ).all(), "Spot fix data types do not match existing dataframe datatypes."
    """Check that the datatypes of the spot fixed values match the existing data types."""

    spot_fixes_df = spot_fixes_df.set_index(spot_fix["idx_cols"])
    barry = barry.set_index(spot_fix["idx_cols"])

    if spot_fix["expect_unique"] is True:
        cols_list = ", ".join(spot_fix["idx_cols"])
        assert (
            barry.index.is_unique
        ), f"This spot fix expects a unique set of idx_col, but the idx_cols provided are not uniquely identifying: {cols_list}."

    barry.loc[spot_fixes_df.index, spot_fix["fix_cols"]] = spot_fixes_df
    barry = barry.reset_index()

barry

Let's Define Spot Fixing...
I would love to settle on a clear definition for "spot fix" (and maybe change the function name to be more specific). It can mean many different things, and I'm not sure how many of those things we actually want this function to cover. @zaneselvans you mentioned wanting to use this for a lot of different types of spot fixes, but I don't want this to become a black box.
I think it's worth asking ourselves if we want more functions with overlapping capacity or fewer, less specific functions with generic purposes. I'm slightly in favor of the former for clarity's sake. For instance, we have the function replace_with_na which we could probably merge into the spot-fixer if we wanted, but it's nice to have a specific logger for replacing things with NA (though we could also have more nuanced logging outputs for the spot-fixer). Another example is whether we should define a separate function for something like bad +/- signs. Technically that could be done by a spot-fixer, but do we want that?
Right now the SpotFixer class in classes.py says:

Parameters that replace certain values with a manual corrected value

And the spot_fix_values() function says:

Manually fix one-off singular missing values across a DataFrame.

In my mind, the purpose of this spot fixer is enable quick, one-off fixes for those gnarly little errors that slip through the cracks. Say someone is looking through the data and notices a glaring but tiny but obvious mistake like a misspelling or year error--instead of getting lost in an issue thread or going to die in the icebox, it can get taken care of in the spot fixer. In other words:

Cherry pick singular bad values and replace them with specific new values.

Ex: I found a typo in this one plant name that I want to fix, or this row is blank but should actually be plant name XYZ.

Other, similar types of spot fixing include:

Bulk replace certain bad values with a certain other values.

Ex: All 0s should be NA or all cases of "Plant4" should be "Plant"
Something like categorize_strings but less strict...(maybe categorize_strings itself doesn't have to be strict, and we just rely on the enum defined in fields.py enforced in enforce_schema function, or we add another parameter about strictness).

Use regex to replace bad values.

Ex: Anytime you see the phrase "X Plant" replace it with "Y Plant" or in this specific row, replace "--" with "-"

I think at most this function could do all three of these things. But I want to define clear boundaries so it doesn't overlap with or get confused with any of the other extant functions.
Current Ad-hoc spot fixes:
Here's a list of some spot fixes I found in the FERC1 and EIA data that can help inform how we thing about spot fixes

Combine data from certain adjacent rows.  I made a function called spot_fix_rows() for the small plants table that does this. (We might want to consider renaming one or both functions to distinguish them).
Alter part of the data with a constant. The ownership_eia860 table reports pre-2012 values as percentages and post-2012 values as proportions. To sync the data, we divide all pre-2012 values by 100.
Fix bad +/- signage throughout the data. We created the function apply_sign_conventions for the plant_in_service table, and we might want to flesh that out instead of just using a spot-fixer. We could use a generic spot-fixer for one-off bad negatives, but I wonder if we'd be better off creating a function with a more specific purpose (fixing bad signs), if just for transparency about what's happening.
Fix spelling of should-be categoricals.

The ownership_eia860 table creates a new column called owner_country for instances of CN (Canada) in the owner_state column, changes the spelling to CAN, and nullifies all CN values in owner_state.
The generators_eia860 and plants_eia860 tables has a few should-be boolean column with values N, Y, X. We determined that X means N and replaced them accordingly so the boolean converter would properly recognize the values.
The generators_eia860 table also has some U values that are converted to unknown
The eia861 tables also do this with bad NERC region values and balancing authority codes

Fillna(). For the generators_eia860 table, we use fillna("RE") on the operational_status_code because we concatenated several tables and one of them didn't have values for operational_status_code.
One-off Errors.

The balancing_authority_eia861 table has a case of a single balancing authority id reported as 13047 thing when it should be 13407.
The balancing_authority_eia861 table

...will continue to update as I find more

Thanks for this @aesharpe.
In my mind this function as initially described in the issue and as I've written it is well suited to addressing relatively contained errors that one spots manually and would like to manually fix. This could include fixes like: correcting typos, or fixing an inputted variable for a single plant or year, fixing IDs as in the balancing_authority_eia861 table. This is similar to how you've described cherry picking and a more limited subset of bulk replacing values. Ideally, one would use this for instances where no more than several dozen values are being replaced in any one set of spot fixes, not where one wishes to update hundreds or more values, because one currently has to manually specify each row to be replaced. Other functions like pd.replace() would be better suited to handle tasks such as replacing all instances of a value or regex match (e.g. CN -> CAN, big--plant -> big_plant).
I'm inclined to keep the form of this spot_fixer() general enough to accept many kinds of input data, but its intended purpose relatively limited. I'm happy to update the function documentation to make the intended use of this function clearer.

@aesharpe Most of the data cleaning we have to do can be done in much more general ways, but it seems like there often end up being a few dregs that we know are wrong, and can identify fixes for, but that don't fit into any of the more generalized cleaning processes, so we've ended up imposing manually compiled edits. Spot fixing should be a last resort. When other more general fixes are available, we should use them first. Also, it only makes sense to use this kind of fix when it's a hard-coded edit. It can't include regexes. It can't accommodate things like converting percentages to proportions. We already having the coding tables and encoders to fix bad codes and document the meanings of the correct codes.
So I think this should only be used on things like the one-off errors in your list. The other fixes you listed are more general / programmatic. Some examples that seem appropriate:

Timezone offset code fixes enumerated at the top of pudl.transform.ferc714
Balancing authority name & ID fixes enumerated at the top of pudl.transform.eia861
County name fixes enumerated at the top of pudl.transform.eia861

I think the only things this PR lacks are the data-type compatibility check/enforcement step that @e-belfer suggested, and some unit tests.
We can create a separate issue enumerating existing manually compiled spot-fixes that can be converted to use this function and the format of fix that it requires.

@zaneselvans ok, I'm glad we're on the same page about this. I was thinking you meant someone more broad when you said "generic". The list of spot-fixes I made was more to show the scope of little tweaks we do and to help us consider what we would want to call a spot fix.

@cmgosnell Is the original set of manual fixes you provided still working as intended, even though record_id isn't a primary key anymore? I'll wait to update test.validate.ferc1_test.test_minmax_rows until I know what we're changing immediately, if anything.

Maybe i lost the thread here on this, but I kinda thought these name fixes were for plant records that had only one record for each record_id. But i'm assuming this wasn't the case because you have expect_unique is False? I think for this one in particular, I would have thought it would be unique but just fixing the name even on multiple fields feels relatively harmless!

@cmgosnell Got it! I think there was some miscommunication about whether or not record_id is uniquely identifying, and it should be in this case as far as I understand. I updated the expectations and they haven't thrown any errors so I guess that's a secondary confirmation :)


fix exported conduit dependency

I missed one of the two directories that need to be moved in parallel.  This affects downstream users.
  There are some files left over that can leave you in a bad state.

@white238 thanks for hunting this down!
This solves the mystery that Kenny was having.
To summarize:
There are few files hanging around in the old place.
Axom, when building was looking in the right place, but  the imported targets was still looking in the old place.
Since the old files where hanging around, it found a partial setup.
@kennyweiss  this fix may also solve the Threads::Threads issue.
I'll make the fix in conduit to remove the old files.


build: Rewrite depsgen in go

Less dependencies for the win.

This needs rebase because of my docs fixes, should be trivial.

A couple of comments but LGTM if it works :sweat_smile:

If #1130 gets merged before this we should remove the perl dependency in scripts/vagrant/install-rkt.sh

:+1: works better than perl version - perl version doesn't spot changes in stage1/init/*.go files (YMMV)  and go version does - please merge it A :soon: AP  because I don't know perl enough to fix my builds :confused:

Some nits but LGTM and makes the issue of not rebuilding when there're changes in *.go files disappear :+1:

Let's wait for Semaphore to be green and merge.


.Net Framework Web application using managed identity?

Any sample application for .Net Framework web application?  I have been successful with integrating App Configuration Store with Core web application and .net Framework core but cant get a .net framework web application to work.  I kept getting this error: Method not found: 'Void Azure.Data.AppConfiguration.SettingSelector.set_AsOf(System.Nullable`1<System.DateTimeOffset>)'.

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

ID: 67bda25f-abd6-9ed3-5e5c-ebe53196dac2
Version Independent ID: 265ace8e-9474-af38-7234-d89f6af38408
Content: Quickstart for Azure App Configuration with .NET Framework
Content Source: articles/azure-app-configuration/quickstart-dotnet-app.md
Service: azure-app-configuration
GitHub Login: @lisaguthrie
Microsoft Alias: lcozzens

@bebemau Thank you for the feedback!  We are investigating this and will get back to you shortly.

@bebemau I'll pass that request to the document author.
For .NET Framework console apps, I went through the documentation and it may be helpful to see what a finished App.config looks like.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <configSections>
        <section name="configBuilders" type="System.Configuration.ConfigurationBuildersSection, System.Configuration, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" restartOnExternalChanges="false" requirePermission="false" />
    </configSections>
    <configBuilders>
        <builders>
        <add name="AzureAppConfig" endpoint="[Config_Store_Endpoint_Url]" type="Microsoft.Configuration.ConfigurationBuilders.AzureAppConfigurationBuilder, Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
        <!--  This is included by default, and we're going to use "Environment" from the quickstart below.
        <add name="Environment" type="Microsoft.Configuration.ConfigurationBuilders.EnvironmentConfigBuilder, Microsoft.Configuration.ConfigurationBuilders.Environment, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
        -->
        <add name="MyConfigStore" mode="Greedy" connectionString="${ConnectionString}" type="Microsoft.Configuration.ConfigurationBuilders.AzureAppConfigurationBuilder, Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration" />
        <add name="Environment" mode="Greedy" type="Microsoft.Configuration.ConfigurationBuilders.EnvironmentConfigBuilder, Microsoft.Configuration.ConfigurationBuilders.Environment" />
        </builders>
    </configBuilders>
    <appSettings configBuilders="Environment,MyConfigStore">
      <add key="AppName" value="Console App Demo" />
      <add key="ConnectionString" value ="Endpoint=https://appconfig-dotnet.azconfig.io;Id=1Ab2-c3-d4:e5fGhi67jk8LmNOPQ9Rs;Secret=ABcd+EF12+Ghijkl3MnOpQrS4tU5Vw6xyZa7bcCeFG8=" />
    </appSettings>
    <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
    </startup>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="<IP_ADDRESS>-<IP_ADDRESS>" newVersion="<IP_ADDRESS>" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="<IP_ADDRESS>-<IP_ADDRESS>" newVersion="<IP_ADDRESS>" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="<IP_ADDRESS>-<IP_ADDRESS>" newVersion="<IP_ADDRESS>" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="<IP_ADDRESS>-<IP_ADDRESS>" newVersion="<IP_ADDRESS>" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="<IP_ADDRESS>-<IP_ADDRESS>" newVersion="<IP_ADDRESS>" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Azure.Core" publicKeyToken="92742159e12e44c8" culture="neutral" />
        <bindingRedirect oldVersion="<IP_ADDRESS>-<IP_ADDRESS>" newVersion="<IP_ADDRESS>" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

Program.cs is very straight forward:
namespace AppConfigDotNET
{
    class Program
    {
        static void Main(string[] args)
        {
            string message = System.Configuration.ConfigurationManager.AppSettings["TestApp:Settings:Message"];

            Console.WriteLine(message);
        }
    }
}

Then you should get something like this:

There's a new ASP.NET sample here: https://github.com/Azure/AppConfiguration/tree/master/examples/DotNetFramework/WebDemo
Also working on a tutorial on our docs site.

Thank you very much for the update and the sample, i will take a look at it.
The issue i have is i am not able to use managed identity with a web
application.  Connection string works but looks like connection string will
not be supported in newer version and we do prefer using managed identity.
On Tue, Apr 14, 2020 at 11:18 PM kobulloc-MSFT<EMAIL_ADDRESS>wrote:

@bebemau https://github.com/bebemau I'll pass that request to the
document author.
For .NET Framework console apps, I went through the documentation
https://docs.microsoft.com/en-us/azure/azure-app-configuration/quickstart-dotnet-app#connect-to-an-app-configuration-storeand
it may be helpful to see what a finished App.config looks like.

Program.cs is very straight forward:
namespace AppConfigDotNET
{
class Program
{
static void Main(string[] args)
{
string message = System.Configuration.ConfigurationManager.AppSettings["TestApp:Settings:Message"];
        Console.WriteLine(message);
    }
}

}
Then you should get something like this:
[image: image]
https://user-images.githubusercontent.com/37556655/79304329-ee3e8600-7ea5-11ea-974c-355581c446cf.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/52131#issuecomment-613839555,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA2DWI5CDNTPLHABOGDGENTRMVGSTANCNFSM4MFDBOAA
.

Hi @bebemau - sorry for the delayed response. There is a sample for using managed identity with .NET Framework in this article. Let us know if you're having any other problems.
#please-close


HTML doc typos

Reported by anonymous on 25 Sep 2012 13:54 UTC
The HTML documentation of models
Modelica.Blocks.Sources.CombiTimeTable
Modelica.Blocks.Sources.TimeTable
Modelica.Electrical.Analog.Sources.TableCurrent
Modelica.Electrical.Analog.Sources.TableVoltage
Modelica.Electrical.Spice3.Sources.I_pwl
Modelica.Electrical.Spice3.Sources.V_pwl

needs to be fixed from
, in order to not integrate over a discontinuous or not differentiable points.

to
, in order to not integrate over a discontinuity or not differentiable points.

.

Migrated-From: https://trac.modelica.org/Modelica/ticket/838

Comment by hansolsson on 25 Sep 2012 14:35 UTC
I don't find the new version to be good either.
Let's start by figuring out what is meant and then describe that instead of patching it. The issue is that the table-output is not continuously differentiable (except when splines are selected in the models that allow it) - but the events ensure that the integrator does not see this.
Thus I would write something like:
"The table is implemented in a numerically sound way by generating time events at interval boundaries, this generates continuously differentiable values for the integrator."

Comment by dietmarw on 23 Jan 2013 08:47 UTC
FIXED in 7e733dcd4fd4500b8e15597f1d2797d33f3f5c49 using a slight variation of Hans' proposal:
- , in order to not integrate over a discontinuity or not differentiable points.
+ . This generates continuously differentiable values for the integrator.


Enhancement: Allow Frames to be put behind other nodes

Currently Frames serve the purpose of letting end-users organize nodes into categories in the same Scene. However, it suffers in terms of UX, as the user has to unnecessarily collapse the frame to access nodes behind it, instead of the frame being able to be placed behind the nodes instead. This is pretty common behavior in other node-based systems, and I think it'd be a valuable enhancement to have such a feature implemented. Frame Labels won't need much special consideration, as this only comes down to the Frame's placement on the canvas, and can be left up to the end-user.
Optionally, and something I'd prefer and appreciate to see, is to also have a toggle that lets Frames have color filled even when not selected. The wireframe is okay, but a color fill is pretty usual for node-based systems that implement groups (like Frames). See the picture below, if you need further clarification.

Image source: https://medium.com/@umarkhandev/node-based-coding-7433424fa4b0
e: I've rewritten the issue to better fit the issue, considering I didn't know the purpose of Frames at the time of making the issue.

Hi @frigvid
Yes, our built-in Frame nodes needed some attention.
Recent commit a18e90f adds a new behavior to keep Frames under their wrapped nodes,
and since they tend to stay there, I think a fill can now be a reasonable default as well.
Thanks for the feedback.

I try to keep the main branch stable enough somewhere around beta or if possible release candidate level.
To use the latest version you can of course build from source.
But there is another way I sometimes suggest, which is using the source directly!
Arrow is developed using Godot game engine which has an interesting feature:
If you copy the right version of Godot Engine executable (one single file) in the root of a game project (here Arrow) and run it, the game will be run as if exported with debug mode.
So if you want the absolutely cutting edge! or you want to change any part of Arrow, this can make it straightforward:

Clone Arrow from this git repository
Download Godot Engine executable (at the time of this comment v3.5.x-stable)
Copy the executable into the root of the cloned Arrow project (where project.godot file is)
Optionally rename the Godot executable (to Arrow, Arrow.exe, etc. depending on your OS)
Run the executable and enjoy
You can .ignore the executable and other artifacts created on the fly, so you can easily pull new commits

Hope you find it helpful

Neat, I'll go ahead and try this. I've only messed around with Godot shortly before, but I'm sure I'll manage. :)


⚠ Bofrost.at has degraded performance

In 833a630, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1422 ms

Resolved: Bofrost.at performance has improved in 738e44e after 10 minutes.


[BUG]: DBUS Issue

In raising this issue I confirm that

[X] I have fully completed the issue template
[X] I have searched open and closed issues for duplicates
[X] I have read the Contribution Guidelines
[X] I have read the Code of Conduct
[X] I have read the Documentation

Describe the bug
When I launch streamdeck I get
qt.dbus.integration: Could not connect "org.freedesktop.IBus" to globalEngineChanged(QString)
No Stream Deck(s) detected. Attach a Stream Deck.
Steps to reproduce the behavior
I'm on Ubuntu 22.04.2 LTS and use Python 3.10.6, when I launch streamdeck I see the UI but the StreamDeck is not detected
Expected behavior
Do not have this issue on the console and see on UI the device under the list
Screenshots

System Information
Ubuntu 22.04.2 LTS on Budgie
Python 3.10.6

Stream Deck Version
Stream Deck + : https://www.ldlc.com/fiche/PB00547463.html?offerId=AR202211170033

it seems that the main library does not support it yet: https://github.com/abcminiuser/python-elgato-streamdeck/issues/105
guess we got to wait till someone gets it fixed.

There's a PR there to add support for the StreamDeck+, PR #127. I was able to get a quick and dirty solution going by updating the streamdeck import to use that PR.
streamdeck = { git = "https://github.com/admiral0/python-elgato-streamdeck.git", branch = "master" }
Swap that line, run poetry install, then run the project and it should recognize the stream deck+. Did some quick testing and the standard buttons all work as expected. Support will need to be added for the touchbar and dials of course.


Support images in docs

?points should contain an image in the Details section.

graphics has been reparsed and [?points](https://www.rdocumentation.org/packages/graphics/topics/points) should now display images.
New packages that are parsed from now on will support images, old packages will not have image until we implement #294


[remote-connection][ExtensionHost][a13c5…][reconnect] received socket timeout event

Type: Bug
I have recently started to get a problem where I cannot do file operations when working on VS Code over remote SSH. I do not know where to start looking, but I looked at the output panel for "Window" and noticed this happening every 20 seconds.
Restarting VS Code solves it for a while, but then it starts appearing again:
2024-02-12 10:21:03.662 [info] Creating a socket (renderer-ExtensionHost-a13c591f-101e-451e-a751-6f21116e9561)...
2024-02-12 10:21:03.707 [info] Creating a socket (renderer-ExtensionHost-a13c591f-101e-451e-a751-6f21116e9561) was successful after 45 ms.
2024-02-12 10:21:03.759 [info] [remote-connection][ExtensionHost][a13c5…][reconnect] reconnected!
2024-02-12 10:21:23.765 [info] [remote-connection][ExtensionHost][a13c5…][reconnect] received socket timeout event (unacknowledgedMsgCount: 378, timeSinceOldestUnacknowledgedMsg: 20005, timeSinceLastReceivedSomeData: 20005).
2024-02-12 10:21:23.766 [info] [remote-connection][ExtensionHost][a13c5…][reconnect] starting reconnecting loop. You can get more information with the trace log level.
2024-02-12 10:21:23.767 [info] [remote-connection][ExtensionHost][a13c5…][reconnect] resolving connection...
2024-02-12 10:21:23.768 [info] [remote-connection][ExtensionHost][a13c5…][reconnect] connecting to WebSocket(<IP_ADDRESS>:55500)...
2024-02-12 10:21:23.768 [info] Creating a socket (renderer-ExtensionHost-a13c591f-101e-451e-a751-6f21116e9561)...
2024-02-12 10:21:23.822 [info] Creating a socket (renderer-ExtensionHost-a13c591f-101e-451e-a751-6f21116e9561) was successful after 57 ms.
2024-02-12 10:21:23.882 [info] [remote-connection][ExtensionHost][a13c5…][reconnect] reconnected!

VS Code version: Code 1.86.1 (31c37ee8f63491495ac49e43b8544550fbae4533, 2024-02-07T09:08:20.941Z)
OS version: Windows_NT x64 10.0.19045
Modes:
Remote OS version: Linux x64 5.4.0-171-generic

System Info

Item
Value

CPUs
12th Gen Intel(R) Core(TM) i5-1245U (12 x 2496)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
31.64GB (17.18GB free)

Process Argv
--crash-reporter-id 59df0552-792a-4e7c-92f1-327caa3dd76d

Screen Reader
no

VM
0%

Item
Value

Remote
SSH: vm

OS
Linux x64 5.4.0-171-generic

CPUs
Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz (8 x 2394)

Memory (System)
31.32GB (25.13GB free)

VM
100%

Extensions (36)

Extension
Author (truncated)
Version

jest-snippets
and
1.9.1

remote-containers
ms-
0.338.1

remote-ssh
ms-
0.108.0

remote-ssh-edit
ms-
0.86.0

remote-wsl
ms-
0.86.0

vscode-remote-extensionpack
ms-
0.25.0

remote-explorer
ms-
0.4.1

remote-server
ms-
1.5.0

highlight-matching-tag
vin
0.11.0

browserslist
web
1.1.0

vscode-openapi
42C
4.21.1

lit-html
bie
1.11.1

ruff
cha
2024.10.0

vale-vscode
chr
0.18.4

vscode-markdownlint
Dav
0.54.0

vscode-eslint
dba
2.4.4

gitlens
eam
14.8.0

prettier-vscode
esb
10.1.0

code-runner
for
0.12.1

path-autocomplete
ion
1.25.0

vscode-azureresourcegroups
ms-
0.8.4

vscode-cosmosdb
ms-
0.20.1

vscode-docker
ms-
1.28.0

vscode-kubernetes-tools
ms-
1.3.15

pyright
ms-
1.1.350

debugpy
ms-
2024.0.0

python
ms-
2024.0.1

vscode-pylance
ms-
2024.2.1

azure-account
ms-
0.11.6

vscode-yaml
red
1.14.0

vscode-direnv
Rub
0.0.2

code-spell-checker
str
3.0.1

vscode-stylelint
sty
1.3.0

even-better-toml
tam
0.19.2

shellcheck
tim
0.35.0

vscode-proto3
zxh
0.5.5

A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vstes627:30244334
vscorecescf:30445987
vscod805:30301674
binariesv615:30325510
vsaa593:30376534
py29gd2263:30899288
vscaat:30438848
c4g48928:30535728
azure-dev_surveyonecf:30548226
962ge761:30959799
pythongtdpath:30769146
welcomedialog:30910333
pythonidxpt:30866567
pythonnoceb:30805159
asynctok:30898717
pythontestfixt:30902429
pythonregdiag2:30936856
pyreplss1:30897532
pythonmypyd1:30879173
pythoncet0:30885854
pythontbext0:30879054
accentitlementsc:30887149
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
pydisww1:30959800
b5d27386:30958190
a89i1917:30961429
3ef8e399:30949928
e3gdj431:30958358
ccp2r3:30958157

This is not related to the exec server based on the A/B

@connor4312 I believe the problems is with an extension. I have disabled all of them and am enabling them one by one. Have not seen the problem so far. Closing this and will re-open in case I find the proper culprit.


Add uv and pixi.

Resolves #419.
Notably not done, is that I've not updated the tutorial.md to use uv instead of Anaconda. I'd need to use a Windows machine to test the instructions before I'd feel confident changing the tutorial.

@dstansby I thought you were on holiday!
Saw some recent pushes, so take the liberty of asking for review.... 🙏

think my comment below may be better dealt with in a separate future pull-request.

Sure! Though I think worth tackling.

pre-commit.ci autofix


cgps delete old rules & lists issue

`Run npm run cloudflare-delete

cloudflare-delete
npm run cloudflare-delete:rule && npm run cloudflare-delete:list

cloudflare-delete:rule
node cf_gateway_rule_delete.js

An error occured while making a web request: "Error: Response not OK", retrying. Attempt 1 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 2 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 3 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 4 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 5 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 6 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 7 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 8 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 9 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 10 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 11 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 12 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 13 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 14 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 15 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 16 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 42 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 43 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 44 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 45 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 46 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 47 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 48 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 49 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
An error occured while making a web request: "Error: Response not OK", retrying. Attempt 50 of 50.
THIS IS NORMAL IN MOST CIRCUMSTANCES. Refrain from reporting this as a bug unless the script doesn't automatically recover after several attempts.
file:///home/runner/work/CF1/CF1/lib/helpers.js:131
throw new Error(HTTP error! Status: ${response.status} - ${ (data && 'errors' in data) ? data.errors[0].message : data } - ${error});
^
Error: HTTP error! Status: 404 - Could not route to /client/v4/accounts/***/gateway/rules, perhaps your object identifier is invalid? - Error: Response not OK
at request (file:///home/runner/work/CF1/CF1/lib/helpers.js:131:15)
at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
at async file:///home/runner/work/CF1/CF1/cf_gateway_rule_delete.js:4:27
Node.js v22.11.0
Error: Process completed with exit code 1.`

Make sure your CLOUDFLARE_ACCOUNT_ID is set correctly. See here for details: https://github.com/mrrfv/cloudflare-gateway-pihole-scripts/blob/main/extended_guide.md#cloudflare_account_id


Cannot build UWP app in ARM64: exit code 1102

Building ARM64 packages works for most of my UWP apps, but one of them (the largest project) fails with this error:
2>  Processing application code
2>  Computing application closure and generating interop code
2>    Loading 158 modules...
2>    Generating code...
2>    Interop code generated.
2>  Generating serialization code
2>  Compiling interop code
2>  Generating System.Reflection.DispatchProxy proxy code.
2>  Cleaning up unreferenced code
2>  Generating native code
2>  Generating fixups for native code
2>C:\Program Files (x86)\Microsoft SDKs\UWPNuGetPackages\microsoft.net.native.compiler\2.2.7-rel-27913-00\tools\Microsoft.NetNative.targets(801,5): error : ILT0005: 'C:\Program Files (x86)\Microsoft SDKs\UWPNuGetPackages\runtime.win10-arm64.microsoft.net.native.compiler\2.2.7-rel-27913-00\tools\ARM64\ilc\tools\link\link.exe @"pathtoproj\obj\ARM64\Release\ilc\intermediate\linkargs.MyApp.rsp"' returned exit code 1102
========== Build: 1 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
A package has been successfully built for Release (x86).
A package has been successfully built for Release (x64).
A package has been successfully built for Release (ARM).
========== Package: 3 succeeded, 1 failed ===========
========== App Bundle: 1 succeeded, 1 failed ===========

Once you try to build gRPC for Release, you will hit this problem:
https://github.com/microsoft/dotnet/issues/1182
gRPC will crash as it tries to load the native DLL because the .Net Native compiler's journaling mechanism for tracking reflection is broken.
gRPC dies here on Release build:
// In Grpc.Core module, NativeExtensions.cs
    private static string GetAssemblyPath()
    {
        var assembly = typeof(NativeExtension).GetTypeInfo().Assembly;

#if NETSTANDARD1_5 || NETSTANDARD2_0
// Assembly.EscapedCodeBase does not exist under CoreCLR, but assemblies imported from a nuget package
// don't seem to be shadowed by DNX-based projects at all.
return assembly.Location;
#else
// If assembly is shadowed (e.g. in a webapp), EscapedCodeBase is pointing
// to the original location of the assembly, and Location is pointing
// to the shadow copy. We care about the original location because
// the native dlls don't get shadowed.
        var escapedCodeBase = assembly.EscapedCodeBase;
        if (IsFileUri(escapedCodeBase))
        {
            return new Uri(escapedCodeBase).LocalPath;
        }
        return assembly.Location;

#endif
}
The line of code:
        var assembly = typeof(NativeExtension).GetTypeInfo().Assembly;

The "NativeExtension" namespace is not resolved correctly for a Release build because typeof(NativeExtension) produces invalid code.  Given Microsoft is recommending gRPC and is letting Google write the managed layer which will break on a Release build with the .Net Native toolchain, one has to wonder at what point Microsoft actually gave up on UWP and opted not to tell the rest of us.
As for ARM, the build issues there for UWP are even bigger.  Hard to see how Windows 10 ARM devices will have any future when things like this are not addressed?  Looks like Microsoft has forgotten the lessons learned with the ill fated Surface 2.

HoloLens 2 is ARM, for those Microsoft folks that might not be aware of that little detail.  You are hurting yourselves by no fixing UWP.

I have this same issue with Nightingale. @tipa have you found any workarounds? Also, is your build failing on a CI pipeline or are you building locally on your machine? https://github.com/jenius-apps/nightingale-rest-api-client/issues/99

No I haven't found any workarounds, I gave up trying and don't build ARM64 variants for my apps any more.

@tipa I did some investigations and it looks like the issue is related to low memory. See this comment https://github.com/jenius-apps/nightingale-rest-api-client/issues/99#issuecomment-720960221

I've been having the same issue with my app, and I recently upgraded to 6.2.11 to see if that helps with this problem. Unfortunately, the build process still fails on ARM64:
3>C:\Users\mfeingol\.nuget\packages\microsoft.net.native.compiler\2.2.9-rel-29512-01\tools\Microsoft.NetNative.targets(805,5): error : /c/Users/mfeingol/.nuget/packages/runtime.win10-arm64.microsoft.net.native.compiler/2.2.9-rel-29512-01/tools/ARM64/ilc/tools/link/link: missing operand after '��/'
3>C:\Users\mfeingol\.nuget\packages\microsoft.net.native.compiler\2.2.9-rel-29512-01\tools\Microsoft.NetNative.targets(805,5): error : Try '/c/Users/mfeingol/.nuget/packages/runtime.win10-arm64.microsoft.net.native.compiler/2.2.9-rel-29512-01/tools/ARM64/ilc/tools/link/link --help' for more information.
3>C:\Users\mfeingol\.nuget\packages\microsoft.net.native.compiler\2.2.9-rel-29512-01\tools\Microsoft.NetNative.targets(805,5): error : ILT0005: 'C:\Users\mfeingol\.nuget\packages\runtime.win10-arm64.microsoft.net.native.compiler\2.2.9-rel-29512-01\tools\ARM64\ilc\tools\link\link.exe @"C:\Operations\Build\Home\Sideroads\Source\Sideroads.Windows\obj\ARM64\Release\ilc\intermediate\linkargs.Sideroads.rsp"' returned exit code 1

Please let me know what sort of diagnostics might help.

Please share a structured msbuild log to<EMAIL_ADDRESS>
MSBuild Log Viewer: http://msbuildlog.com/
VS project system extension: https://marketplace.visualstudio.com/items?itemName=VisualStudioProductTeam.ProjectSystemTools

Thanks for following up, @tommcdon. Here's a log:
msbuild.binlog.zip
The file seems small, so I'm not sure it has the granularity you need. Let me know if I need to re-run with increased verbosity.

I ran into the exact same problem. Let me know if more logs could help, or if there is any workaround to try.

The error message in the msbuild log is:
LINK : the 32-bit linker (C:\Users\mfeingol\.nuget\packages\runtime.win10-arm64.microsoft.net.native.compiler\2.2.9-rel-29512-01\tools\ARM64\ilc\tools\link\link.exe) ran out of heap space and is going to restart linking with a 64-bit linker
In the 6.2.11 release, we added a compilation flag to disable symbols on ARM64.  This saves memory and as a side-effect may unblock the build.  To try it out, add <NoLinkerSymbols>true</NoLinkerSymbols> to the to the relevant ARM64 property groups in your csproj files.
It may also be possible to resolve the issue by reducing the input into the compiler.  I’m not sure if we have shared these workarounds in the past, but these have historically been useful in helping to reduce the memory footprint to the compiler, which will also increase compilation speed:
Compiler flags
There are a wide range of flags available but here’s a couple that may help out:
<ShortcutGenericAnalysis>true</ShortcutGenericAnalysis>- Can help stop runaway analysis of generic types and reduce overall generation requirements.
<UseDotNetNativeSharedAssemblyFrameworkPackage>false</UseDotNetNativeSharedAssemblyFrameworkPackage> - Eliminates one of the linking boundaries the compiler has to fight with. I actually suspect turning this off will make things worse not better but whole program optimizers are hard to reason about but rebuilds are cheap enough to try.
Runtime Directives
There is a default.rd.xml file that provides "Runtime Directives" to the .NET Native compiler. The overall syntax of the file is also included in the reading above. The default config is the following, which may be leading to including "too much" metadata and code into the .NET native compiler engine:
<Assembly Name="*Application*" Dynamic="Required All" />
Removing the directive but still have a working application may take some time iterating through a series of directives to try. There’s two approaches that have tradeoffs, so I’ll describe both and let you decide if either methodology suits you. Roughly here’s what the two workflows look like:
Start from nothing.

Remove the special *Application* directive
Build the app
If the build fails, email us, else…
Test the app and see if you hit any runtime errors
If you do you’ll need to look at the error location and see if adding some directives can help then head back to (2).
If you find no errors, you’re done! Hooray!

Start from everything

Remove the special *Application* directive
Get a list of the full set of dlls for your project, for example by inspecting here: obj[architecture]\Release\ilc\in
For each dll, add a Dynamic directive. They’ll look like: <Assembly Name="ASSEMBLYNAMEWITHOUTEXTENTION" Dynamic="Required All"/>
Comment out some subset of these libraries
Build the app
If the build fails again in RHBIND go to (4)
Test the app and see if you hit any runtime errors
If you do you’ll need to look at the error location and see if adding some directives can help then head back to (5)
If you find no errors, you’re done! Hooray!

These articles provide some useful background info:

https://devblogs.microsoft.com/dotnet/net-native-deep-dive-dynamic-features-in-static-code/
https://docs.microsoft.com/en-us/dotnet/framework/net-native/runtime-directives-rd-xml-configuration-file-reference
https://docs.microsoft.com/en-us/dotnet/framework/net-native/runtime-directive-policy-settings

The error message in the msbuild log is:
LINK : the 32-bit linker (C:\Users\mfeingol\.nuget\packages\runtime.win10-arm64.microsoft.net.native.compiler\2.2.9-rel-29512-01\tools\ARM64\ilc\tools\link\link.exe) ran out of heap space and is going to restart linking with a 64-bit linker
In the 6.2.11 release, we added a compilation flag to disable symbols on ARM64.  This saves memory and as a side-effect may unblock the build.  To try it out, add <NoLinkerSymbols>true</NoLinkerSymbols> to the to the relevant ARM64 property groups in your csproj files.
It may also be possible to resolve the issue by reducing the input into the compiler.  I’m not sure if we have shared these workarounds in the past, but these have historically been useful in helping to reduce the memory footprint to the compiler, which will also increase compilation speed:
Compiler flags
There are a wide range of flags available but here’s a couple that may help out:
<ShortcutGenericAnalysis>true</ShortcutGenericAnalysis>- Can help stop runaway analysis of generic types and reduce overall generation requirements.
<UseDotNetNativeSharedAssemblyFrameworkPackage>false</UseDotNetNativeSharedAssemblyFrameworkPackage> - Eliminates one of the linking boundaries the compiler has to fight with. I actually suspect turning this off will make things worse not better but whole program optimizers are hard to reason about but rebuilds are cheap enough to try.
Runtime Directives
There is a default.rd.xml file that provides "Runtime Directives" to the .NET Native compiler. The overall syntax of the file is also included in the reading above. The default config is the following, which may be leading to including "too much" metadata and code into the .NET native compiler engine:
<Assembly Name="*Application*" Dynamic="Required All" />
Removing the directive but still have a working application may take some time iterating through a series of directives to try. There’s two approaches that have tradeoffs, so I’ll describe both and let you decide if either methodology suits you. Roughly here’s what the two workflows look like:
Start from nothing.

Remove the special *Application* directive
Build the app
If the build fails, email us, else…
Test the app and see if you hit any runtime errors
If you do you’ll need to look at the error location and see if adding some directives can help then head back to (2).
If you find no errors, you’re done! Hooray!

Start from everything

Remove the special *Application* directive
Get a list of the full set of dlls for your project, for example by inspecting here: obj[architecture]\Release\ilc\in
For each dll, add a Dynamic directive. They’ll look like: <Assembly Name="ASSEMBLYNAMEWITHOUTEXTENTION" Dynamic="Required All"/>
Comment out some subset of these libraries
Build the app
If the build fails again in RHBIND go to (4)
Test the app and see if you hit any runtime errors
If you do you’ll need to look at the error location and see if adding some directives can help then head back to (5)
If you find no errors, you’re done! Hooray!

These articles provide some useful background info:

https://devblogs.microsoft.com/dotnet/net-native-deep-dive-dynamic-features-in-static-code/
https://docs.microsoft.com/en-us/dotnet/framework/net-native/runtime-directives-rd-xml-configuration-file-reference
https://docs.microsoft.com/en-us/dotnet/framework/net-native/runtime-directive-policy-settings

I get error code 1105. What does this mean?
I always get this when the source is on a network share, if the source is on local drive compiling works fine.


Model for ATS

Hello, do you have a model for American Truck Simulator?
I'm having hard times running on 1.47.1
I know you mentioned about the mouse steering, could you please send me the updated code with virtual controller?
Thanks.

Hi,
I did not try the existing model in ATS. However, it should perform nearly the same as in ETS with proper FOV and lighting tuning.
It looks like SCS doesn't want us to run this thing in their games (because they instantly changed one of the core mechanics in the engine). So I do not want to send the exact virtual controller code, but I will show you how you can update your code accordingly.
Please understand my excuse; I will do this as soon as I go back home.

@umutkcbs If this implies using vjoy or xbox virtual controllers, I have figured this out. =)

Yes, I used vgamepad and ds4 but if it is working all of them ok. I came back home, in few minutes I will commit a file which I used to test virtual controllers in different games.
Seeing other people trying to work on this project made me very happy, so I want to thank you so much.
I will keep open this thread while you working on. Do not hesitate to ask me.
Have a good day

@umutkcbs I've tested pretty much all the related projects on GitHub and contacted multiple developers. Spent weeks on researches. The conclusion is - the lane recognition is not reliable at all.
I'm currently working on getting the lane/truck positions directly from memory. Have you seen the SCS Blender Tools? I may provide some clues on how it works.

Since game graphics are improving, lane detection is getting harder and harder like real-life scenarios. If your aim is 'only driving to a given location,' adjusting graphical buffer settings in the console might help you.

Also SCS SDK plugin and ETS2 Telemety gives nearly every info about game real-time and you can get values for your script. Maybe they can give you the positions you looking for


Cross-snippet scope for variables in documentation

There are several documentation pages that have snippets that refer to variables that are defined in earlier snippets (for example, the answers to the spinner quiz). This makes sense when a block is being introduced that is expected to be used as part of a larger program. However, the TypeScript compiler fails on these, and therefore blocks don't show for them.
This could be solved by:

Declaring variables in every snippet (verbose, potentially confusing for students)
Concatenating earlier snippets when compiling later ones
Adding support for an invisible prefix snippet that declares variables, allowing it to compile

@tballmsft  @pelikhan I think this falls into either of your domains depending on the solution.

The documentation renderer currently treats all snippets as independent so option #3 would be the best solution. Some kind of region in TS to make code as "hidden".


Revert loaded ontologies to 2.1.x to prevent exotic ontology overload

On the ontology search page, for [Ontology source], we now have (at the moment in 2.2.x):
ncbi_taxonomy	(1175662)	+	-
chebi_ontology	(56285)	+	-
biological_process	(28204)	+	-
mouse_ontology	(19445)	+	-
uberon	(10947)	+	-
molecular_function	(10837)	+	-
cellular_component	(3915)	+	-
adult_mouse_anatomy.gxd	(3229)	+	-
uberon/phenoscape-anatomy	(2682)	+	-
quality	(2515)	+	-
cell	(2128)	+	-
plant_anatomy	(1357)	+	-
eco	(583)	+	-
plant_structure_development_stage	(333)	+	-
none	(282)	+	-
external	(138)	+	-
go/extensions/gorel	(59)	+	-
cl	(22)	+	-
pato.ontology	(3)	+	-
plant_ontology	(2)	+	-

While we want these for testing for the time being, we do not want to overload users in production. Talking to @cmungall and @hdietze, it was decided to go back to the closest set we can to the previous set used in 2.1.x. This is only for 2.2.x, master will remain with the larger set for now.
We also need to make sure that our fix here does not interfere with the fixes for #160.
Long-term solutions will likely involve deeper fixes in searches, filtering, and facets--we do want to have everything in there eventually, but just not at the moment like this.

Open until corrections are confirmed on revived nakama.

Taking a look at the current results on http://nakama.berkeleybop.org/amigo, agreed that it is good enough for now.

For future reference: we will abandon use of obo-namespace as an ontology class partitioning method.
One option is to use the ontology ID, but this is (a) opaque (who would know that cl is cell types?) and (b) does not partition go into 3 sets
We may then instead use a modified variant of namespace we control. This would become a strictly upstream ontology or ontology loading responsibility (we could choose to keep overloading the obo namespace tag). For example,

idspace=go --> use namespace
idspace=cl --> cell type
idspace=uberon --> animal anatomy
idspace=po--> plant

etc
Another option is to combine the broad category and subsets into a single hierarchical facet. E.g.

go

biological process

prok (bp)
goslim (bp)
...

molecular function

prok (mf)
goslim (mf)
...

cell

We should also remove underscores in display (or better yet, upstream, making the category an object with human readable label)


Experience of RStudio User Trying to migrate

I am a data scientist.  I was recommended to try Visual Studio Code as a replacement for RStudio.  I gave it a good shot but decided not to use it for the following reasons:

I am used to RStudio Code Colouring and was not able to reproduce it in Visual Studio.
Outline works only half the time and I couldn't find an option to just show a simplified version like in RStudio (only labels lines starting with # outside chunks.)
Plots/Outputs do not show up inline in the R notebook like in Rstudio.  There's no way to quickly copy a plot by right clicking.
Variables did not show up.  I could not double click variables (like a dataframe) to check its contents.

Overall, I think you should address these basic issues to make it easier to migrate from RStudio.  It shouldn't be a matter of searching through this issue forum for 2hours+ to get these basic things to work.

Apart the first point, there are a lot of themes outside to choose, the rest of points here work.

You should give a look at R panel in the Activity Bar. It contains a Workspace panel with Attached Namespaces, Loaded Namespaces and Global Environment.
When I plot (or ggplot) something, a plot is displayed inside an editor: right clicking displays a menu with copy item.
See 2): hovering on the variable you may remove or view the object; if you view the object a panel is displayed with the content of the variable; if the variable is a data frame, you see a sort of spreadsheet.

Hope that helps; just in case you may provide more information or steps to reproduce the issue.

I was recommended to try Visual Studio Code as a replacement for RStudio.

The beauty of VS Code is that it has extensions for R, Python and Julia – today's major Data Science languages.
@purisuto VS Code not only replaces RStudio but also PyCharm and Juno; the latter has been officially replaced by the VS Code Julia extension.

Check out my reference deployment at https://demo.jupyter.b-data.ch or have a look at

JupyterLab R docker stack
JupyterLab Python docker stack
JupyterLab Julia docker stack

ℹ Each docker stack has also GPU accelerated images available.

What makes these images different:

Multi-arch: linux/amd64, linux/arm64/v8
ℹ Run natively on Apple M1/M2 (Docker Desktop).
Base image: Debian instead of Ubuntu
ℹ CUDA-enabled images are Ubuntu-based.
IDE: code-server next to JupyterLab
ℹ code-server = VS Code in the browser.
Just Python – no Conda / Mamba

I was recommended to try Visual Studio Code as a replacement for RStudio.

The beauty of VS Code is that it has extensions for R, Python and Julia – today's major Data Science languages.
@purisuto VS Code not only replaces RStudio but also PyCharm and Juno; the latter has been officially replaced by the VS Code Julia extension.
Check out my reference deployment at https://demo.jupyter.b-data.ch or have a look at

JupyterLab R docker stack
JupyterLab Python docker stack
JupyterLab Julia docker stack

ℹ Each docker stack has also GPU accelerated images available.
What makes these images different:

Multi-arch: , linux/amd64``linux/arm64/v8
ℹ Run natively on Apple M1/M2 (Docker Desktop).
Base image: Debian instead of Ubuntu
ℹ CUDA-enabled images are Ubuntu-based.
IDE: code-server next to JupyterLab
ℹ code-server = VS Code in the browser.
Just Python – no Conda / Mamba

VS Code is great, but the biggest problem for me is that there is no color distinction for the input and output of R code in the terminal. Additionally, the error and warning messages are also written similarly to other code. So I have to face a large white undifferentiated code when using VS Code. Rstudio does great about this. Do you have any advise to solve this problems?

@lijiaqi-github Have you tried radian? https://github.com/randy3k/radian

@lijiaqi-github Have you tried radian? https://github.com/randy3k/radian

Sure, but there is a new problem, https://github.com/REditorSupport/vscode-R/issues/1390.

I'm not very familiar with programming software, so I'm hoping that's my problem. It was me who made a mistake, but I can't figure out the reason.
Would it be better to switch from Windows to Mac?
Here is my configuration and VScode setting.json. I tried to open Radian by VS Code in your Jupyter link, but I'm not familiar with Jupyter and couldn't succeed. I haven't used Jupyter before, so I don't know how to do it.
#########################################################################
OS: Windows 11 Pro for Workstations version-22H2 22621.1928
Code Version: 1.80.0 (VS code)
Radian Version: 0.6.6 (I don't how to check the version. I installed last week so it should be 0.6.6)
r executable: C:\Program Files\R\R-4.3.1\bin\R.exe
r version: 4.3.1
python executable: C:\Users[myname]\AppData\Local\Programs\Python\Python311\python.exe
python version: 3.11.4
VS code setting.json
{
"r.bracketedPaste": true,
"r.rterm.windows": "C:\Users\[myname]\AppData\Local\Programs\Python\Python311\Scripts\radian.exe",
}
#########################################################################


kx122: Initial implementation

The driver implements support for Kionix's KX122 accelerometer.
The KX122 is a tri-axis ±2g, ±4g or ±8g accelerometer with integrated 2048 byte buffer, orientation, tap/double tap, activity detecting, and Free fall algorithms.
The current version of the driver implements functionality for the accelerometer and it's configuration,
buffer's functionality and it's configuration and interrupt functionalities.
The driver was tested on Raspberry Pi 3 model b
Signed-off-by: Samuli Rissanen<EMAIL_ADDRESS>

Out of the other languages, the only one i have used is Python.
I could try to whip up an example for that.
I assume that the Python module i can use for the example is automatically created from the C++ wrapper?

Nice addition Samuli - merged.
Note, I added the other language examples and an stl::vector method for getting the acceleration.


Hurry over OWNERS_ALIASES name change from community #785 / #797

This is a copy of the file in #785; I wanted to copy this over after the rename by hand because it needs a corresponding OWNERS file update, and this was easier than doing a two-teams-with-same-members dance.

/lgtm

/retest


chore(main): release 2.1.0

:robot: I have created a release beep boop
2.1.0 (2023-11-09)
Features

Add data operations to GattClient (#132) (a1eaaf5)
Add GATT Client (discovery attributes) (#131) (121c351)
Add integration tests (#208) (07086ec)
Add services/st_util/StUartProgammer (#185) (8faceb4)
Add stm32g0 hal drivers (#118) (35dff48)
Ble central pairing bonding feature (#163) (530b3bc)
Configurable clock phase and polarity for sync spi (#200) (cbf6d68)
Gap and gatt refactored/improved due to embedded-infra changes (#136) (e6c276b)
Improvements according to application note AN5289 (#135) (bd95621)
Low power event dispatcher (#156) (a0d1855)
Merge upstream changes (#126) (1546f51)
Refactor and expand StUartProgrammer (#202) (5c8c213)
Removed additional EXCLUDE_FROM_ALL property in favour of using emil_build_for() (8e3766d)
Update st ble stack (#165) (a6b8827)
Update the st ble stack to version 1.17 (a6b8827)

Bug Fixes

Adc on stm32wb (#162) (ee16f2a)
Add ble middleware binaries (#130) (201687e)
Add confirmation for gatt indication (#159) (02a98f0)
Communication over ethernet smi (#129) (9935da5)
Do not assert if GattCompleteEvent fails (#167) (063daa4)
Duplicate and misdirected function calls due to listening for events on multiple levels in the inheritance tree of classes using GapSt. (6f8b7f7)
Event handling of GapSt and its derived classes. (#143) (6f8b7f7)
Hal_st/stm32fxxx/EthernetSmiStm: ETH_MACMIIAR_CR_Msk is the mask of MACMII->AR, not the inverse (9935da5)
Incorrect connection handle in state transitions (#147) (2f99452)
Set privacy mode for bonded devices (#146) (88d30f2)
Standalone stm32 build and debug (#193) (71bf177)
Systick conflict with invalidIrq (#161) (8ee04e1)

This PR was generated with Release Please. See documentation.

@rjaegers
Is this PR automatically created or did you trigger it?
If it is automatic, I wonder based on what it is scheduled.
And lastly, what do we need to review for such a release PR?

@rjaegers Thanks, that helps. To better understand, next question is when do we decide to make a release.
Initially I thought every merge with a feat or fix would automatically bump the version. Apparently not and it is in our control.

:robot: Release is at https://github.com/philips-software/amp-hal-st/releases/tag/v2.1.0 :sunflower:


Add sign up and login feature

[x] I've read the guidelines for Contributing to YOURLS Projects
[X] This request isn't a duplicate of an existing request
[x] This is not a personal support request that should be posted on the YOURLS Discourse community

Summary
A feature that adds sign up and login feature so that they can manage there links.
Motivation
I want to make a bit.ly my self.
Is your feature request related to a problem? Please describe.
I can't make/activate/install a sign up/login feature
Describe the solution you'd like
I want a sign up/log in feature and a user dashboard(only editing links that the user made.)
Describe alternatives you've considered
Another url shortner(Polr?)
Additional context
Add any other context or screenshots about the feature request here.

You mean a multi user plugin?


Check and add examples to Reference -> Functions

Goal of the issue:
Add examples for  basic usage and advanced usage as well as usage on different data types, where applicable


Support multiple venvs in Makefile

Reference: pawamoy/pdm-multirun#10
Adding the handling of PDM_MULTIRUN_USE_VENVS in script/setup.ph and giving the option for the Makefile.

Changing setup.ph to check for the environment variable and if set to 1 creating named venvs (e.g. 3.11, exactly as the version specifier. One could change this if another behavoir is preferred, no strong opinion here)
Adding a comment to the Makefile, that can be uncommented.
Updating docs (couldn't check docs, mkdocs callouts didn't worked for me.

Not sure on the documentation, not too experienced there. Please check and change to your likeing.

Having some new issues with the 'default' use. Investigating.

Ok, found the culprit in my code/installation.
Tests were not finishing in my installation, bc. of my stupidity (multiple test dependencies like duty, safety & griffe were missing in the pdm I created for that.

Tests are successful, can you confirm that?
Tested manually with uncommented line in Makefile as well (didn't manage to automate tests for that - improvement for the future?).

On the other hand, CI is failing due to unkonwn reasons and I do not want to investigate. 🤐  But saw your last commit was failing as well, so I guess s.th. unrelated?

Thanks!
So, I tested locally, and it does seem to require setting python.use_venv = true in the local config, because otherwise it says Using __pypackages__ because non-venv Python is used.. Not sure if this is a bug in PDM, or an oversight in PDM Multirun.

Hi!
This is great! That solution is far better than mine! Guess this was not showing in my installation, as I have the option set to use_venv: True and yeah. Fully support that idea.
There is an odd thing indeed:
When running the test script now with my previous setup (additional venv in copier-pdm directory to install testing dependencies (ruff, safety, ...)) it is defaulting to this outer venv during test. This is from a pdm multirun call within the ./tests/tmp/ folder. I see no reason, why this behavior should have changed from your changes. So I think it is an fail/issue on my local machine.

How do you solve this in your local installation?
Do you have these packages in your local python/pipx installation/inject to duty pipx?

mypy --config-file config/mypy.ini src tests duties.py scripts
  scripts/insiders.py:18: error: Library stubs not installed for "yaml"  [import-untyped]
  scripts/insiders.py:18: note: Hint: "python3 -m pip install types-PyYAML"
  scripts/insiders.py:18: note: (or run "mypy --install-types" to install all missing stub packages)
  scripts/insiders.py:18: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-imports
  Found 1 error in 1 file (checked 11 source files)

This could be a result from that issue, getting this new typing error now.
From my point of view we could continue with this version.

OK, LGTM, merging, thanks a lot for your contribution!

In the future it would probably be better to implement this in PDM Multirun directly :slightly_smiling_face:


IOS onShortcutItemPressed can not work

IOS onShortcutItemPressed can not work

I'm having the same problem, my saga bails on
yield call(shortcutsEmitter.addListener, 'onShortcutItemPressed', handleShortcut);

When I catch the error, I get:

TypeError: Cannot read property '_nativeModule' of null
at addListener (NativeEventEmitter.js:46)
at runCallEffect (proc.js:524)
at runEffect (proc.js:446)
at next (proc.js:326)
at currCb (proc.js:399)
at run (es6.promise.js:75)
at es6.promise.js:92
at flush (_microtask.js:18)
at tryCallOne (core.js:37)
at core.js:123

But now it seems to be working. Go figure.


ConfigServer Security & Firewall will open a new page

When i press the ConfigServer Security & Firewall in the left tree view it will open a new page instead of open at the right side of the tree view.
You can see at the top of the page it show the Dashboard but the page is CSF.

This is the page that will open:

What is your theme/Webmin version?
I contacted CSF support to make new changes to their module, to provide support for new version of theme/Webmin.

It's possible due to Webmin 1.870.

It's surely not happening on the latest Webmin/theme/CSF. I tested it.
Could you fetch latest web-lib.funcs.pl from Webmin repo, update it and restart Webmin?

You also have issues in case you disabled CSF UI option in it's configuration.

What is your theme/Webmin version?

You can see all the version in the above screenshot

Yes, I already did.

I'm running another computer on
Webmin version | 1.870 | Theme version | Authentic Theme 19.09 and i have no problems there.

Clear browser's cache?

Yes, i even tried it in 3 different web browser (Firefox, Chrome and SRWare Iron.), but it will still open in a new tab.

I'll try to reproduce it.

I can see this too

What is, if I remember correctly, UI_CUSTOM option in your CSF set to?

STYLE_CUSTOM and STYLE_MOBILE are both ON as in my other CSF configuration.
The URL change to
https://<IP_ADDRESS>:10000/csf/index.cgi?xnavigation=1
when i press on the CSF and in the new tab where  CSF open it will be
https://<IP_ADDRESS>:10000/csf/index.cgi.

Can you try incognito tab?

Oh, wait!! You have dated CSF 10.xx?? It's not supported.
Install 11.06 please.

It was an old CSF. Now it is working when i updated to 11.06. Maybe you should check what version a user is running to avoid this in the future?

Yes, maybe. I'll see what I can do.

Alright, it's done for basic software:
Webmin, Usermin, Virtualmin, Cloudmin and CSF.
Thanks for the idea!

This is how it's going to look like, just an example, version 1.872 is not outdated yet.


Change the titlebar icon on Windows

Could have Red for failure, Green for success, Yellow for warnings.

Fixed in #40 by @WJWH (many thanks!)


encoding/json: marshal struct with interface generates a panic

What version of Go are you using (go version)?
go version go1.21rc3 linux/amd64
Does this issue reproduce with the latest release?
Yes.
What operating system and processor architecture are you using (go env)?
GOHOSTARCH='amd64'
GOHOSTOS='linux'
What did you do?
Marshal my struct error,code like this:
package main

import (
	"encoding/json"
	"fmt"
)

type W2 interface {
	json.Marshaler
	json.Unmarshaler
}

type Data struct {
	ID string `json:"id"`
	W2 `json:"-"`
}

func main() {
	var d Data
	marshal, err := json.Marshal(d)
	if err != nil {
		return
	}
	fmt.Println(string(marshal))
}

and I got error:

panic: runtime error: invalid memory address or nil pointer dereference [recovered]
        panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x49471b]

What did you expect to see?
Struct W2's tag is ``json:"-"` ,may not be check in marshal?
What did you see instead?
And I got a panic.

Because of embedding, the methods get promoted.
closing as while unfortunate, this is how the language works.
Unlike many projects, the Go project does not use GitHub Issues for general discussion or asking questions. GitHub Issues are used for tracking bugs and proposals only.
For questions please refer to https://github.com/golang/go/wiki/Questions


HSTS not fully recognize by SSL scanner

I am attempting to use flask-sslify==0.1.5 on Heroku with expeditedSSL.  I have tried default, and other settings, such as sslify = SSLify(app, age=31536000, permanent=True, subdomains=True). However, each scan gives the same indication that HSTS is not fully working. It was working fine for another site until I upgraded to 0.1.5, and then when I did the earlier version 0.1.3 that had been working. Now, none of the versions are getting an A+ scan.
Any thoughts?
Thanks,
Glen
Site uses HSTS
HTTP Strict Transport Security (HSTS) is a HTTP response header that is set on your web application server. Supporting browsers read the header which contains an expiration max-age value and will NOT reconnect on a plain HTTP connection until the max-age value is exceeded. HSTS prevents a variety of attacks where an intermediary could disrupt or spoof connections.
You'll need to implement this in your application.
More HSTS information at: http://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security

I just discovered 0.1.4 worked with the scanner. Hopefully, 0.1.6 will work too.

@glencarl see issue #43. The issue you're having is due to the HSTS flag: Strict-Transport-Security not being sent in the header. Therefore there is no HSTS security in v0.1.5 as opposed to just an issue with the scanner you're using.


Verify environment variable values set by task from unit test

I am working on a task that executes a tool. This tool requires a few environment variables be set prior to running the tool. In my test i want to be sure that these environment variables are set to the expected value. If they were not set appropriately the task would fail to execute.
Is there a way to do this? Example of the code within my task under test.
// todo: verify this is set to the value i provided for tenantid.
process.env['ARM_TENANT_ID'] = tasks.getEndpointAuthorizationParameter(command.environmentServiceName, "tenantid", false);

I have tried examining process.env but, the variables are not set on this. It appears child_process.spawn/spawnSync clones process.env before executing the child process. Therefore, it does not have the vars set by the actual task (only the ones set on process.env prior to spawning the child process).

Yeah, that is intentional behavior so that execution of one task can't set environment variables that could potentially mess up other tasks, it does make testing that specific functionality challenging though - I don't think we really have a way of doing this. My recommendation here would be to check in your actual task code if this is being set and instantly failing out (or warning as appropriate) if it hasn't been set. This kinda feels like what you should be doing anyways if I'm understanding the situation correctly, it would allow you to provide meaningful feedback as to why you failed instead of passing that responsibility on to the tool. Then for your test you could both test not setting that/failing and setting it/succeeding.

@damccorm The tool im executing that needs these env's set is terraform executable. I do not have control to add validation to the terraform executable. If you were suggesting i instead add these in my task code that executes the terraform executable this also does not seem like a good solution. The reason is because my task code is setting these env's on behalf of the user based on what they provided into a required service endpoint. So with what you suggested, i would execute my code that translates the service endpoint into required env vars for the terraform executable then, validate those env's exist? This doesnt seem like an effective way to enforce the contract that exists between my task code and the terraform tool. Normally i would do that with a unit test external to the task code.
If it were a matter of validating input, i would agree with your suggestion but, im trying to assert that the contract that exists between the pipeline task and the terraform executable is maintained as code changes are made. This contract is in the form of translating required input to env vars the tool needs to successfully execute.
Let me know your thoughts or suggestions given that information.

Ah, sorry I misread your initial comment and thought it was user input. So to make sure I understand correctly:

You are setting process.env['ARM_TENANT_ID'] (and other environment variables)
The tool you are running needs this to be set in order to execute correctly
You want to make sure the environment variables were correctly set, regardless of code path/changes in the code

That seems like a reasonable thing to want to do. Unfortunately, I don't see a great solution to this since environment variables aren't persisted between tasks (and I don't think we want them to be). One (non-optimal) solution would be to pull the exec call out into a separate function which can be mocked. You could check the environment variables there.
I think it would definitely be good to have a better solution, I need to think a bit more about what that would look like though, I think there's a good chance it would be best suited for our upcoming major version revision.

You got it @damccorm. I look forward to seeing the solution you come up with in the next major revision.

@charleszipp sorry this has taken a bit - I'm taking another look at this as we major version. As I think more about this, though, I think the simplest solution might be to just write a debug statement with the value of the environment variables. Then you can check the stdout of the task to make sure it was written correctly.
This also just feels like the right thing to do for debugging errors. Does that seem reasonable? Otherwise we need to do something like capturing the environment and somehow pass it out of the child process - there doesn't seem to me to be a clean way of doing this.

Closing since I think this is a no-op on our end


fix: dev: cython import errors

This commit fixes issues observed in Windows where some
cython modules are successfully imported, and some are not.
This causes the global config cython.working to be inconsistent,
which causes import errors when unavailable cython modules
are tried to be imported (example https://github.com/SheffieldML/GPy/issues/266).
This commit uses a separate flag for each module to fix the issue.

Sorry, the example issue is actually https://github.com/SheffieldML/GPy/issues/458.

Codecov Report

Merging #565 into devel will decrease coverage by <.01%.
The diff coverage is 62.5%.

@@            Coverage Diff             @@
##            devel     #565      +/-   ##
==========================================
- Coverage   53.04%   53.04%   -0.01%
==========================================
  Files         202      202
  Lines       20195    20196       +1
  Branches     2701     2701
==========================================
  Hits        10713    10713
  Misses       8993     8993
- Partials      489      490       +1

Thanks a lot for identifying the issue and providing a fix. I notice that the fix will always take the cython if available for coregionalization, which cannot be controlled via the config file. Could you create a new entry for cython of coregionalization in the control file and follow the pattern of the existing cython control?

Hi, could you clarify what you mean by that? In coregionalize.py, I do check for the conda available property from config.

I think @zhenwendai is suggesting doing something like:
try:
      from . import coregionalize_cython
      use_cython = config.getboolean('cython', 'working')
  except ImportError:
      use_cython = False

and then replace (throughout):
if cython_coregionalize_working and config.getboolean('cython', 'working'):

with
if use_cython:

would be a little cleaner, unless I'm missing some reason why we shouldn't do this (seems unlikely the config would change whilst running).
@jayanthkoushik is right, at the moment the current code automatically uses cython if it is available, through the lines:
try:
    from . import coregionalize_cython
    config.set('cython', 'working', 'True')

this in fact ignores the config file setting, which should perhaps be alternatively named 'try_use_cython', though of course it isn't worth changing. I think @lionfish0 ran into this issue recently when he was trying to debug some coregionalization model without using the cython code.

I think that makes sense. I've modified the code accordingly; I left the test scripts as they were though, because I think it makes sense to test cython if possible, regardless of the setting (which as you point out, should represent preference rather than availability). I also used separate flags for each module, since that allows programatically checking for the availability of particular cython modules by importing the respective flags.

We should add the test cases for the windows runs, so that the cython modules are being imported. This would greatly increase the confidence in the automatic building process.

As soon as the tests are in place, we can merge :)

Sorry, I don't quite follow. Which test scripts need to be modified?

I mean to put in a dynamic test, which tests both versions of the code, the numpy as well as cython implementations. I believe that has been tested in the kernel_tests.py before
https://github.com/SheffieldML/GPy/blob/34a5e7ed700fb1ccf97b803bc7d2676c03e23e4b/GPy/testing/kernel_tests.py#L632
but somehow fails to work now
https://coveralls.io/builds/14246027/source?filename=GPy%2Fkern%2Fsrc%2Fcoregionalize.py#L111
It has been cotrolled by using the config and running both versions of the code and then comparing the results to be the same.
Does that make sense? I think I over complicated things, I just mean that the tests should be testing both versions by making use of the config. That both tests that the config works and that both versions of the code return the same results.

Btw. good spotting, thank you very much for contributing :)!

Ok, I think that makes sense. I changed the test script to always use cython if possible, and ignore the global config. Using the config as well should fix the issue right?

I think so, yes :) the test itself is using the global config to switch the versions, so it should now cover both, numpy and cython code in the test. Let’s see what the CI says when it comes back.
Thanks again!

On 15. Feb 2018, at 19:44, Jayanth Koushik<EMAIL_ADDRESS>wrote:
Ok, I think that makes sense. I changed the test script to always use cython if possible, and ignore the global config. Using the config as well should fix the issue right?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Have you committed the version where both cython and numpy are being tested?

No, will do it soon.

Committed - fingers crossed :)

Hmmm, that didn't seem to do it. I'll take a look.

Ok, I see the problem. In kernel_tests.py, the global config is changed within the test, which is not reflected since the global config is checked only on import.

I think the cython related coverage issues are resolved. The unexpected changes don't seem to be related to any code I've changed.

@mzwiessele @jayanthkoushik is there any reason this one is still hanging? Looks like it got very close to being integrated.

Yeah I this it is ready to be integrated.


[WIP] first draft of sg_add method

Here is a simple first draft of how the SG_ADD macros could be replaced with methods. I try to make the variadic argument pack somewhat type safe by adding some checks. This could probably be done inside a macro, but this way we can remove all the macro "overloads" of SG_ADD which are annoying to deal with and borderline portable imo because the preprocessor behaviour is not specified in the standard...
The variadic pack is required because a parameter could require both a constraint function #4647 and an automatic initialiser:
sg_add(&k, "k", "k, the number of clusters",
ParameterProperties::HYPER | ParameterProperties::AUTO | ParameterProperties::CONSTRAIN,
std::make_shared<my_kmeans_heuristic>(this), positive<>);

This also brings into question whether ParameterProperties::AUTO and ParameterProperties::CONSTRAIN have to be explicitly passed to the method

this would be great to have dont you think?

Yup, when I hand in my thesis I'll have some free time again to write code and can start by finishing this up :)


CLOUDSTACK-10223 delete snapshots when deleting domain

After domain deletion, snapshot taken by the domain remains undeleted.
Steps to reproduce:

Create a test domain
Create test account with admin privileges.
Login as "test" acoount.
Create 3 instances - few having root disk and rest with root and data disks both.
For 2 instances take snapshots of root and data disks
Expunge above instances from ACP UI.
Make sure that those vm's should not be shown in ACP UI.
Login as root user again
Delete the test account
Delete the test domain

Snapshots taken for root volume in step 5 are not deleted.
Added the code to remove the snapshots when the domain is deleted.

Test LGTM

code LGTM

tag:MergeReady

@blueorangutan package

@DaanHoogland a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Packaging result: ✔centos6 ✖centos7 ✖debian. JID-1977

@blueorangutan test

@DaanHoogland a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

packaging failed :( git at fault. repeated manually
@blueorangutan test

@DaanHoogland a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

@blueorangutan test

@DaanHoogland a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

Trillian test result (tid-2556)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 96100 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr2399-t2556-kvm-centos7.zip
Intermitten failure detected: /marvin/tests/smoke/test_certauthority_root.py
Intermitten failure detected: /marvin/tests/smoke/test_privategw_acl.py
Intermitten failure detected: /marvin/tests/smoke/test_ssvm.py
Intermitten failure detected: /marvin/tests/smoke/test_vm_life_cycle.py
Intermitten failure detected: /marvin/tests/smoke/test_volumes.py
Intermitten failure detected: /marvin/tests/smoke/test_vpc_vpn.py
Intermitten failure detected: /marvin/tests/smoke/test_host_maintenance.py
Intermitten failure detected: /marvin/tests/smoke/test_hostha_kvm.py
Smoke tests completed. 62 look OK, 5 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File

test_03_ssvm_internals
Failure
3.48
test_ssvm.py

test_01_secured_vm_migration
Error
37.46
test_vm_life_cycle.py

test_02_not_secured_vm_migration
Error
37.45
test_vm_life_cycle.py

test_03_secured_to_nonsecured_vm_migration
Error
35.39
test_vm_life_cycle.py

test_04_nonsecured_to_secured_vm_migration
Error
1.10
test_vm_life_cycle.py

test_08_migrate_vm
Error
5.30
test_vm_life_cycle.py

test_11_migrate_volume_and_change_offering
Error
130.29
test_volumes.py

test_01_cancel_host_maintenace_with_no_migration_jobs
Failure
0.13
test_host_maintenance.py

test_02_cancel_host_maintenace_with_migration_jobs
Error
895.41
test_host_maintenance.py

test_hostha_enable_ha_when_host_in_maintenance
Error
2.62
test_hostha_kvm.py

I don't see any error there that is related to domain or snapshot. @borisstoyanov @rhtyd agree?


Prompt text appear to a right side on Mac

SO: macOS Sierra
Scribe-js Version: 2.0.4
NPM Version: 4.0.5
Node Version: 6.8.1
On any terminal using Mac with zsh my logs of console.log and console.info appear like this:

Why the prompt text appear to a right side? This is normal or it's a problem of my configuration?
I launched the same app on Windows and on the cmd the prompt text it appear aligned, on the center aligned with the command prompt.

I found the cause of this behavior: The default of opt.contextMediumSize on console2.js it's 45. Why 45? I was commenting that behavior don't happen on Windows, but on Mac (using zsh) this actually happen. I change the default to 0 and everything on the log appears fine.


Fix some cli bugs

Following bugs will be fixed.

The cli will exit with error code  after invoking opensds client failed.
Add osdsctl to default building list.

Coverage remained the same at 38.122% when pulling bd825b695ab47fb1781c9a71e43d698635cc7055 on xxwjj:cli_bugs into 93a8f24fecbb542d56a4572017f89733970c4976 on opensds:development.


Correct minor phrasing error for clarity

A simple correction of what looks like a copy-paste error in the writeup of NavigationExperimental.

Thanks!