[oCIS FS] clean up aborted uploads

Is your feature request related to a problem? Please describe.
When using oCIS FS as users storage, you will have an storage/users/uploads directory in your oCIS data folder. This is an intermediate directory for resumable (TUS) uploads. Each upload consists of a blob file and a blob.info file. If an upload succeeds, the blob file will be moved to the target and the blob.info file will be deleted.
Uploads can be aborted and the blob and blob.info files will not be (re)moved in that case. Therefore a lot of data can pile up.
Describe the solution you'd like
oCIS FS cleans up expired uploads by it self.
Describe alternatives you've considered
oCIS offers a command to clean expired uploads, which can then be used for manual maintenance or a regular clean up (eg. scheduled by cron)
Additional context

I think that's something reva should do. I mean, I don't see any reason this couldn't happen with any other storage backend. Maybe other storage implementation keep the chunks in a different storage area, but that doesn't mean that such storage area couldn't be filled.
I'm not sure about specific implementation details in reva, but I think it should provide a service that runs periodically to cleanup uploads after 1-2 days (configurable).
A possible idea is that reva could have a dedicated thread to cleanup the uploads.
When a new upload is started, the upload information (and anything needed to delete the upload) is sent to the cleanup thread along with the timestamp. Once the upload finish successfully, we can tell the cleanup thread to remove the information about that specific upload.
The cleanup thread is expected to "run" each 10 minutes (configurable), and remove the uploads that have been stalled for 1-2 days (also configurable).
During the startup, the cleanup thread can read the FS to see what files are being uploaded, but after that, the thread shouldn't need to check the FS

If it needs to be implemented as a command then we would either have to implement storage specific mechanisms in the command or include a generic 'clean up' API to the CS3 API to be able to replace the underlying storage.

@C0rby I don't really understand how we can do this without a command (or an API). Should we just start a go-routine that cleans up upload data?  Can you elaborate what you have in mind?

Well, it could be the responsibility of every storage driver to implement a clean up mechanism. Then the storage driver itself would run an asynchronous goroutine or something else.

But how would that go-routine know that it has something to do? It would just sleep for 10mins and then check?

I'd say this depends on the implementation but yeah something like that.

Beneficial in that would be that we could also run it manually (on systems with low power for example)

Yeah I see the benefits. That also means that we need to add a ListUploads method or something similar to the CS3 APIs. Which we might need anyways when I think of async uploads.

I'd say this depends on the implementation but yeah something like that.

Basically the upload is cleaned correctly (in success or error case or when the user aborts the upload). The upload is only left if the user pauses the upload (and never restarts) or maybe on some connection issues. So my point is: I'm not sure if this is worth having a go-routine running all the time. CPU time costs money also. But I'm fine with both approaches, both have their benefits.

I see your points. I'd also say for the decomposedfs it would also be enough to have a cronjob running a bash script using standard tools since the decomposedfs are just plain files. But for other storages this might not be sufficient so we probably end up having to implement an API.

I think we can keep it internal to the each storage implementation.
When the storage starts, a go-routine can also start to perform the cleanup of the uploads. This go-routine will behave cron-like, so it will be slept for the most time and run each 15-30 minutes (or something configurable). The CPU usage should be close to 0 when it's sleeping.
The communication between the storage and the go-routine will be via shared memory. The idea is that a list / map / custom object is shared between the storage implementation and the go-routine, so when the upload starts the required data is written in that shared object and it will be removed when the upload finished correctly. When the go-routine wakes up, it might see that there is an upload ongoing by checking the shared object, so depending on how much time the upload has been there it can decide to clean it up.
Assuming the shared data is sorted by timestamp, the go-routine can check the first entry and decide to do nothing because the upload started (or has been updated) a few minutes ago, so there is no need to check more because the remaining uploads will be more recent. This means that the go-routine won't need to check thousands of uploads but just a few of them.
The advantages I see are:

oCIS won't notice anything, so there is no code change to be done there.
CS3 APIS remain without any change.
Cleanup should be quite efficient:

Code will run very close to the storage, so there should be very few overhead.
It can use FS-specific calls that might not be available everywhere.
The storage implementation is expected to know how the upload is handled (temporary file location, chunk handling, etc), so the cleanup can take advantage of this knowledge to be efficient.

It won't require additional setup (maybe some configuration)

There might be some corner cases, but in general it seems a good idea.

Please keep also in mind that we have multiple instances of the storage service running. So we have a good chance of running multiple cleanups in parallel then. Don't know if that could cause problems.

The go-routine will monitor the uploads going through the storage instance that has spawned it.
I'm not sure it should do that. It would need to persist data in case it gets restarted. I would suggest it just goes through all uploads and decides whether it should remove it or not through the .info file.
@wkloucek I assume all those storage services running would look at the same volume? So we could indeed run into multiple cleanup jobs on the same upload at the same time.

I would suggest it just goes through all uploads and decides whether it should remove it or not through the .info file.

I'd prefer to keep it as a recovery mechanism in case the service crashes. Without having any limitations around uploads nor users, there could be thousands of uploads at the same time. Having to scan all the uploads can take a lot of time, so I don't think we should do that by default.
By using shared memory (I'm talking about a shared object between the instance and the go-routine, not something like IPC), the go-routine doesn't need to constantly check the FS, and all the info it needs is already in memory and accessible. In addition, as said, the algorithm can be quite efficient, leading to a low CPU usage by the go-routine.

Uploads in oCIS should:

directly write to the target storage, to avoid cross storage moves
be resumable at every instance of the service. Therefore we don't need sticky sessions and users have no degraded upload experience if an instance of a service dies.

Since oCIS is a distributed system we cannot rely on shared memory. We only have shared storage.
All state needs to live on the storage. We cannot keep things in memory.
I would go for a manual command first.
That can be schedule as needed.
Ideally two parallel cleanups would not conflict with each other. Means it would give warnings like "upload xyz was scheduled to be cleaned, but disappeared in the meantime", but would not fail hard because of disappeared upload.
The cleanup tool needs to inspect the .info files for when the upload expires and only delete it after expiration. We could also add a force flag which also deletes uploads before expiry (needs some filter mechanism).

upload expiry is actually a TUS extension that we should implement: https://tus.io/protocols/resumable-upload.html#expiration

reva has to announce an Upload-Expires header in RFC 7231 datetime format, eg: Upload-Expires: Wed, 25 Jun 2014 16:00:00 GMT
we should make the timeout configurable per storage provider, maybe even per space, per storage provider is good enough for now
the storage provider could start a cleanup job that remembers uploads and removes them when they expire ... it should be automatic.
for cleanups a cli command to manage current uploads would be nice, as in list and delete commands


Update dark.tcl

Hovering over the switch (when it was on) looks the same as when it was off. This fixes that. Now you the switch doesn't change color when are hovering over it, but it is better overall.

If you wanted, the hover could be a third color.

Thanks!


Question: Determine source provider from final hydrated section

As part of a new CMS, I'm exposing an admin function which provides a read-only view of the complete configuration tree (root through to all sections recursively). As my configurations are built dynamically, it would be useful from a sysadmin perspective to see the source configuration provider for a given IConfigurationSection. Is this currently possible? Would it be possible to add a property to IConfigurationSection which returns the IConfigurationProvider?
I'm conscious that returning the IConfigurationProvider exposes the state-changing operations, so perhaps a better idea would be to simply expose a string property for ProviderType? To extend this, if my items are coming from a source-based configuration (like a file, database), I'd like to at least get an indication of this, so maybe a mixture of ProviderType and ProviderSource?

@Antaris

Would it be possible to add a property to  IConfigurationSection which returns the  IConfigurationProvider?

It is not exposed with the current design. Keep in mind that the value of each individual configuration key inside a IConfigurationSection can come from a different provider so for what you want to work you would need to be able to interrogate for the source by key, e.g. think GetSourceProvider(string key).
Being able to trace the source of a configuration value seems an interesting admin scenario and the implementation actually wouldn't be hard, although it would probably couple IConfiguration more to IConfigurationProvider.
I am not sure whether we should build that capability into the runtime or whether we should leave it as an exercise for tools like yours, e.g. if you could get access to the list of configuration providers then you could walk the list of providers in reverse order, try ask for the value of the key and return the first provider that succeeds.
@lodejard, @kirthik any thoughts?

Triage: not planning on doing this


Add Accounts section

Could you add an accounts section?
to being able to connect to external git providers like Bitbucket, and from the same app choose a repository?

I'm very sorry, but there are currently no plans to add such a feature.


Wrong link

https://github.com/mia-platform/design-system/blob/71579f344b5036bbcd222d01ed5592f0379b7cd8/src/themes/schema/typography.ts#L31C70-L31C70
Current link is pointing to "font size" section;
correct link could be: https://developer.mozilla.org/en-US/docs/Web/CSS/font-style

Fixed in #118


style update add z-20 tailwind class to mobile-nav component

✨ Codu Pull Request 💻
Fixes #(issue)
#1123
Pull Request details
Increased the z-index to be above the Codú logo

INFO ABOUT YOUR PULL REQUEST GOES HERE (Please be as descriptive as possible) 🤜
Use bullet points to make it easy to read.

Any Breaking changes
I REALLY HOPE NOT (really hope not)
Associated Screenshots
Before:

After:

Awesome work @Shane-Donlon
Congrats on your first commit 🥳


improve readme.rst

You should start using semantic commit message.
docs(readme): add link section
`ci(workflow): add semantic-release task


this.nav.setRoot('Page') == Cannot read property 'getActiveChildNavs' of undefined

Ionic version:  (check one with "x")
[ ] 1.x (For Ionic 1.x issues, please use https://github.com/ionic-team/ionic-v1)
[X] 2.x
[X] 3.x
I'm submitting a ...  (check one with "x")
[X] bug report
[ ] feature request
[ ] support request => Please do not submit support requests here, use one of these channels: https://forum.ionicframework.com/ or http://ionicworldwide.herokuapp.com/
Current behavior:
I open a page which is not on my home page tab bar and then I get this error.

Expected behavior:
I get no error.
Steps to reproduce:
Hard to explain.
Button: (click)="openPage(page)"
Function:
openPage(component) {
    this.menu.close();
    this.nav.setRoot(component);
}

Ionic info::
cli packages: (C:\xampp\htdocs\node_modules)

    @ionic/cli-plugin-cordova       : 1.6.1
    @ionic/cli-plugin-ionic-angular : 1.4.1
    @ionic/cli-utils                : 1.7.0
    ionic (Ionic CLI)               : 3.7.0

global packages:

    Cordova CLI : 7.0.1

local packages:

    @ionic/app-scripts : 2.1.3
    Cordova Platforms  : none
    Ionic Framework    : ionic-angular 3.6.0

System:

    Android SDK Tools : 25.2.5
    Node              : v6.9.1
    OS                : Windows 10
    npm               : 5.3.0

Is there an active ion-nav components?

Yes, @AmitMY, there is one.
<ion-nav [root]="rootPage" main #content swipe-back-enabled="true"></ion-nav>

It seems to be a problem of a used component:
https://github.com/zyra/ionic2-super-tabs/issues/117
https://github.com/zyra/ionic2-super-tabs/issues/135
https://forum.ionicframework.com/t/ionic-3-6-0-getactivechildnavs-of-undefined/100810

if you have <super-tabs [selectedTabIndex]="selectedTabIndex"></super-tabs> , in your typescript file, you have to initialize this selectedTabIndex to 0, otherwise you would get this error

@albrecht-jun-zhang it does't work for me.
i get this error when i push back to a super tab page


Deprecate Aggregator.getName and AggregatorFactory.getAggregatorStartValue.

Partial rework of #3387, plus deprecating AggregatorFactory.getAggregatorStartValue too. Neither was really used for much. This deprecates rather than removes the functions, to prevent errors for people that have implemented custom aggregators.
From the original PR, this can also help quite a bit with memory use of OnheapIncrementalIndex when there are a large number of aggregators. https://github.com/druid-io/druid/pull/3387#issuecomment-241600279

@leventov @nishantmonu51 I raised https://github.com/druid-io/druid/issues/3588 and mentioned it in the javadocs for the deprecated methods.

rebased against master, although tests cannot pass until #3674 is merged.

rebased against master again.

👍


Improve user registration and management

I've posted several tickets related to user management (#436, #444, #446, #447) but those are primarily visual design improvements, although they also should clarify the user experience around user features a bit.
I wonder if this ticket was motivated by other user registration and management concerns, and if so, what are they?
One possibility might relate to recent user roles and permissions discussions (#451); if we come up with a more refined roles and permissions model, that might require we revise how users are managed in the app (e.g., something more sophisticated than our current Site users page that admins use to add or revoke admin permissions). Is there anything else?

@ggeisler this was intended to capture in a very general way that user registration and management need refinement. I'm going to close this because the issues you've created (and #451) capture this in more detail (thank you!).


rm redundant colorflags

IIUC, since ls is already aliased to include the color flag, there's no need to include colorflag in subsequent aliases that invoke ls. (Tested on Catalina/Bash v5.0.0 and Ubuntu 19.10/Bash v5.0.3.)

Looks more DRY


Removing SBT compiler support for Scala filetypes

We could integrate it further, but the usage of SBT from within Vim is
really not a good idea.
It's far better to keep SBT running in a separate terminal using the
'~' modifier and letting it do what it does upon the writing of a file
from within Vim.

I'll include it.


Cannot set cancelUrl on the checkout page

on bottom left, we have the back button.
it redirects to redirectUrl which is wrong.
I think we need to set it on the cancelUrl but not sure how to set it using this package.
please help

solved:
$user
            ->newSubscriptionViaMollieCheckout('Packet A', 'Mini', [
                'cancelUrl' => 'http://mycancelurl.com'
            ])
            ->create();


API to read location message?

If someone sends a location message is there a way to decode it ? And I dont mean live location.

Solved .


v1.6.0 published on npm, but git repo shows v1.5.0 last year

This is the first time I've ever seen a new npm version without the changes being reflected in the git repo. Does the npm url link to the wrong git repo? I want to review the changelog before updating.
npm (v1.6.0 updated 4 sept 2019):
https://www.npmjs.com/package/react-visjs-timeline
Git repo (v1.5.0 updated "last year"):
https://github.com/Lighthouse-io/react-visjs-timeline

Looks like it's an update from depending on vis, to depending on vis-timeline - to coincide with the main vis package's EOL.
diff of the built index file from npm:
$ diff -u 1.5/node_modules/react-visjs-timeline/build/index.js 1.6/node_modules/react-visjs-timeline/build/index.js
--- 1.5/node_modules/react-visjs-timeline/build/index.js	2019-07-26 10:46:55.000000000 +1000
+++ 1.6/node_modules/react-visjs-timeline/build/index.js	2019-09-13 17:37:04.000000000 +1000
@@ -6,11 +6,11 @@

 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

-var _visTimelineGraph2d = require('vis/dist/vis-timeline-graph2d.min');
+require('vis-timeline/dist/vis-timeline-graph2d.min.css');

-var _visTimelineGraph2d2 = _interopRequireDefault(_visTimelineGraph2d);
+var _visTimelineGraph2d = require('vis-timeline/dist/vis-timeline-graph2d.min');

-require('vis/dist/vis-timeline-graph2d.min.css');
+var _visTimelineGraph2d2 = _interopRequireDefault(_visTimelineGraph2d);

 var _react = require('react');

which coincides with the new peer dependency warning for vis-timeline.
I'm going to guess the build was uploaded from the branch for PR #90 - not sure why it wasn't merged yet.

I decided to upgrade to v1.6.0 and it shows and error:
./node_modules/react-visjs-timeline/build/index.js Module not found: Can't resolve 'vis-timeline/dist/vis-timeline-graph2d.min' in…
It's not clear what else needs to be updated or if vis-timeline should now be a peer dependency or something.


Skip testWasm in CI if toolchain cannot compile for wasm

Not all CI jobs are capable of building for wasm, so we should be able to skip this job in Swift CI.

@swift-ci Please test

@swift-ci Please test Windows

@swift-ci Please test Windows


Add  ExposureNotificationCallbackBroadcastReceiver

// https://developers.google.com/android/exposure-notifications/exposure-notifications-api#methods
Add  ExposureNotificationCallbackBroadcastReceiver ACTION_EXPOSURE_NOT_FOUND
If possible, I think it is ideal to change the constant on the naitive side.

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


drivers: touch: esp32: update driver support

This PR updates the hal_espressif revision to restore touch_sensor support lost on hal side.
The PR also adds some .conf files to the input_dump sample to enable INPUT_ESP32_TOUCH_SENSOR parameter for Espressif boards.

@fabiobaltieri
The hal_espressif revision from this PR points to a different commit (in a different branch) that pointed by #79888, so I'll reopen #79888, remove backport v3.7-branch label from hera and add this label ther


No image is displayed for gitter

Not sure what is going on here, but the gitter tray icon is invisible

This seems to happen sometimes with electron apps because they change properties in the dbus interface without sending out the properties changed signal.


Menu ordering and definition in config.toml

This is how I solved issues (https://github.com/matcornic/hugo-theme-learn/issues/2) with menu ordering for one of my sites.
Example tree content:
content/
├── about
│   ├── content.md
│   ├── index.md
├── bar
│   ├── index.md
│   └── mode_bar.md
├── foo
│   ├── foo2.md
│   └── index.md
└── introduction
    ├── index.md
    └── blabla.md

Now if I want to have my menu ordered as:

about
introduction
foo
bar
all I need is to add 2 lines in config.toml:

createFromSiteMenusMain = true
[params]
  menu = [ "about", "introduction", "foo", "bar" ]

Hello @kamilchm , thanks for your PR.
Usage of your new feature is very straightforward, I like it. But, seeing the code, you force the user to declare the menu, so it breaks the theme for users that will update and not use menu param.
Could you adapt it to choose sections when there is no menu, and choose menu where there is ? Thank you very much.

Sure, I'll provide backward compatible implementation later this week.

This should now works in backward compatible manner. User can explicitly specify menu ordering in config.toml only when he needs it.


Mac download.dmg image not recognized

Describe the bug
After downloading and attempting to open the computer says the image is not recognized
To Reproduce
Steps to reproduce the behavior:

Go to http://openrefine.org/download.html
Click on Mac Kit 3.2
Download begins
See warning

Current Results
Image not recognized
Expected behavior
I expected installation to begin
Screenshots

Desktop (please complete the following information):

OS: iOS 10.14.6
Browser Version: Firefox 68.0.1
JRE or JDK Version: JDK 12.0.2

OpenRefine (please complete the following information):

Version OpenRefine 3.2 and 3.1

Additional context
I just downloaded the JDK.

This might be due to the fact that the .dmg is not signed. Have you tried installing via Homebrew too?
Our install instructions for Mac are here:
https://github.com/OpenRefine/OpenRefine/wiki/Installation-Instructions#macos
You should not need the JDK on Mac to run OpenRefine as we ship one in the .dmg already.

Hi @tautme it looks like you are downloading to an iOS not a macOS device? Unfortunately we do not have a version of OpenRefine that will run directly on iOS

I can confirm I've been able to download and install the Mac version on macOS 10.14.5
@tautme you say the OS you are using is "iOS 10.14.6" - is that correct? (rather than a macOS?)

Just to add that I've now upgraded to macOS Mojave 10.14.6 and tried downloading  via Firefox 68.0.1 and running OpenRefine and it all worked for me. My Security and Privacy settings are to allow apps downloaded from App Store & Identified developers

I can confirm I've been able to download and install the Mac version on macOS 10.14.5
@tautme you say the OS you are using is "iOS 10.14.6" - is that correct? (rather than a macOS?)

using macOS, typo

Just to add that I've now upgraded to macOS Mojave 10.14.6 and tried downloading via Firefox 68.0.1 and running OpenRefine and it all worked for me. My Security and Privacy settings are to allow apps downloaded from App Store & Identified developers

my settings are also to allown App Store & Identified developers

This might be due to the fact that the .dmg is not signed. Have you tried installing via Homebrew too?
Our install instructions for Mac are here:
https://github.com/OpenRefine/OpenRefine/wiki/Installation-Instructions#macos
You should not need the JDK on Mac to run OpenRefine as we ship one in the .dmg already.

I was able to download OpenRefine with homebrew.


Event.target should deserialize as a DOMEvent element like relatedTarget

From the end of https://github.com/phetsims/scenery/issues/1296#issuecomment-942769661, it was strange that these behave so differently. Let's try to fix that. I think it would be best to have both try for the element, and get otherwise have a fallback that stubs getAttribute to support data-trail-id.

Looks like relatedTarget AND target are both getting done, just in different ways within Input.deserializeEvent.
https://github.com/phetsims/scenery/blob/27dbc30b5e70c937460cb3990c4e530501a47950/js/input/Input.ts#L2016-L2064
Closing


Viewing generated gltf model in AR?

Hey,
Is there a way to view javascript generated model in AR viewer? When I pass a gltf/glb file as Data URL to model-viewer it loads fine in the webgl viewer, but AR button navigates browser to about:blank#blocked.
Quick investigation makes me suspect that data url syntax is messing with the intent: link used to launch ArCore viewer. Is there any way to make dynamically generated gltf models work in AR or is that simply impossible?

Hey @MiikaH , this is not currently supported by Scene Viewer, and I don't think they plan to support it in the near future. Your best option is to save the generated model to a server that hosts it on a secure origin, and then when it has been saved, try to load it in Scene Viewer.


Implement Holt-Winters Methods.

Implement Holt's Trend (linear and damped) and Holt-Winters Seasonal Methods(additive and multiplicative) under smoothing.py.
-https://otexts.com/fpp2/holt.html (Holt's Trend methods explanation and equations)
-https://otexts.com/fpp2/holt-winters.html (Holt-Winters' Seasonal methods explanation and equations)

Trend and Seasonal methods have been implemented by @kilavuza, will merge after some refacturing.


How to use smartcrop-cli with php?

Can i execute smartcrop cli with php exec? It is not working for me

Yes, I'm fairly sure that's possible.
I haven't done PHP in at least 10 years so I couldn't tell you even if you provided me with enough information (which you have not). Please ask this question somewhere where people know PHP.


Move code that is only used in the tests

This is some cleanup for functions that are only used in the tests for the shims.

Hey, I went ahead and merged main branch. After the CI passes, I will merge this in


feat: new config to filter specific users from dropdown lists

SUMMARY
Introduces a new config key named EXCLUDE_USER_USERNAMES with a list of usernames to exclude from all UI
dropdown user list, owners, created by filters etc.
This is useful for excluding service user's like an initial admin and/or the thumbnail user.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

Should this be an attribute for the User model instead?

Should this be an attribute for the User model instead, or potentially a config/method in SecurityManager (which users can already override)? We should really try our best to reduce the number of config keys added plus setting this in config would also mean new service accounts cannot be added without a new deployment of Superset.

Very good point, an extra attribute for the User model could be tricky. I've chose to do both, config key and a security manager method to override. Config key if not None will take precedence.


lolex does not override jQuery's $.now

This isn't a lolex bug per se, but a gotcha that I wanted to report here just in case anyone else runs into it!
If you use jQuery 2/3, $.now() will not respect lolex's fake timer.  jQuery 1.x used to respect it.  This is because jQuery 2/3 captures a reference to Date.now at load time, before lolex gets a chance to stub it out.  You see results like this:
> Date.now()
< 36000000

> (new Date).getTime()
< 36000000

> $.now()
<<PHONE_NUMBER>858

The jQuery docs claim "The $.now() method is a shorthand for the number returned by the expression (new Date).getTime().", but that's not quite right - it's defined as now: Date.now, which captures a reference to the original unstubbed method.

Our workaround was a shim that forcibly reverts jQuery's logic:
// Revert jQuery.now back to its 1.x behavior, so that it respects lolex's fake timers
(function($) {
  $.now = function() { return +( new Date() ); };
})(jQuery);

OK, thanks for documenting it. Closing.


Subscription using https://pub.dev/packages/graphql

Hi, are there examples on how to setup and subscribe to graphql subscription using https://pub.dev/packages/graphql? Thanks!

Just found out myself how to do this. Use WebSocketLink instead of HttpLink:
GraphQLClient _client = GraphQLClient(
  cache: InMemoryCache(),
  link: WebSocketLink(url: "ws://foo.bar"),
);

final QueryOptions options = QueryOptions(
    documentNode: gql(<insert subcription query here>),
    variables: variables,
 );

final Operation operation = Operation.fromOptions(options);

final Stream<FetchResult> result = _client.subscribe(operation);

Hope this helps you in the right direction.

@phijma thanks!

Also note that on v4 it is important to split links by type: link = Link.split((request) => request.isSubscription, websocketLink, link);
see: https://github.com/zino-app/graphql-flutter/tree/beta/packages/graphql#composing-links


Training datasets detail of LibriTTS pretrained vocoders

Hi there, I am trying to use LibriTTS pretrained models (HiFi-GAN) as a base model to finetune with other datasets. I have found the pretrained models and its config.yaml in README.md.
May I ask the details of training dataset? Did the pretrained model use train-other-500 during training?  I see that part = clean is the default config in LibriTTS run.sh.

I think the pretrained model was trained by clean subset since I wanted to use the same condition as the text2mel model in espnet.


Camel Avro RPC extension: Investigate GenericDatumReaderSubstitute and refactor if it makes sense

Avro-rpc  extension contain substitution GenericDatumReaderSubstitute.
Reason for the substitution was not clear during creation. See PR summary
There is a possible explanation in the comment. (thanks @ppalaga !)
It is possible, that after finding real reason of requirement of this substitution, it could be refactored to much easier (also correct and more readable) solution.

Please, assign to me.

Problem is caused probably by static initialization of HANDSHAKE_READER in org.apache.avro.ipc.Requestor line 205
Ths field initializes SpecificDatumReader, which extends GenericDatumReader, which contains local variable stringClassCache. Which is null in native mode without this substitution.
`I'll try to search for the better solution then the current one or at least confirm rightness of the current solution.


Add ability to clean up old contacts

Description of change
This adds support for contacts to the delete_old_records management command.
The criteria for deletion are:

not modified since 22 July 2014
created more than ten years ago
if it has an archiving date, this is more than eight years ago
no interactions, investment projects, OMIS orders or OMIS quotes (we wait for those to expire first where they exist)

Checklist

[x] Has a new newsfragment been created? Check changelog/README.rst for instructions
[ ] Have any relevant search models been updated?
[ ] Have any relevant fixtures (fixtures/test_data.yaml) been updated?
[ ] Have any relevant select-/prefetch-related field lists in the views and search apps been updated?
[ ] Has the admin site been updated (for new models, fields etc.)?
[ ] Has the README been updated (if needed)?

Replaced by https://github.com/uktrade/data-hub-leeloo/pull/1277


[Skills] deployment script update

What project is affected?
All skills
What language is this in?
What happens?

As we have changed "collectionId" to "containerId" in appsetting.json, we need to change the filed in deployment template.json to be aligned with it. (also change "botstate-collection" to "botstate-container"?)

"cosmosDb": {
    "type": "object",
    "value": {
      "cosmosDBEndpoint": "[if(parameters('useCosmosDb'), reference(resourceId('Microsoft.DocumentDB/databaseAccounts', variables('cosmosDbAccountName'))).documentEndpoint, '')]",
      "authKey": "[if(parameters('useCosmosDb'), listKeys(resourceId('Microsoft.DocumentDB/databaseAccounts', variables('cosmosDbAccountName')), '2015-04-08').primaryMasterKey, '')]",
      "databaseId": "botstate-db",
      "collectionId": "botstate-collection"
    }
  },

change the  "group deployment" to "deployment group"

What are the steps to reproduce this issue?
What were you expecting to happen?
Can you share any logs, error output, etc.?
Any screenshots or additional context?

Update template first?
Found this https://github.com/microsoft/botframework-solutions/pull/3184/files
Also could copy and adapt the script to here https://github.com/microsoft/botframework-solutions/blob/master/tools/scripts/synchronize_deploy_scripts.ps1
Maybe you could post a message in Teams that when skill template update, they should open an issue here to inform us


fromHTML line breaks in random places

I am trying to create a simple PDF from an HTML element on my page which looks like this,

Dear Jackie,

We are delighted that Louise Etheridge has chosen to live in one of our houses for the next University year. The address of their new home from home is 28 Granville Street, Cheltenham, Gloucestershire, GL50 4BL.

The rent 94.95 per week includes gas, electricity, water rates, TV licence, 50MB broadband and tenants contents insurance.

It is a condition of the tenancy that every member of the household provides the guarantee of a parent or guardian for their share of the tenancys obligations. The contract we use, a tenancy in common, may be viewed or downloaded from our website.

We would be grateful if you could do the following:
- Please complete and sign the enclosed guarantor form in the presence of a witness, and then return it in the enclosed reply-paid envelope.

Once done we would be grateful if you could return it in the enclosed reply-paid envelope. Do please contact me should you have any queries. All our tenancy documentation may be viewed and downloaded at our website, www.carlainproperty.co.uk.

Thank you in advance.

Yours sincerely

Kate Lewtas

When I set a width element then the line breaks are randomly added, if I don't add a width element then I get no random line breaks but obviously the text goes of the side of the PDF.

Here is my code,

Can anyone see why this is happening, I cannot figure out a way to stop it?
Thanks

Don't know if it would solve your issue, but you have a semicolon on a place where it should not be:
function (dispose) {
    var pdf = btoa(doc.output());
    .done(function(data){

Remove the semicolon behind btoa(doc.output())
you are not finished yet since you also do a .done there

Not reproducable


ensure_xcode_version sometimes fails

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I have read the Contribution Guidelines

Issue Description
The first step in my before_all is: ensure_xcode_version(version: "8.1").
xcodebuild -version outputs:
Xcode 8.1
Build version 8B62

xcode-select -p outputs:
/Applications/Xcode.app/Contents/Developer

I'm running this on an early 2016 Mac Pro with only Xcode 8.1 installed. Previously, it had Xcode 7.3.1 installed, but I deleted Xcode 7.3.1 from /Applications before installing Xcode 8.1.
Complete output when running fastlane, including the stack trace and command used

You can use: --capture_output as the last commandline argument to get that collected for you

I'm not allowed to attach the full failing output. Sorry.
After updating fastlane to 1.110.0, ensure_xcode_version sometimes fails with:
fastlane `ensure_xcode_version` failure output
--- Step: ensure_xcode_version ---
----------------------------------
$ xcversion selected | head -1 | xargs echo -n
▸ xargs: unterminated quote
Variable Dump:
{:DEFAULT_PLATFORM=>:ios, :PLATFORM_NAME=>:ios, :LANE_NAME=>"ios master"}
 Exit status of command 'xcversion selected | head -1 | xargs echo -n' was 1 instead of 0.

Successfully generated documentation at path '/Users/jenkins/workspace/twitch-iphone-pull-requests/fastlane/README.md'

+------+-------------------------------------+-------------+
|                     fastlane summary                     |
+------+-------------------------------------+-------------+
| Step | Action                              | Time (in s) |
+------+-------------------------------------+-------------+
| 1    | opt_out_usage                       | 0           |
| 2    | Verifying required fastlane version | 0           |
| 3    | default_platform                    | 0           |
| 💥    | ensure_xcode_version                | 1           |
+------+-------------------------------------+-------------+

fastlane finished with errors
/Library/Ruby/Gems/2.0.0/gems/fastlane_core-0.57.1/lib/fastlane_core/ui/interface.rb:145:in `user_error!': [!] Exit status of command 'xcversion selected | head -1 | xargs echo -n' was 1 instead of 0. (FastlaneCore::Interface::FastlaneError)
xargs: unterminated quote

	from /Library/Ruby/Gems/2.0.0/gems/fastlane_core-0.57.1/lib/fastlane_core/ui/ui.rb:14:in `method_missing'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/helper/sh_helper.rb:55:in `sh_control_output'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/action.rb:98:in `sh'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/actions/ensure_xcode_version.rb:11:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:202:in `block (2 levels) in execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/actions/actions_helper.rb:35:in `execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:187:in `block in execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:186:in `chdir'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:186:in `execute_action'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:112:in `trigger_action_by_name'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/fast_file.rb:146:in `method_missing'
	from Fastfile:26:in `block (2 levels) in parsing_binding'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:218:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:218:in `execute_flow_block'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:46:in `block in execute'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:45:in `chdir'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/runner.rb:45:in `execute'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/lane_manager.rb:52:in `cruise_lane'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/command_line_handler.rb:30:in `handle'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/commands_generator.rb:95:in `block (2 levels) in run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/command.rb:178:in `call'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/command.rb:153:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/runner.rb:444:in `run_active_command'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane_core-0.57.1/lib/fastlane_core/ui/fastlane_runner.rb:38:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/commander-4.4.0/lib/commander/delegates.rb:15:in `run!'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/commands_generator.rb:292:in `run'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/commands_generator.rb:36:in `start'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/lib/fastlane/cli_tools_distributor.rb:58:in `take_off'
	from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.110.0/bin/fastlane:5:in `<top (required)>'
	from /usr/local/bin/fastlane:23:in `load'
	from /usr/local/bin/fastlane:23:in `<main>'

Environment
🚫 fastlane environment 🚫
Stack

Key
Value

OS
10.11.6

Ruby
2.0.0

Bundler?
false

Git
git version 2.9.3 (Apple Git-75)

Installation Source
/usr/local/bin/fastlane

Host
Mac OS X 10.11.6 (15G1108)

Ruby Lib Dir
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib

OpenSSL Version
OpenSSL 0.9.8zc 19 Mar 2015

Is contained
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
8.1

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL
en_US.UTF-8
✅

LANGUAGE

fastlane files:
I'm not allowed to attach my Fastfile.
I'm not allowed to attach my Appfile.
fastlane gems

Gem
Version
Update-Status

credentials_manager
0.16.2
✅ Up-To-Date

fastlane_core
0.57.1
✅ Up-To-Date

deliver
1.15.1
🚫 Update availaible

snapshot
1.16.3
🚫 Update availaible

frameit
3.0.0
✅ Up-To-Date

pem
1.4.0
✅ Up-To-Date

cert
1.4.4
✅ Up-To-Date

sigh
1.11.2
🚫 Update availaible

produce
1.3.0
🚫 Update availaible

gym
1.12.0
🚫 Update availaible

pilot
1.12.1
✅ Up-To-Date

scan
0.14.1
🚫 Update availaible

supply
0.7.1
🚫 Update availaible

match
0.11.0
✅ Up-To-Date

screengrab
0.5.3
🚫 Update availaible

fastlane
1.110.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

highline
1.7.8

commander
4.4.0

terminal-table
1.4.5

json
1.8.3

multipart-post
2.0.0

faraday
0.9.2

faraday_middleware
0.10.0

dotenv
2.1.1

net-ssh
3.2.0

net-sftp
2.1.2

plist
3.1.0

rubyzip
1.1.7

security
0.1.3

krausefx-shenzhen
0.14.11

slack-notifier
1.5.1

i18n
0.7.0

thread_safe
0.3.5

tzinfo
1.2.2

minitest
5.9.0

activesupport
<IP_ADDRESS>

colored
1.2

xcodeproj
1.2.0

rouge
1.11.1

xcpretty
0.2.4

terminal-notifier
1.6.3

addressable
2.3.8

xcode-install
2.0.2

word_wrap
1.0.0

multi_json
1.12.1

babosa
1.0.2

excon
0.45.4

gh_inspector
1.0.2

credentials_manager
0.16.2

fastlane_core
0.57.1

bundler
1.12.5

fastimage
1.6.8

mini_magick
4.5.1

xcpretty-travis-formatter
0.0.4

uber
0.0.15

representable
2.3.0

retriable
2.1.0

mime-types-data
3.2016.0521

mime-types
3.1

hurley
0.2

little-plugger
1.1.4

logging
2.1.0

jwt
1.5.4

memoist
0.14.0

os
0.9.6

signet
0.7.3

googleauth
0.5.1

thor
0.19.1

httpclient
<IP_ADDRESS>

google-api-client
0.9.11

claide
1.0.1

generated on: 2016-11-29

@hborders I just released fastlane 1.111.0 which I think fixes this issue. You could update fastlane and let me know? 👍

Works for me.
I get this warning now, which is weird:
Couldn't verify that spaceship is up to date
In context:
--- Step: ensure_xcode_version ---
----------------------------------
$ xcversion selected
▸ Couldn't verify that spaceship is up to date
▸ Xcode 8.1
▸ Build version 8B62
Selected Xcode version is correct: 8.1

Glad that ensure_xcode_version is working for you!
Can you help me with the other warning? pass --verbose to the command you're running and paste the output? Thanks!

That was with --verbose.
fastlane --verbose master
Successfully loaded Appfile at path 'XXXXXXX'
- apple_id: 'XXXXX'
- team_name: 'XXXXX'
- team_id: 'XXXXXXXX'
-------
Checking if there are any plugins that should be loaded...
---------------------------
--- Step: opt_out_usage ---
---------------------------
Disabled upload of used actions
-------------------------------------------------
--- Step: Verifying required fastlane version ---
-------------------------------------------------
Your fastlane version 1.111.0 matches the minimum requirement of 1.110.0  ✅
------------------------------
--- Step: default_platform ---
------------------------------
Driving the lane 'ios master' 🚀
----------------------------------
--- Step: ensure_xcode_version ---
----------------------------------
$ xcversion selected
▸ Couldn't verify that spaceship is up to date
▸ Xcode 8.1
▸ Build version 8B62
Selected Xcode version is correct: 8.1


Update to version 6.5.1

MNT: Re-rendered with conda-build 3.21.9, conda-smithy 3.21.0, and conda-forge-pinning 2<IP_ADDRESS>.03.03

Checklist

[x] Used a personal fork of the feedstock to propose changes
Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Automatic Icons Updater for Flutter

Hi Flutter team,
Great work on the v2.2 update btw!
However, can you please implement some sort of automatic icon updater so that the Flutter Icons get updated automatically when new Material Icons are released? There are now many missing icons.
This issue is to reopen/draw attention to the same problem as https://github.com/flutter/flutter/issues/27956, but needs a more permenant solution.
Thanks 👍.

I think it would be complicated because Flutter/Material relies on them in many places, and the icon's mapping may change from version to version, so the map icon (represented by 123456) might now point to what was the facebook icon.
Unless they just grab the top-10 most used material icons and set in stone in Flutter while let the other be free (which I think is what they do with iOS back button, for example).

Well, idk then? Why not just update based in name rather than ID?

Material icons is a font, that's how Flutter works with icons until we have native svg or something else support. As a font, each label has its own position. But this position changes when icons are re-generated.

I have no idea, but that's not my job. If this can't be fixed easily, then so be it, but I hope Flutter can do something about this, because there are many missing icons.

Which icons are missing? They updated a few weeks ago.

I'm not sure exactly, see #27956

Hi,
Any news about this?
Thanks 👍

Is anything happening with this?

I miss Icons.route.

Any news?

Icons.question_mark_outlined is missing

Icons.handshake_outlined is missing :s

Icons.handshake
Icons.calendar_month

Icons.heart_broken 💔

Icons.save_as missing

add_card_outlined is missing too

It's mentioned in one of the other threads, but I found this package:
https://pub.dev/packages/material_design_icons_flutter
by https://github.com/ziofat saved the day for me.

Just noting that in the font versions of the icons, both glyph names (via ligature) and codepoints are completely stable from version to version. Even if we delete a duplicate glyph from the font, we maintain BOTH the old ligature and the old codepoint in the next version of the font.
If somebody is talking glyph ID (GID) then yes, that is literally the physical ordering of glyphs in the font, and is not guaranteed to be stable from one version to the next in this or any other font. GID references should not be used in that way.

@tphinney I'm not sure which was used, but it changed every version, it was a nightmare. Now they made it stable.

So maybe what we need then, as well as a way to automatically get the latest icons (in another package like someone at the top of the thread suggested) is a map middleman between the package and app. This would ensure that they don't change unexpectedly.
And just a note about separating into a separate package. The default Flutter project automatically imports Cupertino Icons to demonstrate how to use the pubspec. Would it not be too difficult to do the same thing with a new official Material Icons package?

As the contractor doing the variable font, I would like to understand what the problem was before, how the characters were being referenced—just to make sure it does not become a problem in the future. Or for me to warn if the referencing method being used is “wrong.” Not knowing exactly what broke means I can’t promise it will remain stable!
With regards to some of the other points in this thread, for add_card_outlined and handshake_outlined, I will note as a general thing, however, that in the source variable font (from which other font versions derive, currently), some of the named glyphs with "outline" in the name no longer exist as separate glyphs. The default versions are outlined, and a filled version is accessible by using the Fill axis. (And you can even animate the transition if you want.) That is definitely true for these two characters.


Make it easier to add new charts to empty dashboard

Is your feature request related to a problem? Please describe.
For new dashboards, for the first item you add to the dashboard, you need to drag it to the top of the dashboard and let go once you see the blue line at the top of the dashboard
Even for folks who work on Superset, this was confusing behavior and resulted in erroneous filing of a bug or asking questions (repeatedly). It's difficult for a user to discover that they must drag to the top of the dashboard (and that target is small), even if they know to drag.
Describe the solution you'd like
Ideally it would be triggered regardless of where you dragged it to and automatically added it to the top.

🏷 dashboard

@steejay 🙏 🏷 UX

@zuzana-vej added to post 1.0 roadmap inbox. the current experience is driving me crazy as well......... https://github.com/apache-superset/superset-roadmap/projects/1

https://github.com/apache/incubator-superset/pull/11525 done

I don't know how I missed this update! But just tried to today and it works perfectly now. Thanks!


snipe

when try to snipe a card the same card comes multiple time try to increment max bid so every search is a new one
[09:44:48] Ousmane Dembélé [290770709046] [1 Hour] 50000
[09:44:50] Received 1 items
[09:44:50] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:44:51] Received 1 items
[09:44:51] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:44:54] Received 1 items
[09:44:54] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:44:56] Received 1 items
[09:44:56] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:44:58] Received 1 items
[09:44:58] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:00] Received 1 items
[09:45:00] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:02] Received 1 items
[09:45:02] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:04] Received 2 items
[09:45:04] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:04] Ousmane Dembélé [290770840947] [59 Minutes] 50000
[09:45:07] Received 2 items
[09:45:07] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:07] Ousmane Dembélé [290770840947] [59 Minutes] 50000
[09:45:09] Received 2 items
[09:45:09] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:09] Ousmane Dembélé [290770840947] [59 Minutes] 50000
[09:45:10] Received 2 items
[09:45:10] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:10] Ousmane Dembélé [290770840947] [59 Minutes] 50000
[09:45:12] Received 2 items
[09:45:12] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:12] Ousmane Dembélé [290770840947] [59 Minutes] 50000
[09:45:14] Received 2 items
[09:45:14] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:14] Ousmane Dembélé [290770840947] [59 Minutes] 50000
[09:45:15] Received 2 items
[09:45:15] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:15] Ousmane Dembélé [290770840947] [59 Minutes] 50000
[09:45:17] Received 2 items
[09:45:17] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:17] Ousmane Dembélé [290770840947] [59 Minutes] 50000
[09:45:18] Received 2 items
[09:45:18] Ousmane Dembélé [290770709046] [59 Minutes] 50000
[09:45:18] Ousmane Dembélé [290770840947] [59 Minutes] 50000
As you see the same two cards appears again

Will be tracked as part of #84


Test/mutants filter pr

https://github.com/stacks-network/stacks-core/issues/4176

can you share an action that has successfully run this action on this branch?

We cannot currently have actions run on this specific branch made for the PR to stacks-network due to the actions code checkout being made on stacks-network/actions@feat/mutation-testing for it to work after the PR is closed (https://github.com/ASuciuX/actions/blob/test/mutants-filter-pr/mutation-testing/filter-pr/action.yml#L30-L31).
However, I've made a clone of this branch and updated the checkout to point at its branch (https://github.com/ASuciuX/actions/tree/test/showcase-filter-pr), then opened a PR locally (https://github.com/ASuciuX/stacks-core/pull/14) to showcase the functionality. Here are the results:

https://github.com/ASuciuX/stacks-core/actions/runs/7249576001/job/19747829214?pr=14 - This workflow fails due to the untested function that I've added, and it prints the missed mutants.
https://github.com/ASuciuX/stacks-core/actions/runs/7249642919/job/19748048601?pr=14 - This workflow succeeds due to a new commit that tests the function, making all new mutants caught.

let's wait to review/merge this until after the shard etc tests are complete

I've updated the information regarding the performance of shards. An issue has been raised with cargo-mutants to investigate potential bugs that might be causing the observed poor performance. You can find the issue here: GitHub Issue.
Here's a comparison of the results with and without shards:
First  PR:

Without Shards https://github.com/ASuciuX/stacks-core/actions/runs/7269581208/job/19807417329?pr=27 - 3 hours 18 minutes stacks-node + stackslib 26 mutants - missed, unviable
With Shards https://github.com/ASuciuX/stacks-core/actions/runs/7302059398/job/19899965731?pr=35 - job 2 2 hours 46 minutes ( total run time in parallel is around 10 hours combined)

Second PR:

Without Shards https://github.com/ASuciuX/stacks-core/actions/runs/7269581403/job/19807417955?pr=28 - 5 hours 21 minutes stacks-node 243 mutants - missed, unviable
With Shards https://github.com/ASuciuX/stacks-core/actions/runs/7302062845/job/19899978677?pr=36job 0 failing cargo-test (shouldn’t happen and i suspect it being a problem related to shards) job 5 3 hours 26 minutes ( total run time in parallel is around 15 hours 30 minutes combined)

Example of PR that worked as expected:
https://github.com/ASuciuX/stacks-core/actions/runs/7440309205?pr=45

since the target branch is not master, this can be merged.
however, we'll want to make some cosmetic changes at least to merge this into master - step names etc.


Additional repeater defaults

We should set preserveDataSourceOptions to false explicitly in the defaults in order to document default options for those that read the source code to understand the API.
https://github.com/ExactTarget/fuelux/blob/master/js/repeater.js#L712
Are there any other options mentioned in the documentation that are not set in the repeater defaults object?

Do it for preserveDataSourceOptions. Agreed any defaults should be explicit. @kevinparkerson please assist with other defaults not explicitly included in the defaults.


Staff f20 refactor basic course search

In this PR, we

Refactor the BasicCourseSearchForm component to decouple the logic that fetches from the backend into a service
Add a new top level navigation item Course History that will provide a way to do searches on historical data (not the live data from the API)
Add a Basic Search on that menu as a proof of concept, reusing the BasicCourseSearchForm.  For now, it actually does NOT use the MongoDB archived course data; fixing it so that it does is a separate story.

Merged with only one approving review per PC


Drop menu fix for handling closeOnClickInside

Fixes implementation of #9131 and includes a fix for #9293

Yes, this was caught in QA and has been fixed in the 6.3 branch - see: https://github.com/zurb/foundation-sites/pull/9472/files


Murkmod Helper extension "Manifest version 2 is deprecated"

Describe the bug
The murkmod helper extension will say mush is not ready yet if you try to use anything. The mush terminal is still functional. I believe it is tied to the error which appears when viewing the extension page.
To Reproduce
Steps to reproduce the behavior:

Install the murkmod helper extension
Click on the puzzle piece, and then the murkmod helper extension
Click any button
See error

Expected behavior
The button would be pressed and the task would be successfully executed.
Screenshots

System (please complete the following information):

Board [dedede]
Version [v119]
Installation method used [devmode installer]

Additional context
When viewing the extension in the chrome web store, it shows up as the deprecated Secure Shell extension. The non-deprecated version is here

As of this summer Google has switched to manifestV3 and has depreciated the manifestv2 standard. Because the manifest file has not been updated, the extension will not work.
https://developer.chrome.com/docs/extensions/develop/migrate/mv2-deprecation-timeline

As of this summer Google has switched to manifestV3 and has depreciated the manifestv2 standard. Because the manifest file has not been updated, the extension will not work.
https://developer.chrome.com/docs/extensions/develop/migrate/mv2-deprecation-timeline

Yep, that makes sense. The trick that allows the helper extension to work is that the keys are exposed in the ChromiumOS source tree... is there an alternative in newer versions for MV3?

You can see a list of the keys for extensions pretty easily in codesearch here - I'm sure at least one of these extensions would work - or maybe the current extension can just be updated straight to MV3? Who knows, this would need testing, and I don't have any testing devices on-hand right now.


CloudFormation stack template does not work

Page: /setup/install/providers/aws/aws-ec2/
Feedback: running the provided stack template with recommended parameters fails with the message : Unresolved resource dependencies [SpinnakerInstanceProfile] in the Outputs block of the template

@edwinavalos
@clareliguori
@anshrma

cc @saimadineni

@spinnakerbot remove-label to-be-closed
seeing this with the AWS console & the CLI
$ aws cloudformation deploy --stack-name spinnaker-managing-infrastructure-setup --template-file managing.yaml --parameter-overrides UseAccessKeyForAuthentication=true --capabilities CAPABILITY_NAMED_IAM --region us-east-2
An error occurred (ValidationError) when calling the CreateChangeSet operation: Unresolved resource dependencies [SpinnakerInstanceProfile] in the Outputs block of the template

Is there a change that we can make to the managing.yaml as a workaround?

Getting the same issue, couldn't find the proper documentation to work around this.

@akshayabd any update on this?

I've added it in the agenda to discuss in next week's AWS SIG meeting:
https://docs.google.com/document/d/1TB7dSQDTM9jFBsttuevxOsP6MGQ3-z0wrYMIGxYxhYQ/edit#

We discussed this in the SIG meeting today. These docs are too outdated and just updating the EKS version isn't correct.
@pauljrob is working on a new version of the docs. In the meantime he recommends users follow https://aws.amazon.com/blogs/opensource/continuous-delivery-spinnaker-amazon-eks/
So the recommendation is to remove the existing docs and just point to the article above. Once a new version of the docs is available @pauljrob will create a PR for it.

We should add a blurb to the page that will point users to that aws page while the spinnaker.io page is being worked on.

We should add a blurb to the page that will point users to that aws page while the spinnaker.io page is being worked on.

Apologies I haven't gotten to this yet - WIP

https://github.com/spinnaker/spinnaker.github.io/pull/1763 opened for review


Does TensorRT-LLM support A10?

System Info
I didn't find A10 on the Support Matrix, and when I run it on my A10 server, I got a segmentation fault. Doesn't TensorRT-LLM support A10?
Who can help?
No response
Information

[x] The official example scripts
[ ] My own modified scripts

Tasks

[x] An officially supported task in the examples folder (such as GLUE/SQuAD, ...)
[ ] My own task or dataset (give details below)

Reproduction
python3 -c "import tensorrt_llm"
Expected behavior
successfully import trt-llm
actual behavior
[a8532d3de39c:00219] *** Process received signal ***
[a8532d3de39c:00219] Signal: Segmentation fault (11)
[a8532d3de39c:00219] Signal code: Address not mapped (1)
[a8532d3de39c:00219] Failing at address: 0x18
[a8532d3de39c:00219] [ 0] /usr/lib/x86_64-linux-gnu/libc.so.6(+0x42520)[0x7ff7a001d520]
[a8532d3de39c:00219] [ 1] /usr/lib/x86_64-linux-gnu/libcuda.so.1(+0x2b924a)[0x7ff6e7aa124a]
[a8532d3de39c:00219] [ 2] /usr/lib/x86_64-linux-gnu/libcuda.so.1(+0x24ea26)[0x7ff6e7a36a26]
[a8532d3de39c:00219] [ 3] /usr/lib/x86_64-linux-gnu/libcuda.so.1(+0x2c7258)[0x7ff6e7aaf258]
[a8532d3de39c:00219] [ 4] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libtensorrt_llm.so(+0x23e9991)[0x7ff575cde991]
[a8532d3de39c:00219] [ 5] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libtensorrt_llm.so(+0x23e9ac0)[0x7ff575cdeac0]
[a8532d3de39c:00219] [ 6] /usr/lib/x86_64-linux-gnu/libc.so.6(+0x99ee8)[0x7ff7a0074ee8]
[a8532d3de39c:00219] [ 7] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libtensorrt_llm.so(+0x243c209)[0x7ff575d31209]
[a8532d3de39c:00219] [ 8] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libtensorrt_llm.so(+0x23dd27f)[0x7ff575cd227f]
[a8532d3de39c:00219] [ 9] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libtensorrt_llm.so(+0x2408c2a)[0x7ff575cfdc2a]
[a8532d3de39c:00219] [10] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libtensorrt_llm.so(_ZN12tensorrt_llm6common6LoggerC1Ev+0xc1)[0x7ff574093181]
[a8532d3de39c:00219] [11] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libtensorrt_llm.so(_ZN12tensorrt_llm6common6Logger9getLoggerEv+0x3f)[0x7ff574093a4f]
[a8532d3de39c:00219] [12] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libnvinfer_plugin_tensorrt_llm.so(_ZN12tensorrt_llm7plugins17LoraPluginCreatorC1Ev+0x107)[0x7ff5331e04e7]
[a8532d3de39c:00219] [13] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libnvinfer_plugin_tensorrt_llm.so(getPluginCreators+0x97c)[0x7ff533206b0c]
[a8532d3de39c:00219] [14] /usr/local/lib/python3.10/dist-packages/tensorrt_llm/libs/libnvinfer_plugin_tensorrt_llm.so(initTrtLlmPlugins+0x48)[0x7ff533206cf8]
[a8532d3de39c:00219] [15] /usr/lib/x86_64-linux-gnu/libffi.so.8(+0x7e2e)[0x7ff79fd05e2e]
[a8532d3de39c:00219] [16] /usr/lib/x86_64-linux-gnu/libffi.so.8(+0x4493)[0x7ff79fd02493]
[a8532d3de39c:00219] [17] /usr/lib/python3.10/lib-dynload/_ctypes.cpython-310-x86_64-linux-gnu.so(+0xa3e9)[0x7ff79d2fe3e9]
[a8532d3de39c:00219] [18] /usr/lib/python3.10/lib-dynload/_ctypes.cpython-310-x86_64-linux-gnu.so(+0x13302)[0x7ff79d307302]
[a8532d3de39c:00219] [19] python3(_PyObject_MakeTpCall+0x25b)[0x55e7528f2a7b]
[a8532d3de39c:00219] [20] python3(_PyEval_EvalFrameDefault+0x6a79)[0x55e7528eb629]
[a8532d3de39c:00219] [21] python3(_PyFunction_Vectorcall+0x7c)[0x55e7528fc9fc]
[a8532d3de39c:00219] [22] python3(_PyEval_EvalFrameDefault+0x6bd)[0x55e7528e526d]
[a8532d3de39c:00219] [23] python3(_PyFunction_Vectorcall+0x7c)[0x55e7528fc9fc]
[a8532d3de39c:00219] [24] python3(_PyEval_EvalFrameDefault+0x198c)[0x55e7528e653c]
[a8532d3de39c:00219] [25] python3(+0x13f9c6)[0x55e7528e19c6]
[a8532d3de39c:00219] [26] python3(PyEval_EvalCode+0x86)[0x55e7529d7256]
[a8532d3de39c:00219] [27] python3(+0x23ae2d)[0x55e7529dce2d]
[a8532d3de39c:00219] [28] python3(+0x15ac59)[0x55e7528fcc59]
[a8532d3de39c:00219] [29] python3(_PyEval_EvalFrameDefault+0x2a27)[0x55e7528e75d7]
[a8532d3de39c:00219] *** End of error message ***
Segmentation fault (core dumped)
additional notes
Does TensorRT-LLM support A10?

A10 is supported. Could you share the full error log and the reprodueced steps?

A10 is supported. Could you share the full error log and the reprodueced steps?

Thank you very much for your reply. I found that it was a problem with my driver, not with trt llm. I reinstalled my driver and the problem was resolved. I will close this issue. Thank you again for your reply, and I wish you a pleasant work experience.


Adding data to json response?

Hi,
Is there a way to add some data to the json response?
I'm using Laravel 4.2
Thanks in advance.

Yes, see issue #277 for the workaround since you're using Laravel 4.2.
$users = User::select(['id', 'name', 'email', 'created_at', 'updated_at']);

$response = Datatables::of($users)->make(true);
$data     = $response->getData(true);
$data['key'] = 'value';

return new JsonResponse($data);

In case of Laravel 5, you can use ->with(['key' => 'value']).

How to get the value . that i added in extra parameter.

How to get the value . that i added in extra parameter. +1

You can fetch it using ajax.json api:
var data = oTable.ajax.json();
console.log(data.custom_key);


Reduce the scope of changes to samples in 5.1

Context

Contributor Checklist

[ ] Review Contribution Guidelines
[ ] Make sure that all commits are signed off to indicate that you agree to the terms of Developer Certificate of Origin.
[ ] Check "Allow edit from maintainers" option in pull request so that additional changes can be pushed by Gradle team
[ ] Provide integration tests (under <subproject>/src/integTest) to verify changes from a user perspective
[ ] Provide unit tests (under <subproject>/src/test) to verify logic
[ ] Update User Guide, DSL Reference, and Javadoc for public-facing changes
[ ] Ensure that tests pass locally: ./gradlew <changed-subproject>:check

Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation
[ ] Recognize contributor in release notes

This isn't an indication of the lazy configuration API's being deprecated is it?
Why is the documentation reversing course on these?


Drop django_celery_results pkg

Saleor does not use celery task results, but uses django_celery_results.
DoD:

drop django_celery_results from requirements
remove CELERY_RESULT_BACKEND setting
globally drop storing task results. I don't think we need to add manually ignore_result=True to every task (correct me if thats not good idea): https://docs.celeryproject.org/en/latest/userguide/configuration.html#std:setting-task_ignore_result

Not sure if it's a good idea to globally disable storing results. Imagine trying to add an external app that depends on the default being true.


[dotnet-standard-sdk] Enforce coding standards

Enforce coding standards on AppVeyor build. One suggestion is StyleCop.
https://github.com/StyleCop/StyleCop
Any other suggestions?

#26

@mediumTaj seeing this page (https://github.com/dotnet/corefx/blob/master/Documentation/coding-guidelines/coding-style.md), they using the .Net Codeformatter tool to enforce coding standards, but i do not found on nuget. What do you think?

Yeah it looks like they don't have a NuGet package
https://github.com/dotnet/codeformatter/issues/201
But this issues says
The GitHub guys (@shiftkey) have rolled their own package which is perfect but it has been customized for their coding convention used in Octokit -> https://www.nuget.org/packages/Octokit.CodeFormatter/1.0.0-preview

We cant really use this package as a dependency though.

Look into https://github.com/DotNetAnalyzers/StyleCopAnalyzers

Still active


pull request for e2e test at 12/26/2016 08:56:12

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


ignore *.xcworkspace for Xcode

Update for Xcode v9.1.

@takano32 any other links to documentation or discussion about this change?

@shiftkey I can't any documentation yet. But I build my project for Xcode in v9.1, automatically this directory is generated.
And I move this directory to trash and reopen project, that directory is generated.
Sorry for my fuzziness. :bow:

@shiftkey Sorry, this directory had been discussed long time to ignore or not.
dup. https://github.com/github/gitignore/pull/865
ref. https://stackoverflow.com/questions/22345575/


Ruby 2.7.5, Rails <IP_ADDRESS>, Administrate 0.16.0 undefined batch_action_name

The controller method  SitesController#export_batch_action  is undefined when rendering app/views/admin/application/index.html.erb
Context: Ruby 2.7.5, Rails <IP_ADDRESS>, Administrate 0.16.0
Comparing all changes between main and administrate_batch_actions branches:
https://github.com/stepheneb/wts-rails6/compare/main...administrate_batch_actions
ActionView::Template::Error (undefined local variable or method `export_batch_action' for #<ActionView::Base:0x0000000000b2c0>
Did you mean?  export_batch_action_admin_sites_url):
    34:
    35:   <%=
    36:     administrate_batch_actions_button(
    37:       export_batch_action,
    38:       export_batch_action_admin_sites_path,
    39:       { class: '', confirm: '' }
    40:     )

app/views/admin/application/index.html.erb:37

In the interactive console under the view error and asking for tab completion on in-scope objects starting with export.
>> export
export_batch_action_admin_sites_path export_batch_action_admin_sites_url

My controller with a method named: export_batch_action
module Admin
  class SitesController < Admin::ApplicationController
    def export_batch_action
      Site.find(params[:batch_action_ids]).each(&:export)
      redirect_to :admin_sites, notice: "Successfully exported #{params[:batch_action_ids].size} sites"
    end
  end
end

And model with a Site#export method
class Site < ApplicationRecord
  def export
  end
end

@stepheneb Ah! In your example here:
ActionView::Template::Error (undefined local variable or method `export_batch_action' for #<ActionView::Base:0x0000000000b2c0>
Did you mean?  export_batch_action_admin_sites_url):
    34:
    35:   <%=
    36:     administrate_batch_actions_button(
    37:       export_batch_action,
    38:       export_batch_action_admin_sites_path,
    39:       { class: '', confirm: '' }
    40:     )

app/views/admin/application/index.html.erb:37

export_batch_action should be replaced with just a string that gets passed on to the link_to tag. In your case this should fix it:
    35:   <%=
    36:     administrate_batch_actions_button(
    37:       'Batch Export',
    38:       export_batch_action_admin_sites_path,
    39:       { class: '', confirm: '' }
    40:     )


Unable to Reproduce 12 Epoch Results in the Paper

Hi @Jingkang50, thanks for your great work. I ran a 12-epoch training for PSGFormer by modifying the config from 40/60 epochs to 8/12 epochs, and setting eval_pan_rels=False according to your suggestion. Below are the evaluation results at the 12th epoch, which are largely different from the 12th epoch results in Table 2 in your paper. May I know if there are any further modifications to reproduce the results? Thanks.
====================================================================================================
SGG eval:  R @ 20: 0.0941;  R @ 50: 0.1138;  R @ 100: 0.1159;  for mode=sgdet, type=Recall.

SGG eval:  mR @ 20: 0.0584;  mR @ 50: 0.0785;  mR @ 100: 0.0794;  for mode=sgdet, type=Mean Recall.
over	in front of	beside	on	in	attached to	hanging from	on back of	falling off	going down	painted on	walking on	running on	crossing	standing on	lying on	sitting on	flying over	jumping over	jumping from	wearing	holding	carrying	looking at	guiding	kissing	eating	drinking	feeding	biting	catching	picking	playing with	chasing	climbing	cleaning	playing	touching	pushing	pulling	opening	cooking	talking to	throwing	slicing	driving	riding	parked on	driving on	about to hit	kicking	swinging	entering	exiting	enclosing	leaning on
0.3282	0.0558	0.0445	0.0521	0.0708	0.0394	0.1034	0.0000	0.0000	0.0000	0.0000	0.1905	0.1008	0.0000	0.1953	0.0399	0.0889	0.1840	0.0000	0.0000	0.2012	0.2540	0.0556	0.1662	0.0000	0.0000	0.1023	0.0000	0.0000	0.1667	0.0000	0.0000	0.0000	0.0000	0.0000	0.0000	0.2200	0.0000	0.0000	0.0000	0.0000	0.0000	0.0000	0.0000	0.0000	0.1628	0.3581	0.1288	0.2737	0.5926	0.2500	0.0000	0.0000	0.0000	0.0219	0.0000
+--------------+--------+--------------+--------+--------------+--------+
| predicate    | Rec100 | predicate    | Rec100 | predicate    | Rec100 |
+--------------+--------+--------------+--------+--------------+--------+
| over         | 0.3282 | in front of  | 0.0558 | beside       | 0.0445 |
| on           | 0.0521 | in           | 0.0708 | attached to  | 0.0394 |
| hanging from | 0.1034 | on back of   | 0.0000 | falling off  | 0.0000 |
| going down   | 0.0000 | painted on   | 0.0000 | walking on   | 0.1905 |
| running on   | 0.1008 | crossing     | 0.0000 | standing on  | 0.1953 |
| lying on     | 0.0399 | sitting on   | 0.0889 | flying over  | 0.1840 |
| jumping over | 0.0000 | jumping from | 0.0000 | wearing      | 0.2012 |
| holding      | 0.2540 | carrying     | 0.0556 | looking at   | 0.1662 |
| guiding      | 0.0000 | kissing      | 0.0000 | eating       | 0.1023 |
| drinking     | 0.0000 | feeding      | 0.0000 | biting       | 0.1667 |
| catching     | 0.0000 | picking      | 0.0000 | playing with | 0.0000 |
| chasing      | 0.0000 | climbing     | 0.0000 | cleaning     | 0.0000 |
| playing      | 0.2200 | touching     | 0.0000 | pushing      | 0.0000 |
| pulling      | 0.0000 | opening      | 0.0000 | cooking      | 0.0000 |
| talking to   | 0.0000 | throwing     | 0.0000 | slicing      | 0.0000 |
| driving      | 0.1628 | riding       | 0.3581 | parked on    | 0.1288 |
| driving on   | 0.2737 | about to hit | 0.5926 | kicking      | 0.2500 |
| swinging     | 0.0000 | entering     | 0.0000 | exiting      | 0.0000 |
| enclosing    | 0.0219 | leaning on   | 0.0000 | None         | None   |
+--------------+--------+--------------+--------+--------------+--------+
SGG eval:  mR @ 20: 0.1017;  mR @ 50: 0.1474;  mR @ 100: 0.1502;  for mode=phrdet, type=Mean Recall.
SGG eval:  mR @ 20: 0.0000;  mR @ 50: 0.0000;  mR @ 100: 0.0000;  for mode=sgdet, type=NoGraphConstraint @ 56 Mean Recall.
SGG eval:  mR @ 20: 0.0000;  mR @ 50: 0.0000;  mR @ 100: 0.0000;  for mode=phrdet, type=NoGraphConstraint @ 56 Mean Recall.
====================================================================================================

Thank you for your interest in our work. Maybe check out here https://github.com/Jingkang50/OpenPSG/issues/33 for log reference. Some potential issues could be different configs (num_gpu and lr), and the loading of pretrained models.

Thanks for your reply. I've changed the base lr from 1e-3 to 1e-4 (the paper said PSGTR uses 1e-4, but the config of PSGFormer uses 1e-4, not sure whether it is correct), and the results became R@20: 0.1550; R@50: 0.1829; R@100: 0.1845, which are still not worse than the reported ones.

@Jingkang50 The 60 epochs schedule can not reproduce the results as well. Could you please share the codebase used for obtaining the checkpoints? It seems that the code used for obtaining checkpoints and the current release one are different. Thanks!

The released codebase is just the one that we get the final score (as a few participants from PSG challenges was able to get the corresponding results).
Are you using the config here? It seems the loss weight aligned with the Left: The released config. For the difference in the config, we delete/change the lines either because some losses are unused or they don't matter much.


Make Hand::new_from_str deterministic

Fixes #78
The deterministic test isn't the best, but maybe adding fuzzy testing is a bit overkill for this.

This is great. Thank you!


Update _touch.py

Added scroll to metod

nice PR, please fix unittest

Fixed my intendation error . Travis fails on Network connection that hasn't been touched


⚠ Bofrost.at has degraded performance

In d19c75c, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1164 ms

Resolved: Bofrost.at performance has improved in b062e86.


added @pikaburobot in line 46

bot is unfortunately offline :/

bot is unfortunately offline :/

Can you please only add the source then?

Thanks!


Cannot open LTN Manager yet..

"Cannot open LTN Manager Yet.  Either translations are not yet finished or LTN hasn't sent any data."
This seems to have broken out of the blue, it was working yesterday.  The last thing I did was added about 15 new LTN stations part of a new network ID.  There's almost 200 trains on the default/standard network ID.
I went around and changed the network ID to the default on all new stations and am still seeing the problem.
Suggestions on what I can check?

Could you send me your save file? After doing that, try running /LtnManager refresh-player-data in your console. Wait a moment and see if the button becomes clickable again.
The button won't enable until all translations have been sorted and LTN has sent data. The more mods you have, the longer this will take. Also be sure that LTN actually is sending data.

Thanks for the quick response!
Unfortunately, the console command doesn't seem to help/do anything.
LTN Trains are still picking up and delivering things normally.  How can I verify that it actually is sending data correctly?
I use only a few mods:

LTN Combinator
LTN Content Reader
LogisticTrainNetwork
LTN Manager
Some-Zoom

I'm going to need the save file, unfortunately. Could you upload it to Google Drive or Dropbox, then post a link?

After the update the button was still greyed-out but executing /LtnManager refresh-player-data resolved this for now.

I can confirm that after the update things work properly again.
I needed to wait a minute for LTN to update a cycle before the UI enabled, but it did so without me needing to issue any console commands.
Thanks for the quick fix!

We ware still having this Problem in Multiplayer with the new Version
on the Host it is working but on the client it is always showing this error message
should it work in multiplayer ?

Yes, it should work just fine. @Neovik78 could you please send me the save file so I can take a look?
Also, did you try running the command?

thanks after update of the mod and running the command it worked
thanks very much for the great mod

Awesome!


Create determinePersistentVolumeHealth

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #356
Does this PR introduce a user-facing change?:

NONE

Yes, Status.Message has its own Message, so we don't have to make a message for each status. Thank you!
/lgtm

Yes, Status.Message has its own Message, so we don't have to make a message for each status. Thank you!
/lgtm

thank you
/approve

thank you
/approve


chore: List v2 primary key & hashing

Description

Adds a new property "Primary key" to the property pane
This is used for internal caching of relevant meta data to provide data consistency over page change
When no primary key is selected from the dropdown, default hashing takes over
Provides a JS mode, which can be used for composite key. In order to access the listData by using currentItem and currentIndex can be used. Eg {{currentItem.name + currentItem.age + currentIndex}}
This composite key internally generates an array which is equal to the number of items present in listData
There are validations to check if the primary keys generated are unique

Hashing
Package - object-hash
Algorithm - MD5
Other options considered - murmur3, crc64, SHA-128
Reason for choosing object-hash
As we are hashing the objects present in the listData and over API calls, the JS spec does not ensure the order of objects.
Eg an object - { a: 100, b: 200 } can arrive as { b: 200, a: 100 }
If any algorithm is used directly like murmur3, this has to be converted to a string and then hashed.
To make sure we always get the same hash for different ordering of objects, the keys has to be first sorted, stringified and then hashed
object-hash does the same thing for us so that we don't break our heads to make this right.
Why MD5
object-hash provides limited option so MD5 is the quickest of the lot.
Fixes #16582
Type of change

New feature (non-breaking change which adds functionality)

How Has This Been Tested?

Jest
a. Test cases for Queue class
b. Test cases for the primary key validation function

Cypress

Property - primary key test cases
a. if present in the property pane
b. on selection of key from dropdown, it should show same number of rows
c. shows list of keys present in list data
d. when given composite key, should produce a valid array

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

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

Checklist:
Dev activity

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

QA activity:

[ ] Test plan has been approved by relevant developers
[ ] Test plan has been peer reviewed by QA
[ ] Cypress test cases have been added and approved by either SDET or manual QA
[ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
[ ] Added Test Plan Approved label after reveiwing all Cypress test

/ok-to-test sha=98796c0

Hey @ashit-rath , is Manual QA required for this task ?
cc: @laveena-en

@kamakshibhat-appsmith Yeah, a quick sanity check would be great.

Issues observed:

For a valid primary key, the client side pagination is broken. https://www.loom.com/share/e3359e84135643239560c53c6b3b45f2
If primary key is not selected and you toggle to JS mode, there comes unwanted square parenthesis which makes it difficult to switch back to normal mode
https://www.loom.com/share/8a48054cb5a0460badd0b1c08eaeaa36
Issue with server side pagination https://www.loom.com/share/e6761c52258f44c9917ba7827a5d0078
You can find the same pagination issues with Infinite scroll as well

@ashit-rath

/ok-to-test sha=9365776

/ok-to-test sha=9365776

@ashit-rath the server side pagination seems to be broken. Can you have a look at it and see if it's related

Observation:

When no Primary key is being selected, App break on changing pagination in List v2

When a non unique Primary key is selected from the dropdown, the App breaks on changing pagination
Video: https://www.loom.com/share/dfc4f48dc17d46278c4b313da174c0d7

List v2 on view mode seems like disabled
https://www.loom.com/share/764355366c2143a8b0d5d83bb764efd5

few more observations

List item click is not working for List v2
Issues with List v2 page size evaluation on page reload in the DB query page(Not sure if it falls under our scope or is an JS evaluation issue )
https://www.loom.com/share/bf95456e9b064835895eaede04daa4cf

@ashit-rath
This issue falls out of scope of the current issue and is being worked on separately.-- NOTED
Is this working fine on the base PR and not here? https://github.com/appsmithorg/appsmith/pull/15839-- Checked in base PR. Doesn't seem to be working there as well

@kamakshibhat-appsmith We have an open issue for the page size https://github.com/appsmithorg/appsmith/issues/16586
Could you drop your findings there for easier tracking?

@chandannkumar

List v2 on view mode seems like disabled

This is out of scope of this issue and will be dealt separately.
The other callout has been fixed

Tested this PR and LGTM

verified all callouts

@ashit-rath DnD a list v2 widget and remove all the pre-listed items , you'll notice when no primary key is selected , and we toggle to JS mode, you will find the binding there for ID. by default.
https://www.loom.com/share/0553d12f776744049d6485b63343183a


Python Client for Pinot Requires a Username

I have been trying to connect to Apache Pinot using the Python client pinotdb for quite a while now, to no avail.
I am simply running Pinot as a Docker container using the following command,
docker run -p 9000:9000 apachepinot/pinot:0.9.3 QuickStart -type hybrid
Given below is what my Python code looks like,
from pinotdb import connect

conn = connect(host='localhost', port=9000, path='/query/sql', scheme='http')
curs = conn.cursor()
curs.execute("""
    SELECT * FROM airlineStats
""")

Every time I run this, I get the following error,
AttributeError: 'NoneType' object has no attribute '_username'
Is there a default username or password that comes with Pinot or is there some way that I can create a user? It looks like the problem is that a username is somehow required.
I realize that I this may not be the right place to raise this issue, but I have already created an issue on the pinotdb repository, but I am yet to receive a response.
Any help on this matter would be greatly appreciated.
Here is the complete stack trace of the error I am facing,
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
Input In [12], in <cell line: 1>()
----> 1 curs.execute("""
      2     SELECT * FROM airlineStats
      3 """)
      4 for row in curs:
      5     print(row)

File ~\Anaconda3\envs\pinotdb\lib\site-packages\pinotdb\db.py:56, in check_closed.<locals>.g(self, *args, **kwargs)
     54 if self.closed:
     55     raise exceptions.Error(f"{self.__class__.__name__} already closed")
---> 56 return f(self, *args, **kwargs)

File ~\Anaconda3\envs\pinotdb\lib\site-packages\pinotdb\db.py:448, in Cursor.execute(self, operation, parameters)
    441 @check_closed
    442 def execute(self, operation, parameters=None):
    443     query = self.finalize_query_payload(operation, parameters)
    445     r = self.session.post(
    446         self.url,
    447         json=query,
--> 448         auth=(self.auth._username, self.auth._password))
    449     return self.normalize_query_response(query, r)

AttributeError: 'NoneType' object has no attribute '_username'

Have you tried the latest pinotdb version? This should be fixed already.

@xiangfu0 I just upgraded to pinotdb-0.4.3 and that username error does not seem to be coming up anymore. However, now I get this,
DatabaseError: Query

{'sql': 'SELECT * FROM airlineStats'} timed out: Out of -1, only -1 responded, while needed was -1

Do you know what it could be?
This is my code,
from pinotdb import connect

conn = connect(host='localhost', port=9000, path='/query/sql', scheme='http')
curs = conn.cursor()

curs.execute("SELECT * FROM airlineStats")
for row in curs:
    print(row)

cc: @walterddr
We will check

I've tested the current master code, seems it's working, let me cut a new release 0.4.4 then

@xiangfu0 That would be greatly appreciated.

0.4.4 is published. And this is the example I'm using to test: https://github.com/python-pinot-dbapi/pinot-dbapi/blob/master/examples/pinot_quickstart_batch.py

yeah. it should've been fixed by https://github.com/python-pinot-dbapi/pinot-dbapi/commit/8d0ca2be6a54921224028c686589a74c310977da#diff-f3f44b3ab7bb620101c696ae06a9355d31e982b890a382f64157046fc7095643

@xiangfu0 @walterddr It seems to be working perfectly now! Thank you very much.
I will close this issue.
I was hoping that I could ask you for one more favor though. With Pinot, what is the command for getting all the available tables (equivalent of SHOW TABLES) and for getting the columns of a particular table (equivalent of SHOW TABLES IN )?

i dont think we support such DML DDL syntax yet. please feel free to file another github issues for these syntax (such as: SHOW TABLES, DESCRIBE TABLE <tbl_name>, etc)

@walterddr Sounds good. I will do that now.
Is there a way to get it through the Python client? A list of tables in the database and the columns along with their types of a specific table?

you can do so by querying the REST API of pinot but that's not part of the DDL/DML, see: https://docs.pinot.apache.org/users/api/pinot-rest-admin-interface

@walterddr Ah, this is great!
But, could you please explain something to me? To get my Python client running, I had to start up my Docker instance the same way given in the example by @xiangfu0,
docker run --name pinot-quickstart -p 2123:2123 -p 9000:9000 -p 8000:8000 -d apachepinot/pinot:latest QuickStart -type batch
I have a basic idea of the components of Pinot, but could you please help me understand what these ports that we are exposing are?

just 9000 is the one you should use

@walterddr Connecting the Python client to port 9000 does not work for me. Similar to the example given, I had to use port 8000.
When I issue queries to port 9000, I get this error,
{'sql': 'SELECT * FROM baseballStats LIMIT 5'} timed out: Out of -1, only -1 responded, while needed was -1
However, to get the list of tables using the REST interface like you mentioned, I need to send the requests to port 9000.

@xiangfu0 @walterddr Any comments on this?

@MinuraPunchihewa correct.

all the SQL statement should be hitting broker port (8000 or 8099 depending on your default configuration))
all the controller endpoints (REST API calls) goes to 9000 controller port.

@walterddr Thank you so much for all your help. I really appreciate it.


Mixed Content

Standard: https://w3c.github.io/webappsec/specs/mixedcontent/
Not sure about the browser support.

Apparently Chrome and FireFox both show mixed content warnings even if you use HSTS.
Isn't Content-Security-Policy: block-all-mixed-content the same as using HSTS though, don't they both try to achieve the same things, once the above HSTS bugs are fixed?

Well, they're not exactly the same. block-all-mixed-content will prevent the content from loading (same origin or third party), while HSTS will securely load same origin resources, but not do anything about third party resources.
Yes, upgrade-insecure-requests is nice, but would give you a network error if content couldn't be loaded over https. So there are probably some cases were you'd want to give a blocking error instead.

I was just thinking about what a sensible default might be. Content-Security-Policy: block-all-mixed-content seems a bit militant and I'm going to get developers complaining that their site is not working but Content-Security-Policy: upgrade-insecure-requests seems safer masks the real problem and but as you say it may break the site anyway.
Do either of these report CSP errors if they have to block or upgrade a HTTP request? If they don't, it might be better to not use either directive and rely on developers looking at the browser mixed content warnings and fixing the problem themselves.
What do you think?

Oh, you're thinking of adding this to the NWebsec config in the boilerplate template? In that case upgrade-insecure-requests could be a road to disaster. The NWebsec implementation will redirect to https if it's enabled, and the browser supports it. If anyone wants to run the app over http and not https, that would break the app.
The template is used when creating new projects from scratch, right? In that case, block-all-mixed-content would be the preferred option. It might be a bit early to add it though, as there's still some discussion going on about the directive, and I'm not sure it's supported by any browsers yet. IIRC it's behind a flag in Chrome, and not implemented in Firefox.

I have added features to my boilerplate project templates now. Some things can be turned on or off (In the next update, everything can be turned on or off).
I have a HTTPS Everywhere feature which already turns on, HTTPS port, redirect to HTTPS, HSTS and HPKP. I could just add upgrade-insecure-requests or block-all-mixed-content to it. Just thinking ahead, once again cool to learn stuff just by looking at the NWebSec issues.

Released.


READ, READ RECORD, EXTRACT, EXTRACT RECORD initialize variables

There is a warning about test$ and test1$ not being initialized, but the read will actually initialize them:
read (6,key="TEST",DOM=*next)test$,test1$

@StephanWald
Would be suppressing the linking warning here enough?

From meeting September 1st 2023:
Ignoring linking error is OK (at least for now).
Make sure next line can access test$.

Also FIND

@StephanWald
I decided to create a synthetic local variable instead of swallowing a linking error. Works much better that way as you now can navigate to this variables when using them later.


world caculate error

Describe the bug
in the file "ol\renderer\canvas\VectorLayer.js"

When I draw a rectangle near North America and then zoom in the view, the rectangle disappears. When I changed the code to this, the rectangle no longer disappeared. So I think there may be a calculation error here.

Are the actual geometry coordinates within the configured View's projection extent?
-180° <= x <= 180° for EPSG:4326
If the geometry is outside the projection extent it may not be drawn.


Inappropriate pio-diagram.svg causing text to disappear when exported to .pdf

The pdf of onboarding documentation when exported with asciidoctor-pdf has text missing in the block diagram:

The issues at first seemed to be of prawn-svg so I filed the issue here.
The issue in actual seems to be use of a recommended approach in generating the svg file as described in this comment.

Hi @saurabhsingh-pvips, thanks for reporting this. Unfortunately, this particular diagram was created in Lucidchart, but I don't think we'll be able to control the SVG export process that well. Given that it is technically a valid SVG file, even though it's not a recommended ordering, I'm not sure if Lucidchart would change the export method.
I think it would be acceptable, to manually edit this SVG file to put the <def>s higher up, but the caveat is that if we do another export from Lucidchart, they may end up in a different order again.


Browser UI in 87 lines of code

Hello Ben,
Congrats for your NES emulator, it's been a great source of knowledge and inspiration for me so far :)
This pull request is a bit special, I don't really expect you to accept it, but just so you know, I replaced all your React code with a standalone, 87-lines long, HTML page.
It launches your emulator from a ROM selected using a file input.
Cheers,
Max

Ah neat! Yeah not going to merge it, but I'll leave it open for people who are curious. :)


Update rubyrep to include nested transaction fix

This was required because rubyrep would open a transaction per 1000 rows and also a transaction for each change it replicated.
If the inner transaction failed for any reason, the outer transaction would also be aborted because postgresql does not really support nested transactions.
This would cause the replicate process to timeout because no sql could then be processed in the aborted transaction.
https://github.com/ManageIQ/rubyrep/pull/9
https://bugzilla.redhat.com/show_bug.cgi?id=1348576

@miq-bot add_label replication, bug, core, darga/yes

👍 Good to go


Glenn Grieves- Engagement Account Manager Access Ticket

Access Needed for New Designer

[x] CDC email - (in Progress - Frank Dilley contact)
[x] Zenhub Access
[x] Easyretro Access
[x] Mural Access
[x] Forward meeting invites
Slack Channels

[x] prime-reportstream
[x] prime-reportstream-engagement
[x] prime-reportstream-engineering
[x] cdc-reportstream-engagement-shared

Closing, Glenn now has CDC email and access to CDC's environment


Rhai standard library.

There currently seems to be no plugin/library that allows giving rhai scripts full system access by allowing them to do things like spawning subprocesses or doing filesystem operations. Is something like this planned as an optional feature or has someone already made this as a seperate crate?

Not really.  It was originally planned but nobody sorta got around to it...

Seeking contributors to build up Rhai's standard library.

When I chose the script engine, I found that there is a standard module. We can learn from it
rune_modules

It  is true.  It does leave something to be desired.
I agree that having a basic standard module is a quite urgent need.

It  is true.  It does leave something to be desired.
I agree that having a basic standard module is a quite urgent need.

Jazz's standard fs library and fs-extras library are adequate for Jazz Flute, the standard application framework.
The other crates that are integrated by default in the scripting environment can also be found in the bindings directory.
It looks pretty easy to integrate Jazz and Rhai.

@dankope has indicated that he'd work on this... let me see if this mention is enough to assign this issue to him...

EDIT: Hmmm....  looks like no.  @dankope, would you make a comment here so I can assign you?

Should be able to assign me now, hopefully.

First package done! Please try it out and leave feedback on what should be changed/fixed, thanks. https://github.com/rhaiscript/rhai-fs
The next package will most likely be networking. The networking package will only use what is available in the rust std library to insure compatibility.

Any updates on the networking package?

Any updates on the networking package?

Hi, thank you for asking, I have been busy lately however I should have some time next week to get it in a good shape for publishing, thanks again for taking the time to ask.

The networking package has been pushed to the preliminary stage (aka not in the rhai org yet) here: https://github.com/dankope/rhai-net! Currently it supports TCP server and client functionality however there is quite a bit still yet to be done, I will have the issues for it filled out later tomorrow hopefully, so everyone is on the same page as to what to expect.

@eliabieri I wonder if the networking package is still progressing?