text:
Implement SE-0077: precedence group declarations.

What's in this pull request?

Resolved bug number: (SR-)

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

A smoke test on macOS does the following:

Builds the compiler incrementally.
Builds the standard library only for macOS. Simulator standard libraries and
device standard libraries are not built.
lldb is not built.
The test and validation-test targets are run only for macOS. The optimized
version of these tests are not run.

A smoke test on Linux does the following:

Builds the compiler incrementally.
Builds the standard library incrementally.
lldb is built incrementally.
The swift test and validation-test targets are run. The optimized version of these
tests are not run.
lldb is tested.

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

What I've implemented here deviates from the current proposal text
in the following ways:

I had to introduce a FunctionArrowPrecedence to capture the parsing
of -> in expression contexts.

I found it convenient to continue to model the assignment property
explicitly.

The comparison and casting operators have historically been
non-associative; I have chosen to preserve that, since I don't
think this proposal intended to change it.

This uses the precedence group names and higherThan/lowerThan
as agreed in discussion.

Pushed separately (and with some test fixes that aren't in this request).  Closing.

Hey John. I believe that this commit has still broken the build 3 hours later:
https://ci.swift.org/job/oss-swift-incremental-RA-osx/5503/consoleFull
... after the other breakage was fixed.
I am going to disable the test that is broken. Can you please use PR testing? I understand that it can be annoying, but the smoke tests do not take that long and they would have caught this failure.
Michael

On Jul 26, 2016, at 2:38 PM, rjmccall notifications@github.com wrote:
Pushed separately (and with some test fixes that aren't in this request). Closing.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/apple/swift/pull/3770#issuecomment-235413262, or mute the thread https://github.com/notifications/unsubscribe-auth/AAee33KqkP9rSXQMqXWhCklnnR1v-YATks5qZn5zgaJpZM4JVdwv.

authors: gottesmm rjmccall


text:
Fix SR-2134: emit 'rawValue' bodies for enums with a generic raw value

What's in this pull request?

Resolved bug number: (SR-2134)

Before merging this pull request to apple/swift repository:

[ ] Test pull request on Swift continuous integration.

Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please smoke test
    All supported platforms     | @swift-ci Please smoke test and merge
    OS X platform               | @swift-ci Please smoke test OS X platform
    Linux platform              | @swift-ci Please smoke test Linux platform

A smoke test on macOS does the following:

Builds the compiler incrementally.
Builds the standard library only for macOS. Simulator standard libraries and
device standard libraries are not built.
lldb is not built.
The test and validation-test targets are run only for macOS. The optimized
version of these tests are not run.

A smoke test on Linux does the following:

Builds the compiler incrementally.
Builds the standard library incrementally.
lldb is built incrementally.
The swift test and validation-test targets are run. The optimized version of these
tests are not run.
lldb is tested.

Validation Testing
    Platform     | Comment
    ------------ | -------------
    All supported platforms     | @swift-ci Please test
    All supported platforms     | @swift-ci Please test and merge
    OS X platform               | @swift-ci Please test OS X platform
    OS X platform               | @swift-ci Please benchmark
    Linux platform              | @swift-ci Please test Linux platform

Lint Testing
    Language     | Comment
    ------------ | -------------
    Python       | @swift-ci Please Python lint

Note: Only members of the Apple organization can trigger swift-ci.

@slavapestov Okay, I've improved the RawRepresentable derived conformance checking. I've tried it with badly-typed cases (generic and non-generic) and it doesn't crash any more.
I haven't run the actual unit tests though

@swift-ci test

@karwa Thanks! So it looks like validateDecl() checks that all the types match for us -- can you just add a comment to that effect (and also, see my note about the duplicated checks).
Other than that, this looks good, thanks!

@karwa One more thing, can you also add tests for the invalid cases that you fixed?

@swift-ci test os x

@swift-ci test linux

There is one test that still isn't working - decl/protocol/conforms/placement.swift
In placement_2.swift:
enum MFSynthesizedEnum1 : Int { case a }

In placement.swift:
extension MFSynthesizedEnum1 : RawRepresentable { }

The comments say something about 'suppressing' synthesized conformances, which I don't understand. What exactly is supposed to happen in this case? An error?

Interesting. If I create a file a.swift containing enum MFSynthesizedEnum1 : Int { case a }, and a file main.swift containing extension MFSynthesizedEnum1 : RawRepresentable { }, then swiftc a.swift main.swift crashes.
I wonder why the test passes, then.
In any case, the extension should be a no-op, or perhaps the members should be synthesized in the extension and not in the original type.

I have come across so many tests which inexplicably haven't been failing before, I can't understand it.
The mismatched enum types? That's already in test/Parse/enum.swift -- but try it in the interpreter, and it crashes.
Generic raw values? That's already in test/Generics/inheritance.swift -- but it wasn't working, hence the bug report SR-2134

The mismatched enum types? That's already in test/Parse/enum.swift -- but try it in the interpreter, and it crashes.

I don't see a test here that exercises that path. Maybe I'm missing something, but it could also be that the combination of a generic raw value and mismatched types crashes.

Generic raw values? That's already in test/Generics/inheritance.swift -- but it wasn't working, hence the bug report SR-2134

I think the difference between this test and yours is that you're giving the cases explicit raw values using '='. Try playing with that?

Thanks for digging into this regardless -- figuring out these corner cases and adding detailed tests for them is really, really important for the long-term health of the language.

If you can think of a good way to re-organize the test, go ahead :)
Don't kill yourself trying to understand some of the emergent behavior that comes up -- it's more important to make the existing tests pass, and add new tests for the problems you found.

Do you mind squashing the commits into one patch, and referencing the bug number from the commit message too?

Yes, I will, once I've fixed decl/protocol/conforms/placement.swift

Okay, so it's been a day of learning :)
The problem is that if the extension is in the primary file and the enum itself in some other file, we'll try to synthesize RawRep before the enum has been type-checked, before implicit cases have been assigned values, etc. The other way around (enum in primary file) works.
I'm going to try and fix it by removing the suppression behaviour (even though it seems intentional). So declaring RawRepresentable will be a no-op, although of course you can provide your own implementation if you don't want the synthesised one. It doesn't really make sense that:
enum Foo : Int { case a }

becomes:
enum Foo : Int, RawRepresentable {
    case a
    Typealias RawValue = Int
    init?(rawValue: Int)
    var rawValue: Int { get }
    var hashValue: Int { get }
}

Meanwhile,
enum Foo : Int { case a = 10 }
extension Foo : RawRepresentable {}

becomes:
enum Foo : Int {
    case a
    var hashValue: Int { get }
}

Feels like a hack for some standard-library thing. @gribozavr, any idea?

After a little rethink, I settled on the idea that declaring a raw type (or giving a value to an element, which already requires that you explicitly specify a raw type in the inheritance clause) should count as an explicit declaration to synthesise RawRepresentable conformance.
The inheritance clause and label statements in enums are really just syntactic sugar. It doesn't change anything about the underlying storage of the enum -- and even if it did, you wouldn't be able to change that in an extension. That would be like re-parenting a class.

This latest version looks good. Please just fix the warnings and line length and we're good to go!

@swift-ci Please smoke test

@karwa Are you still working on this? Let me know if you need some help!

@slavapestov yes! Been ill, will fix it up tonight

No worries, get well soon!

@slavapestov Fixed, and while I was there I didn't like the look of the new errors (not very descriptive where the RawRepresentable conformance comes from), so I made them more descriptive.

@swift-ci Please smoke test os x

Thanks!

@swift-ci Please smoke test macOS and merge

@swift-ci Please smoke test macOS

Alright @karwa, I think you can close that JIRA now :)

source: gharchive/pull-request

authors: karwa slavapestov tkremenek

repo: apple/swift

license_type: permissive

license_source: github-api


text:
Move gyb_syntax_support in swift-syntax from Sources/generate-swift-syntax-builder to Code-Generation

Companion of https://github.com/apple/swift-syntax/pull/826

https://github.com/apple/swift-syntax/pull/826
@swift-ci Please smoke test

https://github.com/apple/swift-syntax/pull/826
@swift-ci Please smoke test

https://github.com/apple/swift-syntax/pull/826
@swift-ci Please smoke test

https://github.com/apple/swift-syntax/pull/826
@swift-ci Please smoke test


text:
StackNesting: use the right debug locations for inserted deallocation instructions

Fixes a crash because we used a return-location for a deallocation instruction.
rdar://problem/31458587
rdar://problem/31458617

@swift-ci Please smoke test and merge


text:
Recommender.util.compoare_models Not Plotting Metric

After creating two recommender models, I am trying to plot the F1 graph of them using:
%matplotlib inline
 compare = tc.recommender.util.compare_models(test_data,                                                      [model_0,model_1],                                                      user_sample=0.05,                                                       make_plot=True,                                                       metric='precision_recall'                                                      )
However, it is not showing any plot in my notebook.
Is there anyway I can access the precision_recall scores by compare[0] so that I can plot on my own?

@jsrpy - tc.recommender.util.compare_models is not intended to plot anything. Take a look at the API doc for that function.
With the code you gave compare_models will be a list of length two. The first element of the list will correspond to your first model (i.e. model_0) and the second element will be for your other model (i.e. model_1) . Both of the elements of compare contain the precision and recall (both overall and by user) at various cutoffs.
So for example, if you are interested in overall precision for model_0, you can access that using:
compare[0]['precision_recall_overall']. This will show you both the precision and recall for all cutoff values.
Hope this helps. Let us know if you have more questions.

@TobyRoseman Okay with that I am able to access the precision/recall values. Thanks!

source: gharchive/issue

authors: TobyRoseman jsrpy

repo: apple/turicreate


text:
appleseed-max2015-0.1.2-alpha: incorrect plugin version in render settings "About" rollout

Good catch, thank you!  Problem fixed and new released uploaded.

authors: abushinov dictoon

repo: appleseedhq/appleseed-max

license: mit

license_source: bigquery


text:
Add option to specify solc version and pull from docker

Hi,
I spent yesterday looking into an issue in my smart contract and it turned out to be a compatibility issue between parity and some solidity compiler versions. I was unable to interact with another deployed contract from my contract e.g. tokenContract.transfer(receiver, 1), and was constantly getting "stuck" - no response or error from parity. BUT my cobalt tests in ganache works correctly.
My setup:

solidity 0.4.22, 0.4.23, 0.4.24
parity 1.10.0, 1.7.9 and latest
private PoA network, 3 parity nodes
contract deployment using custom web3.deploy scripts

I basically tried many many different combinations of code / config / solditiy version / parity version, and finally got it to work in parity when I compiled my contract with solidity v0.4.21.
Learnings (especially important if you're doing contract casting/linking)

it's probably best to downgrade to solidity 0.4.21 for now. (will submit an issue to solidity when i get time)
if you're not using truffle, prefer to use cobalt-deploy or cobalt-web3 to compile & deploy rather than writing your own custom script - this reduces the differences between your tests and real deployments.

This PR add support to allow specifying a solc docker image version to compile contracts, so you can easily switch between different solc versions:
Examples:
Compile:
./bin/cobalt-compile.js -s HelloWorld.sol --solc-version 0.4.21
Compile & Deploy
./bin/cobalt-deploy.js -s HelloWorld.sol -f 0x00ea169ce7e0992960d3bde6f5d539c955316432 --solc-version 0.4.21
Hope this helps.

Thank you for investigation and time spent on this, but I don't think we need to merge this pr because:

./bin/cobalt-compile.js is not necessary, you can use solc --combined-json bin,abi ... command - which should give you all you need
adding solcVersion is not necessary, you can use solc parameter instead; set it to docker run -v $(pwd):/solidity ethereum/solc:0.4.21 and it should work; you can use env var called SOLC and set it to this docker string - it'll work fine.

Does it make sense or there's something else it doesn't cover?

I agree that it's not a must-have feature and it is really a feature to improve developer experience:

I know compiling is achievable with solc --combined-json bin,abi but to compile with a different version, devs will have to install and switch versions on their host os. cobalt-compile makes this much easier by just rerunning the command with a different parameter.
Yes I can confirm that it's possible to do this with the solc option. I'm already using the solc option in my deploy script. However, developer will have to spend a lot of time to figure this out - finding out what's possible with the solc version, docker image, and what's required to compile with the solc image.

const solc = 'docker run -v $(pwd):/solidity ethereum/solc:0.4.21'
const { web3 } = require('@appliedblockchain/bmono/web3')({
  solc: require('@appliedblockchain/bmono/solc')({ solc }),
  provider: new Web3.providers.WebsocketProvider(PARITY_WS)
})

It makes getting started easier since most devs now have docker installed on their machines. It eliminates the need to manage dependencies on the host machine.

But yea, I understand where you're coming from and there are different ways of doing things and considerations when adding features to an open source library. So I'm happy not to merge it.
Thanks for your help.

Ok I see - if you were aware of this and still opened pr let’s keep it open, I’ll have another look if you think it simplifies stuff.

repo: appliedblockchain/cobalt

license: MIT


text:
Problem when Navigate

I have one view, to Create or Update a ticket, so When I navigate to that view with no parameter(http://localhost:8080/#!protocolo-td) in URL the view open with all buttons enabled, and when I save that view I navigate to same view but now with parameters (http://localhost:8080/#!protocolo-td/3050&t=1519220726128) the vaadin execute my method (public void enter(ViewChangeEvent event) {)  but dont change my stats in view (sample If i disable a button, the button don't disable in screen) do you know why (If I dont use r layout, works fine)

Please add some sample code.

Ok.. let`s go :
MyUI.app

//@Push
//@PushStateNavigation
@Viewport("width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no")
@SpringUI
@Theme("mytheme")
@MenuCaption("UI")
@Title("RTDPJ - WEB")
public class MyUI extends UI {

	private final SpringViewProvider viewProvider;
	private final NavigationManager navigationManager;
	public static Navigator navigator;

	@Autowired
	public MyUI(SpringViewProvider viewProvider, NavigationManager navigationManager,UsuarioService usuarioService, FinanceiroService financeiroService) {
	    this.viewProvider = viewProvider;
	    this.navigationManager = navigationManager;
	    this.usuarioService = usuarioService;
	    this.financeiroService = financeiroService;
	}

  	DefaultNotificationHolder notifications = new DefaultNotificationHolder();
    DefaultBadgeHolder badge = new DefaultBadgeHolder();
    @Override
    protected void init(VaadinRequest vaadinRequest) {

        setContent(AppLayout.getCDIBuilder(Behaviour.LEFT_RESPONSIVE_HYBRID)
                .withViewProvider(() -> viewProvider)
                .withNavigationElementInfoProvider(new DefaultSpringNavigationElementInfoProvider())
                .withTitle("RTDPJ - Web")
                .addToAppBar(new AppBarNotificationButton(notifications, true))
                .withDesign(AppBarDesign.MATERIAL)
                .add(new MenuHeader("Version 0.9.20", new ThemeResource("logo.png")), AppLayoutConfiguration.Position.HEADER)
                .add(badge,BalcaoImpl.class)

                .add(CDISubmenuBuilder.get("NOVO", VaadinIcons.PLUS)
                        .add(ViewTestImpl.class)
                        .build())

                .build());

        badge.setCount(4);
        notifications.addNotification(new DefaultNotification("Teste", "1"));
        notifications.addNotification(new DefaultNotification("Title1", "Descricao", VaadinIcons.ACADEMY_CAP, DefaultNotification.Priority.HIGH, false));
        notifications.addNotification(new DefaultNotification("Title2", "Descricao2", VaadinIcons.ACADEMY_CAP, DefaultNotification.Priority.MEDIUM, false));
        notifications.addNotification(new DefaultNotification("Title3", "Descricao3", VaadinIcons.ACADEMY_CAP, DefaultNotification.Priority.LOW, true));

    }

}

My ViewTest.html
<!doctype html>
<html>
 <head>
  <meta charset="UTF-8">
  <meta name="design-properties" content="{"RULERS_VISIBLE":true,"GUIDELINES_VISIBLE":false,"SNAP_TO_OBJECTS":true,"SNAP_TO_GRID":true,"SNAPPING_DISTANCE":10,"GENERATE_GETTERS":false,"JAVA_SOURCES_ROOT":"src/main/java","THEME":"material"}">
  <meta name="vaadin-version" content="8.0.5">
 </head>
 <body>
  <vaadin-vertical-layout size-full>
   <vaadin-button plain-text _id="btnTeste">
     Save
   </vaadin-button>
   <vaadin-button plain-text _id="btnEdit">
     Edit
   </vaadin-button>
  </vaadin-vertical-layout>
 </body>
</html>

My ViewTest.java (Created by Vaadin Designer)

@DesignRoot
@AutoGenerated
@SuppressWarnings("serial")
public class ViewTest extends VerticalLayout {
    protected Button btnTeste;
    protected Button btnEdit;

    public ViewTest() {
        Design.read(this);
    }
}

and my ViewTestImpl

@ViewScope
@SpringView(name = "teste")
@MenuCaption("teste")
@MenuIcon(VaadinIcons.ACADEMY_CAP)
public class ViewTestImpl extends ViewTest implements View{
    @Autowired
    private NavigationManager navigationManager;

    public ViewTestImpl() {
        btnTeste.addClickListener(evt->btnTesteListener());
        btnEdit.addClickListener(evt->liberarEditar());
    }

    private void liberarEditar() {
        btnTeste.setEnabled(true);
        btnEdit.setEnabled(false);
    }

    private void btnTesteListener() {
        btnTeste.setEnabled(!btnTeste.isEnabled());
        navigationManager.navigateTo(ViewTestImpl.class, 1L);
    }

    @Override
    public void enter(ViewChangeListener.ViewChangeEvent event) {

        Long id = null;
        if(!Strings.isNullOrEmpty(event.getParameters())){
            String[] parametros = event.getParameters().split("&");
            id = Long.parseLong(parametros[0]);
        }

        if(id != null){
            System.out.println("enter with ID: "+id+", must enable the edit button and disable the save button");
            btnTeste.setEnabled(false);
            btnEdit.setEnabled(true);
        }else{
            System.out.println("enter with ID: null, must enable the save button and disable the edit button");
            btnTeste.setEnabled(true);
            btnEdit.setEnabled(false);
        }
    }
}

My NavigationManager.java
@Component
@UIScope
public class NavigationManager extends SpringNavigator {

    /**
     * Find the view id (URI fragment) used for a given view class.
     *
     * @param viewClass
     *            the view class to find the id for
     * @return the URI fragment for the view
     */
    public String getViewId(Class<? extends View> viewClass) {
        SpringView springView = viewClass.getAnnotation(SpringView.class);
        if (springView == null) {
            throw new IllegalArgumentException("The target class must be a @SpringView");
        }

        return Conventions.deriveMappingForView(viewClass, springView);
    }

	public void navigateTo(Class<? extends View> targetView, Object parameter) {
        String viewId = getViewId(targetView);
        navigateTo(viewId + "/" + parameter.toString() + "&t="+ Calendar.getInstance().getTimeInMillis());
    }

}

I'm pretty sure that you should not do this public static Navigator navigator;
Anyways if I use your code I get the following exception which isn't connected to the AppLayout but instead to the SpringViewProvider:
java.lang.IllegalArgumentException: Trying to navigate to an unknown state 'teste/1&t=1519392881413' and an error view provider not present
	at com.vaadin.navigator.Navigator.navigateTo(Navigator.java:661) ~[vaadin-server-8.3.1.jar:8.3.1]
	at com.example.demo.NavigationManager.navigateTo(NavigationManager.java:33) ~[classes/:na]
	at com.example.demo.ViewTestImpl.btnTesteListener(ViewTestImpl.java:32) ~[classes/:na]
	at com.example.demo.ViewTestImpl.lambda$new$61446b05$1(ViewTestImpl.java:21) ~[classes/:na]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_161]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_161]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_161]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_161]

So in your addon. how can I navigate to another view when I click in a button inside my view?

`Navigator::navigateTo()

I change my code to use a vaadin navigator more simple and the result are the same:
`package br.com.exmart.indicadorRTDPJ.ui.navigator;
import com.vaadin.navigator.Navigator;
import com.vaadin.navigator.View;
import com.vaadin.spring.annotation.SpringView;
import com.vaadin.spring.annotation.UIScope;
import com.vaadin.spring.internal.Conventions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Calendar;
@Component
@UIScope
public class NavigationManager {//extends SpringNavigator {
@Autowired
private Navigator navigator;
public String getViewId(Class<? extends View> viewClass) {
    SpringView springView = viewClass.getAnnotation(SpringView.class);
    if (springView == null) {
        throw new IllegalArgumentException("The target class must be a @SpringView");
    }

    return Conventions.deriveMappingForView(viewClass, springView);
}

public void navigateTo(Class<? extends View> targetView, Object parameter) {
    String viewId = getViewId(targetView);
    this.navigator.navigateTo(viewId + "/" + parameter.toString() + "&t="+ Calendar.getInstance().getTimeInMillis());
}

}`

Please invite me to a working github repo with your code then I will help you

authors: appreciated fabioebner

repo: appreciated/vaadin-app-layout


text:
Update description of warm-up and cooldown

Started with a small typo fix (send -> sent), ended with some re-wording of these sections.
Let me know how this looks!

Hi @conarro, Thanks for the PR! I think this is clearer yes :)

authors: conarro tombruijn

repo: appsignal/appsignal-docs


text:
[Bug]: Inconsistent Behavior When Launching Empty Duplicated App

Is there an existing issue for this?

[X] I have searched the existing issues

Description
When creating an empty app, then duplicating it, the two (2) apps have different behavior when launched.
When launching the original app, it displays this screen:

When launching the duplicated app, it displays this screen with Resource not found error:

Steps To Reproduce

Create a new app and rename it as desired.
Duplicate the app.
Launch the original app.
Launch the duplicated app.
Notice the difference in behavior.

Public Sample App
No response
Version
Cloud  v1.6.17-SNAPSHOT

not reproducible in v1.18

authors: ame-appsmith riteshkew

repo: appsmithorg/appsmith


text:
[Bug]: Unable to rename JSObject on new branch when connected to git

Is there an existing issue for this?

[X] I have searched the existing issues

Description
https://user-images.githubusercontent.com/80334441/165706194-18489d42-e24e-42a4-8e5a-fdc2b161d6b5.mov
Steps To Reproduce

Switch to a new branch "feat/abcd" on app connected to git
Create new JsObject
Rename it from jsEditor
Observe the name is not changed
Rename it from context menu
Observe the name doesn't change.

Public Sample App
No response
Version
Cloud

@Parthvi12 not able to reproduce this on Mozilla v99.0. Can you please provide the browser along with the version? Also, provide the network logs wanted to check if API is getting executed.

As discussed with @abhvsn the issue seems to be with JSEditor and not git, API is getting executed successfully and renaming works on hard refresh.

To provide more info, this is happening on chrome Version 100.0.4896.127 (Official Build) (arm64)

Was able to reproduce this issue

@ApekshaBhosale @subrata71 @nidhi-nair is this related to https://github.com/appsmithorg/appsmith/issues/14755?

@ApekshaBhosale @subrata71 @nidhi-nair is this related to #14755?

Yes, the JS object name conflict issue is same as this


text:
[Bug]: Canvas incorrectly highlights when a modal is being dropped on top of another modal

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Trying to drop a modal on top of another modal shows drop indicators but nothing happens when user drops the second one.
We should ideally not see the drop indicator or need to close the first modal to accommodate the second one
Steps To Reproduce

Drop a modal widget on the latest Anvil DP
Try to drop another modal widget with the first open and observe the canvas being highlighted
Let go of the modal grab action and observe nothing happens even though canvas indicated that it's a possible action

Public Sample App
No response
Environment
Deploy Preview
Severity
Medium (Frustrating UX)
Issue video log
https://www.loom.com/share/bd4ce00af9e142b9b7ca3fd0902f2e58
Version
cloud

@ramsaptami this has been fixed, pls verify once the on canvas UI changes are merged to the experimental dp.


text:
feat: update canvas building blocks

Description
Goal

To remove the dashboard canvas starter building block and replace it with the Sort and Filter Table building block from the templates gallery.
To replace all canvas starter icons with the corresponding building blocks icons.

Steps

Add a new page to the Starter Templates app called Sort and Filter Table
Export the existing Sort and Filter Template and import into the new page in Starter Templates using PIE
Change the copy for title and description in the code
Take a screenshot of the Sort and Filter table home page, upload to Contentful and update the screenshot URL.
Download and add new Icons for all 3 canvas starter blocks
Deploy updated Starter Templates application and upload new JSON to S3 under the same name

PR fixes following issue(s)
Fixes #30261
Type of change

Please delete options that are not relevant.

New feature (non-breaking change which adds functionality)

Testing

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration.
Delete anything that is not relevant

[ ] Manual
[ ] JUnit
[ ] Jest
[ ] Cypress

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

Summary by CodeRabbit

New Features

Updated the naming and descriptions of template page layouts for improved clarity.
Reorganized and renamed SVG icons for consistency across the platform.

Style

Enhanced the styling of template layout titles and descriptions for better readability.

/build-deploy-preview

/build-deploy-preview

/ok-to-test tags="@tag.sanity,templates"

authors: jacquesikot rahulbarwal


text:
WIP: binding list widget with Api

List widget with bindings
Test coverage results :test_tube:
:white_circle: Total coverage has not changed
No changes to code coverage between the base branch and the head branch

/ok-to-test sha=c6fa519

/ok-to-test sha=c057fe5


text:
Move blogs in-house to Appsody.dev

We want to have the blogs on the website rather than hosted on medium, replacing the tutorials link in the navbar.

Closing as the blogs are now live on appsody.dev

repo: appsody/website


text:
Add build target for dynamic framework to support

With the introduction of swift, and cocoapods lack of swift support, it would be nice (and likely needed once cocoapods does support swift - e.g dynamic frameworks) to support building typhoon as a dynamic framework. This is necessary for supported typhoon DI in swift libraries that themselves build dynamic frameworks and link into the main app project.
For example, say I have the following swift projects that build dynamic frameworks:
XXFoo-> XXFoo.framework
XXBar -> XXBar.framework
These libraries are then linked into my main app project, XXMyApp. In order for XXMyApp to leverage Typhoon DI, cocoapods can be used to create a libPods.a static library with the Typhoon source and a bridging header (XXMyApp-Bridging-header.h) can be created and #import "Tyhoon.h". Now this is al well and good if all of my Typhoon assemblies exist in XXMyApp, however, if I truly want to leverage the power of DI in XXFoo and XXBar I should be able to define my TyphoonAssembly factories in each library and import them for use in XXMyApp. This way each library would be responsible for setting up its own dependencies.
This is currently not possible with the pods approach as you cannot link a static library (e.g. libPods.a) into a dynamic swift framework. You can however link to dynamic frameworks, so if Typhoon was able to build a dynamic framework (e.g. Typhoon.framework) then XXFoo, XXBar and XXMyApp could link against it; XXFoo and XXBar could define their own assemblies and XXMyApp would be able to instantiate them.
Because dynamic frameworks are not yet supported by cocoapods, the approach that several swift-only libraries are taking are git modules, so swift libraries want to dynamic link against Typhoon could:

Create a git submodule
Add Typhoon.xcodeproj to their workspace
Add Typhoon.framework as a target dependencies in the build phases
Add a "Copy Frameworks" build phase and copy Typhoon.framwork to their Frameworks path

@jasperblues sorry it took so long to get back to you. I have taken a look at Carthage and I like the concept as it doesn't mock with project settings like Cocoapods does but the project is still pretty young. Currently, I couldn't get Carthage to build Typhoon out-of-the-box. I didn't look too much into the failure case, but seems to be schema related.
A downfall of Carthage is it is (more or less) a wrapper around git and xcodebuild, which means developing local pods would be a pain in the ass (not that it is much better with Cocoapods but it is better).
A beta has been released for Swift and framework support for Cocoapods which I am currently looking into. It doesn't build Typhoon as a framework out-of-the-box either, but with a few teaks i'm sure it can! IMO pods would support should take precedence to Carthage. Thoughts?

@jasperblues Typhoon does work with Cocoapods 0.3.6 beta out of the box! For swift libraries/apps that need to link against Typhoon they must specify in their pod file that it uses frameworks
# platform *must* be atleast 8.0
platform :ios, '8.0'

# flag makes all dependencies build as frameworks
use_frameworks!

# framework dependencies
pod 'Typhoon', '2.3.3'

great work@mowens. lets stick with cocoa pods for now. We may need to support carthage when it becomes popular

Agreed

Hey guys, we're currently using carthage and we would like to include Typhoon in it. Is it a good time to reconsider adding support for Carthage ?
According to the Carthage docs, it should just be a matter of marking your schemes as shared.

All schemes were shared except for the Typhoon Framework scheme. . . i shared it and pushed to master. Next step?

Hmm, I'm not seeing the push to master. I just tested it locally, and marking the Typhoon framework scheme as shared was sufficient to allow Typhoon to be compatible with Carthage. So once that commit is available in master, it doesn't look like any other changes need to be made, fortunately.

Oops. . . sorry! I did that early this morning in between a bunch of other tasks and didn't pay attention to console output. Should be pushed now.

Awesome, thanks for the quick response!
One other thing I just realized is that Carthage tries to grab the latest version of a dependency based on tags, so if you include Typhoon using github "appsquickly/Typhoon", the 3.0.2 tag will be used, which doesn't include the shared scheme. It can still be used by explicitly depending on the master branch though, as in github "appsquickly/Typhoon" "master", so no need to rush bumping the version.
Thanks again!

OK, just pushed 3.0.3 tag, and also to CocoaPods mater repo.

Oh, one more thing to note: While pushing the podspec just now, linting failed as there was a function declared as public in TyphoonFactoryAutoInjectionPostProcessor that was not used publicly. . I fixed that then deleted and recreated the 3.0.3 tag. . . just mentioning in the unlikely event this confuses Carthage.

Cool -- I believe Carthage will just pull down whatever the tag is currently pointing to when retrieving dependencies, so it should be okay. Thanks!

@jarod2d  Did it all work? I'm just adding the 'Carthage compatible" badge in the readme.

Yup -- Typhoon has been working great with Carthage.

authors: jarod2d jasperblues mowens thinkalike-dev

repo: appsquickly/Typhoon


text:
Replace Query Seeding with Proper Migration Logic

Summary
As a VSHNeer
I want to manage the Prometheus queries in git
So that they are versioned and well-defined
Context
Currently, the reporting tool is only able to seed queries into the database. If a query already exists, it's skipped. If you need to adjust a query, you need to edit the database entry for it, this can be hard, and it's not trackable.
So it would make sense if the reporting tool can migrate already existing queries, such that they represent what's hard-coded in the reporting tool. That would make the queries effectively git managed. If a query in the database doesn't match what's defined in the reporting tool, then the reporting tool should override the query in the database.
Out of Scope

Preventing manual changes in the database

Further links

Acceptance Criteria

Given an existing query test, when running the migration and the query differs, then override the database entry.
Given a database without queries, when running the migration, then create the queries in the database.

Implementation Ideas

Apply the queries to the database unconditionally
Rename the --seed flag to reflect the changed logic

We are moving away from this tool. The replacement does no longer need such a mechanism as the queries are managed within the configuration hierarchy.

authors: Kidswiss corvus-ch

repo: appuio/appuio-cloud-reporting


text:
Change --p-icon-size to 0.65 to make the fix the icon alignment

What does this PR do?
Fixing the icon size of the switch input being used in the auth section of the console
Before:

After:

Have you read the Contributing Guidelines on issues?
(Write your answer here.)
yes.

Line 8 appears to be in good shape and meets the required standards. However, I find the presence of an additional tab character on line 132 seems to be unnecessary.

fixing

Line 8 appears to be in good shape and meets the required standards. However, I find the presence of an additional tab character on line 132 seems to be unnecessary.

Fixed :)

The arrow was actually a bug and got removed completely, so this PR is not needed anymore.
Still thank you for your work 🙏🏻

authors: Emiltayeb TorstenDittmann

repo: appwrite/pink


text:
Translate 3 Node.js templates to Python

Introduction
Appwrite allows developers to run serverless functions on Appwrite Cloud. While most of the business logic requires entirely custom code, parts of the application have a generic solution.
To address this problem, Appwrite introduced Function templates, allowing developers to use templates for problems such as Stripe payments, AI prompting, or generating invoices.
Those templates are meant to be extended by the developer to precisely fit the needs of their application. Considering that developers come from different backgrounds and experiences, Appwrite Functions supports templates for over 10 languages.
Starting this issue requires an understanding of Node.js and Python syntax. Finishing this issue will give you a basic understanding of Chat GPT, the code review process, and writing quality code.
Task summary
Your goal is to prepare 3 Appwrite Function templates in Python programming language.
1. Pick 3 templates you want to translate
Look at appwrite/templates README, and look for templates that are missing implementation in Python. Pick 3 templates you want to work on, and make sure they have been implemented in Node.js.
We highly recommend picking an integration template with the tool you are familiar with. If you are up for a challenge, pick the ones you wanted to learn but didn't have time to check out yet.
2. Translate templates from Node.js to Python
For each template, prepare a folder inside the Python directory. Initial setup shouldn't be a problem if you are familiar with Python, but it's also perfectly fine to look at other Python templates to see what they look like.
Once you have folders ready, look at the template implementation in Node.js, which shows you how the template was implemented in JavaScript. You should read the code and understand it clearly.
Finally, re-implement the same logic in Python. It's not necessary to follow it line-by-line, but it's best to follow the same logical structure.
In this step, you are allowed to use ChatGPT to help you out, but please don't copy entire chunks of code. Use it as a tool to show you what a solution could look like, but make sure you are the one making a decision about what the final PR looks like.

I am working on this

I'm working on this

I am working on this

we all are working first on GitHub issue bot

repo: appwrite/templates


text:
implement getUserIDFromAnswerPage

The GetUserID method is a hacky way to get the user ID since it calls TC.Legacy.getPage("/answer") to fetch the answer page and scrape the user ID from there. It should be used when the user ID is not stored anywhere in the page (e.g. "/savedquestions").
This adds a new method GetUserIDFromAnswerPage which should be used in the answer page.

Not a fan of the API, bus we can fix that later (I realized there's a better way to use utilities in injected scripts)


text:
[Feature Request]: Want to Fix Ui Of Food Website

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
Currently ui of foodwebsite is looking bad i want to fix that
Use Case
It will enhance User Experience
Benefits
No response
Add ScreenShots

Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[] I'm a SSOC'24 contributor
[X] I have starred the repository

@nishant0708 assigned for this issue too.


text:
Use a method compatible with mongoid-observers to determinine the version of mongoid.

Fixes #121, see #123.

ping @dblock

Merged https://github.com/aq1018/mongoid-history/commit/83038845beabb91b9af22bc20ff1e6dda5cfe5e8.

@dblock appreciated :)

I released 0.4.5.

authors: dblock zeitnot


text:
Issues with Loading Database for Training OpenFold Multimer

Hi,
I am learning to train OpenFold-Multimer using just the alignments and mmcifs provided by AlphaFold/OpenFold. I used the following command to run the training, which I found to run fine when I train the monomer version of OpenFold:
python train_openfold.py pdb_data/mmcif_files alignment_data/alignments/ pdb_data/mmcif_files/ multimer/ 2021-10-10 --train_chain_data_cache_path pdb_data/data_caches/chain_data_cache.json --template_release_dates_cache_path pdb_data/data_caches/mmcif_cache.json --config_preset "model_1_multimer_v3" --obsolete_pdbs_file_path pdb_data/obsolete.dat --num_nodes 4 --seed 121924 --gpus 16 --max_epochs 15 --precision bf16-mixed
However, I keep running into the following error:
Traceback (most recent call last):
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 703, in
main(args)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 356, in main
data_module.setup()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 1139, in setup
self.train_dataset = OpenFoldMultimerDataset(
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 678, in init
super(OpenFoldMultimerDataset, self).init(datasets=datasets,
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 557, in init
self.reroll()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 660, in reroll
datapoint_idx = next(samples)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 725, in looped_samples
mmcif_data_cache = dataset.mmcif_data_cache
AttributeError: 'OpenFoldSingleMultimerDataset' object has no attribute 'mmcif_data_cache'. Did you mean: 'mmcif_data_cache_path'?
Traceback (most recent call last):
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 703, in
main(args)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 356, in main
data_module.setup()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 1139, in setup
self.train_dataset = OpenFoldMultimerDataset(
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 678, in init
super(OpenFoldMultimerDataset, self).init(datasets=datasets,
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 557, in init
self.reroll()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 660, in reroll
datapoint_idx = next(samples)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 725, in looped_samples
mmcif_data_cache = dataset.mmcif_data_cache
AttributeError: 'OpenFoldSingleMultimerDataset' object has no attribute 'mmcif_data_cache'. Did you mean: 'mmcif_data_cache_path'?
srun: error: nid001388: task 5: Exited with exit code 1
srun: Terminating StepId=21060918.0
I changed dataset.mmcif_data_cache to dataset.mmcif_data_cache_path in the file openfold/data/data_modules.py but then I ran into another error:
Traceback (most recent call last):
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 703, in
main(args)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 356, in main
data_module.setup()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 1139, in setup
self.train_dataset = OpenFoldMultimerDataset(
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 678, in init
Traceback (most recent call last):
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 703, in
super(OpenFoldMultimerDataset, self).init(datasets=datasets,
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 557, in init
self.reroll()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 660, in reroll
main(args)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 356, in main
datapoint_idx = next(samples)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 732, in looped_samples
data_module.setup()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 1139, in setup
mmcif_data_cache_entry = mmcif_data_cache[mmcif_id]
TypeError: 'NoneType' object is not subscriptable
self.train_dataset = OpenFoldMultimerDataset(
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 678, in init
super(OpenFoldMultimerDataset, self).init(datasets=datasets,
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 557, in init
self.reroll()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 660, in reroll
datapoint_idx = next(samples)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 732, in looped_samples
mmcif_data_cache_entry = mmcif_data_cache[mmcif_id]
TypeError: 'NoneType' object is not subscriptable
Traceback (most recent call last):
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 703, in
main(args)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 356, in main
data_module.setup()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 1139, in setup
self.train_dataset = OpenFoldMultimerDataset(
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 678, in init
super(OpenFoldMultimerDataset, self).init(datasets=datasets,
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 557, in init
self.reroll()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 660, in reroll
datapoint_idx = next(samples)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 732, in looped_samples
mmcif_data_cache_entry = mmcif_data_cache[mmcif_id]
TypeError: 'NoneType' object is not subscriptable
Traceback (most recent call last):
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 703, in
main(args)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 356, in main
data_module.setup()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 1139, in setup
self.train_dataset = OpenFoldMultimerDataset(
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 678, in init
super(OpenFoldMultimerDataset, self).init(datasets=datasets,
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 557, in init
self.reroll()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 660, in reroll
datapoint_idx = next(samples)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 732, in looped_samples
mmcif_data_cache_entry = mmcif_data_cache[mmcif_id]
TypeError: 'NoneType' object is not subscriptable
Traceback (most recent call last):
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 703, in
main(args)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/train_openfold.py", line 356, in main
data_module.setup()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 1139, in setup
self.train_dataset = OpenFoldMultimerDataset(
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 678, in init
super(OpenFoldMultimerDataset, self).init(datasets=datasets,
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 557, in init
self.reroll()
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 660, in reroll
datapoint_idx = next(samples)
File "/lustre/scratch5/.mdt0/hungd238/Fold-21-Multimer/fold-21/openfold/data/data_modules.py", line 732, in looped_samples
mmcif_data_cache_entry = mmcif_data_cache[mmcif_id]
TypeError: 'NoneType' object is not subscriptable
srun: error: nid001385: tasks 2-3: Exited with exit code 1
srun: Terminating StepId=21060799.0
Do you have any suggestions on how to fix these issues? Thank you in advance.

Perhaps try reverting your code change and using the input --train_mmcif_data_cache_path instead of --train_chain_data_cache_path for multimer training. There are a few known bugs with training in this issues log but you should be able to get the command to run without modifying the code. - community member

repo: aqlaboratory/openfold


text:
Build of client fails with "Error: Unrecognized option 'enableSourcemap'"

Steps to reproduce
cd client
npm i
npm run build

Result:
gmacario@gmpowerhorse:~/github/aquariophilie/blobfishes/client (main)*$ npm run build

> ugly-frontend@0.0.1 build /home/gmacario/github/aquariophilie/blobfishes/client
> svelte-kit build

vite v2.6.13 building for production...
transforming (67) node_modules/sveltestrap/src/ListGroup.svelte
warn - You have enabled the JIT engine which is currently in preview.
warn - Preview features are not covered by semver, may introduce breaking changes, and can change at any time.
✓ 232 modules transformed.
.svelte-kit/output/client/_app/manifest.json                               2.04 KiB
.svelte-kit/output/client/_app/pages/__layout.svelte-09e983a2.js           2.85 KiB / gzip: 1.31 KiB
.svelte-kit/output/client/_app/error.svelte-ec339748.js                    1.56 KiB / gzip: 0.75 KiB
.svelte-kit/output/client/_app/pages/index.svelte-93192d1a.js              0.64 KiB / gzip: 0.39 KiB
.svelte-kit/output/client/_app/pages/about.svelte-a5899d97.js              0.58 KiB / gzip: 0.39 KiB
.svelte-kit/output/client/_app/start-4ea01552.js                           19.01 KiB / gzip: 6.93 KiB
.svelte-kit/output/client/_app/assets/start-464e9d0a.css                   0.19 KiB / gzip: 0.15 KiB
.svelte-kit/output/client/_app/pages/authors.svelte-9696c7a2.js            10.08 KiB / gzip: 3.53 KiB
.svelte-kit/output/client/_app/assets/vendor-cf063f61.css                  0.09 KiB / gzip: 0.08 KiB
.svelte-kit/output/client/_app/pages/books.svelte-4829577c.js              13.96 KiB / gzip: 4.55 KiB
.svelte-kit/output/client/_app/assets/pages/__layout.svelte-d545374f.css   8.83 KiB / gzip: 2.54 KiB
.svelte-kit/output/client/_app/chunks/vendor-16ce580a.js                   83.09 KiB / gzip: 23.24 KiB
vite v2.6.13 building SSR bundle for production...
✓ 4 modules transformed.
[vite-plugin-svelte] Unrecognized option 'enableSourcemap'
file: /home/gmacario/github/aquariophilie/blobfishes/client/.svelte-kit/build/components/error.svelte
> Unrecognized option 'enableSourcemap'
Error: Unrecognized option 'enableSourcemap'
    at file:///home/gmacario/github/aquariophilie/blobfishes/client/node_modules/svelte/compiler.mjs:30015:19
    at Array.forEach (<anonymous>)
    at validate_options (file:///home/gmacario/github/aquariophilie/blobfishes/client/node_modules/svelte/compiler.mjs:30009:26)
    at compile (file:///home/gmacario/github/aquariophilie/blobfishes/client/node_modules/svelte/compiler.mjs:30053:5)
    at compileSvelte2 (file:///home/gmacario/github/aquariophilie/blobfishes/client/node_modules/@sveltejs/vite-plugin-svelte/dist/index.js:313:20)
    at async Object.transform (file:///home/gmacario/github/aquariophilie/blobfishes/client/node_modules/@sveltejs/vite-plugin-svelte/dist/index.js:1460:27)
    at async ModuleLoader.addModuleSource (/home/gmacario/github/aquariophilie/blobfishes/client/node_modules/rollup/dist/shared/rollup.js:22148:30)
    at async ModuleLoader.fetchModule (/home/gmacario/github/aquariophilie/blobfishes/client/node_modules/rollup/dist/shared/rollup.js:22201:9)
    at async /home/gmacario/github/aquariophilie/blobfishes/client/node_modules/rollup/dist/shared/rollup.js:22176:48
    at async Promise.all (index 1)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ugly-frontend@0.0.1 build: `svelte-kit build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ugly-frontend@0.0.1 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/gmacario/.npm/_logs/2021-11-07T17_13_53_907Z-debug.log
gmacario@gmpowerhorse:~/github/aquariophilie/blobfishes/client (main)*$

I found this relevant thread:
Reference: https://githubmemory.com/repo/sveltejs/kit/issues/2646

Fix via #129

repo: aquariophilie/blobfishes


text:
Non-conventional JSON format

Description
When saving the results as JSON, the keys are formatted in a non-conventional nor consistent manner. This makes deserializing the file with other tools unnecessary complicated.
What did you expect to happen?
I expected all the keys to use a conventional encoding, like lowercase or camelCase.
For instance, looking at the JSON API recommendations (https://jsonapi.org/recommendations/), they recommend the  keys to use camelCase (which seems to be the most commonly accepted one):

Member names SHOULD be camel-cased (i.e., wordWordWord)

Looking at several libraries, the more common encodings are:

"lowercase"
"UPPERCASE"
"PascalCase"
"camelCase"
"snake_case"
"SCREAMING_SNAKE_CASE"
"kebab-case"
"SCREAMING-KEBAB-CASE"

What happened instead?
Instead the id key is UPPERCASE, and the other ones are Capitalized.
[
  {
    "ID": "1.1.3",
    "Name": "Ensure any change to code receives approval of two strongly authenticated users",
    "Descrition": "Ensure that every code change is reviewed and approved by two authorized contributors who are strongly authenticated.",
    "Remediation": "An organization can protect specific code branches — for example, the \"main\" branch which often is the version deployed to production — by setting protection rules. These rules secure your code repository from unwanted or unauthorized changes. You may set requirements for any code change to that branch, and thus specify a minimum number of reviewers required to approve a change.",
    "Result": "Failed",
    "Reason": "",
    "Url": "https://avd.aquasec.com/compliance/softwaresupplychain/cis-1.0/cis-1.0-sourcecode/1.1"
  }
]

Additional info
Tools like gomodifytags can simplify the process of mass editing the struct tags.

On it 😄

repo: aquasecurity/chain-bench


text:
Remove unused Enforcer Group fields causing potential confusion

The EnforcerGroup struct (in the file client/enforcers.go) defines the request and response format for an Enforcer Group (via the hostsbatch API call to the Aqua Server). Currently, this struct includes the following line of code:
NetworkActivityProtection                 bool                 `json:"network_activity_protection"`

However, a call to the hostsbatch API does not actually return any JSON result for the key network_activity_protection. Since this unused field is very similar to network_protection and host_network_protection (both of which are used), this can lead to confusion.
To reduce the likelihood of misuse/confusion, all references to NetworkActivityProtection and network_activity_protection should be removed from Enforcer Group-related type definitions and functions.
Similarly, there is an unnecessary inclusion of hostname in the schema.Resource object returned by the function resourceEnforcerGroup (in the file aquasec/resource_enforcer_group.go), which should also be removed.

Fixed by #117

authors: davidrosson semyonmor

repo: aquasecurity/terraform-provider-aquasec


text:
fix(terraform): when using for-each use only keys as indexes

Fixes https://github.com/aquasecurity/trivy/issues/5555

I merged another PR, could you resolve the conflicts? but lgtm!

repo: aquasecurity/trivy-iac


text:
Trivy-operator creates a large number of node-collector pods

What steps did you take and what happened:
After installing the chart it began creating a lot of node-collector pods, in my 40 node cluster within the first 15 minutes there were already more than 1000 pods scheduled, some terminating, some erroring with OutOfCpu, the problem is that with the rate of pods being scheduled I didnt have much time to investigate and had to delete the chart, I couldnt find logs for the node collector pods but I did see the following on the operator logs:
{"level":"error","ts":"2023-02-27T16:21:39Z","msg":"Reconciler error","controller":"job","controllerGroup":"batch","controllerKind":"Job","Job":{"name":"node-collector-f4867b9b4","namespace":"trivy-operator"},"namespace":"trivy-operator","name":"node-collector-f4867b9b4","reconcileID":"9f8456b0-3636-4f7c-8c1d-36c3bf3428ec","error":"getting logs: container \"node-collector\" in pod \"node-collector-f4867b9b4-27ldr\" is terminated","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.14.4/pkg/internal/controller/controller.go:329\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.14.4/pkg/internal/controller/controller.go:274\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/home/runner/go/pkg/mod/sigs.k8s.io/controller-runtime@v0.14.4/pkg/internal/controller/controller.go:235"}

the vulnerability scans works fine for me and this is what I am looking for so I deployed the chart with the following values and it also started scheduling node-collector pods
operator:
  # configAuditScannerEnabled the flag to enable configuration audit scanner
  configAuditScannerEnabled: false
  # rbacAssessmentScannerEnabled the flag to enable rbac assessment scanner
  rbacAssessmentScannerEnabled: false
  # infraAssessmentScannerEnabled the flag to enable infra assessment scanner
  infraAssessmentScannerEnabled: false

Here is the deployment manifest helm installed:
# Source: trivy-operator/charts/trivy-operator/templates/deployment.yaml
  apiVersion: apps/v1
  kind: Deployment
  metadata:
    name: trivy-operator
    namespace: trivy-operator
    labels:
      helm.sh/chart: trivy-operator-0.11.1
      app.kubernetes.io/name: trivy-operator
      app.kubernetes.io/instance: trivy-operator
      app.kubernetes.io/version: "0.11.1"
      app.kubernetes.io/managed-by: Helm
  spec:
    replicas: 1
    strategy:
      type: Recreate
    selector:
      matchLabels:
        app.kubernetes.io/name: trivy-operator
        app.kubernetes.io/instance: trivy-operator
    template:
      metadata:
        labels:
          app.kubernetes.io/name: trivy-operator
          app.kubernetes.io/instance: trivy-operator
      spec:
        serviceAccountName: trivy-operator
        automountServiceAccountToken: true
        containers:
          - name: "trivy-operator"
            image: "ghcr.io/aquasecurity/trivy-operator:0.11.1"
            imagePullPolicy: IfNotPresent
            env:
              - name: OPERATOR_NAMESPACE
                value: trivy-operator
              - name: OPERATOR_TARGET_NAMESPACES
                value: ""
              - name: OPERATOR_EXCLUDE_NAMESPACES
                value: ""
              - name: OPERATOR_TARGET_WORKLOADS
                value: "pod,replicaset,replicationcontroller,statefulset,daemonset,cronjob,job"
              - name: OPERATOR_SERVICE_ACCOUNT
                value: "trivy-operator"
              - name: OPERATOR_LOG_DEV_MODE
                value: "false"
              - name: OPERATOR_SCAN_JOB_TIMEOUT
                value: "5m"
              - name: OPERATOR_CONCURRENT_SCAN_JOBS_LIMIT
                value: "10"
              - name: OPERATOR_SCAN_JOB_RETRY_AFTER
                value: "30s"
              - name: OPERATOR_BATCH_DELETE_LIMIT
                value: "10"
              - name: OPERATOR_BATCH_DELETE_DELAY
                value: "10s"
              - name: OPERATOR_METRICS_BIND_ADDRESS
                value: ":8080"
              - name: OPERATOR_METRICS_FINDINGS_ENABLED
                value: "true"
              - name: OPERATOR_METRICS_VULN_ID_ENABLED
                value: "false"
              - name: OPERATOR_HEALTH_PROBE_BIND_ADDRESS
                value: ":9090"
              - name: OPERATOR_VULNERABILITY_SCANNER_ENABLED
                value: "true"
              - name: OPERATOR_VULNERABILITY_SCANNER_SCAN_ONLY_CURRENT_REVISIONS
                value: "true"
              - name: OPERATOR_SCANNER_REPORT_TTL
                value: "24h"
              - name: OPERATOR_CONFIG_AUDIT_SCANNER_ENABLED
                value: "false"
              - name: OPERATOR_RBAC_ASSESSMENT_SCANNER_ENABLED
                value: "false"
              - name: OPERATOR_INFRA_ASSESSMENT_SCANNER_ENABLED
                value: "false"
              - name: OPERATOR_CONFIG_AUDIT_SCANNER_SCAN_ONLY_CURRENT_REVISIONS
                value: "true"
              - name: OPERATOR_EXPOSED_SECRET_SCANNER_ENABLED
                value: "true"
              - name: OPERATOR_WEBHOOK_BROADCAST_URL
                value: ""
              - name: OPERATOR_WEBHOOK_BROADCAST_TIMEOUT
                value: "30s"
              - name: OPERATOR_PRIVATE_REGISTRY_SCAN_SECRETS_NAMES
                value: "{}"
              - name: OPERATOR_ACCESS_GLOBAL_SECRETS_SERVICE_ACCOUNTS
                value: "true"
              - name: OPERATOR_BUILT_IN_TRIVY_SERVER
                value: "false"
              - name: TRIVY_SERVER_HEALTH_CHECK_CACHE_EXPIRATION
                value: "10h"
              - name: OPERATOR_MERGE_RBAC_FINDING_WITH_CONFIG_AUDIT
                value: "false"
            ports:
              - name: metrics
                containerPort: 8080
              - name: probes
                containerPort: 9090
            readinessProbe:
              httpGet:
                path: /readyz/
                port: probes
              initialDelaySeconds: 5
              periodSeconds: 10
              successThreshold: 1
              failureThreshold: 3
            livenessProbe:
              httpGet:
                path: /healthz/
                port: probes
              initialDelaySeconds: 5
              periodSeconds: 10
              successThreshold: 1
              failureThreshold: 10
            resources:
              {}
            securityContext:
              allowPrivilegeEscalation: false
              capabilities:
                drop:
                - ALL
              privileged: false
              readOnlyRootFilesystem: true
        securityContext:
          {}

I am not sure what could be causing this behaviour and im seeking help for troubleshooting,
What did you expect to happen:
The operator would spawn just the necessary pods and if for some reason it couldnt create a node-collector pod it would wait n seconds to try to create a new pod for that workload.
Anything else you would like to add:
If I can get just the vulnerability scan working I can go ahead with the most important part of the testing im doing with trivy-operator, but setting OPERATOR_INFRA_ASSESSMENT_SCANNER_ENABLED = false didnt do the trick for me
It is worth mentioning the I am also running Cilium v1.12 on this cluster but there are no network policies deployed for trivy-operator namespace and vulnerability reports can work fine and generate reports, I think other scans too and just the infra scan that seems to the having this bug. I just dont know where to get useful info about what is happening
Environment:
trivy-operator chart version 0.11.1
Kubernetes version v1.23.14-eks-ffeb93d

some more info can be found on this slack thread, I thought about forking the chart to remove all templates except the vulnerability reports but it seems the operator has its own templates to do that so Im kind stuck. I appreciate if someone can help me troubleshoot this bug

@giovannirco thanks for the info update

authors: chen-keinan giovannirco

repo: aquasecurity/trivy-operator


text:
Update Plugin Artifacts Links for v0.161.3

Automated changes by create-pull-request GitHub action

 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.

 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.

repo: aquasecurity/trivy-plugin-aqua


text:
refactor: superplay logic

Closes #159.

Introduces insert_track method for inserting a track in a specific position of the queue.
Removes enqueue_playlist method.
When working with playlists, immediately insert each track in the right position instead of rotating in the end.

Short and to the point, I like it! 🥇

authors: afonsojramos aquelemiguel

repo: aquelemiguel/parrot


text:
Fix insert table issue

PR #4240

when i change the js code it doesn't seem to accept it


text:
Can questions summarize a corpus? Using question generation for characterizing COVID-19 research

一言でいうと
QA形式でトピックモデルのような教師なしの文書分類を行う研究。文書/関連箇所のペアからクエリ(質問)を逆生成する事前学習済みモデルを使用し(論文中ではT5をMS MARCOでFine Tuneしたモデルを使用)、生成したクエリ=トピックとして回答を含む文書を集め分類を行う。文脈を考慮した分類が可能という。

論文リンク
https://arxiv.org/abs/2009.09290
著者/所属機関
Gabriela Surita, Rodrigo Nogueira, Roberto Lotufo

School of Electrical and Computing Engineering
NeuralMind Inteligência Artificial
David R. Cheriton School of Computer Science, University of Waterloo

投稿日付(yyyy/MM/dd)
2020/9/19
概要
新規性・差分
手法
結果
コメント

実装
https://github.com/unicamp-dl/corpus2question

repo: arXivTimes/arXivTimes


text:
more attributes to TrainingData entity

Important Note:
It is recommended NOT to merge pull requests on weekends.

Can one of the admins verify this patch?

authors: KaushikGondaliya jane-doe

repo: arago/OGIT


text:
WARNING: Unable to start rtorrent

Hi,
i tried "rt start" but not possible.
Get error "WARNING: Unable to start rtorrent"
thx

Same happened to me as well.
Did you find any solution?

I actually had the same issue, it became resolved after doing the following fix:
https://github.com/arakasi72/rtinst/issues/246

Yea I also had this issue and tried to figure it out for 2 days and almost gave up on it. It also showed me the same error and on the webui it showed "No connection to rTorrent. Check if it is really running. Check $scgi_port and $scgi_host settings in config.php and scgi_port in rTorrent configuration file.".
For me I just did apt-get install rtorrent after rtinst, then restarted the server and it seems to work (for now).

authors: Rubik-AU ToishY lordvalium silveringking


text:
Long running update queries causes lock timeout even if inBackground is set to true

My Environment

ArangoDB Version: 3.9.2
Deployment Mode: Single Server
Deployment Strategy: Manual Start
Configuration: nothing special
Infrastructure: own
Operating System: Windows 10
Total RAM in your machine: 32Gb
Disks in use: HDD
Used Package: Windows Installer

Component, Query & Data
Affected feature: database, arangosh
Dataset: collection with ~10 million documents

Size of your Dataset on disk: 32.8 GB (35,271,593,984 bytes)
Steps to reproduce

create a collection coll with a large number of documents and at least one field (for example containing a timestamp like "2023-05-09 08:01:42")
run an UPDATE query like which populates a new field bar based on the above-defined field foo

FOR row in coll
    UPDATE row._key WITH { 'bar': DATE_FORMAT(row.foo, "%y-%mm")} IN coll

While the query from step 2 is still running, create an index, for example with arangosh:

db.coll.ensureIndex({"type": "persistent", "fields": ["bar"], "inBackground": true});

Problem:
Instead of creating the index, the third step will lead to the following errorl
JavaScript exception in file 'c:\Program Files\ArangoDB3 3.9.2\usr\share\arangodb3\js\client\modules\@arangodb\arangosh.js' at 99,7: ArangoError 18: lock timeout
!      throw error;
!      ^
stacktrace: ArangoError: lock timeout
    at Object.exports.checkRequestResult (c:\Program Files\ArangoDB3 3.9.2\usr\share\arangodb3\js\client\modules\@arangodb\arangosh.js:97:21)
    at ArangoCollection.ensureIndex (c:\Program Files\ArangoDB3 3.9.2\usr\share\arangodb3\js\client\modules\@arangodb\arango-collection.js:685:12)
    at <shell command>:1:12

Expected result: Since I specified inBackground as true, I expect the index to be created eventually without running into an exception because of a lock timeout. At last that's what I expected after reading

Indexes can also be created in “background”, not using an exclusive lock during the entire index creation. The collection remains basically available, so that other CRUD operations can run on the collection while the index is being created. This can be achieved by setting the inBackground attribute when creating an index.

in the documentation (https://www.arangodb.com/docs/stable/indexing-index-basics.html).
This expected behavior occurs if I wait for the query from step 2 to finish and then run the command from step 3 again.
Happy to contribute some clarifying words in the documentation in case this is expected behavior! Just wanted to double check that it is first.

Thanks for the reply @Simran-B. Just repeating to make sure I understood correctly: both creating an index as well as executing the UPDATE needs an exclusive write lock. Since the long running UPDATE never released that lock, the index could not be created. Roughly correct?
If so, doesn't that mean that in a very write-heavy environment (basically writing all the time), you cannot create any indices. Not even sure if that's a supported use-case of course and if not, we can obviously just close this issue here :-).

I believe the statement in the docs about background indexing not using exclusive locks refers to never locking on the collection level. Any write does require a lock, nonetheless, and it's fair to also call this exclusive, but it's on the document level. Even in write-heavy environments, there isn't necessarily a conflict unless a transaction blocks an entire collection or at least a sizable part of it (including intermediate commits of transactions that touch all documents of a collection). I suppose the inBackground option could also be "queued" and wait until it can actually start to create the index instead of bailing out after a timeout, but then there would need to be some way to observe this or it would look like as if the server ignores the index creation request...

but then there would need to be some way to observe this or it would look like as if the server ignores the index creation request.
isn't it already the case that when you create an index through the web UI it's kind-of "fire and forget"? You click the button to create the index and a toast message shows up. The index is not created yet, so it doesn't show up on the index list and there's also no list of "indices currently being created". What you are suggesting sounds as if the situation would stay the same, right?

From the user perspective using the web interface, I suppose it wouldn't be much different, indeed. However, internally, it would make a difference, and also in the APIs. For example, arangosh blocks until the requested operation has been carried out (or times out).

authors: Simran-B larsborn

repo: arangodb/arangodb


text:
Cluster: jobs moved to coordinator

My Environment

ArangoDB Version:        3.4rc1
Storage Engine:             RocksDB
Deployment Mode:       Cluster
Deployment Strategy:   Manual Start
Configuration:              3 physical hosts, each have DBS and agent. Coordinator runs on first of them
Infrastructure:               own
Operating System:        CentOS 7
Used Package:              RedHat .rpm

Component, Query & Data
AQL query (if applicable):
WITH pmfull,pmlinks,pmcfull
for doc in pmfull
    filter (doc.PMID > 1) AND (doc.PMID < 1000)
    for v,e,p IN OUTBOUND doc pmlinks
        FILTER "0019-9567" IN v.JOURNAL[*]
        return {"pmid":doc.PMID,"pmcid":v.PMCID,"pm":doc.AUTH,"pmc":v.JOURNAL}

Dataset:

I have an ArangoDb cluster (version 3.4rc1) and three collections: "pmfull" (document, 29 million docs), pmcfull (document, 5 million docs) and "pmlinks" (edges, 4.5 million). Last collection stores links between first two document collections.
Replication Factor & Number of Shards (Cluster only):
Replication factor: 1
Number of Shards:64
Problem:
Only first part of query runs on DBS. Everything else moved to coordinator which significantly impact performance. I could be wrong, but don't see any reason why links lookup and further search in the "pmclinks" database could not be done on DBS. Total execution time is 1.294 s, which is unreasonable. Please, help/advise.
Query String:
 WITH pmfull,pmlinks,pmcfull
 for doc in pmfull
     filter (doc.PMID > 1) AND (doc.PMID < 1000)
     for v,e,p IN OUTBOUND doc pmlinks
         FILTER "0019-9567" IN v.JOURNAL[*]
         return {"pmid":doc.PMID,"pmcid":v.PMCID,"pm":doc.AUTH,"pmc":v.JOURNAL}

Execution plan:
 Id   NodeType          Site  Calls   Items   Runtime [s]   Comment
  1   SingletonNode     DBS      64      64       0.00010   * ROOT
 10   IndexNode         DBS     128     998       0.01158     - FOR doc IN pmfull   /* hash index scan, 64 shard(s) */
 13   RemoteNode        COOR    256     998       0.11862       - REMOTE
 14   GatherNode        COOR    193     998       0.00031       - GATHER
  5   TraversalNode     COOR      1      95       0.61978       - FOR v  /* vertex */ IN 1..1  /* min..maxPathDepth */ OUTBOUND doc /* startnode */  pmlinks
  6   CalculationNode   COOR    129      95       0.00011       - LET #10 = ("0019-9567" in v.`JOURNAL`[*])   /* simple expression */
  7   FilterNode        COOR    129       6       0.00003       - FILTER #10
  8   CalculationNode   COOR    129       6       0.00002       - LET #12 = { "pmid" : doc.`PMID`, "pmcid" : v.`PMCID`, "pm" : doc.`AUTH`, "pmc" : v.`JOURNAL` }   /* simple expression */   /* collections used: doc : pmfull */
  9   ReturnNode        COOR    129       6       0.00000       - RETURN #12

Indexes used:
 By   Type   Collection   Unique   Sparse   Selectivity   Fields        Ranges
 10   hash   pmfull       false    false        99.99 %   [ `PMID` ]    ((doc.`PMID` > 1) && (doc.`PMID` < 1000))
  5   edge   pmlinks      false    false            n/a   [ `_from` ]   base OUTBOUND

Traversals on graphs:
 Id   Depth   Vertex collections   Edge collections   Options                                   Filter conditions
  5   1..1                         pmlinks            uniqueVertices: none, uniqueEdges: path

Optimization rules applied:
 Id   RuleName
  1   move-calculations-up
  2   move-filters-up
  3   move-calculations-up-2
  4   move-filters-up-2
  5   use-indexes
  6   remove-filter-covered-by-index
  7   optimize-traversals
  8   remove-unnecessary-calculations-2
  9   scatter-in-cluster
 10   remove-unnecessary-remote-scatter

Query Statistics:
 Writes Exec   Writes Ign   Scan Full   Scan Index   Filtered   Exec Time [s]
           0            0           0         1093         89         0.80293

Query Profile:
 Query Stage           Duration [s]
 initializing               0.00001
 parsing                    0.00016
 optimizing ast             0.00002
 loading collections        0.00000
 instantiating plan         0.00007
 optimizing plan            0.00055
 executing                  0.77859
 finalizing                 0.02351

Hi @timeau,
this behavior is intended, a traversal node can not be optimized to a database server.
Reason:
It is not guaranteed that all edges and neighboring vertices are stored on the very same database server, hence we need to do network communication, and this is coordinated on the coordinator.
So there is not much we can do in the community version.
The only idea that has potential to help is to reverse the search of the traversal.
Right now you search pmfull to pmcfull, resulting in almost 1000 traversals to be executed in this case (998 input vertices).
If you could reverse the search pmcfull (backwards) to pmfull this may result in less traversals to be executed (i do not know because i do not know the details of your dataset)
So the query would look like this:
WITH pmfull,pmlinks,pmcfull
FOR v IN pmcfull
  FILTER "0019-9567" IN v.JOURNAL[*]
  FOR doc,e,p IN OUTBOUND v pmlinks
    FILTER (doc.PMID > 1) AND (doc.PMID < 1000)
    RETURN {"pmid":doc.PMID,"pmcid":v.PMCID,"pm":doc.AUTH,"pmc":v.JOURNAL}

However we have a feature called smart-graphs in the enterprise variant as described here: https://www.arangodb.com/why-arangodb/arangodb-enterprise/arangodb-enterprise-smart-graphs/
This will (with clever and enforced sharding) ensure that the above non-guaranteed condition is hold  to a certain extend, and the traversal can take advantage of this situation => i expect a much better performance there.
NOTE: Still the Traversal will be located on the Coordinator, but much more computation will be done locally.
If you need any further help/introduction to SmartGraphs please let us know.

Hi @mchacki!
Thank you for explanation. Reverse search is not an option since traversals should be combined with full-text search, but contains an error (#6618 ). So my example here was pretty artificial, just to demonstrate the question.
Anyway, thank you very much for looking into this, I appreciate it.

authors: mchacki timeau


text:
Feature/improve block prefetching in collect

Minor improvement in Collect nodes.
Nothing visible to the outside, it just might improve the speed of some queries slightly.
I have not written changeling, if we decide to use this imrpvoment I will add CHANGELOG to remove the DO_NOT_MERGE flag.
Jenkins:
http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/8692/

New Jenkins including the regression test:
http://jenkins.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/8710/

@mchacki : thanks!

authors: jsteemann mchacki


text:
Feature/aql subquery execute remote node api flag

Add a flag to the RemoteNode whether to either use the execute or getSome/skipSome API.

http://jenkins.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/8720/

http://jenkins.arangodb.biz:8080/job/arangodb-matrix-pr/8722/

LGTM, I assume this will be removed again when we're done with the Umbau?

Not quite. We need it for rolling upgrades from 3.6 to 3.7 and can remove it in 3.8.

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/8727/

The jenkins errors here have been fixed in base branch.

authors: goedderz mchacki


text:
Chore/circleci nightly builds

Scope & Purpose
Added --circleci option to test generator to make special configuration possible on CircleCI
Added !circleci flag option for test-definitions file to filter out tests that are not ready or should not be run on circleci yet.
Added workflow option to pass on options to test generator to be able to run full test suite on CircleCI

Superseded by #20645

authors: CryptoNinjaGeek mpoeter


text:
Bug fix tsan garbage collection

Scope & Purpose
Make previous pointer an atomic to synchronize access to it.

We intentionally made previous non-atomic because AFAIR the assumption was that the garbage collection can only be run by the owning thread. If that is not guaranteed you probably have bigger problems, because then you can have concurrent add/remove calls that mess up your doubly-linked list (even if previous is atomic).

@mpoeter thanks for caring 🙂 I'm somewhat sure it is ok, because new promises are only ever append to the front. For more details please consider the comments in this function: https://github.com/arangodb/arangodb/pull/21337/files#diff-f285c58393fb7174b8149b33860fce36839326f44823638b07b943c97c731043R151

Yes, new nodes are only appended at the front, but it is still broken. Here is the (reduced) code of add_promise and remove.
auto ThreadRegistry::add_promise(std::source_location location) noexcept -> Promise* {
  // promise needs to live on the same thread as this registry
  auto current_head = promise_head.load(std::memory_order_relaxed);
  auto promise = new Promise{current_head, shared_from_this(), std::move(location)};
  if (current_head != nullptr) {
    current_head->previous = promise;
  }
  // (1) - this store synchronizes with load in (2)
  promise_head.store(promise, std::memory_order_release);
  return promise;
}

auto ThreadRegistry::remove(Promise* promise) -> void {
  auto* next = promise->next;
  auto* previous = promise->previous;
  if (previous == nullptr) {  // promise is current head
    // (3) - this store synchronizes with the load in (2)
    promise_head.store(next, std::memory_order_release);
  } else {
    previous->next = next;
  }
  if (next != nullptr) {
    next->previous = previous;
  }
}

In add_promise we load promise_head  and update its previous to point to our new node before updating promise_head with the new node. In remove we check the previous pointer of the node to be removed. If this node happens to be the first one, this can be either null or some pointer. If it is null, then we update head - but there is a race now, because between the check and the store the owning thread could have added more nodes that are then lost.
Suppose add_promise reads the current promise_head pointing to some node A, and creates a new node with next set to A. Before add_promise and continue, The other thread removes A from the list. When add_promise now continues and inserts the new node by updating head, we are also reinserting A (because the new node's next still points to A).
Essentially you would need CAS loops for both, insert and remove, and you would need to make sure you avoid the ABA problem.

authors: maierlars mpoeter


text:
Feature/disable indexing

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr-linux/3177/
~ 20% speedup for secondary vpack index

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/2117/


text:
fixed paths

Fixes #

Changed to ejs
fixed file path

Proposed Changes

Please update .json file for the new page.


text:
Separate benchmarks and examples

Move bvh_driver and distributed_bvh_driver to benchmarks/
Put #107 into examples/
Make sure examples/ have no external dependencies, so no benchmark and no boost (probably no MPI too, but that's debatable)

MPI as necessary for individual example.  Same for Fortran.

repo: arborx/ArborX


text:
🐛 Bug Report: failed to solve with frontend dockerfile.v0: failed to create LLB definition: failed to authorize

📜 Description
Get this error when run ./setup.sh in venv based on python 3.11.
failed to solve with frontend dockerfile.v0: failed to create LLB definition: failed to authorize: rpc error: code = Unknown desc = failed to fetch oauth token: Get "https://auth.docker.io/token?scope=repository%3Alibrary%2Fnode%3Apull&service=registry.docker.io": net/http: TLS handshake timeout
ERROR: Service 'frontend' failed to build : Build failed

👟 Reproduction steps

Create venv based on python 3.11 -> commented lines from here: link
Run ./setup.sh

👍 Expected behavior
Run the docker images and serve UI.
👎 Actual Behavior with Screenshots

💻 Operating system
MacOS
What browsers are you seeing the problem on?
Chrome
🤖 What development environment are you experiencing this bug on?
Docker
🔒 Did you set the correct environment variables in the right path? List the environment variable names (not values please!)
No response
📃 Provide any additional context for the Bug.
No response
📖 Relevant log output
No response
👀 Have you spent some time to check if this bug has been raised before?

[X] I checked and didn't find similar issue

🔗 Are you willing to submit PR?
None
🧑⚖ Code of Conduct

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

https://stackoverflow.com/questions/64221861/an-error-failed-to-solve-with-frontend-dockerfile-v0
This might help

restarting my docker desktop resolved the issue.

authors: Chitti-g-k mehdimo


text:
month label is not updated on locale change

When I change locale using moment.locale('fr-FR') only weekday labels are changed, but the month label stays the same. It changes only after a page refresh.

Ho right ! Gonna fix that tomorrow ;)

Fixed in 2.1.2 ;)

@mgohin great job, thanks!

repo: arca-computing/MultipleDatePicker


text:
Improved VPN

Add NAT hole punching
Add host rediscovery

https://github.com/tonarino/innernet

https://github.com/slackhq/nebula

https://github.com/sandialabs/wiretap?tab=readme-ov-file

https://github.com/pivpn/pivpn/issues/1068

https://forum.netgate.com/topic/182916/upnp-between-lan-and-wireguard-interface-fails

https://nologs-vpn.com/wireguard-dhcp

https://itnext.io/p2p-nat-traversal-how-to-punch-a-hole-9abc8ffa758e

repo: arch-anes/self-hosted-services


text:
Unit test failure in XMLKVDatabase

 INFO: [main] starting testParallelTransactions() on [org.jsimpledb.kv.simple.XMLKVDatabase@1c9520e4]
 INFO: [main] starting testParallelTransactions() iteration 0
DEBUG: [Random[0]] *** Random[0] STARTING
DEBUG: [Random[0]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@5f5ec5f0
DEBUG: [Random[1]] *** Random[1] STARTING
DEBUG: [Random[2]] *** Random[2] STARTING
DEBUG: [Random[1]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@15419025
DEBUG: [Random[3]] *** Random[3] STARTING
DEBUG: [Random[4]] *** Random[4] STARTING
DEBUG: [Random[2]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@2f1ada40
DEBUG: [Random[3]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@656c281d
DEBUG: [Random[5]] *** Random[5] STARTING
DEBUG: [Random[6]] *** Random[6] STARTING
DEBUG: [Random[6]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@692ef3d8
DEBUG: [Random[7]] *** Random[7] STARTING
DEBUG: [Random[8]] *** Random[8] STARTING
DEBUG: [Random[5]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@59b5a0b
DEBUG: [Random[9]] *** Random[9] STARTING
DEBUG: [Random[4]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@5e0e9cd0
DEBUG: [Random[11]] *** Random[11] STARTING
DEBUG: [Random[10]] *** Random[10] STARTING
DEBUG: [Random[9]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@6b8099d3
DEBUG: [Random[12]] *** Random[12] STARTING
DEBUG: [Random[13]] *** Random[13] STARTING
DEBUG: [Random[8]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@6bcc7462
DEBUG: [Random[14]] *** Random[14] STARTING
DEBUG: [Random[7]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@73bace2b
DEBUG: [Random[14]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@5cbcdfdb
DEBUG: [Random[15]] *** Random[15] STARTING
DEBUG: [Random[16]] *** Random[16] STARTING
DEBUG: [Random[17]] *** Random[17] STARTING
DEBUG: [Random[15]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@3720a5d7
DEBUG: [Random[18]] *** Random[18] STARTING
DEBUG: [Random[13]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@64492e19
DEBUG: [Random[19]] *** Random[19] STARTING
DEBUG: [Random[18]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@4ca6a9d0
 WARN: [Finalizer] org.jsimpledb.kv.simple.SimpleKVTransaction@10f8ae75 leaked without commit() or rollback()
DEBUG: [Random[12]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@36858c07
DEBUG: [Random[20]] *** Random[20] STARTING
DEBUG: [Random[10]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@1a785a79
DEBUG: [Random[21]] *** Random[21] STARTING
DEBUG: [Random[11]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@6d4d3c3b
DEBUG: [Random[23]] *** Random[23] STARTING
DEBUG: [Random[22]] *** Random[22] STARTING
DEBUG: [Random[24]] *** Random[24] STARTING
DEBUG: [Random[21]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@1ef20bb6
DEBUG: [Random[24]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@26ba4eb8
DEBUG: [Random[20]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@118625e5
DEBUG: [Random[19]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@696103e5
DEBUG: [Random[17]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@6046e56f
DEBUG: [Random[16]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@4e810bca
DEBUG: [Random[22]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@30726eca
DEBUG: [Random[23]] *** CREATED TX org.jsimpledb.kv.simple.XMLKVTransaction@28c7a89f
DEBUG: [Random[0]] *** COMMITTING TX org.jsimpledb.kv.simple.XMLKVTransaction@5f5ec5f0
DEBUG: [Random[0]] *** COMMITTED TX org.jsimpledb.kv.simple.XMLKVTransaction@5f5ec5f0
DEBUG: [Random[1]] *** Random[1] FINISHED
DEBUG: [Random[6]] *** Random[6] FINISHED
DEBUG: [Random[1]] *** BEGIN Random[1] LOG ***

seed = 7616751421776965593
getAtMost: 5e -> null
new values:
  knowns={}
  puts=[]
  emptys=[[,5e)]
failed: java.lang.AssertionError: Random[1]: tx contains {05,c7c9ea7c74f2869d} but
  knowns={}
  puts=[]
  emptys=[[,5e)]
  tx={05=c7c9ea7c74f2869d, 0d=abd31c9485d86523, 14=7a, 1c=45, 80=02, e2=c7}
java.lang.AssertionError: Random[1]: tx contains {05,c7c9ea7c74f2869d} but
  knowns={}
  puts=[]
  emptys=[[,5e)]
  tx={05=c7c9ea7c74f2869d, 0d=abd31c9485d86523, 14=7a, 1c=45, 80=02, e2=c7}
    at org.jsimpledb.kv.test.KVDatabaseTest$RandomTask.test(KVDatabaseTest.java:792)
    at org.jsimpledb.kv.test.KVDatabaseTest$RandomTask.run(KVDatabaseTest.java:564)

*** END Random[1] LOG ***
DEBUG: [Random[6]] *** BEGIN Random[6] LOG ***

seed = 20306850681500960
getAtMost: 3b -> null
new values:
  knowns={}
  puts=[]
  emptys=[[,3b)]
failed: java.lang.AssertionError: Random[6]: tx contains {05,c7c9ea7c74f2869d} but
  knowns={}
  puts=[]
  emptys=[[,3b)]
  tx={05=c7c9ea7c74f2869d, 0d=abd31c9485d86523, 14=7a, 1c=45, 80=02, e2=c7}
java.lang.AssertionError: Random[6]: tx contains {05,c7c9ea7c74f2869d} but
  knowns={}
  puts=[]
  emptys=[[,3b)]
  tx={05=c7c9ea7c74f2869d, 0d=abd31c9485d86523, 14=7a, 1c=45, 80=02, e2=c7}
    at org.jsimpledb.kv.test.KVDatabaseTest$RandomTask.test(KVDatabaseTest.java:792)
    at org.jsimpledb.kv.test.KVDatabaseTest$RandomTask.run(KVDatabaseTest.java:564)

*** END Random[6] LOG ***

Not seeing this anymore; appears to be fixed.

repo: archiecobbs/jsimpledb


text:
Create project page

Project page should have instructions for submitting a repository to fork / archive, and provide contact instructions for creators and future maintainers.

This can be addressed through a README section additionally AND a GitHub issue template.

license: Unlicense