[CT-1482] [Feature] Add support for data share objects

Is this your first time submitting a feature request?

[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt-redshift functionality, rather than a Big Idea better suited to a discussion

Describe the feature
Issue 1
Calling dbt_utils.get_column_values on a data share object results in error
{% macro test5() -%}

    {% set details = dbt_utils.get_column_values(table=source('[name]', '[object]'), column='[column]') %}

    {% for detail in details %}
        {{ log('Detail: ' ~ detail, True) }}
    {% endfor %}

{%- endmacro %}

09:25:34  Encountered an error while running operation: Compilation Error in macro test5 (macros/test.sql)
  In get_column_values(): relation "[database]"."[schema]"."[object]" does not exist and no default value was provided.

  > in macro statement (macros/etc/statement.sql)
  > called by macro default__get_column_values (macros/sql/get_column_values.sql)
  > called by macro get_column_values (macros/sql/get_column_values.sql)
  > called by macro test5 (macros/test.sql)
  > called by macro test5 (macros/test.sql)

dbt Cloud System Logs (Details) captures the statement used to check if object of concern exists. Unfortunately data share objects are not stored in both pg_tables and pg_views and hence the "does not exist" error.
...
09:25:33  On macro_test5: /* {"app": "dbt", "dbt_version": "1.2.2", "profile_name": "user", "target_name": "default", "connection_name": "macro_test5"} */
select
      '[database]' as database,
      tablename as name,
      schemaname as schema,
      'table' as type
    from pg_tables
    where schemaname ilike '[schema]'
    union all
    select
      '[database]' as database,
      viewname as name,
      schemaname as schema,
      'view' as type
    from pg_views
    where schemaname ilike '[schema]'
09:25:34  SQL status: SELECT in 0.24 seconds
09:25:34  with database=[database], schema=[schema], relations=[]
09:25:34  Postgres adapter: Error running SQL: macro test5
...

Issue 2
Calling adapter.get_columns_in_relation on a data share object does not result in error but no result is returned
{% macro test6() -%}

    {%- set cols = adapter.get_columns_in_relation(source('[name]', '[object]')) -%}
    {{ log('Detail: ' ~ cols, True) }}

{%- endmacro %}

05:01:51  Detail: []

Describe alternatives you've considered
Statement used to check if object of concern exists is found in macro redshift__list_relations_without_caching which references macro postgres__list_relations_without_caching and thus a solution is to overwrite redshift__list_relations_without_caching to get the required information from svv_datashare_objects.
Similarly statement used to check if columns exists is found in macro redshift__get_columns_in_relation and thus a solution is to overwrite redshift__get_columns_in_relation to get the required information from svv_all_columns
and svv_datashare_objects.
{% macro redshift__list_relations_without_caching(schema_relation) %}
  {% call statement('list_relations_without_caching', fetch_result=True) -%}
    select
      '{{ schema_relation.database }}' as database,
      tablename as name,
      schemaname as schema,
      'table' as type
    from pg_tables
    where schemaname ilike '{{ schema_relation.schema }}'
    union all
    select
      '{{ schema_relation.database }}' as database,
      viewname as name,
      schemaname as schema,
      'view' as type
    from pg_views
    where schemaname ilike '{{ schema_relation.schema }}'
    union all
    select
      '{{ schema_relation.database }}' as database,
      split_part(object_name, '.', 2) as name,
      split_part(object_name, '.', 1) as schema,
      'datashare' as type
    from svv_datashare_objects
    where share_type = 'INBOUND'
    and   object_type in ('table', 'view', 'materialized view', 'late binding view')
    and   split_part(object_name, '.', 1) ilike '{{ schema_relation.schema }}'
  {% endcall %}
  {{ return(load_result('list_relations_without_caching').table) }}
{% endmacro %}

{% macro redshift__get_columns_in_relation(relation) -%}
  {% call statement('get_columns_in_relation', fetch_result=True) %}
      with bound_views as (
        select
          ordinal_position,
          table_schema,
          column_name,
          data_type,
          character_maximum_length,
          numeric_precision,
          numeric_scale

        from information_schema."columns"
        where table_name = '{{ relation.identifier }}'
    ),

    unbound_views as (
      select
        ordinal_position,
        view_schema,
        col_name,
        case
          when col_type ilike 'character varying%' then
            'character varying'
          when col_type ilike 'numeric%' then 'numeric'
          else col_type
        end as col_type,
        case
          when col_type like 'character%'
          then nullif(REGEXP_SUBSTR(col_type, '[0-9]+'), '')::int
          else null
        end as character_maximum_length,
        case
          when col_type like 'numeric%'
          then nullif(
            SPLIT_PART(REGEXP_SUBSTR(col_type, '[0-9,]+'), ',', 1),
            '')::int
          else null
        end as numeric_precision,
        case
          when col_type like 'numeric%'
          then nullif(
            SPLIT_PART(REGEXP_SUBSTR(col_type, '[0-9,]+'), ',', 2),
            '')::int
          else null
        end as numeric_scale

      from pg_get_late_binding_view_cols()
      cols(view_schema name, view_name name, col_name name,
           col_type varchar, ordinal_position int)
      where view_name = '{{ relation.identifier }}'
    ),

    external_views as (
      select
        columnnum,
        schemaname,
        columnname,
        case
          when external_type ilike 'character varying%' or external_type ilike 'varchar%'
          then 'character varying'
          when external_type ilike 'numeric%' then 'numeric'
          else external_type
        end as external_type,
        case
          when external_type like 'character%' or external_type like 'varchar%'
          then nullif(
            REGEXP_SUBSTR(external_type, '[0-9]+'),
            '')::int
          else null
        end as character_maximum_length,
        case
          when external_type like 'numeric%'
          then nullif(
            SPLIT_PART(REGEXP_SUBSTR(external_type, '[0-9,]+'), ',', 1),
            '')::int
          else null
        end as numeric_precision,
        case
          when external_type like 'numeric%'
          then nullif(
            SPLIT_PART(REGEXP_SUBSTR(external_type, '[0-9,]+'), ',', 2),
            '')::int
          else null
        end as numeric_scale
      from
        pg_catalog.svv_external_columns
      where
        schemaname = '{{ relation.schema }}'
        and tablename = '{{ relation.identifier }}'

    ),

    data_share as (
      select
        ordinal_position as columnnum,
        schema_name as schemaname,
        column_name as columnname,
        case
          when data_type ilike 'character varying%' then
            'character varying'
          when data_type ilike 'numeric%' then 'numeric'
          else data_type
        end as col_type,
        case
          when data_type like 'character%'
          then nullif(REGEXP_SUBSTR(data_type, '[0-9]+'), '')::int
          else null
        end as character_maximum_length,
        case
          when data_type like 'numeric%'
          then nullif(
            SPLIT_PART(REGEXP_SUBSTR(data_type, '[0-9,]+'), ',', 1),
            '')::int
          else null
        end as numeric_precision,
        case
          when data_type like 'numeric%'
          then nullif(
            SPLIT_PART(REGEXP_SUBSTR(data_type, '[0-9,]+'), ',', 2),
            '')::int
          else null
        end as numeric_scale
      from svv_all_columns a
      inner join (
        select *
        from svv_datashare_objects
        where share_type = 'INBOUND'
        and   object_type in ('table', 'view', 'materialized view', 'late binding view')
        and   object_name = '{{ relation.schema }}' || '.' || '{{ relation.identifier }}'
      ) b on a.schema_name || '.' || a.table_name  = b.object_name
    ),

    unioned as (
      select * from bound_views
      union all
      select * from unbound_views
      union all
      select * from external_views
      union all
      select * from data_share
    )

    select
      column_name,
      data_type,
      character_maximum_length,
      numeric_precision,
      numeric_scale

    from unioned
    {% if relation.schema %}
    where table_schema = '{{ relation.schema }}'
    {% endif %}
    order by ordinal_position
  {% endcall %}
  {% set table = load_result('get_columns_in_relation').table %}
  {{ return(sql_convert_columns_in_relation(table)) }}
{% endmacro %}

Who will this benefit?
Any users who are exploring the use of Redshift data share.
Are you interested in contributing this feature?
No response
Anything else?
No response

@randy-rc Thanks for the detailed write-up!
This issue sounds a lot like https://github.com/dbt-labs/dbt-redshift/issues/179. It would probably make sense to tackle the two together.
Tables in other databases (accessed via RA3 cross-db reads) don't appear in pg_tables or pg_views, either. They have to come from svv_tables.
In this case, it looks like there's a svv_datashare_objects system table, and that we'll also want to pull column-level info from svv_all_columns (in addition to information_schema."columns" and pg_catalog.svv_external_columns).

Update to macro redshift__list_relations_without_caching data share section to check for relations under the right database. Prior to this change, generating snapshots in consumer fails as it detects the resulting tables in data share.
{% macro redshift__list_relations_without_caching(schema_relation) %}
{% call statement('list_relations_without_caching', fetch_result=True) -%}
select
'{{ schema_relation.database }}' as database,
tablename as name,
schemaname as schema,
'table' as type
from pg_tables
where schemaname ilike '{{ schema_relation.schema }}'
union all
select
'{{ schema_relation.database }}' as database,
viewname as name,
schemaname as schema,
'view' as type
from pg_views
where schemaname ilike '{{ schema_relation.schema }}'
union all
(
with
shared_db_schema as (
select
database_name,
schema_name
from  svv_all_schemas
where schema_type='shared'
),
inbound_datashare_obj as (
select
split_part(object_name, '.', 1) as schema_name,
split_part(object_name, '.', 2) as table_name
from  svv_datashare_objects
where share_type='INBOUND'
and   object_type in ('table', 'view', 'materialized view', 'late binding view')
)
select
a.database_name as database,
a.table_name    as name,
a.schema_name   as schema,
'datashare'     as type
from       svv_all_tables a
inner join shared_db_schema b
on         a.database_name = b.database_name
and        a.schema_name = b.schema_name
inner join inbound_datashare_obj c
on         a.schema_name = c.schema_name
and        a.table_name = c.table_name
where      a.database_name ilike '{{ schema_relation.database }}'
and        a.schema_name ilike '{{ schema_relation.schema }}'
)
{% endcall %}
{{ return(load_result('list_relations_without_caching').table) }}
{% endmacro %}

@jiezhen-chen  Is this issue going to be resolved soon?
We are using Redshift datasharing with a Redshift serverless as our CICD / Dev environment as it helps separate our resource use. The dbt.utils.union_relations is an example of a utils that doesn't work if you are using a datashare since it is looking in the info_schema that doesn't have a model (if you are deferring). The work around we are using at the moment is to have to build all upstream models of a union in the Redshift Serverless environment before we call the macro. It is not the best experience as it stands.
Grateful if this can be resolved in the macro / passing an override to point at the datashare schema...
Thanks!

Just seen that this is no longer fixed in dbt 1.6 - is there any chance this will be looked at soon?
Cheers

@Fleid Just would like some updates, when will this issue be looked at for the future dbt version? We are planning to use serverless for our CICD and currently our workaround is to use the above override macros.

@rarup1 Unfortunately the PR that was merged didn't end up providing support for datashares. We decided not to use the redshift_connector API call, and instead queried from information_schema, because the redshift_connector API call doesn't support MV at the moment. Apologies for the confusion!

@jiezhen-chen Can you please let us know when dbt will support Redshift datashare?

@yuna-tang  are you able to give me a run through of how you have got your workaround CICD/Dev process working with a RS datashare?
I am trying to implement the override macros that were shared above by @randy-rc for:
{% macro redshift__list_relations_without_caching(schema_relation) %}
{% macro redshift__get_columns_in_relation(relation) -%}

I have set up a test model test_union.sql using the dbt.utils.union_relations macro as follows:
WITH _union as (
{{ dbt_utils.union_relations(relations=[ref('fct_table_1'), ref('fct_table_2')]) }}
)

SELECT * FROM _union

Where fct_table_1 and fct_table_2 are only in a datashare named warehouse and the target db is dev.
And then running a deferral (we have the manifest set up to search the datashare for relations) command in our dev environment like:
dbt run -m test_union --state target_defer --defer
Where the default target db is dev and the deferrals all defer back to the datashare db warehouse through the target_defer/manifests.json if they do not exist in developer's schema eg. dbt_rupert_core.fct_table_1 and dbt_rupert_core.fct_table_2.  In this example they do not, as that is where the problems for us arise.
The issue I am having at the moment after deploying the macros above is actually getting them to pick up the datashare columns. The jinja compile is column-less:
  create view "dev"."dbt_rupert_core"."test_union__dbt_tmp" as (
    WITH _union as (
        (select cast('"warehouse"."models_core"."fct_table_1"' as varchar) as _dbt_source_relation,
            from "warehouse"."models_core"."fct_table_1"
        )

        union all
        (select cast('"warehouse"."models_core"."fct_table_2"' as varchar) as _dbt_source_relation,
            from "warehouse"."models_core"."fct_table_2"
        )
)
SELECT * FROM _union
  ) with no schema binding;

Interested to hear how you got yours working! Cheers

@rarup1 sorry for the late reply. I also tried the test model test_union.sql , which generated the empty columns for me.
For us to use serverless with Datashare, we need to configure all our datasource.yml file to hardcode the database & schema to our main cluster, and then we will be able to create the sample version of downstream models in the serverless.
version: 2
sources:
  - name: <your_data_source>
    database:<your_database>
    schema:  <your_data_source>

Then we need to add below in the datashare :

add all the schemas from production into the datashare

ALTER datashare <your_datashare_name> add schema <your_data_source>;
ALTER datashare  <your_datashare_name> add all tables in schema <your_data_source>;
ALTER DATASHARE  <your_datashare_name>  SET INCLUDENEW = TRUE FOR SCHEMA <your_data_source>;
```;
- create all the users in datashare that exist in main cluster

Then I have followed the steps in [this article ](https://medium.com/building-inventa/how-we-slimmed-down-slim-ci-for-dbt-cloud-6a944e7574e2)to create a sample production database and run CICD against it using serverless.
- we are still at the testing stage but be able to create a full sample database in serverless via datashare with 1 day of data.

closing in favor of #742


use 'Base Date' as date_from

In the excel add-in, you have the option to set the starting date as "Base Date", in which case, the starting date becomes the date corresponding to the oldest available data point of all series in the request.
Any idea how the request string should be in this case?

I'm not sure what you mean by context.
If you put "Base Date" as starting date, the datastream add-in looks up the first available date and this gives the longest available history for the requested tickers.
My guess is that they have a way of specifying the request string for that, but I have not found it yet...

Do you mean the string “Base Date”? What type of securities are you fetching?
I haven’t seen such syntax before, so I would suggest to contact the support of TR. If they reply something constructive - please let me know.
As a workaround you could always request the start date which is far before the expected start (e.g. 1970-01-01 or 1900-01-01) and drop nans if necessary.

Yes, absolutely, it is the literal string "Base Date" (no quotes).
I tried putting the string in the request, with and without capitals, with and without space, and so on, nothing works.
In the excel add-in, it works for all securities (well, all that I tried).
I've put 1950 and remove the nans. Will update if/when TR tells me the correct format...

I suspect that the "base date" could be some macro/constant with the system-defined starting date (http://excelsemipro.com/2010/06/microsoft-excel-date-systems-for-windows-and-mac/), so within the add-on it could be translated into 1900-01-01 or 1904-01-02.

I don't think so. When you change securities, you get a different starting date, and no nans ever (though, tbh, maybe the nans are stripped by the add-in in the background before populating the spreadsheet).

I finally got an answer from TR:

You can run static request for all series with datatype BDATE, and then a second request for time series from that date.

Of course, that would mean taking the oldest of all BDATEs if the request has several tickers...

Great! Are you open for submitting a PR with this feature?

Now you can use 'BDATE' as a date_from when fetching:
res = DS.fetch(['@AAPL','U:MMM'], 'P', date_from='BDATE')

It is in master and at some point soon I will push it to the pypi.


Improve upgrade awareness of the Emulator

When the Emulator starts, it should record the version in its package.json file. If the user upgrades the Emulator to a new version but has an old version of the Emulator running, then the new version can detect that an old one is running and restart it.

Fixed by #55


Support for multitouch on Server level

The only touch action I found in Server component is "single mouse click". There is no way to do more then one simultaneous touches. This might be helpful for feature "key-to-touch" mapping, which is required for games. Related issues: #149 #235 #712

Multitouch is implemented on dev branch and will be in the next release .
See #22.


LRO poller rewrite

Simplified implementation of LRO pollers for ARM.
Public surface area has been slightly changed, making it identical to
the data-plane implementation.
The different polling mechanisms have been split into internal packages,
with an exported LROPoller that implements the overall polling algorithm.

[ ] The purpose of this PR is explained in this or a referenced issue.
[ ] The PR does not update generated files.

These files are managed by the codegen framework at Azure/autorest.go.

[ ] Tests are included and/or updated for code changes.
[ ] Updates to CHANGELOG.md are included.
[ ] MIT license headers are included in each file.

Fixes

https://github.com/Azure/azure-sdk-for-go/issues/14729
https://github.com/Azure/azure-sdk-for-go/issues/14730

@lmazuel if you have time could you please take a look at the contents of aync.go, body.go, and loc.go to see if anything looks suspicious?  I used the Python track 2 impl for inspiration.

This is causing some test failures in the test server, I'm investigating.

Autorest codegen tests are now passing and I've tested with armcompute and armredis.


Update information provided by Sabra Crolleton

@sabracrolleton wrote a comprehensive comparison of testing frameworks for Common Lisp. This popular text should be updated.

Add Confidence
Bye bye Kaputt
Update Confidence features.

https://github.com/sabracrolleton/sabracrolleton.github.io

Done.


Dutch stonewall vs classical

Some lines were named Dutch Defense: Classical Variation, Stonewall Variation which is completely incorrect, Classical and Stonewall are two different variations in the Dutch. In the Classical Black moves the d-pawn to d6, while in the Stonewall it's moved to d5.
Sources:

Wikpedia
The Modernized Stonewall Defense
The Aggressive Classical Dutch

Also, I've added Variation to two Stonewall codes (A92 and A95), just for consistency.
And finally, I couldn't find references to the Stonewall Variation, Botvinnik Variation, but if A93 is called this way then A94 should too (as is the same line with just two half-moves more). I didn't add this change, but can do it if you agree.

looks like chesstempo was the source for this. I also checked on chess.com and seems you are correct

Thanks!


Add keyboard integration test on Android

Once the engine has framework bundling pre-submit tests (@collinjackson can you link to the tracking bug?), add keyboard integration tests that involves focusing, unfocusing, selection/composing region tracking, typing, dismissing, etc.

We should be ensuring that the getExtractedText() API in BaseInputConnection is not being used irresponsibly. We have seen instances where asian keyboards use the extracted text as a plain getter for the text contents. This should be done with getEditable().toString() instead.
A good test may be to verify that keyboards not using an extracted text window should still function when the getExtractedText() returns null.

Gary is no longer working on flutter issues. Removing him to correctly reflect bug status.

This is still on my backlog at the moment, removing p3 and adding p4 label to accurately represent the current prioritization - please feel free to argue otherwise if you think the priority should be higher!

Removing f: integration_test as I don't believe it's a feature request for the package (if it is, add it back, thanks!)


Armv7 Workaround

Hello,
In the installation documentation, it says there is no support for armhf. Despite this, I managed to run it. To do this, you first need to make an ssh connection to homeassistant. Then you should run the following commands in order.
apk update
apk add cmake gcc g++ make python3-dev
pip install awsiotsdk
the build process takes a while, you need to be patient. What I did next is this. I commented out the lazyload function in the init.py file, that is, I added a # sign to the beginning of the lines of the code.
`#def _lazy_install_awsiotsdk() -> None:
#    custom_required_packages = ["awsiotsdk"]
#    for pkg in custom_required_packages:
#        if not is_installed(pkg) and not install_package(pkg):
#            raise RequirementsNotFound(DOMAIN, [pkg])
"requirements": [
"bleak",
"bleak_retry_connector",
"dacite",
"aiohttp",
"bidict"
],`
After commenting some parts of the code, I managed to run it on armv7 but I couldn't test it. The integration works, it asks me for my cloud username and password, I enter it. Then it says there is no device on the network. Because the mobile homewhiz app doesn't see my air conditioner anymore. I can't register my air conditioner through the app. I asked for support from homewhiz for the app. If I can somehow connect, I will test it and share the results here. Maybe we can create a beta branch later.

Finally I managed to get it working.
If you ask why I tried so hard, I am running homeassistant on sonoff ihost. I am running haos on sdcard with maskrom method. The processor on the Sonoff ihost device is 32 bit. Therefore, unfortunately, the integration does not work with the standard method. This is clearly stated in README.md. However, solutions are endless in democracies :)
I could not get anywhere with my previous writings. Instead, I installed the terminal add-on to home assistan. After installing it, I only installed the necessary package dependencies.
apk add --no-cache cmake gcc g++ make python3-dev
After this process, I uninstalled and reinstalled the homewhiz packages. Then I restarted homeassistant. When I wanted to add from the integration page, I guess the dependencies are being prepared at this stage. Since the built processes take a long time at this stage, I waited quite a long time. Then the configuration started. I entered my cloud information and the air conditioner I added from the mobile application appeared in the list and when the configuration was completed, the air conditioner card appeared in the overview. I hope this helps users who will experience this problem. Finally, I haven't tried it yet, but I probably don't know what will happen when homeassistant core is updated. If there is a problem again, I will announce it here.


Required validation should be ignored when hideExpression applies (true)

I'm submitting a ...  (check one with "x")
[ x ] bug report
[ ] feature request
[ ] support request

Current behavior
When a field is hidden using hideExpression, the "required" templateOption should not apply. At the moment, it is still being applied even if the field is hidden.
Expected behavior
Required should be ignored when the hide expression applies
Example JSON below:
  "fieldGroup": [
                    {
                      "key": "type_of_rigging_for_rescue",
                      "type": "tacheckbox",
                      "templateOptions": {
                        "options": [
                          {
                            "key": "reusable",
                            "value": "Reusable achor"
                          },
                          {
                            "key": "seperate",
                            "value": "Seperate pre rigges system for decending..."
                          },
                          {
                            "key": "others",
                            "value": "Other Type for rescue"
                          }
                        ],
                        "label": "Type of rigging for rescue?",

                      }
                    },
                    {
                      "key": "type_of_rigging_for_rescue.please_specify_other_type",
                      "type": "tatextarea",
                      "isAnswered": false,
                      "answer": "",
                      "defaultValue": "",
                      "hideExpression": "model.type_of_rigging_for_rescue ? (model.type_of_rigging_for_rescue.others ? false : true) : true",
                      "templateOptions": {
                        "label": "Please specify other type",
                        "required": true,
                        "placeholder": "Type here"
                      },
                    }
                  ]
`

Hi, I think it is an expected behavior when a field is hidden means it is not part of the form anymore.
To solve your issue you can use custom validation and pass it into the parent field

Hi,
Yes we can probably do that but wouldn't the complexity increase for each nested/connected field? In Formly 1, if the field was hidden then the validation was ignored which to me makes sense and would be a great addition to Formly 2. Are there any plans to add this feature?

sorry I misread the issue, the validation for hidden field should be ignored, can you tell me what version of ng-formly do you use ?

2.0.0-beta.14

I think I just face the same issue (or a similar one). It appears that formly shows error messages for disabled fields if they're dirty.
I can reliably reproduce it in our local project:
A form with 2 fields, the first being a toggle to disable the other one. If you simply toggle the second field without ever typing in it formly shows no error message. As soon as you type in the second field (so it gets marked as dirty) and you toggle again formly displays an error message even though the field is disabled.
In our case the error message is not even displayed correctly (it's an empty message as there are no errors in the formControl).

@stephanjust in some case showing error message for disabled filed is useful and I think it's an expected behavior.
Correct me if I'm wrong :)

fixed by #410

@hassanthegooner 1.0.0-rc.4 is published, let me know if it's ok for you

It's partially working.
I have a custom multicheckbox with a very similar implementation to the multicheckbox in Fomly. The only difference in my implementation is that I am attaching a validator to the whole FormGroup:
`
static createControl(model: any, field: FormlyFieldConfig): AbstractControl {
let controlGroupConfig = field.templateOptions.options.reduce((previous, option) => {
previous[option.key] = new FormControl(
model ? model[option.key] : false
);
return previous;
}, {});
return new FormGroup(controlGroupConfig, field.validators ? field.validators.validation : undefined,
  field.asyncValidators ? field.asyncValidators.validation : undefined, );

}
`
I am using a custom validator that works perfectly when there is no hide expression.
The hide expression works with the standard Angular validators e.g. Required and MaxLength but it doesn't work with my custom validator.

@hassanthegooner It would be helpful if you can provide me a full example that I can reproduce on my side

@aitboudad in-progress. Thanks

@aitboudad Sorry for taking so long.. finally got the plunker working. Here it is: plunker

Thanks I can reproduce it, for a quick fix you can check https://github.com/aitboudad/ng2-formly/commit/327399793e8135765478eeedfcce75b00d8d0a38#diff-20a28cc7f674c75babd0efff8e70bb9c

@aitboudad it's not working for me. From what I've noticed, it seems like the hidden FormControl is not being removed from FormGroup (even though it should?)

@hassanthegooner thanks for the details I'll try to investigate on this as soon as possible

@hassanthegooner for nested keys the model value in hideExpression contains only the parent model value, in order to target the root model in expression you should use the formState:
hideExpression: 'formState.model.text !== "hello"',

Also do not forget to pass the following options in your formly-form component.
options = {
  formState: { model: yourModel, },
};

fixed and published under 1.0.0-rc.5

Hi,
For me the issue still exists when hiding fields with nested keys even though I'm using formState. I've done some debugging to see what's happening with the FormGroup and detailed my findings below:
Example JSON
hiddenFieldGroup: [{
            key: 'data.external.seal_broken.findings.value',
            type: 'input',
            templateOptions: {
                label: 'Is the seal broken?',
                required: true
            }
        },
        {
            key: 'data.external.seal_broken.action_taken.value',
            type: 'input',
            hideExpression: 'formState.model.data.external.seal_broken.findings.value !== "no"',
            templateOptions: {
                label: 'Action taken',
                required: true
            }
        }
    ],
    normalFieldGroup: [{
        key: 'data.external.another_question.findings.value',
        type: 'input',
        templateOptions: {
            label: 'Another question',
            required: true
        }
    }]

Non-hidden field key: data.external.seal_broken.findings.value

Hidden field key: data.external.seal_broken.action_taken.value

Hide expression: formState.model.data.external.seal_broken.findings.value !== "no"

Steps to produce validation errors

Before triggering show i.e. hidden field is hidden:

The FormControl for data.external.seal_broken.action_taken.value does not exist at all 👍

After triggering the hide expression (value=no) to reveal the hidden field with no further input:

FormControl with the name of the hidden field key i.e. data.external.seal_broken.action_taken.value is added to the root FormGroup (?)
However, the FormControl for data.external.seal_broken.action_taken.value does not exist within its parent i.e. the 'value' FormControl does not exists inside the 'action_taken' FormGroup 👎

Triggering a refresh of formly e.g. going to the next fieldGroup and then going back to the correct fieldGroup

adds the data.external.seal_broken.action_taken.value FormControl to its parent i.e. the value FormControl now exists inside the action_taken FormGroup. > This is the expected behaviour but it should not require the refresh. 😕

After triggering the hide expression (value=yes) to hide the hidden field again:

FormControl with the name of the hidden field key i.e. data.external.seal_broken.action_taken.value is removed from the root FormGroup but the 'value' FormControl is not removed from its parent FormGroup 'action_taken' 👎

So it looks like the issue is with adding and removing the controls using the nested key names?
I hope that this is enough information but will try to create a plunker anyway.
Regards

plunker would be helpful :), thanks!

Plunker

@hassanthegooner well explained :+1: now I see what's happening

@hassanthegooner can you test my fix https://github.com/formly-js/ng-formly/pull/424

@aitboudad It works! 😎👌🏽

That's great! and thanks for your patience


Reduce number of test targets

This CL combines a bunch of tests targets into single executables. This reduces the number of build targets and number of test suites to be run in ctest.

Why did we do this?
I kind of liked the the ability to build and run a single test suite, especially if I was only working on one pass.

OK. I figured out how to just run the suites I want. Building everything is still an annoyance, but it will probably have the same frequency as building all passes.

This removes something like a hundred applications to link every time something changes. googletest has facilities (--gtest_filter="...") to run specific tests which handles having individual test suites.
Not sure what you mean by building everything is an annoyance, it was doing that already. Any change in opt, val or the main library would relink all of the test suites.

Not sure what you mean by building everything is an annoyance

Previously, through VS at least, I could build a single test target. That seems to no longer be an option.
As I said in the previous message, the frequency of rebuilding all tests will likely not be prohibitive.

You can still just build the single executable test_opt.  It will take as much time compile and link as a single small test.
I like this better because the IDE I use, clion, integrates well with googletest.  I can run the whole suite.  It shows me the individual tests that fail, and then I can rerun just a single test or group of tests.  With the multiple executables, I had extra work to do to find the right exe when something failed.


Update README.md

Purpose
Update image path
Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[X] Other... Please describe: incorrect image path

Thanks @charris-msft, could you please merge when able?


Support multiple SSH keys for the same host

Before this change, if users provided two secrets annotated to target the same host, creds-init would fail to generate the ssh config.
This use case is entirely valid, to allow users to rotate keys for instance.
Submitter Checklist
These are the criteria that every PR should meet, please check them off as you
review them:

[y] Includes tests (if functionality changed/added)
[n] Includes docs (if user facing)
[y] Commit messages follow commit message best practices

See the contribution guide for more details.
Release Notes
Allow multiple SSH-auth secrets annotated for the same host

/lgtm


Sketchtool not working =>Sketch48

It looks like changes were made in Sketch 48 that break SketchTool. There's supposedly a workaround here, but I'm not sure how it would be incorporated into grunt-sketch: http://sketchplugins.com/d/502-dyld-library-not-loaded/4
Is this something you can update so that grunt-sketch works in Sketch 48 / 49?

Running into similar issue with https://design.wikimedia.org/style-guide/ – Any plan to continue development…?


Video Size, Video Thumb, Video Title

How can i get via php, the video size, video title, video thumb?
example: echo exec('youtube-dl videourl .......'); must echo video information (title or thumb or size) in PHP.
youtube-dl can do this? or i must use curl or api?

i found a solution for title and thumbnail. But i can not found the video size.
youtube-dl -4 http://www.dailymotion.com/video/x3i3e96_star-trek-beyond-trailer-2016-paramount-pictures_shortfilms --get-thumbnail --get-title

You can get the json output with --dump-json, see all the info it contains.


Create a new pull request by comparing

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 94.743%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1981

Relevant Lines:
2043

💛  - Coveralls


Add Drush

See https://www.drush.org/latest/install/#drupal-compatibility

Any idea why the checks are failing?

Build Failures: #1371

@captn3m0 could we asign 3.7 to PYTHON_VERSION variable because logs says :
Error setting python version from the PYTHON_VERSION environment variable because it is trying to assing 3.8 and which netlify image doesnt have


behavior function

behavior function

Can you add an issue that describes what the problem is that you are fixing, and link it in the PR description?

Hi @nilestimothy78 - if you don't respond I'll close this:

Can you add an issue that describes what the problem is that you are fixing, and link it in the PR description?

Closing as no response.


added requests's custom adapter implementation

This change will make us able to implement custom transport adapter, increasing possibilities of connection customization.
It's possible to pass to Browser() a dict containig the adaptee as key, and the adapter itself as value.
(see for reference: http://docs.python-requests.org/en/latest/user/advanced/#transport-adapters)

Looks good to me, thanks


Tidy up of properties + Tweaks

Minor rename + clean up, prob should have just bundled it in with the other PR lol.
Added console colours for emphasis on types of output.
Fixed a bug where NetworkCredentials Domain is empty when called from PS
Fixed a bug where Cache Clearing causes fatal error when ensuring a user due to null reference exception.

Thx @pkbullock !


[Boss Encounter] Daughter of Cosmos

Daughter of Cosmos
Base abilities:
1. Through the Cosmos: The boss would charge the lowest hp (flat hp, not %hp) target within ability range (quite long) stunning all those hit during the charge for a small duration and dealing flat magical damage. At the end of ability there would be a small explosion silencing all those in the area and dealing further flat magical damage. The charge would lock-on to the position of the target player when the ability is activated rather than following the the target. The boss would be untargetable during the charge until the explosion has happened.
The ability would make a slightly faint red line on the ground that would fill up from the middle to the edges in darker red to show where the charge is aimed, it's hitbox, and to show when the charge would start, the explosion would also show it's area in a similar way after the travel has finished, but would would be faster than the charge so that it leaves little time for the intended target to dodge the explosion if he didn't move away from the charge.
The boss would transform to look similar to Io for the duration of the ability and then transform back during the explosion.
2.  The skill would have a noticeable cast animation and a red warning area where the ability hits to allow for possibility of moving out of the way. The warning area could have similar color mechanic to Through the Cosmos where the warning area cone would fill up in darker red starting from the boss and filling up to the far edge of the cone to give better idea about when the ability hits, to allow for last second dodge with a blink ability.
Second phase:
Activates at 66% hp remaining:
Gains an ability called "A Call Beyond" that has a noticeable casting animation / red warning area to indicate the area, the ability is a big aoe that deals a large amount of flat magic damage to all those hit and stuns them for a short period and silences them for a medium period. Once again the warning area could fill up with darker red starting from the boss and filling towards the edges to give better idea when the ability actually hits.
The casting animation could have the boss raise whatever appendages it has in place of arms or their equivalent towards the sky and gather a growing sphere of energy that would explode to the affected area.
Third phase:
Activates at 33% hp remaining:
Gains an aura called "Otherworldly Wails" that continuously deals %max hp magic damage to all enemies around her in a medium sized area, similar to heartstopper aura. The aura could also be stronger the closer you are to the boss, so that tanks and other melee heroes would take more %hp damage and ranged characters and supports would take less %hp damage, though the area could be short enough to allow most ranged characters to attack from outside of it when not tanking.
The aura could have a visual appearance similar to Naga Siren's ultimate except that it would be a bit more visible and red to show that it's a negative aura, in order to show the affected area.
Design philosophy:
The boss idea is intended to punish participating players that have very little hp, or are trying to switch aggro while low hp. The boss deals large amounts of magic damage to incentivize players to have magic resistance items or to play heroes that gain magic resistance from their kit. The abilites are intended to deal large amount of damage and incentivize players to dodge the abilities with movement where possible. Frenzying Blood is to make tanking harder and A Call Beyond is there to disrupt the players and make heroes with very little hp vary of continuing to participate. Otherworldly Wails is also intended to make tanking more challenging and to make the boss charging low hp targets that much more dangerous, whether the aura would be active during the charge itself is  up to you and whether it's possible to turn the aura off for the duration of the charge.
The boss would use Frenzying Blood regularly and to compensate would deal less basic attack damage than others of the same tier. Through the Cosmos should be something that happens only a few times so that it doesn't make fighting the boss too annoying, but is still present and something to be aware of. A Call Beyond also shouldn't be used too frequently, but should happen more than once in the fight.
Boss item:
Called "Heart of Cosmos" grants large amount of intelligence, mana and mana regen as well as an activatable ability that is a weaker version of A Call Beyond. Could have a upgrade path with both Octarine Core and Heart of Tarrasque allowing the player to choose which stats he wants to combine to the item.
The player version of A Call Beyond would have a small delay after activation showing the affected area in a similar way to the boss after which it would deal flat magic damage in a medium sized aoe causing a mini stun and a slightly longer silence. Upgrading the item would retain the ability and possibly give slight increase to the damage, but not affect the aoe size or the duration of the stun and silence. The ability could have a medium to long cooldown timer.
Other notes:
Though the boss item could have been suggested as a separate item idea, but I think it should be connected to the boss itself rather than be something that could be bought from the shop, so I included it here.
I'm not sure what kind of base model / appearance this boss should have, it is of course alien / otherworldly in origin, but whether it should look completely alien or be somewhat humanoid in appearance I can't say, so I'll leave that to you =P. I also can't think of any good lore for the boss on the spot so I'll just leave that out as well.

Thank you for the submission.
Your post can be improved by clearing out the fluff and focusing on the mechanics. For example,

Charge
Charges in the direction of target player. Upon arrival, deals magical damage and silences in an AoE. Boss is invulnerable while charging.

is much  cleaner. Reformatting according to issue #37 will also increase clarity.

This is unclear, and once the fluff is stripped, not that interesting a design. Closed,


Add CONTRIBUTING.md

All PRs should pass CI, which runs luacheck and stylua, as well as the unit tests.
Should also include notes about updating the documentation in the README.md if you're changing public APIs.

Part of this should definitely be a testing checklist (or maybe this should go in the PR template) because I've accidentally introduced some bugs (I've fixed them since) with the last couple features.

Fixed by 6113d254abbc055118716f855c16a4520a9478d9..3b9ca27a9c55460643b57da28d85df62e86d3d79


About 3D Printed Parts

Is it convenient for you to provide the model in SolidWorks part format, because we would like to modify the model you posted, thank you very much！🙏🙏

please drop me an email!

<EMAIL_ADDRESS>THANKS!!!!!🫡

Hi, Thank you for your brilliant work, I would also like to have the model in SolidWorks part format which for creating my own one for Diana-7 Arms.  Here is my mail<EMAIL_ADDRESS>

Thank you for your excellent work! I would like to design a controller for UR3 in SolidWorks. I would appreciate it if you could share the models. Thank you so much in advance. My email is<EMAIL_ADDRESS>

Thank you for sharing the content. I would like to modify the UR5 model to fit my installation base. If you could share the model, I would greatly appreciate it. My email is<EMAIL_ADDRESS>

Hi, thanks for you interested in this project!
In the future for others please email me directly (you can find it on my website https://wuphilipp.github.io/) since I don't check this thread (its already closed).
Have just sent out the files to those of you who asked here.
Have fun and looking forward to what you all build!


should producer really inject trace headers?

If so, then what kind of trace is it supporting? KP's API has an option to not use this middleware but rather come up with our own. But the producer doesn't support middleware so is it really correct to inject headers as we see fit?
I'm inclined towards a no.
Maybe producer also should support a bit of middleware, that way people can add tracing only if they wanted to.

wrong PR got linked, opening again, will close the correct one.

it works for now and won't cause any issues. will tackle this again later if somoene has a need for custom tracing in the future. Just comment on this issue if you need this tackled.


can't use :VBox   | attempt to index a boolean value

E5108: Error executing lua [string ":lua"]:1: attempt to index a boolean value
stack traceback:
	[string ":lua"]:1: in main chunk

im getting this on  :VBox

100% sure , not caused by other plugin ,
sometimes it work in --clean , and if completely --comment my config , it still says this :(
im too much frustration now

i even tried , with default verbose mode

nothing found :( im getting rage now :(

Resolved :
Issue was mainly because of File-naming conflict,
 nvim (25.19 KiB)
├─  init.lua (6.33 KiB)
└─  lua (9.09 KiB)
   ├─  venn.lua (841 B)
   └─  Lazy.lua (3.78 KiB)

just Do not store any file with There **NAME**


[doc] Add changes and propose release 1.6.1

Looks fine, thanks. I assume you will be taking care of the release process?

Sure, I can; as documented this is what I'll do:
git tag -s v1.6.1
dune-release

and everything should work [crossing fingers]

It worked! https://github.com/ocaml/opam-repository/pull/14066


Several OMPL interface tests started failing with humble_ci job on main

Description
This only started a few days ago (w.r.t. the issue creation date):
https://github.com/moveit/moveit2/actions/runs/11988362896/job/33423544280
This is unique to the humble_ci job on the main branch -- we need to either pinpoint and fix the cause of failure, or draw the line to say building that the main branch from source no longer works on Humble.
I'd like to see if we can figure out the issue first, and only resort to the latter option if absolutely necessary.
ROS Distro
Humble
OS and version
Ubuntu 22.04
Source or binary build?
Source
If binary, which release version?
No response
If source, which branch?
No response
Which RMW are you using?
None
Steps to Reproduce
https://github.com/moveit/moveit2/actions/runs/11988362896/job/33423544280
Expected behavior
Tests should pass
Actual behavior
Tests do not pass
Backtrace or Console output
No response

Related to https://github.com/moveit/moveit2/issues/1952
It seems to be geometric_shapes throwing the error. Specifically, these lines

Ah! Yeah, turns out there was a commit to geometric_shapes that landed 5 days ago: https://github.com/moveit/geometric_shapes/pull/239
And this repo is actually building it from source.
I've attempted to pin the SHA of this dependency in https://github.com/moveit/moveit2/pull/3132 to see if this is it...

Found the issue. https://github.com/moveit/geometric_shapes/pull/252 should fix it.


can it run without GPU?

Hi, I have successfully detected on my own data. Thanks for the great open tool!
If I don't need a realtime detection, can I run OpenPCDet without GPU?
if it is possible, where can I disable the GPU in the code?
since spconv needs cuda support, it would be difficult to run without GPU?

No, I didn't consider to run OpenPCDet with cpu only mode, so currently it couldnot run on CPU.
Because there are some operations that are implemented with CUDA on the running of PartA2 / PV-RCNN and the post processing.

yeah, it is reasonable to run on GPU.

Hi, @sshaoshuai , I have successfully run without "cuda" with PointPillar
At first, I remove the cuda module on my pc, but when I run demo.py, GPU was still used, which I found in "nvidia-smi".
However, when I change

batch_dict[key] = torch.from_numpy(val).float().cuda() to batch_dict[key] = torch.from_numpy(val).float().cpu()
 model.cuda() to   model.cpu()
in pcdet/utils/box_coder_utils.py

        diagonal = torch.sqrt(dxa ** 2 + dya ** 2)
        xa=xa
        xt=xt
        ......

to
        diagonal = torch.sqrt(dxa ** 2 + dya ** 2).cpu()
        xa=xa.cpu()
        xt=xt.cpu()
        ......

in OpenPCDet/pcdet/ops/iou3d_nms/iou3d_nms_utils.py
from boxes = boxes[order].contiguous() to boxes = boxes[order].contiguous().cuda()

Then the GPU is not taken used. The speed is slower from 0.1s per frame to 0.8s per frame.
But my pc has successfully compiled the library with the help of CUDA before I did this.
My question is, when I want to do the experiment on a pc without nvidia-GPU, without cuda installed, I can not compile the OpenPCDet library. Is there any solution to compile when there is no cuda? Maybe some changes in the setup.py?

Oh no. When I run
watch -n 0.1 nvidia-smi
I found GPU is still 2% taken used.

Feel feel to re-open it if there are any updates.

@zhixiongzh Have you ever tried set CUDA_VISIBLE_DEVICES=-1?

@zhixiongzh Have you ever tried set CUDA_VISIBLE_DEVICES=-1?
No, I didn't. But I think CUDA_VISIBLE_DEVICES=-1 means use all available GPUs instead of non GPU. You can give it a try since I am not longer responsible for the project.

@zhixiongzh how to deal with the iou3d without GPU CUDA?hope your reply,thanks.


fix keycloak end to end tests.

Description
Resolved the little issue in the script, seems that the keyword wasn't the right one to override the baseUrl.

Processing this pull request

Merged into branches master, iso6 in 667d6e4d091f7ac87bf0fdfd4fd710ee65a33573


Put aws-ruby tests into a class

Right now its non object oriented. Let's make it ruby style and make it a class.

fixed by #73


Proper country codes

For some reason the country codes in the NOAA GSOM dataset are not official Alpha-2 country codes.
Currently this is mitigated by using country names to draw the map in the frontend but it's not ideal for multiple reasons:

Country names can have mismatches between the actual names in the map and the names in the GSOM dataset
NOAA GSOM's country codes were used as tags in InfluxDB, but are now not used at all, that means that we have useless tags in the InfluxDB and also that queries can be slower

In order to fix the above, we need to find a way to translate either country name (in every possible format) or the weird country code that the dataset provides in proper Alpha-2 codes. This means, re-fetching all the data and recreating the whole database, since tags can't be changed.
When this is done, the frontend should be updated to use country codes instead of country names.

Fixed ignored countries by adding a custom dictionary {country_name: country_alpha-2} as configuration.


ERROR!!! BUT WHY?

Traceback (most recent call last):
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\site-packages\speech_recognition_init_.py", line 203, in enter
self.audio_reader = wave.open(self.filename_or_fileobject, "rb")
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\wave.py", line 510, in open
return Wave_read(f)
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\wave.py", line 164, in init
self.initfp(f)
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\wave.py", line 131, in initfp
raise Error('file does not start with RIFF id')
wave.Error: file does not start with RIFF id
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\site-packages\speech_recognition_init_.py", line 208, in enter
self.audio_reader = aifc.open(self.filename_or_fileobject, "rb")
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\aifc.py", line 917, in open
return Aifc_read(f)
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\aifc.py", line 352, in init
self.initfp(file_object)
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\aifc.py", line 316, in initfp
raise Error('file does not start with FORM id')
aifc.Error: file does not start with FORM id
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\site-packages\speech_recognition_init_.py", line 234, in enter
self.audio_reader = aifc.open(aiff_file, "rb")
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\aifc.py", line 917, in open
return Aifc_read(f)
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\aifc.py", line 358, in init
self.initfp(f)
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\aifc.py", line 314, in initfp
chunk = Chunk(file)
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\chunk.py", line 63, in init
raise EOFError
EOFError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "H:\projects\Music Player Using Tkinter!\Music_Player.py", line 76, in
with sr.AudioFile(filename) as source:
File "C:\Users\pooop\AppData\Local\Programs\Python\Python38-32\lib\site-packages\speech_recognition_init_.py", line 236, in enter
raise ValueError("Audio file could not be read as PCM WAV, AIFF/AIFF-C, or Native FLAC; check if file is corrupted or in another format")
ValueError: Audio file could not be read as PCM WAV, AIFF/AIFF-C, or Native FLAC; check if file is corrupted or in another format
WHY THE ERROR OCCURS! TELL ME WHY????

Mistake


After moving a thread with keyboard the view scrolls down to the bottom of the e-mail list

Expected behavior

Open a thread in a folder (e.g. in INBOX).
Move all of its letters into an other folder with keyboard.

Unfortunately, after all the mails are moved the view gets back to the original folder (INBOX) but at the very end of the list without any e-mails selected.
Environment
K-9 Mail version: 5.600
Android version: 8.0.0
Account type (IMAP, POP3, WebDAV/Exchange): IMAP
Please take some time to retrieve logs and attach them here:
(Omitting "Imap[A-Z]" lines)
04-07 18:24:54.555 13473 13473 W ViewRootImpl[ChooseFolder]: Cancelling event due to no window focus: KeyEvent { action=ACTION_UP, keyCode=KEYCODE_M, scanCode=50, metaState=0, flags=0x28, repeatCount=0, eventTime=320872928, downTime=320872918, deviceId=14, source=0x101 }
04-07 18:24:54.556 13473 13473 I chatty  : uid=10221(u0_a221) com.fsck.k9 identical 7 lines
04-07 18:24:54.556 13473 13473 W ViewRootImpl[ChooseFolder]: Cancelling event due to no window focus: KeyEvent { action=ACTION_UP, keyCode=KEYCODE_M, scanCode=50, metaState=0, flags=0x28, repeatCount=0, eventTime=320872928, downTime=320872918, deviceId=14, source=0x101 }
04-07 18:24:58.352 13473 13490 I MessagingController: Running command 'moveMessages', seq = 52 (background priority)
04-07 18:24:58.358 13473 13490 I MessagingController: moveOrCopyMessageSynchronous: source folder = INBOX, 1 messages, destination folder = [Gmail]/Trash, isCopy = false
04-07 18:24:58.360 13473 13490 D LocalFolder: Updating folder_id to 1 for message with UID 36383, id 24872 currently in folder INBOX
04-07 18:24:58.545 13473 13490 I MessagingController:  Command 'moveMessages' completed
04-07 18:24:58.545 13473 13490 I MessagingController: Running command 'processPendingCommands', seq = 53 (background priority)
04-07 18:24:58.548 13473 13490 D MessagingController: Processing pending command 'com.fsck.k9.controller.MessagingControllerCommands$PendingMoveOrCopy@550cb26'
04-07 18:24:59.425 13473 13473 W ViewRootImpl[ChooseFolder]: Cancelling event due to no window focus: KeyEvent { action=ACTION_UP, keyCode=KEYCODE_M, scanCode=50, metaState=0, flags=0x28, repeatCount=0, eventTime=320877857, downTime=320877795, deviceId=14, source=0x101 }
04-07 18:24:59.426 13473 13473 I chatty  : uid=10221(u0_a221) com.fsck.k9 identical 7 lines
04-07 18:24:59.426 13473 13473 W ViewRootImpl[ChooseFolder]: Cancelling event due to no window focus: KeyEvent { action=ACTION_UP, keyCode=KEYCODE_M, scanCode=50, metaState=0, flags=0x28, repeatCount=0, eventTime=320877857, downTime=320877795, deviceId=14, source=0x101 }
04-07 18:24:59.579 13473 13490 D MessagingController: processingPendingMoveOrCopy: source folder = INBOX, 1 messages, destination folder = [Gmail]/Trash, isCopy = false
04-07 18:24:59.579 13473 13490 D MessagingController: processingPendingMoveOrCopy doing special case for deleting message
04-07 18:25:01.527 13473 13490 I MessagingController: processingPendingMoveOrCopy expunging folder GMail:INBOX
04-07 18:25:01.957 13473 13490 D MessagingController: Done processing pending command 'com.fsck.k9.controller.MessagingControllerCommands$PendingMoveOrCopy@550cb26'
04-07 18:25:01.958 13473 13490 I MessagingController:  Command 'processPendingCommands' completed
04-07 18:25:01.958 13473 13490 I MessagingController: Running command 'getFolderUnread:GMail:INBOX', seq = 55 (foreground priority)
04-07 18:25:01.961 13473 13490 I MessagingController:  Command 'getFolderUnread:GMail:INBOX' completed
04-07 18:25:01.961 13473 13490 I MessagingController: Running command 'moveMessages', seq = 54 (background priority)
04-07 18:25:01.964 13473 13490 I MessagingController: moveOrCopyMessageSynchronous: source folder = INBOX, 1 messages, destination folder = [Gmail]/Trash, isCopy = false
04-07 18:25:01.966 13473 13490 D LocalFolder: Updating folder_id to 1 for message with UID 36382, id 24871 currently in folder INBOX
04-07 18:25:02.054 13473 13490 I MessagingController:  Command 'moveMessages' completed
04-07 18:25:02.054 13473 13490 I MessagingController: Running command 'processPendingCommands', seq = 56 (background priority)
04-07 18:25:02.057 13473 13490 D MessagingController: Processing pending command 'com.fsck.k9.controller.MessagingControllerCommands$PendingMoveOrCopy@f17dae7'
04-07 18:25:02.623 13473 13490 D MessagingController: processingPendingMoveOrCopy: source folder = INBOX, 1 messages, destination folder = [Gmail]/Trash, isCopy = false
04-07 18:25:02.623 13473 13490 D MessagingController: processingPendingMoveOrCopy doing special case for deleting message
04-07 18:25:03.172 13473 13759 I MessagingController: Got new pushed email messages for account GMail, folder INBOX
04-07 18:25:04.835 13473 13490 I MessagingController: processingPendingMoveOrCopy expunging folder GMail:INBOX
04-07 18:25:05.232 13473 13490 D MessagingController: Done processing pending command 'com.fsck.k9.controller.MessagingControllerCommands$PendingMoveOrCopy@f17dae7'
04-07 18:25:05.234 13473 13490 I MessagingController:  Command 'processPendingCommands' completed
04-07 18:25:05.235 13473 13490 I MessagingController: Running command 'Push messageArrived of account GMail, folder INBOX', seq = 57 (background priority)
04-07 18:25:05.236 13473 13490 D MessagingController: Only syncing messages after Sun Oct 07 00:00:00 GMT+02:00 2018
04-07 18:25:05.292 13473 13490 V MessagingController: Message with uid 36383 is marked as deleted
04-07 18:25:05.292 13473 13490 D MessagingController: SYNC: Have 0 unsynced messages
04-07 18:25:05.292 13473 13490 D MessagingController: SYNC: Have 0 large messages and 0 small messages out of 0 unsynced messages
04-07 18:25:05.292 13473 13490 D MessagingController: SYNC: Fetching 0 small messages for folder INBOX
04-07 18:25:05.293 13473 13490 D MessagingController: SYNC: Done fetching small messages for folder INBOX
04-07 18:25:05.293 13473 13490 D MessagingController: SYNC: Fetching large messages for folder INBOX
04-07 18:25:05.293 13473 13490 D MessagingController: SYNC: Done fetching large messages for folder INBOX
04-07 18:25:05.293 13473 13490 D MessagingController: SYNC: About to sync flags for 1 remote messages for folder INBOX
04-07 18:25:05.295 13473 13490 D LocalMessage: No headers available for this message!
04-07 18:25:05.296 13473 13490 D MessagingController: SYNC: Synced remote messages for folder INBOX, 0 new messages
04-07 18:25:05.338 13473 13490 I MessagingController: messagesArrived newCount = 0, unread count = 133
04-07 18:25:05.357 13473 13759 I MessagingController: MessagingController.messagesArrivedLatch released
04-07 18:25:05.357 13473 13490 I MessagingController:  Command 'Push messageArrived of account GMail, folder INBOX' completed

This is no longer an issue in the current beta version (6.308).


Added ar_JO unit test folder + InternetTest.php

/test/Faker/Provider/ar_JO unit test folder added to improve code coverage.
Thank you.

Thanks


Graduating networks peer to standard channel from experimental

Describe the issue:
We added support for networks peer which is a list of inline CIDRs https://github.com/kubernetes-sigs/network-policy-api/pull/185
There are currently two implementations definitely who have implemented this:

OVN-Kubernetes
Calico

Other CNI implementations like Kube-OVN are waiting for this API to be in standard channel rather than experimental: https://github.com/kubeovn/kube-ovn/issues/3247#issuecomment-2434366673
are there any concerns from the maintainers of the repo if I move this peer to standard channel?
@danwinship / @Dyanngg / @aojea / @astoycos ?
As per our docs: https://network-policy-api.sigs.k8s.io/versioning/?h=beta#experimental-standard (I can open another issue to track what we spoke about whether we want standard/experimental to mean stability OR optional but for all intents and purposes of this field there was no controversies on the optional/mandatory bits so we should try to focus on stability aspects here); it seems I need to fullfill alpha->beta chain of events: https://network-policy-api.sigs.k8s.io/versioning/?h=beta#alpha-beta
so we seems to satisfy most of the requirements here. Only missing bit is validation which I was waiting for 1.31 kube to have isCIDR validation: https://github.com/kubernetes-sigs/network-policy-api/pull/256/files#diff-e14a317f3c12a983e1037dec16d99833bd1398ab66a65a8b6476adad81d05b1cR150 so once we fix the bump to 1.31 we should be able to move networks peer.

/assign @tssurya

I will also tag all active community members for awareness
@npinaeva @fasaxc @nathanjsweet

Networks is the new IPBlocks, right?

Networks is the new IPBlocks, right?

yup! https://network-policy-api.sigs.k8s.io/npeps/npep-126-egress-traffic-control/


New pull request guides user to url that 404's

This is a Bug Report
Hi Team,
Hope you're all doing well.
Problem:
When raising a PR for kubernetes/website, the guiding text is as follows -
PLEASE title the FIRST commit appropriately, so that if you squash all your commits into one, the combined commit message makes sense.

For overall help on editing and submitting pull requests, visit:

https://kubernetes.io/docs/contribute/suggest-improvements/

The URL listed, sadly, gives a 404.
Proposed Solution:
Either we fix the target url or update to an alternative location.  Thoughts?
Best Regards
James Spurin

The URL https://kubernetes.io/docs/contribute/suggesting-improvements/ works. Fixes welcome.

/triage accepted

I would like to work on this issue. Thanks.
/assign


Integrate updates from IHV feeback

Thanks for the PR, @omarcardona . Looks good; I'll merge it so the changes should be live later today.


Update Vagrantfile

Change the default permission of files (664) and directories (775) so that nosetests can run without extra arguments.

Thanks for figuring that out.


Add to context menu, integrate file explorer

This looks pretty cool, but I'm wondering if it's possible to integrate this into the contact menu where you can right click and delete with superdelete and it takes care of the parameters automatically. Also if there is a way to set this as the regular default handler so when you delete something, SuperDelete is invoked.

HI @ibay770. It would be possible, the simplest way is this I guess: https://stackoverflow.com/questions/20449316/how-add-context-menu-item-to-windows-explorer-for-folders. However, this possibly requires some changes in SuperDelete to take those parameters required by the shell handler.
Another would be to extend SuperDelete to actually register itself as an IExplorerCommand and add itself in the Explorer context menu. For Windows 11 that would be even more difficult, because they've switched to sparse manifests and it's a bit more complex that in Windows 10 and earlier.
However, may I ask why do you need this? I think starting from Windows 8 (or maybe 10?) the path length limitation is no longer applicable.

Because SD is much faster then the windows versions.

Heh, thanks! Didn't know that. Let me know if you need any help setting it up via the context menu.

Good evening. You may!  Because your software is alot faster then Microsoft. It may not look as fancy but it works better.
Get BlueMail for Android
On May 12, 2022, 12:13 a.m., at 12:13 a.m., Marcel Nita @.***> wrote:

HI @ibay770. It would be possible, the simplest way is this I guess:
https://stackoverflow.com/questions/20449316/how-add-context-menu-item-to-windows-explorer-for-folders.
However, this possibly requires some changes in SuperDelete to take
those parameters required by the shell handler.
Another would be to extend SuperDelete to actually register itself as
an IExplorerCommand and add itself in the Explorer context menu. For
Windows 11 that would be even more difficult, because they've switched
to sparse manifests and it's a bit more complex that in Windows 10 and
earlier.
However, may I ask why do you need this? I think starting from Windows
8 (or maybe 10?) the path length limitation is no longer applicable.
--
Reply to this email directly or view it on GitHub:
https://github.com/marceln/SuperDelete/issues/8#issuecomment-1124616811
You are receiving this because you were mentioned.
Message ID: @.***>


JsonPatchDocument.Replace() yields invalid path when [JsonProperty] is used (1.1.0)

Title
In 1.1.0, JsonPatchDocument<T>.Replace() creates Operation<T> with invalid path, when [JsonProperty] from Newtonsoft.Json is used.
Functional impact
This is regression from "Microsoft.AspNetCore.JsonPatch": "1.0.0" and breaks existing behavior.
Minimal repro steps
global.json:
  "sdk": {
    "version": "1.0.0-preview2-1-003177"
  }

project.json:
{
  "version": "1.0.0-*",
  "buildOptions": {
    "emitEntryPoint": true
  },

  "dependencies": {
    "Microsoft.AspNetCore.JsonPatch": "1.1.0",
    "Microsoft.NETCore.App": {
      "type": "platform",
      "version": "1.1.0"
    },
    "Newtonsoft.Json": "9.0.1"
  },

  "frameworks": {
    "netcoreapp1.0": {
      "imports": "dnxcore50"
    }
  }
}

Program.cs:
using System.Diagnostics;
using System.Linq;
using Microsoft.AspNetCore.JsonPatch;
using Newtonsoft.Json;

namespace JsonPatchReplaceIssue
{
    public class Model
    {
        [JsonProperty]
        public string[] ArrayOfStringsOrNull { get; set; }
    }

    public class Program
    {
        public static void Main(string[] args)
        {
            var patch = new JsonPatchDocument<Model>()
                .Replace(m => m.ArrayOfStringsOrNull, new[]
                {
                    "yo"
                });

            var operation = patch.Operations.Single();

            Debug.Assert(operation.path == $"/{nameof(Model.ArrayOfStringsOrNull).ToLowerInvariant()}",
                $"No it ain't! It is '{operation.path}'");
        }
    }
}

Expected result
The Operation<T>.path should be derived from the property in the expression. Expected path to be "/arrayofstringsornull" in this case.
Actual result
Actual path is "/", which is incorrect.
Further technical details
Regression from "Microsoft.AspNetCore.JsonPatch": "1.0.0" with .NET Core 1.0.
I have tested:

Change the JsonPatch dependency in project.json to 1.0.0 and it works as expected.
Remove [JsonProperty] and it works as expected.

Question
Am I doing it wrong? I'm assuming that Newtonsoft.Json's attributes are supported.

Ok, I think I've found the reason for this. I was originally using [JsonProperty(NullValueHandling = NullValueHandling.Ignore)] without propertyName.
See https://github.com/aspnet/JsonPatch/blob/dev/src/Microsoft.AspNetCore.JsonPatch/Internal/ExpressionHelpers.cs#L86.
When JsonPatchAttribute is found in ExpressionHelpers.GetPropertyNameFromMemberExpression(MemberExpression memberExpression), it assumes that PropertyName is valid and returns it. However, when [JsonProperty] is used without explicit propertyName, castedAttribute.PropertyName will be null and the result invalid.
Workaround: use explicit propertyName when using [JsonProperty].

@kichalla can you investigate? If this is clearly a bug, would you recommend we patch in 1.1.1?

Putting in 2.0.0 and marking as a bug. In the meantime the workaround should suffice.

And please check if there are any other places in the codes where we may have gotten that wrong.


A POSTed Bundle containing an Id is processed without error

The FHIR server accepts a Bundle containing an Id, changes the value of the Id, and returns success.
FHIR Spec Section <IP_ADDRESS> states: “If the client wishes to have control over the id of a newly submitted resource, it should use the update interaction instead.”  In fact, if we’re accepting the post and re-assigning the ID, we’re in violation of the spec ourselves, as it further states: “If an ID element is provided, the server SHALL respond with a HTTP 400 error code, and SHOULD provide an operation outcome identifying the issue.” .

Thank you for posting this.  I expect it is the same for all resources (not just Bundle).  We'll put it on our to-do list!

This is partially fixed in pull request #43, which adds support for upserts using HTTP PUT.  We're still in violation of the spec, however, in that we don't reject POSTs that contain IDs.


Always display results in Output Area

I don't understand how to configure Atom to use the Output Area pane to display all results. I have checked "Output Area Dock" in options, but results are still displayed in bubbles. If I open the Output Area from the command palette (which requires a lot of typing and can be found only after starting the kernel), then the results are indeed displayed in the Output Area. But if I close and reopen Atom, bubbles are used again.
Is there a way to use the Output Area by default instead of bubbles?

There is not a way currently to use the output area by default, what you need to do is search "toggle output area" in the command palette and run, after that your output will be in the output area.
I added a keybinding to my keymap for this reason, ill paste that code here later and maybe add something to the docs about this.
BTW, the "Output Area Dock" option is (my badly named) setting to keep your dock open even if you switch to an editor without a kernel running. I'll have to add something to the docs for this as well, but the hydrogen default is to close the dock if you switch, which can be annoying if you use the dock for another package (like the github package). The setting resolves this problem.

@vuki I agree we should add a global setting to configure if the inline bubbles or the external dock should be used.
Would you like to send a PR to fix this? A additional check here will maybe do the job.

i just watched this talk by bret victors on youtube where he outlines a very compelling for instant feedback. from what i've read in this atlantic long-read he was also an inspiration for LightTable. in one of his demos he has a side by side view, which reminded me very much of hydrogen, apart from the fact that it's not side by side and not instantaneous. so i was wondering how much it would take to get even a little closer to that experience. i'd guess that the loops etc are probably not that easy, but the side by side view and and instant feedback might be feasible, don't you think so? is it possible already? figured this thread might get have the same goal, but not sure.
thank you anyway, love your work!

The watch expressions will give you instantaneous feedback for every time you run anything in the editor.

Closed by #1022
Thanks @BenRussert for the work.


WIP: need help! ... adding above 6 sections doesnt fit navbar

Issue #259

Description
im not sure but adding new section causes navbar issues

Test Evidence
full width

small window

@hossainemruz @cmarquezrusso whats the first check ?

@hossainemruz @cmarquezrusso whats Enforce Labels and Check Markdown links checks?
how to enforce feature label?

Enfore Labels checks if any label has been assigned to this PR.  We generate release note automatically from the labels associate with the PRs. That's why we need to ensure that the PR has proper label. Otherwise, it won't be shown in the release note.
Check Markdown  links checks if there is any invalid link in the markdown files used in this repository.

im not sure but adding new section causes navbar issues

Don't show it in the navbar. Set hideTitle: true in the data file. Here, is an example: https://github.com/hugo-toha/toha/blob/1c3154d47a3433d0736c3e8d49cc54f3de017b3a/exampleSite/data/en/sections/recent-posts.yaml#L9
Also, please add the example data file here: https://github.com/hugo-toha/toha/tree/main/exampleSite/data/en/sections

Don't show it in the navbar. Set hideTitle: true in the data file. Here, is an example:
i setted showNavbar: false and it seems to be working

Also, please add the example data file here: https://github.com/hugo-toha/toha/tree/main/exampleSite/data/en/sections
i push the data file recently

Let me know when this PR is ready to review. Update the title of this PR to "Add Accomplishment section"

Let me know when this PR is ready to review. Update the title of this PR to "Add Accomplishment section"
okay
im finding it hard to slice sections[6: ] to dropdown in go templating language

im finding it hard to slice sections[6: ] to dropdown in go templating language
in nabar.html

Why it is necessary?

im finding it hard to slice sections[6: ] to dropdown in go templating language
in nabar.html

Why it is necessary?
well if we want to display elements on navbar

You can probably use this function: https://gohugo.io/functions/last/
Probably something like this.
last (sub (len COLLECTION) 6)  COLLECTION

@hossainemruz

@hossainemruz

@hossainemruz

@hossainemruz  see if u can make changes

@HenzelMoras I am making some changes in the PR.

@HenzelMoras I am making some changes in the PR.

@hossainemruz  i made some too  kindly check
i hope it helps

@hossainemruz  i see certain peices of code repeated multiple times
{{ $sectionID := replace (lower .section.name) " " "-"  }}
{{ if .section.id }}
  {{ $sectionID = .section.id }}
{{ end }}

@hossainemruz i see certain peices of code repeated multiple times
{{ $sectionID := replace (lower .section.name) " " "-"  }}
{{ if .section.id }}
  {{ $sectionID = .section.id }}
{{ end }}

maybe we could create shortcodes

@HenzelMoras I have pushed some changes. Can you check?

This is how your data file should look like.
https://github.com/hugo-toha/hugo-toha.github.io/pull/50/files

@HenzelMoras I have pushed some changes. Can you check?

@hossainemruz  on it

@HenzelMoras I have pushed some changes. Can you check?

@hossainemruz on it

how can i check this locally :sweat_smile: ?

@HenzelMoras  I have added a helper function for generating section id.

@HenzelMoras I have added a helper function for generating section id.

how can i check this locally sweat_smile ?

Merged.

Merged.

@hossainemruz  noice

I owe you an apology for this PR. I merged this PR without squashing. As  a result all the commits of this PR get merged into main. When I tried to pull the changes in my another PR, it was causing conflict at every commit. In order to fix that, I had to reset main branch. After the reset, your contribution in this PR was showing in my name. I wasn't able to restore you as a contributor of this PR. Now, your contribution in this theme showing 2 commits where it should be 3. I am really sorry about this.

I owe you an apology for this PR. I merged this PR without squashing. As a result all the commits of this PR get merged into main. When I tried to pull the changes in my another PR, it was causing conflict at every commit. In order to fix that, I had to reset main branch. After the reset, your contribution in this PR was showing in my name. I wasn't able to restore you as a contributor of this PR. Now, your contribution in this theme showing 2 commits where it should be 3. I am really sorry about this.

@hossainemruz  no problem happens with everyone


feat: update html lang and dir

Update lang in html and update dir=[ltr | rtl] based on language.
Fix #153
Test URLs:

Original: https://www.esri.com/en-us/about/about-esri/overview
Before: https://main--esri--aemsites.hlx.live/
After: https://lang-dir--esri--aemsites.hlx.live/

@alexcarol added language switcher. Not sure why it's failing psi check.

@alexcarol updated with getMetadata. I also moved the function to separate it from the alternate headers code. Not sure it makes any difference, but it looked cleaner to me.


[feat][doc] add Pulsar API content

What content does this PR add?

This doc adds the content in green (1⃣2⃣3⃣). They are totally newly created and in parallel with each other as independent topics in Pulsar docs.
Currently, 2⃣ is not placed in 4⃣ (client libraries) because we’re optimizing the structure of 4⃣, and 2⃣ does not fit in 4⃣ temporarily. Once we have a final and better solution, we’ll tweak the structure, but below is the structure that makes the most sense for now.
This doc is the beginning of Building Great Developer Experience with API Content. More Pulsar API content will be created in the future.

Why add this content?

Based on the user behavior metrics collected from GA, the Pulsar API doc is one of the top-viewed content. However, we do not have a page to explain Pulsar API systematically.
This doc aims to provide landing pages (e.g. Get Started - Landing Page) for Pulsar API, Client API, and Admin API and organically correlate them. I make them succinct, self-contained, and robustly linked rather than flooding users with too much info.

This content has been reviewed and approved by @hangc0276 and @D-2-Ed, thank you!
And thanks for your suggestions! @BewareMyPower, @yuweisung, @tisonkun, @xiaogang-sn
cc @DaveDuggins

[x] doc

Preview looks good:

Pulsar API

Client API

Admin API


Fixes for release v5

Summary
Had to make a couple changes to the release pipeline for v5:

Edit the script so that it starts on RC1 when releasing
Added the node v16 upgrade to the MSI installer script

NONE

The files .circleci/config.yml, scripts/release.sh, scripts/release.sh are in the blocklist for external contributors. Hence, these changes are not tested by the CI pipeline active until the build is re-triggered by a core committer or the PR is merged. Please be careful when reviewing it.
/cc @mattermost/core-security @mattermost/core-build-engineers

Code changes look good but what happened to your commits :P

Had a little accident :P It'll get squashed don't worry


$dialog-position-top set all margin values of modal window

I'm submitting a ...  (check one with "x")
[x] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here, post on Stackoverflow or Gitter

Current behavior
overriding $dialog-position-top set all margin values of modal window, and my window becomes too small
Expected behavior
I expect that $dialog-position-top should set top value
Reproduction of the problem
What is the motivation / use case for changing the behavior?

Please tell us about your environment:
Chrome

Smart Modal version: 0.8.x
7.1.1

Angular version: 2.0.x
7

Hi @cube27rus ,
thanks for your formatted issue. I provide a stackblitz to illustrate this behavior : https://stackblitz.com/edit/ngxsmartmodal-expressionchangedafterithasbeencheckederro-eqcvsb
As you can see, the $dialog-position-top set all margins properties. I'll post a PR asap. 🤘


Pinafore being retired + not sure about Halcyon

Hi!
About this question: https://github.com/joyeusenoelle/GuideToMastodon#i-like-mastodon-but-i-prefer-the-way-twitter-looks
Looks Pinafore is being retired and I'm not sure about the status of Halcyon either.
There's quite a few upcoming alternatives in various states of development  and I keep finding a new one nearly every week. For example, Semaphore claims to be a spiritual successor of Pinaphore. There's also Elk.
I'm working on revisiting this question in the Polish version of the guide - I started with listing all Mastodon apps and interfaces I've seen so far. If you like, I can submit a PR with my new take on this question here as well.

Sorry to leave you hanging for so long. I'm editing my version now to indicate that Pinafore is no longer maintained, but it looks like Halcyon is back up! And please feel free to submit a PR with your new take - I'd love to see it!


Bug in the edges of the rmol associated to WW7 from the PDB

Describe the bug
RDKit doesn't give the good edges for the  molecule WW7 from PDB.
To Reproduce
smiles = 'c1cc2c(cccc2Cl)c(c1)S(=O)(=O)NCCCCCCN'
mol = Chem.MolFromSmiles(smiles, sanitize=True)

the representation is correct but if we see the graph associated to mol we get:

Configuration (please complete the following information):

RDKit version: 2<IP_ADDRESS>
OS: Centos 7
Python version: 3.6.8
Are you using conda?Yes
If you are using conda, which channel did you install the rdkit from? rdkit
If you are not using conda: how did you install the RDKit?

I don't understand what you think the RDKit bug is here.

The problem comes from the edges obtained with mol.GetBonds().
There is a bond between 2 and 4.

I suspect you are misinterpreting that drawing. Whatever tool you are using to layout and draw the graph has set things up so that the bond between atoms 2 and 1 is drawn through atom 4.

You are right. Sorry,

I'm closing this because it looks like the question is answered. Please reopen if necessary.


Refs #31617 -- Changed dark mode primary-fg to give higher contrast to secondary.

Ticket #31617
When logging into to the admin using dark mode the links on the header bar (e.g. change password / logout) fail accessibility tests due to a lack of contrast. The contrast ratio needs to be 4.5 for AA compliance and it is currently 4.29, this patch increases it to 4.64.

Could I perhaps get a screenshot for comparison?

Sorry it took me a while to get back to this. I've shown a before and after, and a comparison to white. Now I've looked at it again (different monitor at my end, maybe) I'm not sure there's actually that much in-between all of these. As a reminder, we're looking at the three links in the top right.
Before

After

White

@smithdc1 Thanks :+1:


Create code of conduct

As part of defining the Governance docs, I suggest we adopt this GitHub default code of conduct for all repositories, as the minimum we expect from anyone involved in the project.

once this mysterious coveralls fail is fixed :D

once this mysterious coveralls fail is fixed :D

This seems to have fixed it.

This seems to have fixed it.

Great, thank you!

Great, thank you!


Add mtu override to docker, remove distro docker support

Everything up to https://github.com/openmicroscopy/infrastructure/commit/5c0acef2de23af398a91894184dd35d82db84498 changes this role to use upstream docker instead of supporting upstream and the distribution version, since we never use the latter.
The remaining commits add support for setting the Docker MTU from the default NIC instead of using auto-discovery which may not work.

https://github.com/docker/docker/issues/22028
https://github.com/docker/docker/pull/18108
https://github.com/docker/docker/issues/12565

Docker 1.9 used the MTU of the default network route/NIC, which may be lower than the typical 1500 on VMs using virtual networking (tunnelling). Docker 1.10+ attempts to use Path MTU Discovery to find out the correct MTU for a route. Unfortunately this appears to be broken when bridges and/or tunneling is involved. Suggested fix is to define the MTU when starting the docker daemon. No idea why docker sometimes still works in a VM without the fix.

The last commit https://github.com/openmicroscopy/infrastructure/pull/67/commits/7bcbc81b7e6ee29add95d6213a32f9e1f9f166e9 modifies the systemd service file to include the changes with the most recent docker release (1.11.0).

Conflicting PR. Removed from build MANAGEMENT_TOOLS-merge#636. See the console output for more details.
Possible conflicts:

PR #64 joshmoore 'docker: add docker-compose installation to the role'

ansible/roles/docker/tasks/docker-common.yml

Conflicting PR. Removed from build MANAGEMENT_TOOLS-merge#637. See the console output for more details.
Possible conflicts:

PR #64 joshmoore 'docker: add docker-compose installation to the role'

ansible/roles/docker/tasks/docker-common.yml

openstack/examples/omedev-docker.yml moved to this PR from #61

Conflicting PR. Removed from build MANAGEMENT_TOOLS-merge#638. See the console output for more details.
Possible conflicts:

PR #64 joshmoore 'docker: add docker-compose installation to the role'

ansible/roles/docker/tasks/docker-common.yml

Conflicting PR. Removed from build MANAGEMENT_TOOLS-merge#639. See the console output for more details.
Possible conflicts:

PR #64 joshmoore 'docker: add docker-compose installation to the role'

ansible/roles/docker/tasks/docker-common.yml

@joshmoore How do you want to manage this and #64?


Live website, what domain?

Hey @cube5 none of the names worked for me.
sphere.diybio.org -> just redirected me to diybio.org
diybiosphere.github.io -> 404 page
diybiosphere.io -> blank page

yeah, hmmm...it worked for a few days and now broke.
@cube5 let me know if you'd like to check out the DIYbio.org DNS to make sure the CNAME records are correct

@jasonbobe Sure no problem, I can take a look.

just sent you a message via Gitter
On Tue, May 24, 2016 at 9:03 AM, Daniel Sanchez<EMAIL_ADDRESS>wrote:

@jasonbobe https://github.com/jasonbobe Sure no problem, I can take a
look.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/DIYbiosphere/diybiosphere.io/issues/29#issuecomment-221261571

The domain is working now!


Incompatible to Hippo CMS 10

java.lang.NoClassDefFoundError: Lorg/apache/jackrabbit/core/stats/RepositoryStatisticsImpl
It looks like an incompatible Jackrabbit Version (Hippo CMS makes use of 10.1, this solutions uses older one)

Also gets:
java.lang.ClassNotFoundException: org.onehippo.forge.webservices.jaxrs.RootResource
After adding some this dependency:

org.apache.cxf
cxf-bundle-jaxrs
2.3.11

Thanks for reporting! I'll take a look tonight.