Crud field type "table" problem

Hello
I am trying to create CRUD field type 'table'. Unfortunately, it seems not to cooperate well with angular.
Here is code:

$this->crud->addField([
'name' => 'options',
'label' => 'Settings',
'type' => 'table',
'columns' => [
'name' => 'Option Name',
'value' => 'Option Value'
],
'max' => 10,
'min' => 0
]);

When I am trying to click "add settings" button:

angular.js:13920 TypeError: $scope.items.push is not a function
at m.$scope.addItem (edit:616)
at fn (eval at compile (angular.js:14817), :4:212)
at b (angular.js:15906)
at e (angular.js:25885)
at m.$eval (angular.js:17682)
at m.$apply (angular.js:17782)
at HTMLButtonElement. (angular.js:25890)
at HTMLButtonElement.dispatch (jquery-2.2.0.min.js:3)
at HTMLButtonElement.r.handle (jquery-2.2.0.min.js:3)(anonymous function) @ angular.js:13920(anonymous function) @ angular.js:10467$apply @ angular.js:17787(anonymous function) @ angular.js:25890dispatch @ jquery-2.2.0.min.js:3r.handle @ jquery-2.2.0.min.js:3

When I am trying to enter anything in any "table-type" field:

angular.js:13920 TypeError: Cannot create property 'name' on string '['
at fn.assign (eval at compile (angular.js:14817), :4:423)
at $$writeModelToScope (angular.js:27688)
at angular.js:27682
at g (angular.js:27603)
at e (angular.js:27586)
at $$runValidators (angular.js:27530)
at $$parseAndValidate (angular.js:27669)
at $commitViewValue (angular.js:27637)
at angular.js:27780
at m.$eval (angular.js:17682)(anonymous function) @ angular.js:13920(anonymous function) @ angular.js:10467$apply @ angular.js:17787$$debounceViewValueCommit @ angular.js:27779$setViewValue @ angular.js:27751l @ angular.js:23988dispatch @ jquery-2.2.0.min.js:3r.handle @ jquery-2.2.0.min.js:3

Backpack CRUD version: 3.1.24 (also tested on 3.1.21)
Laravel version: 5.3.11 (also tested on 5.3.10)
Issue present on both Chromium and Firefox
Best regards

have you cast your options column as array within the model?

Hi, @lukasz-pawlowski ,
Thank you for the bug report!
I can confirm that happens - I just tried it on a fresh Backpack install. I've fixed it in 52bd27d1949a5397062b50029194ba585c8e997d and a composer update should solve that for you, whether you're using attribute casting to array, object or not using it at all.
Please tell me if it doesn't :-)
Cheers!

@OwenMelbz Yes, I am casting, although I am not sure if I am doing it properly. Since how to cast value that is inside column? json_decode first then cast?
Thank you @tabacitu that was blazing fast :) Indeed, that fixed the issue, but only partially. I can now enter settings, but only when I have already some pre-defined option names. It does not work with empty "[]". I'm working on PHP 7 if that helps
Ex. if in database is null or "[]", two lines are displayed and I have errors when the same as mentioned above.
BUT if I predefine in table fields (ex. [{"name":"","value":""}] ) everything works correctly
Please let me know what more information I can provide you to reproduce problem?

You can use attribute casting by defining this on your model:
protected $casts = [
    	'options' => 'object',
    ];

Hmm... so, can you please check for me, just using the interface, without any tinkering in the database:

Can you add values using the Add form?
Can you edit those values using the Edit form? (the entry you just added, not another one that might have messed up values)

Thanks!
PS. That's very weird, I just tried it with null and [] and it worked for me...

OK, issue is fixed and was properly fixed with 52bd27d
My mistake was not re-publishing vendor view so I had still old blade file
Now it's working without any problems
Thank you!
Best regards,
Lukasz

Great to hear that, thanks! Sorry for the mishap. Cheers!


First steps for UserTable initialization after save

#11589
Acceptance

[x] Import .carto with two tables. This triggers 1, 2 (4 times, that will be addressed in a future improvement). This happens in the next 2 .carto imports as well.
[x] Import the same .carto again. Tables should be duplicated. Delete the tables. Both the tables and the map should be deleted.
[x] Import the same .carto with import API and skip strategy. Map should be duplicated, but tables should be the same. Delete the tables. Datasets and maps should be gone.
[x] Import common data
[x] Duplicate map. This triggers 1, 2
[x] Create dataset from:

[x] Import from file
[x] Import from URL
[x] Empty
[x] From SQL query
[x] Sync

[x] Rename dataset
[x] Rename map
[x] Change map privacy
[x] Change dataset privacy
[x] Check that the imported .carto keeps the privacy of the original map

@javitonino acceptance passed. A couple of minor errors were found. They were related to missing requires, so nothing that can be trusted in tests because of class loading order.
Take a look at the debug points and where they appeared. Everything seems safe.

I'm testing a few things as well and it looks solid. Maybe we should remove the Visualization model traces, or we are likely to get Rollbar flooded with debug traces. Not sure, since they might be useful. Maybe we can launch with it and remove after a couple of days.

I'd keep them, we'll remove them soon 👍
Monday deployment then.


UniFi will not handle wildcard cname's

Bug Description
The webhook will return 400 when trying to create a CNAME record with a wildcard key. Ex: *.coder.ok8.sh
UniFi returns the following output when attempting to create the record:
{"record_type":"CNAME","value":"external.ok8.sh","key":"*.codeap2l.ok8.sh","enabled":true}

{
    "code": "api.err.StaticDnsRecordInvalidParameters",
    "details": {
        "invalid_fields": [
            "key"
        ]
    },
    "errorCode": 400,
    "message": "Invalid hostname"
}

This should function with the External-DNS Cloudflare Provider (with warnings).
ExternalDNS Configuration
This issue relies on the configuration of external-dns outside of the helm values.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: coder
  namespace: coder
spec:
  ingressClassName: external
  rules:
  - host: coder.ok8.sh
    http:
      paths:
      - backend:
          service:
            name: coder
            port:
              name: http
        path: /
        pathType: Prefix
  - host: '*.coder.ok8.sh'
    http:
      paths:
      - backend:
          service:
            name: coder
            port:
              name: http
        path: /
        pathType: Prefix
status:
  loadBalancer:
    ingress:
    - ip: <IP_ADDRESS>

When External DNS encounters this issue, it doesn't understand what the 400 is doing per the docs
Not sure what we should do, but it seems like our options are:

Notice the issue, attempt to warn in logs.
Reject it with a 500?
Automatically change it from a CNAME record to an A record?

ExternalDNS Logs
time="2024-09-12T19:42:08Z" level=debug msg="Endpoints generated from ingress: coder/coder: [coder.ok8.sh 0 IN CNAME  external.ok8.sh [] *.coder.ok8.sh 0 IN CNAME  external.ok8.sh []]"
time="2024-09-12T19:42:08Z" level=debug msg="No endpoints could be generated from service coder/coder"
time="2024-09-12T19:42:08Z" level=debug msg="Failed to apply changes with code 500"
time="2024-09-12T19:42:08Z" level=error msg="Failed to do run once: soft error\nfailed to apply changes with code 500"

Webhook Logs
{"level":"debug","ts":1726478457.1915169,"caller":"unifi/client.go:97","msg":"Client Preforming Request","req_method":"POST","req_path":"https://<IP_ADDRESS>/proxy/network/v2/api/site/default/static-dns/"}
{"level":"debug","ts":1726478457.1915534,"caller":"log/log.go:53","msg":"Requesting https://<IP_ADDRESS>/proxy/network/v2/api/site/default/static-dns/ cookies: 1"}
{"level":"debug","ts":1726478457.2286205,"caller":"unifi/client.go:115","msg":"Client Returning Request","req_method":"POST","req_path":"https://<IP_ADDRESS>/proxy/network/v2/api/site/default/static-dns/","res_code":400}

UniFiOS Version
v4.0.18
UniFi Network Version
v8.5.1
ExternalDNS Version
0.15.0
Search

[X] I have searched the open and closed issues for duplicates

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Did this work prior to the 0.15.0 changes?
Did you try create a wildcard cname record with the API only to test?

Are you trying something new here or,

Did this work prior to the 0.15.0 changes, or

Did you try create a wildcard cname record with the API only to test?

Sounds like it could be a limitation of unifi not supporting wildcard DNS?

I tried doing it through the API, yes. The response above is what it resulted in. I am pretty sure it is not supported unless it is the primary reason why the cname option is grayed out on the panel.

If that's the case, maybe it's worth putting in the README that wildcard DNS isn't supported?

If that's the case, maybe it's worth putting in the README that wildcard DNS isn't supported?

And just let it error out itself?
In our home cluster setups, we need to set the annotation to make the record a cname. If we remove it, it changes it to an A record for the internal ingresses but also breaks external ingresses because it tries to point the wildcard to our tunnel as an A record. Very interesting issue here.

And just let it error out itself?

Sounds good to me, the error that already happens is good enough to start debugging what's wrong. Plus this issue exists for the next person that comes along the problem.

If that's the case, maybe it's worth putting in the README that wildcard DNS isn't supported?

And just let it error out itself?
In our home cluster setups, we need to set the annotation to make the record a cname. If we remove it, it changes it to an A record for the internal ingresses but also breaks external ingresses because it tries to point the wildcard to our tunnel as an A record (which points a external address to an internal ip range). Very interesting issue here.

The real issue is upstream Unifi does not support wildcard addresses, therefore, just say that in the README.

So adding a line to the pre-existing warning like this?

[!WARNING]
This software is experimental and NOT FIT FOR PRODUCTION USE!
UniFi does not support Wildcard (*.) CNAME records at this time.

Maybe create a limitations section in the README somewhere and put it there.

Was completed in https://github.com/kashalls/external-dns-unifi-webhook/commit/2ea4b68293a3394ed8eeb09bccaf09bd7ca69fda


Clicking a non-valid audio file (after the first time) doesn't print error

Since the last audio is "cached" (looped if re-clicked), errors should probably clear the last loaded audio.

The audio logic has been changed since then, I need to check how it behaves now on invalid files. Not sure if there's also a built-in whitelist.


Update pointerlock.json

Pointer Lock doesn't work on Safari on iOS

Just tested and looks like you're right! Thanks for the correction.

Just tested and looks like you're right! Thanks for the correction.


Remove restriction on mint

https://github.com/liteflow-labs/starter-kit/pull/310
Remove the restriction on mint, as this is a business decision and should not be part of the starter kit. Clients can reimplement it their own ways if they need to

@EmmanuelDrouin @NicolasMahe I would love your feedback on that, as this will be a breaking change. You can approve if you're good with this change, comment if not


hubble/parser: Fix data race in L7 parser

Since #12712, Hubble receives L7 LogRecords directly as a in-memory
value, instead of a GOB-encoded blob. As a consequence, the Hubble
parser now shares the object with other consumers.
Therefore, the L7 parser must not modify the LogRecord it is decoding.
The only occurrence of a write to the LogRecord seems to happen in
decodeEndpoint(), which is sorting the labels in-place before storing
them in the decoded flow representation.
This commit avoids the in-place sort by creating a shallow copy of the
labels string slice. This avoids any writes to the underlying
LogRecord object and thereby also fixes a data race observed in CI.
Fixes: #13264
Signed-off-by: Sebastian Wicki<EMAIL_ADDRESS>

test-me-please


Catch exceptions parsing commands

Changes Unknown when pulling bdd9c976225de2492b5ad0b118fd794a2baaa0ba on fcastilloes:master into ** on kusanagi:master**.


Remove current user from list

This resolves issue #6 and I took the liberty to do some fine-tuning as follow

The current user does not appear in the list a,nymore

The "imperonate" button is disabled until you select a user (see image above)

If the list is empty, we display a message "no user to impersonate"

When a non-admin user opens the layer, we display a message "you need admin rights".

The two latter points are there because we actually always have the dashboard title "User Impersonation" displayed, which means that if the impersonation component itself would not display anything (like it is now), the user sees a title with nothing under it, and I thought this seemed kind of odd. 😉
Beware that updates to Danish translation file come from Google translate 😅

Looks great - thanks!


layers_distance (f[len_a][len_b] is always equal to f[-1][-1]=0) ,right?

f[len_a][len_b] is always equal to f[-1][-1]=0
    len_a = len(list_a)
    len_b = len(list_b)
    f = np.zeros((len_a + 1, len_b + 1))
    f[-1][-1] = 0
    for i in range(-1, len_a):
        f[i][-1] = i + 1
    for j in range(-1, len_b):
        f[-1][j] = j + 1
    for i in range(len_a):
        for j in range(len_b):
            f[i][j] = min(f[i][j - 1] + 1, f[i - 1][j] + 1, f[i - 1][j - 1] + layer_distance(list_a[i], list_b[j]))
    print(f)
    return f[len_a][len_b]

Thank you for your careful reading.
It has been patched in the new version which would be released soon.
It should be changed to "return f[len_a-1][len_b-1]."


OPTIONS Method: Does not seem to work with Azure-Functions-CLI

Hello,
When I attempt to run a function that implements the OPTIONS method it works fine on regular Azure, but the Azure Functions CLI when using:
func run myFunction
All I get back are 400 messages.
The functions.json:
    {
      "disabled":false,
      "bindings":[
        {
          "name": "req",
          "type": "httpTrigger",
          "direction": "in",
          "authLevel": "anonymous",
          "methods": [ "OPTIONS" ],
          "route": "1.0/myFunction"
        },
        {
          "name": "res",
          "type": "http",
          "direction": "out"
        }
      ]
    }

The code:
'use strict';

  module.exports = function(context, req){
      var shared = require('../auth-shared-libraries');
      var cors_url = shared.getCORSUrl(context);
      context.res = {
          status: 200,
          headers: {
              "Access-Control-Allow-Credentials" : "true",
              "Access-Control-Allow-Origin" : cors_url,
              "Access-Control-Allow-Methods" : "POST, OPTIONS",
              "Access-Control-Allow-Headers" : "Content-Type, Set-Cookie",
              "Access-Control-Max-Age" : "86400",
              "Vary" : "Accept-Encoding, Origin",
              "Content-Type" : "application/json"
          },
          body : JSON.stringify(req)
      };
      context.done();
  }

The Request:
    OPTIONS /api/1.0/myFunction HTTP/1.1
    Host: localhost:7071
    User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:51.0) Gecko/20100101 Firefox/51.0
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
    Accept-Language: en-US,en;q=0.5
    Access-Control-Request-Method: POST
    Origin: http://localhost:9000
    Connection: close

The Response:
    HTTP/1.1 400 Bad Request
    Content-Type: application/json; charset=utf-8
    Server: Microsoft-HTTPAPI/2.0
    Date: Tue, 14 Feb 2017 01:28:12 GMT
    Connection: close
    Content-Length: 64

    {"Message":"The origin 'http://localhost:9000' is not allowed."}

I wonder if this is as there is a different frontend server?
I had problems with CORS and Preflight. Never resolved

@SteveALee The error certainly implies there is something else looking at CORS and rejecting based on the value. Beyond that, I really don't know. I can tell you it is definitely creating headaches for me since this makes local dev impossible, and deployment takes ~10 minutes which REALLY slows down the development cycle.

@securityvoid We'll investigate. Just curious, why does deployment take 10 minutes?  It should be much faster than that.

@lindydonna I'm using nodejs which the way it handles dependencies requires a lot of installs. Since the Azure file system is so slow, it typically makes request to NodeJS apps that have more than 4-5 dependencies be extremely slow.
To get around the performance issue at run-time I've created a custom deploy script that takes all the dependencies and converts them into a single minified file, which is then used by my main index.js. While that script takes 30 seconds to run locally, it takes 10 minutes to run on the amazingly fast Azure storage. This makes the run-time performance much higher, but takes awhile to deploy.
Even before I used a custom deploy script the deploy time used to be 5+ minutes on a refresh of NPM's. The initial npm install deploy was, and still is about an hour.

However, since everything is minified, this also makes it more difficult to debug when its on Azure; and even more important for me to be able to do development locally before pushing it out to Azure.

@securityvoid Thanks for sharing the details, that makes a lot of sense. You might be interested in a prototype that @christopheranderson has been working on, that does Webpack on dependencies. However, it uses a feature that hasn't been released to Azure yet.
Ironically, due to an oversight where currently the CLI uses slightly newer runtime bits than Azure (will be fixed in the next release), you can try out his tool locally. I realize it might not be that useful until the CORS issue is resolved, of course!

@securityvoid 10 mins! Yeouch. I've found it slow but that is crazy.
I find npm really slow on windows, even running scripts. I was beginning to wonder if NTFS is just slow for some reason.
One solution would be to locally build your node modules, zip and ftp it to Azure. A real hack though.
Time to try yarn? install -g on the target and upload the local lock file before running it.

@SteveALee FYI there's now a publish command in the CLI. It's not complete (it won't remove deleted files), but it'll make the workflow a little nicer. Have you tried @christopheranderson's webpack approach?

@lindydonna We use auto-deploy from source-control. As a result I'm pretty sure that his solution would require us to return to source-control the webpacked version of the node modules for it to deploy. Returning dependencies to source-control is generally not viewed as a best practice.
The deploy script I put together is completely workable as long as we can do most of our development locally. 10 minutes for a deploy is not ideal, but its also not a big deal for a release. Its just not productive for active development.
@SteveALee I run windows 10 and I have no trouble with the speed of npm. Granted I'm also running with 16GB of memory and a 1TB SSD :-). I've also optimized some of the NPM commands, e.g. disabling the progress bar (Yes, it actually helps for some weird reason), and increasing the time period that packages are cached.

@lindydonna nope - but he recently mentioned something. I guess it bundles up stuff?
@securityvoid You could always uses another repo just for the deployment or FTP as a fina step in a CICD pipeline. But if you are using these Apps pull deployment form your main repo that will all be extra work. :(
/OT I've an i7 Surface pro 4 so similar spec but npm often slow to start scripts. I do tend to run from Msys Bash shell. Oh and nvm windows. I should try stripping it all down, including paths etc,. Thanks for comments.

did we get it resolved this issue?


Why does the list item assign disappear when interacting with the counter?

In the debugger panel, when you increment or decrement the counter, the list of items that you previously added in the demo disappears.
Why is that? I would want to see all of the assigns for the liveview, not specifically the ones being changed. most often, the bugs we uncover are due to unexpected state changes, not the expected ones.
also is there a better place to ask questions for this project?

Hi @mekhami ,
This is a good place to ask questions for the project.
I'm afraid I might not entirely understand your question, however.  At any point in the slider, all of the LiveView assigns at that point in time are shown in the side pane.
The slider restores the state of the LiveView assigns at any given point. If, for instance, you add 3 items and remove 1, (4 interactions), slider positions 1 to 3 will have 1, 2, and 3 list items, respectively. The 4th slider position will have 2 list items since the 4th interaction removed one.
I assume you are referring to the video posted at https://github.com/JohnnyCurran/TimeTravelDemo#example ?
If you are talking about when the list items disappear from the pane when interacting with the LiveComponents (counters) that is a side-effect of the current implementation. The plan for future releases is to have the entire DOM / LiveView / LiveComponent tree available to inspect at any point in time.
Does this help answer your question? Happy to clarify anything else

Hi, thanks for responding.
At that video, at 0:02, you click on one of the counters. When you do, the list of items that you have added to the live view no longer show up in the "assigns" section of the debug panel, despite them clearly still being part of the liveview state.
Not being able to view the state of the list items when you touch the counters is the part that i'm referring to. You've said "the plan for future releases is..." etc, and that's good enough for me! I'm very excited about this project.

I think you raised a really good question so I'm gonna dive a little deeper into what's going on, why it happens, and the future plan:

The side pane always shows the last event and its assigns whether it be LiveView or LiveComponent
When the Counter LiveComponent is clicked the pane shows the Counter component's assigns

This gives the appearance that the LiveView assigns have disappeared
In order to view them, you must bring the slider back 1 level

This is not ideal and the reason this happens is because the state of the Live socket does not readily reveal the structure of the LiveView, its components, and their assigns.
In order to retrieve that data I need to:

Search for LiveComponents on the DOM each time an event fires
Interrogate the LiveView and all of its LiveComponents for their current state
Pass that back down the channel to TimeTravel.js
Send event info & new DOM/assigns tree to the Chrome Extension

So, in short, it's possible in a roundabout way. But that's probably the path going forward.
If, in the future, more information about the LiveSocket becomes available through LiveView itself that could change


Added three missing examples

Recreate this pr to let PR build pick it up

I am merging this in as I cannot see the reason why it is red. I am guessing it is because the PR build is set wrongly. So let's do this experiment by merging it in.


Update Contact Channel in Readme.md

Updated the Readme file by adding up the Contact Section , creating a Warm welcome message at the top , Adding some Visual Emoji than the regular one .
This solves the Issue #232
Kindly Assign this to me under Labels :
gssoc
hacktoberfest

@Varunshiyam can you please attach some visuals of the work you have done

https://github.com/user-attachments/assets/15fbe02c-3514-4d13-bdae-3fea6f5b5767

These are the changes I wish to do

@Varunshiyam Looks amazing. Just few request changes. which are following :

Remoove the Emoji from daccotta heading (keep it SImple )
match the text animation colour to the text colour of daccotta landing page daccotta.com (attached image for your reference)

@sid0000007 . I have Corrected the changes kindly review it
https://github.com/user-attachments/assets/39c10dbb-a933-4b25-90c5-0d0ff37f3801


Merge branch 'develop' into 'main'

Codecov Report

Merging #25 (7dabeab) into main (7ebcc32) will not change coverage.
Report is 8 commits behind head on main.
The diff coverage is n/a.

@@            Coverage Diff            @@
##              main       #25   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines            2         2
=========================================
  Hits             2         2

:mega: Codecov offers a browser extension for seamless coverage viewing on GitHub. Try it in Chrome or Firefox today!


Fix build warnings.

sprintf is deprecated and not secure, since it doesn't protect against buffer overflows. Also, string literals are const char*, not char*.

Thanks!


Command Palette not accessible

VSCode Version: Code - Insiders 1.6.0-insider (c96822698cdbd47b8245fb5f9f45a0168bc9da33, 2016-09-30T17:37:14.267Z)
OS Version: Windows_NT ia32 10.0.14393
Extensions: dbaeumer.vscode-eslint-1.0.7, eg2.tslint-0.5.39

Steps to Reproduce:

Use nvda for accessibility testing
Open Command Palette with keyboard shortcut
Type something
Use arrow keys to navigate list
Observe: nvda keeps re-reading the entered text, not the selected item which makes it inaccessible for nvda users

Yup, electron update.

I verified that this will be fixed in Chrome 53+.


use completedNodesCount field

Increment the completedNotesCount field in kataconfig during
install/uninstall.
- Description of the problem which is fixed/What is the use case
Other than in 4.7 with the 4.8 operator we don't update the completedNodesCount field
in kataconfig anymore. A regression introduced when we removed the daemon.
- What I did
Add code to update the field during install/uninstall.
- How to verify it
Install/uninstall and watch the value being set as nodes are completed
- Description for the changelog
Fix regression that led to the updatedNodesCount field not being updated

Looks good to me!


No device?

what am I doing wrong? no errors from Xcode
no device
*** ___ZN11XPCEndPoint20sendMessageWithReplyEP10XPCMessagePS1_P16dispatch_queue_s_block_invoke[225]: XPC event error 'connection invalid'
*** waitForReply[294]: Error completing transaction (connection invalid)
*** completeTransactionAndProcessReply[497]: Error waiting for transaction reply
*** CreateNewClient[26]: Couldnt connect to XPC service
*** ___ZN11XPCEndPoint20sendMessageWithReplyEP10XPCMessagePS1_P16dispatch_queue_s_block_invoke[225]: XPC event error 'connection invalid'
*** waitForReply[294]: Error completing transaction (connection invalid)
*** completeTransactionAndProcessReply[497]: Error waiting for transaction reply
*** CreateNewClient[26]: Couldnt connect to XPC service

Hello, I am having exactly the same problem. I can record with Blackmagic Media Express, I can see the preview with Capture Preview of Blackmagic DeckLink SDK, but no device is detected with DLABCaptureManager.
The message I am getting:
*** waitForReply[294]: Error completing transaction (connection invalid) *** completeTransactionAndProcessReply[497]: Error waiting for transaction reply *** CreateNewClient[26]: Couldnt connect to XPC service *** ___ZN11XPCEndPoint20sendMessageWithReplyEP10XPCMessagePS1_P16dispatch_queue_s_block_invoke[225]: XPC event error 'connection invalid' *** waitForReply[294]: Error completing transaction (connection invalid) *** completeTransactionAndProcessReply[497]: Error waiting for transaction reply *** CreateNewClient[26]: Couldnt connect to XPC service
What do you think is the problem?
Thank you in advance for the help and also thanks you for your work.


Optinal visibility of modules in a modular page

Hello everyone,
many thanks for this easy to use and expandable theme. I like to work with it for simple and fast websites.
I would like to know if it is possible to make modules invisible, or better still to activate or deactivate them on a time-controlled basis. I know this function from other themes and would like to use it to display parts of the website only in a certain time window.

Will be a feature of our new theme Akazie Forest


Add MAGIC token by Treasure

MAGIC Token by Treasure
Ethereum L1 address for MAGIC (which matches the address in this PR):
https://etherscan.io/address/0xB0c7a3Ba49C7a6EaBa6cD4a96C55a1391070Ac9A
Supporting links

Official website: https://treasure.lol

CoinGecko: https://www.coingecko.com/en/coins/magic

CoinMarketCap: https://coinmarketcap.com/currencies/magic-token/

Overview of MAGIC: https://docs.treasure.lol/about-treasure/what-is-magic

Twitter / X: https://x.com/Treasure_DAO

Discord: https://discord.gg/treasuredao

Discussion
I'm a core developer at Treasure and am submitting this on behalf of the DAO.
The bulk of our liquidity was bridged from Ethereum L1 to Arbitrum One (an L2).
The Arbitrum L2 address for MAGIC is https://arbiscan.io/address/0x539bde0d7dbd336b79148aa742883198bbf60342.
If you make the l1Address call on the Arbitrum One contract for MAGIC
https://arbiscan.io/token/0x539bde0d7dbd336b79148aa742883198bbf60342#readProxyContract#F6
you will see the return value as 0xB0c7a3Ba49C7a6EaBa6cD4a96C55a1391070Ac9A, which is the
above Ethereum L1 address for MAGIC submitted in this PR.
I have also attached screenshots from CoinGecko and CoinMarketCap showing both the Ethereum L1
addresses and Arbitrum addresses for MAGIC to further verify that these are linked to each other.

@Antlion12 Thank you for your contribution. Do you think that your logo icon is correct - as it has massive white background - https://github.com/MetaMask/contract-metadata/blob/bbc33f739ca37be6079f286d178cd31c4bd51351/images/MAGIC.svg

@MRabenda Thanks. I believe that isn't a white background, but just an artifact of the GitHub preview for an SVG. Here's what it looks like (1) on preview, (2) when directly accessing the raw file (https://raw.githubusercontent.com/MetaMask/contract-metadata/bbc33f739ca37be6079f286d178cd31c4bd51351/images/MAGIC.svg). It looks like other SVGs in the repo render preview SVGs in the same way (https://github.com/MetaMask/contract-metadata/blob/master/images/Arb.svg).


DefaultAzureCredential and User Assigned Identity in node Function App

Package Name:  @azure/identity
Package Version:  1.2.3
Operating system: Linux
[ ] nodejs

version: 12

Describe the bug
This works:
const credentials = new identity.ManagedIdentityCredential(process.env.USER_ASSIGNED_ID)

This doesn't:
const credentials = new identity.DefaultAzureCredential()

I have an Azure Function App to which a User Assigned Identity is being used. It works fine with ManagedIdentityCredential, where I can specify the Client Id of the user assigned identity. I can't see a way to use DefaultAzureCredential instead.
To Reproduce
Steps to reproduce the behavior:

Create a function app and a user assigned identity. Give the identity permissions to do something (e.g. Storage Blob Data Reader).
Assign the user assigned identity to the function app.
Try to create a DefaultAzureCredential.

Expected behavior
I expect the DefaultAzureCredential to pick up the user assigned identity, or at least give me some way to assign the client id of the user assigned identity like ManagedIdentityCredential does.

Hello @ashic ! I'm Daniel. I'll be doing my best to help you.
While we're planning to improve the DefaultAzureCredential experience, we are trying as much as possible to reduce its features to be an entry-level credential only. This means that we're expecting users to use this credential only if they don't need to specify any parameter.
This credential is already trying to do many things. From our perspective, it gets confusing to express when something goes wrong, and in many cases where customers have had issues with it, we've been able to see how hard is to understand what goes wrong.
For now, I hope you don't mind moving out of the DefaultAzureCredential to use ManagedIdentityCredential or any of the other credentials we provide.
How does this sound? Please let me know if we can help with anything else.

@ashic Important!
After I took a look back at this issue, I figured I should see why DefaultAzureCredential isn't working by default on Azure Functions. I'll come back with more information as soon as possible.

@ashic After testing I found a bug in our code.
So, DefaultAzureCredential allows specifying a Managed Identity Client ID through the optional parameters, as follows:
// Of course, you can use anything other than process.env.USER_ASSIGNED_ID here.
let credential = new DefaultAzureCredential({ managedIdentityClientId: process.env.USER_ASSIGNED_ID });

This in fact is... not currently working. I've submitted a pull request here: #13973. Once merged, we'll release a hotfix. I imagine we'll end up doing the hotfix next week, but I want to provide you with an alpha version with the fix as soon as we have it, and then I'll also link you to the version with the hotfixes.

@sadasant Thanks... looking at the code, I simply added an AZURE_CLIENT_ID app setting that equals the Client ID of the user assigned managed identity. It works as expected. Having it being passed through options can also come in handy.

@ashic thank you for using our SDKs! Please let us know if you find any other issue.


Failed to validate template: content must be shorter than or equal to 5000 characters" despite template being under character limit

Bug report

[x] I confirm this is a bug with Supabase, not with my own application.
[x] I confirm I have searched the Docs, GitHub Discussions, and Discord.

Describe the bug
Supabase returns an error "Failed to validate template: content must be shorter than or equal to 5000 characters," although the email template I am using does not exceed this limit. The template is about 3700 characters, and even when minified, it reaches only 2088 characters. This issue appears to be a false positive on the character limit validation.
To Reproduce
Steps to reproduce the behavior, please provide code snippets or a repository:
Steps to reproduce the behavior:

Create an email template with approximately 3700 characters.
Minify the template to reduce character count.
Attempt to save or use the template within Supabase.
Observe the error stating the content exceeds 5000 characters.
I have added one of my email templates to reproduce the issue

Expected behavior
The template should save successfully without triggering the character limit validation error, as it does not exceed the 5000-character limit. It worked already for the last months but it just stopped working, the last email I got has been received 2 days ago.
Screenshots
Network Traffic (comes from spam protection?)

Error notification when navigating to another email template:

System information

Website: Supabase Cloud
Plan: Free
Organization: "Dashio KG" (qyjgjvclovhpvynbofdd)
Browser: Tested on both, Microsoft Edge and Mozilla Firefox

Additional context
This issue occurs even after minifying the template. The problem suggests that the character count validation may not be accurately calculated on Supabase's end, potentially counting whitespace or other formatting redundantly. The error is new, as similar templates with similar character counts previously saved without issues.
One of my used email templates is attached. Thanks for your support!
minified-custom-email-template-magic-link.zip

After further investigation, including both front-end and backend code analysis within the Supabase codebase, no configurations or validation constants defining a 5000-character limit have been identified.  This suggests the character limit may be enforced at a deeper level within Supabase's backend infrastructure or as a recent change not reflected in the public codebase.
Thank you for your assistance, and please let me know if further testing or details would be useful!

Hi @nicokempe, thanks for the report! We'll be increasing the max content length for the template validation api. This limit is in place to protect our api service.
Rest assured, there's no limit on the template length, so this error won't prevent you from saving the template.

This issue should be resolved, please let me know if it isn't.

Yes it does works now, thank you guys very much!


Changed traefik version from 2.0.0 to 2.0

In this PR I changed the traefik version inside the docker-compose.yml from 2.0.0 to 2.0 as described by @markusschuh in the issue #280
@markusschuh can you check if this is correct and then we can close those issue?

Perfect. "2,0" is a good choice. Compare with chapter "Supported tags and respective Dockerfile links" on https://hub.docker.com/_/traefik
It may be, the the traefik team will also publish a "2.0-alpine" tag some time (as for 1.7-alpine).  But that is the future.

I think that traefik docker base image is "scratch", so in this specific case: which benefits adds the extra layers of alpine?

Anyway, I will close this PR and also de related issue, but we can continue the discussion in the teams channel or yammer.

For a demo setup like here, the alpine is a bit more convenient than scratch, since debugging is a bit easier. (docker exec -it $imageid sh) Anyway I have missed, that traefik since v2.0.0 now has switched to alpine as default - so my remark was useless.


Implement new request flow based on events

On a high level new flow based on events is as follows:

It is based on continue using the socket-fetch library (or similar that will work in node and temporarily in Chrome Apps).
Events
Events allows to modify the request / response properties by the elements without having direct access to elements that are controlling the flow.
before-request event
Event fired when request data from the request panel are collected but before sending it to the transport library. This event is cancellable. If the event has been cancelled by any of the listeners then the request fails. Handlers may set a reason property on the event's detail object to display a reason to the user.
If handler must modify content of the request asynchronously then handler should add a promise object to detail's promises property. If, after the event return to the source, this array is not empty then it will wait with execution of the request until all promises resolves.
If a promise is rejected then the request fails.
To prevent stalled requests when a promise rejects outside a scope of a promise and it won't be rejected nor resolved, the request source will set a timer for all operations to end. If the timeout occurs then the request will be send with the request data that has been collected and altered at the moment of timeout.
If a handler requires more time to execute (eg. request debugger) it should set a timeout property on the Promise object. It is a non-normative property for this object but it will help control the workflow properly.
The request will be fired after the number of milliseconds of the highest timeout value. If 0 is set then the request will be halted until continue-request event is fired.
Properties
The details object has following properties:

url (string)- Request URL.
headers (string) - Headers to be send.
payload (string) - Message body if the request can carry a body. GET and HEAD request will ignore this property.
method (string) - HTTP method.
promises (array) - An array when the promises must be added
reason (string) - reason of cancelling the event.
auth (object) - an authorization data that will be passed to the transport library (socket-fetch)

response-ready event
Event fired when the transport library finished a request and both request and response object are ready.
Event is fired just before reporting the response to the user.  It can be cancelled but the response won't be presented to the user. The element that cancels the response should take an action that is visible to the user (eg, redirect, chain request etc). This event is synchronous so any async work on the response object won't be possible.
The request and response are Fetch's API Request and Response object. Body from both of the objects can be read only once so any handler that have to read the response / request body have to call body.clone() function that returns new Body object that can be read. If the handler use the body without cloning the object the response won't be reported to the user.
Properties

request (Request) - The request object as defined in the Fetch API spec.
response (Response) - The response object as defined in the Fetch API spec.
isXhr (Boolean) - If not set the element assumes it's true. Indicated if the transport method doesn't support advanced timings and redirects information. See below.
error (Error) - When the request / response is errored (request.ok equals false) then the error object should be set with the human readable message that will be displayed to the user.
loadingTime (Number) - The response full loading time
timings (Object) - HAR 1.2 timings object
redirect-timings (Array) - Array of timings objects with timings of reach redirect. Elements in the array are ordered and each item corresponds to the one in redirects array
redirects (Array) - Array of Response objects. Elements in the array are ordered and each item corresponds to the one in redirects-timings array. Additionally the Response item should have a requestUrl property which corresponds to an URL to which the redirected request went to.
sourceMessage (String) - A source message that has been sent to the server.
auth (Object) - Returned by the transport library auth object

This is now supported by the elements. Next release will contain this flow.


【bug】blade @push('something') not working after I upgrade Laravel 5.2 to 5.2.27 & 5.2.29

This is NOT working after I upgraded:
@push('something')
<script>
...............
</script>
@endpush

But this is working:
@push('something')

<script>
...............
</script>

@endpush

Sorry, It's all working after I clear all views cache...
But I don't know why...

We introduced a bug in 5.2.27 and then fixed it. Going from 5.2.20 or something to 5.2.29 won't require a cache clear, but 5.2.27 to 5.2.29 might do.


Cannot find iot sample panel in extension

HELLO, I follow the steps in "Using an Extension" but find no iot sample panel in extension, could you please tell me how to do ?

I too face the issue. Even the extension loading via command line as mentioned in the documentation is not valid too.

There is no file named omni.code.bat in app folder.
@fuocor @kshivakumar-nvidia any thoughts?

I managed to solve that finally. The omni.iot.sample.panel is in project folder - iot-samples\exts.
Hope this helps.
Now, I am able to playback the animation.


Cleanup example folder

Add train folder and put in training / model saving scripts for each of the tasks

Merged reorganizing_examples branch into dev branch


Revert "Add a paragraph about default construction"

Reverts dlang/dlang.org#2642
See: https://github.com/dlang/dlang.org/pull/2642#issuecomment-492585252

What is disabled is the use of the "struct literal" syntax. Default constructor is the constructor with zero parameters. It can only be disabled by the user and is not something generated by the compiler as it can't have a body.

@RazvanN7 It would be better if I directly corrected the paragraph, but I don't have time at the moment. Please follow through with a corrected one later.


Release Google.Cloud.Dialogflow.Cx.V3 version 2.17.0

Changes in this release:
New features

Change netstandard2.1 target to netstandard2.0 (commit 82bea85)

Created release for Google.Cloud.Dialogflow.Cx.V3-2.17.0


fix: URL regex for deno.land/x modules

Should fix broken documentation links for modules with numeric digits in their names.
Currently only a-zA-Z_ is permitted in the code, but the registry allows modules with names like https://deno.land/x/911 to be registered.
Thanks!

@kt3k I updated the pattern and also removed an unnecessary ? on the version subgroup.
Thanks for your review!


Option to move keybinds into regular keybinds UI

I would like to see an option to move the keybinds into the vanilla keybind UI so that it can be used with Controlify and other mods that rely on the regular keybinds system.

EMI cannot do this, its keybind system is much more advanced than vanilla, each input can have multiple binds, it uses modifier keys, it supports layering binds intelligently rather than conflicting, and more.


ESLint Rule to disallow dynamic styles that could be represented as conditional styles

StyleX provides an API to define dynamic styles for the few edge-cases where the value or possible values of a style cannot be known statically when the code is being authored.
This means that values of dynamic styles has to be dynamically computed at runtime and a given set of possible values cannot be known ahead of time.

The Task
There should be an ESLint rule that detects and disallows abuses of dynamic styles when static styles can be applied conditionally instead.
Here's a few possible patterns that should be disallowed:
A dynamic styles where the argument is a boolean
const styles = stylex.create({
  root: (isHovered) => ({
    color: isHovered ? 'grey' : 'black',
  }),
});

This dynamic style can be expressed as conditional styles instead:
const styles = stylex.create({
  root: {
    color: 'black',
  },
  rootHovered: {
    color: 'grey',
  },
});

<div {...stylex.props(styles.root, isHovered && styles.rootHovered)} />

When the dynamic style function is always invoked with a static value
There may be a dynamic style function that is truly dynamic, however, if it is known to always be used locally with static values, then the dynamic style should be replaced with those static styles instead.

Could this become an automatic compiler optimization for functional style rules? It would be aligned with where UX/DX perf optimizations are heading with React. The function syntax is quite nice, even for conditional styles that might not be dynamic.
If the function rule is used in the same file where it's defined...
const styles = stylex.create({
  root: (isHighlighted) => ({
    color: isHighlighted ? 'grey' : 'black',
  })
});

function Foo() {
  return <html.div style={styles.root(isHighlighted))} />
}

It would ideally be transformed to the same output as the "conditional" syntax:
const styles = {
  root: {
    $$css: true,
    color: 'xdjwem',
  },
  root_isHighlighted: {
    $$css: true,
    color: 'xpqemf',
  }
});

function Foo() {
  return <html.div style={[ styles.root, isHighlighted && styles.root_isHighlighted  ]} />
}

The function rule could be defined in one file and used in another.
import { menuStyles } from './styles'

function Menu() {
  return <html.div style={menuStyles.root(isExpanded)} />
}

And potentially "memoized" to class names in many cases.
const memoizedStyles = {
  root: {
    $$css: true,
    color: 'xdjwem',
  },
  root_isExpanded: {
    $$css: true,
    color: 'xpqemf',
  }
});

export const menuStyles = {
  root: (isExpanded) => isExpanded ? memoizedStyles.root_isExpanded : memoizedStyles.root
});

Using the function rules this way is currently discouraged, but if the compiler could make it more efficient, it could be quite an ergonomic API for libraries using StyleX.

Could this become an automatic compiler optimization for functional style rules?

To some extent yes. I'm currently thinking through the patterns that could be detected and optimised.
Some half-formed thoughts:

The last example you shared, where the function is preserved with "memoized" objects that are hoisted out is fairly achievable
It would work best when all styles within the function are conditional. A mix of conditional and "truly dynamic" styles would be problematic.
We would need to detect the number of possible conditions used within the function, as too many conditions within the same function optimised would lead to a combinatorial explosion of code.

When optimising stylex.props with statically known styles, we bail out after 4 conditions.

Breaking conditional declarations out into individual rules and would avoid combinatorial complexity. It's just like what you'd do by hand if required to manually convert it to the existing "conditional styles" pattern

Yeah, that's a great idea and it's something that should be doable without a huge refactor. Let me create a new issue for this.


Separate Latin Language from Spanish

Good morning again,
Sorry to write another issue, I do not like to give work to developers but yesterday I was testing Comet configured with the language “Spanish” and most of the results that appeared with the flag of Spain really the audio is Latin 🇲🇽. I was looking at the name of the torrents and in most of them it says LATINO.
I know this is a delicate issue and many torrent sites classify the latin torrents as Spanish, but if you could do something to solve this problem our community would be very grateful.
In case it is a complicated task I can think of two possible solutions to reduce the results, although I don't know if these solutions are feasible.
1º) In the Spanish language Remove the results of the provider “Cinecalidad” since all of them are in Latin.
2º) Use regular expressions in the name of the torrent and thus filter it, if it takes “SPA” to appear in the results of Spanish, if it takes “LATINO or LATIN” to appear in the Latin language.
Thank you very much for such a great Addon and its public hosting.

@dreulavelle what do you think about that?

I can see what I can do. What exactly are you looking for though? Differentiating Spanish from Latin?

Oh I see, just need to separate the Latino rehex from the Spanish one. That's an easy fix.
I can add the group you mentioned to for Spanish as well

To help me improve the regex, torrent titles help me the most! If you have other issues, please be sure to include a snippet of torrent names and the desired result. Then I can add changes and create tests to ensure everything is working beautifully.  :)

Nice to meet you @dreulavelle, indeed my idea is to separate the two languages, Spanish (🇪🇸) and Latin (🇲🇽), this way the people who want to use Comet to see content in Latin will select the flag “🇲🇽” and the Spaniards who want to see the content in Spanish will choose this “🇪🇸”. Next I am going to put you some of the regular expressions used by the creators of the torrent titles.
Spanish(🇪🇸): Esp, esp, Spa, spa, SPANISH, SPANiSH, Spanish, spanish
Latino(🇲🇽): Lat, lat, LATINO, Latino, latino, latino, LATIN, Latin, latin.
In principle there are no more options, thank you very much for taking into account this annoying error, thanks to these changes to the Spanish community will only appear results in our language and Latinos in theirs. I will be attentive to the changes in case I missed something.
Thanks guys!

Isn't latin its own language thats separate from latino ?

Alright, this has been fixed! :)

Ah shit.. lol just noticed you mentioned mx as the language code.. and I used la haha.. will fix! 😅

Thank you very much @dreulavelle, this is a great change for our community, when @g0ldyy applies the changes I will do some tests to study how it works and if any latin torren escapes.
"Isn't latin its own language thats separate from latino ?" Yes, the latin and the latino are diferents lenguages, but sometimes the torrents creatos use this name to refer to latino idiom

Thank you very much @dreulavelle, this is a great change for our community, when @g0ldyy applies the changes I will do some tests to study how it works and if any latin torren escapes.
"Isn't latin its own language thats separate from latino ?" Yes, the latin and the latino are diferents lenguages, but sometimes the torrents creatos use this name to refer to latino idiom

https://github.com/g0ldyy/comet/commit/24216678b8fca0ab8edd48d239fb772f06712b5f 👀

Thank you very much @dreulavelle, this is a great change for our community, when @g0ldyy applies the changes I will do some tests to study how it works and if any latin torren escapes.
"Isn't latin its own language thats separate from latino ?" Yes, the latin and the latino are diferents lenguages, but sometimes the torrents creatos use this name to refer to latino idiom

https://github.com/g0ldyy/comet/commit/24216678b8fca0ab8edd48d239fb772f06712b5f 👀

Thank you very much and very funny the emoji representing the "Latino" language 😂😂💃.
Could you upload the mods to the free elfhosted stay so I can test it. Thanks.

Thank you very much @dreulavelle, this is a great change for our community, when @g0ldyy applies the changes I will do some tests to study how it works and if any latin torren escapes.
"Isn't latin its own language thats separate from latino ?" Yes, the latin and the latino are diferents lenguages, but sometimes the torrents creatos use this name to refer to latino idiom

2421667 👀

Thank you much @g0ldyy , and very funny the emoji representing the "Latino" language 😂😂💃.
Could you upload the mods to the free elfhosted stay so I can test it. Thanks.

done, added to the public instance :)

@

Alright, this has been fixed! :)

Good again @dreulavelle, I forgot to put you 2 regular expressions used in Spanish torrents, these are:  Castellano, castellano.
Thank you very much for your work.


Math Magicians: tests

In this milestone of the project, we did the following:

Added tests to the Math Magicians app using Jest and React Testing Library.
Wrote unit tests for the files operate.js and calculate.js using Jest.
Created unit tests for all React components.
Used Jest snapshots to test the components.
Used React Testing Library to simulate user interaction.

@roshan-bajgain, thank you very much for the approval of the PR, sir. May you perhaps clarify more on what I should remove, I did not get your point well.

Hello @WilhelmK109, In your README file there is a live demo heading that is not deployed so if you do want not to deploy the app then please remove it from README. I think you got it, I am sorry for not making you understand.

@roshan-bajgain, Okay sir, I now understand. I will deploy the project and update the readme file. Thank you once more again.


Add std.algorithm submodules to navbar.

Apparently one of the recent PR's accidentally overwrote the new std.algorithm submodules in phobos-prerelease's navbar. Note that this PR only affects phobos-prerelease, the current release still has the original unsplit std.algorithm without submodules.

Regression introduced in b63b8e1383658f70e52f2629e09c653981447392

Thanks!

std.csv is also gone (from both menus)

https://github.com/D-Programming-Language/dlang.org/pull/846

Quick indeed :P

:-)


Can't Connect Account to Vessel Wallet

When I launch Vessel and try to connect my Steemit account to it, after I enter all my information and press the green button, it just loads forever and nothing happens.  I've tried it again and again multiple times and it always just gets stuck with the loading circle thing.  Is there anything I can do to fix this and get past that?

same problem here.
I used "toogle developer tool" with the following result:

bundle.js:359  action SET_PREFERECE @ 19:52:05.559
bundle.js:1 Unhandled rejection Error: unexpected server response (200)
at ClientRequest._req.on (file:///C:/Users/USUARIO/AppData/Local/Programs/vessel/resources/app.asar/dist/bundle.js:359:1164502)
at emitOne (events.js:96:13)
at ClientRequest.emit (events.js:191:7)
at HTTPParser.parserOnIncomingClient [as onIncoming] (_http_client.js:522:21)
at HTTPParser.parserOnHeadersComplete (_http_common.js:99:23)
at TLSSocket.socketOnData (_http_client.js:411:20)
at emitOne (events.js:96:13)
at TLSSocket.emit (events.js:191:7)
at readableAddChunk (_stream_readable.js:178:18)
at TLSSocket.Readable.push (_stream_readable.js:136:10)
at TLSWrap.onread (net.js:560:20)
Ke @ bundle.js:1

Vessel v0.27
sorry for my bad english, im spanish

@GATOQSECOMIO - I believe in this case it was again the remote server being offline. If you were using wallet.steem.ws or anything related to that, it had a brief outage right around the time you reported this. Is all working again I assume?


@angular-devkit/build-angular package doesn't reflect master

🐞 Bug report
Command (mark with an x)

- [X] build
- [X] serve

Description
https://github.com/angular/angular-cli/blob/master/packages/angular_devkit/build_angular/src/angular-cli-files/models/jit-polyfills.js
References
import 'core-js/proposals/reflect-metadata';

However, my installed version (on a clean node modules) shows
import 'core-js/es7/reflect';

This code was updated approx 6 weeks ago in master, yet is still not published on a recent release to npm,
🔬 Minimal Reproduction
Install latest package, view installed polyfill
🔥 Exception or Error

ERROR in<EMAIL_ADDRESS>Module not found: Error: Can't resolve 'core-js/es7/reflect' in '/home/luke/nodejs/ecom2/ecom2-frontend/node_modules/@angular-devkit/build-angular/src/angular-cli-files/models'
ℹ ｢wdm｣: Failed to compile.

🌍 Your Environment

@angular-devkit/architect         0.13.9
@angular-devkit/build-angular     0.13.9
@angular-devkit/build-optimizer   0.13.9
@angular-devkit/build-webpack     0.13.9
@angular-devkit/core              7.3.9
@angular-devkit/schematics        7.3.9
@angular/cli                      7.3.9
@ngtools/webpack                  7.3.9
@schematics/angular               7.3.9
@schematics/update                0.13.9
rxjs                              6.5.2
typescript                        3.1.3
webpack                           4.29.0

Hi, support for core-js version 3+ has been added in version 8 https://github.com/angular/angular-cli/releases/tag/v8.0.0-beta.13
Also, kindly note that the current master is for version 8.1
Related issue: https://github.com/angular/angular-cli/issues/13954


Run javascript with keyword "await" by function "chromedp.Evaluate"

Run javascript with keyword "await" by function "chromedp.Evaluate"
can't get the result
remove  keyword "await" is ok
What versions are you running?
$ go list -m github.com/chromedp/chromedp
github.com/chromedp/chromedp v0.7.8

$ google-chrome --version
Google Chrome 97.0.4692.99

$ go version
go version go1.17.3 linux/amd64

What did you do? Include clear steps.

docWidthBuf := []byte{}
pageURL := "https://www.xxxx.xxx"
runJS(pageURL, &docWidthBuf)

func runJS(urlstr string, docWidthBuf *[]byte) chromedp.Tasks {
	return chromedp.Tasks{
		chromedp.Navigate(urlstr),
		chromedp.Sleep(5 * time.Second),
		chromedp.Evaluate(`span=document.createElement("span");  span.innerText="1320";  await span.innerText;`, &docWidthBuf, func(p *runtime.EvaluateParams) *runtime.EvaluateParams {
			return p.WithAwaitPromise(true)
		}),
	}
}

What did you expect to see?
[215 125 180]
What did you see instead?
[]

Why do you want to await a non-async operation?

That‘s only example
I need call async method in my project
if ignore the result, coding like follow:
chromedp.Evaluate(async-javascript, nil)

it works, but i want to get the async-javascript result

Okay, you should not call await in the javascript expression; instead, just return the promise, and runtime.Evaluate will await it.
If the promise is the last statement in the expression, you can simply return it:
package main

import (
	"context"
	"log"

	"github.com/chromedp/cdproto/runtime"
	"github.com/chromedp/chromedp"
)

func main() {
	// disable headless mode to make it easy to see what happen
	ctx, cancel := chromedp.NewContext(context.Background(), chromedp.WithDebugf(log.Printf))
	defer cancel()

	js := `new Promise((resolve) => setTimeout(() => resolve("value to return"), 1000));`

	var result string
	if err := chromedp.Run(ctx,
		chromedp.Evaluate(js, &result, func(p *runtime.EvaluateParams) *runtime.EvaluateParams {
			return p.WithAwaitPromise(true)
		}),
	); err != nil {
		log.Fatal(err)
	}

	log.Println(result)
}

If you have to call await yourself and do something afterward, you can wrap it in a function:
async function wrapper() {
  await new Promise((resolve) => setTimeout(resolve, 1000));
  return "value to return";
}
wrapper();

Okay, you should not call await in the javascript expression; instead, just return the promise, and runtime.Evaluate will await it.
If the promise is the last statement in the expression, you can simply return it:
package main

import (
	"context"
	"log"

	"github.com/chromedp/cdproto/runtime"
	"github.com/chromedp/chromedp"
)

func main() {
	ctx, cancel := chromedp.NewContext(context.Background(), chromedp.WithDebugf(log.Printf))
	defer cancel()

	js := `new Promise((resolve) => setTimeout(() => resolve("value to return"), 1000));`

	var result string
	if err := chromedp.Run(ctx,
		chromedp.Evaluate(js, &result, func(p *runtime.EvaluateParams) *runtime.EvaluateParams {
			return p.WithAwaitPromise(true)
		}),
	); err != nil {
		log.Fatal(err)
	}

	log.Println(result)
}

If you have to call await and do something afterward, you can wrap it in a function:
async function wrapper() {
  await new Promise((resolve) => setTimeout(resolve, 1000));
  return "value to return";
}
wrapper();

And please note that your code snippet is incorrect. runJS just returns a slice of task. It does not run the tasks. If you run the tasks, please don't ignore the error. In fact, it will return the following error if you call await directly:
exception "Uncaught" (0:0): SyntaxError: await is only valid in async functions and the top level bodies of modules

Thank u very much, It's working for me

chromedp.Evaluate

execuse me, how can I get the response header(I want to get the return cookies in the header) after chromedp.Evaluate()?  Thanks

@myfirst-crypto Please file a new issue and fill the issue template.


"pip install x" might work or not

warehouse tries to be helpful by displaying "pip install <projectname>" + copy to clipboard link.
i am not sure this really helps or is even needed. everybody who uses python not for the first time will know that command. in that case it is just waste of screen space.
worse, some packages are not just "pip install"able, but have requirements which should be documented in their documentation.
for them, you might do the developers a disservice by giving not working install instructions and causing support traffic like "i did pip install x like pypi said, but it did not work" (because e.g. build requirements were missed).
if you would not give them, users might rather look into the official docs to find the really working install instructions.

It's also generally better to do python -m pip install <projectname> rather than pip install <projectname>, to make sure you know which interpreter you're installing for:

https://snarky.ca/why-you-should-use-python-m-pip/

I had a support issue this week where they had pip and python pointing to Python 2.7, pip3 pointing to 3.7, and python3 pointing to 3.8, and they were confused why pip3 install didn't work for their python3 script.

#1563 is related (to the python -m comment, not the original purpose of this ticket).

I think that pip install <package> should be removed entirely.
In addition to the OP's comments, you don't know whether the person running that command wants to demo the package, install it for developing a project, or wants to contribute to the package's development. One command to rule all those scenarios, and possibly others, will never happen. This is best covered by the package's README and other documentation.


⚠ Spryr has degraded performance

In 1b18b8d, Spryr (https://spryr.com) experienced degraded performance:

HTTP code: 200
Response time: 6309 ms

Resolved: Spryr performance has improved in f163ca6 after 11 minutes.


Identify machine-readable source of open licences

See https://discuss.okfn.org/t/is-there-a-machine-readable-list-of-open-licences-and-urls/5503
and https://github.com/okfn/opendefinition/issues/7
See also http://opendefinition.org/licenses/ perhaps limit drop down list to Recommended conformant licenses

 Identify list of open source licences

https://github.com/okfn/licenses/pull/57

Using this code until above is fixed https://github.com/ODIQueensland/data-curator/blob/develop/src/renderer/components/DataPackage.vue#L20

okfn/licenses#57 is ready. Only need licences from https://github.com/okfn/licenses/blob/master/licenses.csv with:
"domain_data": true,
"od_conformance": "approved",
"status": "active",

At the moment licences are hard coded in https://github.com/ODIQueensland/data-curator/blob/master/src/renderer/partials/Licenses.vue
When the is a reliable source of open data licences to access, consider importing the data from there.


Update buildpack.toml with valid metadata.

The sample hello-world-buildpack no longer seems to work with pack 0.0.9. It looks like the buildpack.toml is no longer correct. This PR has the update I needed to make it work on my machine w/pack 0.0.9.

Unfortunately it seems like this PR has become outdated.
We apologize for not getting to you sooner.  😞


First HUD display always has no background

Weird stuff, the first HUD that I show always has no background, but every subsequent HUD has one according to the appearance I've set in my app delegate. Using latest head.
Thanks!

Do you have any idea how to reproduce this issue? I have the HUD in multiple apps with the current head and also the demo project. Here, everything seems to be OK.

Calling:
        SVProgressHUD.setDefaultStyle(SVProgressHUDStyle.Light)
        SVProgressHUD.setDefaultMaskType(SVProgressHUDMaskType.Black)

in didFinishLaunchingWithOptions, then normally displaying HUD like that:
SVProgressHUD.showWithStatus(t("status.loading"))

Hi, can not reproduce your issue when using the demo project and the instructions provided. However, you are using Swift, the demo is ObjC ... even though i don`t think this is the problem.

I think there is a difference in some loading priority with Swift vs Objective-C, might have to spin a demo project

@honkmaster Alright, just created a demo project that shows 2 issues, you can download it here: https://dl.dropboxusercontent.com/u/7817397/SVProgressHudTest.zip

the HUD is not taking any into account any appearance that is set in the App Delegate or in the viewDidLoad. I can get it to work if I comment the two setDefaultStyle lines in AppDelegate and add them just before the show in viewDidLoad. The weird thing is if you don't remove the two setDefaultStyle lines in App Delegate, it won't work!

The HUD won't show up at all if you try to display it in viewDidLoad

If you need more assistance, don't hesitate!
Thanks!

@honkmaster I built a wrapper class which calls the appearance methods before each time I show a HUD (this seems like a good temporary fix):
class ProgressHUDManager {

    class func initStyles() {
        SVProgressHUD.setDefaultStyle(SVProgressHUDStyle.Light)
        SVProgressHUD.setDefaultMaskType(SVProgressHUDMaskType.Gradient)
    }

    class func dismiss() {
        SVProgressHUD.dismiss()
    }

    class func loadingStatus() {
        genericStatus(t("status.loading"))
    }

    class func savingStatus() {
        genericStatus(t("status.saving"))
    }

    class func uploadingStatus() {
        genericStatus(t("status.uploading"))
    }

    class func signInStatus() {
        genericStatus(t("status.signin.signing_in"))
    }

    class func thanksInterestSuccess() {
        genericSuccessWithStatus(t("status.thanks_interest"))
    }

    class func savedSuccess() {
        genericSuccessWithStatus(t("status.saved"))
    }

    class func savedCommentDocument() {
        genericSuccessWithStatus(t("status.comments.document_saved"))
    }

    class func signInError() {
        genericError(t("status.signin.error"))
    }

    class func signInFacebookError() {
        genericError(t("status.signin.facebook_error"))
    }

    class func serverError() {
        genericError(t("status.server_error"))
    }

    class func validationError(error: JSON) {
        genericError("TODO: Show the error")
    }

    class func authTokenError() {
        genericError(t("status.auth_token_error"))
    }

    class func signInUnconfirmedInfo() {
        genericInfoWithStatus(t("status.signin.unconfirmed_info"))
    }

    class func myRequestConfirmInfo() {
        genericInfoWithStatus(t("status.my_requests.confirm_info"))
    }

    class func availabilityListConfirmInfo() {
        genericInfoWithStatus(t("status.availability_list.confirm_info"))
    }

    class func genericInfoWithStatus(message: String) {
        initStyles()
        SVProgressHUD.showInfoWithStatus(message)
    }

    class func genericSuccessWithStatus(message: String) {
        initStyles()
        SVProgressHUD.showSuccessWithStatus(message)
    }

    class func genericStatus(message: String) {
        initStyles()
        SVProgressHUD.showWithStatus(message)
    }

    class func genericError(message: String) {
        initStyles()
        SVProgressHUD.showErrorWithStatus(message)
    }

}

The issue for 2. (viewDidLoad) is that [UIApplication sharedApplication].keyWindow is nil and therefore we can not get the dimension for the view. I try to fix this now. After this I will tackle the rest.

@honkmaster Cool keep me posted if you need help with something (tests, etc.)!

I can confirm this simply doing
SVProgressHUD.show()
SVProgressHUD.dismiss()
SVProgressHUD.show()

Give me the correct "theme" set in app delegate. Doing the first call SVProgressHUD.show() results in an unstyled "default" HUD.

@maqen Yeah, I thought of doing this, but too hackish for me :P

+1 Seeing the same issue

you have to set appearance before show

@sagarsurani That does not fix the issue for me.

@honkmaster Did you fix this in the latest beta? Do you want me to check on my side?
thanks!

I implemented the Solution for the problem I identified earlier (where the keyWindow is nil). Should be fixed, please verify.

@honkmaster According to my project this is now working great. So I guess #2 also fixed the styling issue that was not working on first HUD shown? Care to point to the commit which fixed the issue?
Will close this one, thanks!

This commit fixed the issue: https://github.com/TransitApp/SVProgressHUD/commit/b4a62cde8c7122a6a0fdee62a3bae690f49ea914

@honkmaster Ah, roger that. From what I see here http://stackoverflow.com/questions/21698482/diffrence-between-uiapplication-sharedapplication-delegate-window-and-u the difference is pretty vague between keyWindow and delegate, care to explain why it changes something in SVProgressHUD's case?

The keyWindow is nil if makeKeyAndVisible was not called before => The HUD thus had no idea about what frame to use. However, the delegate window is set even before the app is startet and represents the context in which the app is displayed. They are the same AFTER the app has launched.

Makes sense thanks!

@honkmaster Oh and while I have you here (and to avoid opening an already fixed issue). I noticed that sometimes (not always), some of my HUDs were dismissing really really fast. I know some mechanics was added to take into consideration the text length, maybe at some point this was not working correctly?
It seems better now that I updated to 2.0 though!
Thanks for all your time!

The mechanics therefore are in place for several years, we just recently added a function to set the minimum display time. Nothing was really changed here.

@honkmaster Ah alright, maybe it was some weird glitch! thanks


Unhandled exception at ArDrive Login Password prompt

Unhandled exception ENETUNREACH, firing if network connection is not present when entering the login prompt.

This is an issue relating to the legacy CLI, now labeled "ArDrive-Sync" and moved here https://github.com/ardriveapp/ardrive-sync It is an alpha product, and not in support at this time.


[bug] Inline code error inside tables

Inline code (single backticks) does not work inside tables. Switching to another file and then switching back will fail to open the file and produce the notice Failed to load "Lorem Ipsum.md". Cannot read properties of null (reading 'vaultPath').

This plugin doesn't interact with inline code. Try disabling the plugin and try again. If the error persists this plugin has no relevance for the error.
If you are sure that this plugin is at fault please give me more information. Otherwise close the issue.

I will look into this. The plugin shouldn't interact with inline code.

Solved in Release 0.10.0.
Do not hesitate to reopen this issue or open another one if more problems occur.


Fixed Remove-DbaAgentSchedule fixes #1601

Fixed issue with using wrong parameter with Stop-Function calls
Changed the proces of the schedule removal. It will now allow removing
multiple schedules instead of just one.

Reviewing the recent changes.
Do you mean to remove the schedule even if it is related to a job?  This example there were two of the same schedule associated to the same job and it removed both.
Should that be with -force?  I know we did something similar for my situation last week, just was not sure if that was the default behavior you wanted.

yo @sanderstad - can you take a look when you get a minute?

I changed a lot in the code and I had to struggle a little to make sure it worked the same way it did before.
What the function does is check how many jobs are connected to the schedule. If this is more than one, and -Force is not being used, the function will error out saying you need the -Force parameter.
If there are is more than one job connected and -Force is being used the function will iterate through each of the jobs and remove the schedule.
What happened in your situation was that it was the other way around. You had one job with multiple schedules with the same name. You can have duplicate names and SQL Server accepts that because the uniqueness is in the schedule ID.
So what I did for that situation is combining the if statement to check whether there are more jobs with -Force or if the job count was equal to 1. It will iterate through the job, in your case iterate the same job lots of times and remove the schedule.
To make sure that schedules without jobs would also be removed I also select the schedules with the same name that have no jobs attached and iterate through the result to remove them. Because they're not attached to a job there will be no errors like in the other scenarios with attached jobs.
In theory not a lot of things changed in the behavior. Technically it works totally different and the procedures to remove the schedules are cleaner and easier to follow.

k so good? 😆


Sync automation

Added github action for updating the master branch without replacing dockerfiles

Workflow will automatically merge the upstream formant master branch and then overwrite the dockerfiles and config.json so that they do not get changed by the merge. AKA this will now keep us up to date automatically without changing the necessary parameters for our dockers.

Also settings for git action permissions will need to be modified in the repo so that the action is able to push code.


HDRP version

Hi, How would I change the masternode for this to work in HDRP?  Sorry complete novice when it comes to ShaderGraph

I haven't checked this in HDRP yet but it should be simple enough.
You can open the shadergraph in an HDRP project, and then add a Lit Master node. The connections, and other unconnected values to this node should be the same as the ones for URP's PBR master node. Right click on the new master node and set it to active and it should work.

Hi, How would I change the masternode for this to work in HDRP?  Sorry complete novice when it comes to ShaderGraph

I haven't checked this in HDRP yet but it should be simple enough.
You can open the shadergraph in an HDRP project, and then add a Lit Master node. The connections, and other unconnected values to this node should be the same as the ones for URP's PBR master node. Right click on the new master node and set it to active and it should work.

Thanks that worked :)


serde derives

Unless this crate needs to remain exactly as-is to be added to std, I believe that serde derives for Serialize and Deserialize should be added behind a feature gate. This would be quite helpful in my case where I have a data structure that abstracts over both packed_simd primitives and some normal numbers, but only implements those traits if the type it contains also implements them. I could create wrapper types around packed_simd, but I want to see if this would be accepted upstream first.

Hello. I'm a member of the new Portable SIMD Project.
Going forward, the project group will be developing a stdsimd crate, which will be eventually be stabilized within the standard library under core::simd and std::simd. The design of stdsimd will likely be similar to the packed_simd crate in terms of practical usage, but there will inevitably be small changes in the transition.
Of course, this will take quite a bit of time to develop and stabilize. Accordingly, the project group will take over maintenance of the packed_simd crate, and we will at least ensure that it keeps building.
Broadly speaking, we are not planning to develop packed_simd any further. It should be considered to be in long-term maintenance mode, and when stdsimd is eventually stabilized then packed_simd will become completely deprecated.
At that time, serde will be able to add impls for the new SIMD types the same as it has impls for other core types like f32 and i64 and such.

We're trying to triage the issues a bit, so I'm going to close this. For more questions, you can post to the Portable SIMD Project Group Zulip. If you've never used the zulip before it'll ask you to log in, but you can sign in with your GitHub account, so you don't need to do any new account setup stuff.


Feature Request: Automatically detect new versions of policies and update charts

Is your feature request related to a problem?
We ship a list of policies in kubewarden-defaults. Right now, we are manually bumping their versions in the values yaml.
Solution you'd like
Write an updatecli to detect new versions of the policies wasm modules (with resource docker image) and open a PR updating the versions used in the Helm charts.
Alternatives you've considered
No response
Anything else?
No response

Closed in favour of https://github.com/kubewarden/helm-charts/issues/388


Setting important to a class breaks pseudo selectors

Proof of concept, I can clean up if this is a feature/bug we want to fix/add.
this would resolve:
https://github.com/tailwindcss/tailwindcss/issues/1445 and https://github.com/tailwindcss/tailwindcss/issues/1334

Hey thanks for raising this again, right now this is just not supported by design, the feature is really only meant to be used with IDs currently (since the goal is to raise specificity, not to scope things).
I've pushed an update to explicitly forbid including classes in the important option to help people avoid running into this:
https://github.com/tailwindcss/tailwindcss/commit/ad850ac49128dfcc292f0025c8c42f26bc26c735

Thanks for the quick reply! We weren't using it for scoping, but only to be slightly more specific. We have a scenario where we have legacy styles like this that are being overridden by tailwind
 because an id #td is to specific. Conversely we have some styles like this
 that we need to override. Using an important class .td solves our issue, but we can work around if implementing that would cause other problems. Also, thanks for Tailwind! Its been great to work with so far!

Ah gotcha! What would be the issue with using an ID instead of a class in your case?

For some background, we're gradually adopting tailwind alongside a bunch of older CSS. In the first image above the tailwind class #td .table is more specific than our legacy CSS and is breaking some layouts. But when we use a class for important .td .table yields to existing CSS
 . But we don't want to leave important set to false because we have a decent amount of legacy CSS that uses attribute selectors that we want tailwind to override:
. Granted our situation is highly specific (pardon the pun) but there are some legit use cases for being able to use a class for important to 'dial in' the specificity to match an existing codebase's needs.

granted we'd need more than a hardcoded string if (sel.value === 'app') return to fix the issue, the config would need to passed into this function an we'd compare against the configured important class name (if it's a class and not a boolean or id.....). But from the little bit of testing I've done (also all the automated tests passed) this doesn't seem to break many things.


[Question] How to spawn a (nix-shell) process ?

Hi,
I can't figure out how to spawn a (nix-shell) process within a Turtle script.
So something like
proc "nix-shell" [nix_file] empty

Any idea ?
Thanks for your help.

What's the error that you get?

I have got a strange:
→ pep console prod
Invalid argument `*'

Orchestration command line utility

Usage: pep (console | ping)

Available options:
  -h,--help                Show this help text

Available commands:
  console                  Open the specialized salt console
  ping                     Ping your nodes

with the following program:
module Main where

import Turtle

projectDir = "/home/vagrant/projects/cicd/salt/salt-shell"

data Command
  = Console Text
  | Ping (Maybe Text)
  deriving (Show)

parser :: Parser Command
parser
  = Console <$> (subcommand "console" "Open the specialized salt console"
                (argText "zone" "ZONE such as dev, staging, testing or prod"))
  <|> Ping <$> (subcommand "ping" "Ping your nodes"
               (optional (argText "stack" "Name of a stack")))

nixCommand :: Text -> IO ()
nixCommand zone = do
  let nix_file = format (s%"/"%s%".nix") projectDir zone
  void $ proc "nix-shell" [nix_file] empty

run (Console zone) = nixCommand zone

run (Ping (Just x)) = printf ("Ping "%s%" stack\n") x
run (Ping Nothing) = printf ("Ping default stack\n")

main :: IO ()
main = options "Orchestration command line utility" parser >>= run

I cannot reproduce the problem.  I had to add a {-# LANGUAGE OverloadedStrings #-} to your program, but then it parsed the command line correctly:
$ stack runghc test.hs -- --help
Run from outside a project, using implicit global project config
Using resolver: lts-6.3 from implicit global project's config file: /Users/gabriel/.stack/global-project/stack.yaml
Orchestration command line utility

Usage: test.hs (console | ping)

Available options:
  -h,--help                Show this help text

Available commands:
  console
  ping
$ stack runghc test.hs -- console prod
Run from outside a project, using implicit global project config
Using resolver: lts-6.3 from implicit global project's config file: /Users/gabriel/.stack/global-project/stack.yaml
error: getting status of ‘/home/vagrant/projects/cicd/salt/salt-shell/prod.nix’: No such file or directory

However, that was using an older version of turtle.  What version are you currently using?

I am using the latest ,1.3.0 version

As a note, I know that if the nix  file is not found it does indeed print the same exact error you show.

I still cannot reproduce the problem using master
It sounds like this is not a problem with the script you pasted, but rather a problem with the /home/vagrant/projects/cicd/salt/salt-shell/prod.nix script that it is in turn calling.  Is that a turtle script, too?  Is that a turtle script, too?

I just know it works if I simply do nix-shell /home/vagrant/projects/cicd/salt/salt-shell/prod.nix
So I have tried to simply do   "void $ shell "nix-shell -p python" empty" instead.
No error but it does not drop me into the shell ?

This sounds very similar to https://github.com/Gabriel439/Haskell-Turtle-Library/issues/33
Try using the same solution from that issue, which is to wrap the nix-shell command in exec

I am not sure if that is what you mean but I have tried:
void $ shell "exec nix-shell -p ruby" empty without success. I have also tried:
run (Console zone) = do
  void $ shell "nix-shell -p ruby" empty
  let cp = (Process.proc "bash" [])
            { Process.std_in  = Process.Inherit
            , Process.std_out = Process.Inherit
            , Process.std_err = Process.Inherit
            , Process.delegate_ctlc = True
            }
  (_, _, _, ph) <- Process.createProcess cp
  void $ Process.waitForProcess ph

but no luck either

Just to summarize the minimal code I am trying to run is:
main = void $ shell "nix-shell -p ruby" empty

And I would like to be dropped in a nix-shell.
If I have get this first step right, I will go and try to use a xxx.nix file.
To put the use case in context I am trying to replace a bunch of zsh aliases (that spawn a interactive nix shell or execute some commands within such a shell) with an more friendly executable. I also need to do a bunch of sanity check that gets quickly messy in a shell script.

@PierreR If you want to use Turtle to provide a shell, you'll actually have to build a minimal shell within Turtle and proxy the commands to a process that started.

@3noch well in that case, I guess the easiest is to keep using some bash functions. That's a bit sad. Note that I don't need to interact with the nix-shell process whatsoever. All I want is to provide an utility command line, do some sanity check or initialization using some shell scripts, then spawn a nix-shell command.
So I just want to replace something that looks more or less like this (currently in a broken state):
check_zone () {
    if [ -z "$1" ]; then
        echo "Expect a zone like prod, staging, dev";
        return 1;
    fi
    echo "$1"
}

_salt-shell-cmd () {
    local zone=$(check_zone $1)
    local project_dir="$HOME/projects/cicd/salt/salt-shell"
    local cmd="$2"
    pushd $project_dir
    if ! [[ -f "${zone}.nix" ]]; then
        ./set_env.nix
    fi
    if [ -n $cmd ]; then
        nix-shell "${zone}.nix" --command "$cmd"
    else
        nix-shell "${zone}.nix"
    fi
    popd
}

pep-repl () {
    _salt-shell-cmd
}
pep-ping () {
    _salt-shell-cmd "ping"
}

@PierreR Oh it looks like @Gabriel439 may have a neat solution in #33. @Gabriel439 I would personally love to have an interactive function so that I build augmented shells with Turtle more easily.

@3noch well I have already tried it like this:
main :: IO ()
main = do
    void $ shell "nix-shell -p ruby" empty
    let cp = (Process.proc "bash" [])
            { Process.std_in  = Process.Inherit
            , Process.std_out = Process.Inherit
            , Process.std_err = Process.Inherit
            , Process.delegate_ctlc = True
            }
    (_, _, _, ph) <- Process.createProcess cp
    void $ Process.waitForProcess ph

but without success

I don't understand why you would run nix-shell and then bash. The bash instance will most certainly not have any nix dependencies.

@3noch Well I really don't understand what I am doing there. I am just mimicking #33. What is your proposition ?

@3noch Ok I finally understand what I was supposed to do with #33 I need to replace "bash" with "nix-shell" ;-)
I will try to go from there and see. Thans for your input.

Yah I'd expect that to go better.

@Gabriel439 so #33 has been working nicely for me:
interactive :: Text -> IO ExitCode
interactive c = do
    let
      c' = Text.unpack c
      cp = (Process.shell c')
            { Process.std_in  = Process.Inherit
            , Process.std_out = Process.Inherit
            , Process.std_err = Process.Inherit
            , Process.delegate_ctlc = True
            }
    (_, _, _, ph) <- Process.createProcess cp
    Process.waitForProcess ph

Shall I close this issue ? Do you think you will add something alike in Turtle.

I think in this case it's probably best to use the process library directly since turtle doesn't really provide any specific value above and beyond what process already provides

So, my reasoning for when to integrate something is that there should be some significant improvement over the old API (either by integration with Pattern, Shell, or Fold) or some elegant theoretical justification (like adding a new Monad).  The other issue with this is that there are at least four variations on this function if I add it (2 ways of supplying command line arguments and 2 ways of handling failures)

Ok, sound reasonable to me, closing this then.


Representability check description doesn't capture address-wrapping edge cases

The description of the representability check is slightly imprecise in cases where the base or top want to wrap the address space. A correction is described in the bounds section: https://github.com/riscv/riscv-cheri/blob/8f587528c7d1a0005be68c38d955408bb22485f2/src/cap-description.adoc?plain=1#L501-L502
but not in the representable region section, where it is also relevant:
https://github.com/riscv/riscv-cheri/blob/8f587528c7d1a0005be68c38d955408bb22485f2/src/cap-description.adoc?plain=1#L649-L653
In addition, we need to clarify what happens if the base wraps.
I'll need to think about how to describe this precisely, but just wanted to record the issue so it doesn't get missed. I don't think there's a bug, but somebody trying to implement it just from this description would certainly get confused!

PR for this one? @PRugg-Cap ?

Not yet, sorry, I'll try tomorrow!


Cash payments iframe on thank you page

Expected behavior and actual behavior.
The iframe needs to adjust automatically to the height of the page content. Today, sometimes the iframe causes a CORS error.
Currently, we use the file_get_contents to render the content of the redirect_url coming from pay.
Steps to reproduce the problem.
Do a payment using Boleto Brazil.
Specifications like the version of the project, operating system, or hardware.
Plugin verison: 1.1.0
OS: macOS

I could not reproduce the problem.


catdoc: 0.94.2 -> 0.95

Motivation for this change
Update
Things done

[x] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] Linux

[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Why are you removing meta.platforms?

Didn't think it is needed if it's for all platforms
Sent from my iphone
On Mar 1, 2017, 11:29 AM -0600, Bjørn Forsman<EMAIL_ADDRESS>wrote:

Why are you removing meta.platforms?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub (https://github.com/NixOS/nixpkgs/pull/23313#issuecomment-283409840), or mute the thread (https://github.com/notifications/unsubscribe-auth/AAHL78REv_Mk-YPtQ28DQ4e4Wi9B77Yyks5rharmgaJpZM4MPGHY).

Unless something changed quite recently, meta.platforms is needed for the package to be built by the build farm. (Please correct me if I'm wrong.)

I am unsure on that but all my other packages never needed it I think
Sent from my iphone
On Mar 1, 2017, 11:45 AM -0600, Bjørn Forsman<EMAIL_ADDRESS>wrote:

Unless something changed quite recently, meta.platforms is needed for the package to be built by the build farm. (Please correct me if I'm wrong.)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub (https://github.com/NixOS/nixpkgs/pull/23313#issuecomment-283414234), or mute the thread (https://github.com/notifications/unsubscribe-auth/AAHL7zGI3SU4t3H68Z8TsSSI4uVzDODJks5rha6wgaJpZM4MPGHY).

Yes, it needs meta.plaforms: https://nixos.org/nixpkgs/manual/#sec-standard-meta-attributes (look for "meta.platforms")

@bjornfor done

You added meta twice (meta.meta.platforms) :-)
I modified the commit and pushed to master (c393512809513a88e55e060abd1248e6f5a688d7) and release-17.03 (589a4ecaae65f96a82f76b3de67d5d401f896ec2). Thanks!


Add option to adjust bar's width

I'd love to see an option to be able to set the width of the taskbar. I think that a narrower one would cause less problems with keyboards and send buttons

When it is collapsed, the arrow stays above the keyboard. But when bar is active, the arrow is behind the keyboard so it is impossible to click send buttons on messaging apps without hiding the keyboard. This is related to what I said above since it makes it a little bit annoying


go/tendermint/api: Use EXISTS tendermint query condition when available

There is a pending PR in the tendermint repo for adding an EXISTS query condition.  This will let us get rid of the $(app).updated event, and switch to per application Event.Type for nicer ABCI event generation/handling, and slightly smaller state.

The issue in question is https://github.com/tendermint/tendermint/pull/4077.

The upstream PR has been merged.


Unit Test Logging behavior

Let's assume I have an action method to retrieve a product by id. If the requested product does not exist on my repository my action method return 404 but I also want it to log a warning message.
During testing, I'd like to assert that, if the repository returns null, the action method not only returns 404, but also logs a warning message.
Because Log* methods are extension methods, I cannot replace them for testing nor I cannot assert they are being invoked at the expected moment with the appropriate parameters.
Can you include, as part of the documentation, the recommended strategy to unit test logging behaviors?

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

ID: 7184a308-a254-9350-a5cd-5bced1f369ae
Version Independent ID: 726e3bf1-f367-d733-8933-bccc04da0e16
Content: Logging in ASP.NET Core
Content Source: aspnetcore/fundamentals/logging/index.md
Product: aspnet-core
GitHub Login: @tdykstra
Microsoft Alias: tdykstra

cc @Tratcher

@JunTaoLuo @javiercn

@mdarefull Thanks for contacting us.

Because Log* methods are extension methods, I cannot replace them for testing nor I cannot assert they are being invoked at the expected moment with the appropriate parameters.

There is not a good way to do this, the only thing you can do is register your own test login provider to capture the log messages and then check that in your tests. So a possible test could be to produce the log messages for a given request/response and compare them against a known baseline.
I would say though, that all these tests would be very brittle IMO.

@javiercn Thank you for your feedback. That's why I'm asking to add a 'recommended way' as part of the documentations just as with other topics.
This is an issue that every developer will come through and having a 'recommended solution' centralized here will be really helpful, IMO.
The workaround we've found, which is not invasive and very simple, IMO, is to create an extension method to Mock<ILogger> (we are using Moq) that basically receives the expected message and the log level:

Usage:

I would not use Moq in this scenario.
I would simply implement a TestLogger, collect the messages on a list and compare against a list of messages you expect after calling a method on your app. It requires a bit more work upfront but your tests will be way more straightforward and easier to write and read.
In general though, I would be careful about writing tests verifying logging, as they are expensive to write and maintain compared to the value that they add. I would only do so for cases where It's a business requirement to log the information.