Suggestion: add  links to re-do checkpoints and "test out" skills

as i describe on the forum
https://forum.duolingo.com/comment/36331804
can you add those links to the "towers" ?
https://www.duolingo.com/checkpoint/Language/Number
https://www.duolingo.com/bigtest/Language/Number

Currently, the skill suggestion will provide a link to the next checkpoint if that is the next this to do, i.e. all skills up to the check point have been finished.
Where and when would you want the links to these be displayed?

I  am thinking more in the context of re-doing & re-passing i.e. sort of like practice. Like in the  issue #35 you've added PRACTICE button so add 2 buttons to the "towers", after the checkpoints were passed.

I am not sure how to name those 2 buttons. "Try checkpoint challenge " &  "Test out all skills above"  . Something shorter would be better.

I see, sorry I think I didn't quite realise what you meant. Yes that should be doable. I'll look into doing something similar to the practice button in issue #35.

How does this look?

The first button takes you to the checkpoint, the second to the 'bigtest'.

may be name 2nd "retry above skills" ?
i think we need to add "retry" to both or drop altogether, hoping it will be understood
or name 2nd " Test skills to Level 1"
i am really not sure what's the best way to name it :(

What is the behaviour when you do a big test for a checkpoint you have already reached? Does it not do anything towards getting the skills in that section up to the next Crown Level? I think I had assumed say, all the skills were at least L1, that it would make them all to at least L2.
If that is not the case then yes I will rename it to something else.

No. it raises skills only to L1.
Duo allows to do big test only when there are skill at L0 above, but
one row or so, before reaching the tower it grays-out  and Duo locks-out  challenge & bigtest
upon completing remanning skills it un-locks the tower for the challenge.
Opportunity to do big test is lost.
It is like placement test. You can do it only once, except
Via direct links both bigtest and challenge are accessible anytime.
All they do is provide Level 1 practice. At least it is how I view & use them.
It seems to be no difference in type of questions for big test if all or any of the skills are at L0 or L1
XP from challenge & biggest sometimes is NOT counted towards daily goal & leaderboard. however it is reflected in total XP

I see, I think I had assumed it would be like testing out all the skills to the next level each time.
I'll change it to something that closer reflects it's function.

I think I'll go with this, while not as succinct as it was before, I think it is clearer now. You will still be presented with the start screen that gives more information once you click the button.
Added in ced3646


remove the debug log to avoid flooding logs

What this PR does / why we need it:
This is a debug logging, we do not need it necessarily  in prod environment as it cause flooding logs.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
/assign @k82cn
Release note:

NONE

/lgtm
/approve


Linux autocomplete

📒 Description
This adds a more advanced autocomplete functionality to the Description and Project ComboBoxes in the app (and the Timer).
Future plans
This only builds up from what we have now without really changing a lot of stuff in other parts of the project.
Section headers are now done, not filtered and not selectable.
🕶 Types of changes

New feature (non-breaking change which adds functionality)

🤯 List of changes

An item model to represent all of the data
A new QListView to show the data, with a custom delegate to render the data using HTML

This does not apply to Time Entries because the HTML subset in QTextDocument is pretty limited - these are rendered "by hand"

A custom QComboBox class that contains all the new features

The ComboBox filters the data through a custom QSortFilterProxyModel and feeds it to a QCompleter subclass to handle the autocompletion

👫 Relationships

🔎 Review hints

Test if user input works as intended
Check if all shown data is represented as required

Good job @MartinBriza !
Now it sets the project properly. One last change and we can merge and start working on creating a release.
When the timer is running the x button to delete project in timer should not be visible. The whole border and the x should be hidden at that point.

Great job @MartinBriza , Finally we've won the battle with the new autocomplete.


Help needed.

How to change the position of the ZoomControllers?

Currently the controllers are not accessible because they are under the android system buttons

as far as i know, no there isn't. use your own icons with image buttons or whatever you want


kinet2pcb needs a 2to3 pass

Traceback (most recent call last):
  File "/home/miket/.local/bin/kinet2pcb", line 11, in <module>
    load_entry_point('kinet2pcb', 'console_scripts', 'kinet2pcb')()
  File "/home/miket/.local/lib/python3.6/site-packages/kinet2pcb-0.1.0-py3.6.egg/kinet2pcb/kinet2pcb.py", line 264, in main
    kinet2pcb(args.input, args.output)
  File "/home/miket/.local/lib/python3.6/site-packages/kinet2pcb-0.1.0-py3.6.egg/kinet2pcb/kinet2pcb.py", line 119, in kinet2pcb
    fp_libs = LibURIs(get_global_fp_lib_table_dir(), ".")
  File "/home/miket/.local/lib/python3.6/site-packages/kinet2pcb-0.1.0-py3.6.egg/kinet2pcb/kinet2pcb.py", line 57, in __init__
    self.load(fp_lib_table_dir)
  File "/home/miket/.local/lib/python3.6/site-packages/kinet2pcb-0.1.0-py3.6.egg/kinet2pcb/kinet2pcb.py", line 106, in load
    uri = rmv_quotes(uri)
  File "/home/miket/.local/lib/python3.6/site-packages/kinet2pcb-0.1.0-py3.6.egg/kinet2pcb/kinet2pcb.py", line 21, in rmv_quotes
    if not isinstance(s, basestring):

Running 2to3-2.7 -w /home/miket/.local/lib/python3.6/site-packages/kinet2pcb-0.1.0-py3.6.egg/kinet2pcb/kinet2pcb.py changes this one line:
+++ /home/miket/.local/lib/python3.6/site-packages/kinet2pcb-0.1.0-py3.6.egg/kinet2pcb/kinet2pcb.py	(refactored)
@@ -18,7 +18,7 @@

 def rmv_quotes(s):
     """Remove starting and ending quotes from a string."""
-    if not isinstance(s, basestring):
+    if not isinstance(s, str):
         return s

Would you please make that change and roll out 0.1.1 or 0.2.0? Thanks!

I think I've fixed this. Give it a try and let me know and then I'll release it on Pypi.
pip install git+https://github.com/xesscorp/kinet2pcb

That did the trick. Thank you.
On Wed, Mar 4, 2020 at 10:18 AM xesscorp<EMAIL_ADDRESS>wrote:

I think I've fixed this. Give it a try and let me know and then I'll
release it on Pypi.
pip install git+https://github.com/xesscorp/kinet2pcb
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/xesscorp/kinet2pcb/issues/5?email_source=notifications&email_token=AAAHMVBTJRY5U5IPQF2XNFLRF2LNXA5CNFSM4K62LCBKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOENZMBQA#issuecomment-594723008,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAHMVCRL4PMUXDY4XBEEX3RF2LNXANCNFSM4K62LCBA
.

Good. Latest release is now on Pypi.


AnnotatedConnectException: Connection timed out: no further information

I'm getting the error in the title occasionally when trying to connect to the minecraft server I created using this chart. The server runs fine mostly. The cpu usage is lower than I would expect though, but it runs fine except that people have trouble connecting occasionally.
I am running the deployment on a single node microk8s server that I have port forwarded to a nodeport service. I have 80Mbps internet (though that doesn't seem to matter since I get the error on the same network), and the server has 16 threads with a max frequency of 3.7GHz (though it seems to run around 1.6GHz typically with only 2 mincraft servers on it)

Most likely this will be caused by something external to the container.
FWIW I have almost an identical setup with microk8s, etc and was also seeing sporadic connection issues. In my case though, the server host itself was a WiFi hop away from ISP router due to physical constraints. I used tcpdump and observed a total lack of packets making it from the router to the host when the issue occurred.
I have since moved the host onto an Ethernet connection to router and issue went away.
Sorry, I don't have solid advice but can commiserate.

That's not the issue, since the server is connected to ethernet. My desktop, which has the same issue, is connected to the same switch as the server.
I agree, I don't think the issue is with the minecraft server specifically, but I've only seen connection issues with the minecraft server. It seems like the messages are not being forwarded through the nodeport or something occasionally, but people who have connection to the server don't have any issues.

This is what I see in wireshark when I'm trying to connect sometimes, but people are still connected to the server with no issues

The "TCP Port numbers reused" seems suspicious. I haven't seen that before.

I believe that is just the TCP message retransmitting because there was no ACK response

Sorry to revive a dead thread, but I'm running into the same issue now 2 years later, did you guys have any more tips on how to troubleshoot this?

I have since switched to a single-node kubeadm deployment of k8s. I don't remember if I was able to resolve the issue on microk8s, but I have not seen it since revamping my setup.
I don't think I ended up finding a solution for microk8s though, sorry.

No worries! I'm on a single-node k3s at the moment so I'm suspicious it's some weird Flannel or ServiceLB/Traefik thing (since I apparently wanted to make things hard for myself and make a TCP IngressRoute lol). Considering on changing to a different CNI

For the benefit of those who may stumble across this in the future, my error had nothing to do with the CNI or Ingresses 😅. It actually had to do with the host storage stalling and the client interpreting this as a timeout, switching the PV location to one locally on NVMe fixed the issue


docs: fix spelling mistake

Pull Request Test Coverage Report for Build 86

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 92.373%

Totals

Change from base Build 83:
0.0%

Covered Lines:
201

Relevant Lines:
213

💛  - Coveralls


Show postCreateCommand or other "init scripts" as coder_scripts in the UI

For any scripts in devcontainer.json that run after started, how can we render these in the Coder UI?

I guess only if we parse them in terraform and create coder_script resources.


Add ability to select all regions when using "cloudconnexa_user_group"

Current use-case: let's say i want to create User Group and select all regions, here is example of how it would look like with current version of Terraform Provider:
variable "cloudconnexa_user_group_all_vpn_region_ids" {
  description = "Regions which can be used"
  type        = list(string)
  default = [
    "se-arn",
    "us-ewr",
    "us-pdx",
    "ap-south-1",
    "us-bos",
    "us-mia",
    "fr-cdg",
    "ie-dub",
    "ca-east-1",
    "eu-central-1",
    "ca-yvr",
    "eu-central-2",
    "us-central-1",
    "us-west-1",
    "us-cmh",
    "us-west-2",
    "il-tlv",
    "af-south-1",
    "us-south-1",
    "it-mxp",
    "eu-west-1",
    "fi-hel",
    "us-sea",
    "jp-hnd",
    "es-mad",
    "us-mci",
    "ch-zrh",
    "ap-southeast-1",
    "ap-southeast-2",
    "pl-waw",
    "br-gru",
    "us-atl",
    "be-bru",
    "us-east-1",
    "ca-yul",
  ]
}

resource "cloudconnexa_user_group" "this" {
  name            = "this_is_my_group"
  connect_auth    = "AUTO"
  internet_access = "LOCAL"
  max_device      = 3
  vpn_region_ids  = var.cloudconnexa_user_group_all_vpn_region_ids
}

Setting all regions seems like an overhead. In API there is ability to specify:
        "allRegionsIncluded": {
          "type": "boolean"
        },

If this would be implemented - code above could be simplified to:
resource "cloudconnexa_user_group" "this" {
  name            = "this_is_my_group"
  connect_auth    = "AUTO"
  internet_access = "LOCAL"
  max_device      = 3
  all_regions_included  = true
}

Example of valid Swagger code:
{
  "allRegionsIncluded": true,
  "connectAuth": "AUTO",
  "internetAccess": "LOCAL",
  "maxDevice": 3,
  "name": "qqwwwert"
}

Implemented per https://github.com/OpenVPN/terraform-provider-cloudconnexa/pull/44


Update screenshot and text

https://docs.microsoft.com/en-gb/azure/hdinsight/media/hdinsight-hadoop-create-linux-cluster-portal/hdinsight-create-cluster-completed.png
Current UX looks different from what we see in an article. Please update it.

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

ID: 041f37b4-6906-e3bb-0892-f67ffe04e09c
Version Independent ID: 8fa9e2ca-f27e-e3e2-84bc-240fbd62db09
Content: Create Apache Hadoop clusters using a web browser - Azure HDInsight
Content Source: articles/hdinsight/hdinsight-hadoop-create-linux-clusters-portal.md
Service: hdinsight
GitHub Login: @hrasheed-msft
Microsoft Alias: hrasheed

@SychevIgor
Thanks for the feedback! We are currently investigating and will update you shortly.

Thanks @SychevIgor. There have been a number of portal changes that will require widespread document edits. We have a few user stories in our backlog to update all of the affected docs, but it will take some time to redo all of the screenshots.

#please-close


Create Github Gradle Workflow

Build and Run test CI
Resolves: #27

What do you think about the Java versions we are testing against? Is it too much? @stanleynguyen @tohyongcheng @javiersuweijie

This command only build the code and test it. There's no publishing activity

@kevindavee Oh cool. I just realised the BINTRAY vars are just so that the build won't fail.
Is there a way we can run the test without setting these vars?

Let me remove it and see if it is working or not.


Secret and Kava rest api added

The kava endpoint doesn't seem to be working for me

Closing this as stale, if you would like to submit some working endpoints please reopen the pull request


Fixed a name of a file and added message sending functionality

@Howmuchadollarcost can you please remove conflicts with the new version, and it is not good to add another icon/button on toolbar, it is not suitable in mobile mode so you can add it on navigation bar and i will take care of the rest.


Have you tried with MNIST data?

Dear kipf,
Have you also tried with MNIST dataset for this method?
I see this is node classification, and I wonder if this model can work with MNIST or any other of image dataset.
with cora,
A =  N x N
X =  N x D
Y =  N x E
with MNIST or other images,
A = D x D
X = S x D
Y = S x E
Ex. [D: Features(28 x 28 = 784), S: Samples, E: class]
If I want to implement this model to try on image dataset such as MNIST, I wonder how this code can be changed to use.
Thank you

I have the same problem!!!

@ygleework  I tried MNIST clustering task with GAE
Total images = 1000
Dim                = 784
since there was no adj matrix, I tried with identity and Nearest neighbour graph Affinity matrix.
Maybe you can the same setting with MNIST.
or if you want to represent each image as a graph, consider looking into graph batch-training.

Hi
I have the same problem
I want to use it for classification of my own images dataset
Can you help me


Vue directives not working on top-level

Vue version
3.2.33 on playcode.io, and latest @036914c in Vue SFC playground
Link to minimal reproduction
https://playcode.io/1386836 or https://sfc.vuejs.org/#eNp1UEFqwzAQ/MpaFydQS/RqHEPppQ8I9KJLGm8Sp5JWSHJCMf57V3YSSml1ELur0czOjOLFe3kZUNSiifvQ+wQR0+Bb7XrrKSQYIeABJjgEslAytHw8vZL1y1wLqXKXqbTQTrs9uZjAxiNsMsGqfENjCN4pmK4o1xnSqEWRtbhJaL3ZJQRuAZrTczuO8/9pahR383RWVFw36o5vxZNY9qnszstzJMdmxgzXt4eoRQ3zJM/mFWsuTin5WCsVD/u89zlKCkfFlQyDS71FidFWH4GuEQMTZ2MAk3YTS97d/hHcYv2yRb43i64lZsSuhhWaNWxayBgyKA0dV1pkqBYcCpP/k8qlSgxqm6KqYHvqI3SEERwluFL4LIoCqmrJ6IG40mA6IGe+Zgz0LvYd1vCblAN9fOagszM+t9B/Bj19A5BIvNk=
Steps to reproduce

Register a custom directive, whether that be with app.directive, or just by defining const vDirectiveName
Have the directive do a console.log under mounted event as a test
Add this directive to a component's root

import { createApp } from 'vue';
import App from './App.vue';
console.log('Hello world');
const app = createApp(App);
app.directive('test', {
    beforeMount: () => console.log("Test!!!")
});
app.mount('#app');

<template v-test>

Hello Vue 3

</template>

What is expected?
It should work and do the console.log in the console, same as if I used the directive in the parent component directly where I'm including it.
What is actually happening?
Nothing. It does not work in a root
System Info
No response
Any additional comments?
I'm not sure if it's a bug or by design, and whether SFC compiler can even handle such scenario...

Yes that does not work because the <template> element is not part of the template, its *enclosing the template.
It disappears just like the component's acript and style tags disappear when the vud file is run theough the compiler.


TST: Fix missing assertion in XSGO calendar tests

There is a dangling equality check in the tests here that looks like it should be an assertion.

Thanks!


Fix lint errors introduced by #966 and #941 merging without rebase

Assuming CI passes, please merge this ASAP.  Master is broken without it.

Merging to unbreak master.
/lgtm


Combination filter needs to be under execution-strategy

According to JJB: https://docs.openstack.org/infra/jenkins-job-builder/project_matrix.html
Otherwise, it does not work.

@ktdreyer I think this PR is OK to be merged. Could you please have a look?


chore: update wsl2 rootfs

Attempting to resolve #2775. I'm not sure why the old rootfs bundle stopped working for new runs, but I can confirm that this rootfs bundle works on our hosts (e.g. this run: https://github.com/runfinch/finch/actions/runs/11462038498/job/31899470876?pr=1144)

Unfortunately it fails the same way as the old rootfs. 😞

Thanks, but it seems still failing

Interestingly, it looks like the script is being properly executed, but Lima's still considering the boot as failed. Still looking into it

Looks like it could be an issue on the the image: https://github.com/actions/runner-images/issues/10837


10993 DEV Add migrations to remove unique constraints from the resource name subscriptionId index

https://github.com/Shippable/pm/issues/10993

This is complete.
Closing.

This is complete.
Closing

This is complete.
Closing


Docs.MS Release Updates for Azure.Data.SchemaRegistry

Update docs metadata and targeting for release of Azure.Data.SchemaRegistry

Docs Build status updates of commit 93c9d8e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

api/overview/azure/data.schemaregistry-readme-pre.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


[Question] Is work with a rgba background ?

Which terms did you search for in the documentation and issue tracker?

Something like this:
import {
  wcag_2_contrast_light_or_dark,
  wcag_3_contrast_light_or_dark,
} from "kontrasto";

const bannerImage = "#ead8814b";
const bannerText = '#ffffff';

const contrast = wcag_3_contrast_light_or_dark(
  bannerImage,
  "#ffffff",
  "#000000",
  bannerText,
);
banner.style.setProperty("--kontrasto-bg", `${contrast.bg_color}99`);
banner.style.setProperty("--kontrasto-text", contrast.text_color);

it is possible ? Ty for your time.

Hi @p4535992, no, this has no ability to determine what color would be under the transparent layer.

Ty for the fast response


BRIDGE-566/421

set showShareAppInOnboarding to true in order to see the share the app label/button when InEligible
Will need to link to updated AppCore in order to see controls

r=me, but holding off on accepting (along with AppCore PR#1) pending clarification of https://sagebionetworks.jira.com/browse/BRIDGE-566.

ok we'll do the additional work in a separate PR


Segmentation fault in tf.raw_ops.ConjugateTranspose when perm have negative values.

Issue type
Bug
Have you reproduced the bug with TensorFlow Nightly?
Yes
Source
binary
TensorFlow version
tf 2.15
Custom code
No
OS platform and distribution
Linux Ubuntu 20.04
Mobile device
No response
Python version
3.10
Bazel version
No response
GCC/compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
No response
Current behavior?
When perm have negative values, tf.raw_ops.ConjugateTranspose triggers segmentation fault or overflow.
Standalone code to reproduce the issue
https://colab.research.google.com/drive/1s1fTdsSESb_nOIuD46fQM1pJBHkcCtZe?usp=sharing

Relevant log output
segmentation fault (core dumped)

Hi @xl1043237213 ,
There has been a PR #63064 in open state which probably address this issue.

Hi @xl1043237213 -
You can use keras.ops.conjugate(conjugate) API and keras.ops.transpose(transpose) API.
For keras.ops.transpose API, in axes argument you can use sequence of integers. Permutation of the dimensions of x.
Attached gist for the reference which is  working fine in latest keras(3.7.0) version.


Post deploy tweaks

What's New?

I found an issue related to the AWS (security) upgrade after deploying.
These minor changes fix that.
www.OpenFarm.cc and the master branch will have parity when this PR is merged.

Coverage decreased (-0.1%) to 95.074% when pulling 09404875e1851ebce595173f742e1e734842340c on RickCarlino:master into 0193e288a42c76d310cb0aa75efac0de19e8a933 on openfarmcc:master.


Hi are any typescript definitions for this package

Hi i am wondering if there are any typescript definitions for this project, i really want to use it typescript.

Check our my fork https://github.com/digitalcortex/validate-joi.
I did a pull request, maybe the devs would be able to accept it.

Great, i think will use type definitions manually in may code

Thanks @digitalcortex for the PR.  I've merged it and released it as<EMAIL_ADDRESS>


Add test for onEntry defined on parallel state

While reading SCXML spec I've found out that this is supposed to work, I then got curious if xstate implements it - and it does 😉 There was no test to cover this, so I've added one.

Much thanks!!


Update VisualStudio.gitignore

Reasons for making this change:
TODO
Links to documentation supporting these rule changes:
TODO
If this is a new template:

Link to application or project’s homepage: TODO

ok

@andre-obrist are you able to provide more information about this contribution, and why you think it's important?


Fix Android build error.

The latest version of Android Studio fails with:
Could not find com.android.tools.build:aapt2

To use AAPT2, we must now have a dependency on the google() repo in both places in the root build.gradle file, which is documented here.

Thx for your PR! Very much appreciated :)


Cannot fire an event on a component from event handler located in parent component

Description:
In < 0.8.x ractive version if a component subscribe on a sub component event, in event handler you can access the component instance using event.component.
In 0.8.x implementation a lot of component method are present inside the event itself but not the fire function.
I can perform wanted operations inside a data function and retrieve it via get but I just wonder if this is the expected behaviour.
Versions affected:
0.8.x
Reproduction:
https://jsfiddle.net/95mom81p/4/
Code:
HTML

JAVASCRIPT
const MyComponent = Ractive.extend({
  template: '#MyComponent',

  data() {
    return {
      myComponent: true,
    }
  }
});

console.info('MyComponent', MyComponent);

const r = window.r = new Ractive({
  el: '#main',
  template: '#template',

  components: {
    MyComponent,
  },

  data: {
    who: 'World'
  },
  oninit() {
    this.on('*.customEvent', (event, param) => {
      console.info(event, param);
      console.info('event.get', event.get(), '\nevent.component', event.component, '\nevent.fire', event.fire, '\n--------');
    });
  },
});

Another concern. If I have a event listener like:
this.on('customEvent componentName.customEvent ', (event) => { ... }) at the moment I'm not able to find a way to get component name inside the event handler.
Using old proxy events, e.component.component.name will return the name of the component.

Proxy events were deprecated (warning showing in console) because of the strange syntax. Handlers now support (sort of a superset of) expressions, which look like inline JavaScript, for familiarity.
Another is that the event object has been updated to return Info objects that contain helpers that operate in the context of the node involved in the event. I believe the equivalent to event.component is now event.ractive which, according to the docs (see info.ractive), is the instance the node involved in the event belongs to.

Ok, thank you for the clarification.


Fixed an inconsistent method name

Changed

Fixed an inconsistent method name.

@willishq Pretty simple PR. I guess this could be merged without issues, no?

:+1:


PFTwitterUtils crashing [Solved]

Hello
PFTwitterUtils is crashing when I calling [PFTwitterUtils logInWithBlock:] or [[PFTwitterUtils logInInBackground] continueWithBlock:^id(BFTask *task)block].
It's a rare but stable crash.
Conditions: You just need to delete the Twitter app and delete all twitter accounts in iOS settings.
So, problem in real life: User haven't Twitter account and accidentally tap to Login with Twitter button... And app crashed.
So, I imagine that it should be a web-based dialog to login, but it didn't.
Parse version 1.8.2. Social, Accounts frameworks was added. initializeWithConsumerKey added
iOS SDK, Objective-C
Maybe do I something wrong?
Thank you
Crash:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0]'
*** First throw call stack:
(
	0   CoreFoundation                      0x00000001082a6495 __exceptionPreprocess + 165
	1   libobjc.A.dylib                     0x0000000107d7d99e objc_exception_throw + 43
	2   CoreFoundation                      0x000000010826fdce -[__NSPlaceholderDictionary initWithObjects:forKeys:count:] + 382
	3   CoreFoundation                      0x000000010829b23f +[NSDictionary dictionaryWithObjects:forKeys:count:] + 63
	4   MYAPPNAME                         0x0000000105938b86 -[PF_Twitter _showWebViewDialogAsync:requestSecret:] + 202
	5   MYAPPNAME                         0x000000010593a875 __38-[PF_Twitter _performWebViewAuthAsync]_block_invoke_2 + 234
	6   libdispatch.dylib                   0x000000010b82b851 _dispatch_call_block_and_release + 12
	7   libdispatch.dylib                   0x000000010b83e72d _dispatch_client_callout + 8
	8   libdispatch.dylib                   0x000000010b82e3fc _dispatch_main_queue_callback_4CF + 354
	9   CoreFoundation                      0x0000000108304289 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9
	10  CoreFoundation                      0x0000000108251854 __CFRunLoopRun + 1764
	11  CoreFoundation                      0x0000000108250d83 CFRunLoopRunSpecific + 467
	12  GraphicsServices                    0x0000000108b42f04 GSEventRunModal + 161
	13  UIKit                               0x0000000105ea0e33 UIApplicationMain + 1010
	14  MYAPPNAME                         0x000000010593629f main + 111
	15  libdyld.dylib                       0x000000010ba8e5c9 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException

Thanks for the report (especially the stack trace!). I'll look into it.

So it looks like the initial oauth token you are receiving from twitter is nil. Which indicates that you either have no network connection, or your client key/secret are incorrect.
As ParseTwitterUtils is not yet open-sourced, my immediate solution for you would be to try and verify that you have network before beginning the auto process.
We will add more defensive checks to ParseTwitterUtils starting in future releases.

@richardjrossiii Thank you for your message. I have internet connection and keys are correct. I saw this problem strongly without users accounts in iOS settings and without the Twitter app.
How I reproduce: 1) I checked that I can login in my app
2) delete the Twitter app and delete all accounts in Twitter iOS Settings
3) Run again → Crash as result.
Anyway, I have a connection and correct keys.

@richardjrossiii
Hi, Richard!
Please, don't waste team time for that.
I found the solution! I suggest to add to your tutorial a little more information.
Look. If you use Twitter as a Login in web-site, you must add Callback URL.
If you have an Twitter app, you needn't. But when you use web-base dialog in the app, you must ADD Callback URL to work correct.
So, my solution is simple. Just change phrase in Documents:
3. When asked to specify a "Callback URL" for your Twitter app, please insert a valid URL. This value will not be used by your iOS or Android application, but is necessary in order to enable authentication through Twitter.
https://www.parse.com/docs/ios/guide#users-twitter-users
"This value will not be used by your iOS or Android application" not so correct for understanding.
I thought that I needn't add Callback URL
I hope it should be valuable for new parse users.
Thank you guys!

@aldmitriev, this is amazing, thanks for diving deep and finding the source of the problem!
We still should add an error check instead of crashing with an exception, since this is such a fragile piece.
You can contribute to the docs since they are opensource and available here.
Let us know if there is anything else we can help you with!
(BTW, ParseTwitterUtils is going to be opensource very soon, so we can change it together as well)

@nlutsenko I still get the crash

@acegreen can you open the issue on the ParseTwitterUtils repo with more details?
Please double check the callback url and Twitter keys, as was noted before - this is the reason for the crash here.

Yes callback url isn't present on web login so this is expected but the crash is not. I thought we were going to safe guard against that?
Will open a ticker on the other side.

@nlutsenko on a side note, did you receive my email? Sent it to your fb account

Guys, we're still getting the crash that looks similar to this. From time to time, but it happens. Our callback url and Twitter keys are setup.
The last time is today. It looks like there're some problems at Twitter side because sometimes it says somthing about failed authentication.
Thread : Fatal Exception: NSInvalidArgumentException
0  CoreFoundation                 0x24644f8f __exceptionPreprocess
1  libobjc.A.dylib                0x32cf5c8b objc_exception_throw
2  CoreFoundation                 0x245633df -[__NSPlaceholderDictionary initWithObjects:forKeys:count:]
3  CoreFoundation                 0x245631c3 +[NSDictionary dictionaryWithObjects:forKeys:count:]
4  opas                           0x38d439 -[PF_Twitter _showWebViewDialogAsync:requestSecret:]
5  opas                           0x38ecfb __38-[PF_Twitter _performWebViewAuthAsync]_block_invoke_2
6  libdispatch.dylib              0x332862e3 _dispatch_call_block_and_release
7  libdispatch.dylib              0x332862cf _dispatch_client_callout
8  libdispatch.dylib              0x33289d2f _dispatch_main_queue_callback_4CF
9  CoreFoundation                 0x2460a3e9 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__
10 CoreFoundation                 0x24608ae9 __CFRunLoopRun
11 CoreFoundation                 0x24554f31 CFRunLoopRunSpecific
12 CoreFoundation                 0x24554d43 CFRunLoopRunInMode
13 GraphicsServices               0x2c02f201 GSEventRunModal
14 UIKit                          0x27d26879 UIApplicationMain
15 opas                           0xb7a53 main (main.m:20)
16 libdyld.dylib                  0x332a7aaf start

According to stats, it looks like Twitter was down the very time we observed the crash.

@grigorye A good repro would be very helpful here.

@nlutsenko Yep, but given if it's related to problems at Twitter side, I'm not sure it's easily doable.

I have the same issue. Has anyone solved this issue?

@nlutsenko ping

@artur7 I solved it here https://github.com/ParsePlatform/Parse-SDK-iOS-OSX/issues/153#issuecomment-137584999
Be sure you have latest SDK (use cocoapods only. From last week it's required)

@aldmitriev can't I simply drag the libs to the project?

I already added callback url

@artur7 And yes and no ) You can't simply by drag
About Cocoapods https://github.com/ParsePlatform/ParseUI-iOS/issues/169#issuecomment-158311957
Example of Podfile https://github.com/ParsePlatform/Parse-SDK-iOS-OSX/issues/179#issuecomment-158497349
If you have issue, try this https://github.com/ParsePlatform/Parse-SDK-iOS-OSX/issues/179#issuecomment-158542966

@richardjrossiii You are awesome thanks!!


Track witness counts and first/last seen by field

Adding tracking to every Data object is a bit heavyweight, but I think it's necessary for supporting field diffs.  An alternative might be to only track Primitives, which would reduce the size of the model but wouldn't let us track list- or object-typed fields.

Holding off on this PR until I've finished the implementation as well.


Support for setting CA cert, client cert and client keys,

Expose support for setting CA cert, client cert and client keys, which is required to connect to the AWS IoT MQTT server.

@cyijun Please approve my pull request to support cert based auth

Thanks, I'm traveling on vacation.

I will release a new version when I get home.


name 'Twitter' is not defined

I'm getting the error "name 'Twitter' is not defined" with the code below. Any ideas?
from twitter import *

OAUTH_TOKEN = 'my_app_access_token'
OAUTH_SECRET = 'my_app_access_secret'
CONSUMER_KEY = 'my_app_consumer_key'
CONSUMER_SECRET = 'my_app_consumer_secret'

# see "Authentication" section below for tokens and keys
t = Twitter(auth=OAuth(OAUTH_TOKEN, OAUTH_SECRET, CONSUMER_KEY, CONSUMER_SECRET))

# Get your "home" timeline
print t.statuses.home_timeline()

got the same error ...
but its not working .. in terminal either


What is the difference between the r_vrp and r_svrp parameters?

Impact, Activity and WdegOnDom are dynamic heuristics. It would be possible to unify the use of the parameters mentioned? Currently, Wdeg works with r_svrp but Activity and Impact just work with r_vrp.

Dear Jheisson,
I am currently away from my office.
I will answer you before the very end of this week.
I am going to remove the useless final for the moment.
Best,
Christophe
On Sun, Jun 26, 2022 at 4:35 AM Jheisson Lopez @.***>
wrote:

Impact, Activity and WdegOnDom are dynamic heuristics. It would be
possible to unify the use of the parameters mentioned? Currently, Wdeg
works with r_svrp but Activity and Impact just work with r_vrp.
—
Reply to this email directly, view it on GitHub
https://github.com/xcsp3team/ace/issues/4, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEVPTOQLWMARTMBWJNVT67TVQ66WHANCNFSM5Z3GDIBQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

I can add
(solver.restarter.numRun - solver.solutions.lastRun) % solver.head.control.restarts.varhSolResetPeriod == 0
in the code of runReset().
This way Wdeg, Impact and Activity will be able to benefit from the two parameters.
The first one, r_vrp, indicates when resetting (of weights, impacts and activity) must be triggered (by default, this is MAX_VALUE, so never triggered)
The second one, set to 30 by default, indicates that resetting must be conducted if no solution has been found since 30 runs.
This is relevant for COP.
Are you ok with the change indicated above?

Thank you very much! That's perfect. It clarifies the use!

The use of the r_svrp parameter has been generalized.


LOGO alignment issue is resolved.

Fix: Alignment issue for Logo in both login and Registration page.
Description
Modified the alignment of LOGOS in Login and Registration pages.

Related Issue
Closes #371

Type of Change
What kind of change does this pull request introduce?

[ ] 🐛 Bug fix
[ ] 🚀 New feature
[ ] 📄 Documentation update
[ ] 🛠 Code improvement/refactor
[X] 🖼 UI/UX update
[ ] Other (please specify)

Checklist
Please ensure the following tasks are complete before submitting the pull request:

[X] I have tested my changes and ensured they work as expected.
[X] I have added any necessary documentation or comments.
[X] I have checked the existing issues and pull requests to avoid duplicates.
[X] I have starred this repository.
[X] I have reviewed my code for best practices and readability.
[X] I have included any relevant tests (if applicable).

hey @Kiran511-git there are no changes you made by you.


Add dataset: old_book_illustrations

A URL for this dataset
https://www.oldbookillustrations.com/
Dataset description
The Old Book Illustrations website contains a dataset of illustrations scanned from old books. Each illustration page also contains infos about the illustrator, the illustration and the book it's taken from as well as a title, a description, and a few keywords. As of today, the website contains 3150 images.
I already wrote a script to scrap all the content since the api does not give access to all the information (for instance the image is not is the best resolution).
Is it a dataset that is relevant for this project?
About the license, the website reads:

Text content (descriptions, translations, etc.) is published under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Although we do our best to offer only Illustrations that are considered public domain in most countries, copyright laws vary from one jurisdiction to another, and you agree that you are solely responsible for abiding by all laws and regulations that may be applicable to using the Illustrations.

More info on the term of use page.
Dataset modality
Image
Dataset licence
Creative Commons Public Domain Dedication and Certification
Other licence
No response
How can you access this data
Other
Confirm the dataset has an open licence

[X] To the best of my knowledge, this dataset is accessible via an open licence

Contact details for data custodian
No response

@giganttheo, thanks for suggesting this. I think it's a super interesting dataset, but I have a few questions about how we could access this dataset. On the terms of use they say:

You are welcome to download as many pictures as you wish, with no restriction in time or quantity; but we do not approve of the use of offline browsing software, or website downloaders, such as HTTRack, WebReaper, etc, due to the heavy load they put on the server. Please don’t use them.

I think a scraping script would likely fall under this category. I suggest that it might be worth reading out to the website creators to ask if they would be keen to contribute a dataset derived from the site. It may also be possible to get some additional metadata about the items. In particular, it would be helpful to have a citation to the source for each image included in the dataset, so it's possible to confirm the copyright status of those items if needed.
WDYT?

Yeah you are right.
I just sent an email to the contact adress from the website, to ask for a mirror or a special authorization to use a scraping tool.
I'll update this if I have a response.

Yeah you are right. I just sent an email to the contact adress from the website, to ask for a mirror or a special authorization to use a scraping tool. I'll update this if I have a response.

Thanks! would be great to have this available so hopefully they are keen :)

Update, I received a response from the webmaster:

Hi Théo,
Thank you for your interest in oldbookillustrations.com.  We do indeed restrict bulk downloads, simply because we're on fairly cheap hosting and are concerned the server might not withstand the strain of full-on pounding that's often involved in site-scraping.    Having said that, I have no objection to allowing you a one-time access to get the data needed for your project, provided we can agree on "gentle" settings for your scraper.
I would imagine that allowing around 3 to 5 seconds between the download of each image file, and a pause of about 10 seconds every ten downloads would be safe. I'm not sure what else you would need and how many hits that would generate, but the same amount of caution would be in order. Even better if the bulk of the activity can take place between 3 am and 7 am GMT.
The total weight of the available image files is around 8 Go.
Hope this helps.
With best regards,
Harvey Livet,
Webmaster of oldbookillustrations.com

I will use a scraping tool by respecting the restrictions agreed upon. And then upload the dataset to the hub!

Awesome, the only other I would check is that when you download the images we can get sufficient metadata for each image to verify the licence/copyright. What information is downloaded at the moment?

We have access to:
the artist name (of the illustration), the engravers, the book and author (of the book), as well as the source of the illustration, and the Open Library record. For instance, you can check this page: https://www.oldbookillustrations.com/illustrations/pula-temple-augustus/
All the information that is shown on this page can be scraped. (I prefer scraping the page than downloading the "json record" that lacks some image sizes, and the keywords for instance)

The source reads:
The New York Public Library believes that this item is in the public domain under the laws of the United States, but did not make a determination as to its copyright status under the copyright laws of other countries.

Great that looks good. I think if we can include the source information/URL that would be great. My own preference would also to be include as much information as possible for each image since it may be useful for someone working with the data WDYT?

This night, I scraped the pages from the website, by following the restrictions agreed upon. This is the resulting dataset, stored on the hub: https://huggingface.co/datasets/gigant/oldbookillustrations_2
Do you think any other information might be interesting? There is most of the data from the pages, with the urls, and the sources.
If that's ok for you, I can add it to the BigLAM org, and create a comprehensive dataset card.

Last night, I scraped the pages from the website, by following the restrictions agreed upon. This is the resulting dataset, stored on the hub: huggingface.co/datasets/gigant/oldbookillustrations_2
Do you think any other information might be interesting? There is most of the data from the pages, with the urls, and the sources.
If that's ok for you, I can add it to the BigLAM org, and create a comprehensive dataset card.

This looks amazing! Happy for you to move to the BigLAM org -- let me know if you want any help with the dataset card.

Thanks so much for this. Having given this a bit more thought, I think it probably makes sense to try and filter out the items which may have copyright issues. I think the best way to do this would be to filter out based on the artist_date field and set a reasonably conservative threshold. My suggestion would be to push this to a new dataset and keep the other one private. This means we can use the current version to update the cleaned version in the future.
@giganttheo WDYT?

Thanks so much for this. Having given this a bit more thought, I think it probably makes sense to try and filter out the items which may have copyright issues. I think the best way to do this would be to filter out based on the artist_date field and set a reasonably conservative threshold. My suggestion would be to push this to a new dataset and keep the other one private. This means we can use the current version to update the cleaned version in the future.
@giganttheo WDYT?

suggested approach in this notebook

I agree that it would be nice to make sure the version we share does not have any copyright infringement issue. However, from my understanding, checking if a work is public domain might not be as straightforward as the filter you set up, since it depends on whether the work was published or not, as well as the country of origin. According to the "public domain" Wikipedia Page:

Determination of whether a copyright has expired depends on an examination of the copyright in its source country.

I think adding a filter to know if an artwork is public domain is a good idea, but it will require a lot more work: the dataset shall include some information I missed out (I just included the artist birth date for instance, but really it's the death date that is more important in that case), and we neet some basics of copyright law for the source countries of the artworks.
In my opinion, we could keeping a complete version available, with a warning about copyright issues at first, and then when a new version is ready we could add another one with the public domain artworks only. What do you think?
I will investigate this when I have some time.


Switching between encrypt/decryption on EVP_CIPHER_CTX silently computes wrong results, rather than errors

An EVP_CIPHER_CTX can be used for either encryption or decryption. However, with some ciphers, using a single context to do both can produce wrong results. Here's a simple example with AES-OCB:
#include <stdbool.h>
#include <string.h>

#include <openssl/err.h>
#include <openssl/evp.h>

void openssl_assert(bool x, char *op) {
  if (!x) {
    printf("%s failed\n", op);
    ERR_print_errors_fp(stderr);
    exit(1);
  } else {
    printf("%s succeeded\n", op);
  }
}

int main() {
  int res, len;

  unsigned char key[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
  unsigned char nonce[] = {187, 170, 153, 136, 119, 102, 85, 68, 51, 34, 17, 4};
  unsigned char pt[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
  unsigned char ct[] = {87,  29,  83,  91,  96, 178, 119, 24,  139, 229, 20,
                        113, 112, 169, 162, 44, 58,  215, 164, 255, 56,  53,
                        184, 197, 112, 28,  28, 206, 200, 252, 51,  88};
  unsigned char aad[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};

  const EVP_CIPHER *cipher = EVP_aes_128_ocb();
  openssl_assert(cipher != NULL, "cipher =");

  EVP_CIPHER_CTX *ctx = EVP_CIPHER_CTX_new();
  openssl_assert(ctx != NULL, "EVP_CIPHER_CTX_new");

  res = EVP_EncryptInit_ex(ctx, cipher, NULL, key, NULL);
  openssl_assert(res == 1, "EVP_EncryptInit_ex");

  res = EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_SET_IVLEN, 12, NULL);
  openssl_assert(res == 1, "EVP_CTRL_AEAD_SET_IVLEN");

  res = EVP_DecryptInit_ex(ctx, NULL, NULL, NULL, nonce);
  openssl_assert(res == 1, "EVP_DecryptInit_ex");

  res = EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_SET_TAG, 16, ct + 16);
  openssl_assert(res == 1, "EVP_CTRL_AEAD_SET_TAG");

  res = EVP_CipherUpdate(ctx, NULL, &len, aad, 16);
  openssl_assert(res == 1, "EVP_CipherUpdate(aad)");

  unsigned char *out_buf = malloc(16);
  len = 16;
  res = EVP_CipherUpdate(ctx, out_buf, &len, ct, 16);
  openssl_assert(res == 1, "EVP_CipherUpdate(ct)");
  openssl_assert(len == 16, "EVP_CipherUpdate(ct)");

  unsigned char final_buf[32];
  len = 32;
  res = EVP_CipherFinal(ctx, final_buf, &len);
  openssl_assert(res == 1, "EVP_CipherFinal");
  openssl_assert(len == 0, "EVP_CipherFinal");

  openssl_assert(memcmp(out_buf, pt, 16) == 0, "memcmp");

  printf("Success\n");
}

If built on run, on some systems this will pass, on others EVP_CipherFinal will fail (I've personally seen that it fails on x86-64 with assembly, and passes on ARM64 and x86-64 without assembly.)
With some ciphers using a ctx in both directions works, because some ciphers only use the raw block cipher in a single encrypt mode, even for decrypt operations (e.g., CTR mode).
To avoid this potential footgun, I recommend one of the following (no opinion offered on which is best):

Return an error in EVP_DecryptInit_ex/EVP_EncryptInit_ex anytime the direction is being switched
Return an error in EVP_DecryptInit_ex/EVP_EncryptInit_ex where it'd break with the underlying cipher/implementation
Return the correct result in all cases

I am rather surprised that mixing operations like you are doing comes close to remotely working ever.
This is definite the caller abusing the APIs and OpenSSL has historically not checked for such.
Times are changing and we have been introducing NULL checks into public APIs e.g.
There is a ticket somewhere to enforce algorithm life cycles which ought to catch this too.  I can't seem to locate a reference to it unfortunately.

IMO it should be possible to switch an EVP_CIPHER_CTX from encrypt to decrypt operation and back but only with the EVP_EncryptInit_ex/EVP_DecryptInit_ex calls where the key parameter is non-NULL. Otherwise the result is undefined.
Perhaps we should document this for start.

I'm just interested to know - if you move setting the key from the first init to the second, does it work for you consistently & correctly?

Yes, if the key is passed in the second call to Init then this passes.
Note that this defeats the point of reusing the ctx, which is to reuse the AES key schedule and thus improve performance.

Except there is a different key schedule for encryption and decryption for AES. So it cannot really work like this.

Except, as noted, for ciphers that only use the underlying block cipher in a single direction.

Yes, but then this logic cannot be really universal which means it needs to be handled inside the provider implementation and that has its consequences around the complexity of the necessary changes.

Sure. I don't have a strong perspective, just that if it's not expected to work, it should be an error and not silent misbehavior.

Except, as noted, for ciphers that only use the underlying block cipher in a single direction.

In particular, OCB mode is not one of these so this is probably the main reason why this does not work.
This will not be an easy fix, especially if currently this calling sequence works for the cipher modes that use only the single direction. Because a trivial fix that would disable this would break existing working use-cases of this calling sequence.


Local-first + generated CI

We do a lot of work on CI, and it's extremely difficult to keep track of how it all fits together. We've also had to deal with a lot of pain arising from the fact that:

Every workflow on CI is written in untyped YAML
Most of what CI does can't run locally [^1]

[^1]: Not because it must run on CI, we just haven't put in the work to make it run locally
There are two big changes we can make to drastically improve the situation:

Make everything on CI runnable locally
Design a custom DSL and transpile it to GHA YAML files

Local-first CI
Every job first installs it dependencies, and then it runs some code[^2]. We want to ensure that all of that code is also runnable on every developer machine locally. To achieve this, we have to refactor every CI job to be a wrapper over this basic two-step process (install + run).
[^2]: Some jobs may install additional dependencies later in their lifecycle, but that's more of a consequence of our job sequencing, and not a requirement for the job to work.
The sync release assets workflow is a great example of what we want all of our CI to look like. Especially the fact that the inputs to the script are passed in explicitly.
Some notes for the process of extracting a CI job to run locally:

Installing dependencies should be done using our docker image(s) together with pixi.
Most third-party actions simply wrap a CLI tool (or multiple), so we should replace their usage with usage of the underlying CLI tool(s)

Codegen GHA away
As long as every job is not much more complex than install + run, it should be possible to ditch the GHA YAML files entirely, and instead use a custom DSL as the input to a GHA YAML file generator. Even if all this code generator did was use a different configuration file format and transpiled it to YAML, it would still be a big improvement in developer experience, but we can do much more than that.
Some (unordered, tentative) goals for this DSL and code generator:

Strongly typed inputs/outputs for every step of every job
A better mechanism for code reuse

Must have the ability to inline code

Automatic job sequencing

Given the inputs and outputs of each job, we know the dependencies between jobs, so we can schedule jobs to run in parallel if they don't depend on each other.

Generate a variant of the same workflow for contributors

Sanitized and runs on pull_request with approval

Local runner with the ability to execute entire workflows E2E

Every job uses a docker image + pixi, so this doesn't seem too far fetched
It should also support --dry-run to display the execution plan

We don't have to meet all of the above goals. The only strict requirement is that the DSL is not YAML, and it's possible to author the files without deep knowledge of GHA.
We will likely continue to hand-author some workflows with very specific requirements, but this should be usable for all jobs that perform builds/tests/linting.

Design a custom DSL and transpile it to GHA YAML files

I would even prefer no DSL at all: just define a bunch of classes for Workflows/Jobs/Steps/etc and simply work with actual Python code.
Build lists and graphs using good old code then dump everything as YAML.
In fact we don't even have to define these classes... they already exist.
Pushing this logic even further: do we even need to go through an intermediate YAML representation at all? Can't PyGithub configure workflows straight from in-memory objects?

Build lists and graphs using good old code then dump everything as YAML.

I think that qualifies as a DSL 😄. But I agree that it should be "good old code" as much as possible.

Pushing this logic even further: do we even need to go through an intermediate YAML representation at all? Can't PyGithub configure workflows straight from in-memory objects?

GHA requires the intermediate YAML files. There's no way to dispatch a job for a workflow that doesn't have a workflow ID, and those are given out to every workflow file.

I have a bit of a crazy proposal: I think we should use TypeScript for the "DSL" part. The code generator would use deno to create a barebones JS environment in which we'd execute .ts files to produce the high-level definition of each workflow. The high-level definition would then be compiled to the GHA YAML files.
I know, JS does not spark joy. But here's why I think it makes sense:

If you ignore everything that makes JavaScript a terrible language, there's still enough language left to use for our DSL needs.
TypeScript is the only language that's runtime interpreted with a decent type system.

At the very least, the type system is not nearly as insane as Python's.

We get to use all the tooling that exists for TS, for us that would be the LSP and some auto-formatter.
We get to write the workflow definitions in a semi-imperative style.
Reusing code would be as simple as refactoring it into a function and calling it. Those functions could also be imported from other files.
The code generator would use swc to transpile JS -> TS, and deno_core to execute it. That means the whole code generator could be written in Rust and use no external tools.

I definitely want to be careful not to overengineer this, but I would also like it if we didn't have to use JSON, TOML, or YAML for the DSL, and it doesn't seem like there's "middle ground" option that wouldn't either have sub-par tooling (such as building a custom language) or be annoying to use (such as Python)

We had a lengthy call about this:
It's clear that the valuable part of codegen is the ability to:

Check the inputs/outputs of each job
Run workflows locally

TypeScript is one option for the high-level configuration language, but before we decide on that we need to do more design work to determine what we actually need to be able to specify in the workflow definitions.
For now, we'll be focusing on refactoring our CI to be local-first.


Improve username behavior1

Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

@googlebot I fixed it.


Make sources more prominent across the application

An ambition of Openverse is to help showcase other directories of openly licensed content, in the spirit of collaboration and knowledge sharing. We have also heard from a few of our sources that they feel they are hidden from our results, in many respects.
We should explore adding the source names and link to the source more prominently in our search result views, perhaps next to the license icons.
We should also look into adding similar links to the single audio sources like we do for images:

Removing the needs design label as #1701 addresses this change.


Plex Media Server <IP_ADDRESS>

Thank you for the contribution. It was merged directly as 4ea8d865dd34f5f914b4fee1b2ca1209823aafef to keep commit history cleaner. Your contribution is still credited to you.


add test script to run all tests

This

adds a script to run all tests in all packages from the root of the repo.
fixes several type errors.

Tests are not yet passing, there is a runtime error.
To try it, run the following at the root of the repo:
npm install
npm test

You will see tests exit with a runtime error inside the event-listener tests.

There are many more errors than just the one in event-listener. Right now every test made with jest is crushing for me with an error: (that is in packages: devices, permission, props, geolocation, i18n, stream)
lerna ERR! npm run test stderr:
TypeError: Cannot destructure property 'config' of 'cacheKeyOptions' as it is undefined.
    at ScriptTransformer._getCacheKey (C:\Users\gthet\Repositories\solid-prims-lerna\packages\permission\node_modules\@jest\transform\build\ScriptTransformer.js:280:41)
    at ScriptTransformer._getFileCachePath (C:\Users\gthet\Repositories\solid-prims-lerna\packages\permission\node_modules\@jest\transform\build\ScriptTransformer.js:351:27)
    at ScriptTransformer.transformSource (C:\Users\gthet\Repositories\solid-prims-lerna\packages\permission\node_modules\@jest\transform\build\ScriptTransformer.js:588:32)
    at revertHook.exts (C:\Users\gthet\Repositories\solid-prims-lerna\packages\permission\node_modules\@jest\transform\build\ScriptTransformer.js:864:18)
    at Module._compile (C:\Users\gthet\Repositories\solid-prims-lerna\packages\permission\node_modules\pirates\lib\index.js:93:29)
    at Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Object.newLoader (C:\Users\gthet\Repositories\solid-prims-lerna\packages\permission\node_modules\pirates\lib\index.js:104:7)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
lerna ERR! npm run test exited 1 in '@solid-primitives/permission'

Some of the tests with uvu are also failing: script-loader, share. But the rest seems to be fine.

I think that's all of the tests we have. I think the lerna stuff is messing with the package paths. I'll have a closer look some time later.

lerna success run Ran npm script 'test' in 9 packages in 31.3s:
lerna success - @solid-primitives/audio
lerna success - @solid-primitives/composites
lerna success - @solid-primitives/debounce
lerna success - @solid-primitives/fetch
lerna success - @solid-primitives/fullscreen
lerna success - @solid-primitives/intersection-observer
lerna success - @solid-primitives/scroll
lerna success - @solid-primitives/storage
lerna success - @solid-primitives/throttle

Oh awesome! I've been meaning to move over to uvu. Thanks for tackling this you guys are rockstars. Let me know when you're good with me merging.

I think this can be merged. Failing tests are actually unrelated, lerna scripts aren't causing any issues, only help highlight those already existing. But I might be wrong, so it's worth waiting until @atk takes a look at this.

Merging!


Bugfix: Revert previous changes to template

The previous changes removed several bits of functionality. This change
reverts back to the original template. Leaving the new functions
available for use within a custom template.

Reverts the template changes made in PR #15 but leaving the new functions that could be used within a custom template.


what is your success rate when downloading laion115m?

i am trying to reproduce blip 2 using laion_synthetic_filtered_large but it seems like many urls are no longer working. can i know what is your success rate when downloading the dataset?

Hi @yxchng, we use the tool img2dataset to download the data. The success rate was 60-70%.
You may choose to download a larger portion of LAION-EN-2B so as to get a comparable scale of pre-training data.


Error when search in telescope.

Steps to reproduce:

Given such config:  map("i", "//", "<ESC>"), so I can exit insert mode by input //.
In the telescope search, input a path like link/, this error happened.

Possible duplicate of #273.


[FEATURE REQUEST] JSON output doesn't include the original

Describe the solution you'd like
The JSON output should include, on a per-response basis, the original URL. This would be useful when feeding multiple URLs in via --stdin. It would allow the results, when concatenated and parsed as JSON, to then be filtered based on the host that the response relates to without needing to parse the response URL.
Describe alternatives you've considered
I've considered parsing the URLs to extract the hostname, I've considered truncating the url field based on what's in the path field, and I've considered trying to parse the original URL out of the filenames that are generated when scanning multiple hosts via --stdin, but none of these are clean solutions.
Additional context
% echo https://hackerone.com | feroxbuster --stdin -w raft-small-files.txt --json -o out --time-limit 3s
[... SNIP ...]

% head -n1 out | jq .
{
  "type": "response",
  "url": "https://hackerone.com/faq.php",
  "path": "/faq.php",
  "wildcard": false,
  "status": 301,
  "content_length": 92,
  "line_count": 1,
  "word_count": 5,
  "headers": {
    "x-request-id": "8ca780e6-6bf6-4ba3-a7de-2115af25ff5d",
    "cache-control": "no-cache",
    "location": "https://docs.hackerone.com",
    "x-xss-protection": "1; mode=block",
    "x-frame-options": "DENY",
    "content-length": "92",
    "referrer-policy": "strict-origin-when-cross-origin",
    "x-content-type-options": "nosniff",
    "x-permitted-cross-domain-policies": "none",
    "x-download-options": "noopen",
    "cf-ray": "6b91b5e21f1c3773-MEL",
    "server": "cloudflare",
    "date": "Mon, 06 Dec 2021 01:23:43 GMT",
    "strict-transport-security": "max-age=31536000; includeSubDomains; preload",
    "expect-ct": "enforce, max-age=86400",
    "connection": "keep-alive",
    "content-security-policy": "default-src 'none'; base-uri 'self'; block-all-mixed-content; child-src www.youtube-nocookie.com; connect-src 'self' www.google-analytics.com errors.hackerone.net; font-src 'self'; form-action 'self'; frame-ancestors 'none'; img-src 'self' data: cover-photos.hackerone-user-content.com hackathon-photos.hackerone-user-content.com profile-photos.hackerone-user-content.com hackerone-us-west-2-production-attachments.s3.us-west-2.amazonaws.com; media-src 'self' hackerone-us-west-2-production-attachments.s3.us-west-2.amazonaws.com; script-src 'self' www.google-analytics.com; style-src 'self' 'unsafe-inline'; report-uri https://errors.hackerone.net/api/30/csp-report/?sentry_key=374aea95847f4040a69f9c8d49a3a59d",
    "content-type": "text/html",
    "cf-cache-status": "DYNAMIC"
  }
}

The response object should contain an original_url field (or something similar) containing https://hackerone.com

this is pretty reasonable, and mostly low effort.
I already added it, just need to make sure i didn't miss anything. I have another small change I plan on adding to this release, so it'll be a few days probably til i push it out.
echo -e 'https://hackerone.com\nhttps://tesla.com' | cargo run -- --stdin --json -o out --depth 1 --time-limit 3s

{"type":"response","url":"https://tesla.com/a2a64c4f9010420eb7e109b7cf299d31","original_url":"https://tesla.com","path":"/a2a64c4f9010420eb7e109b7cf299d31","wildcard":true,"status":301,"content_length":0,"line_count":0,"word_count":0,"headers":{"server":"BigIP","connection":"Keep-Alive","location":"https://www.tesla.com/a2a64c4f9010420eb7e109b7cf299d31","content-length":"0"}}
{"type":"response","url":"https://hackerone.com/500","original_url":"https://hackerone.com","path":"/500","wildcard":false,"status":200,"content_length":1091,"line_count":28,"word_count":87,"headers":{"last-modified":"Mon, 06 Dec 2021 12:22:05 GMT","x-frame-options":"DENY","server":"cloudflare","content-security-policy":"default-src 'none'; base-uri 'self'; block-all-mixed-content; child-src www.youtube-nocookie.com; connect-src 'self' www.google-analytics.com errors.hackerone.net; font-src 'self'; form-action 'self'; frame-ancestors 'none'; img-src 'self' data: cover-photos.hackerone-user-content.com hackathon-photos.hackerone-user-content.com profile-photos.hackerone-user-content.com hackerone-us-west-2-production-attachments.s3.us-west-2.amazonaws.com; media-src 'self' hackerone-us-west-2-production-attachments.s3.us-west-2.amazonaws.com; script-src 'self' www.google-analytics.com; style-src 'self' 'unsafe-inline'; report-uri https://errors.hackerone.net/api/30/csp-report/?sentry_key=374aea95847f4040a69f9c8d49a3a59d","x-xss-protection":"1; mode=block","x-permitted-cross-domain-policies":"none","referrer-policy":"strict-origin-when-cross-origin","cf-cache-status":"DYNAMIC","date":"Tue, 07 Dec 2021 03:14:16 GMT","content-length":"1091","content-type":"text/html","x-download-options":"noopen","connection":"keep-alive","expect-ct":"enforce, max-age=86400","strict-transport-security":"max-age=31536000; includeSubDomains; preload","cf-ray":"6b9a95353ee40c07-DFW","x-content-type-options":"nosniff"}}

if you're in need of it sooner, let me know and i'll push the PR so you can build it from source.

@epi052 Thanks! Glad to hear it was easy, I hadn't checked the code but I was worried the original URL might have been "thrown away" by the time the JSON was generated.
No rush at all. I can wait for the release.

@all-contributors please add @justinsteven for ideas


Ivan Garcia homework

Name: Ivan Garcia Del Risco
Email<EMAIL_ADDRESS>Linkedin Profile: https://www.linkedin.com/in/ivan-garcia-del-risco/
Attach the homework screenshots below for both step II and step III:

Hope all is ok!!!!

Hey Ivan Garcia Del Risco, great job! Congrats! Here is your badge! https://api.badgr.io/public/assertions/4vdjScDPRliwFLQWotQz-A


OnUnobservedTaskException() System.ArgumentException: Requested value 'media' was not found.

Reposting this deleted issue from @shinji257.  I deleted it because the original post had sensitive information.

Not sure what triggers this.  It looks like it is trying to check filtering but I have nothing custom defined in the bot.  I'm not even sure where the media keyword is used.
EDIT: Actually it looks like it is happening when it detects a PICS change.  I just added the default set of filters to the config to see if it fixes it... Will advise later and close if it does.
2023-12-05 14:31:53|ArchiSteamFarm-52604|FATAL|ASF|OnUnobservedTaskException() System.ArgumentException: Requested value 'media' was not found.
   at System.Enum.TryParseByName(RuntimeType enumType, ReadOnlySpan`1 value, Boolean ignoreCase, Boolean throwOnFailure, UInt64& result)
   at System.Enum.TryParseInt32Enum(RuntimeType enumType, ReadOnlySpan`1 value, Int32 minInclusive, Int32 maxInclusive,Boolean ignoreCase, Boolean throwOnFailure, TypeCode type, Int32& result)
   at System.Enum.TryParse[TEnum](ReadOnlySpan`1 value, Boolean ignoreCase, Boolean throwOnFailure, TEnum& result)
   at FreePackages.FilterableApp..ctor(UInt32 id, KeyValue kv)
   at FreePackages.FilterablePackage.<>c.<AddPackageContents>b__22_0(ValueTuple`2 packageContent)
   at System.Linq.Utilities.<>c__DisplayClass2_0`3.<CombineSelectors>b__0(TSource)
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.ToList()
   at FreePackages.FilterablePackage.AddPackageContents(IEnumerable`1 packageContents)
   at System.Collections.Generic.List`1.ForEach(Action`1)
   at FreePackages.PackageHandler.HandleProductInfo(List`1 productInfo)
   at FreePackages.PackageHandler.GetProductInfo(HashSet`1 appIDs, HashSet`1 packageIDs, Func`2 onFetchProductInfoCallback)
   at FreePackages.PackageHandler.HandleChanges()
   at FreePackages.PackageHandler.<>c.<<OnPICSChanges>b__19_3>d.MoveNext()

I think I see what's causing this.  This doesn't look like a config issue.  It looks like there's a certain game which has a property value that the plugin isn't expecting to see.
If it doesn't go away on it's own, maybe you can temporarily fix this by going to your ArchiSteamFarm config folder, and edit the FreePackages.cache file in a text editor.  Change it to something like: {"LastChangeNumber":21412195}
I'm currently running the plugin, but I didn't get this error, and I don't understand why I wouldn't.  Have you been using the plugin for long or have you just started using it?  What version of ArchiSteamFarm are you using?  Also are you using an OS specific version of ArchiSteamFarm or the generic version?

New user and adding the default filters to the bot config changed nothing (sorta expected).  I did add a bunch of license requests to the queue via the user script.
ASF <IP_ADDRESS> - win-x64 - c582499

@shinji257 if you weren't aware, when you posted your config earlier your email and password were visible.  It was up for a few minutes before I deleted it and I can't guarantee that no one else saw it.

I noticed and I was trying to be diligent about that.  I'll change it sometime.  Luckily I do unique passwords now so only Steam would be impacted.
Anyways I migrated to ASF <IP_ADDRESS> - generic - c582499 and will monitor to see if it still does it.

Just got it on generic.  Wish there was a way to know what game it is trying to process that triggers the message.  Lemme try clearing the list and let it sit a while.

This version should fix the issue: FreePackages V1.3.1.zip
However, this new version requires at least ArchiSteamFarm V<IP_ADDRESS>.  I could offer a fix this for the current stable version of ArchiSteamFarm, though that will take me more time.

That's not an issue for me to update.  I bumped to the latest pre-release of <IP_ADDRESS> and will monitor to see if I get a recurrence but I'm confident you took care of it.  I'll leave it up to you if you want to fix it on the stable build.

Nevermind.  Issue persists...
Currently on <IP_ADDRESS> / <IP_ADDRESS>
2023-12-05 17:13:53|dotnet-24724|FATAL|ASF|OnUnobservedTaskException() System.ArgumentException: Requested value 'media' was not found.
   at System.Enum.TryParseByName[TStorage](RuntimeType enumType, ReadOnlySpan`1 value, Boolean ignoreCase, Boolean throwOnFailure, TStorage& result)
   at FreePackages.FilterableApp..ctor(UInt32 id, KeyValue kv)
   at FreePackages.FilterablePackage.<>c.<AddPackageContents>b__22_0(ValueTuple`2 packageContent)
   at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.ToList()
   at FreePackages.FilterablePackage.AddPackageContents(IEnumerable`1 packageContents)
   at System.Collections.Generic.List`1.ForEach(Action`1 action)
   at FreePackages.PackageHandler.HandleProductInfo(List`1 productInfo)
   at FreePackages.PackageHandler.GetProductInfo(HashSet`1 appIDs, HashSet`1 packageIDs, Func`2 onFetchProductInfoCallback)
   at FreePackages.PackageHandler.HandleChanges()
   at FreePackages.PackageHandler.<>c.<<OnPICSChanges>b__19_3>d.MoveNext()

I think this is the same as mentioned earlier.

The version I posted here should be 1.3.1.  Can you verify that when ASF is starting up you see the line:
InitPlugins() Loading FreePackages V<IP_ADDRESS>...

My bad.  For some reason I thought you linked to the releases and didn't actually click on that.  Now I have <IP_ADDRESS>.  I'll let you know if the issue shows up again.

Been an hour and so far no message.  Looks like we got it.


Fixed wording for better flow.

@MendelBak : Thanks for your contribution! The author, @"CarlRabeler", has been notified to review your proposed change.

@GitHubber17 : Thanks for your contribution! The author, @CarlRabeler, has been notified to review your proposed change.

#sign-off


Devise timeoutable session length not respected

Environment

Ruby 2.7.2
Rails 6.1
Devise 4.7.3

Current behavior
My goal was to persist sessions for around 30 days before requiring the user to login again. With stock devise, (no invitable) I was seeing long session times on my desktop browsers but short sessions on mobile devises. I realized maybe I needed to be using :timeoutable
I installed against a User model.:timeoutable is enabled and confirmed in devise.rb to expire in 29.days. No instead of longer sessions times all browser sessions are closing out after around hour or two.
Expected behavior
Session should persist for 29.days before requiring the user to login again.

I feel like I'm missing something obvious but I can't find it. Is :timeoutable not the right way to achieve this?

Closing this and moving it to stack overflow for now. Will re-open if it becomes clear it's a bug.


How to predict after random crop(training image shape is different with predict image shape)

I want to use random crop to train my network, as the original shape is (256,1024,3),
I use the input shape (256,512,3) for training, but when I try to predict original image which shape is (256,1024,3), I got this error:
Error when checking input: expected input_1 to have shape (256, 512, 3) but got array with shape (256, 1024, 3)
seems like in keras the input shape should be fixed, right now I just divide input data into 2 image and combine them after prediction.
Is there a better solution for that?
THX a lot!
i just switch caffe to keras, in caffe this shouldn't be a problem.

You say "I use the input shape (256,512,3) for training".
And you say: "I try to predict original image which shape is (256,1024,3)".
This shape simply does not fit... That's the error.

@PhilipMay
thanks for your replay, I know this error is very obvious...
Maybe I didn't describe it clearly, I'm training segmentation network which the input and output of the network will be the same.
Because I use random crop for training, so the training image will be smaller than original image, like training (256,512,3) and predict (256,1024,3).
So there will be a problem that the shape of image to be predicted is different with training image, which is not a problem in caffe. I can use  (256,512,3) for training and  (256,1024,3) for prediction.
So I'm asking, is it possible in keras.

@EricSheng0402
Yes, that's possible in Keras.
When you create your model, you should give each layer an individual name. After training, you can save that model. Then you create a new model, which is exactly build the same, has the same names, but the input layer has a different shape. You can then create that model, and load the weights of the trained model into that model with the option by_name=True:
model.load_weights('my_model_weights.h5', by_name=True)
See the FAQ for details:
https://keras.io/getting-started/faq/#how-can-i-save-a-keras-model


Initial work

Do something

@0crat hello

I'm not managing this GitHub repository (dronmdf/telebot). You have to contact me in Slack first.

@0crat  hello

@0crat  in

@0crat in (here)

@DronMDF Job gh:dronmdf/telebot#1 is in scope.

+15 points just awarded to @dronmdf, total is +15.

Job gh:dronmdf/telebot#1 assigned to @spark, please go ahead (policy).

@0crat refuse

@0crat refuse (here)

@DronMDF @spark resigned from gh:dronmdf/telebot#1, please stop working.

Job gh:dronmdf/telebot#1 assigned to @spark, please go ahead (policy).

@0crat refuse

You need to ask somebody to invite you: https://github.com/zerocracy/datum#invite-only

@0crat refuse

You need to ask somebody to invite you: https://github.com/zerocracy/datum#invite-only

@0crat refuse

@0crat refuse (here)

@roman901 Oops! You need to have one of these roles in order to do what you're trying to do: ARC, PO. I'm sorry to say this, but at the moment you've got no roles in this project (your GitHub login is "roman901").

@0crat out

@0crat out (here)

@DronMDF Job gh:dronmdf/telebot#1 is now out of scope.

+30 points just awarded to @spark, total is +90.

Oops! Job gh:dronmdf/telebot#1 was not in scope


DCOS-12642: Fixing lost characters when typing in Jobs filter

This PR removes the QueryParamsMixin and SaveStateMixin (for consistency) from the JobsTab, and fixes an issue where letters were dropped when typing in the Jobs search filter.
In detail:

QueryParamsMixin is not using the nextProps coming from the componentWillReceiveProps in order to synchronize the component state from the query parameters, and
Mix-ins are considered deprecated, therefore I didn't fix the problem there, rather I re-used the same approach as from the ServicesContainer
SaveStateMixin was racing the QueryParamsMixin and causing another set of problems. However I do agree that we are losing some of the functionality and perhaps has to be re-introduced in another way (without using mix-ins).

Works great!


Provider should be installable using Helm

Follow same approach to other project components and allow providers to be installed with Helm charts.

Work for this has started in https://github.com/apache/incubator-openwhisk-deploy-kube/pull/474


[Bug]: No entities found

What happened?
I already connected to the dataverser (see emage)

but when i tried to generated the typings a im getting this error

What version of the tool are you using?
2.1.1
What version of Visual Studio Code are you running?
1.77.3
Any relevant session id from VSCode?
No response
Relevant log output
No response

Are you sure the user you are trying to login with has the permission to read the metadata?


Created Dockerfile

Adds a Dockerfile for easier hosting on fly.io.
If accepted, I'll update the README or upload a PDF file which outlines how to host the bot freely on fly.io

PDF file showing how to host has been added.


Center tank divs on mobile devices

Describe the bug
Currently, the tank div gets floated left on mobile devices and the text description of the tank starts to overlap with the canvas, which doesn't look good.
To Reproduce
Use the browser inspector to view the site on any mobile device.
Expected behavior
Center the divs on mobile devices and make the text to appear right at the bottom and not by its side.
Screenshots

@amaaniqbal please assign me with this issue.

@amaaniqbal Please assign me with this issue, I am interested to work on this. This is my first open source contribution.

please assign me with this issue @vinitshahdeo

@SaranshDawra, you have been assigned this issue. Please try to resolve it as soon as possible.


Fix/snowflake view transactions

This PR fixes https://github.com/fishtown-analytics/dbt/issues/930. Additionally, it reconciles this.name and this.table sort of by accident.
The Problem
When Snowflake views are created, the column structure for the view is determined and saved by Snowflake. For example, if a Snowflake view is defined as select * from some_table, then this view will have a structure identical to that of some_table. If in the future, some_table is recreated with a new definition, then the saved structure for the original view might become out of sync with it's new definition. For example:
create table public.base_table as (
  select 1 as id
);

-- dependent_view is created with a single column (id)
create view public.dependent_view as (
  select * from public.base_table
);

-- recreate base_table with two columns (id, name)
drop table public.base_table;
create table public.base_table as (
  select 1 as id, 2 as name
);

-- This will fail: dependent_view's structure is now invalid
select * from public.dependent_view;

> View definition for <relation> declared 1 column(s), but view query produces 2 column(s)

What happened
dbt's behavior around building tables and views changed in 0.10.2. Namely: statements were reordered so that drop statements are run outside of transactions. This change affects Postgres, Redshift, and Snowflake. It did have the positive effect of reducing concurrent transaction errors (more info on this here), but it also caused this unintended consequence with Snowflake views.
Manifestation in dbt
dbt failed with this error during the swap-and-drop part of the view and table materializations. In particular, running:
alter table dbt_schema.some_view rename to some_view__backup

would fail if some_view's definition became inconsistent with its saved schema. This would happen when the definition of an upstream model was changed manually, for instance.
The Fix
The best way to fix this is to avoid the whole create-temp then swap-and-drop workflow. Instead, we can very simply execute create or replace view to atomically overwrite an existing view with its new definition. When this happens, Snowflake does not try to validate the existing view's definition against it's saved structure.
Fallout
With this change, dbt is no longer creating a __dbt_tmp suffixed view, so a special case would need to be made for the this variable. Rather than add increasingly complex logic to prevent this.table from using a __dbt_tmp suffix for snowflake views (as we currently do for incremental models), this PR runs hooks after the new model is renamed to its final identifier. As a result, the __dbt_tmp table (if it exists) is never visible to hooks, so we can make this.schema == this.name.

@beckjake adding you for review since you were just deep in the BQ view materialization code. Does all of this look reasonable? There's a lot in here, but I think it fixes our immediate problem with:

View definition for  declared 1 column(s), but view query produces 2 column(s)
as well as obviating the need for that terrible __dbt_tmp suffix code


Team encountering Error connecting to Superset site via VPN

Have multiple users including myself not being able to connect to Supset.
When trying to access it we are presenting with this error

Would love to get in contact with someone internally as the person managing our superset is no longer with the company.
Thank you,

I'm afraid this error has nothing to do with Superset itself. Maybe the system behind Superset is failing. Relevant logs from superset would help to identify the issue.

Closing this as stale since it's been silent for so long, and we're trying to steer toward a more actionable Issues backlog. If people are still encountering this in current versions (currently 3.x) please re-open this issue, open a new Issue with updated context, or raise a PR to address the problem. Thanks!


Unable to list resources in account.... Contact your subscription administrator

I have been working solo on a free trial account for a few months perfectly fine. I am running the desktop software on Macbook 10.13.16 High Sierra.
Now I am receiving this error:
Unable to list resources in account due to inadequate permissions. Permission to list containers or to list account keys is required. Contact your system administrator to resolve this issue.
I've logged out at logged back in and updated the app. What else can I do to fix this?Screenshot attached for reference.

Hey @crissandraauree , how long ago did you make your trial account? According to what I can find they are only good for 12 months: https://azure.microsoft.com/en-us/free/

Closing due to lack of response.


AWS: can't use assumed roles / environment settings with connection strings

Currently, AwsStorageModule requires the keyId and key parameters to construct a storage adapter from a connection string.  It would be nice to be able to use ambient authentication information, such as EC2/Lambda IAM roles or environment variable configuration.

Good idea, happy for you to pick this up.

closing as resolved


[Misc/Repo] Add issue templates.

[ ] Bug report template.
[ ] Feature template

Examples:

https://github.com/ArielMAJ/test.me/tree/main/.github/ISSUE_TEMPLATE
https://github.com/open-sauced/.github/tree/main/.github

Added through ".github" repository


[test, otbn] Add the otbn_mem_scramble chip level test

This PR adds the test:
chip_sw_otbn_mem_scramble
Verify the OTBN can receive keys from the OTP to scramble the OTBN imem and dmem.

Have OTBN fetch a new key and nonce from the OTP_CTRL.
Write and read-check OTBN and IMEM for consistency.
Fetch a new key from the OTP_CTRL and ensure that previous contents in the IMEM and
DMEM cannot be read anymore.

@doreis-lowrisc please note I've just updated Ibex within OT. It will now raise an exception when an ECC error is seen on read. This will alter the behavior of this test (when you read from the OTBN memory after secure wipe you'll get an exception).

when you read from the OTBN memory after secure wipe you'll get an exception

Well, probably. You'll also have to handle the case where you get no exception, but get a bogus value (it will happen one time in 128).

Thanks @rswarbrick and @GregAC , I updated the test to handle the exception.


Move 'read-more' inside of p tag

Having 'read-more' right behind the text content inside the same paragraph might be the more desired layout, which is what the demo uses.

you mean outside of p tag?

No, inside.


Version Packages (tech-radar)

Releases
<EMAIL_ADDRESS>Major Changes

e5a9abf: The plugin now fetches data from the @backstage-community/plugin-tech-radar-backend plugin.
If you are providing a custom API via techRadarApiRef, this change will not affect you. However, if you are using the default API with the default mocked data, you will need to install the @backstage-community/plugin-tech-radar-backend plugin.
BREAKING: Additionally, several types have been moved to the @backstage-community/plugin-tech-radar-common plugin. If you are using TechRadarLoaderResponse, RadarEntry, RadarQuadrant, or RadarRing, you will need to import them from the @backstage-community/plugin-tech-radar-common plugin.

Patch Changes

Updated dependencies [e3ab8e9]

<EMAIL_ADDRESS>

<EMAIL_ADDRESS>Major Changes

e3ab8e9: Initial release of the tech-radar-backend plugin.

Patch Changes

Updated dependencies [e3ab8e9]

<EMAIL_ADDRESS>

<EMAIL_ADDRESS>Major Changes

e3ab8e9: Initial release of the tech-radar-common plugin.

<EMAIL_ADDRESS>Patch Changes

Updated dependencies [e3ab8e9]
Updated dependencies [e5a9abf]

<EMAIL_ADDRESS><EMAIL_ADDRESS>

<EMAIL_ADDRESS>Patch Changes

Updated dependencies [e3ab8e9]
Updated dependencies [e5a9abf]

<EMAIL_ADDRESS><EMAIL_ADDRESS>

<EMAIL_ADDRESS>Patch Changes

Updated dependencies [e3ab8e9]
Updated dependencies [e3ab8e9]

<EMAIL_ADDRESS><EMAIL_ADDRESS>

relevant PR is https://github.com/backstage/community-plugins/pull/1762


Release version

Hello, is it possible to draft a release?
As of right now, there are no tags or releases.
While we are in development/testing, this is has no impact to us, but for production systems, we would prefer to install a fixed version instead of grabbing what flavor of master currently has.
Thanks!

:+1:, we're currently forced to commit the library in a vendor/ directory, which makes our release process way more complicated than it should be.

Thanks.  I understand.

We have not planned to do any releases of this code as it is an example implementation of the API in Python. Feel free to use it as is, but the intended use is as an example. Not a released product.

@Pelleplutt So what if I just forked the client and published it myself to https://pypi.python.org/pypi/trustly?

@underyx as the code is licensed under MIT I cannot technically prevent you from doing this. HOWEVER please read my previous response to this. This is not code intended to be released as a drop-in ready to use module for Trustly integration. This is an example implementation of the API in Python. Intended use of this is a technical reference on how an implementation can be done. This might change in the future, if and when that happens we will need to provide a better baseline in terms of testing and release cycle of this code.
Please do not enforce your internal release problems with a repository on github that has nothing to do with it. If this is a problem in our own build then perhaps addressing what makes that complicated would be a better way to go.

While you're describing this repo as an unstable reference implementation, we've been using it in production for a long time with no issues. I bet you that most people who would implement a trustly client would end up with way more unstable and buggy code.
We're also obviously not going to be the only ones who would benefit from this code being on PyPI.
Or, to refer to the Zen of Python:

practicality beats purity

There's no arguing that having this 'impure' package published on PyPI would be practical for people.
I offered to publish it under my name to relieve Trustly from the responsibility of maintaining the package. Naturally, I would do my best to inform people of the unstable status of the project. Perhaps you would be (personally) okay with a different package name? trustly-reference maybe?

Our intent is never to publish untested or unstable code. I am glad it works as intended. My point being that if this would be an official Trustly released package we would need to maintain it as such.
I appreciate the effort, thanks. But no thanks. Having an unofficial package maintained by a third party copying the actual product does not really add value or practicality as I see it. The best source of a published package that is originally written and maintained by us would be the original author. This would confuse and complicate.
Adress the issues in your build instead.

Alright, I will not publish it then. I still would like to point out that

Adress the issues in your build instead

is not a resolution here, since the problem I'm describing is exactly that this is creating an issue that needs to be addressed — we can't install this one dependency the same way as all the other ones, since all our other dependencies are on pypi and this one is not. The expected behavior would be keeping our build process simple and consistent, with no special cases.


iOS: Fix cancelAndUpdate/Discard Functions

Previously these actions on the MSTableOperationError object would
essentially noop, now they will perform as documented

Looks good.


Local migration support

Resolves #42
I was testing #40, so this PR includes that branch (just review the top commit).

Codecov Report

Merging #43 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #43   +/-   ##
=======================================
  Coverage   69.64%   69.64%
=======================================
  Files          10       10
  Lines         280      280
=======================================
  Hits          195      195
  Misses         85       85

Continue to review full report at Codecov.

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

@yudistrange passing checks and deployed to stage, this PR now includes a tiny UI change as well. Please review and merge.


Don't assume boolean when column type not specified and value is 0

In Backpack 4, when a column value is 0 and show settings is set, backpack 4 appears to assume it is a boolean and display 'No'. in the Preview (show) page
I think that is not the common expectation. This happens when value is 10 too.

Hello @ziming thanks for reporting this issue to us.
Can you provide me a little more info so i could reproduce the issue ?
This is what i'v done so far:

Created one text and one number field in a CRUD.
Set those fields values to 0.
Added them to columns whitout specifying it's type $this->crud->addColumns([['text'],['number']]);
Went to show view and saw

Text: 0
Number: 0
Can you help me here to reproduce this ?
Thanks in advance,
Pedro

Ah i mean u don't even have setupShowOperation() method. u just have the trait only.

Hello @ziming . Thanks for quick reply.
I removed the setupShowOperation() to make sure it's uses setFromDb()
My number and text field from above still show 0.
The only Yes or No i have in page are checkbox fields.
Maybe i am just doing something wrong help me here with some sample code, so we can go through and close this issue.
Best,
Pedro

I'm on the train now. what about 10?

No problem man. Tried 10. Expected results.
When you have time let me know your field setup in database, your model fillable and casts and your crud field.
We must be doing something different, but we will get there :)
Best,
Pedro

Hi @pxpm
Ok replicated it in my local development.

I set that column value to 10 or 5
in my model class, my cast for that column is integer
In my CrudController. If my setupShowOperation() is empty it shows No (boolean)
If I remove setupShowOperation(), it also shows No (boolean)
If I have setupShowOperation() and I define that column as number type, then it shows the number
In my migrations, that column type is unsignedTinyInteger

Hope it helps and thanks for the hardwork

@ziming Thanks for helping me reproducing this issue.
I can confirm it, but i am afraid it's not 100% Backpack fault on this. If you don't specify the setupShowOperation  like you said, Backpack will use the setFromDb functionality, It has a built in Laravel schema mapper.
The thing is that mapper assumes tinyInt as boolean. In fact Laravel is using the alias $table->boolean for tinyInt.
You can check here the results for that specific table column, number is the name of my field on db (unsignedTinyInt).
I hope i made myself clear on the explanation.
I will be closing this issue, but please feel free to keep the discussion if you think we can do something about it.
Best,
Pedro


add CLI arguments for request timeouts

Allows for customization of the individual HTTP request timeout (previously hardcoded to 10 seconds on socket connect/reads) and the total amount of time to spend retrying requests.
Can be useful if sending a command to a Helios master that has thousands of jobs in the output or if the master is otherwise slow.

Current coverage is 47.61%

Merging #872 into master will increase coverage by +0.02% as of 83998f3

@@            master    #872   diff @@
======================================
  Files          270     270
  Stmts        12696   12730    +34
  Branches      1612    1612
  Methods          0       0
======================================
+ Hit           6043    6061    +18
- Partial        456     457     +1
- Missed        6197    6212    +15

Review entire Coverage Diff as of 83998f3

Powered by Codecov. Updated on successful CI builds.

for instance:
in/helios --http-timeout 1 --retry-timeout 300 -d some.slow.site status
running in helios project, using /Users/mattbrown/code/helios/helios-tools/target/helios-tools-0.8.0-SNAPSHOT-shaded.jar
16:44:31.030 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:44:37.125 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:44:43.209 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:44:49.290 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:44:55.377 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:01.464 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:07.558 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:13.637 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:19.730 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:25.880 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:31.969 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:38.050 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:44.135 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:50.216 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
16:45:56.294 WARN  RetryingRequestDispatcher: Failed to connect, retrying in 5 seconds.
...

@spotify/helios-team

:+1: lgtm

@mattnworb should we merge this?

was hoping for more eyeballs but I am fine making executive decisions


Empty src attribute on Firefox 41.0.1 (Mac) prevents holder working

Hi
The blank "src" attribute in the helper prevented the holder from showing in Firefox.
Best
Warren

This should be fixed in Firefox or in Holder.js itself.