instanceof on Proxy object doesn't work

My understanding of Proxy objects is that they're supposed to pass any operations without a trap through to the original object.  However, this doesn't work:
var obj = new MyObject();
var proxy = new Proxy(obj, {});
print(proxy instanceof MyObject); // false

Is this a bug, or intended?  Background: minisphere has a ByteArray object as part of its API, used for reading raw data from files and sockets and such.  Since Duktape doesn't have TypedArrays or ArrayBuffers, I'm using a Proxy object to catch array accesses so that I can redirect the values into an underlying buffer.  However, because of the above behavior, this breaks instanceof for ByteArray objects.
Related issue: Applying instanceof against the Proxy constructor results in an unexpected type error being thrown.

The current Proxy is a subset of ES6, here's the list of implemented traps:

http://duktape.org/guide.html#es6-proxy

Prototype handling is not yet implemented.

Ah, thanks.  I tried a workaround where I manually changed the prototype on the Proxy to the base object, but that caused a segfault.
For what it's worth I think Proxy is one of the best things about ES6, it's like Lua metatables but much cleaner.

Could you paste the segfault-causing code - that's not supposed to happen :)

Sure. :)  I investigated the issue some more and discovered the segfault in my case was due to a double free--the finalizer ran twice.   twice, indicating double finalization.

There is currently no guarantee that a finalizer won't run multiple times and there are indeed a few corner cases where that happen.

I know that; I remember reading that in another issue.  The thing is, I'm wondering if it's an actual bug in this particular case, specifically related to prototype inheritance and finalizers.  Since I've set the prototype of cow (which has no finalizer) to pig (which does), is it possible that the finalizer is inherited through the prototype chain too?  Thus it runs once when pig is collected and again when cow is collected, which would be a legit bug.

Finalizer is indeed inherited and on purpose so that the finalizer property doesn't need to be duplicate for every object instance. The downside of this is that it also runs for the prototype (as well as the instances).

In this case the Duktape.fin() you initialize should be called for both cow and pig: the finalizer gets an argument (the object being finalized) that you can check to see if that's the case.

(function() {
	var cow = { name: "cow", food: "kitties" }, pig = { name: "pig", food: "cow" };
	Duktape.fin(pig, function(obj) { print("The " + obj.name + " just ate the " + obj.food + "!"); });
	Object.setPrototypeOf(cow, pig);
})();
Duktape.gc();

Output:
The cow just ate the kitties!
The pig just ate the cow!

Holy crap, that's awesome!  Don't change that; I had no clue finalizers could be inherited, that changes everything.  Currently I have a hack where I store the finalizer function in a hidden property of the prototype ("\xff" "dtor") to be set when each object is created, but now that I know this, I actually just have to set it once--on the prototype.  I take it back; it's not a bug, it's a feature! :smile:

:smile: For most use cases inheriting the _Finalizer property is useful but there are some where it may be an issue. Perhaps there should be a non-inheritable _Finalizer variant; shrug. OTOH you can just define an empty _Finalizer (in fact any non-function value will be silently ignored and will prevent inheritance) if you don't want inheritance.
Anyway, the current behavior is part of the v1.x compatibility promise so it won't change in 1.x at least.

Basic prototype which adds Proxy support to 'instanceof' without supporting getPrototypeOf trap:

https://github.com/svaarala/duktape/compare/proxy-instanceof?expand=1

So in other words, with this it will forward the instanceof test to the Proxy'd object?  That's useful, this way I won't have to evilly replace the prototype on the Proxy object anymore.

Yes, that's the ES6 behavior. Or more precisely, the instanceof algorithm should use [[GetPrototypeOf]] which for a Proxy should check for getPrototypeOf trap and fall back to the target object if the trap is not implemented.
The diff in this branch falls back to the target object without checking for getPrototypeOf trap which is not yet supported. So it's a subset of the ES6 behavior.

@fatcerberus The original code in the issue description now prints, so at least that case works :-)
((o) Duktape 1.2.99 (v1.2.0-178-ge463e23)
duk> function MyObject() {}
= undefined
duk> var obj = new MyObject(); var proxy = new Proxy(obj, {}); print(proxy instanceof MyObject);
true

Nice, thanks. :smile:  I can't wait for 1.3!

Merged the Proxy instanceof support to master.
The best change would actually be to replace every DUK_HOBJECT_GET_PROTOTYPE() with a call to a helper that either read the prototype pointer directly, or resolved a Proxy target before doing that, so that Proxy behavior w.r.t. prototypes would be fixed everywhere. This is not ideal though because the lookups will become slower.
Another approach would be to copy the target object's internal prototype to the Proxy internal prototype field, so that prototype traversal would automatically flow into the target. This would work correctly as long as internal prototypes are left unchanged. But, there's nothing stopping a user from modifying the Proxy target's internal prototype -- and this change would then need to be reflected in the Proxy object too. Since there's no "backpointer" from the target to the Proxy (or any number of Proxy objects), there's no realistic way of doing this.

I'll close this now - the support is not complete as getPrototypeOf is not supported, but that will be covered by the ES6 Proxy gap analysis step anyway.

I know this is closed already, but regarding slower lookups: If the performance hit is only for Proxy objects, I'd be okay with it.  You have to expect adding an extra level of indirection will slow things down.

It affects all objects because the check is "Is this a Proxy object? If so, do X, else do Y".


error TS2322 on generic ref<Map> assignment

Vue version
3.3.11
Link to minimal reproduction
https://github.com/goodwan/vue3-generic-ref-map
Steps to reproduce
the following code compiles in vue 3.3.8 but fails with 3.3.11 and 3.4.15
// App.vue
function test<K>() {
  const m: Ref<Map<string, K>> = ref(new Map<string, K>())
}

build attached github project with vue 3.3.11 to get build error
src/App.vue:5:9 - error TS2322: Type 'Ref<Map<string, UnwrapRefSimple<K>>>' is not assignable to type 'Ref<Map<string, K>>'.
  Type 'Map<string, UnwrapRefSimple<K>>' is not assignable to type 'Map<string, K>'.
    Type 'UnwrapRefSimple<K>' is not assignable to type 'K'.
      'K' could be instantiated with an arbitrary type which could be unrelated to 'UnwrapRefSimple<K>'.

5   const m: Ref<Map<string, K>> = ref(new Map<string, K>())
          ~

What is expected?
assignment should compile
What is actually happening?
something changed in typed declarations for ref and/or Ref that introduced types incompatibility
System Info
No response
Any additional comments?
No response

any workaround how to pass ref(new Map<string, K>) or reactive(new Map<string, K>) to function test<K>(m: Map<string, K>)?
what type should m have? neither Map nor Ref<Map> works

You can declare types like this：const fn = <T>() => {                 const m: Ref<Map<string, UnwrapRefSimple<T>>> = ref(new Map<string, T>())               }

it looks like UnwrapRefSimple is not exported

Technically the type mismatch is revealing that your previous logic has correctness issues if the Map values contain nested refs.
If you don't need the Map values to be reactive, use a shallowRef instead.

logic is quite simple:

I have a function that takes a generic Map<string, K>, i.e. calcSomeMagicNumber(m: Map<string, K>): number
I want to pass a reactive map (i.e. from pinia getter) into it

ideally I would like to pass it "as is" like I did before. it is not possible since 3.3.10 as @yangxiuxiu1115 kindly pointed out, and I am now wondering how can I change function signature to be able to pass reactive maps


fix(rich-text-editor): DP-116205 fix line break related issues

fix(rich-text-editor): DP-116205 fix line break related issues

Obligatory GIF (super important!)

:hammer_and_wrench: Type Of Change

These types will increment the version number on release:

[x] Fix

:book: Jira Ticket
https://dialpad.atlassian.net/browse/DP-116205
:book: Description
Changed to a different method to submit line breaks using shift + enter in rich-text-editor
:bulb: Context
We've been having various issues with the way enter / new lines are handled within rich-text-editor and have to keep putting in workaround hacks to get it to work how we want. (see jira ticket for latest weird issue). HardBreak extension seems to cause various unwanted issues and after browsing around stack overflow it seems the best solution may be to remove it entirely.
I had to fix this already as part of my hackathon project, so I'm moving the code from my hackathon project to the actual component. Appears to work much more reliably as it is using built in tiptap/prosemirror commands. Could be some unknown regression here so I'm going to check with the product teams before merging to ubervoice, and also do more testing on my own.
:pencil: Checklist

For all PRs:

[x] I have ensured no private Dialpad links or info are in the code or pull request description (Dialtone is a public repo!).
[x] I have reviewed my changes.
[x] I have added all relevant documentation.
[x] I have considered the performance impact of my change.

For all Vue changes:

[x] I have made my changes in Vue 2 and Vue 3. Note: you may sync your changes from Vue 2 to Vue 3 (or vice versa) using the ./scripts/dialtone-vue-sync.sh script. Read docs here: Dialtone Vue Sync Script

:crystal_ball: Next Steps
update in ubervoice, confirm the problems are fixed.
:link: Sources
https://github.com/ueberdosis/tiptap/issues/2755

When copying a text that has soft breaks created with shift + enter, the line breaks are removed:

When copying a text that has soft breaks created with shift + enter, the line breaks are removed:

Good find. I have re-included the "HardBreak" extension but am no longer triggering it when pressing enter so we should still be able to support pasted hard breaks.

I can still reproduce copy/paste issue of https://dialpad.atlassian.net/browse/DP-116205

This could be an improvement of editor but does not fix the issue. I can still reproduce copy/paste issue of https://dialpad.atlassian.net/browse/DP-116205

Hmm yeah as soon as I added the hardbreak extension back in the problem came up again... Will look into more tomorrow.

Seems like the developers of the extension are fixing this: https://github.com/ueberdosis/tiptap/issues/5679#issuecomment-2506461301

Seems like the developers of the extension are fixing this: ueberdosis/tiptap#5679 (comment)

oh nice.. yeah I was trying to find a workaround but sounds like they are on top of it.

Seems like the developers of the extension are fixing this: ueberdosis/tiptap#5679 (comment)

I've implemented the fix they put up in this PR into our own component. This can be removed once the new link-extension release is out but I'm putting it in here right now just for the purposes of fixing this in a timely manner.
Should work correctly now, contains hardbreak extension and allows for pasting links with hardbreaks.

console error on implementation

console error on implementation

hmm looks like they have already merged the fix and are preparing a release. I'll just wait for the fix.

The fix hasn't been released with extension-link yet, however it was released in linkifyjs. Just adding the correct version of that dependency has fixed the issue

To be clear on the new behaviour:
when allowLineBreaks is true:

Enter creates a paragraph
Shift + Enter creates a line break
Ctrl/Cmd + Enter creates a line break

when allowLineBreaks is false:

Enter makes no change and fires an event
Shift + Enter creates a paragraph
Ctrl/Cmd + Enter creates a line break

Ready for review.

Still broken...
Now the link with soft breaks gets split

hey @braddialpad i'm having some issues when using shift + enter on the message input on beta
Screen.Recording.2024-12-17.at.12.41.32.PM.mov
Error: There is no node type named 'listItem'. Maybe you forgot to add the extension?

is there something we need to add on firespotter side to make it work?

@bianca-artola-dialpad strangely I'm not getting this at all when I try. Are you still getting it on beta?

Not reproducible now on beta but I think is because of the new release process for beta in which we rollbacked to the previous release on Tuesday (so no front-end changes will be displayed for some hours). I'm having this issue when running it locally, but we can wait some hours after beta has the latest front-end changes

Not reproducible now on beta but I think is because of the new release process for beta in which we rollbacked to the previous release on Tuesday (so no front-end changes will be displayed for some hours). I'm having this issue when running it locally, but we can wait some hours after beta has the latest front-end changes

Ah yeah that must be it.. I'll try locally.

Found the problem, fix coming shortly.


Add backoff/retry on error for ingest

In _end_batch we should respond to an unexpected error by waiting and retrying once before giving up.

Between restarting the service if it exits unexpectedly and fixing the underlying cassandra issue I think this is unnecessary.


Features endpoint: Download/RequestACopy features

References

Fixes https://github.com/DSpace/DSpace/issues/2943

Description
We've added REST Authorization Features:

canDownload: Can the current Bitstream or Bitstreams in an item be downloaded
canRequestACopy: Can a copy of the current Bitstream be requested

Instructions for Reviewers
List of changes in this PR:

Added the DownloadFeature and RequestCopyFeature features for the Bitstream/Item and Bitstream objects respectively
Provided tests for these new features

To test this PR:

Navigate to the {dspace.url}/server/api/authz/authorizations/search/object?uri={dspace.url}/server/api/core/bitstreams/{bitstreamID}&embed=feature whilst being logged in as admin and verify that you can see the DownloadFeature
Navigate to the {dspace.url}/server/api/authz/authorizations/search/object?uri={dspace.url}/server/api/core/bitstreams/{bitstreamID}&embed=feature with the Bitstream being a private Bitstream and whilst not being logged in. verify that you can see the RequestACopyFeature
Navigate to the {dspace.url}/server/api/authz/authorizations/search/object?uri={dspace.url}/server/api/core/items/{itemID}&embed=feature with the Item being an Item that contains a private Bitstream and whilst not being logged in. verify that you can see the RequestACopyFeature

Checklist

[x] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & integration tests). Exceptions may be made if previously agreed upon.
[x] My PR passes Checkstyle validation based on the Code Style Guide.
[x] My PR includes Javadoc for all new (or modified) public methods and classes. It also includes Javadoc for large or complex private methods.
[x] My PR passes all tests and includes new/updated Unit or Integration Tests based on the Code Testing Guide.
[x] If my PR includes new, third-party dependencies (in any pom.xml), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
[x] If my PR modifies the REST API, I've linked to the REST Contract page (or open PR) related to this change.

Merging as we agreed to 1 approval in today's meeting.


5.0-php7

5.0 version backwards compatibility for PHP7 based on https://github.com/laravel/framework/issues/9601

Sorry, but we're closed to changes on 5.0, and unfortunately, actually making the framework fully working on PHP 7.0 requires a lot more changes than this.

I'm working on a stable version to avoid migrate my hole application, and I know it need more changes.
So I'm going to publish on my own repo.
Thanks.

SImply upgrade to Laravel 5.1 LTS.


[training] Updates for distil-large-v3

Updates the training code to reflect the changes implemented in distil-large-v3. These changes provide:

Drastically improved WER performance when using the sequential long-form decoding algorithm (as detailed here)
Higher throughput when training
Checkpoints that are compatible with the decoding algorithms used in other Whisper libraries

cc @bofenghuang

Fantastic!


Calibration data

In older versions of the API, the returned result of a past experiment contained information about the device calibration at the moment that the experiment was performed. This seems to be missing from this version. The functions to get data about device calibration seem to work only with the most recent calibration data.
It is useful to have a way to check the device calibration at some specific time in the past, especially at the time when a particular experiment was run.
Why is that feature missing (or at least not as easily accessible as in previous versions)?

Fixed on qiskit-api-py: https://github.com/IBM/qiskit-api-py/issues/25


All spans get kind = CLIENT when sharedSpanContext = false

Hi,
When sharedSpanContext is set to false, which is the default in istio, all spans sent from sidecars to zipkin is marked as kind = CLIENT, at least in my setup.
I wonder whether this is by design. My understanding is that egress traffic should get kind = CLIENT, whereas ingress traffic should have kind = SERVER, regardless of whether shared spans are used or not.
Setup: k8s, istio (tested both 1.7 and 1.6), zipkin tracing. Tested HTTP traffic with curl, using the BookInfo sample.
Please advice.
Best regards,
Lars Andreas Ek

Seems related to https://github.com/envoyproxy/envoy/issues/4397 and https://github.com/envoyproxy/envoy/pull/4426

cc @objectiser


Actually set HTTP version in response

The HTTP version was being set using information in the Server, but the Server's version wasn't set at the time. Move version into NewServer so it's now required.
Version is worth special-casing here, since the build information is pretty important, and many components need it.

@neonstalwart @corylanou

go build -ldflags="-X main.version v1234 -X main.commit xxx"
.
.
.
$ curl -v -G http://localhost:8086/query --data-urlencode "q=CREATE DATABASE foo"
* Hostname was NOT found in DNS cache
*   Trying <IP_ADDRESS>...
* Connected to localhost (<IP_ADDRESS>) port 8086 (#0)
> GET /query?q=CREATE%20DATABASE%20foo HTTP/1.1
> User-Agent: curl/7.35.0
> Host: localhost:8086
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: application/json
< Request-Id: 21222deb-1133-11e5-8001-000000000000
< X-Influxdb-Version: v1234
< Date: Fri, 12 Jun 2015 18:45:00 GMT
< Content-Length: 49
<
* Connection #0 to host localhost left intact
{"results":[{"error":"database already exists"}]}
```

@otoolep Lets actually add a test this time :-).

Unit test added @corylanou

+1

thanks for the fix @otoolep - my PR was a drive-by fix, sorry about that.  since now you've looked at this same code, i was wondering what you thought about putting the value for the X-Influxdb-Version header in the config?  by default it could be based on the build version but i think it could also be a feature that the user could set it themselves to some arbitrary value.  each of the constructors that needed the version already had the config and it would make it simpler.

I thought about the config @neonstalwart but decided to leave the config just for actual config stuff.

fair enough - that's the way i leaned too.


fix bug with selecting correct class name from type mapping values

Fix bug in getting the value's class name. In 5.1 we don't have access to #klass so need to call #class on the value. In 5.2 we have a helper method which works with relations.
I also am adding back a spec I accidentally removed in a merge conflict.

I believe this is the correct fix even if I don't fully understand it. Green CI in themis 5.1: https://github.com/clio/themis/pull/56519
and I confirmed it fixed the underlying issue originally reported in https://github.com/clio/backend-infrastructure/issues/1514 though I'll be testing whether there were any knock on effects in 5.2 by running a full CI there shortly

Nevermind, this results in a lot of cases where #base_class doesn't exist on nil class


How to update workshop

Hi Sean,
My workshop depends on an AnnotationHub object that isn't downloading, so I changed to something that will download. It is apparently building the HTML vignette now (https://github.com/jmacdon/Bioc2022Anno/runs/7528389476?check_suite_focus=true), but I don't see the HTML vignette on orchestra, nor if I get the updated docker container. Is there something additional I need to do to push the updated package?
Thanks,
Jim

Orchestra will pull the latest image, so if you update the docker, things should be good. Once the build is done, give it a try. If you still have problems, follow up and I'll  look into it.
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: James W. MacDonald @.>
Sent: Tuesday, July 26, 2022 6:35:20 PM
To: seandavi/orchestra-contributions @.>
Cc: Subscribed @.***>
Subject: [seandavi/orchestra-contributions] How to update workshop (Issue #16)
Hi Sean,
My workshop depends on an AnnotationHub object that isn't downloading, so I changed to something that will download. It is apparently building the HTML vignette now (https://github.com/jmacdon/Bioc2022Anno/runs/7528389476?check_suite_focus=true), but I don't see the HTML vignette on orchestra, nor if I get the updated docker container. Is there something additional I need to do to push the updated package?
Thanks,
Jim
—
Reply to this email directly, view it on GitHubhttps://github.com/seandavi/orchestra-contributions/issues/16, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAAWSE4GHZ4LG52IKQQQBEDVWB74RANCNFSM54XYQG5A.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

That's the thing. I've updated GitHub and the actions seem to go OK, but neither the docker nor the orchestra site seem to have the HTML version of the vignette.

I also got a PR accepted (CITEViz #10, Friday 15:30) and I'm not seeing an HTML vignette on my package demo in this webpage.

@jmacdon Orchestra should point to your html now--just had to change the workshop URL to point to the HTML rather than github. I need to clarify the instructions.
The HTML vignette doesn't end up in the docker, just the Rmd. I guess I could try to change that behavior if you think it would be useful to do so. I've been operating under the model that folks will go to the website for HTML.

@seandavi This is something I asked you about previously. I assume you are saying that orchestra is pointing to my githubio page, but that page doesn't have the vignettes. It's not like your page at all. https://jmacdon.github.io/Bioc2022Anno/

It is now. I must have missed that in the documentation! I assume I now just force the GitHub action to go again?

Ah, never mind. It builds automatically. Thanks @seandavi

Glad we got it worked out. I think you have one of the longest-running workshops, so we have to make sure it goes by without a hitch! 😃


Refresh Token for OAuth 2.0 PKCE

hi
I'm using the OAuth2UserHandler for getting the token. It works fine for 2 hours, but than I have to manually approve my app again. I rather want that my script refreshs the token automatically. How would you achieve that?
My code so far:
oauth2_user_handler = tweepy.OAuth2UserHandler(
    client_id=cMYCLIENTID,
    client_secret=MYCLIENTSECRET,
    redirect_uri=MYURL,
    scope=["tweet.read", "tweet.write", "users.read", "follows.read", "follows.write", "like.read", "like.write","offline.access"],
)

print(oauth2_user_handler.get_authorization_url())
authorization_response = input("Enter Auth URL: ")

token =  oauth2_user_handler.fetch_token(authorization_response)

twitter_client = tweepy.Client(token["access_token"], wait_on_rate_limit=True)

Did you figure out how to do this?

I have the same question.

This is extremely not implemented. Why is this issue closed?


ubuntu version upgrade in istio ci

as title

Codecov Report

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

@@           Coverage Diff           @@
##           master    #4052   +/-   ##
=======================================
  Coverage   26.84%   26.84%
=======================================
  Files        1134     1134
  Lines       24984    24984
  Branches     3603     3603
=======================================
  Hits         6707     6707
  Misses      17679    17679
  Partials      598      598

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 daabc1f...440c820. Read the comment docs.


[feature]: allow configuring upfront shutdown address in lnd.conf

As of today, a funder can easily specify the upfront shutdown address via openchannel. A fundee, however, needs to set up a channel acceptor to specify a custom address. This can be cumbersome, especially in the case where a remote signer is used for a hot-cold wallet setup. We could instead config this shutdown address in lnd.conf,

[ ] add a new config value upfront-shutdown-address and use it when opening and accepting channels.
[ ] it can be overwritten by the value specified in openchannel and/or channel acceptor.

Going with this approach does decrease the level of privacy as all the funds now go to the same cold wallet address. A better approach is to stick to the current setup - always derive a new cold wallet address when opening or accepting a channel, however this is up to the user to decide.

Going with this approach does decrease the level of privacy as all the funds now go to the same cold wallet address. A better approach is to stick to the current setup - always derive a new cold wallet address when opening or accepting a channel, however this is up to the user to decide.

As a middle way, could we provide an array of addresses that are cycled through?
Are these also used if remote party (force) closes a channel?

Can I jump on this?

@theedtron, if you're currently not working on this, can I take this?

@raehat still planning to work on it.


Only show when - Property

Hello,
How can we use the 'Only show when' property in adaptive cards?

URL: https://adaptivecards.io/explorer/TextBlock.html

https://docs.microsoft.com/en-us/adaptive-cards/templating/language#conditional-evaluation
https://docs.microsoft.com/en-us/adaptive-cards/templating/language#conditional-layout-with-when


Feasibility of multi-task training in lightning with dynamic model size

Questions and Help
Hello all. I am interested in using lightning for my research project. However I'm having trouble assessing the feasibility of my architecture in lightning due to some particularities.
The typical train loop that lightning abstracts looks like this:
for epoch in range(epochs):
      ...train code...

However my structure looks something more like this.
for task_number in range(number_of_tasks):
    dataloader = Dataloader(task=t)  # The datalaoder is task dependent.

    if task_number == 0:
        for epoch in range(epochs):
             ...regular train code...

    else:
        for epoch in range(epochs):
            ...selective retraining...  # This uses pytorch hooks to only train certain nodes by setting grads to 0
            model = split(model)  # Logic that may add new nodes to the model (size change), also does training of newly added nodes
            if loss > loss_threshold:
                model = dynamic_expansion(model)  # More logic that will do a size change and training

As you can see there are some challenges that don't easily translate to lightning, first the concept of tasks, task dependent loaders (for example, first task is a subset of mnist, second task is a different subset), and more complex task dependent logic which may cause a model size change and require newly added nodes to be trained.
I'm interested in using lightning, but I'm having trouble seeing how this arch could fit.
Thank you.

I solved a similar problem by creating a DataLoader which yield batch that contains batch for all the tasks and writing the "task loop" inside the training step.

Well I want to train X epochs per task, you're way would be for each epoch train every task, where as I want to do for each task train every epoch.

One solution is to have a single data loader but then parse the targets and outputs to only take into account the task at hand (for example, one task per entry in a one hot label). Could require some extra engineering. Will post here if I ever end up doing this.

@Ge0rges https://github.com/PyTorchLightning/pytorch-lightning/pull/1959


Incorrect docs regarding build-docs output having zero dependencies

Describe the bug
The Redocly CLI documentation at https://redocly.com/docs/redoc/deployment/cli explicitly states that the output of the build-docs process will be "a zero-dependency HTML file" however there does not appear to be an any documented method of producing an HTML output that is not dependent on an external instance of the redoc JS file.
To Reproduce
Steps to reproduce the behavior:

Given any valid api yaml input
Run the command redocly build-docs {some-api-def}
See html -> head -> script element in generated output for link to https://cdn.redoc.ly/redoc/v2.1.5/bundles/redoc.standalone.js

Expected behavior
Expected output to require zero dependencies, as per docs.
Redocly Version(s)
    "@redocly/cli": "^1.25.0"

Node.js Version(s)
Node.js v21.1.0
OS, environment
Ubuntu 24.04.1 LTS

Thanks @Foxcapades , the docs have outdated information there. I'll get them updated.


⚠ Fortnite has degraded performance

In de1c92c, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1680 ms

Resolved: Fortnite performance has improved in e639064.


Fix the titus-sshd aa profile to allow for scratch containers

For scratch containers, the run-titus-sshd touches

/etc/passwd
/etc/profile

(and a few other files, but those are the sensitive ones)
For sshd to startup properly.
The AA profile was blocking those, and whatever testing I was
doing before where it works must have had AA off or in complain mode.

So, are any of these files read by the relocated userspace without a user logging in? My fear is that a corrupted version of one of these files could be used to trigger an exploit in sshd.

@sargun can you look one more time ? I split out a distinct profile for the init script, started with nothing, and added in lines until the denies stopped.
I added explicit transitions because I couldn't figure out how to depend on the binary name.
Here is what PS shows when it is done:
docker_titus (enforce)          10000    1704005  0.0  0.0   8804  1020 ?        Ss   20:11   0:00 /apps/titus-executor/bin/titus-nsenter /titus/sshd/run-titus-sshd -D -e
docker_titus//&docker_titus//exec-sshd (enforce) 10000 1704012 0.0  0.0 6648 5008 ? S 20:11   0:00 sshd: /titus/sshd/usr/sbin/sshd -D -e [listener] 0 of 10-100 startups
docker_titus (enforce)          10000    1704037  0.0  0.0<PHONE_NUMBER>4 ?        Ssl  20:11   0:00 /titus/spectatord/spectatord
docker_titus (enforce)          10000    1704038  0.0  0.0  90672  7152 ?        Ssl  20:11   0:00 /titus/atlas-titus-agent/atlas-titus-agent -t nf.subnet=subnet-04fca5dd4bbf221cb,nf.vpc=vpc-46f5a223
docker_titus (enforce)          10000    1704158  0.0  0.0   2984   996 ?        Sl   20:11   0:00 /pause
docker_titus (enforce)          10000    1704176  0.0  0.0 107528  4912 ?        Ssl  20:11   0:00 bin/adminlogs


Replace outdated URLs with new targets

Hello!
I've noticed that the content of the URL that is printed when generating a new ID with invalid parameters (e.g. cargo crev id new) has been moved.
I've updated the URL with the new one and also all other occurences where github.com/dpc/crev forwards to github.com/crev-dev/cargo-crev.
If the changes are made aren't wanted or needed for whatever reason, feel free to just close this pull request.
Checklist:

[✔] cargo +nightly fmt --all (!!! also formatted code I didn't touch, see the use statements)
[✘] Modify CHANGELOG.md if applicable (not sure if this qualifies as a

Best,
ambiso

Thanks! Much appreciated!


API keys

I have seen that amass for example can use API keys form AlienVault, shodan, etc.
But I cannot find the config file to add them?
Is it in the config.conf you need to add them or do I need to create a config.ini file for it?

Well the main purpose of Osmedeus is you don't need to provide any API key but of course you can do it to get more result.
Normally amass will store in Osmedeus/plugins/go/ so just put your config file for amass in that.
If amass command is need options to specify config file change it here /Osmedeus/core/rest/storages/commands.json

I've just been looking at configuring the API keys for Amass - I am running mablanco/docker-osmedeus as per the README.md
I cannot seem to find the commands.json file you are talking about, @j3ssie
Executing find / -type f -iname commands.json returns no relevant files.
Has this file been replaced with another?

The issue is no longer exist due to the repo having been upgraded to Osmedeus Next Generation v4.0

The issue is no longer exist due to the repo having been upgraded to Osmedeus Next Generation v4.0


Add support for assembly (.S) files to apple_framework

objc_library rules supports assembly files just fine there is no reason not to pass them directly to it. Added a test to verify it works as intended bazel test //tests/ios/frameworks/objc:ObjcFrameworkTests

@jerrymarino can you help with the failures? they dont look related to my changes

Seems fine in master AFAICT: https://github.com/bazel-ios/rules_ios/runs/3501651757

Should I revert the Xcodeproj gold files which @jerrymarino recommended to add and then rebase?

@nkoroste I think if you've got the gold files and buildifier issues fixed it should go green - the new files / examples would require bumping to match the CI
This said, this morning I saw other failures on the CI, which seem to be causing the hangup. If you have a fix please do push it otherwise, I can circle back and see if we know of a fix to that

thx for the contribution here! we are going to look into how to fix the failing CI builds soon. 🙏

https://github.com/bazel-ios/rules_ios/pull/302#discussion_r709346481 for context on how to fix this up for generating the test fixture projects properly.

Is anything needed from my end to get this in?

@nkoroste - Yea, need to regenerate the xcodeproj w/ the steps from here so it will pass on CI: https://github.com/bazel-ios/rules_ios/pull/302#discussion_r709346481

@nkoroste - Yea, need to regenerate the xcodeproj w/ the steps from here so it will pass on CI: #302 (comment)

done

One buildifier linter check failure to fix: https://github.com/bazel-ios/rules_ios/runs/3771457947


Add Age Primitive, and Unit tests for Age Primitive

Pull Request Description

Add age primitive, and unit tests for age primitive.
Fixes #604

Looks like adding an new default primitive changed the expected features for our deserialize from S3 tests

Looks like adding an new default primitive changed the expected features for our deserialize from S3 tests

Fixed this by having the deserialize tests use a fixed list of agg and trans primitives


How to load associations?

I want to implement a friends feature for the app I'm working on but when I try to fetch the friends from EdgeDB I'm getting this after it goes through the mapper friends: #Ecto.Association.NotLoaded<association :friends is not loaded>
My user schema looks something like this:
type User {
    property email -> str {
      constraint exclusive;
    }
    # ...
    multi link friends -> User;
  }

My ecto schema:
schema "default::User" do
  field :email, :string
  # ...
  has_many :friends, User # I also tried many_to_many here with a Friends table but I get a weird error where I can't get a user's id from any query
end

My query for friends:
select User {
 friends := .<friends[is User] { id, tag }
}
filter .id = <uuid>$id

I'm a beginner in Elixir and EdgeDB, I've seen that when you get a Association.NotLoaded you need to "pre-load" the associations, is there any method to preload associations using this driver? Or I would also appreciate your insights on how you would implement this feature.
Thank you for creating and maintaining this awesome EdgeDB driver!

Do you use https://github.com/nsidnev/edgedb_ecto for this or something of your own? edgedb_ecto is actually a PoC that I used in one of my reference projects for Elixir and EdgeDB and probably didn't test very well. Also, this driver does not include (and probably won't in the future) Ecto related code.
Regarding your question, generally speaking, Ecto.Association.NotLoaded can be treated as an empty set from EdgeDB at the moment. This means that during the process of mapping data from EdgeDB into  Ecto, the value fetched from the link is just an empty set. Although I think this should be changed to an empty list ([]) in the case of a multi link and to nil in the case of a single link, to avoid any confusion. But still only when the link is explicitly addressed in the query.


tcno-acc-switcher: Add version 3.0.02

globals.json is able to be created, but "persist" doesn't keep the file as its orginial name if the extension is ',json', instead of something such as '.ini'. Why could that be?

All the .json files need
{}

as their file contents to not crash this program.
I'll go do that now.

/verify


Documentation Update for Concatenate

Not sure it's a typo or not, but in the description for the Concatenate operation in DLRS it states that it only works on Text fields, yet it also works on Picklist fields (I just did this and was surprised it works). This is a FR to update the documentation.

@JayKilian  thanks for this - piklists are text fields basically - so this makes sense - however i am not familar with the doc you mention - do you have a link?

This project has gone through some changes over the last few years. Documentation now lives here: https://github.com/SFDO-Community-Sprints/DLRS-Documentation
If you'd like to make improvements then we'd love to have you adding in some support there in the form of feature requests or even better, directly PR contribution.


Add support for fixed sized buffers

This library looks very promising. One thing that's missing is efficient snprintf() like functionality which can print directly to a fixed size buffer with truncation but without any memory allocations.
I would suggest an interface like this:
StringRef format(ArrayRef<char> buffer, StringRef fmt, ArgList args);

In this example, ArrayRef would be a simplified version of array_view which is proposed for C++17. You don't need all of the multi-dimensional and striding support, just a generic adapter for any array type container.
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3851.pdf
The returned StringRef references a sub-array of buffer that was filled in by the formatting.
Usage example:
char path_buf[4096];
auto path = format(path_buf, "{}/{}", dir, filename);

Thank you for the suggestion. The library already doesn't do dynamic memory allocations if the result of formatting is less than fmt::internal::INLINE_BUFFER_SIZE (which you can configure to better suit your application):
fmt::MemoryWriter w;
w.write("{}/{}", dir, filename); // no dynamic memory allocation for small output
w.c_str(); // returns a pointer to the internal buffer

The advantage of this method is that it works with large output by using dynamic memory allocation (only) if necessary.
Also you can define your own function (or a writer class) that prints directly to a fixed buffer:
#include "format.h"

class FixedBuffer : public fmt::internal::Buffer<char> {
 public:
  FixedBuffer(char *array, std::size_t size)
    : fmt::internal::Buffer<char>(array, size) {}

 protected:
  void grow(std::size_t size) {
    throw std::runtime_error("buffer overflow");
  }
};

class FixedWriter : public fmt::Writer {
 private:
  FixedBuffer buffer_;
 public:
  FixedWriter(char *array, std::size_t size)
    : fmt::Writer(buffer_), buffer_(array, size) {}
};

int main() {
  char buffer[100];
  FixedWriter w(buffer, sizeof(buffer));
  w.write("Hello, {}!", "world");
}

Closing for now, but feel free to reopen if the alternatives I described don't fit your use cases.

@vitaut  So fmt::internal::INLINE_BUFFER_SIZE should and can only be configured by deriving my own class like in your example above? Otherwise how is it defined?

@patlecat No, you can change the value of fmt::internal::INLINE_BUFFER_SIZE constant if you embed C++ Format in your application (although in most cases the default should be fine). Deriving your own class is only necessary if you want to support a custom buffer, e.g. fixed-sized as in the above example.

C++ Format now supports formatting to fixed-size arrays: http://cppformat.readthedocs.org/en/latest/reference.html#fmt::BasicArrayWriter.
Example:
char buffer[100];
fmt::ArrayWriter w(buffer);
w.write("The answer is {}", 42);

Does this represent any performance gain in any way or is it just a convenience for C code?

There is no performance gain. It's mostly for the case where you can't replace the destination array with MemoryWriter.


Provide a way to utilise the Node Labels to inject Node level chaos

Provide a way to utilize the Node Labels to inject Node level chaos
eg: In case of any cloud provider, each instance will come up with default tags and also on onprem instances it is expected that users can add node labels for workload distribution or regional/datacenter spread.
If we could make use of default or custom labels to inject any fault it helps user to simulate random, specific group or percentage inside the set of the nodes will definitely help
Below are the interested experiments: NodeCPU Hog, Node Memory Hog, Node Terminate, Drain, Suspend/shutdown etc..

Node Level to select the target nodes is now available from litmus 1.13.3. Thanks for the request!
Feel free to repoen in case of any query.


[SP-6385] - Backport of PDI-19887 - Excessive Requests from Spoon to the Pentaho Server when loading DataSources and Databases Connections (9.3 Suite)

Original PR:

https://github.com/pentaho/pentaho-kettle/pull/8947

:white_check_mark: Build finished in 10m 59s
Build command:
mvn clean verify -B -e -Daudit -amd -pl plugins/pur/core

:exclamation: No tests found!
:information_source:  This is an automatic message


[feature] Template for Fetch

Version and OS
newest docker image
Is your feature request related to a problem? Please describe.
I fetch several products from the same page so would be good to have some option like template, so i do not need to go thru all the options over and over but only change the site adders and all the options would be the same
Describe the solution you'd like
to have ability to use Template option for a same domain but different subpage as all the other settings in Filters and Triggers will be the same
Describe the use-case and give concrete real-world examples
site.com/product1.html
site.com/product2.html
for now i have to setup all over from the beginning but for product 2 i could use template to fill all the predefined options without using page preview etc...
Additional context
Add any other context or screenshots about the feature request here.

https://github.com/dgtlmoon/changedetection.io/issues/432 dupe


WIP/feat/terminal-based-editor

Original Idea of this PR :
By using the fyne terminal and executing (neo)vim, we could get the editor to be fit for coding purposes (shortcuts, syntax highlighting etc). As of now though, both editors behave out of the ordinary when executed in the fyne terminal. In addition to that there are issues with fsnotify and file saving, hence the WIP tag.
Maybe there is a way to build neovim into fyne as a widget ?
Idea :
On top of a widget we'd have to build a component that uses the neovim api. The --embed flag might be a good starting point.
What I don't know :
What would that look like/what needs to be done ?
Is it an engine we start in the background an feed our input to ? If so coloring of text might become difficult, I think the multiline entry widget does not support that.
Is this what I want but GTK ?
Examples :

https://github.com/glacambre/firenvim
https://github.com/Chillee/VSCodeNeovim
https://github.com/hismailbulut/Neoray

Other  Resources :

https://www.reddit.com/r/neovim/comments/hcq1m7/is_there_a_way_i_can_embed_neovim_inside_a/
https://www.reddit.com/r/neovim/comments/vbb3va/neovim_roadmap_embed_neovim_everywhere/
https://pkg.go.dev/github.com/neovim/go-client
neovim gui client in rust https://github.com/neovide/neovide

If this is build it should probably be done in a seperate repo so other people can use it aswell e.g. in defyne.
Update :
I think we will have to implement a widget from scratch to support highlighting as this is not intended my the standard fyne entry widgets. A lot of the internals can probably be taken from the aforementioned fyne terminal project e.g. their textgrid. From my understanding we would then attach to the embedded neovim engine to receive redraw notifications.

Development has started under fyne-nvim


Fix typo in action message

Change description
Just a typo.
I haven't done any check but I'm assuming they pass as I'm just adding a single letter within the text. GitHub indicates that it can be automatically merged.
Type of change

[x] Bug fix (fixes an issue)

Related issues
N/A
Checklists
Development

[ ] Lint rules pass locally
[ ] Application changes have been tested thoroughly
[ ] Automated tests covering modified code pass

Security

[x] Security impact of change has been considered
[x] Code follows project security practices and guidelines

Code review

[x] Pull request has a descriptive title and context useful to a reviewer. Screenshots or screencasts are attached as necessary
[ ] Changes have been reviewed by at least one other contributor
[ ] Pull request linked to issue tracker where applicable

Hello @tomdot-dev,
Thank you so much 🚀.


Some maintenance and housekeeping things

We should do a full code review, so the package matches the Flux code style and approach a bit better. There are also several places that need cleanup with having logging statements still around.

Absolutely agree.  Code was never meant to be shared beyond the immediate team.  Names and comments are a mix of my style and the original Python code.  Needs to be consistent.  Open to all suggestions and standards.

Yeah was planning on doing a clean-up pass after making sure the CI/docs are working. Many of the "comment" strings are now converted to docstrings which cleaned up a lot.


[Hacktoberfest] UI Improvements

Kindly come up with an eye-catching layout for the homepage (i.e. index.html)

Feel free to play with fonts/colors in CSS files.
Do not make any changes to js/app.js.
Make sure that business logic shouldn't break i.e. fetching news.
Update CSS to have a better News card.

PS - I don't have any wireframe in my mind if you come up with one, please comment on this thread.

Hey,
Cn I still work on this?

I would like to work on this issue, I can create a nice UI for this.

Hey guys 👋
Thanks for showing your interest.
This issue is opened for Hacktoberfest. Let's wait till Oct 1st. 🚀
Explore the repo below for more beginner-friendly issues.

Okay 👍

@vinitshahdeo Can I work on this? Please assign this to me.

Hello, this is my first HacktoberFest, Can you please guide me
Also I am interested in working on this issue

Can you assign it to me? @vparine

Hi, I'm happy to have a look at this.

unable to commit the changes

Hello, I have a good look and feel for yours cards, give me access to commit please.

Hello, I have a good look and feel for yours cards, give me access to commit please.

Hi! @vinitshahdeo Is this issue still active? I would like to contribute

Hey!! @vinitshahdeo can i please work on this issue?

Hi!! @vinitshahdeo, I'd like to contribute to this issue. I have knowledge in frontend projects 🙌

Hii, I would like to fix this issue. Kindly assign this to me

Hello @vinitshahdeo , I am a frontend developer and I have worked on many similar project like this.. It would be so great if I get a chance to solve this issue. Please assign me .

Hey, Is this issue still available I would like to contribute to this?

Hello @vinitshahdeo I am interested in working on this issue .Kindly assign it to me .