Collect use cases and difficulties from users to improve documentation

In order to make a great documentation, I think we need a lot of very precise and concrete examples. For that, I would need to know what people struggle to understand or achieve using ensy. That can be something high level related to the concept of Entity Systems or things related to the use of the lib itself.
So, if you read this and have anything to say, please comment! :)

I have a suggestion for the workflow of Processors. It would be great to be able to register components in the processor's constructor. That way you don't have to search through all entities and components during the update event. You could also have events fired when entities are added and removed from processors. Here's an example of the workflow I'm thinking of.
`var MyProcessor = function (manager) {
this.manager = manager;
this.registerComponent('Position');
this.registerComponent('Display');

};
MyProcessor.prototype.update = function (entity, dt) {
var position = entity.get('position');

var sprite = this.sprites[entity.id];
sprite.x = position.x || 0;
sprite.y = position.y || 0;

};
MyProcessor.prototype.onAdded(entity) {
var position = entity.getComponent('Position');
var display = entity.getComponent('Display');
//handle regular game entities sprites.
var sprite = this.game.add.sprite(position.x, position.y, display.spriteImagePath);

sprite.x = position.x;
sprite.y = position.y;
this.sprites[entity.id] = sprite;

};
MyProcessor.prototype.onRemoved(entity) {
this.sprites[entity.id].kill();
}
manager.addProcessor(new MyProcessor(manager));
`

I like some of what you're proposing, but not all of it. I believe it would a mistake to make processors depend on Component types. Specifically, I've already had processors that would work on a component, and then check if another one was present for an entity and do something special if it was. That would not be possible with your proposal.
The events I like very though, but I think I would implement them slightly differently. Here's what a Processor would look like in my idea:
class RenderingProcessor {
    constructor(manager) {
        this.manager = manager;
        this._sprites = {};
    }

    on(type, data) {
        switch (type) {
            case 'COMPONENT_CREATED':
                if (data.component === 'Display') {
                    let display = data.state;
                    let position = this.manager.getComponentDataForEntity('Position', data.entity);
                    let newSprite = this.game.add.sprite(position.x, position.y, display.spriteImagePath);
                    this._sprites[data.entity] = newSprite;
                }
                break;
            case 'COMPONENT_REMOVED':
                if (data.component === 'Display' && this._sprites[data.entity]) {
                    this._sprites[entity].kill();
                    delete this._sprites[entity];
                }
                break;
            default:
                break;
        }
    }

    update(dt) {
        let displays = this.manager.getComponentsData('Display');
        for (let entity in displays) {
            let display = displays[entity];
            let position = this.manager.getComponentDataForEntity('Position', entity);

            this._sprites[entity].x = position.x;
            this._sprites[entity].y = position.y;
        }
    }
}

What do you think about that @CodestarGames ?
On a side note, I see that you want to use entities as objects. That is something I really want to avoid, because conceptually, entities are just identifiers. This API is slightly more complicated to use than say Crafty's API, but it is also a lot more flexible and has a bunch of benefits (that I admit ensy doesn't exploit as of yet).

Thanks for some of the quick fixes on the other issues. I had been looking around for an ECS library to use for a roguelike project I recently started and initial concerns with many that I'd found was that they were unmaintained (sometimes for multiple years). I'm glad to see that ensy is alive still; and that makes me want to contribute also. Initially I was using js13k-ecs which is small and simple, but with a limit of 32 components I realized I needed something that could expand with my game.
Starting yesterday, I commented out all my js13k-ecs code and started replacing it bit by bit with ensy. Thankfully the refactor is going well enough. I'll continue to post any issues or suggestions I have as a result. Here are a few thoughts already:
I'm lazy (functions have long names)
In js13k-ecs the calls are much shorter, which I like. I don't want to read or type a sentence when I'm thinking in terms of "do a thing". As a result, I adopted some of the names from js13k-ecs to use in my project with ensy.
    manager.assemble = manager.createEntityFromAssemblage;
    manager.get = manager.getComponentDataForEntity;
    manager.select = manager.getComponentsData;

This means I can type manager.assemble('Player') instead of manager.createEntityFromAssemblage('Player'). Or a simple manager.get('Position', id) instead of manager.getComponentDataForEntity('Position', id).
I am using VSCode, so the IDE does offer prompts, but I still prefer the shorter versions and it flows easier for me.
Iterating through entities
Because js13k-ecs used a 32-bit bitmask to track which components were attached to an entity, it was trivial for it to return a list of entities that belonged to multiple components. Thus, I could easily put ecs.select(Position, Movement) and get back a list of entities that had both of those components. Of course, that bitmask resulted in a limit of 32 components for the entire system (unless it were extended).
With ensy however, there's no built-in function to get a list of entities that meet a criteria of having multiple, specific components. Instead I'm forced into alternatives:

Make an empty hybrid component (e.g. "Position_Movement"). Terrible idea because components might need to be removed and the hybrid could be left behind erroneously.
Nesting loops to build a list manually. Could be acceptable performance if you build the loops carefully.
Create a Group system. For example, I have many entities with a Position component but fewer with an AI component, I could cache a list of entities (using the loops from 2 above) and access that list of entities whenever I need a list of entities that have both Position and AI components attached. Of course, it would have to be updated whenever an entity gains or loses those components. In my case, updating the Group would be manually done after (A) generation is done and all AI entities exist, and (B) after an AI entity is killed and removed from the world. This would still be more performant than running the full set of "build my group" loops on every update.
I imagine an API like:

let myGroup = manager.addGroup(['Component1', 'Component2', ...]); // registers the Group, returns a Group ID (does NOT populate the Group)
let entities1 = manager.getEntitiesInGroup(myGroup); // returns an Array of Entity IDs in Group
let entities2 = manager.getComponentDataForGroup(myGroup); // returns ComponentsData for all in Group
// Other methods...
manager.addEntityToGroup(entity, myGroup); // manually adds a single entity to the Group; throws Error if entity does not match Group's Component criteria
manager.removeEntityFromGroup(entity, myGroup); // manually removes a single entity from the group; throws Error if entity is not in group
manager.populateGroup(myGroup); // populate the list of entities that belong in the Group
manager.removeGroup(myGroup); // removes the Group from the manager

I'm sure there's more to this that could work, but it's just the thoughts I had. I expect it's also possible to get fancy and have the manager do a lot of the work automatically by simply checking if an entity should be added or removed from a Group each time the user adds or removes a Component. Just register a Group and then use it.
Anyway, sorry for the wall of text; I'll be working on my stuff and as I come across things I'll share them. I'll also look for ways to contribute to ensy. If you want help coding something like the Group idea, let me know. Thanks!

Thank a lot @Hectate for the great feedback! I do like having shorter names as well, and I like some of your propositions. The one I'm not sure about is get because there are several "gets" in the manager. However it is true that getComponentsData is the main use case, and it might make for better understandability to have that method have a short name.
Regarding the group feature, I'll have to think about it more. I understand that it is indeed a desirable feature, but I think I would, at first, do it as simply as possible, so doing something like your 2nd solution.
I have also recently been talking about this with a colleague who's coding his own ECS, and there are some things that I believe I do wrong in here. I'd like to take some time to refine the API in the near future, and also do some performance testing to prove that the way this works is actually suitable for bigger games.
I'll file new issues for each of these things, if you want to help you are very welcome to do so. Thanks again!


Add a Dockerfile for the GOBL JS demo

True. Might make sense to have the main Dockerfile used for the CLI, and a second (this one) inside the wasm path.


Load Strategy to overide

It would be nice to have property override strategy rather than just taking the first found one. This can support customizations of specific properties by others more easy..
As reversing the file chain would not help always..

I am not sure I correctly understood your issue.
Property Override is done through @LoadPolicy(LoadType.MERGE); See: http://owner.aeonbits.org/docs/loading-strategies/
This is inspired on how most of unix applications work.
The source is specified in order of importance: more important sources first, least important sources later.

As reversing the file chain would not help always..

Can't you just reverse che file chain in your @Sources annotation?

Closing. If you think it's a real issue, reopen this and please specify more details.


The Interactive Input Does Not Work

First Time Downloading This plugin and very satisfied. I am testing the limits of it, and for some reason I can't ever get the inputs to work

These Are My Settings
I tried restarting obsidian by exiting and reopening it (maybe that's not how you restart)

This is how it would display

FOUND IT, you have to give the input a medium for it to work like
x = input(" ")
print(x)


HealthTest BaseUrl property being called wrong

Description
Fixed the call to the reader baseURL in HealthTest.php.
Checklist:

[x] Securely signed commits
[ ] N/A Component(s) with PHPdocs
[ ] N/A Unit testing, with >80% coverage
[ ] N/A User guide updated
[x] Conforms to style guide

@caswell-wc thank you.


[v2.12.0] Ensure CI/documentation reflect changes to default admin credentials

Background
Previously, when installing the security plugin demo configuration, the cluster was spun up with the default admin credentials, admin:admin. A change was made in main and backported to 2.x for the 2.12.0 release, which now requires an initial admin password to be passed in via the environment variable OPENSEARCH_INITIAL_ADMIN_PASSWORD. This will break some CI/testing that relies on OpenSearch to come up without setting this environment variable. This tracking issue is to ensure compliance with the new changes.
Coming from: https://github.com/opensearch-project/security/issues/3624
Acceptance Criteria

[ ] All documentation references to the old default credentials admin:admin are removed
[ ] Ensure that CI/testing is working with main and 2.x branches

Marking this issue as "No action needed" based on internal conversations and since there has not been any movement. @atharvasharma61 @khushbr @ansjcy @sbcd90 @devagarwal1803 Please re-open this issue if otherwise.


Django-otp 1.3.0 broke tests

Current Behavior
When tests are executed with django-otp==1.3.0, the following test fails:
======================================================================
FAIL: test_setup (tests.test_email.EmailTest.test_setup)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python3.11/unittest/mock.py", line 1375, in patched
    return func(*newargs, **newkeywargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/petr/soubory/programovani/blenderkit/django-two-factor-auth/.tox/py311-dj42-yubikey/lib/python3.11/site-packages/django/test/utils.py", line 461, in inner
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/home/petr/soubory/programovani/blenderkit/django-two-factor-auth/tests/test_email.py", line 78, in test_setup
    self.assertEqual(len(mail.outbox), 1)
AssertionError: 0 != 1

Expected Behavior
This doesn't happen if the version is 1.2.0
Steps to Reproduce (for bugs)

Update django-otp to 1.3.0
Run tox -e py311-dj42-yubikey

Context
Tests in PRs #683 #682 #680 are affected by this.

Petr, may I ask you to approve the pull request linked above, if you are OK with it, of course?

@claudep I have added approval review, but I am not sure if it helps. The change seems to be pretty simple.
I am not maintainer, so I can merge it.

Oh yes, I forgot that you have to be a Jazzband member (https://jazzband.co/) for the review to count. I'd hope that more Jazzbanders would follow this package to help with maintainership :persevere:


pulltorefresh stops working all together if destroyed while running

Bug report

Current behavior:
Pulltorefresh stops working all together if destroyed while running. In my setup the issue occurs if the user navigates to another route (navigating destroys pulltorefresh-instances) while pulltorefresh still is working on the users current route. This is in the context of an SPA built with Vue.js. At the moment I have to restart the entire application for pulltorefresh to work again. There is no errors in the console.
Expected behavior:
That it gracefully releases held element back to top and upon new init it works again.
JSFiddle URL for demo with bug:
Browsers affected:
All
There is an issue describing this very behaviour which was supposed to be fixed in 0.1.16 but I still experience this in 0.1.16: https://github.com/BoxFactura/pulltorefresh.js/issues/57

Closed because demo URL is not included


”Grajduri” is listed in the drop-down menu

Description:
"Grajduri" is listed in the drop-down menu alongside its corresponding county and commune, according to the law.
Precondition:
The website is up an running.

Step 1
Type "Grajduri" in the search bar.

Expected results
The location is listed in the drop-down menu as "Comuna Grajduri, IAȘI".


Hover is not working

I have installed this plugin on a latest cacti version 1.2.11. Looks like hover function is not working even though html style is chose "Overlib". Is hover not supported with this version?

@pradeepspa if you go to settings/General and look for
Allow Unsafe JavaScript eval() calls
Certain Cacti plugins require the use of unsafe JavaScript eval() calls. If you select this option, they will be allowed in Cacti.

Set it to Yes and that should resolve your problem.

@pradeepspa if you go to settings/General and look for
Allow Unsafe JavaScript eval() calls
Certain Cacti plugins require the use of unsafe JavaScript eval() calls. If you select this option, they will be allowed in Cacti.

Set it to Yes and that should resolve your problem.

I confirm that this solve the hover problem, this issue should be closed.

Actually this was (partially) fixed in a merge commit on the master branch. See https://github.com/thurban/plugin_weathermap/commit/2314cf1547ff3563dbf3b23e18feb2d827ce1804
Also, "unsafe" is in the name of the option... It is a workaround, not a fix. Please try the master branch of this repo.

Actually this was (partially) fixed in a merge commit on the master branch. See 2314cf1
Also, "unsafe" is in the name of the option... It is a workaround, not a fix. Please try the master branch of this repo.

you are right, it is solved in the master branch, thanks for the info.

I've just had the same issue. I installed from the master branch. Console started erroring that overlib.js was not found. I copied the overlib.js from plugins/weathermap to the root installation and the error went away. However Now I'm getting the following error:
overlib.js:1146 Uncaught TypeError: Cannot read property 'clientWidth' of undefined
at windowWidth (overlib.js:1146)
at placeLayer (overlib.js:568)
at runHook (overlib.js:1437)
at disp (overlib.js:525)
at runHook (overlib.js:1437)
at olMain (overlib.js:443)
at runHook (overlib.js:1437)

I've just had the same issue. I installed from the master branch. Console started erroring that overlib.js was not found. I copied the overlib.js from plugins/weathermap to the root installation and the error went away. However Now I'm getting the following error:
overlib.js:1146 Uncaught TypeError: Cannot read property 'clientWidth' of undefined
at windowWidth (overlib.js:1146)
at placeLayer (overlib.js:568)
at runHook (overlib.js:1437)
at disp (overlib.js:525)
at runHook (overlib.js:1437)
at olMain (overlib.js:443)
at runHook (overlib.js:1437)

Hi
That clientWidth statement on line 1146 of overlib.js is only in the development branch. Are you sure you took the file from the master branch ?

Hi
That clientWidth statement on line 1146 of overlib.js is only in the development branch. Are you sure you took the file from the master branch ?

I think the file was cached by my browser. I did a empty cache and reload. When I manually created the div, the hover graph's corner was right on the mouse. Now after the reset the graph is offset from the mouse. Is this intentional or is there still going something wrong.

I think the file was cached by my browser. I did a empty cache and reload. When I manually created the div, the hover graph's corner was right on the mouse. Now after the reset the graph is offset from the mouse. Is this intentional or is there still going something wrong.

I have also noticed. When you use the weathermap menu button the hovering does not work. If you refresh the page it starts working again. There are no errors in the console though.

I have also noticed. When you use the weathermap menu button the hovering does not work. If you refresh the page it starts working again. There are no errors in the console though.

On my tests it only works with the console open(?)  cuz it forces the javasc call /o/
Cacti 1.2.16
Weathermap Master

@metrotyranno, @zuka1337, @DoubleBeast, @jamesbtate, @jpobeda, @pradeepspa see the note below..  Overlib will be gone after this.
This issue will be resolved once this pull request is merged: https://github.com/Cacti/plugin_weathermap/pull/39


Ability to selectively disable nested create/connects?

I LOVE being able to easily create "derived types" in my GraphQL schema from my Prisma models. The hide/filter options and the ability to add additional custom fields is glorious. To do this before, I had to duplicate and modify my Prisma schema's AST.
Another major divide between the Prisma Client api and a typical GraphQL server is the ability to do arbitrarily nested writes with create and connect. It would be great if we could enable/disable these two options selectively on each relational field in our schema.
As a proposed API:
export const User = prismaObjectType({
  name: 'User',
  definition(t) {
    t.prismaFields([{
      name: 'posts',
      args: ["published"],
      nestedCreate: false,
      nestedConnect: false
    }])
  },
})

Without this, the ability to just "drop in" createUser and deleteUser from our Prisma API isn't useful, since we'd be giving the client free rein to nestedly create/connect/update/disconnect things in our database (assuming we pass the createUser parameters straight through to Prisma without any validation).
I figure it might be hard to implement this, since mutations aren't implemented in a nested way like queries. Any other ideas for how to validate nested arguments?

Hey, thanks for the great feedback !
I'll post a GH issue later today with something that might address your issue and others.
We basically think there's room to transform the schema at "build time" once #86 lands.
That would reduce the runtime overhead, while also giving you autocompletion for the aliased fields that you might have transformed etc etc.
In the meantime, it's already possible to do what you want to do, it's just a bit more verbose.
nexus-prisma exposes all the graphql types required to have a working schema by default.
But you can override these types by simply defining them.
eg:
type Mutation {
  createUser(data: UserCreateInput!): User!
}

input UserCreateInput {
  email: String!
  name: String
  posts: PostCreateManyWithoutAuthorInput
}

export const UserCreateInput = prismaInputObjectType({
  name: 'UserCreateInput',
  definition(t) {
    t.prismaFields(['email', 'name']) // Do not expose `posts` fields from the create input
  }
}}

Also, as mentioned here #90, now that we are code-first, there's a big room for function/object composition. Also, as Prisma has normalized names for its types, you could probably make a simple function to automate that job once 🙌

@Weakky thanks, this makes sense.
This would be a lot easier if there was a shorthand way to pass through all scalar fields. Proposed API:
export const UserCreateInput = prismaInputObjectType({
  name: 'UserCreateInput',
  definition(t) {
    t.scalars() // Expose all scalar fields
  }
}}

Then it would be trivial to add in the relational fields I care about for each query. Is there any simple way to do this now?
Unrelated note: I'm having trouble getting t.prismaFields(["*"]) to work in my Typescript project. Any ideas?

Or, if you could provide extra type information to a filter function, this would be really easy.
export const UserCreateInput = prismaInputObjectType({
name: 'UserCreateInput',
definition(t) {
t.prismaFields({
filter: (field)=>{
// field is object with name and type properties
return ['String', 'Int', 'Float'].includes(field.type)
}
}) // Expose all scalar fields
}
}}


[OP] Add oneDNN relu unit tests.

WIP - bug fixing.

I've finished this test, here are the results for Relu 2D, 3D and 4D:

+1, looks great to me.


Define the package API

https://docs.flutter.dev/development/packages-and-plugins/developing-packages#step-2a-define-the-package-api-dart

의존성 추가

https://navermaps.github.io/android-map-sdk/guide-ko/1.html


[CLI] db --migration-directory option ignored

When using the db generate, db migrate or db validate commands of the Aqueduct CLI, I can't set the migration directory. It seems that this option is ignored:
/src/dart-project $ aqueduct db validate --migration-directory=lib/src/data

-- Aqueduct CLI Version: 2.5.0+1
-- Aqueduct project version: 2.5.0+1
*** No migration files found in /src/dart-project/migrations.

/src/dart-project $ aqueduct db generate --migration-directory=lib/src/data

-- Aqueduct CLI Version: 2.5.0+1
-- Aqueduct project version: 2.5.0+1
-- Replaying migration files...
-- The following ManagedObject<T> subclasses were found:
    [...]
-- Created new migration file (version 1).
    New file is located at /src/dart-project/migrations/00000001_Initial.migration.dart

I'm using the Dart VM version: 2.0.0-dev.32.0.

Looks like this flag used to be used, but it's behavior was removed without removing the option from the CLI.
I'm leaning towards just removing the option - do you have a good use case to have another migration directory other than the default? Keeping in mind that migration files should be checked into version control.

A good use case? Not really: it's just that I usually have some directory layout, and that I prefer to have the migration folder into a lib subfolder (or whatever) instead of at the project root.
I can't do that currently... unless I use a symbolic link (i.e. migrations => lib/migrations).
Conversely, I can do that without any issue with the YAML configuration files (i.e. store them into an etc subfolder).

👍 We'll get that fixed in 3.0.

Thanks a lot :)

Fixed in 3.0 branch


Https test

The title of the Pull Request needs to be changed.
Please follow https://www.spinnaker.io/community/contributing/submitting/#commit-message-conventions


Full page bug

Hi. I'm building a SPA. I made some tests with your component some weeks ago, but had to switch to another one because, strangely, I was not able to set it full page, the navbar would still appear no matter what.
Long story short, I gave up on that design and ended up not using that other component either. However, now I have another demand in which your component with that particular behavior would be perfect, but it's gone. Now that I'm testing your component again, it is hiding everything on my page, including the navbar.
Do you know how can I get that behavior again, in which the navbar is not hidden?
Thanks for your time and your awesome component.

You navbar was visible on full screen loading, this might be because of z-index issue, try to increase the z-index on loading overlay and it should work fine.

I generally avoid touching z-index, and didn't do so since the last time I used your component. I was expecting a solution in which I could restrict the overlay to a div, but I can along with changing the z-index. Thanks.


 Please cease to exist now.

id rather live in joe bidens america than 3kh0s github

Not my president

id rather live in joe bidens america than 3kh0s github

disagree


Library relies on deprecated pkg_resources

This package imports pkg_resources
https://github.com/madpah/requirements-parser/blob/1ce923617147dd984c280d56cb1f02fcd3589a7c/requirements/requirement.py#L24
which is deprecated. Simply importing the package raises a DeprecationWarning. The library should migrate to packaging.requirements.Requirement instead of pkg_resources.Requirement.

This is failing on Python 3.12: https://github.com/ansible-collections/community.docker/actions/runs/7513305230/job/20454910945?pr=754

This is failing on Python 3.12: https://github.com/ansible-collections/community.docker/actions/runs/7513305230/job/20454910945?pr=754

That is because the package is missing an explicit dependency on setuptools, but it looks like that was fixed on main.


Rya 144

Description

What Changed?
-Finished kchilton2's mongo based entity secondary indexer
-updated to use meiercaleb's new query segment framework
-added optimizer for the entity indexer

Tests

Coverage?
Added integration tests for the indexer
Note: no assertions are performed

Links
Jira
Checklist

[x] Code Review
[ ] Squash Commits

People To Reivew
@meiercaleb
@pujav65

Looks likeEntityIndexOptimizer needs fixing.  And I need to add the optimizer to some config stuff.  I'll get on that and update the PR

wanted to check if this was ready to merge -- looks like everything has been addressed?

Still need to do the change to CloseableIterable

asfbot build

hey @isper3at can you look at what the failure is here and fix it?  I will merge after that.

for some reason the new test didn't show up on my rat report.  Had to flip through all the new files to find it >..< its up and should be good now


Adding Draculuhh to the themes list

It's like Dracula but slightly different (because I just think these colours look a bit nicer basically)

thank you

cool and also good thanks :)


File syncer for workflows

This adds a file syncing action that will sync workflows that use this repos reusable-* workflows (sample PR for sync changes https://github.com/kvmware/test-infra/pull/6). https://github.com/knative/actions/issues/58
There are a few ways to go about this;

The current proposal which emulates knobots, but with much more simpler config. The cons, like in knobots, is that each repo needs to manually add themselves to what they want (whitelist)
The other idea is to use something like https://github.com/knative/actions/issues/56#issuecomment-1228689291 and automatically sync all workflow files to all repos, (only need to add new repos once instead of whitelisting, until https://github.com/knative/actions/issues/61 is in). This has the advantage of becoming a blacklist where we (infra) can push changes to repos and setup a sane default config which the repo owner can then opt out of things they dont want. This also is less hoops to jump through for repos, as repo owners need only change config in their repos rather than having to go to knobots/actions to un/subscribe to new actions. The con of this approach is that it adds a bit of overhead because each action will need to the checkout, read config, skip/continue if configed off/on dance.

Hoping to gets on opinions on which way we should move forward.

Here is another idea that can optimize the overhead of option 2. See this gist https://gist.github.com/kvmware/8094ecf8857ef8f669c4d9637d8a0b9a

/hold
I like approach, let's roll it out when you get back.

@upodroid this should be ready to go. Still need to add a PAT, but the config is empty so this essentially is a no op at this point.

/unhold

FYI - note sure why this run failed
https://github.com/knative/actions/actions/runs/3265288460

ah thanks.  cahnged the on statement to a schedule but didn't remove the on will send out fix. thanks for drawing attention

From: Dave Protasowski @.>
Sent: Monday, October 17, 2022 10:25 AM
To: knative/actions @.>
Cc: Krsna Mahapatra @.>; Author @.>
Subject: Re: [knative/actions] File syncer for workflows (PR #67)
⚠ External Email
FYI - note sure why this run failed
https://github.com/knative/actions/actions/runs/3265288460https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fknative%2Factions%2Factions%2Fruns%2F3265288460&data=05|01|kmahapatra%40vmware.com|a2b79472e77e4da157df08dab04b7518|b39138ca3cee4b4aa4d6cd83d9dd62f0|0|0|638016135385421205|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=hCVMmKBBi%2FTheP0knlbmNi%2BEt3CYmQ9IXNQAghIbJgc%3D&reserved=0
—
Reply to this email directly, view it on GitHubhttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fknative%2Factions%2Fpull%2F67%23issuecomment-1280946707&data=05|01|kmahapatra%40vmware.com|a2b79472e77e4da157df08dab04b7518|b39138ca3cee4b4aa4d6cd83d9dd62f0|0|0|638016135385421205|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=FlGB3gZZJ%2FZs01NKEO1Wsh%2BYmJLG68mKUTDLuYyExVg%3D&reserved=0, or unsubscribehttps://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAUDS6EWPAIRUDDYGM7IFYGLWDVOV5ANCNFSM6AAAAAAQHFABU4&data=05|01|kmahapatra%40vmware.com|a2b79472e77e4da157df08dab04b7518|b39138ca3cee4b4aa4d6cd83d9dd62f0|0|0|638016135385421205|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=yuGONyO0SgcQB1EnSWkxaYsJ3bNfUdDCAbBcuiKOf0o%3D&reserved=0.
You are receiving this because you authored the thread.Message ID: @.***>

⚠ External Email: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender.


Fix ingest uploads

Fix bug that was introduced in https://github.com/nextstrain/mpox/pull/222
The testing done on branch runs do not include the Slack notifications, so this bug was not revealed in the test run. I only noticed the workflow as failing because our internal #monkeypox-updates channel had been quiet for over a week.
This did not trigger our usual error notifications in Slack because the error occurs during the DAG building process before the start of the actual workflow run.
Checklist

[ ] Checks pass
[x] Test run in https://github.com/nextstrain/mpox/actions/runs/6882965932

Thanks for spotting! Was about to investigate myself. Should we include Slack notifications to a test channel for better test coverage? Wouldn't be hard to set up a test slack channel so this type of bug is spotted more quickly next time round.

Should we include Slack notifications to a test channel for better test coverage? Wouldn't be hard to set up a test slack channel so this type of bug is spotted more quickly next time round.

Yup, see https://github.com/nextstrain/mpox/pull/224


Easier way

Ulysses > File > Add External Folder...
Choose local folder
Select all your Ulysses Groups
Alt+Drag your groups to local folder (Alt makes sure to copy not move)
Local folder will now contain a readable, structured copy of your groups

@gingerbeardman Yes, that's much easier :)
Since external folders evolved with support for textbundle, DB external folders on iOS, etc., this project may have become obsolete for most people.
On the other hand, ulysses_snapshot.py can be run automatically from a cron job (with ul_sync_md.py) exporting from iCloud and OnMy Mac libs, checking for changes every 5 min, every hour, or whatever anyone would need. Also exported markdown from ulysses_snapshot.py contains MD-XL attachment info, inline, and block comments as well. Original modified time is also preserved.
If none of this is needed, your solution is much simpler and better.


Distribute installer

dokany distributes their .exe file (I assume this is an installer)  with their release:
https://github.com/dokan-dev/dokany/releases
Is there any way we could get a built installer distributed? Would love to try this out.

Unfortunatly, this project is only here as an exemple of using dokany.
We have not plan to have a system of release/installer for now.
If you want to try, I would propose you to try https://github.com/dimov-cz/win-sshfs It is a more advanced project and it use dokany also.


configure: Pass the selected $CC to vendor sources

This came up in discussion on pull request #86.
Should we also do the same for the other variables listed in ./configure --help?
Some influential environment variables:
  CC          C compiler command
  CFLAGS      C compiler flags
  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
              nonstandard directory <lib dir>
  LIBS        libraries to pass to the linker, e.g. -l<library>
  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
              you have headers in a nonstandard directory <include dir>
  CPP         C preprocessor

Pass the selected $CC to vendor sources

Any CC the user specified on the command line when invoking ./configure were already passed to sub-configures, so we're only talking about the default value of CC that the configure script determines on its own. Yes, I think this should be passed on to sub-configures.

Should we also do the same for the other variables listed in ./configure --help?

Any user-supplied values were already being passed on. What values does our configure script determine on its own? If we move the CFLAGS- and LDFLAGS-setting code from standard_configure.sh in #86 into configure, then yes those should be passed on to sub-configures.

The AC_PROG_CC macro in the configure script adds CFLAGS="-g -O2" unless the environment specifies something else. Tcl does not follow this autoconf default, but defines custom flags depending on the target platform (looks like -g -Os for Darwin).
I was mainly asking for consistency, as we could forget to add these variables later when we define them in the configure script.

The AC_PROG_CC macro in the configure script adds CFLAGS="-g -O2" unless the environment specifies something else.

Where does that come from? I didn't find the string -g -O2 in our source, except in the generated configure script. standard_configure.sh and the MacPorts port currently use -pipe -Os. -g generates debug information? I don't know if we need that.

I was mainly asking for consistency, as we could forget to add these variables later when we define them in the configure script.

Ok, sounds good.

AC_PROG_CC is defined in /opt/local/share/autoconf/autoconf/c.m4.

Ping?

Let's merge this before it has its first birthday :)


Stream settings: sets zero margin for 'Streams Deletion' table.

Removes the extra space from the bottom of the 'Stream Deletion' table when the margin of the table is set as '0px'
Fixes #2077.

@brockwhittaker can you review this one?

Looks mostly good. Could you take out the bottom border of the table however so there's only effectively a 1px border on the bottom of the container?
Something like:
.settings-section .table.table-condensed.table-striped tbody {
    border-bottom: none;
}

@brockwhittaker  Thanks a lot for reviewing my PR. I have added code to take out the bottom border of the table.

Looks good!

Merged, thanks @reyha and @brockwhittaker!


Keyboard issue

Clevo W230ST - Ubuntu 16.04 - Some keys aren't detected while typing. It occurs especially when AUTO mode is enabled. More the CPU load, more the trouble. Maybe reading temps interfers with keyboard interrupts?

I had this problem too (same laptop). I fix this issue in my fork… This was because of the refresh delay to short.

Solution found (see above).

@GuilloOme which commit is the one that changes the refresh delay?

@giovannicaligaris, here


⚠ T:Riza Community Forum has degraded performance

In ec08ae3, T:Riza Community Forum (https://community.triza.dev) experienced degraded performance:

HTTP code: 502
Response time: 21325 ms

Resolved: T:Riza Community Forum performance has improved in a93542d.


don't run a full-fledged AQL query to remove an AQL UDF by key

Scope & Purpose
Simplify the removal code for AQL UDFs from running an AQL query to a single-key remove operation

[ ] :hankey: Bugfix
[ ] :pizza: New feature
[x] :hammer: Refactoring
[ ] :book: CHANGELOG entry made
[ ] :muscle: The behavior in this PR was manually tested
[x] :computer: The behavior change can be verified via automatic tests

Backports:

[x] No backports required

Testing & Verification

[x] This change is already covered by existing tests, such as shell_server, shell_client.

http://<IP_ADDRESS>:8080/view/PR/job/arangodb-matrix-pr/11953/

Tests blue


[1.7.10] Cannot mount without reassembling

We're using Archimedes+ in a modified version of the FTB: Infinity Evolved pack, and we're having a pretty nasty issue: every time we try to mount a ship, no matter how simple it is, the 'Mount' option is grayed out and we have to assemble. ..Which means pulling in unintended changes.
Back when we used Archimides Ships (not plus), that used to work - the 'Mount' option would only be grayed out if we had removed blocks that used to be part of the ship, but it seems to be every time now.
Thoughts/Suggestions? I looked around to see if there were maybe a setting or something, but nothing sticks out.

Lost this functionality in the transition between MovingWorld's transition. I'll look into reimplementing it somehow. Please move this issue to the MovingWorld repo.


functional api support

https://github.com/vuejs/vue-function-api

The ofType<Props>().covert method should support ComponentOptions and FunctionalComponentOptions and should even support pure functions that return VNode | VNode[].
import { RenderContext } from 'vue';
import { ofType } from 'vue-tsx-support';

export interface HelloProps {
  msg: string;
}

const Hello = ({ props }: RenderContext<HelloProps>) => (

{props.msg}

);

// Now you need to use `as any` or `// @ts-ignore` to ignore type checking.
export default ofType<HelloProps>().convert(Hello as any);

import Vue from 'vue';
import { createComponent, value, onMounted } from 'vue-function-api';
import { ofType } from 'vue-tsx-support';

interface Inject {
  count: number;
}

const Counter = createComponent({
  setup() {
    const count = value(0);

    onMounted(() => {
      window.setTimeout(() => {
        count.value++;
      }, 3000);
    });

    return { count };
  },

  render(this: Vue & Inject) {
    const { count } = this;
    return
{count}
;
  },
});

// @ts-ignore
export default ofType().covert(Counter);

I'm still considering how should we support composition-api.
This is workaround for now.

setup @vue/composition-api and babel-preset-vca-jsx according to their READMEs.

Put this code into your project. (for explanation, save as vca.ts)

import Vue, { VNode } from "vue";
import {
  PropsForOutside,
  RequiredPropNames,
  TsxComponent
} from "vue-tsx-support";
import { createComponent } from "@vue/composition-api";
import { RecordPropsDefinition } from "vue/types/options";
import { SetupContext } from "@vue/composition-api";

export interface CompositionComponentOptions<
  Props,
  PropsDef extends RecordPropsDefinition<Props>
> {
  name?: string;
  props?: PropsDef;
  setup(this: void, props: Props, ctx: SetupContext): () => VNode;
}

export interface ComponentFactory<EventsOn> {
  create<
    Props,
    PropsDef extends RecordPropsDefinition<Props>,
    RequiredProps extends keyof Props = RequiredPropNames<PropsDef> &
      keyof Props
  >(
    options: CompositionComponentOptions<
      Props,
      PropsDef & RecordPropsDefinition<Props>
    >
  ): TsxComponent<Vue & Props, PropsForOutside<Props, RequiredProps>, EventsOn>;
}

const factory = {
  create(options: any): any {
    return createComponent(options);
  }
} as ComponentFactory<{}>;

export const component = factory.create;

export function componentFactoryOf<EventsOn>(): ComponentFactory<EventsOn> {
  return factory;
}

And you can use composition-api with TSX like below
import { ref, onMounted } from "@vue/composition-api";
import * as vca from "./vca";

export const Counter = vca.component({
  props: {
    initialValue: { type: Number, default: 0 }
  },
  setup(props) {
    const count = ref(props.initialValue);
    onMounted(() => {
      window.setTimeout(() => {
        count.value++;
      }, 3000);
    });
    return () =>
{count.value}
;
  }
});

@wonderful-panda maybe it's better to implement the support directly in @vue/composition-api? I can imagine a lot of people would be happy about this :)

@wonderful-panda Two things I wanted to ask:

Maybe we should rename this issue to composition-api 😉
I'm confused about the difference between vue-tsx-support and babel-preset-vca-jsx, are they both Vue compilers to convert TSX files into regular Vue files? Is there anywhere I can read more information about that?

I've released 3.0.0-beta.7 which works with @vue/composition-api and babel-preset-vca-jsx.

@wonderful-panda I'm thinking of upgrading to v3 to be able to use the composition api.
I see it's still under heavy development though. When you think you think is a good time to upgrade? I want to avoid my project from crashing when I upgrade all package minor updates. : D


Add warnings checks for v2 namespaces

This PR adds tests related to warnings we raise in the v2 namespaces (transforms, datapoints, dataset wrapper). Also added import tests related to the deprecated function_pil and functiona_tensor modules

Instead of scattering these tests in multiple files, should we maybe put them all into test_namespaces.py or the like?

I put the v2-related test in test_transforms_v2.py, the rest is related to the deprecated functional_[pil, tensor].py so I feel like they should be separate?

This broke unittest for 3.10, as one can observe in hud:


require makes mocha crash when used in describeWithDOM

Hi,
I have a very weird issue happening when requiring a module in a describeWithDOM block.
When I am mocking a dependency with mockery I need to require my module (which using the mock) after the mock registration.
If I do this in a describeWithDOM block mocha exits without saying anything.
Here a sample that makes mocha crash:
  describeWithDOM('With DOM', () => {
    beforeEach(() => {
      mockery.enable({
        warnOnReplace: false,
        warnOnUnregistered: false,
        useCleanCache: true,
      });
    });

    afterEach(() => {
      mockery.disable();
    });

    it('should call the signout method', () => {
      const spy = sinon.spy();
      mockery.registerMock('../../actions/session', {
        signout: spy,
      });

      const LogoutPage = require('../LogoutPage');

      expect(spy).to.have.not.been.called();
      mount((
        <LogoutPage />
      ));
      expect(spy).to.have.been.called();

      mockery.deregisterMock('../../actions/session');
    });
  });

Even if my file ../LogoutPage.js is extremely simple:
export default {
  here: true,
};

require makes mocha crash.
I am using:
$ node --version
v5.4.1
$ npm --version
3.3.12

A workaround is to reinstall jsdom with npm install jsdom.
I am not sure if this issue is more related to enzyme, mocha or jsdom.
Thanks in advance.

Can you provide a stack trace of the crash?

That's the problem. Mocha crashes without saying anything. No exception, no stack trace.
I tried to debug it with node-inspector (with node-debug /node_modules/mocha/bin/_mocha --compilers js:babel-core/register --require babel-polyfill ./src/containers/LogoutPage/__tests__/LogoutPage-test.js) but it doesn't show anything.
Here is a typical output of a crash:
$ ./node_modules/mocha/bin/_mocha --compilers js:babel-core/register --require babel-polyfill ./src/containers/LogoutPage/__tests__/LogoutPage-test.js

  LogoutPage
    (uses jsdom)
      With DOM

I made a sample repository that demos the crash: https://github.com/hourliert/jsdom-mocha-crash

Hi,
My issue is gone. I have updated my packages to latest version especially jsdom to version 8.
I will update this repo https://github.com/hourliert/jsdom-mocha-crash to confirm the issue is gone.

:+1:


Rewrite dbt integration to use adapter factory

Description
Fairly major refactor to directly import the dbt config and use the internal adapter factory to allow dbt to create the BigQuery client.
The advantages of this approach is we no longer need to parse the profiles.yml ourselves, dbt will do this and parse the dbt_project.yml to ensure we are dry running with the same BigQuery client configuration that it would run with dbt.
This will also mean issues like: #7 will not occur as we will support whatever dbt supports in terms of parsing.
There are backwards incompatible changes to the way the CLI works. The CLI should be run from the same working directory as dbt is compiled with and the values of --project-dir and --profiles-dir should be the same as well.
You no longer need to specify the profile as a command line argument as this comes from the dbt_project.yml when this is parsed by dbt.
Checklist:

[x] I have run make verify and fixed any linting or test errors
[x] I have added appropriate unit tests or if applicable an integration test
[x] OPTIONAL: I have run make integration against a Big Query instance

I have done a test for this on our dbt implementation and it is 7x slower in performance.
I think this is because the BigQuery client is being created and destroyed for every model whereas before it would instantiate a single client which was persisted throughout the entire dry run. Will read into more into how to use the connection manager in dbt


How to add system frameworks and custom frameworks?

Hi
I have been trying to use this module to add system and custom frameworks to automate adding a OneSignal Push Notification to our Ionic app.
We have managed to use the code snippet to generate the right NotificationService.h, NotificationService.m and .plist. That works very well indeed.
However we are stymed as we want to add in four system frameworks, UIKit.framework, WebKit.framework, SystemConfiguration.framework and CoreGraphics.framework as well as the OneSignal.framework. This is the last section to automating the whole of our build :)
We cannot see any documentation on how to use xcode.addframework here. We followed the link to the Swve plugins which were useful, we had a look at those and adapted them to work but as far as we can see, they don't add any frameworks.
Is this easy, have we not lookedf somewhere or is adding the frameworks a non-starter with this module.
Thanks for reading.
Rob

I have managed to get most of the frameworks added by using
var frameworksToAdd = [ 'SystemConfiguration.framework' , 'WebKit.framework' , 'UIKit.framework' , 'CoreGraphics.framework'];
            frameworksToAdd.forEach(function(value) {
		// Add the frameworks needed by OneSignal, add them to the existing Frameworks PbxGroup and PBXFrameworksBuildPhase
                var frameworkFile2 = proj.addFramework(value , { target: extTarget.uuid });

                if (frameworkFile2)
                    console.log("Framework " + value + " added");
                else
                    console.log("Framework " + value + " NOT added");
            });

However for some reason the SystemConfiguration.frameworkis not added.
Also we are trying to add a custom framework held in
./platforms/ios/pods/OneSignal/iOS_SDK/OneSignalSDK/Framework/OneSignal.framework

Adding this as either a filename or as the path above doesn't work.
However we are one step further ahead (two steps forward, one step back).
Thanks
Rob

Thanks. Contribution of documentation, and code updates with tests, and testing instructions would be much appreciated. (I also added the bug label since this looks like undocumented and possibly untested functionality.) Unfortunately we have very limited bandwidth to work on developing and documenting this kind of an update right now.

Our development methodology is pretty close to fuzzing code to see what works and what doesn't. I'd love to say we know what we're doing but it's pretty much a few monkeys randomly hitting keys and hoping that something works. We pilfered the SWRVE plugin shamelessly. Thet certainly seem to know what they are doing unlike us ... :)
We have managed to get three system libraries added but for some reason the fourth one, SystemConfiguration.framework fails.
We will keep experimenting to try and understand whats going on. It's only worth us adding docs when we understand it ourselves.

We're still investigating why SystemConfiguration.framework is not added. We've added loads of console.log statements to pbxProject.js but we get no output which is weird as we get loads from our code.
Is there anything special needed to add debugging to the xcode module?
Thanks
Rob

We have found the line of code that is causing adding in 'SystemConfiguration.framework' to fail. It's been tricky to get debugging in as quite a lot of the cordova project uses this module.
It's a check in pbxProject.prototype.addFramework

pbxProject.prototype.addFramework = function(fpath, opt) {
    var customFramework = opt && opt.customFramework == true;
    var link = !opt || (opt.link == undefined || opt.link);    //defaults to true if not specified
    var embed = opt && opt.embed;                              //defaults to false if not specified

    const logger = log4js.getLogger('pbxproject');
    logger.debug('pbxProject.prototype.addFramework started');

    if (opt) {
      delete opt.embed;
    }

    logger.debug('pbxProject.prototype.addFramework: ' + JSON.stringify(fpath , null , 2));

    var file = new pbxFile(fpath, opt);

    file.uuid = this.generateUuid();
    file.fileRef = this.generateUuid();
    file.target = opt ? opt.target : undefined;

    logger.debug("file = " + JSON.stringify(file , null , 2));

    if (this.hasFile(file.path))
    {
     	logger.debug(file.path);
        logger.debug("this.hasFile(file.path) is true");
        return false;
    }

Now the logging for SystemConfiguration.framework and for WebKit.framework looks pretty much the same, but adding in WebKit.framework works fine and adding in SystemConfiguration.framework fails on this.hasFile(file.path).
The file.path for SystemConfiguration.framework is
pbxproject - file = {
  "basename": "SystemConfiguration.framework",
  "lastKnownFileType": "wrapper.framework",
  "group": "Frameworks",
  "path": "System/Library/Frameworks/SystemConfiguration.framework",
  "sourceTree": "SDKROOT",
  "includeInIndex": 0,
  "uuid": "F5BFFF3294604C05A1209255",
  "fileRef": "FDCEFD97C091433BB09D629D",
  "target": "B2C008E048804AC5B6B2DC70"
}

the file for WebKit.framework is
file = {
  "basename": "WebKit.framework",
  "lastKnownFileType": "wrapper.framework",
  "group": "Frameworks",
  "path": "System/Library/Frameworks/WebKit.framework",
  "sourceTree": "SDKROOT",
  "includeInIndex": 0,
  "uuid": "9D40A0F1CC7B47D0A3601D0D",
  "fileRef": "498C6B9A40824CAAAD825859",
  "target": "B2C008E048804AC5B6B2DC70"
}

We also can't work out what this.hasFile(file.path) is actually testing. All our searchs show HasFile is used in uploading, yet the node xcode module is doing a constant check through just about every function, so it's not a carelessly placed line (and so not a bug).
Any help or ideas welcomed.
Rob

We've worked out what hasFile is. Didn;t realise it was declared in same file :(
We have also managed to get the SystemConfiguration.framework installed.  We think there is a conflict between this node module and how it checks to see what frameworks are available.
We have not managed to get the OneSignal.framework installed, though it's not for lack of trying.
We think its due to a Framework Search Path not being set correctly for the framework but we cannot work out how to resolve this. There is zero documentation as far as we can see on how to do this. We keep looking for code examples but it's not easy.
If anybody understands how to easily add a framework search then please let us know.
Thanks
Rob

This worked for me: https://stackoverflow.com/a/61511396/4317945


Rename shortcut should be disabled for non-HNS blob containers

Preflight Checklist

[X] I have installed the latest version of Storage Explorer.
[X] I have checked existing resources, including the troubleshooting guide and the release notes.
[X] I have searched for similar issues.

Storage Explorer Version
1.34.0 (99)
Regression From
No response
Architecture
x64
Storage Explorer Build Number
20240532.2
Platform
Windows
OS Version
Windows 11
Bug Description
When renaming a blob, it creates a new file with the new name but doesn't remove the old file.
Steps to Reproduce

Launch Storage Explorer
Go to any Blob Container
Click an file.
Press F2
Enter new name and click Enter

Actual Experience
Two files exist, one with old name and one with new name.
Expected Experience
Only one file should exist with the new name.
Additional Context
This feature works with files in File Shares but not Blob Containers

@tjohnson1010 You're using ADLS Gen2 Blob Storage, right? This seems odd, as we are using a move function provided by the Azure SDK. Do you get any error messages at all? Does this happen consistently?

No error and happens all the time.
Below are settings for the two I teste with.  One was  gen1 the other gen2.  I rarely use rename with Blob containers, so no bug deal.  I use rename mostly with file shares and that works 100%.
FIRST Storage: (doesn’t work)
@.***
@.***
SECOND Storage: (doesn’t work)
@.***
@.***
1 of many File Share I use this on:  (works)
@.***
@.***
Have a good day,
Thomas Johnson
Director of IT Applications
Phone:<PHONE_NUMBER>
<EMAIL_ADDRESS>|  www.legacyscs.comhttps://legacyscs.com/
distribution | fulfillment | transportation
This confidential e-mail and any attachments are for the exclusive use of the addressee(s). If you receive this in error, please delete all copies and notify the sender. Any views expressed are those of the sender, unless stated otherwise.
From: Craig Alvord @.>
Sent: Friday, July 12, 2024 11:28 AM
To: microsoft/AzureStorageExplorer @.>
Cc: Thomas Johnson @.>; Mention @.>
Subject: Re: [microsoft/AzureStorageExplorer] Rename of Blob make new file and leaves original file behind when Access Tier is Hot (Issue #8056)
**** This is an EXTERNAL email. Exercise caution. DO NOT open attachments or click links from unknown senders or unexpected email. ****
@tjohnson1010https://github.com/tjohnson1010 You're using ADLS Gen2 Blob Storage, right? This seems odd, as we are using a move function provided by the Azure SDK. Do you get any error messages at all? Does this happen consistently?
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/AzureStorageExplorer/issues/8056#issuecomment-2225926349, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABBXDC7O6I4R34EFLFZWLF3ZL772VAVCNFSM6AAAAABKXRKA2OVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMRVHEZDMMZUHE.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

@tjohnson1010 Were you trying to post screenshots? Can you do it again using the GitHub website? You can't do it replying via email.

No  I pasted info about the types of Blobs I've tested with.  One was gen2 the other was gen1.  Both had same behavior.

The move operation does not appear to have a corresponding REST API, so it could be a bug in the Azure client SDK.
Can you do the following:

Launch Storage Explorer.
Reproduce the issue.
Share the app logs?

You can also try using a network monitoring app to capture the actual REST APIs that Storage Explorer uses and see if there are any error responses that come back.

OK.  I see what is happening now.  I notice under Blobs there is no Rename option.  It only exists for File Shares.  But The F2 key exists for both types.  For Filke Shares it does rename but for Blobs it's doing a Copy (the pop-up states Clone).  There is no rename feature for Blob.  To be consistent with other MS apps, like Explorer, F2 shouldn't do anything for Blob since it doesn't support Rename.

@tjohnson That's not quite true. ADLS Gen2 blobs allow for hierarchical namespaces (real folders, just like file shares). So, Rename/Move is a perfectly valid operation.
Here's an ADLS Gen2 blob container's toolbar:

And here's a non-ADLS Gen2 blob container's toolbar:

I should note that ADLS Gen1 is retired as of February 2024. So, maybe you're referring to something else when you mentioned Gen1 earlier?

I see now I had Account kind of General Purpose V2 Type and Hierarchical namespace disabled.  So ADLS wasn't enabled.
I'm ok with no Rename on non ADLS, just the F2 having different functionality for the different toolbars threw me for a loop.

@tjohnson1010 You make a very good point. Keyboard shortcuts should be consistent. We'll review as a team and address as necessary.

Just for clarity, F2 will rename the blob if it is ADLS Gen2 and clone if not. That is explicitly in the code. It's unclear how disruptive removing the F2 shortcut for cloning will be to other users.

After some team discussion, we decided not to alter the existing shortcuts. The shortcuts have been in place for quite some time, and we don't want to disrupt other users' workflows.
Historically, clone started out as a client-side rename. But we had concerns about errors leading to data loss, and we adopted the policy of not implementing destructive operations unless the platform specifically had an API for doing that operation. So instead of renaming, we went to cloning for non-ADLS Gen2 blobs.


Regarding the finetune speed different between different swift version

Hi, I meet an issue about the finetuning speed.
At first, i use swift(verion==2.3.0dev) to finetune InternVL2 using my custom dataset  on single A6000. The finetune process last about 20 hours.
However, when i update the swift to version 2.6.0dev, the finetune process needs 53 hours, which is more than twice than before. Could you please check this out?
BTW: Finetuning code is same, and peft(0.11.1) and transformers (4.36.2) remains same.

Are you doing image fine-tuning or video fine-tuning?
please try: --dataloader_num_workers 4

@Jintao-Huang
Hi,
Thanks your reply.
I am doing image caption fine-tuning and I try to set dataloader_num_workers =4 ( In my previous experiments, this parameter is set to 1 in both old and latest version), the finetune estimate hour reduces from 53 hours to 49 hours, which is still has a large margin compared with early version. And GPU utils is full, so i don't think this is the problem.


UNMET PEER DEPENDENCY for typescript

Bug Report

TSLint version: 3.15.1
TypeScript version: 2.0.3
Running TSLint via: gulp-tslint

The tslint package requires typescript 1.8.10 and another package (gulp-typescript) requires typescript version 2 or higher.
This causes the error
`-- UNMET PEER DEPENDENCY<EMAIL_ADDRESS>when executing npm update.
Is it possible to update to make the version of typescript required less specific or to make it compatible with typescript 2 or higher ?

The peer dependency is already pretty permissive. It allows version >=1.7.3.

The problem isn't the peer dependencies setting of tslint, it is the peer dependencies setting of gulp-typescript and the fact that gulp-typescript is more up-to-date with typescript.
The following comes from the package.json from gulp-typescript
"peerDependencies": {     "typescript": "~2.0.3 || >=2.0.0-dev || >=2.1.0-dev"   },
If i understand correctly that is.
I guess the problem would be solved if tslint would be updated to the latest version of typescript ? Probably i could make use of tslint@next ?

Thanks SwintDC, This issue was solved for me by running npm install tslint@next -g


fix: displayed an alert if no public email provided in Github account; ver…

Summary:
Closes #280
display an alert if user doesn't have public email in GitHub account

If user has public email in GitHub account, verify email and provide feedback of email verification

Testing tips:
Case 1: No Public email in GitHub account

Go to https://github.com/settings/profile
Public Email section, choose "Select a verified email to display", click update profile button
goto MobilityDatabase API,  click signup with Github, you should see an alert "No public email provided in Github account. Please use a different registration method." as in screenshot 1.

Case 2: user has a public email in GitHub account

go to https://github.com/settings/profile
Public Email section, choose an email as public email, click update profile button
goto MobilityDatabase API,  click signup with Github, you should see an message about the status of email verification, either Success or Error, as in screenshot 2.

Please make sure these boxes are checked before submitting your pull request - thanks!

[ ] Run the unit tests with ./scripts/api-tests.sh to make sure you didn't break anything
[ ] Add or update any needed documentation to the repo
[x] Format the title like "feat: [new feature short description]". Title must follow the Conventional Commit Specification(https://www.conventionalcommits.org/en/v1.0.0/).
[x] Linked all relevant issues
[x] Include screenshot(s) showing how this pull request works and fixes the issue(s)

@emmambd @davidgamez

@qcdyx can you test the same flow starting from the Sign-in screen instead of the Sign-up

@davidgamez #300 will resolve this one

@davidgamez #300 will resolve this one
Yes! thanks!


Dev → Main March 2024

Testing user login, maybe other things.
Fixes

https://github.com/Police-Data-Accessibility-Project/data-sources-app/issues/24

Contains PRs

https://github.com/Police-Data-Accessibility-Project/data-sources-app/pull/196

Docs

still need to make docs for this; API docs should be set

Testing login at https://data-sources.pdap.dev/login and the forms just refresh. Could be an envar issue, based on the undefined/user in the route? @mbodeantor

@joshuagraber based on the above, I'm thinking we should have a catch-all error value for unpredictable issues, like:

Something went wrong on our end. If you keep seeing this message, please email<EMAIL_ADDRESS>for assistance.

@josh-chamberlain just updated the env vars

based on the above, I'm thinking we should have a catch-all error value for unpredictable issues, like:

Sounds good @josh-chamberlain I'll add an issue to add an error boundary component to render in case of any unexplained/uncaught API errors like this.

Thanks @joshuagraber and @mbodeantor. I noticed just a couple more things:

When the passwords don't match, we get a "Please provide your password" error which should probably read "Passwords must match". (image below)

My password reset email took maybe 10 minutes, but by the time it showed up, the link took me to an expired token page. (image below). Can we extend that reset token to maybe 15–20 minutes, and add a line to the email about how long it'll take to expire?

On the token expired page, instead of columns, can we just have the line of text with a Request another password reset button below it?

Hey @josh-chamberlain, no probs.
A couple thoughts/questions:

When the passwords don't match, we get a "Please provide your password" error which should probably read "Passwords must match". (image below)

The error in your screenshot is the password field validation (does PW meet all the required conditions), not the password mismatch error (see screenshot below). But the password match validation should happen first, so I'm a bit confused as to how you got to this state. Do you have more detailed steps to reproduce?

(Another thing: I just noticed the form inputs clear on the password mismatch error, but that's a design-system problem. Will create an issue to preserve form input values after onSubmit validation errors in parent components.)

My password reset email took maybe 10 minutes, but by the time it showed up, the link took me to an expired token page. (image below). Can we extend that reset token to maybe 15–20 minutes, and add a line to the email about how long it'll take to expire?

Agreed. It would also be nicer UX if we have an endpoint to validate this token on page load, so the user doesn't have to fill out the form and submit to know that it's expired. @mbodeantor Do you think it makes sense to add an issue to tackle this later, as an enhancement to the reset pw experience?

On the token expired page, instead of columns, can we just have the line of text with a Request another password reset button below it?

Done.
I also started the error boundary component and catchall "not found" route from #210 yesterday, so added that stuff here as well.
PR is here, if you want to add any related API changes @mbodeantor.


Missing dependencies

Hi!
While installing version 3.0.1 from PyPI, I've found that these packages need to be added to requirements.txt and install_requires=[...] in setup.py:

python_jwt
gcloud
sseclient
requests_toolbelt

These are runtime dependencies of python-firebase and need to be installed together with it. Otherwise, the package installs "successfully" but doesn't work:
ulidtko@pasocon /tmp> python -m venv test
ulidtko@pasocon /tmp> cd test
ulidtko@pasocon /t/test> source bin/activate.fish
(test) ulidtko@pasocon /t/test>
(test) ulidtko@pasocon /t/test> pip list | grep firebase
WARNING: You are using pip version 20.1.1; however, version 20.2.1 is available.
You should consider upgrading via the '/tmp/test/bin/python -m pip install --upgrade pip' command.
(test) ulidtko@pasocon /t/test [0|1]>
(test) ulidtko@pasocon /t/test [0|1]> pip install firebase
Collecting firebase
  Using cached firebase-3.0.1-py3-none-any.whl (18 kB)
Collecting requests
  Downloading requests-2.24.0-py2.py3-none-any.whl (61 kB)
     |████████████████████████████████| 61 kB 173 kB/s
Collecting certifi>=2017.4.17
  Downloading certifi-2020.6.20-py2.py3-none-any.whl (156 kB)
     |████████████████████████████████| 156 kB 4.2 MB/s
Collecting idna<3,>=2.5
  Downloading idna-2.10-py2.py3-none-any.whl (58 kB)
     |████████████████████████████████| 58 kB 5.9 MB/s
Collecting urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1
  Downloading urllib3-1.25.10-py2.py3-none-any.whl (127 kB)
     |████████████████████████████████| 127 kB 10.9 MB/s
Collecting chardet<4,>=3.0.2
  Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
     |████████████████████████████████| 133 kB 10.4 MB/s
Installing collected packages: certifi, idna, urllib3, chardet, requests, firebase
Successfully installed certifi-2020.6.20 chardet-3.0.4 firebase-3.0.1 idna-2.10 requests-2.24.0 urllib3-1.25.10
WARNING: You are using pip version 20.1.1; however, version 20.2.1 is available.
You should consider upgrading via the '/tmp/test/bin/python -m pip install --upgrade pip' command.
(test) ulidtko@pasocon /t/test> python -c 'import firebase'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/tmp/test/lib/python3.8/site-packages/firebase/__init__.py", line 14, in <module>
    import python_jwt as jwt
ModuleNotFoundError: No module named 'python_jwt'

As a workaround, hand-installing the dependencies helps. However, installing deps is a job of pip, not of the user. If you add the deps into setup.py, pip will install them together with python-firebase fixing the issue.

which version of python_jwt does it install?

indeed

@b4oshany what do you mean? which "the" version number?
You can find all past released versions of python_jwt here: https://pypi.org/project/python-jwt/#history

@b4oshany,
If what you're asking is "which version should I put into requirements.txt" — then the best answer would be python_jwt < 4.0.0.
Please see https://semver.org
python_jwt version 3.2.6 worked fine for my limited testing at the time. 3.3.0 is already available.
python-firebase should allow free choice of dependency versions (i.e. python_jwt==3.2.6 would be bad) — except for major updates. Per SemVer convention linked above, major version bumps signal breaking changes: as a consumer of that library, you might need to change the code before it works with (hypothetic currently) python_jwt 4.0.0.
Same goes for the other dependencies.
python_jwt < 4.0.0
requests_toolbelt ~= 0.9.1
sseclient ~= 0.0.26
gcloud == 0.18.3 # FIXME abandoned since 2016, https://pypi.org/project/gcloud/

Roughly this, as a first sketch.
Let me know if you want to see this as a PR.


Receiving Invalid isoformat string error on upload

Describe the bug
When trying to upload a folder, receiving ValueError: Invalid isoformat string: '2024-02-03T07:58:54.730474Z' on upload_sessions.py#L149.
This might be not directly related to the sdk. Perhaps the API response format of the date changed?
To Reproduce
Run upload via the cli.
Expected behavior
Run without encountering this issue.
Checklist

[x] I added a label for the level of urgency of this bug (see definitions here)

Hey @bglearning does this PR https://github.com/deepset-ai/deepset-cloud-sdk/pull/156 fix your issue?

Yup, it does!


feat: update ticker AXONE

Update ticker name with AXONE.

Summary by CodeRabbit

Documentation

Corrected the token name from $AXON to $AXONE across various documentation pages to ensure consistency.
Updated the utility description and implications of price volatility for the $AXONE token within the FAQ section.
Introduced a tax on value-creating network activity in the AXONE Token Model to secure the network and potentially decrease the long-term supply of $AXONE tokens.

@coderabbit pause


better cleanup of failed variant installs

Currently a variant install/release goes something like this:

PackageRepository.pre_variant_install() is called, which creates a file like <repopath>/mypackage/.building1.0.0. This file indicates that mypackage-1.0.0 may be in the process of being installed. When rez sees this, it doesn't assume that the presence of a 1.0.0 directory means that that package exists - it checks the package.py and properly verifies (if package.py is present, then the install was successful, because this is done last).
After the variant is installed, this .building file is removed.
If the variant failed to install (failed build, or failed tests), the .building file is left in place.

The problem with this is, for newly installed packages, a failed variant install will leave the invalid 1.0.0 directory behind. This doesn't cause a problem, because the .building file remains as well, but it forces rez to do further checks and it pollutes the package repo with incomplete releases.
We need to update this process in a way that deletes these incomplete package version dirs, but in a way that is safe if multiple rez procs were installing variants of the same package at the same time. One way this might work is like so (note that this suggestion is to go along with the existing .building file behaviour, not to replace it):

When a new package is installed, a lockfile is acquired by the current proc.
During this lock, the version dir is created. Within the version dir, another file is created, which is unique to this proc (perhaps just a UUID, or based on hostname+pid).
If it comes time to cleanup a failed variant install, the following occurs:

we acquire the same lockfile again
we remove our unique proc file
if there are no unique proc files left, we delete the package version dir

On successful variant install:

we acquire the same lockfile
we remove our unique proc file

This should mean that procs can delete failed variant installs to new package dirs safely.
Note: There's always a chance that a rez proc will abort during the variant install for unexpected reasons. In this case, the unique proc file would stay present, and the package dir would never be cleaned up. However this would still be better than the current situation, where a failed new variant install always leaves the incomplete new package version dir behind.
Note: Currently failed variant installs do clean up their payload install (ie variant root path), but they do not clean up the hash_variant shortlink, if it is present. This is a separate but related bug.

Related to #536
A note on the potential proc file left-over: If its key really is hostname+PID then and future rez build from the given hostname is able to determine if the PID is present and clean up the stalled/failed proc file if necessary safetly (also acquiring the lock). It's not perfect but better then nothing.
I guess we could go as far as having a clean command that explicitly does this - safely only if the hostname matches as described above or via --force regardless of hostname (latter would break running builds on other hosts, but still better then manually fixing the files if one can guarantee that there is no release process happening, e.g. in a central build coordination system).


[v6 rc4] Question: dispatch actions onBlur to increase form speed

Is there anyway to change default behaviour for form, to dispatch actions not onChange event, but after onBlur event.
I can't find this in documentation anywhere, but I've seen few people mentioned this ability in other issues.
Currently my form contains 36 fields, and it's pretty slow. So I was thinking about how to improve performance
Thanks in advance

Remember to test with the prod build of react, makes a massive difference.
I think you only need to apply the onChange on blur thing you mentioned to
text inputs and text areas.
Have a look at this gist:
https://gist.github.com/kristian-puccio/3a03b96109331c13e6cdf37aead958b1
Basically I'm ignoring the onChange and dealing with that only inside the
class. The onBlur triggers as per normal.
On 17 August 2016 at 20:26, Vladimir Dralo<EMAIL_ADDRESS>wrote:

Is there anyway to change default behaviour for form, to dispatch actions
not onChange event, but after onBlur event.
I can't find this in documentation anywhere, but I've seen few people
mentioned this ability in other issues.
Currently my form contains 36 fields, and it's pretty slow. So I was
thinking about how to improve performance
Thanks in advance
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/erikras/redux-form/issues/1551, or mute the thread
https://github.com/notifications/unsubscribe-auth/ACA_f1wjLEUf6vsxvO4WDggkYTAPJyuSks5qguG9gaJpZM4JmTi9
.

Great! Thans for tip


improve usability of telnet Controller

Explore enhancing the telnet Controller with rustyline, maintaining a command history and allowing up-arrow to load the last command, etc.

It seems that rustyline currently assumes command line interface operates on standard input/outout. In order fo us to use it they would need to support arbitrary streams. I opened an issue to see if that would be an option.
kkawakam/rustyline#542

Also asked the same question in two other similar libraries (murarth/linefeed#73 and https://gitlab.redox-os.org/redox-os/liner/-/issues/14).


On opening MS SQL Server view: 'There is no text for object'

Whenever we open a view against MS SQL Server, we get the attached error message. It says that there's "no text for the object". The details say exactly the same. When we click OK, everything works fine.
Do you know what causes the error, and what might be done to resolve it?

Issue isn't reproducible.
Ticket closed


Github CI to generate the build files instead of checking into version control

see https://create-react-app.dev/docs/deployment/#github-pages

Is the purpose of this issue to not have to run npm run deploy manually?
This link does not mention anything about continuous integration with GitHub pages. Or should I set up continuous delivery using e.g. Netlify?
Or Do you mean I have to do this: https://medium.com/front-end-weekly/ci-cd-with-github-actions-to-deploy-on-github-pages-73e225f8f131

Ah yes, I meant https://medium.com/front-end-weekly/ci-cd-with-github-actions-to-deploy-on-github-pages-73e225f8f131 , I C-P'd too fast :)


Use http method names to distinguish duplicate operations

When generating C# client from yml document for a typical REST api that contains paths:
GET person
POST person
DELETE person

the generated client contains methods
Person1Async()
Person2Async()
Person3Async()

I think this is pretty common case and the http mehod name could be used to distinguish the duplicates

There are two points to note:

A document with missing operation IDs is invalid - so this operation id generator is in theory not even needed/"allowed"
This is potentially a breaking change for some users (this is my biggest problem)

Maybe we should first exactly define how we generate operation IDs - for example NSwag generates operation IDs in ASP.NET Core as "controller_method" (e.g. "BusinessProcess_Search") so I'd prefer a similar form here.

Initially I agreed with @mirroj, also wanting my generated client method names to start with the HTTP method.
The response from @RicoSuter about operation ID lead me to read some more about OpenAPI, as I knew nothing about operation ID.
At my company we are using Swashbuckle to generate Swagger documentation from server, and then NSwag to read the documentation and generate client classes.
When generating a Swagger document with Swashbuckle it does not out of the box add operation IDs. An I can not see that this violates the standard either. The field for operationId is not required in the specifications: http://spec.openapis.org/oas/v3.0.2#fixed-fields-7
Nevertheless when having a document with well formed operation IDs, I manage without using HTTP method names when generating the client - as I already can have the HTTP method names in the operation ID.
But often I am not the owner of the Swagger document, and then I might have to generate client code without operation IDs, and then the issue gets important again.
Maybe add method names when there are no operation IDs present?

Cant you just use a path based operation name generator setting?

@RicoSuter you mean the settings "operationGenerationMode": "SingleClientFromPathSegments", right. I haven't know it exists when I created this issue. It did the job for our purposes. We have a long path, so the generated method name is longer but it does have the HTTP method appended. It's definitely better than Method1, Method2


Add async version of wait, add run and asyncRun

HBApplication.wait stalls the thread it is running on. If that thread is used by the task executor it will mean running Tasks could stall. This PR adds asyncWait to run application on a separate DispatchQueue.
Also added a run and asyncRun which are combinations of start and wait/asyncWait

@Joannis is there any issue with #242. Merging that should fix the CI for this PR


Minor fixes/improvements in scene_parse_150 card

Add paperswithcode_id and fix some links in the scene_parse_150 card.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


[BUG] - cabal build all failed due to missing dependency random-shuffle-0.0.4

Internal/External
External
Area
Other
Summary
Error building cardano-node and others
Steps to reproduce
Steps to reproduce the behavior:
Following this installation guide: https://github.com/input-output-hk/cardano-node/blob/master/doc/getting-started/install.md/
Eventually cabal build all reaches this error:
Failed to build moo-1.2. The failure occurred during the configure step.
Build log (
/home/tcross/.cabal/logs/ghc-8.10.4/moo-1.2-125131df2cbab40b7e1c19c46e31a343b23609ff571a805860e41d06422246e1.log
):
Configuring library for moo-1.2..
cabal-<IP_ADDRESS>: The following package dependencies were requested
--dependency='random-shuffle=random-shuffle-0.0.4-c93d3e143a1e42bf13882e71847d3467d60480d4e673463bb1daaa75a3c0e369'
however the given installed package instance does not exist.

Failed to build statistics-linreg-0.3. The failure occurred during the
configure step.
Build log (
/home/tcross/.cabal/logs/ghc-8.10.4/statistics-linreg-0.3-a62a672b50787f22d30f77f76de68a1377d4b6de02ea27b892a69c109fc926af.log
):
Warning: statistics-linreg.cabal:46:67: version operators used. To use version
operators the package needs to specify at least 'cabal-version: >= 1.8'.
Warning: statistics-linreg.cabal:5:8: Tabs used as indentation at 5:8, 8:10,
9:8, 10:10, 11:8, 12:10, 13:8, 14:10
Configuring statistics-linreg-0.3...
cabal-<IP_ADDRESS>: The following package dependencies were requested
--dependency='random-shuffle=random-shuffle-0.0.4-c93d3e143a1e42bf13882e71847d3467d60480d4e673463bb1daaa75a3c0e369'
however the given installed package instance does not exist.

cabal: Failed to build moo-1.2 (which is required by test:cardano-api-test
from cardano-api-1.29.1 and test:cardano-cli-test from cardano-cli-1.29.1).
See the build log above for details.
Failed to build statistics-linreg-0.3 (which is required by exe:tx-generator
from tx-generator-1.29, test:test from trace-forward-0.1.0 and others). See
the build log above for details.

Expected behavior
The build succeeds with binaries to run Cardano executable
System info (please complete the following information):

Ubuntu
20.04
Cabal version: <IP_ADDRESS>
GHC version:  The Glorious Glasgow Haskell Compilation System, version 8.10.4
git branch

(HEAD detached from 1.29.0)

Screenshots and attachments
Additional context
This is being compiled on a raspberry pi 4 8GB with a SSD Swap partition

There has been an overhaul of how we do dependencies with cardano-haskell-packages.
I don't think this happens anymore.  Please re-open if it is not fixed.


[BUG] Video stops playing on iOS when it leaves the field of view (lack of consistency with Android)

I have placed the YouTube widget inside a scrollable Column and it plays inline with text very well.
On android, if you play the video and scroll the content and the video scrolls off the screen, it will continue to play with the audio in the background, even though the video can't be seen (as it was scrolled off screen).
On iOS, the behavior is different, the moment it is no longer visible on the screen, the video will stop.  If the video is scrolled back into the screen, it is paused at the time when the widget was scrolled off the screen, so I don't think its an issue of the widget rebuilding, but some difference in the framework between iOS and Android implementations

Seems like the issue is related to how platform view are created in Flutter. Can do nothing.

Hi, I had the same issue and try many solutions but not work.
Does anyone solve this issue? @sarbagyastha  @mark8044


Registering BridgeStan.jl?

Are you interested in adding BridgeStan.jl to the general Julia registry? This would make it easier for downstream packages like StanSample.jl to make sure they maintain compatibility with BridgeStan, since they could add BridgeStan as a dependency with version bounds. e.g. recently BridgeStan.jl dropped support for Julia versions older than Julia v1.8, which caused StanSample to break when BridgeStan was available and included.
I think the main challenge here is making sure that BridgeStan.jl has access to the rest of the bridgestan repo. Registering the package directly from the BridgeStan subdirectory wouldn't package its parent directory with it.
But it should be fairly straightforward to support this by making the tarball associated with the most recent bridgestan GitHub release an Artifact. Upon BridgeStan.jl installation, the tarball is automatically downloaded and extracted and the path is made available to BridgeStan.jl. The tarball also contains all git submodules. This is, for example, how PosteriorDB.jl interacts with posteriordb.
When a major change is made to bridgestan, the process for updating BridgeStan.jl would be 1) make a GitHub release (generates the tarball) 2) update an Artifacts.toml file in BridgeStan.jl. 3) register a new BridgeStan.jl. Step 2 can be automated.
If you're interested in this, I could open a PR to set up the artifacts.

We decided fairly early on that this wouldn't be a priority for us, but it also isn't something I am personally opposed to. I believe we would also be able to do something similar for Python, but I don't think we have any intention of ever trying to wrangle this onto CRAN, so we'd have to be okay with very different installation instructions depending on language

I agree with Brian on all accounts.  I also think it would be a little awkward to have registered packages for Julia and Python, but not for R.  Though I could get over this.
@bob-carpenter, what do you think about having registered packages for Julia (and possibly Python), but not for R?  Are you against having different installs for different interfaces?

what do you think about having registered packages for Julia (and possibly Python), but not for R?

I have no experience with Julia.  I'm OK registering Python.  My advice is to avoid CRAN at all cost, but if someone else wants to deal with that pain, I won't stop you.

Are you against having different installs for different interfaces?

I don't see how they could be the same, so I'm not against them being different.

Ok, let's try.  Seth, you want to give this a go?  My only request is no added dependencies.

I’d also love if as much as possible it was doable in a push-button way from a GitHub action. If/when I get around to packing in python that will be my target

Ok, let's try. Seth, you want to give this a go? My only request is no added dependencies.

Sure! I've opened a PR at #70. No problem, no additional dependencies needed.

I’d also love if as much as possible it was doable in a push-button way from a GitHub action.

Agreed! It's pretty easy for registration to be push-button (already in #70). Keeping the artifact up-to-date can also be done this way (as in PosteriorDB), but it requires some more assumptions about what future releases of bridgestan will look like.

@sethaxen you can now monitor https://github.com/JuliaRegistries/General/pull/76783
Thanks for the help with this!

Excellent, thanks!


[ bump ] Update deprecated CI actions and use newer linter version

This is a technical stuff, originated by deprecation warnings shown by GitHub Actions and breaking changes in the upstream actions behaviour
EDIT: current problems are in liniting of the Dockerfile. Both problems are reasonable, but the first one maybe should be suppressed, since doing things properly will break everyone's usage of the pack's docker image for those who set PACK_DIR to /root/.pack manually.
EDIT2: ...but doing things properly will make transition from other's idris-containing images to the pack one seamless, without a need to reser the variable
EDIT3: maybe, we can make a proper user, and just add a symlink of /root/.pack to /home/<pack-user>/.pack for the seamless backwards compatibility. Also, setting PACK_DIR in the docker file seems to be a good idea, to not to make users to do the same thing again and again.

What is the reason for turning off the max line length in .editorconfig?

What is the reason for turning off the max line length in .editorconfig?

It is turned off only for expected golden files, because it seems to be useless to require this.
You can see that I added your requirement on the length of 80 to all other files in the top of the editorconfig, but it turned out that most of the files currently do not fulfill this, so I commented it -- either all files should be reformatted in a separate PR, or the requirement should be revised.

I'll merge this, then. Thanks for taking care of this.

I'll merge this, then. Thanks for taking care of this.

Oh, thanks, but it seems I wasn't clear enough -- I planned to sort out dockerfile-related stuff, but I didn't manage to finish this yesterday. Anyway, I'll do a separate PR fixing linter problems for the dockerfile.


Fix encoding of images in HTML reports

After an ARMI run, none of the images in the reports/*html are
valid. Looking at the leading string in some of the reports, I see
data:image/jpg;base64,b'/9j/4.... When I pipe the output of the
image through base64 and paste that into a browser after
data:image/jpg;base64, I see data:image/jpg;base64,/9j/4A... and
the image is displayed.
This decodes the binary string after base64 encoding to remove the
leading b' in the string representation.

Good catch. Some meta here is that the report functionality used to be pretty slick, but did not fare well when we decoupled/removed the ARMI framework from our monolith. Should habe an intern working on getting reports back on their feet this summer, so stay tuned!


Settings API simplification

Description of the new feature / enhancement
You have to manually reimplement Properties classes with all its fields, default values and json (de)serlialization logic at least in 3 places for each module. That creates a lot of manual coordination that could be a source of bugs.
For an example, see:

src\settings-ui\Settings.UI.Library\ViewModels\MeasureToolViewModel.cs
src\settings-ui\Settings.UI.Library\MeasureToolProperties.cs
src\modules\MeasureTool\MeasureToolCore\Settings.cpp
src\modules\MeasureTool\MeasureToolCore\Settings.h

Scenario when this would be used?
This applies for developing/supporting any module, especially written in C++.
Supporting information
https://github.com/microsoft/CsWin32/ could be used to investigate code generators.

Yes please. It really is too complicated

@Aaron-Junker feel free to mention here any other pain points you've noticed while working with them - any examples/links would be also great.

Could it be an option to use C# source generators to just generate the source code out of the XAML code. So that things like the json name of the setting is saved in a costum xaml field.
So for example:
<labs:SettingsCard ContentAlignment="Left">
    <CheckBox
        x:Uid="AlwaysOnTop_GameMode"
        IsChecked="{x:Bind Mode=TwoWay, Path=ViewModel.DoNotActivateOnGameMode}" />
</labs:SettingsCard>

and the whole c# code logic are just reduced to:
<labs:SettingsCard ContentAlignment="Left">
    <CheckBox
        x:Uid="AlwaysOnTop_GameMode"
        pt:propertyName="DoNotActivateOnGameMode"
        pt:defaultValue="true"
        pt:jsonName="do-not-activate-on-game-mode"
        pt:jsonType="bool" />
</labs:SettingsCard>

And then the whole c# code to this is just generated automatically.
Thoughts?
cc: @jaimecbernardo @niels9001


Return five node example to previous behaivor.

Returns to the behavior from when it was introduced in #171 .
Should fix #205.
@hicqu PTAL. Also, it seems that the example doesn't exit quickly?

can we add this to CI?

@hicqu PTAL. Also, it seems that the example doesn't exit quickly?

@Hoverbear It seems that the example is designed to not exit unless an error occurs.

The example looks like it's designed to stop main.rs#L117 but this will never happen, as the spawned threads will only finish when all channel transceivers get dropped main.rs#L71 which will never happen as the nodes are holding transceivers to all other nodes itself. I would suggest removing the joins at main.rs#L117 and just let the operating system clean up the threads when running the example...

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: hicqu:x: HoverbearYou have signed the CLA already but the status is still pending? Let us recheck it.

@fin-ger seems we can do that for now, although it's still not gracefully.

I make a tiny change following @fin-ger 's suggestion. PTAL @Hoverbear thank you!


🐛 Bug Report: Logo section at the bottom page overlap with mac's dock

📜 Description
The Let's connect and Contribute section at the bottom page of /myteam is very hard to click on when you're on a mac since it will most likely overlap with the dock. See the video attached below
👟 Reproduction steps

Go to https://www.hacksquad.dev/myteam
Scroll to the bottom page

👍 Expected behavior
Should have some spacing at the bottom of the page. Also the github logo appear to be smaller than the others 2.
👎 Actual Behavior with Screenshots
https://user-images.githubusercontent.com/58499300/196206768-dba9e482-36f5-46b1-be11-201e17205f93.mp4
💻 Operating system
MacOS
🤖 Node Version
16
📃 Provide any additional context for the Bug.
I want to work on this issue.
👀 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?
Yes I am willing to submit a PR!

Hi @Manethpak there is already an issue opened for it #8 🙏

@TheLearneer Oh, my bad! I didn't see the issue because the title were related to something else.