Project 4: first Checkpoint unit tests not imported

When attempting to continue from the Checkpoint (immediately prior to checking for gpu) then unit tests are not imported and the first code cell in the notebook must still be run.

I submitted a PR for this: https://github.com/udacity/deep-learning/pull/134

This has been resolved in #134


Fix Bug that prevents adding multiple public IP ranges on the same subnet

Signed-off-by: kioie<EMAIL_ADDRESS>Description

Referencing this issue: https://github.com/apache/cloudstack/issues/3114
Edited the code to check for an ipOverlap in the IP ranges and not subnet overlap.

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[x] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

Screenshots (if appropriate):
How Has This Been Tested?

STEPS TO TEST
create vlaniprange zoneId="06e5e428-1170-4ab3-bfc3-c018660bdca1" vlan=untagged gateway=<IP_ADDRESS> netmask=<IP_ADDRESS> startip=<IP_ADDRESS> endip=<IP_ADDRESS> forsystemvms=false forVirtualNetwork=true
create vlaniprange zoneId="06e5e428-1170-4ab3-bfc3-c018660bdca1" vlan=untagged gateway=<IP_ADDRESS> netmask=<IP_ADDRESS> startip=<IP_ADDRESS> endip=<IP_ADDRESS> forsystemvms=false forVirtualNetwork=true
EXPECTED RESULTS
2nd range added without issue
ACTUAL RESULTS
2nd range added without issue

@kioie may you please resolve the merge conflicts

@blueorangutan package

Packaging result: ✔centos6 ✔centos7 ✔debian. JID-2611

@blueorangutan test

@dhlaluku a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

Trillian test result (tid-3407)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 26873 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr3185-t3407-kvm-centos7.zip
Intermittent failure detected: /marvin/tests/smoke/test_iso.py
Intermittent failure detected: /marvin/tests/smoke/test_templates.py
Intermittent failure detected: /marvin/tests/smoke/test_volumes.py
Smoke tests completed. 67 look OK, 3 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File

test_04_extract_Iso
Failure
1.09
test_iso.py

test_04_extract_template
Failure
1.08
test_templates.py

test_06_download_detached_volume
Failure
10.42
test_volumes.py

@kioie If you are still working on this, please resolve conflicts

Issue seems to be corrected on #3430


[pre-ll/GL] query current front/back buffer for reading

Fixes #2310
This is more of a temporary fix, and just allows code to run. Not sure what the performance implications of this are - however, since downloading a GPU buffer probably doesn't happen every frame (?) and extra glGet shouldn't hurt too much (?)
EDIT:
I also applied a minor fix to the gamma example which I couldn't get to run, and was needed to test whether the fix works. I'm using i3, which does some funny things with window dimensions, so potentially that was causing the example to fail on my machine.

The problem is I don't know what the plumbing is that I need to modify to
pass this along, I just need a solution for now. How should I pass which
color buffer we're talking about, does it go in the surface struct?
On Wed, 22 Aug 2018 19:46 Dzmitry Malyshau<EMAIL_ADDRESS>wrote:

@kvark requested changes on this pull request.
Thank you for the PR! I have concerns about this being the right solution.
In src/backend/gl/src/tex.rs
https://github.com/gfx-rs/gfx/pull/2335#discussion_r212066464:

@@ -663,8 +663,10 @@ fn bind_read_fbo(gl: &gl::Gl, texture: NewTexture, level: t::Level, fbo: FrameBu
if texture == NewTexture::Surface(0) {
//Warning: assuming the back buffer
unsafe {

       let mut buffer : gl::types::GLint = 0;

       gl.GetIntegerv(gl::DRAW_BUFFER, &mut buffer);

do you know what is the current draw buffer/FBO here? I don't think we can
rely on that. E.g. what if we are currently copying data from the default
FBO into a user FBO, the DRAW_BUFFER would then be gl::COLOR_ATTACHMENT1,
which is not expected here.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/gfx-rs/gfx/pull/2335#pullrequestreview-148620031, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AHdLkTHyiWry2i1rzt7QcKKJWaZVM9Qjks5uTacigaJpZM4WHgkP
.

@tomc1998 the Command struct (from gfx_device_gl) could just have a public field pub main_face: GLenum,, which is defaulted to gl::BACK but users set it to gl::FRONT if they know it's a single-buffered swapchain. This is similar to display_fb field.

@tomc1998 ping

Looks like this PR is abandoned... please feel free to resume the work @tomc1998 !


Support targets where click event was added with addEventListener

Example of this is view replies for 9gag comments
Possible solutions
https://stackoverflow.com/questions/9046741/get-event-listeners-attached-to-node-using-addeventlistener

I got this working on the branch https://github.com/david-tejada/rango/tree/get-event-listeners, but I don't think I'm gonna merge it into main. It turns out libraries like jQuery or React don't register events to individual elements, they register an event of each type they use for the whole document and then use event delegation using the target property of the event. So after all the functionality is not very useful. I've done some tests and in the only place where it found additional hints was in that 9gag view replies button and I can get that clickable easier by just checking window.getComputedStyle(element).cursor === "pointer", checking also that the parent doesn't also have a pointer cursor and that there are not close descendants that are clickable.
I am closing this issue for now and we can reopen it in the future if we find that it would be of use in some pages.

I forgot to mention the reason I just don't add the code is for performance reasons. The code doesn't spend a lot of resources but it's something and taking into account how little we gain from it, it doesn't seem to be worth it.


Update node version in tests for 2.x

Minimum version is now 18.x
All other tests changed to use lts/*

I think there should be a changeset for this

I think this is for the tests in the CI only


etcd hangs forever waiting for a lock

Hi All,
This is trident 18.04 running in an openshift environment.  We have ephemeral openshift nodes, so for patching and maintenance nodes are removed and replaced with new ones.  Sometimes it happens that trident does not recover from such a stop/restart.  In this case etcd waits for a lock immediatly after the restart on another node.

oc logs -f trident-76fb9bc964-97b9k -c etcd
2018-06-22 10:02:25.794371 I | etcdmain: etcd Version: 3.1.12
2018-06-22 10:02:25.797261 I | etcdmain: Git SHA: 918698add
2018-06-22 10:02:25.797269 I | etcdmain: Go Version: go1.8.7
2018-06-22 10:02:25.797275 I | etcdmain: Go OS/Arch: linux/amd64
2018-06-22 10:02:25.797280 I | etcdmain: setting maximum number of CPUs to 8, total number of available CPUs is 8
2018-06-22 10:02:25.804451 W | etcdmain: found invalid file/dir .snapshot under data dir /var/etcd/data (Ignore this if you are upgrading etcd)
2018-06-22 10:02:25.804489 N | etcdmain: the server is already initialized as member before, starting as etcd member...
2018-06-22 10:02:25.804763 I | embed: listening for peers on http://<IP_ADDRESS>:8002
2018-06-22 10:02:25.804833 I | embed: listening for client requests on <IP_ADDRESS>:8001
2018-06-22 10:02:26.863564 W | etcdserver: another etcd process is running with the same data dir and holding the file lock.
2018-06-22 10:02:26.863598 W | etcdserver: waiting for it to exit before starting...

This is the second time we have seen this in our environment.  This particular instance was waiting like this for 12 days before we noticed new volumes were not being created.  A restart of the pod did help this time.  The first we ran into this we had to revert to a snapshot of etcd to get it up and running again.
Anyone any ideas why this is happening?

Hi @r0ss3. The main culprit for etcdserver: another etcd process is running with the same data dir and holding the file lock is not waiting long enough for the previous instance of Trident to go down (e.g., via tridentctl uninstall) and before bringing up a new instance (e.g., via tridentctl install). We have also added liveness probes for trident and etcd containers, which makes detecting and recovering from this problem easier. This feature is available in https://github.com/NetApp/trident/releases/tag/v18.07.0-beta.1.

Thanks for the quick response.  Good to hear that 18.07 will have liveness probes!
Do you know how long this lock is held?  And does this mean etcd does not exit correctly when the pod is stopped?

The lock is held as long as there is a running etcd instance using it.

Our trident deployments run with .spec.strategy.type==Recreate, so I don't think it is possible that 2 instances run at any given time.  However I've added the liveness probes so if it happens again the situation should resolve itself now.

Reopening because it seems the liveness probe does not really fix it.  I have a trident instance now restarting because of the liveness probe for almost a full day:
$ oc get pod trident-597c7c7578-tcfkp
NAME                       READY     STATUS             RESTARTS   AGE
trident-597c7c7578-tcfkp   0/2       CrashLoopBackOff   685        21h

So even with .spec.strategy.type==Recreate we sometimes run into this lock.  The lock is still held after more than 21 hours, and the liveness probes do not make it any better :(

Have you tried running https://github.com/NetApp/trident/releases/tag/v18.07.0-beta.1? This version runs etcd v3.2.19. Trident v18.04 uses etcd v3.1.5.

With etcd v3.1.5 (shipped with Trident v18.04) and v3.2.19 (shipped with Trident v18.07), the wait time is 1 second:
https://github.com/coreos/etcd/blob/v3.1.5/etcdserver/server.go#L279:L283
https://github.com/coreos/etcd/blob/v3.2.19/etcdserver/backend.go#L61:L64
With etcd 3.3, timeout has been increased to 10 seconds:
https://github.com/coreos/etcd/commit/0365a9dee80f004200e157bf834a6a9210e95b49
We haven't qualified Trident with etcd v3.3.X, but I'm curious to see if the problem occurs with this version of etcd. One workaround is to provision the etcd volume on an ONTAP SAN SVM if that's an option for you. That way NFS locking wouldn't be an issue.
To debug NFS locking, you may find the vserver locks show command useful: https://docs.netapp.com/ontap-9/topic/com.netapp.doc.dot-cm-cmpr-940/vserver__locks__show.html
I would run this command when no Trident pod (etcd) is running.

I upgraded to 18.07.0 with etcd 3.2.19 today, and it seems the etcd 3.2 does handle the file lock better.  It still sees the lock, but it seems to continue successfully now:

2018-08-14 09:26:13.477669 I | etcdmain: etcd Version: 3.2.19
2018-08-14 09:26:13.477775 I | etcdmain: Git SHA: 8a9b3d538
2018-08-14 09:26:13.477779 I | etcdmain: Go Version: go1.8.7
2018-08-14 09:26:13.477785 I | etcdmain: Go OS/Arch: linux/amd64
2018-08-14 09:26:13.477789 I | etcdmain: setting maximum number of CPUs to 4, total number of available CPUs is 4
2018-08-14 09:26:13.489576 W | etcdmain: found invalid file/dir .snapshot under data dir /var/etcd/data (Ignore this if you are upgrading etcd)
2018-08-14 09:26:13.489605 N | etcdmain: the server is already initialized as member before, starting as etcd member...
2018-08-14 09:26:13.490031 I | embed: listening for peers on http://<IP_ADDRESS>:8002
2018-08-14 09:26:13.490102 I | embed: listening for client requests on <IP_ADDRESS>:8001
> 2018-08-14 09:26:14.608328 W | etcdserver: another etcd process is using "/var/etcd/data/member/snap/db" and holds the file lock.
2018-08-14 09:26:14.608903 W | etcdserver: waiting for it to exit before starting...
2018-08-14 09:26:15.926735 I | etcdserver: recovered store from snapshot at index 220022
2018-08-14 09:26:15.928923 I | etcdserver: name = etcd1
2018-08-14 09:26:15.928938 I | etcdserver: data dir = /var/etcd/data
2018-08-14 09:26:15.928944 I | etcdserver: member dir = /var/etcd/data/member
2018-08-14 09:26:15.928948 I | etcdserver: heartbeat = 100ms
2018-08-14 09:26:15.928952 I | etcdserver: election = 1000ms
2018-08-14 09:26:15.928955 I | etcdserver: snapshot count = 100000
2018-08-14 09:26:15.928969 I | etcdserver: advertise client URLs = http://<IP_ADDRESS>:8001
2018-08-14 09:26:25.685054 I | etcdserver: restarting member 9ca0c7938a0c3dc5 in cluster d5856e2bc623615e at commit index 225018
2018-08-14 09:26:25.687497 I | raft: 9ca0c7938a0c3dc5 became follower at term 13
2018-08-14 09:26:25.687540 I | raft: newRaft 9ca0c7938a0c3dc5 [peers: [9ca0c7938a0c3dc5], term: 13, commit: 225018, applied: 220022, lastindex: 225018, lastterm: 13]
2018-08-14 09:26:25.775883 I | etcdserver/api: enabled capabilities for version 3.1
2018-08-14 09:26:25.775914 I | etcdserver/membership: added member 9ca0c7938a0c3dc5 [http://<IP_ADDRESS>:8002] to cluster d5856e2bc623615e from store
2018-08-14 09:26:25.775921 I | etcdserver/membership: set the cluster version to 3.1 from store
2018-08-14 09:26:25.780773 W | auth: simple token is not cryptographically signed
2018-08-14 09:26:25.783250 I | etcdserver: starting server... [version: 3.2.19, cluster version: 3.1]
2018-08-14 09:26:25.784404 I | etcdserver: 9ca0c7938a0c3dc5 as single-node; fast-forwarding 9 ticks (election ticks 10)
2018-08-14 09:26:26.382978 I | raft: 9ca0c7938a0c3dc5 is starting a new election at term 13
2018-08-14 09:26:26.383008 I | raft: 9ca0c7938a0c3dc5 became candidate at term 14
2018-08-14 09:26:26.383022 I | raft: 9ca0c7938a0c3dc5 received MsgVoteResp from 9ca0c7938a0c3dc5 at term 14
2018-08-14 09:26:26.383036 I | raft: 9ca0c7938a0c3dc5 became leader at term 14
2018-08-14 09:26:26.383046 I | raft: raft.node: 9ca0c7938a0c3dc5 elected leader 9ca0c7938a0c3dc5 at term 14
2018-08-14 09:26:26.387333 I | etcdserver: published {Name:etcd1 ClientURLs:[http://<IP_ADDRESS>:8001]} to cluster d5856e2bc623615e
2018-08-14 09:26:26.387384 I | etcdserver: updating the cluster version from 3.1 to 3.2
2018-08-14 09:26:26.464768 N | etcdserver/membership: updated the cluster version from 3.1 to 3.2
2018-08-14 09:26:26.464846 I | etcdserver/api: enabled capabilities for version 3.2
2018-08-14 09:26:26.464869 I | embed: ready to serve client requests
2018-08-14 09:26:26.465140 N | embed: serving insecure client requests on <IP_ADDRESS>:8001, this is strongly discouraged!

I have the exact same problem. Spec type is also recreate and I am using trident 18.07.0

upgrading trident to 18.10.0 does not help as well.
2018-11-29 08:14:23.842160 I | etcdmain: etcd Version: 3.2.19
2018-11-29 08:14:23.842219 I | etcdmain: Git SHA: 8a9b3d538
2018-11-29 08:14:23.842230 I | etcdmain: Go Version: go1.8.7
2018-11-29 08:14:23.842235 I | etcdmain: Go OS/Arch: linux/amd64
2018-11-29 08:14:23.842240 I | etcdmain: setting maximum number of CPUs to 10, total number of available CPUs is 10
2018-11-29 08:14:23.859930 N | etcdmain: the server is already initialized as member before, starting as etcd member...
2018-11-29 08:14:23.860030 I | embed: listening for peers on http://<IP_ADDRESS>:8002
2018-11-29 08:14:23.860085 I | embed: listening for client requests on <IP_ADDRESS>:8001
2018-11-29 08:14:25.071396 W | etcdserver: another etcd process is using "/var/etcd/data/member/snap/db" and holds the file lock.
2018-11-29 08:14:25.071417 W | etcdserver: waiting for it to exit before starting...

after that the pod restarts, and eventually goes into a crash loop

@wernergillmer this issue requires more troubleshooting. Please contact NetApp Support and open a case with support.

We also experience same issue trident 18.10.0. Specifying a different volume name for etcd database (using --volume-name) doesn't help. I also tried deleting the PV and PVCs. I really don't know what's that process that keeps holding the etcd database.

etcdserver: another etcd process is using "/var/etcd/data/member/snap/db" and holds the file lock, or loading backend file is taking >10 seconds

@wernergillmer Trident v18.10 should use etcd v3.3.9, not v3.2.19 as shown in your logs.
@mvineza I've seen this problem happening when the network latency between the k8s cluster nodes and the storage backend is high.
This might be an etcd bug, but I'm curious to see when you use the ontap-san driver (or any other SAN driver) for the etcd volume, you would see the same problem or not.


check-eclipse fails with NoSuchMethodError: org.gradle.logging.ProgressLogger.setDescription(Ljava/lang/String;)V with gradle 2.6+

Using bnd-platform on gradle 2.6+ fails with NoSuchMethodError: org.gradle.logging.ProgressLogger.setDescription(Ljava/lang/String;)
This seems related to https://github.com/michel-kraemer/gradle-download-task/issues/29

@stempler if the issue is related to gradle-download-task then just update it. The problem doesn't appear in later versions anymore.

Thanks for the hint! I updated the gradle-download-task dependency (025e38b8e380263827a53c446b5aed4d25d847a3) and released version 1.3.0 of bnd-platform. I only tested with Gradle 2.10 so far, but it should work with 2.6+ as well.


Inconsistencies on publish page when using PVA extension

Describe the bug
publish to pva error if add more triggers in main dialog. meanwhile I can not export to.zip for pva bot.

And after the spin, the publish failed, no results showed on publish page and check for pva bot asset. It does not updat as well.

Version

Browser

[X] Electron distribution
[ ] Chrome
[ ] Safari
[ ] Firefox
[ ] Edge

OS

[ ] macOS
[X] Windows
[ ] Ubuntu

To Reproduce
Steps to reproduce the behavior:

add more triggers as below

add only one action "BeginDialog" for each trigger

publish to pva

Expected behavior

Screenshots

Additional context

Brenda reported that the publish history / status is flakey and sometimes either disappears altogether or spins indefinitely.


Trakt.tv can NOT be disabled

Trakt.tv is perpetually reactivated, between browser restarts, multiple attempts it still reappears enabled.

I'm guessing the line
<li><input id="track_tv_radio" class="nfw_checkbox" type="radio" name='default'> Trakt TV </li>
in ìnfo.html` is the culprit as the spelling doesn't look correct.

Thanks, it is fixed in #41


Handle enterprise branches better on platform push

Right now, on an enterprise project with staging and production branches, platform push only warns on the master environment about being production.
Would be nice to detect that and instead warn on the actual production branch and just push to master without confirmation.

I agree it would be nice. I don't think the API currently supports what we need for this... unless we just consider an environment named production worth warning about too for now - see the above PR.
For what it's worth, git push doesn't warn for any branch.

Surprised there's nothing in the project info that allows to detect this. There is at least one thing I suppose:
platform ssh --pipe
<EMAIL_ADDRESS>
So the ssh username tells you if a production branch really is an enterprise thingy :)
Up to you if you want add a workaround somehow, I just thought I created this as an idea, because I've had to double check several times that I'm pushing to the right environment now.

For what it's worth, git push doesn't warn for any branch.

True, but warning for the wrong branch is in some ways worse than not warning at all, "wait, am I now deploying to production or master.."

Surprised there's nothing in the project info that allows to detect this.

Yes, there's nothing reliable that's in a user-accessible API, yet. The ent- prefix is a good point (it always indicates an Enterprise environment ... for now).
At least I feel naming a branch "production" is a fairly solid indicator that it is intended to be production.


How to count the number of query results

I need to execute query that should contain pagination data.
The request model is the following:
public class ItemsSearchRequest
{
    // several properties that should be used in Where clause omitted for brevity

    // requested page number
    public int PageNumber { get; set; }

    // number of found results on one page
    public int PageCountLines { get; set; }
}

The response model is the following:
public class ItemsSearchResponse
{
    // found items
    public IList<Item> Items { get; set; }

    // requested page number
    public int PageNumber { get; set; }

    // total count of found results
    public int Count { get; set; }
}

To return such a response, I use two specifications and then combine the result into response model.
public sealed class ItemsBySearchRequestSpec : Specification<Item, ItemContentDto>
{
    public ItemsBySearchRequestSpec(RpoSearchRequest request) : base()
    {
        if (!string.IsNullOrWhiteSpace(request.RecipientName))
        {
            Query.Where(e => e.RecipientName.Contains(request.RecipientName));
        }
        // and so on for each property of request model (omitted for brevity)

        Query.Skip(PaginationHelper.CalculateSkip(request.PageCountLines, request.PageNumber))
             .Take(PaginationHelper.CalculateTake(request.PageCountLines));

        Query.Select(e => new ItemContentDto { Content = e.Content });
    }
}

public sealed class ItemsCountBySearchRequestSpec : Specification<Item, ItemIdDto>
{
    public ItemsCountBySearchRequestSpec(RpoSearchRequest request) : base()
    {
        // That's what I don't like
        // I'm repeating the same where clause as I did in the first specification
        // so, if a developer change it in the first specification and forget to change it here, the results would be wrong
        if (!string.IsNullOrWhiteSpace(request.RecipientName))
        {
            Query.Where(e => e.RecipientName.Contains(request.RecipientName));
        }
        // and so on for each property of request model (omitted for brevity)

        // here I select `Id` just to calculate the count of ids on result of executed query
        Query.Select(e => new ItemIdDto { Id = e.Id });
    }
}

// usage

var itemsSearchSpec = new ItemsBySearchRequestSpec(request);
var itemsCountSearchSpec = new ItemsCountBySearchRequestSpec(request);

var items = await _repository.ListAsync(rpoSearchSpec, cancellationToken);

var result = new ItemsSearchResponse
{
    Count = (await _repository.ListAsync(itemsCountSearchSpec, cancellationToken)).Count(),
    PageNumber = request.PageNumber,
    Items = items
};

I would like to know:

Is there any way to get a total count in the first specification to not to use two specifications for it?
How can I refactor the code to define Where clause in one place?

Hi @dmitryst,
We implemented a feature where evaluators are aware if they should be processed for Count operation or not. We have this evaluateCriteriaOnly flag for that. And if you're using Count method of the repository, this flag is set to true, and all pagination and include expressions are omitted from the evaluation. This was done exactly for this reason, to be able to reuse the same spec. Here is the code in the repository
public virtual async Task<int> CountAsync(ISpecification<T> specification, CancellationToken cancellationToken = default)
{
	return await ApplySpecification(specification, true).CountAsync(cancellationToken);
}

protected virtual IQueryable<T> ApplySpecification(ISpecification<T> specification, bool evaluateCriteriaOnly = false)
{
	return specificationEvaluator.GetQuery(dbContext.Set<T>().AsQueryable(), specification, evaluateCriteriaOnly);
}

The issue is that we have only for specifications that don't contain projections, the Select feature. I don't remember what was the issue, we can analyze that part. You can try and implement CountAsync(ISpecification<T, TResult> specification) and see how it goes.

Hi @fiseni ,
I tried to implement CountAsync(ISpecification<T, TResult> specification) like this:
private IQueryable<TResult> ApplySpecification<TResult>(ISpecification<T, TResult> specification, bool evaluateCriteriaOnly = false)
{
    return _specificationEvaluator.GetQuery(_dbContext.Set<T>(), specification, evaluateCriteriaOnly);
}

But I get compile-time error: "CS0266: Cannot implicitly convert type System.Linq.IQueryable to System.Linq.IQueryable".
I guess that was the issue, you've mentioned.

Hm, that's because the method which evaluates specs with the selector in SpecificationEvaluator does not contain that feature, the evaluateCriteriaOnly flag. You will have to override the SpecificationEvaluator too. I can provide you the required changes in the following days if you can wait.
public virtual IQueryable<TResult> GetQuery<T, TResult>(IQueryable<T> query, ISpecification<T, TResult> specification) where T : class
{
	query = GetQuery(query, (ISpecification<T>)specification);

	return query.Select(specification.Selector);
}

Yeah, I see that there is no flag evaluateCriteriaOnly in IQueryable<TResult> GetQuery<T, TResult>(IQueryable<T> query, ISpecification<T, TResult> specification).
I would appreciate if you add this feature in the following days. I can wait.

I just checked the code. Actually, you don't have to do anything. Since ISpecification<T, TResult> inherits from ISpecification<T>, this will just work out of the box. You'll just need to use the CountAsync method of the repository. In your case, the code will be something like:
var itemsSearchSpec = new ItemsBySearchRequestSpec(request);

var items = await _repository.ListAsync(itemsSearchSpec, cancellationToken);
var count = await _repository.CountAsync(itemsSearchSpec, cancellationToken);

var result = new ItemsSearchResponse
{
    Count = count,
    PageNumber = request.PageNumber,
    Items = items
};

The CountAsync method won't evaluate Take, Skip, Ordering, and Include expressions in the specification. Try it out, and let me know if it works.

Yes, it works. Thank you for your help and awesome library.

Sorry to bump an old thread. I'm happy to create a new issue if it's appropriate. It's not clear to me how to get the Count using an In Memory collection.
I'd like to keep my API endpoints consistent regardless of if the resource is in memory or remote (supporting ordering, pagination, etc.). Do I have to create a custom Repository implementation which applies the same logic as the provided Repository<T> classes?


Support excerpts with multiple degradations

This includes no degradations (necessary), as well as multiple degradations (would be nice).

This would make the tasks very difficult, and we should leave this until future work, if anything.

No degradations is implemented. >1 is not yet (though it is theoretically possible to do so manually).

A suggestion for how to do this: Currently, make_dataset gets sum(deg_proportions) > 1, it implicitly normalizes.
I suggest, for sum(deg_proportions) <= 1, it still normalizes, but for > 1, it no longer does, and instead samples degradations such that, given a degraded excerpt, the given values are expected counts of each degradation, rather than proportions. This implementation would allow the measure_errors.py script to work with no changes.

(Still not advocating for implementing this immediately)


Remove our session backend

The OpenSlidesSessionBackend was added, because there was no way to get
all users from a channel-group. But now channels supports that, so we do
not need our session backend anymore.
I am not sure if this pull request is an improvement. On the pro side, we can again support other session-backends then the db-session-backend. Other session-backends can be a lot faster.
On the con side, with this pull request touches the session backend on every autoupdate for each open websocketconnection. So if there are 1000 open connections and one autoupdate per second, there will be 1000 requests to the session backend per second.
Another con is, that access_permissions.get_restricted_data() is now called for each open websocket-connection. Before this pull request, it is only called once per user. This could be a big difference if there is a user with a lot of open websocket-connections, like the anonymous user.
So in conclusion I would prefer not to merge this. But I realise it after I did the work, so I would like to start this discussion anyway.

@ostcar is this pull request still valid? Should we close this?

@ostcar ping: Can we close this pr?


Issues running stack llama example

When attempting to run the stack_llama example, I was able to run the first two steps:
torchrun --nnodes=1  --nproc_per_node=4 supervised_finetuning.py --model_path=/home/vishal/models/llama_hf --streaming --no_gradient_checkpointing --learning_rate=1e-5 --max_steps=5000 --output_dir ./llama-se
and
torchrun --nnodes 1 --nproc_per_node 4 reward_modeling.py --model_name=/home/vishal/stack_llama/llama-se-model
However, when running the third step with the following:
accelerate launch --multi_gpu --num_machines 1  --num_processes 4 rl_training.py --log_with=wandb --model_name=/home/vishal/stack_llama/llama-se-model --reward_model_name=/home/vishal/stack_llama/llama-se-rm --adafactor=False --tokenizer_name=/home/vishal/models/llama_hf --save_freq=100 --output_max_length=128 --batch_size=8 --gradient_accumulation_steps=8 --batched_gen=True --ppo_epochs=4 --seed=0 --learning_rate=1.4e-5 --early_stopping=True --output_dir=llama-se-rl-finetune-128-8-8-1.4e-5_adam
I'm running into the following issue:
../aten/src/ATen/native/cuda/Indexing.cu:1146: indexSelectLargeIndex: block: [96,0,0], thread: [59,0,0] Assertion `srcIndex < srcSelectDimSize` failed.
../aten/src/ATen/native/cuda/Indexing.cu:1146: indexSelectLargeIndex: block: [96,0,0], thread: [60,0,0] Assertion `srcIndex < srcSelectDimSize` failed.
../aten/src/ATen/native/cuda/Indexing.cu:1146: indexSelectLargeIndex: block: [96,0,0], thread: [61,0,0] Assertion `srcIndex < srcSelectDimSize` failed.
../aten/src/ATen/native/cuda/Indexing.cu:1146: indexSelectLargeIndex: block: [96,0,0], thread: [62,0,0] Assertion `srcIndex < srcSelectDimSize` failed.
../aten/src/ATen/native/cuda/Indexing.cu:1146: indexSelectLargeIndex: block: [96,0,0], thread: [63,0,0] Assertion `srcIndex < srcSelectDimSize` failed.
0it [00:00, ?it/s]
Traceback (most recent call last):
  File "/home/vishal/stack_llama/rl_training.py", line 241, in <module>
    response_tensors = ppo_trainer.generate(
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/trl/trainer/ppo_trainer.py", line 414, in generate
    return self._generate_batched(
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/trl/trainer/ppo_trainer.py", line 470, in _generate_batched
    generations = self.accelerator.unwrap_model(self.model).generate(**padded_inputs, **generation_kwargs)
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/trl/models/modeling_value_head.py", line 195, in generate
    return self.pretrained_model.generate(*args, **kwargs)
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/peft/peft_model.py", line 721, in generate
    outputs = self.base_model.generate(**kwargs)
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
    return func(*args, **kwargs)
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/transformers/generation/utils.py", line 1558, in generate
    return self.sample(
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/transformers/generation/utils.py", line 2605, in sample
    outputs = self(
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/accelerate/hooks.py", line 165, in new_forward
    output = old_forward(*args, **kwargs)
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/transformers/models/llama/modeling_llama.py", line 688, in forward
    outputs = self.model(
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/accelerate/hooks.py", line 165, in new_forward
    output = old_forward(*args, **kwargs)
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/transformers/models/llama/modeling_llama.py", line 537, in forward
    attention_mask = self._prepare_decoder_attention_mask(
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/transformers/models/llama/modeling_llama.py", line 465, in _prepare_decoder_attention_mask
    combined_attention_mask = _make_causal_mask(
  File "/home/vishal/llama-env-39/lib/python3.9/site-packages/transformers/models/llama/modeling_llama.py", line 49, in _make_causal_mask
    mask = torch.full((tgt_len, tgt_len), torch.tensor(torch.finfo(dtype).min, device=device), device=device)
RuntimeError: CUDA error: device-side assert triggered
CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.

One thing that may be of issue is that I had to change merge_peft_adapter.py L53-61 and replace it with:
model = model.merge_and_unload()

Hi @vshah505
Thanks for the issue, that might be a bug in the RL fine-tuning script
Could you try to run just a single training step in that script on CPU to better debug this? CUDA_VISIBLE_DEVICES= accelerate launch rl_training.py
Usually when I get CUDA device side assert errors I try to run that script on CPU and try to understand the error trace.
Also the RL finetuning script will be refactored after https://github.com/lvwerra/trl/pull/303 being merged. So I will let you know if I face into the same issue

Thank you! Based on a suggestion, it looks like there was an issue related to the tokenizer. The issue was resolved by installing the transformers from the latest commit and replacing the AutoTokenizer with LlamaTokenizer

@younesbelkada It seems like quite a few people are running into this problem (myself included). Any reason not to make the change suggested by @vshah505 to the code base? Thanks


Update README with new utility introduction and use cases

This commit revises the introduction in the README to include detailed information about the console utility and its broader data quality management strategy. In addition, the primary use cases for the utility have been outlined for better understanding of its applications.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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 96.209%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2436

Relevant Lines:
2532

💛  - Coveralls


[Question] What do purple colored icons mean?

Couldn't figure out what does the purple color of describe blocks (box) and test (lightning) icons mean. I suppose purple is for tests that have not completed yet.
Also looks like there is a bug/unsupported behaviour. I'm using decorators with Babel and reflect-metadata. Majestick couldn't manage to render correct filename and shows 12 passing tests on header and irreevant body with results from another test file as seen on screenshot below.
Attaching screenshot:

I believe it means the successful results have been viewed by you and it is just confirming that they are still passing and the same test names.

Purple means the default state, which is Majestic couldn't find a result to that test. This looks like a bug. Decorators or babel or reflect-metadata shouldn't affect how majestic shows the results since we didn't do anything in particular than just invoke jest.
It would greatly help if you could put together a small repo where this issue is reproducible.

Closing this for now. Feel free to reopen with an example repo.


Tutorial link is dead

📚 Documentation
The top nav has Tutorials that is a dead link to https://lightning-transformers.readthedocs.io/quickstart.html

cc: @edenlightning


More clippy lint fixes which should be uncontroversial

Signed-off-by: Daniel Egger<EMAIL_ADDRESS>

r? @rust-embedded/tools

bors try


Centering editor when searching

Check the following:

[X] I have checked the behavior after setting "vscode-neovim.neovimClean" in VSCode settings.
[X] I have read the vscode-neovim docs.
[X] I have searched existing issues.

Neovim version (nvim -v)
0.9.5
Operating system/version
Windows 11
Describe the bug
I have this mapping in my init.lua, which is supposed to center the current search result on screen:
vim.keymap.set("n", "n", "nzzzv")
While this work in neovim, it does not work in vscode-neovim.
Running the same command by hand in vscode-neovim (i.e. "n" to move to the next search result and then "zz" to center it on screen) works as expected.
There was a similar issue opened some time back (#767) but it got closed while the issue is still there.
Steps To Reproduce

Search for a pattern that appears at least twice in a file using the "/" command.
Press n to go to the next occurrence: it is not centered on screen.

Expected Behavior
Search results should be centered on screen.

Currently valid alternative: Use vscode.call to call the vscode command to center the viewport

Thanks @xiyaowong , it seems like a good idea.
Here is what I came up with: I used "revealLine" as I could not find a command that centers the viewport based on the current cursor position.
local vscode = require("vscode-neovim")

-- Sends the specified keys to Neovim.
function nvim_feedkeys(keys)
  local feedable_keys = vim.api.nvim_replace_termcodes(keys, true, false, true)
  vim.api.nvim_feedkeys(feedable_keys, "n", false)
end

-- Centers the viewport.
function center_viewport()
  local current_line = vim.api.nvim_win_get_cursor(0)[1]
  vscode.call("revealLine", {args = {lineNumber = current_line, at = "center"}})
end

vim.keymap.set("n", "n", function()
  nvim_feedkeys("n")
  center_viewport()
end)

It seems to mess up with the highlights when scrolling through the results though, as I see some glitches with the searched word appearing at many places where it should not:

@uraza try sth like this:
vim.keymap.set("n", "*", function()
  vim.cmd(":norm! *")
  local curline = vim.fn.line(".")
  vscode.call("revealLine", { args = {lineNumber = curline, at = "center"} })
end, { noremap = true, silent = true })


fuzzit badge not working

The fuzzit badge in the Readme does not load and when clicked it goes to a login page. Is there an issue with this?

Maybe it's related to the fact that fuzzit has been acquired by Gitlab and they shutdown the standalone service.
https://github.com/fuzzitdev/fuzzit
https://about.gitlab.com/blog/2020/10/22/fuzzit-acquisition-journey/
Not sure if this has impact on CI but if so, it might be needed to switch to other similar services or alternatives.

Maybe it's related to the fact that fuzzit has been acquired by Gitlab and they shutdown the standalone service.
https://github.com/fuzzitdev/fuzzit
https://about.gitlab.com/blog/2020/10/22/fuzzit-acquisition-journey/
Not sure if this has impact on CI but if so, it might be needed to switch to other similar services or alternatives.


feature request: end_with API

To allow easy insertion of frames without having to rely on the guard interface, having a method like flame::end_with<T>(frame: &str, result: T) -> T could make insertion on exit easier. Otherwise we'd have to create a temporary to store a return value.

This could be useful, especially for code-generation like flamer.
I can add this at the end of the day today, but if you'd like it sooner, feel free to open up a PR.  I've also sent you an invitation to be a maintainer to FLAME, so if you're interested, you could merge your PR yourself!


CI failure on release

https://github.com/hirosystems/clarity-lsp/runs/4885917623?check_suite_focus=true
[5:24:58 PM] [semantic-release] › ✖  An error occurred while running semantic-release: Error: Command failed with exit code 128: git tag v0.6.0 7f0e1810de38a5eff151094a35aaea21928fcbfe
249
Error: Error: Command failed with exit code 128: git tag v0.6.0 7f0e1810de38a5eff151094a35aaea21928fcbfe
250
fatal: tag 'v0.6.0' already exists

It's unclear at first glance why the version number was not incremented to 0.6.1.

Attempting to bump the version with #67.

I attempted to release another version, hoping it would bump the version number and avoid this problem, but it still failed. https://github.com/hirosystems/clarity-lsp/actions/runs/1752154316

It finally worked!

The "Preview" tag is still there for some reason, but at least the new version is released.
What had happened was that the tag v0.6.0 was pointing to a commit that was not on the main branch, so the release tool was not finding it. This then caused a conflict when it tried to do another release with the same name. To fix it, I manually relocated the v0.6.0 branch and force pushed it to the server, then made two new PRs.


Test travis for doc gen

Current coverage is 91.06% (diff: 42.85%)

Merging #82 into master will decrease coverage by 0.01%

@@             master        #82   diff @@
==========================================
  Files            59         59
  Lines          2488       2485     -3
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           2266       2263     -3
  Misses          222        222
  Partials          0          0

Powered by Codecov. Last update 28247ec...90d36ab


api: change /delete endpoint to use POST method

PR for #7985

Hi @nguu0123 thanks for the PR. Changing the allowed method for this endpoint would cause a breakage in existing clients. I'd consider supporting either method though given it makes for more compatibility with http clients. Would it be possible to update it to support both?

Thanks for the comment, I will start working on it tomorrow

I also agree with @jmorganca .
Changing it to just the POST method will cause existing clients to break.
A better solution would be to update the documentation to reflect the POST method while continuing to support the DELETE method internally. Additionally, the JavaScript and Python packages can be updated to use POST in newer versions.
Let me know if you need any help with making these changes.

@jmorganca I updated the server so that it accepts both DELETE and POST methods. Also updated the python client at 376 and js client at 178. Can you take a look at those PR?


Use one VM on Travis and separate coverage tox job

Since our tests are pretty small and quick it's much quicker to run them
all on one VM. Moreover, there are no reasons to check code coverage for
all python interpreters - one is enough. Let's do not perform unnecessary
job and check coverage only when needed.

Coverage remained the same when pulling f52104ca8d495c96dc83e66ff814e0360787b5e5 on one-travis-job into a196ed2ca64f01963fa4e8634786b24eab6e6d95 on master.


Opening Saiku outside of PUC makes it impossible to save or load queries

When using the BI platform plugin, if you double click the tab to load Saiku outside of PUC, you lose all open and save functionality.

i think we should get this save dialog thing from pedro for that!


Add metadata.json JSON Schema validation to CI

In the bcr-ui, we over time had multiple issues where certain fields of the metadata.json were missing (see https://github.com/bazel-contrib/bcr-ui/issues/134).
In order to ensure a consistent format that bcr-ui and other tooling can rely upon, it would be great to add a CI step that ensures that the metadata.json conforms to a specific schema.
@alexeagle Recently contributed a JSON Schema file (https://github.com/bazelbuild/bazel-central-registry/pull/1149) that can serve as the basis of this validation, and which could also serve as a contract for consumers (with many libraries available that can generate types in different programming languages based on JSON Schema).

Oh wow, completely misread the PR and didn't see that there is already a schema validator in place...


plans for laravel 5?

Just curious if this is still active and if you are looking toward laravel 5?

Hey @Goddard - thanks for the question, yes indeed!
I'm a full-time computer science student now so I don't have as much time to work on Angel lately, but I have indeed aleady started to rewrite the entire system from scratch in Laravel 5.  It's going to be a lot simpler at first, without the eCommerce plugin and whatnot.  I'm going to apply some better coding principles to the page system and menu system.
It should also be a lot easier to install and customize.  Updates soon!  :)

re-write the whole thing?  I am not sure you would even need to do that.  Your system is pretty nice already.  I think an interface redesign would be better and more marketing.  It could be one of the better Laravel CMS systems out right now.  OcotoberCMS is the only other CMS I like except yours and it has less features then yours, but just looks prettier.

Thanks man.  I'd definitely like to make the interface prettier!  As far as the code goes, I want it to stay really simple and intuitive...  for instance, the thing I most like about Angel right now is that if you open up the "src" folder, it is laid out just exactly like a Laravel 4 "app" folder with:

controllers
models
filters.php
routes.php

I'd like to do the same thing with Laravel 5, so I'm shifting everything around to match it, such as:

Http
Http\Controllers
Http\Middleware
Events
Services

A lot of things that used to go right in models can now become services and events in order to leverage the new service-oriented class paradigm.
In addition:  Laravel 5 finally comes with a user registration system, login/signup/password reset pages, etc.  I'm leveraging all of that to replace the systems I had built custom for the old Angel.  It also comes with some really interesting RESTful controller code that might make Angel's CrudController obsolete!
The goal is to have anyone who is already real familiar with Laravel 5 feel right at home in the new Angel system, and to do that I have to refactor the framework the Laravel 5 way.  95% of what makes Angel tick is in the CrudController, so it'd be really cool to make that a lot simpler in the process if I can!
I really appreciate your input on this, please do let me know if you have any advice, I try to make everyone happy with it.  In the end, I hope to not have to rewrite too much of the code, just to kinda refactor it into the new paradigm as much as possible... so that I can get it shipped ASAP.  Thanks again.
I've been watching October off and on for a while... I think it's really cool, but I don't like that it's a replacement for Laravel instead of just an add-on for it.  Whereas Angel is a package that can update separately from Laravel, October is what you install in-place of Laravel (if I understand correctly).  It's really sexy for sure, though.

Yeah I hate that about October as well.  They are really trying to make people dependent on them rather then adding to laravel.  The route you are taking is good as long as you are able to handle staying with laravel development.  How many people are helping you with this project?

As far as writing code goes, Angel has been a solo venture so far.  However, there are a good handful of great developers who use the framework every day and let me know about bugs and whatnot.  I'd love to collaborate with others on it, especially because I'm not very into front-end stuff, and I know it could be a lot prettier.  I've never used Gulp before; so that whole workflow is very new to me with Elixir on Laravel 5.  In the past, I've only done super basic SASS compilation for Foundation and whatnot.  I'm hoping to integrate a cleaner and more robust front-end workflow into Angel using Elixir.

Hi @JVMartin have you had a look at AdminLTE for the Admin design?

Hey @vitor-faiante - I hadn't seen that before, it looks really sweet!  Totally thinking about integrating it into the Laravel 5 version of the CMS when we build it out more.


Current temperature?

Clim,ate card - as I can't use a template on the name I can't see how to show the current temperature - am I missing something?

I’m using displaying the current temperature below the name, using show_attribute: true and attribute: current_temperature
perhaps this might work for you?
  - type: custom:bubble-card
    card_type: climate
    entity: climate.kitchen
    card_layout: large
    show_attribute: true
    attribute: current_temperature
    show_state: false

This is the best way indeed!

I’m using displaying the current temperature below the name, using show_attribute: true and attribute: current_temperature
perhaps this might work for you?
  - type: custom:bubble-card
    card_type: climate
    entity: climate.kitchen
    card_layout: large
    show_attribute: true
    attribute: current_temperature
    show_state: false

Thank you so much - right - I now have the current temperature . Hopefully this will help others. Marvellous.
type: custom:bubble-card
name: Office aircon
card_type: climate
show_attribute: true
attribute: current_temperature
entity: climate.condizionatore
sub_button:
  - name: HVAC modes menu
    select_attribute: hvac_modes
    show_arrow: false
    state_background: true
hold_action:
  action: more-info

@scargill please mark this as solved


Document converting a TileMap node to TileMapLayer using the editor

PS: Is this conversion accessible from code or editor plugins, so it can be automated?

See https://github.com/godotengine/godot-proposals/issues/10340.

Preview

Needs update to escape ' in XML: https://github.com/godotengine/godot/actions/runs/10240593330/job/28327702966?pr=95069


suppress exceptions from loader progress display messages

@Hixie, @johnmccutchan, suppress exceptions from loader progress display messages. We can start sending progress messages for populating the devfs before the loader app has registered its service protocol handlers. In this case we print a substantial number of exceptions at app startup. This changes the flutterLoaderShowMessage methods to sending progress info on a best effort basis.

There's a bunch more places where we can do similar things.

e.g. https://github.com/flutter/flutter/issues/5465, https://github.com/flutter/flutter/issues/5443


String matching implementation

The remaining (total, non-boolean-blind) functionality from text requires a string matching implementation. Judging from the documentation, text uses BMH. I'm not sure if this is the best choice, but there are probably reasons why they picked it. As I'm not a string matching expert, I'd prefer someone who knows the practicalities of this chime in.

Done with  f98f7fa


Kanban board set-up

Hello Reviewer 👋
This is a Kanban set up for the Rails Recipe App Module 5 week 4.
In this project we are two (@johnkioko and @Daphineatim )
Below is the link to our Kanban board.
https://github.com/users/Daphineatim/projects/5
Thank you.

Project Approved :trophy: :tada: 🟢
Hi @Daphineatim @johnkioko
Your project is complete!  You have done it exceptionally well. it's time to merge it :100:
Congratulations! 🎉
To Highlight :+1:
:heavy_check_mark: No linters error.
:heavy_check_mark: Details PR title and description.
:heavy_check_mark: Good commit messages.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification. You can also connect with me on slack

_As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


I can not import Image component from next/image

mdx-bundler version: ^5.2.1
node version: v16.3.0
npm version: 7.20.1

Relevant code or config
import * as React from 'react'
import Image from 'next/image'

function EsstentialismGraph() {
  return (
    <div className="mt-4 flex justify-center">
      <Image src={'/essentialism_graph.svg'}
        alt="Tư tưởng cốt lõi và không cốt lõi"
        layout="intrinsic"
        width={250}
        height={300} />
    </div>
    )
}

export default EsstentialismGraph

What you did:  Thank you for an amazing project! I try to import EsstentialismGraph component to the MDX file but it turns out I get an error about the process. I figured out the problem was I used Image component from next.
What happened:

Reproduction repository:

Problem description:
Suggested solution:

mdx-bundler version: ^5.2.1
npm-version: 7.15.0
node-version: v15.14.0

I also tried to bundle a component which is using
 import { useRouter } from "next/router"

receiving following error-messages:

First I thought ChakraUI is the problem, but once I comment out the router it works fine.

In your code example, I don't see a src provided for the image. I'm able to use next/image with mdx-bundler as follows:
<Image
  alt={`my image`}
  src={`/my-image.png`}
  width={2548}
  height={1640}
/>

Yes, It worked after  Image component is forwarded or is added as a global component.
@leerob I'm curious why I can't import Image in the MDX file directly as the way I did with clsx or React.
It works:
import clsx from 'clsx'
import * as React from 'react'

But it doesn't work:
import Image from 'next/image'

As far as I am aware next/image needs to be supplied as a global so that it comes from the next.js app iinstead of being imported seperately. The same is true for next/link.

I'm not sure to understand how to do that.
I added
globals: {
      'next/image': 'nextImage',
      'next/link': 'nextLink',
    }

to the bundleMDX function and provided
import NextImg from 'next/image';
import Link from 'next/link';
/*
...
*/
getMDXComponent(code, {
        nextImage: NextImg,
        nextLink: Link,
      })

to the page component but still receive this error whenever I import a component using next/image :
ReferenceError: process is not defined
Am I missing something here ?

I was encountering a similar issue. It seems that adding the next component to the global list when defining bundleMdx was the trick such as below:
      globals: {
        "next/router": "Router",
        "next/link": "Link",
        "next/image": "Image",
      },

And then when I call getMdxComponent, we can pass in the imported next components with their corresponding key to the value described above:
  const Component = useMemo(
    () => getMDXComponent(code, { Link: Link, Image: Image, Router: Router }),
    [code]
  );


custom BaseCallbackHandler in STRUCTURED_CHAT_ZERO_SHOT_REACT_DESCRIPTION agent not calling on_tool_end

System Info
langchain 0.0.235
I wrote my own callback handler
class ChatHandler(BaseCallbackHandler):
which includes the function
def on_tool_end(self, output: str, observation_prefix: Optional[str] = None, llm_prefix: Optional[str] = None, **kwargs: Any) -> Any:
     """Run when tool ends running."""
     if observation_prefix is not None:
         print("OBSERVATION: "+str(output))
     if llm_prefix is not None:
         print("llm_prefix: "+str(output))

as inspired by the source of the file callback handler https://api.python.langchain.com/en/latest/_modules/langchain/callbacks/file.html#FileCallbackHandler .
I have a STRUCTURED_CHAT_ZERO_SHOT_REACT_DESCRIPTION agent. My goal is to capture the observation, it seems not to call the function. The handler works fine for other functions.
I attach the handler like this:
cHandler = chatHandler.ChatHandler()
cManager = manager.BaseCallbackManager(handlers=[cHandler])
initialize_agent(tools,llm, callback_manager=cManager, ...

Am I using the wrong callback manager?
Who can help?
@agola11
@hwchase17
Information

[ ] The official example notebooks/scripts
[X] My own modified scripts

Related Components

[X] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[ ] Output Parsers
[ ] Document Loaders
[ ] Vector Stores / Retrievers
[ ] Memory
[X] Agents / Agent Executors
[ ] Tools / Toolkits
[ ] Chains
[X] Callbacks/Tracing
[ ] Async

Reproduction
import os
from langchain.agents import initialize_agent
from langchain.callbacks import manager
from langchain.chat_models import AzureChatOpenAI
from langchain.agents import AgentType
from langchain.callbacks.base import BaseCallbackHandler
from langchain.schema import AgentAction
from typing import Any, Dict, List, Optional

# ENVIRONMENT KEYS; OPENAI_API_KEY
import json
vals = json.load(open("../local.settings.json"))['Values']
for k in vals.keys():
    os.environ[k] = vals[k]

from langchain.agents import Tool
def a(b):
    print('tool used wow')
    return "frogimage.png"
t = Tool(
        name="Search things online", #search location by vague name
        func=a,
        description="Use this tool to search and find things online.",
        return_direct=False
    )

BASE_URL = "https://XXX.openai.azure.com"
DEPLOYMENT_NAME = "gpt-35-turbo-16k"
model = AzureChatOpenAI(
    openai_api_base=BASE_URL,
    openai_api_version="2023-05-15",
    deployment_name=DEPLOYMENT_NAME,
    openai_api_key=os.environ["OPENAI_API_KEY"],
    openai_api_type="azure",
    temperature=0.0
)

class TestHandler(BaseCallbackHandler):
    def on_tool_end(self, output: str, observation_prefix: Optional[str] = None, llm_prefix: Optional[str] = None, **kwargs: Any) -> Any:
        """Run when tool ends running."""
        print("on_tool_end")

    def on_agent_action(self, action: AgentAction, **kwargs: Any) -> Any:
        """Run on agent action."""
        print("on_agent_action")

cHandler = TestHandler()
cManager = manager.BaseCallbackManager(handlers=[cHandler])

agent_chain = initialize_agent([t],model, callback_manager=cManager, agent=AgentType.STRUCTURED_CHAT_ZERO_SHOT_REACT_DESCRIPTION, verbose=True)

agent_chain("search frog images online")

outputs:

Entering new AgentExecutor chain...
on_agent_action
Action:

{
  "action": "Search things online",
  "action_input": "frog images"
}
```tool used wow

Observation: frogimage.png
Thought:I found an image of a frog. Here it is:
Action:

{
"action": "Final Answer",
"action_input": "frogimage.png"
}

> Finished chain.
{'input': 'search frog images online', 'output': 'frogimage.png'}

Expected behavior
The function on_tool_end is called when the agent has used a tool, printing on_tool_end, but only on_agent_action is printed.

setting the tool callback_manager to the above manager doesn't call on_tool_end either.

I've added a reproducible isolating example above (apologies about the output formatting).

Passing the handler like so agent_chain("search frog images online",callbacks=[cHandler]) does work.


Invite not deleted after being used

Describe the bug
After using an invite, the invite link is still sitting in the Invites section, though the link isn't usable. When using the link, it'll just have an infinite loading screen.
The Invite link should be automatically deleted from the Invites section once it has been used.
Reproduction
Create an invite, create new user through invite, check Invites section
System Info
Docker

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
[X] The provided reproduction is a minimal reproducible of the bug.

Good one. I'll need to split the invites between expired/pending invites.

Somehow Jenkins was buggy and never released the postgres version to DockerHub. It is now up.


How Can I Recover My Lost Funds From Online Trading Investment Scam

Betafort Recovery is a reliable cryptocurrency recovery firm that assists victims in recovering their stolen cryptocurrency and offers secure solutions to protect your wallets from online scammers..

The Best Reliable Funds Recovery Company

Provide more information regardiing the issue


Unlist OpenTracing.Signed from nuget once we have a new release

As discussed in #78, the unofficial OpenTracing.Signed package should be unlisted after we've released v0.12.0.

Thanks @cwe1ss

I'll get it unlisted ASAP.

@MikeGoldsmith following up on this.. I still see the OpenTracing.Signed nuget package available. Any way we can get that taken down?

Hi @austinlparker - yes, I'll get it removed ASAP.

I can confirm the package is no longer available. Sorry for the (very) slow reply, I was waiting on someone else to delist it.


ISE using auth::ClientTokenIdentity within access policies

Schema:
using extension auth;

module default {
  type User {
    required identity: ext::auth::Identity;
  };

  type Todo {
    required owner: User;

    access policy ownerHasAccess
      allow all
      using ((select User filter .identity = global ext::auth::ClientTokenIdentity limit 1) ?= .owner);
  };
}

Query:
_localdev:edgedb> insert Todo { owner := (insert User { identity := global ext::auth::ClientTokenIdentity }) };
edgedb error: InternalServerError: function edgedbstd.47e3264c-8091-5a3c-b2c5-b55df212c73c(jsonb, jsonb[], text) does not exist

Problem:
We call edgedbstd."std::json_get" with (jsonb, jsonb[], text) instead of (jsonb, jsonb, text).
Call site:
FROM LATERAL (
    SELECT/*<pg.SelectStmt at 0x7f7aa5172990>*/
        edgedbstd."std::json_get"("v~4"."v~5", "json_claims~4"."claims_value~3", ('sub')::text) AS "expr~32_value~1"
) AS "q~13"

The problematic "json_claims~4"."claims_value~3" comes from here:
FROM LATERAL (
  FROM ROWS FROM (unnest(ARRAY["set_as_subquery~7"."FreeObject_serialized~2"]) AS (_t0 uuid, _t1 jsonb[])) AS "unpack~3"
  SELECT/*<pg.SelectStmt at 0x7f7aa5172110>*/
    _t1 AS "claims_value~1"
) AS "q~11"

I don't get this failure on master or 4.2? (Though the access policy does fail, since select User won't have the newly created User).


Replace tag values with helm default function in deployment yamls

Replace tag values with helm default function in deployment yamls.
These changes will handle repository specific tags implemented in main branch.

These changes were tested with  helm install --dry-run --debug for three scenarios.
Scenario 1 : controlTag  dataTag and extTag  values are present in values.yaml along with tag value
Scenario 2: controlTag  dataTag and extTag tag fields are present but empty value while tag value is present
Scenario 3: controlTag  dataTag and extTag tag fields are absent while tag value is present

Hi Tiago,
The tag values have been tested for the below scenarios
Scenario 1 : controlTag dataTag and extTag values are present in values.yaml along with tag value
Scenario 2: controlTag dataTag and extTag tag fields are present but empty value while tag value is present
Scenario 3: controlTag dataTag and extTag tag fields are absent while tag value is present
So irrespective of existence of these tags in values.yaml , the above changes will work fine.
I think these changes will only be  in place as of now for main branch . We could handle the tag creation for main in another PR

bors merge


Export CSV with Title

Hi,
The export csv need with heading. Ref enclosed screen shot

Hi elaya
Thanks for sharing this issue, issue is fixed now
<EMAIL_ADDRESS>

Thanks Great!

Hi Rakhmadi,
One more
Data row color differences looks like my screen shot.


[FR] GPodder Sync

Is your feature request related to a problem? Please describe.
I can't sync my listening progress with other devices and I would like to. gpoddersync is a way to do that, that is also FLOSS.
Describe the solution you'd like
integration with gpoddersync, like AntennaPod on android. There is currently no iOS app that supports gpoddersync, let alone open source.
Describe alternatives you've considered
N/A
Additional context
https://antennapod.org/documentation/general/synchronization
https://apps.nextcloud.com/apps/gpoddersync

Hi @Snuupy,
I would like to add sync support through something like Gpodder, or The Open Podcast API, but I need to implement background fetching of episodes before this would be viable.
Currently, podcasts are fetched when a user opens a podcast within their library, which is fine for small libraries but not for larger libraries. I am currently working implementing automatic fetching of episodes in the background.
Thanks for your suggestion.


Use Req.URL.RequestURI() to cope with FCGI urls

When using FCGI, Unix and FCGI+unix the request URI can be opaqued meaning that ctx.Req.RequestURIis empty. This PR changes all the code to use the generatedURL.RequestURI()` instead.

Codecov Report

Merging #9473 into master will decrease coverage by <.01%.
The diff coverage is 30.76%.

@@            Coverage Diff             @@
##           master    #9473      +/-   ##
==========================================
- Coverage    41.5%   41.49%   -0.01%
==========================================
  Files         570      571       +1
  Lines       74643    74603      -40
==========================================
- Hits        30980    30958      -22
+ Misses      39820    39801      -19
- Partials     3843     3844       +1

Impacted Files
Coverage Δ

routers/home.go
46.68% <0%> (ø)
:arrow_up:

modules/context/permission.go
20.63% <0%> (ø)
:arrow_up:

modules/setting/log.go
69.36% <100%> (ø)
:arrow_up:

routers/routes/routes.go
83.03% <100%> (ø)
:arrow_up:

modules/context/auth.go
20.22% <25%> (ø)
:arrow_up:

models/unit.go
62.16% <0%> (-5.41%)
:arrow_down:

modules/graceful/manager.go
20.83% <0%> (-4.17%)
:arrow_down:

routers/repo/view.go
38.59% <0%> (-0.88%)
:arrow_down:

models/gpg_key.go
55.03% <0%> (-0.56%)
:arrow_down:

modules/setting/indexer.go
90.9% <0%> (ø)
:arrow_up:

... and 10 more

Continue to review full report at Codecov.

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


Issue

Hello, having an issue whenever i try to upload.

thanks

Not able to reproduce that with my most recent data package but it seems to be related to how the site detects dark mode in the user data - I pushed a quick patch, feel free to give that a try and let me know if that works.

such a quick response!!! thank you that worked well...


Make graphics

Button graphics and background environment graphics

:ballot_box_with_check: Crank graphic

Critical graphics:
*Neutral environment
*Positive environment
*Solar panel
*Wind turbine
Preferred graphics:
*More stages of positive environment
*Game logo (for icon and such)
To be updated as new information arrives

Closing as the code jam is over


feat(chips): use MdAutocomplete, MdChipList and MdBasicChip + bugfixes. (closes #215) (closes #165) (closes #96)

Description
https://github.com/Teradata/covalent/issues/215
https://github.com/Teradata/covalent/issues/165
https://github.com/Teradata/covalent/issues/96
Since now we are using MdAutocomplete under the covers, TdChips will follow the material spec better and wont have the cross-browser issues that datalist had.
What's included?

feat(chips): remove TdAutocompleteComponent and use MdAutocomplete
feat(chips): remove TdChipComponent and leverage md-chip-list and md-basic-chip
feat(chips): filter items depending on input value for autocomplete
enhancement(chips): change input label when incorrect + remove warn when value changes

Test Steps

[ ] ng serve
[ ] go to http://localhost:4200/#/components/chips
[ ] compare with https://teradata.github.io/covalent/#/components/chips
[ ] See it be more materialy 😄

General Tests for Every PR

[ ] ng serve --aot still works.
[ ] npm run lint passes.
[ ] npm test passes and code coverage is not lower.
[ ] npm run build still works.

Screenshots or link to CodePen/Plunker/JSfiddle

Twould be a lovely a11y feature to enable backspace to remove a chip and <- and -> arrow chip selection like ng1:

(also esc goes back to the input no matter which chip is selected)


Change 'parent_folder' attribute in 'File' object to 'folder' & make it a 'File' object

The File object 'describes files, folders, links and mounts, including the reputation information, if applicable.'

Currently, this object has an attribute called parent_folder, which represents 'the folder in which the file resides'.

By the definition above, this attribute should be a file object, named folder.

Similar to the Process Object in Process Activity, we may want to include verbiage similar to this in the description

It is recommended to only populate this field for the first parent object, to prevent deep nesting.

Similar to the Process Object in Process Activity, we may want to include verbiage similar to this in the description

It is recommended to only populate this field for the first parent object, to prevent deep nesting.

Good suggestion, makes sense to me. I have no objections to it :)

This makes sense to me too. This is another use case for having an option to include either an ID or an observable (to allow more advanced relational platforms to save on data volumes and automatically prevent deep nesting).


Avoid shortening git commit hash in github url

Given commit hashes may clash, shortening them to 7 characters might
not always work. Even though Git is able to still identify certain
commits using the abbreviation, Github may not. We keep the shorted
commit hash as label while we point the url to the full commit id.
Example:
❯ git rev-parse --short=7 d47660cb46163d058f8de40b73b2f99a11a654a7
d47660c
Not working: https://github.com/gradle/gradle/commit/d47660c
Working: https://github.com/gradle/gradle/commit/d47660cb46163d058f8de40b73b2f99a11a654a7
This fixes a problem where not all links in the "Test history" section of
performance tests are accessible.

@bot-gradle test QF

OK, I've already triggered QuickFeedback build for you.


fix(runtime.js): partials compile not caching

Reintroduce assigning env.partials to container.partials if no options.partials is set. Also allow assigning options.partials to container.partials if only that one exists. This solves https://github.com/wycats/handlebars.js/issues/1598

Perhaps helpers and decorators should also go back to using merge like they did before 2078c727c627f25d4a149962f05c1e069beb18bc?

@andersk Afaik they aren't compiled, so there won't be a big difference like with partials, but it will potentially have some speed-up as it will skip the shallow-copy step if not needed. @nknapp what do you think?

I think the overhead of the shallow-copy step is negligible.
#1594 is also related to that place. It makes sure that the helpers-object has a "null"-prototype, because some exploits have used "defineGetter" to do bad things and the "helpers"-object is accessible from the template.
Merging here makes sure that the "helpers"-option is not used "as is" and together with #1594 it ensure the null-prototype (Object.create(null)) for this object, so: No, I would like to leave helpers and decorators as they are.
@ole-martin could you rename the merge-function to something that explains what the function is doing. It's not a simple "merge", but a "merge if needed" or a "first non-null or merge" or something like that. If you find a good name, short yet describing what the function does, please take it. But "firstNonNullOrMerged" would be fine to.
I was confused the first time I read that code and my intention (over time) is to make the Handlebars code more explanatory and clean (not by comments, but by good naming).

@nknapp Updated function name to "mergeIfNeeded" now 👍

@ole-martin forgive me for delaying this further again. Although I had added some change requests, I haven't had time for a full review yet. And now it is getting too late again. But I will look...

@nknapp I've moved the test to regressions.js and changed it to use sinon-spy & Handlebars.create(). I've also verified that without the changes to runtime the test fails with
1) Regressions
       GH-1598: Performance degradation for partials since v4.3.0
         should only compile global partials once:
     Error: '4' should === '3'

Great, I'll have another look this evening. But I think its fine now. Thanks.


[bug] Windows 7 err: The procedure entry point EventSetInformation could not be located in the dynamic link library advapi32.dll.

Discussed in https://github.com/tauri-apps/tauri/discussions/5084

Originally posted by zhongheng001 August 29, 2022
err: The procedure entry point EventSetInformation could not be located in the dynamic link library advapi32.dll.
I created a simply app。in development computer, every thing is ok ( compile ok, run ok). then distributed as Windows 7 Installers (.msi files). setup successed. but  run app,an error occurred:
The procedure entry point EventSetInformation could not be located in the dynamic link library advapi32.dll.

Development computer os:
windows 10, prerequisites According to the tauri Guides(https://tauri.app/v1/guides/getting-started/prerequisites)

Target OS: Windows 7

Windows 7  is  VM (Oracle VM VirtualBox)
View basic information about your computer
Windows edition
Windows 7 Ultimate N
Copyright  2009 Microsoft Corporation.All rights reserved. Service Pack1

System
Rating: System rating is not available
Processor: Intel(R) Core(TM)i7-10510U<EMAIL_ADDRESS>GHz
Installed memory (RAM): 2.00 GB
System type: 64-bit Operating System
Pen and Touch: No Pen or Touch Input is available for this Display
Computer name, domain, and workgroup settings
Computer name: test1-PC
Full computer name: test1-PC
Computer description:
Workgroup: WORKGROUP

Cargo.toml
[package]
name = "demo1App"
version = "0.0.0"
description = "A Tauri App"
authors = ["you"]
license = ""
repository = ""
edition = "2021"
rust-version = "1.57"

[build-dependencies]
tauri-build = { version = "1.0.0", features = [] }

[dependencies]
serde_json = "1.0"
serde = { version = "1.0", features = ["derive"] }
tauri = { version = "1", features = ["api-all", "windows7-compat"] }

[features]
default = [ "custom-protocol" ]
custom-protocol = [ "tauri/custom-protocol" ]

tauri.conf.json (Webview2 Installation Options Fixed Version)
{
  "build": {
    "beforeDevCommand": "yarn dev",
    "beforeBuildCommand": "yarn build",
    "devPath": "http://localhost:1420",
    "distDir": "../dist"
  },
  "package": {
    "productName": "demo1App",
    "version": "0.0.0"
  },
  "tauri": {
    "allowlist": {
      "all": true
    },
    "bundle": {
      "active": true,
      "category": "DeveloperTool",
      "copyright": "",
      "deb": {
        "depends": []
      },
      "externalBin": [],
      "icon": [
        "icons/32x32.png",
        "icons/128x128.png",
<EMAIL_ADDRESS>        "icons/icon.icns",
        "icons/icon.ico"
      ],
      "identifier": "demo1.demo.com",
      "longDescription": "",
      "macOS": {
        "entitlements": null,
        "exceptionDomain": "",
        "frameworks": [],
        "providerShortName": null,
        "signingIdentity": null
      },
      "resources": [],
      "shortDescription": "",
      "targets": "all",
      "windows": {
        "certificateThumbprint": null,
        "digestAlgorithm": "sha256",
        "timestampUrl": "",
        "webviewInstallMode": {
          "type": "fixedRuntime",
          "path": "./Microsoft.WebView2.FixedVersionRuntime.104.0.1293.70.x64/"
        }
      }
    },
    "security": {
      "csp": null
    },
    "updater": {
      "active": false
    },
    "windows": [
      {
        "fullscreen": false,
        "height": 600,
        "resizable": true,
        "title": "demo1App",
        "width": 800
      }
    ]
  }
}

main.rs
#![cfg_attr(
    all(not(debug_assertions), target_os = "windows"),
    windows_subsystem = "windows"
)]

#[tauri::command]
fn greet(name: &str) -> String {
    format!("Hello, {}! You've been greeted from Rust!", name)
}

fn main() {
    tauri::Builder::default()
        .invoke_handler(tauri::generate_handler![greet])
        .run(tauri::generate_context!())
        .expect("error while running tauri application");
}

I had try Webview2 Installation other Options  (Offline Installer,Embedded Bootstrapper) . but can't fix this problem.
I  search the tauri guides documcent, issuess list  and disccusions,but not find any similarity solutions。
What things did I miss？
I'm looking forward to your help！
Thank you very much!

this is a case of missing system update for windows 7. I encountered this a while back, here are the links for it:

x64: https://www.microsoft.com/en-us/download/details.aspx?id=48636
x86: https://www.microsoft.com/en-us/download/details.aspx?id=48638

maybe this is a could be added into FAQ

this is a case of missing system update for windows 7. I encountered this a while back, here are the links for it:

x64: https://www.microsoft.com/en-us/download/details.aspx?id=48636
x86: https://www.microsoft.com/en-us/download/details.aspx?id=48638

Thank you very much！ I do it and success( in win7 sp1), if win7 is not sp1, need to update to sp1 first.

Windows 7 Service Pack 1 (KB976932)
https://www.catalog.update.microsoft.com/Search.aspx?q=KB976932


Cascade -e files when combined with -c

This change makes it so that when combining the -c and -e flags it is the extra files that will get the .local and environment specific versions. This is a change from the current behavior which cascades to .env.local, .env, extra so this may necessitate a major version bump, but I think is a more consistent behavior.
To demonstrate…

flags
original
new

[ '.env' ]
[ '.env' ]

-c
[ '.env.local', '.env' ]
[ '.env.local', '.env' ]

-c foo
[ '.env.foo.local', '.env.foo', '.env.local', '.env' ]
[ '.env.foo.local', '.env.foo', '.env.local', '.env' ]

-e bar
[ 'bar' ]
[ 'bar' ]

-c -e bar
[ '.env.local', '.env', 'bar' ]
[ 'bar.local', 'bar' ]

-c foo -e bar
[ '.env.foo.local', '.env.foo', '.env.local', '.env', 'bar' ]
[ 'bar.foo.local', 'bar.foo', 'bar.local', 'bar' ]

I also added a --debug flag to make it easier to see what files dotenv-cli will process.
Fixes  #43

Released as v4.0.0


Global data formatting: changes are visible only in one of the connections

System information:

Win10, DBeaver CE 21.1.5

Steps to reproduce, if exist:
Find or create 2 cells with numeric(>1000)/time etc. in two connections. Make sure that local formatting is disabled for both of them.
Go to the global formatting settings and change the locale so that it visually differs from the previous one. Apply changes.
Refresh the data in the table that was active when you made changes - data formatting is changed.
Go to the second connection. Refresh data.
Expected: Data in the second table is formatted according to the new Global settings
Actual: New data formatting wasn't applied, and refresh/reopening the table/reconnect/disconnect doesn't fix it
https://user-images.githubusercontent.com/43252954/130079874-aadade54-e46e-47a1-9974-c792a54f4445.mp4

verified


Added completed applications functionality to student profile

Student profiles have a completed applications section. This should be built upon to be sorted by cost of attendance to student (per client request) as the financial aid/net cost of attendance features are completed.

Students should only be able to add colleges in the system to their completed applications... this should use a dropdown with the colleges for selection of college name.

Bug: when student selects to edit a completed application, previous responses are not stored in the dropdowns

Bug: allows addition of same college more than once


Multiple viewports

Let's find a way to render multiple cameras to different parts of the screen. This way it will be easy to implement minimaps, VR rendering, etc.

Unity allows a camera output to go to a Render Texture.

I already made a research in this field, this shouldn't be hard to implement. Detailed description of the process.


Update README.md

Description of Changes
Please clearly state what you have changed and why you made these changes.
Testing Done
Please describe the tests that you ran to verify your changes.
Related Issue(s)
Please link the related issues.

By submitting this pull request, I confirm that my contribution is made under the terms of the Contributor License Agreement (CLA).

[ ] I have read the Contributor License Agreement (CLA), and I hereby agree to the terms of the CLA.

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


Add Switch for Base Station

Hello,
Is it possible to add a switch to turn a base station on or off with Home Assistant?
I searched for the API but couldn't find it.

I also could no find a way to do it, and that would be pretty helpful to me as well

This has been added in the latest release 2024.10.1


Renaming fields with relationships get duplicated (The old one is not deleted from the data_rows table)

Laravel Version: 5.3
Voyager Version: 0.10.11
PHP Version: 5.6

Renaming fields with relationships get duplicated (The old one is not deleted from the data_rows table), so if I add a new record, I find the fields is duplicated and the old one is not removed.
I don't know if this issue exists in fields with no relationships

Add a field in a table with a relationship and add the relationship function in its model.
Rename this field from the database page.
Go and add a new record in that table, you'll find two inputs for that field.

@EngHazem, apologies for this taking so long to get to.  Can you confirm whether this is still an issue in the current version?


Enum-based supertype

[x] Rewrite BaseAny in ap000 as enum-based
[x] Holder structs
[x] impl Serialize and Deserialize for BaseAny

Code generation by espr will be next PR.

Omit impl Deserialize for BaseAny

This is outdated, and it will be easy to rewrite from master branch.


Removed tests from coverage report

Removed tests from coverage report

Coverage increased (+5.8%) to 99.758% when pulling 7ef6e3b8ffe34852c378364a5e7a97930a1e946a on waldekmastykarz:removes-tests-from-coverage into fb536f754915f7dd891f0eddc8b86dda68e16abb on SharePoint:dev.

Merged manually


Feature Request: Submit to SAS Viya Batch process

The SAS Viya Batch api behaves slightly differently from the SAS Job Execution service.
As a batch scheduler I would like to scheduler some jobs to use the sas batch api instead of Job Execution service.

We could use a variable to denote the submission method.
Default to the JES_API?
When using the Batch API, it looks like you need to create a file set first, and put the contents of the job into a file in the fileset. Then you create a batch job which references the fileset id, and the file name inside the fileset to run.


DAWN-633 ⁃ Create a jenkins build/test run with lib_c++ debug library and all compiler debug checks enabled.

Create a jenkins build/test run with lib_c++ debug library and all compiler debug checks enabled.

We are not using jenkins anymore so this ticket is not longer relevant. I'm closing this issue


chore(main): release 1.4.2

:robot: I have created a release beep boop
1.4.2 (2024-09-05)
Bug Fixes

Put back the include-v-in-tag (055d28f)
Remove the 'v' in front the tag (temporary solution the time release-please works as expected) (98ccbb7)
set the 'simple' release-type & remove include-v-in-tag that has 'false' as the default (42fc5d6)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.4.2
:sunflower:


Introduce flash-attn (>= 2.5.0).

flash-attention starts support paged kv-cache since v2.5.0 (commit https://github.com/Dao-AILab/flash-attention/commit/54e80a3829c6d2337570d01e78ebd9529c02d342) in the flash_attn_with_kvcache interface.
This PR enables the usage of flash-attn kernels for both prefilling, contexted-prefill (current context_attention_fwd kernel for prefix cache) and decoding, for both MHA and MQA/GQA.
(This PR includes GQA fixes for prefix cache in #3007 which should be accepted/merged first).

Performance of benchmarks/kernel/benchmark_paged_attention.py (on A800-SXM4-80GB):

|   | Latency (us) | Latency (us) | Latency (us) |
-- | -- | -- | -- | -- | --
Version |   | v1 | v2 | FA | min(v1,v2)/FA
Context Length | Batch Size |   |   |   |   |
512 | 1 | 20.285 | 24.053 | 21.732 | 0.93341616 |
512 | 2 | 22.507 | 27.161 | 21.557 | 1.04406921 |
512 | 4 | 27.766 | 32.225 | 21.303 | 1.3033845 |
512 | 8 | 51.812 | 54.791 | 26.772 | 1.93530554 |
512 | 16 | 85.764 | 94.209 | 34.092 | 2.5156635 |
512 | 32 | 154.25 | 165.756 | 65.76 | 2.34565085 |
512 | 64 | 296.102 | 314.561 | 99.969 | 2.9619382 |
512 | 128 | 575.615 | 601.286 | 167.221 | 3.44224111 |
512 | 256 | 1135.105 | 1183.508 | 300.406 | 3.77856967 |
1024 | 1 | 34.968 | 28.472 | 34.563 | 0.82377108 |
1024 | 2 | 38.488 | 33.959 | 34.814 | 0.97544091 |
1024 | 4 | 48.401 | 53.541 | 24.094 | 2.00884038 |
1024 | 8 | 95.94 | 93.901 | 34.651 | 2.70990736 |
1024 | 16 | 159.446 | 165.031 | 61.633 | 2.58702319 |
1024 | 32 | 281.751 | 312.197 | 119.318 | 2.36134531 |
1024 | 64 | 545.191 | 596.719 | 180.948 | 3.01297058 |
1024 | 128 | 1054.5 | 1167.859 | 308.539 | 3.41772029 |
1024 | 256 | 1973.139 | 2263.873 | 571.34 | 3.45352855 |
2048 | 1 | 63.153 | 33.674 | 21.453 | 1.56966392 |
2048 | 2 | 72.214 | 53.621 | 24.961 | 2.14819118 |
2048 | 4 | 96.665 | 93.176 | 36.007 | 2.58771905 |
2048 | 8 | 181.835 | 163.072 | 59.931 | 2.72099581 |
2048 | 16 | 292.313 | 306.513 | 114.099 | 2.56192429 |
2048 | 32 | 522.957 | 586.998 | 221.445 | 2.36156608 |
2048 | 64 | 1017.5 | 1147.996 | 348.459 | 2.9199992 |
2048 | 128 | 1856.959 | 2263.743 | 587.604 | 3.16022185 |
2048 | 256 | 3434.592 | 3927.69 | 1091.562 | 3.14649282 |
4096 | 1 | 119.062 | 55.451 | 26.47 | 2.09486211 |
4096 | 2 | 158.624 | 93.562 | 36.841 | 2.53961619 |
4096 | 4 | 184.772 | 162.506 | 56.607 | 2.8707757 |
4096 | 8 | 345.027 | 307.934 | 98.774 | 3.1175613 |
4096 | 16 | 559.029 | 584.602 | 219.395 | 2.54804804 |
4096 | 32 | 990.7 | 1141.4 | 428.872 | 2.31001324 |
4096 | 64 | 1942.043 | 2172.605 | 674.434 | 2.87951527 |
4096 | 128 | 3372.405 | 3997.455 | 1143.417 | 2.94940953 |
4096 | 256 | 6675.193 | 7643.167 | 2119.215 | 3.14984228 |

Performance of benchmark_throughput.py on Llama-70B-GPTQ (on A800-SXM4-80GB):

|   | Througput (tokens/s) | Througput   (tokens/s) |
-- | -- | -- | -- | --
Input Len | Output Len | w/o FA | FA | FA/(w/o FA)
512 | 512 | 596.8 | 614.56 | 1.02975871 |
1024 | 1024 | 403.85 | 417.29 | 1.03327968 |

Benchmark on real-world dataset: running speculative decoding (from #3029) with selected questions from the OpenOrca-1M-GPT4 dataset (input_length <= 256 && output_length <= 512), using Llama-2-70B-GPTQ as target model and TinyLlama-1.1B-Chat-v1.0-GPTQ as draft model, set speculative lookahead = 5. We can see about 1.1x improvements when flash attention is enabled:

| Througput (tokens/s) | Througput   (tokens/s) |
-- | -- | -- | --
Batch Size | w/o FA | FA | FA/(w/o FA)
32 | 376.93 | 409.62 | 1.08672698 |
40 | 417.92 | 456.96 | 1.09341501 |
48 | 425.27 | 461.29 | 1.08469913 |
64 | 479.12 | 530.13 | 1.10646602 |
96 | 508.29 | 560.65 | 1.10301206 |
128 | 540.75 | 589.59 | 1.090319 |
144 | 539.56 | 593.77 | 1.10047075 |
160 | 547.69 | 602.15 | 1.09943581 |
192 | 556.79 | 618.24 | 1.11036477 |

Polite ping @WoosukKwon I just noticed you have the working branch refactor-attn after preparing this PR. Hope changes/implementation in this PR could be helpful.
Thanks!

Glad to see porting FA to vLLM. FYI, there is already has a similar PR https://github.com/vllm-project/vllm/pull/2744. As FlashInfer is faster than FlashAttention, vLLMers may prefer FlashInfer than FA.

Glad to see porting FA to vLLM. FYI, there is already has a similar PR #2744. As FlashInfer is faster than FlashAttention, vLLMers may prefer FlashInfer than FA.

Thanks for the information. I have left some comments on #2744.

Thanks for your work! As paged KV cache block size in Flash Attention must be divisible by 256. This is a big different from the block_size=16 in vLLM. could you share the latency and throughput benchmark data? Does it cause side-effect?

Thanks for your work! As paged KV cache block size in Flash Attention must be divisible by 256. That is a big difference from the block_size=16 in vLLM. could you share the latency and throughput benchmark data? Does it cause side-effect?

Hi @zhaoyang-star I have updated the description for numbers (the same setting with #3029, thank you!).
Note that the current throughput benchmark may not reflect the real-world situations (as eos is ignored and batches are aligned). More benchmark data on unaligned, continuous batch will be added soon.

@sighingnow The speedup of throughput is ~3% from your benchmark. How about the e2e latency?

@sighingnow The speedup of throughput is ~3% from your benchmark. How about the e2e latency?

Still running. I have added new data for speculative decoding, which means unaligned input sequences inside a batch, and parallel decoding requirement for the main model.

@sighingnow I tested the e2e latency using Flash-Attention in vLLM. Performance boost can only be seen on large batchsize.

@sighingnow The speedup of throughput is ~3% from your benchmark. How about the e2e latency?

For input=512 and output=512, the improvement smaller than the numbers reported in #2744 should because I didn't use tensor parallel to accelerate these MLPs (which is more costly for shorter context size and GPTQ may amplify it).

Hello, just wanted to provide a quick update on https://github.com/Dao-AILab/flash-attention/pull/824 - the PR is complete, flash attention can now support page sizes as low as 16

Hello, just wanted to provide a quick update on Dao-AILab/flash-attention#824 - the PR is complete, flash attention can now support page sizes as low as 16

Thank you!

@zhaoyang-star I have tried to record and analysis the prompting and decoding time at each run (as the following figure),

for prompting, flash-attention's performance is a bit slower that without flash-attention (needs further benchmark and analysis).
for decoding, we can see that flash-attention is steadily faster than vllm's kernel for 10% margin.

Thanks for your work! As paged KV cache block size in Flash Attention must be divisible by 256. That is a big difference from the block_size=16 in vLLM. could you share the latency and throughput benchmark data? Does it cause side-effect?

Hi @zhaoyang-star, I have observed the side effect of larger block size on saving key/value vectors into kv-cache (the side effect only affects prefill, and exists for both xformers  kernel and flash-attn's kernel). I have incldued data in the pull request description.
After @skrider's PR been merged, I would take another try on the new version of flash-attention.

Hi @WoosukKwon @zhuohan123 I would like to know if you folks have any comment on this pull requests? Integrating changes in this PR into #3005 is also fine for me.

Closing as it is superseded by #3005.


[BUG] Sometimes the start commands stops before all the pods are up

Describe the bug
When starting the cluster with kaweezle start, sometimes we get the Cluster ready message despite the fact that the cluster is not ready.
To Reproduce
On a cluster installed but not started.
Steps to reproduce the behavior:

Run command kaweezle start
The command stops just after the message Apply base customization Without showing the message Wait for cluster to settle...
Running the command kaweezle start again  shows the message.

Expected behavior
The command should wait for all the pods to be started.
Additional context
The condition that is used is when there are no more pods in the stopped state. Sometimes, the pods may not be returned immediately by the API or may be in another state. A possible solution is to check for a minimum number of total pods.

This this commit https://github.com/kaweezle/kaweezle/commit/4cd5a6a62e2719615cb80e265a0d0920299bd241#diff-f4933755bd63c9e160a2068e8ccb4048e8df1b43f7f4544dcbc7ae2650a07478R127, we tried by just checking that the number of pods is positive, but it didn't work. It seems that in some cases, some pods are marked as ready and others are not yet present.

Currently the only solution I see, apart from checking the specific pods in the kube-system namespace is checking that number of pods is greater or equal 8, which are:

coredns (2)
etcd (1)
api server (1)
controller-manager (1)
flannel (1)
proxy (1)
scheduler(1)


Attrs deletes any non-None class attributes

Currently, attrs will delete any non-None class attributes when _ClassBuilder._delete_attribs is True (i.e. when attributes are specified via class attributes, not directly via these field).
According to comment on _make.py:502, this is intended to remove attr.ib instances from the class.
But it does not play well with attributes declared using PEP 484 type annotations and auto_attribs=True argument to attr.s, because any attribute with non-None default value specified will be pruned from the class, while attributes with None value are retained.
This leads to unexpected behaviour in many cases, in particular when generating documentation using Sphinx autosummary extension which relies on class introspection.
I think we should remove only attr.ib instances, not any not-None fields. At least in auto_attribs mode. Or at least fix the comment.
Attrs version checked: 19.1.0
Code to reproduce:
import attr
import typing

@attr.s(auto_attribs=True)
class Foo:
    bar: int = 42
    baz: typing.Any = None

print([f for f in dir(Foo) if not f.startswith('_')])  # ['baz']
print(Foo.baz)  # 42
print(Foo.bar)  # AttributeError

Gosh I'm traveling but isn't the problem just that we need to use a proper/unique sentinel value instead of None here?!

There is totally a bug here, because None and non-None fields should obviously be treated differently.
Removing only attr.ibs would work, however the values those fields have are semantically supposed to be default values that get assigned on instantiation, not class variables. It gets even more complicated when we introduce default factories. We'd have to remove them too…but that'd be highly inconsistent?
So the fix here is to remove None too.


Date picker review

With last week's support emails, I think we should get away from default locale/timezone to "local", it causes confusing support reproduction and likely more "production" errors for those not familiar with these concepts and need to develop features for users at a different timezone.

superseded by https://github.com/jpmorganchase/salt-ds/pull/4291


Lossless image optimization

Thank you, @FlipFloop 👍🏻
Merged manually via command-line

No problem, tell me if you need anything!


Please add Tingyun to Monitoring category. Thanks.

Please only report on one project or product per issue
Guidelines for getting added to the CNCF Cloud Native Landscape:

We generally will only list a company in one box, to represent its major or best known offering. We occasionally make exceptions for large companies.
Projects with at least 250 GitHub stars that clearly fit in an existing category are generally included.
We are unlikely to create a new category for products/projects as we'd rather find the best home with the current options.
We are generally not including commercial versions of open source software, when that version just includes minor tweaks.
Closed source products need to link to a clear description of your product; no stealth mode companies.
Your project or company needs a logo.

Project or Product name: Tingyun
Is it open source? (if you are tempted to say partially, please answer no): no
What are the best URL(s) for it? Repo and homepage (if different) for open source, product homepage for closed source?: http://www.tingyun.com/
What one category does it best belong in? Monitoring
What's the URL for the best logo (and it needs to include the name)?

PNG Version: http://www.tingyun.com/wp-content/themes/tingyun/images_en/tingyun-logo-en.png
AI Version: http://www.tingyun.com/wp-content/themes/tingyun/images_en/tingyun-logo-en.ai
Anything else we need to know?:
https://www.gartner.com/document/3179418
With a strong emphasis on mobile applications and a hybrid SaaS/on-premises delivery model, Tingyun is a significant indigenous competitor in the Chinese APM market. Tingyun's offering also supports a rich analytics capability, which modifies many online analytical processing (OLAP)-style operations and reporting motifs for the purposes of application performance analytics, particularly with regard to the end-user experience of applications accessed from smartphones and tablets. Given the importance of mobile applications for the Chinese market, Tingyun's current emphasis on the front end rather than the back end makes sense, but the technology will need to become better balanced in its data capture and analysis across the application stack if the offering is to appeal to global markets.

Closing as this update was included in the most recent version https://github.com/cncf/landscape#current-version