problem with importing modules

ImportError                               Traceback (most recent call last)
~\anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py in
57
---> 58   from tensorflow.python.pywrap_tensorflow_internal import *
59
~\anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py in
27             return _mod
---> 28     _pywrap_tensorflow_internal = swig_import_helper()
29     del swig_import_helper
~\anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py in swig_import_helper()
23             try:
---> 24                 _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
25             finally:
~\anaconda3\lib\imp.py in load_module(name, file, filename, details)
241         else:
--> 242             return load_dynamic(name, filename, file)
243     elif type_ == PKG_DIRECTORY:
~\anaconda3\lib\imp.py in load_dynamic(name, path, file)
341             name=name, loader=loader, origin=path)
--> 342         return _load(spec)
343
ImportError: DLL load failed: The specified module could not be found.
During handling of the above exception, another exception occurred:
ImportError                               Traceback (most recent call last)
 in
1 import pandas as pd
----> 2 import tensorflow as tf
3 from tensorflow import keras
4 import numpy as np
~\anaconda3\lib\site-packages\tensorflow_init_.py in
39 import sys as _sys
40
---> 41 from tensorflow.python.tools import module_util as _module_util
42 from tensorflow.python.util.lazy_loader import LazyLoader as _LazyLoader
43
~\anaconda3\lib\site-packages\tensorflow\python_init_.py in
48 import numpy as np
49
---> 50 from tensorflow.python import pywrap_tensorflow
51
52 # Protocol buffers
~\anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py in
67 for some common reasons and solutions.  Include the entire stack trace
68 above this error message when asking for help.""" % traceback.format_exc()
---> 69   raise ImportError(msg)
70
71 # pylint: enable=wildcard-import,g-import-not-at-top,unused-import,line-too-long
ImportError: Traceback (most recent call last):
File "C:\Users\acer\anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in
from tensorflow.python.pywrap_tensorflow_internal import *
File "C:\Users\acer\anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in
_pywrap_tensorflow_internal = swig_import_helper()
File "C:\Users\acer\anaconda3\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
_mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
File "C:\Users\acer\anaconda3\lib\imp.py", line 242, in load_module
return load_dynamic(name, filename, file)
File "C:\Users\acer\anaconda3\lib\imp.py", line 342, in load_dynamic
return _load(spec)
ImportError: DLL load failed: The specified module could not be found.
Failed to load the native TensorFlow runtime.
See https://www.tensorflow.org/install/errors
for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

no,im facing this issue on my computer

@abisheksriram,
You might be facing this issue because of the following reasons

You you running 32-bit Python or 32-bit OS
You have not installed the Microsoft Visual C++ Redistributable package
Your CPU does not support AVX instructions.

Please take a look at the system requirements and check if you have the correct dependencies installed.
Also, check these similar duplicate issues: #36167 #36151 #36138 #36054 #36045 #36020 #36003 #35988 #35903 #35880 #35865 #35805 #35789 #35773 #35772 #35767 #35766 #35749 #35721 #35618 #35204.
Thanks!

Also ,for mask rcnn I'm not able to install tensorflow 1.3 or 1.4

Also ,for mask rcnn I'm not able to install tensorflow 1.3 or 1.4

@abisheksriram
TensorFlow v1.3/1.4 is not actively supported. Please update TensorFlow to v2.2 or v1.15 and let us know if you are facing the same issue. Thanks!


Scheme and host erroneously passed to HTTPConnection request method

I think there is a problem in the use of httplib.HTTPConnection method request when called at
line 213 of urllib3/connectionpool.py where you pass it the full URL, containing the scheme and host, instead of just the path (and query part), as show in httplib usage examples.
This ends up in a wrong HTTP request performed to the server. To see it, you can for instance run
python -m SimpleHTTPServer

in a shell and then, in another one, run
python -c 'from urllib3 import PoolManager; http = PoolManager(); http.request( "GET", "http://localhost:8000/this/is/an/example" )'

and compare what the access log in the first shell reports as compared to what happens if you do
curl  "http://localhost:8000/this/is/an/example"

I can submit a patch, but I'm not an urllib3 expert so I will probably miss some other place where the same error occurs.

The request should definitely be made with the path (and the query) only, because urllib3 is a HTTP/1.1 client.
RFC2616:

To allow for transition to absoluteURIs in all requests in future versions of HTTP, all HTTP/1.1 servers MUST accept the
absoluteURI form in requests, even though HTTP/1.1 clients will only generate them in requests to proxies.

Excellent info. Thanks :)

This isn't a bug in urllib3. It's doing exactly what it's told.


BigDecimal data fields are presented as strings

Hello.
When I pass an ActiveRecord model with BigDecimal fields into present(…,with: GrapeEntity) method it generates json with strings instead of numbers.
For example, if the model contains a “cost” field which is BigDecimal type, the generated json looks like:
{
  cost: "123.50"
}

This looks wrong to me. Is this its right behaviour?

Looks like a bug indeed.

Got same issue decimals are exposed as strings

Turned out it's a Rails peculiarity. The issue can be closed. /cc @dblock

@dblock @jibiel - Surely this is a bug. Rails doesn't control the JSON spec. Numbers should not be strings. This breaks the json specification, it also means the documentation in grape is wrong as the generated docs show the value as a float despite it being returned as a string.

Grape::Entity relies on the ActiveSupport for the JSON representation of the data types. No point in fighting it at the same time as it would complicate the general codebase for the sake of a single case.

You can easily change any output format to your liking with format_with:

format_with :float do |attribute|
  attribute.to_f
end

Haven't seen any float response attribute examples in the docs, so it's probably not so obvious problem. If you've got bitten by the misleading documentation you should consider creating an issue or a fix for it in the appropriate repo.

@ro-savage If there's something that can be done in grape-entity, consider making a PR and we can see if it makes sense to merge here.


Working on the home page (ANDROID)

I want to be assigned the task of building the design of the home page using Jetpack Compose

Have a go @essy16!

Issue irrelevant.


PropsTable: What's about nested Props

Is: The following example show only the name of the type "A",
Should: I missed the content of the type "A {a: string,b: string}", maybe as a tooltip by mouseover?
type A {
a: string,
b: string
}
type Props {
a: A
}
const comp = (props: Props) => {
...
}

I had the same issue. I think it relates to react-docgen, maybe you can find something in their repo: reactjs/react-docgen

@bsssp how do you fixed your problem, I just have the same issue

@rakannimer how can I fixed this problem in docz?


Drawing with pen tool left and above expected point

Maybe the top left point of icon is where the drawing is done and bottom left would look more realistic.

Same as issue #82


Upgrading a running app upgrades the metadata but not the app.

when running winget upgrade against a running application, the task shows success, but the application is still the old version. However, the winget metadata is updated so winget reports the new version.
Steps to reproduce:

Winget uninstall --id 7zip.7zip
winget install --id 7zip.7zip --source winget --version 21.06
launch 7zip and keep running
winget upgrade --id 7zip.7zip
wait for completion
close running 7zip app
winget list --id 7zip.7zip
you will see new version listed in result
launch 7zip - look at version info, old version shown

subsequently, you can use Winget uninstall --id 7zip.7zip --version 21.06 (not listed) to unistall.
This issue leads to incorrect reporting - can metadata updates be blocked and an error reported if the app is running?
Thanks

sometimes if the app is running the actual replacement of the binary files is done by the windows installer at system reboot... can you please check for pending file replacements at system boot?
or simply, just reboot the system and check what version binaries you find after reboot.

That fixed it - thank you for your help!


feature/css-color-names

New build-in plugin names plugin with named colors support.

Codecov Report

Merging #12 (a6d2c82) into main (0a4c8ff) will decrease coverage by 0.09%.
The diff coverage is 94.23%.

@@            Coverage Diff             @@
##             main      #12      +/-   ##
==========================================
- Coverage   95.98%   95.89%   -0.10%
==========================================
  Files          68       72       +4
  Lines         748      803      +55
  Branches      204      212       +8
==========================================
+ Hits          718      770      +52
- Misses         28       31       +3
  Partials        2        2

Impacted Files
Coverage Δ

src/index.ts
100.00% <ø> (ø)

src/manipulation/index.ts
100.00% <ø> (ø)

src/properties/index.ts
100.00% <ø> (ø)

src/properties/distance.ts
83.33% <83.33%> (ø)

src/plugins/names.ts
94.28% <94.28%> (ø)

src/manipulation/nearest-color.ts
100.00% <100.00%> (ø)

src/properties/css-color-names.ts
100.00% <100.00%> (ø)

... and 3 more

Continue to review full report at Codecov.

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


Add Coronavis

Add Link to

Coronavis-Dashboard: https://coronavis.dbvis.de/de/overview/dashboard/[AGS]
Bundesnotbremse: https://coronavis.dbvis.de/de/overview/ebrake?ids=08335

AGS of LKR Konstanz: 08335
Required AGS could be queried from RKI as additional param.
See: https://twitter.com/wjentner/status/1392373471544586240

Not sure if it's relevant, but for the Bundesnotbremse you can also add multiple AGS like so:
https://coronavis.dbvis.de/de/overview/ebrake?ids=08335,08336
or 08 for Baden-Württemberg
https://coronavis.dbvis.de/de/overview/ebrake?ids=08
The latter works with dashboards as well. For Germany the "AGS id" is de.

@wjentner would it be possible to get a improved layout of Bundesnotbremse for mobile?
I am thinking about to integrate it in the Covid Ampel.

I have just released a new version which will allow you to change the number of days into the past and future:
https://coronavis.dbvis.de/ebrake?ids=08325,08335&numPastDays=3&numFutureDays=3
You can get all the parameters in the dialog that opens when you click on "Embed visualization into a website" (https://coronavis.dbvis.de/de/overview/ebrake?ids=08335)
It is also a little bit more responsive now and should work for screen widths of ~300px. If it's still not working for you, you may also use the API directly like so:
https://api.coronavis.dbvis.de/federal-emergency-brake?from=2021-05-13&to=2021-05-14&ids=08335
The output will be similar to this:
{
  "data": [
    {
      "7_day_cases": 232,
      "7_day_incidence": 81.0324653778,
      "ebrake100": false,
      "ebrake150": false,
      "ebrake165": false,
      "holiday": "Christi Himmelfahrt",
      "id": "08335",
      "name": "Landkreis Konstanz",
      "timestamp": "2021-05-13T00:00:00"
    },
    {
      "7_day_cases": null,
      "7_day_incidence": null,
      "ebrake100": false,
      "ebrake150": false,
      "ebrake165": false,
      "holiday": null,
      "id": "08335",
      "name": "Landkreis Konstanz",
      "timestamp": "2021-05-14T00:00:00"
    }
  ],
  "last_checked": "2021-05-13T20:00:47.904704+02:00",
  "last_updated": "2021-05-13T07:04:16"
}

This endpoint is also documented here: https://api.coronavis.dbvis.de/apidocs#/default/get_federal_emergency_brake_


[FEATURE] Format the date for {next_step_date} as friendly eg: Tomorrow. This Week, Next Week etc

Implemented. The days will show as in UIUC main app event & news calendar (Today, Tomorrow, Sunday... etc).


driver: adc: stm32: combine shared and separate irqs

Several STM32 variants include both shared IRQs for some ADCs and separate IRQs for others (for example, STM32G473 has 5 ADCs, ADC1 and ADC2 share one IRQ while ADC3, ADC4 and ADC5 each have unique IRQs). The STM32 ADC driver however previously only supported either separate IRQ lines for each operational ADC in the devicetree or a single shared IRQ for all operational ADCs in the devicetree which prevented all ADCs from being usable at the same time when the variant contained a mix of both shared and separate ADC IRQ lines (only either all the shared or all the separate and one of the shared might be used at most for one application).
To allow for all ADCs in an STM32 variant to be usable in a single application, generate an ISR and initialization function for each unique IRQn as defined in the devicetree and give the task of initialization to the first ADC which connects to that particular IRQ. Each ISR function will generate code to check each ADC associated with its IRQn as was previously done for CONFIG_ADC_STM32_SHARED_IRQS, allowing an ISR to be shared for the ADCs sharing an IRQ while simultaneously providing separate ISRs for each IRQ. Thus, the only information required to have ADCs either share an ISR or not is provided by the devicetree.

Has been tried on an STM32G473 which fixed an issue encountered when using ADC1,2,4 in a single application; however, as there are a wide number of STM32 variants, I am unsure if there isnt something in one of that that is still unaccounted for

Thanks for working on this. Initially I thought you used #61422, but I can see this isn't the case. Did you explore this solution ? I guess your option might be more optimized but maybe #61422 could bring some code simplification ?
Regarding testing, i'm not sure what's the best option. We can perform a non regression on few boards, but it won't help testing all combinations.
Also, please the issue reported by bot.

Since we were working off of v3.4.0, I didn't realize that a more general shared interrupts was available in mainline though I did start looking at it - this why I haven't yet fixed all the issues here.
With this solution, I am unsure as to whether when CONFIG_SHARED_INTERRUPTS is set if it should not do this change and just use the common infrastructure or always just use this new isr setup as it is more optimal (at least for this driver, other more mixed interrupts do need the shared solution; though I wonder if the shared solution shouldn't just figure itself out from the devicetree as it's easy to forget to turn it on when activating various controllers for some SoC that requires it). Thoughts?

With this solution, I am unsure as to whether when CONFIG_SHARED_INTERRUPTS is set if it should not do this change and just use the common infrastructure or always just use this new isr setup as it is more optimal (at least for this driver, other more mixed interrupts do need the shared solution; though I wonder if the shared solution shouldn't just figure itself out from the devicetree as it's easy to forget to turn it on when activating various controllers for some SoC that requires it). Thoughts?

I tend to agree. My only concern with current solution is the complexity and readability issue involved. But there are ways to enhance this.

@erwango @ycsin Sorry for the delay  I was able to test this fix using two different STM32 platforms (STM32F042K6 and STM32G473QE; custom boards), one with a single ADC for a simple check and the other using 3 ADCs (1, 2 which share an interrupt; 3 which uses a separate interrupt) with the ADC driver sample application and it all checked out.
I do agree with the discussion here regarding shared interrupts infrastructure and how this might fit in or not but as mentioned, I do think it's easy to miss enabling it, it would be hard to enable when the set of enabled devicetree devices requires it, and there is a code size penalty for it. I think it might be worth merging this in as it does fix the currently broken ADC_STM32_SHARED_IRQ, and maybe open a discussion on how to take the next step for the shared interrupt framework in enabling and figuring itself out more from the devicetree.

@erwango @ycsin Any thoughts on this PR?

@mrrosen Back from holidays, please give me some time.

I'll try to review this week. Sorry for the delay


Add Set to IOS7

This fixes the following error on IOS7: "ReferenceError: Can't find variable: Set". On IOS7, the service was servicing Map but not Set to IOS7.
Not sure if this was a bug or not, but on an application I'm using both Map and Set I started to get error reports like the above.
I also adjusted the Safari version just to match what it's being served based on the version number.
Data taken from http://kangax.github.io/compat-table/es6/#test-Set
I don't have any devices with IOS7 to test the commit, but it should work (Map is actually working).

Can we bump this PR to the next release if it's holding up 3.17?

@asilvas we're battling with a CI issue at the moment, so bear with us.


Update adviser link on on campus landing page

Trello card
https://trello.com/c/PwiBz9If
Context
Updating link on food for thought landing page to go to the new ETA page rather than the TTA funnel

Closing this PR - not the right change!


fix(region,host,host-deployer): sync status chekc block jobs

这个 PR 实现什么功能/修复什么问题:
fix(climc): host add netif add params bridge/interface
fix(host-deployer): add log line on blkid failed
fix(region,host): sync status check block jobs

是否需要 backport 到之前的 release 分支:
release/3.4
/area region host host-deployer
/cc @zexi @swordqiu

Codecov Report

Merging #9711 (5e2d346) into master (0db59b0) will increase coverage by 2.07%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #9711       +/-   ##
==========================================
+ Coverage    5.99%   8.06%    +2.07%
==========================================
  Files         848     107      -741
  Lines      131635   12977   -118658
==========================================
- Hits         7887    1047     -6840
+ Misses     123047   11810   -111237
+ Partials      701     120      -581

Flag
Coverage Δ

aFlag
8.06% <ø> (+2.07%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/monitor/models/alertnotification.go

pkg/compute/models/groups.go

pkg/mcclient/options/dnszone_recordsets.go

pkg/cloudprovider/snapshot_policy.go

pkg/compute/models/hostwires.go

pkg/multicloud/ucloud/region.go

pkg/baremetal/tasks/resetbmc.go

pkg/mcclient/options/k8s/base.go

pkg/cloudcommon/db/enabledstatusinfrasresource.go

pkg/compute/regiondrivers/azure.go

... and 727 more

Continue to review full report at Codecov.

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


[In_app_purchases] Need to upgrade to Billing Library 4

I need to upgrade the Billing Library to 4 or higher, but the latest update is not possible because the current flutter version of my project is 1.20.4. Is there any way to update Billing Library to 4+ without flutter version update?

In_app_purchases  Billing Library 4 has an open issue https://github.com/flutter/flutter/issues/107370 (see also https://github.com/flutter/flutter/issues/111261)
but 1.20.4 latest compatible In_app_purchases is 0.3.5
IMHO the choice is
either fork In_app_purchases pre-null-safety and manually port it to Billing Library 4
or start porting your app to flutter 3.3.X and wait for the issue to be addressed

The in_app_purchase plugin is already using play billing library 5.0.  #107370 seems to requesting that some fields be used rather than update to play billing 4.
https://pub.dev/packages/in_app_purchase_android/changelog#023
https://github.com/flutter/plugins/blob/main/packages/in_app_purchase/in_app_purchase_android/android/build.gradle#L56
@gayoung0316 as pointed out above, you either need to update your flutter version and your product to the latest version of flutter so you can use the new library or create a fork of the library and do that yourself.
In light of the above, I'll be closing this as this is not a flutter issue.
Thank you.


Add controller mode selection

Adds the ability to choose between "Human", "Training" and "Onnx Inference" modes on the sync.gd node from the inspector.
https://github.com/edbeeching/godot_rl_agents_plugin/assets/61947090/03602f39-3fa5-4ca8-85df-ae8cc9dabff1
Previously, the "human" heuristic behavior was activated only after waiting for a server connection.
With this PR, you can start the game directly in any selected mode without having to wait for the timeout. Switching between inference and any of the other two modes is also easier since you don't have to remove and re-add the path.
The default mode is set to "training" as before, and if the server connection attempt times out, the game will still start with human controls as before, however there will be a warning message displayed:

LGTM, thanks. You can merge assuming you have access?

Thanks for the review. I will merge now, it was just pending a review first.


Experimental: SmartWeave.KV

So I'm writing some e2e tests: using ar local setup.
And I think that i found edge case, maybe it is explainable:
nodejs: 19
warp-contracts: 1.2.37-beta.6
This issue is not blocking my work
boilerplate:
async function deployContract() {
    const bundledContractSrc = await build({
        entryPoints: [CONTRACT_PATH],
        bundle: true,
        write: false,
        outfile: 'bundled.js'
    });

    const { jwk: signer, address: signerAddress } = await warp.generateWallet();

    const { contractTxId } = await warp.deploy({
        wallet: signer,
        initState: JSON.stringify({
            "dens-profile:oracleConfiguration": {
                threshold: 1,
                trustedOracles: [signerAddress]
            }
        }),
        src: bundledContractSrc.outputFiles[0].text,
        evaluationManifest: {
            evaluationOptions: {
                useKVStorage: true
            }
        }
    });

    const contract = warp.contract(contractTxId)
        .setEvaluationOptions({ useKVStorage: true })
        .connect(signer);

    async function readKV(namespace, key) {
        // evaluate state
        await contract.readState();
        const item = await contract.getStorageValue(namespace + ":" + key);
        if (item) {
            return JSON.parse(item);
        }
        return null;
    }

    assert.ok(
        await warp.arweave.transactions.get(contractTxId)
    )

    return { contract, signer, signerAddress, readKV };
}

test:
            it('should select two new owners', async () => {
                const { dens, signerAddress, readKV } = await deployContract();

                await dens.writeInteraction({
                    function: 'newProfiles', profiles: [
                        { owner: signerAddress, profileId: "0x01" },
                        { owner: signerAddress, profileId: "0x02" }
                    ]
                });

                const ownership1 = await readKV('dens-profile', 'owner:0x01');
                assert.equal(
                    ownership1.owner,
                    signerAddress
                )

                const ownership2 = await readKV('dens-profile', 'owner:0x01'); <---- FAILS HERE WITH: LEVEL_DATABASE_NOT_OPEN

                assert.equal(
                    ownership2.owner,
                    signerAddress
                )
            });

Okey it is hazard, it sometimes works, sometimes not :( Maybe we are missing some await in code?

To myself: Switch to lmdb storage (https://github.com/ethereumjs/ethereumjs-monorepo/blob/master/packages/trie/recipes/lmdb.ts).

stacktrace:
 error: 'Database is not open'
                  code: 'LEVEL_DATABASE_NOT_OPEN'
                  stack: |-
                    maybeOpened (/Users/michalkonopka/code/github.com/lens-app/node_modules/abstract-level/abstract-level.js:133:18)
                    /Users/michalkonopka/code/github.com/lens-app/node_modules/abstract-level/abstract-level.js:160:13
                    process.processTicksAndRejections (node:internal/process/task_queues:77:11)

the 1.2.37-beta.7 has the lmdb as the db implementation.
In the meantime - https://github.com/Level/level/issues/229

fixed

https://discord.com/channels/786251205008949258/1029733643658199140/1057678025031962695


chore: move v10 builtin-actors to fil-actor-states crate

Issue summary

The new network upgrade comes with new builtin-actors. We need trimmed-down versions of the actions to be copied to fil-actor-states. This generally means deleting all of the smart-contract code (we're only interested in the state manipulation methods) and deleting most (all?) of the tests.

[x] fil_actors_runtime-10.0.0
[ ] fil_actor_account_v10
[ ] fil_actor_cron_v10
[ ] fil_actor_init_v10
[ ] fil_actor_market_v10
[ ] fil_actor_miner_v10
[ ] fil_actor_multisig_v10
[ ] fil_actor_paych_v10
[ ] fil_actor_power_v10
[ ] fil_actor_reward_v10
[ ] fil_actor_system_v10
[x] fil_actor_verifreg_v10

Other information and links

https://github.com/ChainSafe/fil-actor-states/pull/4

https://github.com/ChainSafe/fil-actor-states/pull/5

https://github.com/ChainSafe/fil-actor-states/pull/6

https://github.com/ChainSafe/fil-actor-states/pull/7

https://github.com/ChainSafe/fil-actor-states/pull/9

https://github.com/ChainSafe/fil-actor-states/pull/10

https://github.com/ChainSafe/fil-actor-states/pull/8

https://github.com/ChainSafe/fil-actor-states/pull/13

https://github.com/ChainSafe/fil-actor-states/pull/12

https://github.com/ChainSafe/fil-actor-states/pull/11

Done.


add installation instructions

Hi, I'm trying to setup a Parallels NixOS virtual machine (on M1 chip) and came across your work here - sadly I can't seem to figure out how to set it up. Do I need to create a virtual machine first, do I have to install any prerequisites, etc.? I would much appreciate any guidance, thanks :)

All you have to do is grab an ISO here, create a VM that boots from it, then follow the official installation guide.
Once you have a working NixOS installation, you might be interested in installing Parallels Tools (which is still more or less broken on NixOS). In this case, you will need to adopt the nix files here.


threejs control and GUI incompatibility issues

Description:
After using GUI, the controls will automatically rotate!

fixed. the bug happens in copperMScene


Typescript + Examples + Typedoc + Eslint

Launch Checklist
This is the main migration from javascript to typescript.
It also adds some automation to the docs creation using the examples and typedoc for the API.
Removed minified file.
Added dependabot.

[x] Confirm your changes do not include backports from Mapbox projects (unless with compliant license) - if you are not sure about this, please ask!
[x] Briefly describe the changes in this PR.

CC: @acalcutt feel free to review.

CC: @birkskyum FYI.


[Nuxt] Unexpected token (Webpack?)

I tried searching this error and couldn't find anything or any solution. Tried multiple versions as well, but failed.
Somehow only happens locally and in production everything's fine.
"nuxt": "2.15.8"
"node": "14.21.2"
Module parse failed: Unexpected token (59:9)                                                                                friendly-errors 17:17:21
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
|     return getFeed(parseDOM(feed, options));
| }
> export * as DomUtils from "domutils";
| // Old name for DomHandler
| export { DomHandler as DefaultHandler };
                                                                                friendly-errors 17:17:21
 @ ./node_modules/sanitize-html/index.js 1:19-41
 @ ./node_modules/v-sanitize/dist/sanitize.js

@erwinweber96 do you have the reproduction?

Tried with docker as well, but same thing happens. Used the same node version as in production.
FROM node:14.18.0-alpine

WORKDIR /app

RUN apk update && apk upgrade
RUN apk add git

COPY ./package*.json /app/

RUN npm install && npm cache clean --force

COPY . .

EXPOSE 3000
ENV NUXT_HOST=<IP_ADDRESS>
ENV NUXT_PORT=3000

ENV PATH ./node_modules/.bin/:$PATH

I'm running npm run dev (node ./node_modules/nuxt/bin/nuxt.js).
On production I'm running v-sanitize 0.0.6, but same error occurs with that version locally as well. No changes with 0.0.11.
All these fail with the same error as described in the initial post.
"scripts": {
    "dev": "node ./node_modules/nuxt/bin/nuxt.js --port=3000",
    "build": "node --max-old-space-size=900 node_modules/nuxt/bin/nuxt.js build",
    "start": "nuxt start",
    "generate": "nuxt generate"
  },

@erwinweber96 thank for giving back the reproduction, so which version is work that easy for me to pint that version only.

I had the same problem with my "nuxt": "2.15.8" project running on "node": "16.13.1"
I solved it like this:
In my nuxt-config.js file:
build: {
  transpile: [
    'sanitize-html/node_modules/htmlparser2/lib/esm'
  ],
}

Thank, let me check.

It's still failing in Nuxt 2.15.8 with Node 16.17.0:
 ERROR  in ./node_modules/htmlparser2/lib/esm/index.js                                                                                friendly-errors 11:26:46

Module parse failed: Unexpected token (48:9)                                                                                friendly-errors 11:26:46
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
|  * They should probably be removed eventually.
|  */
> export * as ElementType from "domelementtype";
| import { getFeed } from "domutils";
| export { getFeed } from "domutils";
                                                                                friendly-errors 11:26:46
 @ ./node_modules/sanitize-html/index.js 1:19-41
 @ ./node_modules/v-sanitize/dist/sanitize.js
 @ ./.nuxt/v-sanitize.js
 @ ./.nuxt/index.js
 @ ./.nuxt/client.js
 @ multi ./node_modules/eventsource-polyfill/dist/browserify-eventsource.js (webpack)-hot-middleware/client.js?reload=true&timeout=30000&ansiColors=&overlayStyles=&path=%2F__webpack_hmr%2Fclient&name=client ./.nuxt/client.js

In my yarn.lock:
<EMAIL_ADDRESS>  version "0.0.11"
  resolved "https://registry.yarnpkg.com/v-sanitize/-/v-sanitize-0.0.11.tgz#e5b598f0265c4251cf162c9da39fac45c70986f8"
  integrity sha512-8jB3BbljVQVFHVp08ahhUkPDcfwztExO6onx7RPMHi/186UQFbsec8TyfBEO6cInLMqaJ2jeOscR41sIal4zFg==
  dependencies:
    lodash.mergewith "^4.6.2"
    sanitize-html "~2.10.0"

I tried @dvariaz solution but it doesn't work. Nothing changes.

Fixed in this release: https://github.com/chantouchsek/v-sanitize/releases/tag/v0.0.12


Upgrade to Terraform 0.12 [GH-11]

@goruha @aknysh Could we get this merged to fix the build issues with this module being used by many of your other modules?

Samesies.  We've resorted to cloning and patching 😢


TrueType to CFF?

Hi! Maybe a newbie question here, but I did lots of searching with no results:
Is there anything that can be used to convert TTF outlines to CFF?
Something along the lines of #802, but it would be in reverse, converting the quadratic bézier curves to cubic.
I'm not sure if there are any complications associated with converting fonts in this manner. I know FontForge has the option to generate fonts in "OpenType (CFF)" format, but I was hoping for something slightly more script-based.
I'm still relatively new (and learning!) about the technical details of fonts 😁

Hi @alfredxing, sorry the late reply!
Almost all the pieces are here to make a ttf2otf.py script that complements the other otf2ttf.py.
One thing which is missing is a method to convert quadratics back to cubics. There's this PR on the cu2qu repository, but I haven't found the time to finish it: https://github.com/googlei18n/cu2qu/pull/29
However, I do have a few ideas on how to complete that.
I'll keep you posted!

@anthrotype I did some digging earlier in the week, I'm not sure if I understand how pens work but does t2CharStringPen do the cubic conversion?
Anyhow, thanks for looking into this!

does t2CharStringPen do the cubic conversion?

@alfredxing well, sort of. It inherits from BasePen so it has a basic implementation which simply decomposes the TrueType quadratic B-Splines (i.e. with multiple off-curves and implicit interpolated on-curves in between them) into a series of simple quadratic Bezier curves (with only one off-curve), and these are then elevated to cubic Beziers.
See qCurveTo and _qCurveToOne methods in
https://github.com/fonttools/fonttools/blob/master/Lib/fontTools/pens/basePen.py
This may be ok for drawing paths, but not very efficient for building charstrings in a CFF table, as you end up with much more points than you'd need.
The above mentioned Qu2Cu pen in https://github.com/googlei18n/cu2qu/pull/29 attempts to convert a single quadratic B-Spline to a single cubic Bezier. This works for undoing the work done by cu2qu, but I'm working on adding support for a tolerance level to being able to convert arbitrary input.

Was there any resolution here? I'm also looking to convert TTF to OTF. Currently using FontForge to do this but I trust FontTools more.


Better automation for release notes

Following https://github.com/cookpad/terraform-aws-eks/issues/149...
Could include better functionality for the release automation. Specifically - would be nice to have some automation to generate accurate and informative release notes.
A couple of github actions giving an idea of some automation processes...
https://github.com/Decathlon/release-notes-generator-action - generates release notes from milestones
https://github.com/lob/generate-changelog/ - intended to be used with the release action we use, writes changelog content into release body. We'd need to update our commit messages to the required format for the action

Yeah this would be great... typically I just copy pasted the PR's that ended up in the release. It's a bit of a pain.
Also you might want to think about some automation for applying a change + release notes to all the supported release branches (in the case of a major bug / security issue)

📝 This just in: https://github.blog/2021-10-04-beta-github-releases-improving-release-experience/

I've tested GitHub Releases' automatic release note generations  https://github.com/takanabe/github-releases-test/releases
This might be a good start because

We can reduce the amount of copy pastes to link all PRs for each release

A tip I can share is that the automatic release note generations uses PR title as notes. So, PR title is very important to reduce our future editing efforts. For example, we sometimes mention that releases include breaking changes. In that case, those should explicitly mention in PRs.

I also tested custom release note template.

The template enables us to categorize PRs based on PR labels. So, if we correctly put labels for each PR, we can reduce tons of copy/paste and editing efforts for release notes 📝
I didn't test how multiple labels affect to the release note and will test it out.

Only one category is applied if multiple labels in the categories are  matches

Of course, labels changed before generating release notes are affected. The following example changed the enhancement label to the breaking-change label on https://github.com/takanabe/github-releases-test/pull/9

The order of "What's Changed" section can be arranged with categories array https://github.com/takanabe/github-releases-test/commit/fc6924abe8a6cfae7a61abdfe1e5d6d55ec2fddf

TL;DR

We can reduce copy/paste and editing efforts with the native release note generation feature.
If we want to automate release note generations using GitHub native feature, we can use labels to categorize PRs.
Release managers need to check if PRs have correct labels on them before generating release notes.

IMO, it's useful and worth trying.

Expected change

Update the release process described in RELEASE.md
Replace UPGRADE.md with newly created release notes.


Move constant functions to TokenNetworkUtils library

Issue: TokenNetworkRegistry bytecode is too big for deployment if we try to implement https://github.com/raiden-network/raiden-contracts/issues/262 and https://github.com/raiden-network/raiden-contracts/issues/263
We might go with either:

remove code that is unimplemented in Raiden: https://github.com/raiden-network/raiden-contracts/pull/270 (remove cooperativeSettle & setTotalWithdraw)
move some part of the code in a library (what this PR does)

Please do not merge this until I have the contract limits PR functional on top of this one.

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

Somehow we have both #262 and #263 and the codesize is still within the limit.  Perhaps the compiler got a lot better these days.


Not sure how to use gnupgHome?

{
sops.gnupgHome = "/home/cole/.gnupg";
}

But it fails to decrypt during activate. I can can confirm that running sops -d is using PGP and decrypting successfully: Is there something I have to do to make my user's gnupghome available to it during activation?
sops --input-type binary --output-type binary --verbose --output ../unencrypted/wg-server.key -d wg-server.key
[PGP]	 INFO[0000] Decryption succeeded                          fingerprint=...

I don't know if gpg likes it if GNUPGHOME is not owned by the same user that executes sops. GPG can be really picky here.

Have you tried making root the user instead?

I decided to not invest more time in trying to make gpg work, especially if it means not just re-using my existing GNUPGHOME. I assume you were right, I'm going to go ahead and close.


Make Overview less prescriptive

This "must" came across as opinionated on what the reader should do, rather than what composition can empower them to do.

This change is smaller than the diff suggests but prettier doesn’t seem to support something like https://sembr.org/ for prose wrapping.

Pushed changes that can be squashed

@benjie At the moment the PR says “2 workflows awaiting approval”, is there something else I need to do?

@michaelstaib Thoughts?

The change is wrong in my mind. The intend is that you can change the general service structure but this must not break the contract with the client.


WSDL parsing error

Hello, this WSDL generates code with wsimport of Java 8 JDK, but not with this plugin. Reported problem is this:
We were unable to ensure the correctness of the schema: JAXP09020006: The argument 'systemId' can not be null.
(attached wsdl file renamed to txt to be accepted by github)
WsBarrelsEvidence.txt

I have the same issue.


Make It Easier To Copy File Collections

As far as I can tell, there is no easy way to copy a collection of files to another place with a different head. For example, in the code below, I had to copy the source code in collection to get formatted_index, srcItem, and dstItem.
import os
import shutil
import clique

srcDir = '/src/dir'
dstDir = '/dst/dir'
srcFiles = os.listdir(srcDir)
collections = clique.assemble(srcFiles)[0]
srcCollection = collections[0]
for i in srcCollection.indexes:
    dstHead = 'rename.'
    formatted_index = '{0:0{1}d}'.format(i, srcCollection.padding)
    srcItem = '{0}{1}{2}'.format(srcCollection.head, formatted_index, srcCollection.tail)
    dstItem = '{0}{1}{2}'.format(dstHead, formatted_index, srcCollection.tail)
    src = os.path.join(srcDir, srcItem)
    dst = os.path.join(dstDir, dstItem)
    shutil.copy2(src, dst)

Be aware that you can copy and manipulate collections which might be simpler:
import copy

import clique

collections, _ = clique.assemble(['/path/to/frames.{:04d}.jpg'.format(index) for index in range(10)])
source_collection = collections[0]

target_collection = copy.copy(source_collection)
target_collection.head = source_collection.head.replace('frames.', 'rename.')

for source_path, target_path in zip(source_collection, target_collection):
    print 'Copy ', source_path, '->', target_path

# Copy  /path/to/frames.0000.jpg -> /path/to/rename.0000.jpg
# Copy  /path/to/frames.0001.jpg -> /path/to/rename.0001.jpg
# Copy  /path/to/frames.0002.jpg -> /path/to/rename.0002.jpg
# ...

Note that Clique is designed to be a fairly simple low level library that other tools can build on top of so I'm not sure whether bundling utilities for copying sequences would make sense. Perhaps a separate project could be started?

Your example was pretty much what I was looking for. It would still be nice to be able to get the formatted name of an arbitrary index though.

Cool.
I'll close this ticket, but feel free to start a new one for the formatting of arbitrary index though if you want.


Resteasy/Guice  Unable to find contextual data of type: javax.servlet.ServletConfig

I don't use the default implementation of resteasy servlet dispatcher. I use filter dispatcher, so i need change how the api's are read.
Here are how my filter dispatcher works:
https://gist.github.com/stickfigure/5ff4b814b8a08e4e1f57
Here the code:
@Path("/swagger.{type:json}")
public class SwaggerResource  extends BaseApiListingResource {

    @Context
    ServletContext context;

    @GET
    @Produces({MediaType.APPLICATION_JSON})
    @ApiOperation(value = "The swagger definition in either JSON", hidden = true)
    public Response getListing(
            @Context Application app,
            @Context ServletConfig sc,
            @Context FilterConfig fc,
            @Context HttpHeaders headers,
            @Context UriInfo uriInfo,
            @PathParam("type") String type) {
        return getListingJsonResponse(app, context, mergeConfig(sc, fc), headers, uriInfo);
    }

    private ServletConfig mergeConfig(ServletConfig sc, FilterConfig fc) {
        try {
            sc.getInitParameter("test");
        } catch (Exception e) {
            return new ServletConfigWrapper(fc);
        }
        return sc;
    }

    private static class ServletConfigWrapper implements ServletConfig {

        private FilterConfig fc;

        public ServletConfigWrapper(FilterConfig fc) {
            this.fc = fc;
        }

        @Override
        public String getServletName() {
            return fc.getFilterName();
        }

        @Override
        public ServletContext getServletContext() {
            return fc.getServletContext();
        }

        @Override
        public String getInitParameter(String name) {
            return fc.getInitParameter(name);
        }

        @Override
        public Enumeration<String> getInitParameterNames() {
            return fc.getInitParameterNames();
        }
    }

}

What is your question or issue?

Is a issue to fix when I use filter to control my services. The workaround is this code added here. But I believe the better solution is change how the SwaggerContextService class works.

I am still not sure I am fully getting your scenario, e.g. in which container/env you are running the sample code, and what is the issue you're getting using BaseOpenApiResource.
Also as mentioned, PRs are welcome

I had a similar problem with our project.
We are using Jersey JAX-RS configuration and using pure filter based configuration. When using pure filter based configuration there is no ServletConfig but instead of FilterConfig that can be injected.
Swagger has a class: ApiListingResource that is used as the listing client.
public class ApiListingResource extends BaseApiListingResource {

    @Context
    ServletContext context;

    @GET
    @Produces({MediaType.APPLICATION_JSON, "application/yaml"})
    @ApiOperation(value = "The swagger definition in either JSON or YAML", hidden = true)
    public Response getListing(
            @Context Application app,
            @Context ServletConfig sc, // this is not found!!
            @Context HttpHeaders headers,
            @Context UriInfo uriInfo,
            @PathParam("type") String type) {
        if (StringUtils.isNotBlank(type) && type.trim().equalsIgnoreCase("yaml")) {
            return getListingYamlResponse(app, context, sc, headers, uriInfo);
        } else {
            return getListingJsonResponse(app, context, sc, headers, uriInfo);
        }
    }
...

now with pure filter configuration the injection of the ServletConfig will fail because there is no such thing.
So what would need to happen is that swagger should provide a proper ResourceListing file that would contain FilterConfig as an alternative for the ServletConfig parameter.
So we ended up creating a own FilterApiListingResource that would work something like this:
@javax.ws.rs.Path("/swagger.{type:json|yaml}")
public class FilterApiListingResource extends BaseApiListingResource {

    @GET
    @Produces({"application/json", "application/yaml"})
    @ApiOperation(
        value = "The swagger definition in either JSON or YAML",
        hidden = true
    )
    public Response getListing(@Context Application app, @Context FilterConfig fc, @Context HttpHeaders headers, @Context UriInfo uriInfo, @PathParam("type") String type) {
        return StringUtils.isNotBlank(type) && type.trim().equalsIgnoreCase("yaml") ? this.getListingYamlResponse(app, fc.getServletContext(), null, headers, uriInfo) : this.getListingJsonResponse(app, fc.getServletContext(), null, headers, uriInfo);
    }
}

in this way have the FilterConfig. ServletContext will be null because one does not exist.

what we are not sure is what information is missing when the ServletContext is null in  BaseApiListingResource.

Same thing for Tapestry5 that runs as a filter. As an answer to @frantuma, it'll basically happen in any environment where ServletConfig isn't available (but injects a proxy for the ServletConfig to ApiListingResource). Figured I'll do the same as @niom and create my own subclass instead.


Add ReadOnlyRoutingList param to Set-DbaAgReplica

Type of Change

[ ] Bug fix (non-breaking change, fixes # )
[x] New feature (non-breaking change, adds functionality, fixes # )
[ ] Breaking change (effects multiple commands or functionality, fixes # )
[ ] Ran manual Pester test and has passed (.\tests\manual.pester.ps1)
[ ] Adding code coverage to existing functionality
[ ] Pester test is included
[ ] If new file reference added for test, has is been added to github.com/sqlcollaborative/appveyor-lab ?
[ ] Unit test is included
[ ] Documentation
[ ] Build system

Purpose
Add the ability to set a read-only routing list for an AG replica.
Approach

Adds a -ReadOnlyRoutingList parameter to Set-DbaAgReplica.
Commands to test

Set-DbaAgReplica

Resolves #7732.

I'm happy to write tests, but don't know what the the test AG topology looks like and which I'd need to set a read-only routing list.

Looks good to me.
Two points:

We have a parameter ReadonlyRoutingConnectionUrl where the only has a small "o", you call the parameter "ReadOnlyRoutingList". Maybe change that to "ReadonlyRoutingList"? UPDATE: The casing is like the SMO property - so we should leave it like this.
What's the output like if you supply a wrong format? Maybe have a try-catch around the "$ReadOnlyRoutingList | foreach { $rorl.Add([List[string]] $_); }" with a nice message in Stop-Function?

About tests: We don't have a nive AG in the Test environment - so can you just show it locally and provide screenshots?

What about the related command Add-DbaAgReplica? We should add that parameter there too, don't we? And then we could / should add it to New-DbaAvailabilityGroup as well.
Or we decide that this is rarely used and thus only in the Set- command (and maybe in the Add- command).
@potatoqualitee - What do you think?

yes, we can add it to those as well, @andreasjordan. i'm not sure about our AG setup. I recall it being very minimal. As such, agreed that screenshots would suffice.

What's the output like if you supply a wrong format? Maybe have a try-catch around the "$ReadOnlyRoutingList | foreach { $rorl.Add([List[string]] $_); }" with a nice message in Stop-Function?

In the case where you supply a replica that isn't part of the AG, the AG itself gives this:

WARNING: [05:20:44][Set-DbaAgReplica] Failure | The availability replica 'foo' specified in the READ_ONLY_ROUTING_LIST for availability replica '«actual replica name»' does not exist. Only availability replicas that belong to the specified
availability group '«actual AG name»' can be added to this list. To get the names of availability replicas in a given availability group, select replica_server_name from sys.availability_replicas and name from sys.availability_groups. For
more information, see SQL Server Books Online.

I can try to throw something exotic at it to try to break it before it gets to the AG. Though what is there should handle anything I can think of that resembles a list of strings.

What about the related command Add-DbaAgReplica? We should add that parameter there too, don't we? And then we could / should add it to New-DbaAvailabilityGroup as well.

Should be a copy/paste job to add to Add-DbaAgReplica. Will have a look at New-DbaAvailabilityGroup but I have a similar expectation.

working on this and testing

boom, merged! Thanks so much for this feature 👍🏼


Rule documentation compliance

As discussed in #621 the detekt-generator should verify if the rules documentation complies to the specification. If it doesn't the build should fail.

Until all rules have valid documentation we can't throw in all cases, though. Otherwise we will break the build until we have written all documentation.


[Candidate 4v4 Desert Vortex ZH v7] Outer ring Oil Derricks have unsymmetrical rotations

Observed behavior
Outer ring Oil Derricks have unsymmetrical rotations. Affects several of the 8 Oil Derricks.
Expected behavior
Outer ring Oil Derricks have symmetrical rotations as they form the circle.
Screenshots

Is still wrong. No system.


meta: flatten meta types

The meta identifier type system has been a source of great joy and also much tears.  They very nicely encapsulate the identifier of a database object (which can be in some cases four or five separate values) in a single value.  This encapsulation makes life easier in many, many scenarios.  Overall the concept of meta identifiers is a huge win.  HOWEVER.  The implementation has a number of problems:
1. They are highly composite
schema_id has just a name value.
relation_id has a relation name value and a schema_id.
column_id has a column name value and a relation_id.
row_id has a primary key column_id, and a primary key value pk_value.
field_id has a row_id and a column_id
The nesting here is hopefully obvious.
While correct in terms of information architecture, five-level-deep composite types are patently ridiculous to work with.
Creating one (without using the handy constructors) looks like:
row(row(row(value->'relation_id'->'schema_id'->>'name'), value->'relation_id'->>'name'), row(value->'role_id'->>'name'), value->>'type')::meta.table_privilege_id

Accessing some variable (without using a handy cast function) looks like:
schema_name := (((column_id).relation_id).schema_id).name

2. Their internal representation is awful
aquameta=# select meta.field_id('bundle','bundle','id','1b5bf8c5-c93c-48f5-81a8-bd39277ecde6','name');
                                                               field_id
--------------------------------------------------------------------------------------------------------------------------------------
 ("(""(""""(""""""""(bundle)"""""""",bundle)"""",id)"",1b5bf8c5-c93c-48f5-81a8-bd39277ecde6)","(""(""""(bundle)"""",bundle)"",name)")
(1 row)

Unfortunately we cannot override this behavior, because in postgres, composite types do not have input or output functions, but all share a single global (and dumb) function.
3. They cause havoc in datum.js
So, when endpoint's REST API selects rows, it checks to see if that row's type is JSON or a composite type, and if it is, sends the row over the wire as a JSON object. When pushing the object back to the database, ... really not sure what happens, but I doubt it works.  Basically the REST API has never worked properly with composite types, which has been a massive bottleneck in terms of UI design of the schema admin, bundle admin, user admin, and more.  They don't work, and the obtuseness of their structure makes designing a sane REST API to handle them...formidable.
We need to redesign them entirely, to be flat, non-composite types.
Functionality to retain
These patterns of usage should continue to work:
1. Constructors
select meta.field_id('a','b','c','d');

2. Casts from one type to another
select field_id::meta.schema_id;

3. Casts to/from JSON
select meta.field_id::json

Improvements
1. Easily accessible (flat) value namespace
select field_id.schema_name;

2. Casts to/from text
We already have casts to text for some types, however not full coverage.  Text representation should be  readable, unique and unambiguous.  We need to make use of quote_ident and quote_literal in our casting, and test against identifiers that contain quotes, slashes, etc.
aquameta=# select meta.field_id('bundle','bundle','id','1b5bf8c5-c93c-48f5-81a8-bd39277ecde6','name')::text;
                        field_id
---------------------------------------------------------
 bundle/bundle/1b5bf8c5-c93c-48f5-81a8-bd39277ecde6/name
(1 row)

Desired Outcomes

Support for CRUD on meta.* from datum.js
Version control on meta.* from bundle

These are the two biggest objectives still ahead, and this is the source of all the problems.
Implementation Ramifications
This is a central pillar in the architecture, a high-flying buttress.  Pulling it out will be highly impactful throughout the system.  Test coverage will preserve functionality in bundle and meta, presuming tests don't rely too heavily on internals and instead use constructors and casts.  Need a endpoint test suite.
Implementation Approach
The constructors for the types should be a pretty good indicator of how the flattened types should be structured.  Do that.
We need to figure out what bundle is going to store in blob.value for, say, a meta.column_id, be it the text representation or ... whatever postgresql outputs for non-composite types...?  Since these types won't be composite anymore, we have hope of writing input/output functions that do the right thing without the incessant explicit casting.

After flatting the types, I have to import and rexport all the bundles since their internals now will use flat meta-identifiers.  This is what progress looks l ike:

Quick summary of the refactor so far:

Resurrect the meta-meta-coverage.sql tests, which is meant to inspect the database and check to see that for each "meta-entity" (schema, table, column, field, row, role, policy, foreign data wrapper, etc.) there exists all the appropriate meta-identifier types, views, insert update and delete triggers, casts to/from json, casts to/from less-specific types, etc.  It's a big list.  The coverage map revealed that we are not even close to having full coverage.  I made a brief video about it.
Rather than try to refactor all this code, I made a code generator that has a table for "meta-entities" and "entity-components", and for each component, a statement generator.  That way, if something needs to be changed or added, I can change it upstream and regenerate, instead of changing it in 20 different places.  It works really well.  The output is here, some ~240 statements, and growing.
Refactor the meta views to use the new identifiers.  This was a big job and probably still isn't perfect, but tests are all passing.  Tests had to be refactored as well.
Refactor bundle to use the new identifiers.
Refactor endpoint to use the new identifiers.  In doing so, found a ton of ancient cruft in the endpoint code and re-organized it a bit.  I removed everything except the data model and request handlers, and then ran it and saw what was broken, and then added whatever was missing back in.  There was a lot of unused code that hasn't caused any problems by being removed (yet).  Plus, all the non-request-handler stuff is isolated and most of it probably needs to be audited and removed.
I used the code refactor feature of JetBrains IDEA to rename the new flat meta and bundle to meta2 and bundle2, so that they can co-exist with an old v0.3 version of Aquameta, aka run in parallel.  Then, copied all the core bundles from bundle to bundle2, then exported them from bundle2 into CSVs in the new format.  This all worked surprisingly well.
Renamed bundle2 and meta2 back to meta and bundle, and fired up the server.  Found six or seven bugs or missing things, fixed them, and the IDE mostly comes up.
The IDE falls down because the widgets haven't been refactored.  The base ones still work, but when it starts getting into the more complicated stuff that leans on meta and the meta-identifiers, it still contain a lot of old-style non-flat identifiers.  So, the IDE is bricked.  There's no good way to edit widgets without the IDE, so we have neither chicken nor egg.  Much tears.
Decided to try to resurrect pgfs.py, but it was written in Python 2, and the Python3/fuse ecosystem seems to be in total disarray.  Pip couldn't install fuse, nothing seemed to be working.  More tears.
Decided to explore resurrecting pgfs in Go.  Work is ongoing.  I could just figure out how to unbrick the damn widgets, it's probably not that hard, but this situation is exactly why something like pgfs is so necessary.  So pull over and build it.  Won't be too hard.  The bots will help.

Overall, a very challenging but successful refactor.  The end is in sight, just fix the widgets, and just build the tool necessary to do so.  Mickey says yak shaving, ha.  This issue was the last piece of low-level architecture that I know of that was absolutely wrong and touched every aspect of the system.  Much lessons learned, it was a "correct" decision at the time, but has plagued the architecture from the beginning.  Much thanks but goodbye.

Meta identifiers have been unnested and are now flat, aka no meta types contain any other meta types.  In the refactor, the entire process of how identifiers are created and maintained has changed:
Meta identifiers are now automatically generated progratically, instead of maintaining a massive static SQL file.  For each of the 26 meta-identifiers, the script creates 17 statements that flesh out the identifier such as type, constructor function, casts to and from json and jsonb, etc.  As additional meta-identifiers are added to the system, the entire file can be easily regenerated using the generator system.

To convert a bundle from nested-types format to flat-types format, here's some regexes:
rowset_row.csv:
:%s/("(""(""""//g
:%s/)"""",/,/g
:%s/)"",/,/g
:%s/)",/,g

rowset_row_field.csv
:%s/("(""(""""(""""""""//g
:%s/""""(.*)"""",.*)"",/,/g
:%s/)"""""""",/,/g
:%s/)"""",/,/g
:%s/)"",/,/g
:%s/)","(""(,/,/g
:%s/)")/)/g
```


pdf generation doesn't handle complicated headings properly

Describe the bug
Transform to pdf does not handle heading with complex content properly, losing some of the content and internal markup.
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
Try to transform the following markdown to pdf:
This is a
*complicated*
heading
==============

Here is some text

Using Markus:
bash-3.2$ markus transform --from markdown --to pdf --output test.pdf --input test.md
10:37:32 AM - info: Creating file: test.pdf
10:37:32 AM - info:
<binary pdf data>

This results in the following pdf:
test.pdf
The result should be consistent with the rendered markdown:

Fixed in #337
Fix handles table of content. For instance on the new test/data/contract.md
Containing a heading 2:
Title2
*(Heading Two)*
**on several lines**
----

Properly generates a TOC:


fix pre-commit hooks

something is wrong when trying to install black for the pre-commit hook.
seems to be targeting python 3.8 for some reason.

fixed - it was targeting python 3.8...


Active class

Hi,
I'm using the helper in my navigation - all ok, and when rendering my nav component (assuming a class of nav-bar see below) I can give the target value an active class.
What I'm not sure about is how to give an item in the menu the active class when the link to that page has been clicked elsewhere within the app - for example from within the content, or in the footer etc.
Do you have any ideas on this?
Many thanks!
nav-bar-component.js
didInsertElement() {
  this._super(...arguments);
  this.$('.nav-bar a').on('click',function(){
     $('.nav-bar a').removeClass('active');
     $(this).parents('li').children('a').addClass('active');
  });
}

This is where you should use the default {{link-to}}` component, as I see it.

Many thanks for getting back.
The problem with that is how to render a {{link-to}} component in content that's coming from (eg) the admin where a site owner would want to link to other pages in the site ... I also problems with my nav-bar component giving the parent elements the active class - but that's more down to my poor jquery no doubt!

For the active parent class, check out https://github.com/alexspeller/ember-cli-active-link-wrapper

Many thanks for this pointer - much appreciated!


Xcode project added

In order to do not modify original Make file, an Xcode project has been created adding linker flag -std=c++14.

Hi, thanks for your contribution.
I think *.xcuserstate should be excluded. If so please add it to .gitignore

Hi, thanks for your contribution.
I think *.xcuserstate should be excluded. If so please add it to .gitignore

done!


Instalation error

Describe the issue
When I run Arch.exe from explorer, no matter if I run it as Admin or not I get this in the window:
Installing...
ERROR:Installation Failed!
HRESULT:0xc03a001a
Press any key to continue...

To Reproduce
Steps to reproduce the behavior:
Run Arch.exe?
Expected behavior
I expect it to just install and that's it
Enviroment:

Windows build number: Microsoft Windows [Version 10.0.19041.572]
Security Software: Windows Defender
WSL version 1/2: WSL2
ArchWSL version <IP_ADDRESS>
ArchWSL Installer type zip clean
Launcher version wsldl, version 20100500

The cause may be that the folder is compressed or encrypted.
Please disable compression in the properties of Explorer.

Thanks! that turned out to be the issue. Do I only need to disable compression on the arch installer or any other folders?

Yes.
Disable compression the Arch folder.
Also, the folder must be granted full access.


Notebook 03 is breaking the documentation building process

Not sure what's happening with Notebook 03... seems to be breaking the documentation building process
Might have to manually turn it into a new notebook.
As in copy all of the contents of different cells to new cells.
Not ideal... but I'll try this tomorrow.
See the action breakage here: https://github.com/mrdbourke/pytorch-deep-learning/runs/5621310937?check_suite_focus=true

Still going.
Tried to do the following and the error still occurs:

Copy cells manually to a new notebook
Rename the notebook (e.g. 03_... -> 02_..., in case the name was cached somewhere with an error, still happens)
Remove 03 from the docs/ folder and still get the issue

Far out...
Finally fixed it.
Seems to be something with Google Colab busting things up...
I recoded the entire notebook via Jupyter Lab to ensure the state issue got fixed.


"--nofollow-imports" is not effective when use --standalone

python -m nuitka --version

1.1
Commercial: None
Python: 3.9.12 (main, Apr  5 2022, 01:53:17)
Flavor: Anaconda Python
Executable: /usr/local/anaconda3/bin/python3
OS: Darwin
Arch: x86_64
case :
import pandas as pd

def main():
    print('hello')
    res = pd.DataFrame()
    print(res)

if __name__ == '__main__':
    main()

1. too too slow, due to complie pandas, check all module on pass 1 ?  --nofollow-imports is not effective
python -m nuitka  --show-memory --show-progress --nofollow-imports  --standalone app.py

2. still check other module
python -m nuitka  --show-memory --show-progress --nofollow-imports  --nofollow-import-to=pandas --standalone app.py

3. fast due to without --standalone
python -m nuitka  --standalone --enable-plugin=numpy --nofollow-imports app.py

**if  we use old version like 0.6.15 --nofollow-imports will effective, even with --standalone **
Since my project depends on too many third-party modules, I don't actually want to compile them, just copy site-packages to depend on them.

I don't think that --nofollow-imports is ineffective, but it's warned about only, but I also do not care, because I do not intend to support this mode of operation. With changes coming, you will be able to use user yaml to specify bytecode compilation for modules, which then can be rerrived from cache. But the manual copying is entirely unsupported. If you can get it to work, all good, otherwise I guess 0.6.15 is still there for you.

--nofollow-imports really reduce the compilation process time .
because it do not compile these huge externel packages like numpy .
and we can include these packages like data-dir.


add test for non-zero exit codes

that includes

errors while fetching CSS from extract-css (404's, empty results etc.)
errors while analyzing the css

some test code from  a PR that didn't make it:
test(`it exits with a non-zero status on CSS with a syntax error`, async t => {
	const {code} = await t.throwsAsync(execa('./cli.js', ['a{color red}']))

	t.is(code, EXIT_CODES.CSS_SYNTAX_FAILURE)
})

btw, this failed, so exit code handling needs improving as well 😬


Fix #207 - Define subcommands for describing/running stack tasks

Usage
Describe all tasks for a cloud
$ convection describe-tasks
Stack vpc (acmecorp-test-0-vpc) includes the following tasks:
 0. associated private zones with VPC in acmecorp-test-0-vpc
 1. unassociated private zones with VPC in acmecorp-test-0-vpc
Stack sessioncache (acmecorp-test-0-sessioncache) includes the following tasks:
 0. Tasks::TagElastiCache

Describe tasks for a subset of stacks
$ convection describe-tasks --stacks vpc
Stack vpc (acmecorp-test-0-vpc) includes the following tasks:
 0. associated private zones with VPC in acmecorp-test-0-vpc
 1. unassociated private zones with VPC in acmecorp-test-0-vpc

No ability to run all tasks
$ convection run-tasks
No value provided for required options '--stack'

Running a task against a specific stack
$ convection run-tasks --stack vpc
Using the "platform-dev" environment configuration for all operations.
The following tasks are available to execute for the stack vpc (acmecorp-test-0-vpc):
 0. associated private zones with vpc-deadb33f
 1. unassociated private zones with vpc-deadb33f
Which stack task (by number) would you like to execute? [0, 1] 0
task_in_progress  Task associated private zones with vpc-deadb33f in progress for stack vpc.
Running associated private zones with vpc-deadb33f for cloud acmecorp-test-0 in region us-east-1
task_complete  Task associated private zones with vpc-deadb33f successfully completed for stack vpc.

Requirement of picking a valid task
$ convection run-tasks --stack vpc
Using the "platform-dev" environment configuration for all operations.
The following tasks are available to execute for the stack vpc (acmecorp-test-0-vpc):
 0. associated private zones with vpc-deadb33f
 1. unassociated private zones with vpc-deadb33f
Which stack task (by number) would you like to execute? [0, 1] 6
Your response must be one of: [0, 1]. Please try again.
Which stack task (by number) would you like to execute? [0, 1] 0
task_in_progress  Task associated private zones with vpc-deadb33f in progress for stack vpc.
Running associated private zones with vpc-deadb33f for cloud acmecorp-test-0 in region us-east-1
task_complete  Task associated private zones with vpc-deadb33f successfully completed for stack vpc.

LGTM


scitype(X) is slow for large tables

julia> using ScientificTypes, Tables

julia> Xsmall = Tables.table(rand(100, 10));

julia> Xbig = Tables.table(rand(10000, 10));j
julia> @time scitype(Xsmall);

julia> scitype(Xsmall);
julia> @time scitype(Xsmall)
  0.004922 seconds (48 allocations: 9.594 KiB)
Table{AbstractArray{Continuous,1}}

julia> @time scitype(Xbig)
  0.279894 seconds (58 allocations: 782.875 KiB)
Table{AbstractArray{Continuous,1}}

Reason for slow down
By definition, scitype(::AbstractArray) = AbstractArray{T} where T is the union of element scitypes. Computing the individual element scitypes and taking the union is o(N) where N is the number of elements.  In most cases the eltype of the array already determines what this union should be, but, under the mlj convention, the scitype of a CategoricalValue is not inferable from the machine type of the object, because the type does not say whether it is ordered or not (see https://github.com/JuliaData/CategoricalArrays.jl/issues/184 ).
Suggestion
We could, in the mlj convention, overload scitype(::<:AbstractArray{T}) to infer the scitype from T for those particular T we know actually do determine the union scitype (basically, everything that is not a subtype of CategoricalValue or CategoricalString). Not sure we can do much for these troublesome types, however.
More radical, but motivated by unresolved issue https://github.com/JuliaData/CategoricalArrays.jl/issues/199, is to abandon CategoricalArrays altogether and write our own categorical element package where order is a type parameter (and levels/pools are immutable).
Any other suggestions?

Could we not just provide a PR for that issue?

It should be easy to add an scitype(A::CategoricalArray, ::Val) method for efficiency, instead of calling reduce. (BTW, even for general AbstractArray{T}, you could imagine adding a fast path for when isconcrete(T) and the scientific type is determined by the type and doesn't depend on actual values.)
Even if ordered was a type parameter, wouldn't the scientific type depend on the number of levels anyway?

@nalimilan Yes, that's the way to go.

Even if ordered was a type parameter, wouldn't the scientific type depend on the number of levels anyway?

Yes. But in an "immutable" vs of CategoricalArrays I would make that a type parameter too :-)

Yes. But in an "immutable" vs of CategoricalArrays I would make that a type parameter too :-)

Yeah, but after very long discussions CategoricalArrays was designed not to hardcode the number of levels, as in most situations that's not a good idea for performance (e.g. need to recompile all functions for each number of levels). One should probably use an enum when levels are hardcoded like that.

Resolved by PR #23:
julia> Xsmall = Tables.table(rand(100, 10));

julia> Xbig = Tables.table(rand(10000, 10));

julia>

julia> @time scitype(Xsmall);
  0.000117 seconds (18 allocations: 9.125 KiB)

julia>

julia> scitype(Xsmall);

julia> @time scitype(Xsmall)
  0.000123 seconds (18 allocations: 9.125 KiB)
Table{AbstractArray{Continuous,1}}

julia> @time scitype(Xbig)
  0.000766 seconds (28 allocations: 782.406 KiB)
Table{AbstractArray{Continuous,1}}

Re #mlj slack discussion https://julialang.slack.com/archives/CC57ZE7EY/p1569005060012000 and this issue https://github.com/alan-turing-institute/MLJModels.jl/issues/63:
julia> @time X = MLJBase.table(randn(5_000, 50));
  0.002304 seconds (370 allocations: 1.929 MiB)

julia> @time m = machine(Standardizer(), X)
  0.001994 seconds (145 allocations: 1.913 MiB)
Machine{Standardizer} @ 7…74

julia> @time fit!(m)
[ Info: Training Machine{Standardizer} @ 7…74.
  0.005042 seconds (425 allocations: 3.845 MiB)
Machine{Standardizer} @ 7…74

julia> @time transform(m, X);
  0.089879 seconds (5.87 k allocations: 97.647 MiB, 20.16% gc time)

So more sensible.

Fantastic!


Error parsing SVG files without DOCTYPE ENTITY content

playing-cards.zip
flags.zip
Hi guys, I've attached another series of SVG images with rendering problems...
Thank you.
Carlo

@carloBarazzetta First of all, thank you so much again for reporting an issue! This makes the library even better.
Regarding the case, this is another limitation of Skia. It does not yet support inner <symbol> elements. We believe that in a short time these limitations will disappear, as Flutter also from Google uses the same module for rendering SVGs. In any case, it is an extremely fast and stable parser, despite the limitations. In fact, in a benchmark we did, it was faster than Image32, D2D and Cairo.
I apologize in advance for not documenting it sooner. We tested it with thousands of app icon svgs (using top SVG icon sets, like, Bootstrap Icons, Font Awesome Icons, Material Design Icons by Google, Octicons by Github) and all rendered perfectly.

Thanks @viniciusfbb, I also did some performance tests and SKIA is very fast, I can't wait to be able to use it with my components and with most of the SVG files available!

Sorry for my error regarding SVG's contained into flags.zip: those files works perfectly with SKIA4Delphi, I've made an error implementing support for SVGIconImageList, now fixed.

Nice!


☂Merge flutter/buildroot into flutter/engine and retire the repository.

The Flutter Buildroot and the Engine used to live in a common repository. In 2016, in order to facilitate building the Flutter Engine in the Fuchsia as well Flutter buildroots, the buildroot used by Flutter was separated into its own repository with the engine DEPS file referencing the version of the buildroot to use. The Flutter Engine GN rules had to be written such that they worked when the engine was present in either buildroot.
Flutter no longer builds in the Fuchsia buildroot. Instead, Fuchsia artifacts are built from the Flutter buildroot using the Fuchsia SDK (which was not present at the time the split occurred) and vended to Flutter application authors. So, the original use case of the split is no longer present.
Even though there is no use-case served by the split, there are numerous downsides to this approach:

Patches to GN rules (especially in the secondary buildroot) need to be split across multiple commits to the buildroot and the engine.
Any buildroot patch necessitates a DEPS update in the engine.
If the DEPS update fails for any reason, the same patch must be backed out in the buildroot ASAP. If someone else patches the buildroot in the meantime, they must hold till the failed buildroot update has been reverted lest their DEPS roll fail too.
The buildroot has no presubmits. Authors who want to test buildroot updates must first update the buildroot in their fork and then point the patch that rolls DEPS in the engine to point to their fork of the buildroot so that presubmits can run. Before landing, they must back out this redirection after landing the patch in the buildroot.
The separate PR queue for buildroot patches means the patches there are often missed by reviewers.

Personally, I dread instances where I have to update the buildroot. Not because it is hard, but because it is incredibly tedious. And quite unnecessarily so. The buildroot itself is a significant source of technical debt and having build rules split across two repos also makes incrementally tackling this debt hard. Merging the repos would get rid of one source of unnecessary complexity in the build process.
The buildroot has no presubmit or its own issue tracker, so I don't expect any infra related issues with this switch.
The original split occurred by preserving no history. The team has grown significantly since then and the Git history may be valuable. So maybe we should consider a subtree import instead of just copying over the files. But, I don't have a strong opinion either way.

cc @jason-simmons @cbracken @zanderso

Definitely in favour of merging buildoot into the engine repo. When we do this, we'll need to update the engine build wiki to eliminate the relevant instructions.
One thing I run across relatively frequently are patches that have landed in the buildroot that were never rolled (or can't roll) to the engine repo. Whenever we hit this situation, it typically involves a minor archaeological expedition to figure out what the change was intended to fix and why it wasn't rolled as well as a decision on whether to revert those changes before applying my own or try to roll them through.

The split is also super annoying when trying to maintain any relatively long-lived engine branch that involves buildroot changes (as a current example, the UWP development fork), because keeping up with current master involves maintaining two parallel branches, updating them both at the same time, and updating the DEPS in the fork.

This is now, once again, work in progress. I'll update the original post (thanks @chinmaygarde) with details.

I am assigning myself since I'm actively working on a part of this, but this effort has room for a lot of parallelisation so I encourage others who want to actively work on this to self-assign as well.

Re-assigning to @jtmcdole to babysit.

Some of this work is going on here: https://github.com/flutter/flutter/issues/153059

Presented as Dash Forum. Plan is for Q4.

This is done!


Fix pick auxiliary data identifiers

Description

This fixes the pick.py test.
Removes the quotes from the AUXILIARY_DATA_IDENTIFIERS to match the mili plugin fix #19782

Type of change

[x] Bug fix~~
[ ] New feature
[ ] Documentation update
[ ] Other

How Has This Been Tested?

built and ran rzhound toss4 all pick tests pass.
Reminders:

Please follow the style guidelines of this project.
Please perform a self-review of your code before submitting a PR and asking others to review it.
Please assign reviewers (see VisIt's PR procedures for more information).

Checklist:

[x] I have commented my code where applicable.~~
[ ] I have updated the release notes.
[ ] I have made corresponding changes to the documentation.
[ ] I have added debugging support to my changes.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] I have confirmed new and existing unit tests pass locally with my changes.~~
[ ] I have added new baselines for any new tests to the repo.
[x] I have NOT made any changes to protocol or public interfaces in an RC branch.~~

Can you hold off for just a min?

Can you hold off for just a min?

Yes.
I do just want to say - I didn't really follow the email thread you had going with Eric. I built develop and reproduced the test suite failure locally. I found this bug that I fixed elsewhere in the mili plugin. It looks like pick and the mili plugin are the only places where AUXILIARY_DATA_IDENTIFIERS is used. I made the change and verified that pick and mili tests pass.

Interesting. The BATL ones also look wrong.

I don't think we have tests for BATL file format so I'm not sure how to test if I change those too.

I don't think we have tests for BATL file format so I'm not sure how to test if I change those too.

I would claim we know for sure that the existing code in BATL in these cases is wrong.

How should I test the BATL fixes?

How should I test the BATL fixes?

I would not worry about it if there are no tests. Its clearly wrong.

@markcmiller86 thanks for your help on this!

@visit-dav/visit-developers so this is an example that I sometimes run into...I find a coding error in a couple of places and then start thinking...I wonder how many other places this has occurred? If I am lucky, a relatively simple regular expression combined with find operation can help tease them out if they exist. I often wind up finding many more cases. That is, for example, how I found all the cases of #define MIN and friends that @biagas fixed recently. :wink:

shoot I committed directly to 3.4RC :(

shoot I committed directly to 3.4RC :(

I think there is a local hook that can prevent that. The trick is, you have to install it to have it help you.
Look in .git/hooks/pre-commit for something like this...
#!/bin/sh
BRANCH=$(git rev-parse --abbrev-ref HEAD)

#
# Check if this is a Release Candidate branch
#
if [ -n "$(echo $BRANCH | grep "^[0-9]\?[0-9]\.[0-9]RC"'$')" ]; then
    echo "Commits directly to a Release Candidate branch are not allowed."
    exit 1
fi

#
# Check of this is the develop branch
#
if [ "$BRANCH" = "develop" ]; then
    echo "Commits directly to the Develop branch are not allowed."
    exit 1
fi

merge w/ develop in #19788


The dataset for the classification task cannot be opened for viewing. Is the webpage lost? Can you send another copy

http://www.timeseriesclassification.com/Downloads/Archives/Multivariate2018_ts.zip can not open！>o<

Same issue here.

It seems we can directly download it without reviewing.

看来我们可以直接下载，无需审核。

请问你可以发我一份吗？

I have added it. As a link in issue #71


feat: Add input variable 'instance_tags'

Description
Add input variable instance_tags, similarly to the VPC module's vpc_tags.
Motivation and Context
It allows for fine grained tagging of EC2 instances that can be used by automation tools to perform certain actions, such as cost-saving measures by shutting down instances outside of working hours if they are tagged with e.g., Persistence = "09:00-18:00". With this change in place, the extra instance tag would not be set for the volume or IAM role but just for the instance itself, which is the only place where it makes sense.
Breaking Changes
None.
How Has This Been Tested?

[x] I have updated at least one of the examples/* to demonstrate and validate my change(s)
[x] I have tested and validated these changes using one or more of the provided examples/* projects

[x] I have executed pre-commit run -a on my pull request

This PR is included in version 5.2.0 :tada:


Services With Crontab Are Started Even When Stack is Stopped / Service Inactive

I understand this is for a community supported catalog item, however I submitted this there (I think this was the right place?) and have not had any reply (https://github.com/rancher/container-crontab/issues/1):
Rancher versions:
rancher/server: 1.0.0
rancher/agent: 1.2.0
Infrastructure Stack versions:
healthcheck: 0.2.3
ipsec: 0.0.4
network-services: v0.0.7
scheduler: 0.4.0
kubernetes (if applicable): n/a
Docker version: (docker version,docker info preferred)
docker: 1.12.6
docker info:
Containers: 70
 Running: 22
 Paused: 0
 Stopped: 48
Images: 32
Server Version: 1.12.6
Storage Driver: overlay
 Backing Filesystem: extfs
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local rancher-nfs
 Network: bridge null host overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Security Options: seccomp
Kernel Version: 4.9.21-rancher
Operating System: RancherOS v1.0.0
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 15.67 GiB
Name: SCRUBBED
ID: SCRUBBED
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Insecure Registries:
 <IP_ADDRESS>/8

Operating system and kernel: (cat /etc/os-release, uname -r preferred)
$ cat /etc/os-release
NAME="RancherOS"
VERSION=v1.0.0
ID=rancheros
ID_LIKE=
VERSION_ID=v1.0.0
PRETTY_NAME="RancherOS v1.0.0"
HOME_URL="http://rancher.com/rancher-os/"
SUPPORT_URL="https://forums.rancher.com/c/rancher-os"
BUG_REPORT_URL="https://github.com/rancher/os/issues"
BUILD_ID=

$ uname -r
4.9.21-rancher

Type/provider of hosts: (VirtualBox/Bare-metal/AWS/GCE/DO)
AWS
Setup details: (single node rancher vs. HA rancher, internal DB vs. external DB)
HA Rancher:

App: 3 Nodes
Compute: 4 Nodes
DB: AWS RDS MySQL

Environment Template: (Cattle/Kubernetes/Swarm/Mesos)
Cattle
Steps to Reproduce:

Install Container Crontab from Community Catalog (0.1.0-rancher1)
Create a Stack
Create a Service with label: cron.schedule
Stop Stack or Service

Results:
Stacks/Containers that are stopped/inactive will still be executed by container-cron.

Container crontab, is Docker based and has no concept of Rancher'isms. The reasoning behind docker based events is that it can run anywhere, particularly RancherOS. In general, I'm hoping to keep this fairly unintelligent, but it might a need a little bit of smarts.
Would upgrading the service to havecron.action=none before stopping be viable? I'm not sure if we are supporting label editing yet. none doesn't exist yet, but that could disable it. Thinking about the normal Cron behavior, you have to remove the entry or edit the file. So this would be a similar approach.

That sounds not very friendly/convenient...
I'd say check curl http://rancher-metadata/2016-07-29/self/stack/state and proceed if you get back DNS error so it will still work standalone.  But stacks don't currently have state in metadata...

Actually stacks don't ever go inactive so just looking at service.state == active would work, and that is in metadata...

@cloudnautique our use case on this was that during the deploy of our app stack, we stop related cron services, then once upgrade is completed or rolled back, then start the cron services back up.  Trouble being that even if the stack/services were stopped those containers were running during upgrade.
The other use case is during testing (staging)...  at times we might want to halt cron services to prevent cleanup items from happening while we fix edge-case issues.  Stopping the stack makes sense... but having to edit all the services one by one to disable cron isn't fun, and having to modify docker-compose.yml and re-deploying isn't ideal either.

I have been noticing a similar problem. I have a number of containers which are meant to run once a day and perform maintenance tasks, however since using rancher-crontab they are restarted continuously throughout the day, even though cron.schedule is set to @midnight.

PR rancher/container-crontab#5 has QA instructions.

@cloudnautique I was able to run the QA tests on the crontab service with both rancher mode and normal mode, and it ran successfully with no issues, i was also able to verify that container crontab service exposes Prometheus metrics on port 9191


Don't Merge! PR real time test for source branch full build

Docs Build status updates of commit 73ad76c:
:clock10: Pending: waiting for processors (46 builds ahead of you)
:warning: Docs Build is busy, currently there are 46 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 73ad76c:
:clock10: Full build: the average full build time is 10 min(s) 44 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit 73ad76c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Box and Button Functionality

Test functionality of input boxes and button on the web page and edit accordingly

During testing found the clear button is not working so will edit this. Also will add units to the temperatures on the web page.

Boxes and Clear button is working as expected, closing this ticket.


The command "picotool" terminated with exit code 249

I have a brandnew Arduino Nano RP2040, and I want to flash the firmware, so I can use micropython. That doesn't work, it stops with the error message
PicoTool firmware update failed!

The command "picotool" terminated with exit code 249

DETAILS
/home/6ffm70/etc/OpenMV_inst/share/qtcreator/picotool/linux64/picotool load -x /home/6ffm70/.config/OpenMV/qtcreator/firmware/ARDUINO_NANO_RP2040_CONNECT/firmware.bin

No accessible RP2040 devices in BOOTSEL mode were found.

but:

Device at bus 1, address 30 appears to be a RP2040 device in BOOTSEL mode, but picotool was unable to connect

I'm using this guide:
https://docs.arduino.cc/tutorials/nano-rp2040-connect/rp2040-openmv-setup
My environment: Ubuntu 20.04 on a Lenovo laptop; OpenMV IDE 2.9.2
What happens?
I start the IDE,

connect the Arduino with a microUSB cable (tried several different),

press the boot button on the Arduino twice (now the LED is constantly green, the computer recognizes a mass storage device)

I press connect, a window appears as per manual

I press OK, above error meassage appears.
Is there a workaround to not use OpenMV? Can I drag and drop ARDUINO_NANO_RP2040_CONNECT/firmware.bin via my file browser?

Hi, this isn't IDE specific. It's some issue with the PcioTool on your PC. You'll need to ask the RPi folks why their tool is throwing this error.


remove asf_hyp3 from all yamls

FWIW if you specify asf_hyp3==3.0.3, you can still install it, but the API is going down tomorrow and the package won't work, so removing is bestest.

FWIW if you specify asf_hyp3==3.0.3, you can still install it, but the API is going down tomorrow and the package won't work, so removing is bestest.

Ah, that is good to know, thanks. I just yanked all the hyp3v1 notebooks too. Time for it all to go, yea:)


Who can burn?

Presumably the minter/owner can burn the token? What to do about ids that do not resolve, in that case?

Default current behaviour is that check_can_send governs this:
https://github.com/CosmWasm/cw-nfts/blob/main/contracts/cw721-base/src/execute.rs#L361

only current owner can burn for now


Hide nvm inside bash script

Coverage remained the same at 99.069% when pulling 1cf13e63ee06b42a8f2bab2180e46b37cc13ad91 on tiny_fix into 9e3772489f78be29315dbc535a491029957f4735 on master.


mysql support

Is mysql currently incompatible?
  const CONNECTION_STRING: &str = r#"
    Driver={MySQL ODBC 8.2 Unicode Driver};
    Server=<IP_ADDRESS>;
    DB=morse;
    UID=root;
    PWD=123456;
    Port=3306;
    "#;

odbcinst.ini
[MySQL ODBC 8.2 Unicode Driver]
Description=MySQL ODBC 8.2 Unicode Driver
Driver = /usr/local/lib/libmyodbc8w.so

running 1 test
Error: ODBC emitted an error calling 'SQLDriverConnect':
State: H000, Native error: 0, Message: [

Stack backtrace:
   0: std::backtrace_rs::backtrace::libunwind::trace
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
   1: std::backtrace_rs::backtrace::trace_unsynchronized
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2: std::backtrace::Backtrace::create
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/backtrace.rs:331:13
   3: anyhow::error::<impl core::convert::From<E> for anyhow::Error>::from
             at /Users/simonyi/.cargo/registry/src/mirrors.tuna.tsinghua.edu.cn-df7c3c540f42cdbd/anyhow-1.0.75/src/error.rs:551:25
   4: <core::result::Result<T,F> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible,E>>>::from_residual
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/core/src/result.rs:1963:27
   5: morse_engine::odbc::test::test
             at ./src/odbc/mod.rs:27:26
   6: morse_engine::odbc::test::test::{{closure}}
             at ./src/odbc/mod.rs:15:18
   7: core::ops::function::FnOnce::call_once
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/core/src/ops/function.rs:250:5
   8: core::ops::function::FnOnce::call_once
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/core/src/ops/function.rs:250:5
   9: test::__rust_begin_short_backtrace
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/test/src/lib.rs:628:18
  10: test::run_test_in_process::{{closure}}
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/test/src/lib.rs:651:60
  11: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/core/src/panic/unwind_safe.rs:272:9
  12: std::panicking::try::do_call
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/panicking.rs:552:40
  13: std::panicking::try
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/panicking.rs:516:19
  14: std::panic::catch_unwind
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/panic.rs:142:14
  15: test::run_test_in_process
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/test/src/lib.rs:651:27
  16: test::run_test::{{closure}}
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/test/src/lib.rs:574:43
  17: test::run_test::{{closure}}
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/test/src/lib.rs:602:41
  18: std::sys_common::backtrace::__rust_begin_short_backtrace
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/sys_common/backtrace.rs:154:18
  19: std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/thread/mod.rs:529:17
  20: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/core/src/panic/unwind_safe.rs:272:9
  21: std::panicking::try::do_call
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/panicking.rs:552:40
  22: std::panicking::try
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/panicking.rs:516:19
  23: std::panic::catch_unwind
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/panic.rs:142:14
  24: std::thread::Builder::spawn_unchecked_::{{closure}}
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/thread/mod.rs:528:30
  25: core::ops::function::FnOnce::call_once{{vtable.shim}}
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/core/src/ops/function.rs:250:5
  26: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/alloc/src/boxed.rs:2007:9
  27: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/alloc/src/boxed.rs:2007:9
  28: std::sys::unix::thread::Thread::new::thread_start
             at /rustc/4b85902b438f791c5bfcb6b1c5b476d5b88e2bef/library/std/src/sys/unix/thread.rs:108:17
  29: __pthread_joiner_wake
test odbc::test::test ... FAILED

failures:

failures:
    odbc::test::test

test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 13 filtered out; finished in 0.37s

error: test failed, to rerun pass `-p morse-engine --lib`

So far MySQL worked fine, and MariaDB is part of the integration test suite. Try compiling with the --features narrow flag, maybe we can get a better error message.

@pacman82 Ok thanks

Did the error vanish once you used the narrow feature?


ValueError: Could not find associated confound file. The functional derivatives should exist under the same parent directory.

Entity acq cannot be recongnised correctly
This is an upstream issue. Will be fix by the next release of nilearn
Open issue for book keeping.
Dataset: abide2 ONRC_2
https://github.com/nilearn/nilearn/pull/3794

Fixing required bumping nilearn version


Game suggestion

Please add all of the Kingdom Hearts Cloud Versions!
Also Persona 3 Portable and 4 Golden

I have added the game(s) you requested in the most recent release: https://github.com/hobby-grade/Nintendo-Switch-Discord-Status/releases/tag/v1.1.4
Thank you for checking out the project, reach out if you have any more suggestions!


Ignore remote deleted contents

At startup, trsync consider some contents as new. These contents are inside deleted folder, so when relative path is build (Client::build_relative_path) content is ignored because one of its parent is deleted.

Tracim issue : https://github.com/tracim/tracim/issues/5857

Note this can be solved by building a nested representation from original contents list.


chore(build): Move to Jest as eslint Runner

Switching from using eslint directly to use jest as the runner of eslint.
Fixes #18

I am still playing with the structure on some of this, but it is currently working with projects and now if you just run jest it will run both projects. It feels like it could be a little cleaner.
In my preference, there is typically no time that I would ever want to run just lint, so I am fine consolidating some of the scripts.
I am really excited about this, it looks really cool. They also have tsc and prettier runners. Since it is only running on files that have changes I could see adding more projects to keep developers informed with each change.

tsc & prettier runners sound great too! Sounds like a fun follow-up PR!

:tada: This PR is included in version 1.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Declarative cross implementation test suite tools

What was wrong?

lots of duplication between the trio and asyncio based test suites.
lots of things that behave differently when they occur across different processes.

How can it be fixed?
I've been imagining this concept that I'll call an "Endpoint Driver".  It would be a declarative, implementation agnostic mechanism for defining a sequential set of actions that should be taken on an endpoint, with one of those actions being something like just running python code.
This tool should allow us to write implementation agnostic tests allowing us to define our test suite once and run it across any number of different combinations like:

both endpoints of the same implementation in the same process
different implementations in the same process
same/different implementations in different processes.

I suspect the tests will be much more readable too.

server_driver = compose_driver(
    connect_until_connected_to(client_config),
    wait_for(SomeEvent).add_handler(lambda ev: assert isinstance(ev, SomeEvent)),
)
client_driver = compose_driver(
    connect_to_endpoint(server_config),
    broadcast(SomeEvent()),
)

Then there's probably a backend type component for how to run each endpoint type as well as something to manage doing things in their own processes.

Done with #141 opening new issues to convert the rest of the test suite to use this...