Set up slurm for travis

This issue will solve of https://github.com/clusterlib/clusterlib/issues/3 and also  https://github.com/clusterlib/clusterlib/issues/6.

Coverage remained the same when pulling 1f868059ff68d59f6846275ef439a0afc557a184 on travis-slurm into 1af9e2d932745f2b546a430c84a0e96b227c6443 on master.

Coverage remained the same when pulling efbef646d2033c68a1e42536159115b9637b743f on travis-slurm into 1af9e2d932745f2b546a430c84a0e96b227c6443 on master.

Coverage decreased (-1.6%) to 95.15% when pulling 41d3622327d903eebb46ce6096130a0e8a6e71ac on travis-slurm into 1af9e2d932745f2b546a430c84a0e96b227c6443 on master.

Coverage decreased (-1.6%) to 95.15% when pulling 088c85fddb8e8619be001266ba6919e52563124e on travis-slurm into 1af9e2d932745f2b546a430c84a0e96b227c6443 on master.

Coverage decreased (-1.72%) to 95.03% when pulling 088c85fddb8e8619be001266ba6919e52563124e on travis-slurm into 1af9e2d932745f2b546a430c84a0e96b227c6443 on master.

@ogrisel The slurm installation is working, however there is a compatibility between python 2 and 3. By chance, do you know a way to perform string comparison that is compatible between python 2 and 3.

@ogrisel The slurm installation is working, however there is a compatibility between python 2 and 3. By chance, do you know a way to perform string comparison that is compatible between python 2 and 3.

The problem is not the comparison: the bytes should be decoded before, right after you read them (e.g. from a socket or a file). In Python 2 is done implicitly with a random (platform specific) encoding. In Python 3 youhave  to decode bytes objects into unicode string explicitly with an appropriate encoding depending on where the bytes come from.

Coverage decreased (-1.51%) to 95.24% when pulling a3f4fab6b86d350fac6f457d847905bb01a56dd4 on travis-slurm into 1af9e2d932745f2b546a430c84a0e96b227c6443 on master.

Thanks ! It's working now!

Coverage decreased (-2.11%) to 94.64% when pulling 0e0899e8b98ba3fc12c917a4023d1efd7d662f25 on travis-slurm into 1af9e2d932745f2b546a430c84a0e96b227c6443 on master.

Coverage decreased (-1.69%) to 95.06% when pulling 292ecc35418d7e479f131ed45abdfd51c75e4beb on travis-slurm into 1af9e2d932745f2b546a430c84a0e96b227c6443 on master.

Coverage decreased (-1.69%) to 95.06% when pulling 57d708b7ce8cee33a68107bb214bb0c8b274f9fe on travis-slurm into e4c19d617b7f6b8b1855f0e7826a169cff57b9b1 on master.

This is merged. Thanks @ogrisel !!!


[occm] add annotation for real loadbalancer address

What this PR does / why we need it:
We need somekind of way to see the real ip address especially when using hostname annotation
Which issue this PR fixes(if applicable):
fixes https://github.com/kubernetes/cloud-provider-openstack/issues/2095
Special notes for reviewers:

Release note:

NONE

/test openstack-cloud-controller-manager-e2e-test

/test openstack-cloud-controller-manager-e2e-test

/test openstack-cloud-controller-manager-e2e-test

/test openstack-cloud-controller-manager-e2e-test

/lgtm
/approve

please open a follow up PR to doc the new annotation..


 However the spm stays 0. It's definitely a TMIW error, because the nRF connect can properly decode it. Actually the device provides both average and instantaneous spm.

Log 2022-07-29 23_49_01.txt
LogExport29072022_234214_PM_all_[1].zip

Technogym Aquafeel console sends two types of data packets inside the Rower Data characteristic:

Stroke Count, Cadence, Calories
Distance, Power, Speed, Pace, Elapsed Time

The former packet's flag descriptor has its Future Reserved bit flag set, and consecutively the data packet contains 15 bytes instead of 11, so it has 4 extra bytes. The current strict processability mechanism yeets those packets. The solution is to allow extra bytes if Future Reserved features are indicated,

The fix was applied to other FTMS data protocols as well for future proofing

The website of the machine https://www.technogym.com/us/skillrow.html and is called Skillrow not Aquafeel

Some more nRF Connect logs:
Log 2022-07-30 08_44_21.txt
Log 2022-07-31 02_18_37.txt

Log 2022-07-29 23_47_25.txt
Log 2022-07-29 23_48_53.txt


138323285-Add_application_close_date_to_framerwork MIGRATION

Migration

Ooh you figured out how to use orm queries in alembic migrations... will have to refer to this in future. :+1:

(oh, provided you squash out or recomment the "foo" changesets)

Made another PR in the end as this branch got polluted with commits
https://github.com/alphagov/digitalmarketplace-api/pull/535

Made another PR in the end as this branch got polluted with commits
#535


Bundle Analyzer

Ask your Question
Can you please confirm if Re.Pack provides a built-in bundle analyzer or any other visualization tools to compare its generated bundles with those created using Metro bundler?

There's no built-in bundle analyzer, but since repack is using webpack under the hood, you can access all of the webpack plugins.
The one that I've been using to analyze bundles is Statoscope: https://github.com/statoscope/statoscope

mark


Merge sorted array

Pull Request Template
What have you Changed(must)
Added code for Merging Two Sorted Arrays
Issue no.(must) - #1369
Pr will be close and marked as spam. If issue number not found or issue was assigned to someone else.
Marking as spam can block your account from HacktoberFest.
Self Check(Tick After Making pull Request)

[x] This issue was assigned to me if not it will be marked as spam.
[x] My file is in the proper folder
[x] I am following clean code and Documentation.
[x] I have added the title and what program will do first in the file
[x] I have named the file as (Problem #). (Problem Title(in Camel Case)).(extension)
ex. 2. AddToNumbers.py

README - How to Contribute

@SSKale1  please could you see this pull request, I had verified this code, also got accepted in LeetCode.


Browser shim?

Is your feature request related to a problem? Please describe.
Does MO offers a browser shim?
If you have a monorepo with DRY models you want to import the models (or decorate types/classes) to the frontend but the decorators shouldn't do anything on the browsers because yeah, you don't have a db there and you just want the type defs. And besides, you don't want to bloat the frontend gzips with unneeded code.
Describe the solution you'd like
Check type-graphql, the maintainer created an elegant browser shim.
Describe alternatives you've considered
To copy the files to the frontend folders and strip out the decorators with sed on file save haha but this is rather super messy.

In frontend you could import just the type (something like import type { Author } from './entities/author';).

Check type-graphql, the maintainer created an elegant browser shim.

Not sure how is this describing anything. At least provide a link to what you are talking about. Ideally send a PR right ahead :]

import type { Author } from './entities/author';

This's nice. Howeveer, wouldn't I also import the attached decorators as well? If not this could be elegant way.
Re type-graph!l, https://typegraphql.com/docs/browser-usage.html

Nope, this will import only the type, so basically only what is inside the d.ts file. And there are no decorators, its basically just an interface of the actual class

This is actually smart, it just needs a compile step before the FE repo can import the d.ts.
But wait, there is one catch: Decorators like those from class-validator are also helpful in the FE, so I would like to keep them and not repeat them there myself AND I couldn't because I would just have an imported d.ts. which I cannot decorate...

Importing type will only... import the type :] There cant be any decorators, it will be just a (typescript) type, so basically an interface.

Yes sure but if the FE dev imported the decorated class from the BE and not the type he would benefit from the class-validator decorators he would need for his FE work as well. Otherwise he would need to re-implement validators in the FE (e.g. is the entered input really an email address etc.).
 So you kick out type-graphql but keep class-validator.

We can definitely add a shim here too, but as I never even used the project with webpack myself, I'd prefer if someone else could do this and test it in real world scenario. In the end you should not even need the ORM to provide a shim, you could plug in your own I guess, right? And if it works fine, send a PR :]

If you are only using it to store data, why not use DTO instead?

Has, Anyone made any progress on the shim? I tried to make one but only ran into errors. I'm thinking maybe separating the classes into a validator class and the schema class using nestjs's mapped types might be necessary.

I'm thinking maybe separating the classes into a validator class and the schema class using nestjs's mapped types might be necessary.

I don't really understand what you mean by that, but keep in mind that MikroORM on its own can't use anything from nestjs, as it is not dependent on nestjs anyhow.

I'm thinking maybe separating the classes into a validator class and the schema class using nestjs's mapped types might be necessary.

I don't really understand what you mean by that, but keep in mind that MikroORM on its own can't use anything from nestjs, as it is not dependent on nestjs anyhow.

Oh, what I was thinking is that nestjs has some utility functions that can directly copy a class with its class-validation decorators. So if I use that, then I can technically have a single source of truth with a copy of the class with just its validation. However, I just realized that regardless it leads to an indirect import of the main class that has all the decorators I can't use on the front-end.
Maybe what I can do is have an  EntityValidation class and an Entity class, but then I would have to define each class attribute twice.

TypeORM has it:
https://github.com/typeorm/typeorm/blob/master/extra/typeorm-model-shim.js#L16-L21
Most decorators are no-ops.

one could use technically use mikro-orm in the browser with sqljs or when one is using a webview and integration with cordova and/or capacitor.
I myself just got knex working with an ionic/capacitor plugin (which i think can also use sqljs), but it'll be a bit tougher to bring in mikroorm.

I have been wanting to build a system similar to what was described in this video https://www.youtube.com/watch?v=WxK11RsLqp4&t=2176s (there are two talks, the video should start at the right spot).
The solution shown seems very inspired by MikroORM. They have created an ORM that works in the browser that uses Single Table Inheritance (AKA the Object Pool in the video) for an In-Memory database type implementation.
Since this video was posted, they have implemented multi-layer storage strategy on the browser. In-Memory (for high performance with volatility), IndexedDB for local persistence and reduced requests to the back-end, and the back-end or as the video calls it, the Object Store.
They publish changes to the back-end using GraphQL and they avoid making queries to the back-end by having those queries be performed in the front-end.
If MikroORM could make browser support a first-class citizen for something like that, it would be super cool.


Breakout | Trends | Backtesting

Breakout criteria (10):

If all pass: green dot
1 fail : orange
2 or more fail: red

Only upon trend change, plot

For backtesting:
Green = Buy
Red = Sell
What will happen to the value of a portfolio of a fixed starting value of USD 1000.

@vamseeachanta
I have no proper clarity on how to plot this , please explain me next time we meet sir.

@vamseeachanta
Added the code for breakout trend plot sir , please see it below ,
https://github.com/vamseeachanta/stockhold/blob/first_pass_run/src/stockhold/analysis/stock_analysis.py
https://github.com/vamseeachanta/stockhold/blob/b1e04d9610348ecf71ed15da410778c0d907d7a1/src/stockhold/tests/test_data/analysis/results/Plot/breakout.png

@vamseeachanta  modified the code sir , please see the plot above .

Breakout df columns need to be improved.
df columns: Description, Value, Analysis
Value: True or False
Analysis: dictionary of result (

daily_breakout_df is a df of 1 day analysis. Convert to daily_breakout_dict.
breakout_analysis_trend_df = date, analysis, Fail-0, Fail-1, Fail-2, Fail-3, Fail4, etc. etc.
date
analysis = daily_breakout_dict
Fail-0: if green True else False
Fail-1: if orange True else False

@vamseeachanta Hi sir , good morning
improved the breakout_analysis_df , please see it below ,
https://github.com/samdansk2/assethold/blob/first_pass_run/src/assethold/tests/test_data/analysis/breakout_analysis_trend.csv

@vamseeachanta
the final dataframe is below , please see it sir ,
https://github.com/samdansk2/assethold/blob/first_pass_run/src/assethold/tests/test_data/analysis/breakout_daily_data_trend.csv

Way forward:

Try plotting 2 -3 tickers.
Do the same for 1 year.
Try an India ticker also for same.

Write a Back-testing module. Use all numbers as variables in .yml file so we can test:

Green : Currency 1000 buy next trading day.
Orange: 10% position sell next trading day.
Red: 50% position sell next trading day.

set up database for getting ready to store data.
https://supabase.com
Free up to 500 MB
create login
try to insert data.

Way forward:

Try plotting 2 -3 tickers (RIG, AAPL, TSLA, XOM)
Do the same for 1 year.
Try an India ticker also for same (select 3)

Write a Back-testing module. Use all numbers as variables in .yml file so we can test:

Green : Currency 1000 buy next trading day.
Orange: 20% position sell next trading day.
Red: 50% position sell next trading day.

@vamseeachanta
added plots for TCS and TSLA for 1 Year of daily data , please see below
https://github.com/samdansk2/assethold/blob/first_pass_run/src/assethold/tests/test_data/analysis/results/Plot/breakout_TCS.png
https://github.com/samdansk2/assethold/blob/first_pass_run/src/assethold/tests/test_data/analysis/results/Plot/breakout_TSLA.png

further we should discuss about backtesting module sir

further we should discuss about backtesting module sir

Try writing some code. I will help you finish up the code. At least keep an empty function and make a start.

@vamseeachanta
added the code for backtesting sir ,  please review
https://github.com/samdansk2/assethold/blob/first_pass_run/src/assethold/analysis/stock_analysis.py

@vamseeachanta
improved legend in breakout plot sir and added the complete code for backtesting , please see it below ,
https://github.com/samdansk2/assethold/blob/first_pass_run/src/assethold/tests/test_data/analysis/results/Plot/breakout_XOM.png
https://github.com/samdansk2/assethold/blob/first_pass_run/src/assethold/analysis/stock_analysis.py

Check breakout trend failures for:
a/ Which date did the green dot occur first.
b/ When stock price drop was precipitous,  did breakout trend failures still pass?

@vamseeachanta
Basically above plot is not properly implemented , below is the original plot
https://github.com/samdansk2/assethold/blob/35b88dd8834f4e53b9b0cd933c199c9efc8fef00/src/assethold/tests/test_data/analysis/results/Plot/breakout_XOM.png


recommended way to call feedReader() for reactivity

Is the best way to invoke the Feed.read() function from your example going to be in Meteor.startup()?
I'm doing it this way and things aren't updating reactively. I'm also (strangely) not getting all of my Atom entries, though that could be an unrelated issue.
if (Meteor.isServer) {
  Meteor.startup(function () {
    function feedReader() {
      // pass the created collections to Feed.collections()
      var collections = {
          feeds: Feeds,
          feed_entries: FeedEntries
      }

      Feed.collections(collections);

      var the_feed = {
          link: "link/to/feed"
      };

      Feed.createAtomFeed(the_feed);

      // invoke Feed.read() to get real-time reactive social stream
      Feed.read();
    }

   feedReader();

  });
}

@zaklampert
You are correct, it should be in Meteor.startup().
Please take a look at my example: feed-demo, you could clone it to see if it gets entries and changes to your link, credential etc.
Please let me know how it goes.

cool, it seems to be correctly fetching things now. I just moved the function feedReader() outside of the Meteor.startup then called feedReader() inside Meteor.startup()
So, i'm getting all the items from my feed, but if I change an item, it is not updating reactively (editing a title). Should it? I'm basically trying to use a third party cms that has Atom exporting as my meteor app's cms. Do you think it's possible?

@zaklampert
I am glad that it works.
For the update, It depends on the implementation of the Atom of the third party cms system. It might not emit update events. Is there any way you could manually see if it has an update event?
Do you see the feed right away if you have a new post in the cms?

I have multiple feeds in my project. And chances are some items arrive in 2 or more feeds. FeedParser would then throw a Mongo DB insertion error. Any idea how to handle this?


Updates to ship 0.11.0 releae of knative-eventing

getting ready for the next relase :tada:

/assign @houshengbo

/test pull-knative-eventing-operator-integration-tests

/close
was done with #49


Add setTitleImage to API

Just adds the setTitleImage function to NavigationControllerIOS, for which the action already exists in RCCNavigationController (and also exists in the react-native-navigation API layer).
Also fixes a typo in the RCCNavigationController method to do that (setTitleIamgeForVC: to setTitleImageForVC:).
Let me know if you'd prefer two separate PRs for those, and whether its worth adding the setTitleImage API to the readme.

Hi, we wanted to update you that we are currently postponing the processing of pull requests.
Please refer to React native controllers evolution, we'll appreciate your feedback.


Chatbox demo fails on scrolling with touchpad

Expected Behaviour
When scrolling inside the chatbox window, when I hit the bottom, nothing should scroll not even the background div.
Actual Behaviour
When scrolling inside the chatbox window, when I hit the bottom the background page is scrolling.

Check that you're using chrome 63+.

If you mean the bounce effect on Mac, that's an OS-level setting.

@ebidel yeah it was the chrome version problem, tried it on the latest chrome canary and it worked fine

@ebidel shou;dn't we mention this in the demo. I can make a PR regarding this

Yea it probably should. Happy to take a pr
On Wed, Nov 15, 2017, 7:40 PM Aditya Agarwal<EMAIL_ADDRESS>wrote:

@ebidel https://github.com/ebidel shou;dn't we mention this in the
demo. I can make a PR regarding this
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ebidel/demos/issues/2#issuecomment-344806255, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAOigA-z2d73zF3N61XiuQhPJJ9qRShzks5s266WgaJpZM4Qee-I
.

File a Chrome Issue to track implementing this.

@ebidel please review PR #3

fixed in #3


chore(main): release 1.0.0

:robot: I have created a release beep boop
1.0.0 (2024-08-22)
Features

init using pnpm create vue@latest (17f966b)
migrate from old private homepage repo (df82002)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v1.0.0
:sunflower:


[Screen Reader – Intelligent Support - IRIS]: The error message that an incorrect alias has been selected is not being announced by the screen reader

PWD Impact:
Users relying on screen reader will be affected if the errors that appear on the page are not being announced.
Repro Steps:
Step 1: Open the above URL in a browser. Home Page will open.
Step 2: Navigate to Iris bot icon in the header and invoke it
Step 3: Iris bot chat window is displayed
Step 4: Type start over-> Top questions for my role-> select Where can I download the Time 2.0 mobile app for Android ->Select no create a support ticket->select any tool from the drop down->continue button
Step 5: After invoking the continue button a form is displayed, turn on Narrator.
Step 6: Enter into the 'Alias of user/groups to receive all incident emails' editable field and here enter an incorrect alias.
Step 7: Verify if the narrator announces the error that appears.
Actual result:
When we enter an incorrect alias an error message appears 'One or more of the email aliases are invalid. The following are incorrect: abcdef. Please correct the alias(es) to continue creating your incident.'
Now this error is not announced by the screen reader, instead it announces a lot of unwarranted changes.
Expected Result:
If the alias that has entered is incorrect and an error message pops up at one point the narrator should announce that an error has occurred. There should be atleast one announcement that should mention the field where the error occurred and what the error message was.
Note:
The behavior exhibited by NVDA is also similar.
MAS Reference:
https://microsoft.sharepoint.com/:w:/r/sites/accessibility/_layouts/15/Doc.aspx?sourcedoc={49C317E6-0FEE-4B0A-9055-7A914300DAEF}&file=MAS 3.3.1 – Error Identification.docx&action=default&mobileredirect=true
Test Environment:
OS: Windows 11 Enterprise version 21H2
Browser: New Edge Version 106.0.1370.42 (Official build) (64-bit)
URL: https://servicesuat.microsoft.com/#/
Screen Reader: Narrator

#A11yMAS;#A11ySev2;#HCL;#MAS3.3.1;#Accessibility;#Win11-Edge(Chromium);#BotFrameworkWebChat-Jul22;

@pgopinadhu I couldn't see the bot using the URL with my internal credentials.
Could you grant me access to the Iris bot? We need access to understand how this issue repro, if this repro outside of the hosting page, and if any customizations were applied.

I have been asking access for the few weeks and still did not get a response.
We cannot investigate any further whether this is an issue with Web Chat or Adaptive Cards. I am closing this.

@compulim Product Team Provided the Environment access. Please check and let us know if there are any issues. Thanks!

No repro.
After navigating to the form, I can hear "Alias of users slash groups to receive all incident emails. Edit. Separate each user slash group with a comma or semicolon. Space"
This starts around 00:22 in the attachment.
https://user-images.githubusercontent.com/1622400/224420192-25c523d9-2777-4f1f-9515-0521055a7c55.mp4


Run the scenarios in random order

How about we run all the scenarios in random order? This forces people to write scenarios which are not dependent. We can also provide a flag which will turn this behavior off.
thoughts?

+1  this will hugely help in parallelising. If users can consciously write
tests that are independent, then the (upcoming) support for parallel
execution would be very beneficial and upgrade friendly :)
On Thu, Jan 29, 2015 at 2:13 PM, Navaneeth.K.N<EMAIL_ADDRESS>wrote:

How about we run all the scenarios in random order? This forces people to
write scenarios which are not dependent. We can also provide a flag which
will turn this behavior off.
thoughts?
—
Reply to this email directly or view it on GitHub
https://github.com/getgauge/gauge/issues/78.


Basic health management

Implements #73.
(Github now also has squash on merge I believe. If you want me to squash on my branch anyhow just tell me.)

If the client has potential to crash at a particular amount it'd be logical to hardcode the limit. If it's an unknown value then it should just give a warning when going above a certain preset amount. I don't really see the merit of adding a config for the 'max max' setting, it'll just restrict people. Maybe change the config to have a 'show warnings on high max health values or something: true/false' instead?
If we're going to change the /h permission to .health we'll have to remember to include it in the changelog so permissions can be updated.

The client doesn't hard crash on high values, but extremely high values cause FPS lag and will eventually lead to a softlock. 1024 seems like a good hardcoded limit (it's in the default spigot.yml too).
As for the .health permission, it was already like that in the plugin.yml, so I figured I might aswell fix the documentation (probably should've made it a seperate commit, though).

What kind of values does FPS lag normally start for people? Could be worth adding that 'warning' feedback if they set values past it.
If spigot already has a hardcoded limit for max health then what happens if we try and set the health past it? What happens if I run /h -m2000? If it auto-limits it then we'll want to also include the max-health in the feedback message so the executor knows the new values. Talking of feedback, should we also be telling the player/s that are being modified their new values like for /heal e.t.c.?
If it was .health already I'll just add a fix message in the changelog, good catch

I personally start to lag around ~20000 maximum health (10000 hearts), but this depends on the performance of the player's graphic card.
If a plugin attempts to set the health higher than Spigot's maximum value then it just rolls back to the maximum health. Feedback for the sender is already given as the same logic of showing player health is executed, just after health modification. Telling the player about his health being modified isn't a bad idea though, I'll add that now.

I meant feedback for the new max health. If I run /h -am 2000 I'd assume it was successful but spigot would have actually set it to 1024

Oh, you mean a warning as in "Expected maximum health to be set to XX but was set to YY"? That's a good idea.

Yeah that would be good, we'd need to new strings:
Max health was larger than spigot allows, set to {{ amount }} instead
Warning: max health is > 100 hearts, be careful this may start to cause problems for some clients
or something similar

I think I implemented everything. Anything else?


Feat: Cannot start tiden on MacOS without watchman install

Add error handle in cli, when dev machine missing watchman
Add README guide to install watchmane

This fixes #22


Support for Angular 16

There seems to be an open PR already: https://github.com/bluehalo/ngx-leaflet/pull/355
Any plans on when this will be released?

Released. Let me know if you have any issues

Awesome, thanks! Version 16.0.1 works 👍


entry_4096: The system cannot find the file specified (os error 2).

When the .exe boots, and tries to load games, the following error appears.
entry_4096: The system cannot find the file specified (os error 2).

Hi there! I'll assign @ultimaweapon to this as I believe he is currently in the middle of implementing OS Firmware usage.

Uh, correction. Seems like a possibly corrupted package file. As entry_4096 is a Param.SFO reader.

Looks like it was tried to load the game that was installed with old Obliteration. Re-install all of your games should fix the problem.

Problem was it was showing error because I was trying to load extracted .PKG games and not PKG. So all good now. cheers

Thanks for the update. The problem has been resolved so I will close the issue.


notes

Add some notes using Github markdown to render things.
BTW you may notice in https://github.com/slwu89/Fleck.jl/commit/0bc38a772713278d521d5265068552de5995e5dc I changed the next method of DirectCall and FirstReaction to return relative putative times to firing, as that is what the VAS expects. But the fact you changed them to return absolute times to firing makes me think perhaps you intend all the samplers' next methods to return absolute rather than relative times to firing, which one is it? Anyway, I found the problem by rerunning my SIR examples in examples/.

Argh, I just saw this. Yes, I wanted absolute times. Maybe relative is a better idea. The Semi-Markov is a sequence of {X_i,T_i}, so those times are absolute. I guess that's where it came from. Can you post the markdown after I merge a PR? I'm trying to make you a reviewer on the PR.

ah, it looks like you made the PR from your feature/set-interface into main and merged already?


Make inventory pipelines to be configurable.

Sending this out for initial review.  Will polish it and add test at later step.

This make inventory pipelines configurable via an external yaml file.
A dependency tree will be built.
Organizations pipeline is root, and will always be run.
The main rule is:

If child pipeline is true, then all parent pipelines will become true.
Even if the parent(s) is(are) configured as false in the yaml.

organizations
|-- folders
|-- groups
|   +-- group_members
|-- org_iam_policies
+-- projects
    |-- bigquery_datasets
    |-- firewall_rules
    |-- forwarding_rules
    |-- buckets
    |   +-- buckets_acls
    |-- cloudsql
    +-- projects_iam_policies
True
|-- False
|-- True
|   +-- True
|-- True
+-- True
    |-- True
    |-- False
    |-- True
    |-- True
    |   +-- True
    |-- True
    +-- True

They dynamic module loading is adopted from spotify, but is tweaked to reduce code.  i.e. the module name has to be maintained in the yaml.  (This is similar to appengine's approach.)  I think there is a way to maintain outside of this config file, if this is not desired.

PTAL, unit tests are added.  I will have to discuss with Carise, the best way to strongly couple the class names.

FYI, I'm introducing a bunch of new resources, such as #305. Is there a test or process in place that will make sure this new stuff gets updated as we add new inventory types?

Nice PR! I've added a few comments/ideas :) 👍 for the PR

@matthewg Good idea, I have added a test to make sure the pipelines and the requirement maps are in sync.  I will wait for your PR to be checked in first, before this one.  Thanks!

Adding cla: yes label, as the PR author is a googler at the time of this PR was created.


Fix clippy lints

What type of PR is this?
/kind ci
What this PR does / why we need it:
Fixing the latest clippy reports.
Which issue(s) this PR fixes:

None
Special notes for your reviewer:
None
Does this PR introduce a user-facing change?

None

/lgtm


jdk, jdk7: fix JdkDownloadStrategy for Linuxbrew

Hopefully fixes #595 by adding the -L option to curl to follow redirects.
I had to make the change twice, in both jdk and jdk7. Is it worth it to factor out that identical JdkDownloadStrategy elsewhere?

The preferred commit log message is jdk: Fix JdkDownloadStrategy for Linuxbrew

Hi, Jake. The redirect doesn't seem to be the issue. It still fails for me:
$ brew fetch jdk7 -sfv
==> Downloading http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.tar.gz
==> Downloading from http://download.oracle.com/errors/download-fail-1505220.html
/gsc/btl/linuxbrew/opt/curl/bin/curl -fLA Homebrew 0.9.5 (Ruby 2.2.3-173; x86_64-linux) http://download.oracle.com/errors/download-fail-1505220.html -C 0 -o /home/sjackman/.cache/Homebrew/jdk7-<IP_ADDRESS>.tar.gz.incomplete --cookie oraclelicense=accept-securebackup-cookie -L
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  5307  100  5307    0     0   276k      0 --:--:-- --:--:-- --:--:--  323k
Downloaded to: /home/sjackman/.cache/Homebrew/jdk7-<IP_ADDRESS>.tar.gz
SHA1: 43eabe42bb8d6e8dfe33f3a815f265ac5d5bb586
SHA256: 80212f7748c2671b89b6085000717c747851db004409dce3bb97f3a2aeb91cdd
==> Verifying jdk7-<IP_ADDRESS>.tar.gz checksum
Warning: Formula reports different SHA1: 912996f71f19635d9c85f3016c918f2b359a8011

$ curl -L http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.tar.gz |head -n2
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
<html>
<head>
curl: (23) Failed writing body (864 != 4123)

Hmm. curl on the command line works for me though. That's weird.
$ curl -L --cookie oraclelicense=accept-securebackup-cookie http://download.oracle.com/otn-pub/java/jdk/8u60-b27/jdk-8u60-linux-x64.tar.gz |sha256sum
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100   288    0   288    0     0    908      0 --:--:-- --:--:-- --:--:--   908
100  172M  100  172M    0     0  9681k      0  0:00:18  0:00:18 --:--:-- 8660k
ebe51554d2f6c617a4ae8fc9a8742276e65af01bd273e96848b262b3c05424e5  -

Also it looks like CurlDownloadStrategy already adds -L to the options.
https://github.com/Homebrew/homebrew/blob/master/Library/Homebrew/download_strategy.rb#L337

The problem is that actual_urls doesn't pass the cookie option to the curl command line. Grumble.

Hmmm. I'm having trouble even reproducing the error on my computer. I'll keep trying though.

What's the purpose of actual_urls?

It looks like its purpose is to check if a https URL is insecurely redirecting to a http URL.
See https://github.com/Homebrew/homebrew/blob/master/Library/Homebrew/download_strategy.rb#L274-L283

I'll try overriding _curl_opts instead. That might be cleaner anyway and should affect actual_urls as well.

Ah, yes. Good call.

This worked for me. Shaun, can you confirm?
Also, while we're here should we factor out JdkDownloadStrategy

Thanks, Jake!

No problem!


gzipped WARCs not indexable in OpenWayback 2.1 until unzipped

We used WebRecorder to record http://www.nsi.bg/census2011/pagebg2.php?p2=175&sp2=218 and the linked PDF pages one hop out but were unable to index the resulting WARCs into OpenWayback 2.1 until we unzipped them. Not sure whether this reflects an issue with WebRecorder WARC writing or OpenWayback 2.1 indexing. It's also possible that this isn't an issue in OpenWayback 2.2. Happy to provide a link to the WARC files in question, if that's helpful.

(To be clear, this is about webrecorder.io, not pywb-webrecorder, which I believe should be fine. There will soon be a issues pages for webrecorder as well)
webrecorder.io signs the WARCs so that they can be verified later, and I'm guessing that this is causing issues for openwayback, as it must not be handling gzip in a standard way. (See: warcsigner)
For comparison, I  just tested these a signed WARC with gzip -t, JWAT tools, and [IA CDX Writer]
(https://github.com/internetarchive/CDX-Writer), as well as the webarchive-commons indexer and the openwayback indexer.
CDX-Writer and JWAT properly parse the warc, and gzip -t reports no errors.
The openwayback indexer seems to choke on the WARC, while webarchive commons indexes the cdx, though chokes on the signature at the end.
This seems to be an openwayback indexing problem. In the meantime, I guess I can add an option to disable WARC signing...


High Sierra no longer available?

It looks like Mojave is now supported, but the High Sierra templates have disappeared.  This has broken all of our macOS based CI (template isn't found).
Was this breakage intentional?  Are we required to move to Mojave to continue using Cirrus?
/cc @gspencergoog

If this was intentional, https://cirrus-ci.org/guide/macOS/ is now out of date.

Only 'high-sierra-xcode-9.4' got deprecated. Please use 'high-sierra-xcode-9.4.1' instead.


Logging a null character causes an exception

Serilog appears to handle NULL characters fine but printing it to a RichTextBox causes an issue.
If there is a NULL character in a string that is being logged, we end up with an unhandled exception.
msg = "\0";
Log.Information("{msg}", msg);

@eemitev Does the Console sink support NULL characters? What would would you expect to see on the RichTextBox for non-printable characters like these?

The Console Sink appears to print garbage instead of the NULL character. My expectation would be to get a Unicode Symbol. Specifically U+2400 ␀ SYMBOL FOR NULL

Same problem with some other chars like:
Log.Information("\u0002");
Log.Information("\u0002");


fix: fixed sarif converter filepath trimming

[ ] Ready for review
[ ] Linked to Jira ticket

What does this PR do?
Our backend returns slash "/" not always. So we need to be smarter when trimming it.
Where should the reviewer start?
How should this be manually tested?
Any background context you want to provide?
Screenshots
Additional questions

:tada: This PR is included in version 3.5.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


python3Packages.boschshcpy: 0.2.23 -> 0.2.24

Motivation for this change
Update to latest upstream release 0.2.24
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 147584 run on x86_64-linux 1

2 packages built:

python38Packages.boschshcpy
python39Packages.boschshcpy


WFCORE-503 Child resources under the deployment=XXX resource should read-only

also fix few things in content repository

Core - Full Integration Build 332 is now running using a merge of b31a1e1f9df3653761f1bb44890d9b9178359302

Linux Build 1051 is now running using a merge of b31a1e1f9df3653761f1bb44890d9b9178359302

Windows Build 757 is now running using a merge of b31a1e1f9df3653761f1bb44890d9b9178359302

Windows Build 757 outcome was FAILURE using a merge of b31a1e1f9df3653761f1bb44890d9b9178359302
Summary: Tests failed: 5 (5 new), passed: 2927, ignored: 95 Build time: 0:15:54
Build problems:
Failed tests detected
Failed tests
org.jboss.as.repository.ContentRepositoryTest.testHasContent: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

org.jboss.as.repository.ContentRepositoryTest.testAddContentReference: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

org.jboss.as.repository.ContentRepositoryTest.testRemoveContent: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

org.jboss.as.repository.ContentRepositoryTest.testGetContent: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

org.jboss.as.repository.ContentRepositoryTest.testAddContent: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

Linux Build 1051 outcome was FAILURE using a merge of b31a1e1f9df3653761f1bb44890d9b9178359302
Summary: Tests failed: 5 (5 new), passed: 2927, ignored: 95 Build time: 0:19:44
Build problems:
Failed tests detected
Failed tests
org.jboss.as.repository.ContentRepositoryTest.testHasContent: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

org.jboss.as.repository.ContentRepositoryTest.testAddContentReference: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

org.jboss.as.repository.ContentRepositoryTest.testRemoveContent: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

org.jboss.as.repository.ContentRepositoryTest.testGetContent: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

org.jboss.as.repository.ContentRepositoryTest.testAddContent: java.lang.AssertionError:
Expected: is "d8232160cea8e468465fb092e210e4244cdd6f96"
     but: was "0c40ffacd15b0f66d5081a93407d3ff5e3c65a71"

retest this please

Core - Full Integration Build 332 outcome was FAILURE using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0
Summary: Tests failed: 40 (40 new), passed: 2752, ignored: 432 Build time: 0:49:50
Build problems:
Failed tests detected
Failed tests
org.jboss.as.test.smoke.webservices.WSTestCase.testManagementDescriptionMetrics: java.lang.AssertionError: null
	at org.junit.Assert.fail(Assert.java:86)
	at org.junit.Assert.assertTrue(Assert.java:41)

org.jboss.as.test.integration.ejb.management.deployments.EjbJarRuntimeResourcesTestCase: org.jboss.as.test.integration.ejb.management.deployments.EjbInvocationStatisticsTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: ejb-management.jar
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

org.jboss.as.test.integration.ejb.management.deployments.EjbJarRuntimeResourcesTestCase: org.jboss.as.test.integration.ejb.management.deployments.EjbJarInEarRuntimeResourcesTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: ejb-management.ear
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

org.jboss.as.test.integration.ejb.management.deployments.EjbJarRuntimeResourcesTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: ejb-management.jar
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

org.jboss.as.test.integration.ejb.mdb.timerservice.SimpleTimerMDBTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: testTimerServiceSimple.war
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

org.jboss.as.test.integration.ejb.security.runas.RunAsTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: ejb3security.war
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

org.jboss.as.test.integration.ejb.interceptor.invocationcontext.InvocationContextTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: invocation-context.jar
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

org.jboss.as.test.integration.ejb.timerservice.view.ViewTimerServiceTestCase: org.jboss.as.test.integration.ejb.timerservice.aroundtimeout.TimerServiceInterceptorOrderTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: testTimerServiceInterceptorOrder.war
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

org.jboss.as.test.integration.ejb.timerservice.view.ViewTimerServiceTestCase: org.jboss.as.test.integration.ejb.timerservice.cancelation.TimerServiceCancellationTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: timerCancelTest.jar
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

org.jboss.as.test.integration.ejb.timerservice.view.ViewTimerServiceTestCase: org.jboss.as.test.integration.ejb.timerservice.cdi.requestscope.CDIRequestScopeTimerServiceTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: testTimerServiceSimple.war
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

org.jboss.as.test.integration.ejb.timerservice.view.ViewTimerServiceTestCase: org.jboss.as.test.integration.ejb.timerservice.count.ActiveTimerServiceCountTestCase: org.jboss.arquillian.container.spi.client.container.DeploymentException: Cannot deploy: ejb-3.2-active-timers.ear
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:83)
	at org.jboss.as.arquillian.container.ArchiveDeployer.deployInternal(ArchiveDeployer.java:64)

##### there are 30 more failed tests, see build details

Linux Build 1053 is now running using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0

Windows Build 759 is now running using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0

Core - Full Integration Build 334 is now running using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0

Linux Build 1053 outcome was SUCCESS using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0
Summary: Tests passed: 2932, ignored: 95 Build time: 0:19:48

Windows Build 759 outcome was FAILURE using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0
Summary: Execution timeout (new); tests failed: 5 (5 new), passed: 2921, ignored: 95; org.wildfly.core:wildfly-core-testsuite-domain Build time: 0:45:10
Build problems:
Failed tests detected
Execution timeout
Process exited with code 1
Failed tests
org.jboss.as.test.integration.respawn.RespawnHttpTestCase.testStartKilledServer: java.lang.AssertionError: null
	at org.junit.Assert.fail(Assert.java:86)
	at org.junit.Assert.assertTrue(Assert.java:41)

org.jboss.as.test.integration.respawn.RespawnHttpTestCase.testReloadHcButNotServersWithFailedServer: java.lang.AssertionError: Did not have all running processes [Process{id=4404, process=Host Controller}, Process{id=1216, process=respawn-two}]
	at org.junit.Assert.fail(Assert.java:88)
	at org.jboss.as.test.integration.respawn.RespawnHttpTestCase.waitForProcesses(RespawnHttpTestCase.java:518)

org.jboss.as.test.integration.respawn.RespawnHttpTestCase.testDomainRespawn: java.lang.AssertionError: Did not have all running processes [Process{id=4404, process=Host Controller}, Process{id=1216, process=respawn-two}]
	at org.junit.Assert.fail(Assert.java:88)
	at org.jboss.as.test.integration.respawn.RespawnHttpTestCase.waitForProcesses(RespawnHttpTestCase.java:518)

org.jboss.as.test.integration.respawn.RespawnHttpTestCase.testReloadHc: java.lang.AssertionError: Did not have all running processes [Process{id=4404, process=Host Controller}, Process{id=1216, process=respawn-two}]
	at org.junit.Assert.fail(Assert.java:88)
	at org.jboss.as.test.integration.respawn.RespawnHttpTestCase.waitForProcesses(RespawnHttpTestCase.java:518)

org.jboss.as.test.integration.respawn.RespawnHttpTestCase.testReloadHcButNotServers: java.lang.AssertionError: Did not have all running processes [Process{id=4404, process=Host Controller}, Process{id=1216, process=respawn-two}]
	at org.junit.Assert.fail(Assert.java:88)
	at org.jboss.as.test.integration.respawn.RespawnHttpTestCase.waitForProcesses(RespawnHttpTestCase.java:518)

Core - Full Integration Build 334 outcome was SUCCESS using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0
Summary: Tests passed: 2849, ignored: 432 Build time: 0:50:39

Core - Full Integration Build 335 is now running using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0

Windows Build 760 is now running using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0

Linux Build 1054 is now running using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0

Linux Build 1054 outcome was SUCCESS using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0
Summary: Tests passed: 2932, ignored: 95 Build time: 0:19:39

Core - Full Integration Build 335 outcome was SUCCESS using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0
Summary: Tests passed: 2849, ignored: 432 Build time: 0:43:24

Windows Build 760 outcome was FAILURE using a merge of 52c578fd0faac1161efa303cd19bb4569221ebf0
Summary: Execution timeout; tests passed: 2722, ignored: 83; org.wildfly.core:wildfly-core-testsuite-domain Build time: 0:45:05
Build problems:
Execution timeout
Process exited with code 1

Linux Build 1056 is now running using a merge of 752ccd02e6cb7ab1b292ed84f096a2c9ff8d35a9

Windows Build 762 is now running using a merge of 752ccd02e6cb7ab1b292ed84f096a2c9ff8d35a9

Core - Full Integration Build 337 is now running using a merge of 752ccd02e6cb7ab1b292ed84f096a2c9ff8d35a9

Windows Build 762 outcome was SUCCESS using a merge of 752ccd02e6cb7ab1b292ed84f096a2c9ff8d35a9
Summary: Tests passed: 2932, ignored: 95 Build time: 0:16:15

Linux Build 1056 outcome was SUCCESS using a merge of 752ccd02e6cb7ab1b292ed84f096a2c9ff8d35a9
Summary: Tests passed: 2932, ignored: 95 Build time: 0:19:50

Windows Build 763 is now running using a merge of 752ccd02e6cb7ab1b292ed84f096a2c9ff8d35a9

Core - Full Integration Build 337 outcome was FAILURE using a merge of 752ccd02e6cb7ab1b292ed84f096a2c9ff8d35a9
Summary: Tests failed: 1 (1 new), passed: 2848, ignored: 432 Build time: 0:43:12
Build problems:
Failed tests detected
Failed tests
org.jboss.as.test.integration.ws.wsse.signencrypt.EJBSignEncryptMultipleClientsTestCase.encryptedAndSignedRequestFromAlice: javax.xml.ws.WebServiceException: Could not send Message.
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(SocketInputStream.java:152)

Windows Build 763 outcome was SUCCESS using a merge of 752ccd02e6cb7ab1b292ed84f096a2c9ff8d35a9
Summary: Tests passed: 2932, ignored: 95 Build time: 0:15:58


Make include guards unique

I find that include guards like "FILE_H" and "THREADS_H" are too short for the safe reuse of your header files (when they belong to an application programming interface).

Those header files are only used internally.  They are not part of the libipt or libptunit API.


BlockDeviceDeployer unmount logic

Fixes https://clusterhq.atlassian.net/browse/FLOC-1499
Based on https://github.com/ClusterHQ/flocker/pull/1333 (to be merged shortly)

Looks good, merge when buildbot is sufficiently happy.


Please publish new version to npm

Hi @shinnn, could you please publish a new npm version to pick up the latest changes on master?
It would be great to remove the git dependency on the image-size package.
Thanks!

I would appreciate this also.


Check for updates

Hi there!
I've decided to add this feature if you don't mind 🙂
Close: #81

Awesome, thanks! Does the informer cache these lookups? Or are we hitting PyPI every time? If not, can you think of a strategy to (e.g.) only check for updates once a day or similar?

update-informer already does it all by default 🙂
https://github.com/mgrachev/update-informer#interval
https://github.com/mgrachev/update-informer#cache-file

Cool, just tested thus out -- very nice! Thank you!


Google App Engine deployments?

I see that so far, mlem can only deploy to heroku natively. For google app engine, there is no dedicated deployment type. What's the timeline for adding something like that? Right now it seems that the workaround would be to run mlem serve inside the app.yaml. Is that correct? Is there any plan to provide an adapter for this?

Hi @igordertigor! We're going to release K8s, SageMaker and "deploy" to Docker containers very soon (they're already available in release/0.3.0 branch). Google App Engine is not on our agenda yet. How does the deployment to Google App Engine looks like in your case? Do you use pre-built Docker image, or a boostrap script in some fixed environment that installs everything + downloads the model?

Do you know MLEM can build docker images that run mlem serve inside? https://mlem.ai/doc/get-started/deploying
If you don't need anything except MLEM model there, it may be a good option.

Of course I know. Unfortunately, running docker in GAE requires the non-standard tier, which requires a tiny bit more maintenance from our side. We would prefer to avoid that in favour of the basic GAE environment. But then, the deployment script isn't super complex anyway. It would just be nice to streamline everything with mlem. If you could give me some pointers where to start, I would be happy to take a look into how much effort it would be to implement it and potentially just submit a pull request.
By the way congrats on the new release.

I took a quick look and it seems that something like this can prepare a directory with all that you need
import os
import sys

from yaml import safe_dump

import mlem
from mlem.api import load_meta, build
from mlem.contrib.fastapi import FastAPIServer
from mlem.core.objects import MlemModel
from mlem.runtime.server import Server

def prepare_for_gae(path: str, server: Server, target: str = ".", project: str = None, rev: str = None, ):
    model = load_meta(path, project, rev, force_type=MlemModel)
    os.makedirs(target, exist_ok=True)
    model.clone(os.path.join(target, "model"))
    reqs_path = os.path.join(target, "requirements.txt")
    build("requirements", model, target=reqs_path)
    with open(reqs_path, "a") as f:
        reqs = server.get_requirements() + [f"mlem=={mlem.__version__}"]
        print(reqs)
        f.write("\n".join(reqs.to_pip()))
    with open(os.path.join(target, "app.yaml"), "w") as f:
        f.write(f"runtime: python{sys.version_info[0]}{sys.version_info[1]}\n"
                f"entrypoint: mlem serve --load server.mlem --model model")
    with open(os.path.join(target, "server.mlem"), "w") as f:
        f.write(safe_dump(server.dict()))

However I did not find a good way to then deploy this to GAE from code. They have this library https://googleapis.dev/python/appengine/latest/index.html but docs are practically non-existant. Also didn't find any good app.yaml specification :(
If you can help with questions like this:

How to create GAE application/service from code?
How to get service status from code?
How to deploy new version of the app from code?
How to remove app from code?

then I will be able to help you create a full MlemDeployment implementation based on snippet above

Hi @mike0sv, thank you for sharing your script. I believe that I was doing something quite similar but without using mlem internals. Regarding your questions, I'll assume that the user is logged into the target gcloud project (looking at at least the heroku deployment, that seemed to be assumed there too). Then:

Call gcloud app deploy inside a folder with an app.yaml file, will upload everything in that folder to GAE and deploy to the app that's specified in app.yaml as "service". If no service is specified, it defaults to "default". If the target service doesn't exist, it will be created. Otherwise a new version will be created. Tricky here: The first service that you deploy will always be the "default".
A little tricky. Three commands might be useful

gcloud app describe describes the full GAE system of the respective project in yaml. There is a field servingStatus. However, that refers to the full GAE environment and not an individual component.
gcloud app services describe <service name> does something similar but for an individual service (e.g. the deployed mlem model). Unfortunately, there is no servingStatus field here.
gcloud app logs tail shows the logs tails the logs for the "current" (accoring to local app.yaml service.
So the best option appears to parse the logs, I believe.

gcloud app deploy will create a new version of the existing app and also try to route traffic to the new version. More elaborate stuff (e.g. traffic splitting to different services) would go through gcloud app services <subcommand>. But I don't know very much about that part.
gcloud app services delete <service name> deletes the specified service.

And yes, there is very little and confusing/outdated documentation.

Is there a way to do this without calling gcloud in subprocess?

This page might be helpful https://cloud.google.com/appengine/docs/admin-api/deploying-apps
And also https://googleapis.github.io/google-api-python-client/docs/dyn/appengine_v1.html whatever it might be

Is there a way to do this without calling gcloud in subprocess?

Not an easy way that I'm aware of. But as you already pointed out: It's kind of a mess with the docs.
You could of course assemble the requests yourself. I think you already pointed there with the second comment.

It's just hard to ensure that gcloud is installed. Eg if sometime in the future we will want to assemble docker containers that can manage deployments, there will be no easy way to install it.
I'll try to see if it can be done with requests

That certainly makes sense. It might be tricky to get the credentials in that case though.

Mother of God, gcloud is written in python2.7 in 2013. I'm literally scared of what I might discover next

Oh ha!


TSLint working as intended in terminal VIM but not GVIM

Information
VIM version

WSL running VIM (obs: it works on Git Bash [cygwin] as well)
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Apr 10 2018 21:31:58)
Included patches: 1-1453

GVIM provided by vim-vim32-installer
VIM - Vi Improved 8.1 (2018 May 18, compiled Jun 20 2019 22:01:48)
MS-Windows 64-bit GUI version with OLE support
Included patches: 1-1575

Operating System:
Windows 10 Pro; Version 1903
What went wrong

I am unsure what has went wrong specifically, but to resume the linting is consistent and correct in any terminal VIM but not GVIM.

Are you having trouble configuring ALE? Try asking for help on Stack Exchange or perhaps on Reddit instead.
The GitHub issue tracker should be used for reporting bugs or asking for new features.

^ Also a comment about this, not really the best places for that. Stack Exchange is better than the reddit for sure, but asking in /r/vim is asking to be flamed. I would like to know a place where I could actually discuss about issues related to ALE other than the GitHub, because I agree that it should be left to bugs and requests. However those two options only got me flamed in the past.
:ALEInfo
WSL running VIM
 Current Filetype: typescript
Available Linters: ['eslint', 'tslint', 'tsserver', 'typecheck', 'xo']
  Enabled Linters: ['eslint', 'tslint', 'tsserver', 'typecheck', 'xo']
 Suggested Fixers:
  'eslint' - Apply eslint --fix to a file.
  'prettier' - Apply prettier to a file.
  'remove_trailing_lines' - Remove all blank lines at the end of a file.
  'trim_whitespace' - Remove all trailing whitespace characters at the end of every line.
  'tslint' - Fix typescript files with tslint --fix.
  'xo' - Fix JavaScript/TypeScript files using xo --fix.
 Linter Variables:

let g:ale_typescript_tslint_config_path = ''
let g:ale_typescript_tslint_executable = 'tslint'
let g:ale_typescript_tslint_ignore_empty_files = 0
let g:ale_typescript_tslint_rules_dir = ''
let g:ale_typescript_tslint_use_global = 0
let g:ale_typescript_tsserver_config_path = ''
let g:ale_typescript_tsserver_executable = 'tsserver'
let g:ale_typescript_tsserver_use_global = 0
let g:ale_typescript_xo_executable = 'xo'
let g:ale_typescript_xo_options = ''
let g:ale_typescript_xo_use_global = 0
 Global Variables:

let g:ale_cache_executable_check_failures = v:null
let g:ale_change_sign_column_color = 0
let g:ale_command_wrapper = ''
let g:ale_completion_delay = 100
let g:ale_completion_enabled = 1
let g:ale_completion_max_suggestions = 50
let g:ale_echo_cursor = 1
let g:ale_echo_msg_error_str = 'Error'
let g:ale_echo_msg_format = '%code: %%s'
let g:ale_echo_msg_info_str = 'Info'
let g:ale_echo_msg_warning_str = 'Warning'
let g:ale_enabled = 1
let g:ale_fix_on_save = 1
let g:ale_fixers = {'typescript': ['tslint'], 'markdown': ['prettier'], 'json': ['prettier'], 'html': ['tidy'], '*': ['remove_trailing_lines', 'trim_whitespace'], 'javascript': ['prettier']}
let g:ale_history_enabled = 1
let g:ale_history_log_output = 1
let g:ale_keep_list_window_open = 0
let g:ale_lint_delay = 200
let g:ale_lint_on_enter = 1
let g:ale_lint_on_filetype_changed = 1
let g:ale_lint_on_insert_leave = 1
let g:ale_lint_on_save = 1
let g:ale_lint_on_text_changed = 'normal'
let g:ale_linter_aliases = {}
let g:ale_linters = {}
let g:ale_linters_explicit = 0
let g:ale_list_vertical = 0
let g:ale_list_window_size = 10
let g:ale_loclist_msg_format = '%code: %%s'
let g:ale_lsp_root = {}
let g:ale_max_buffer_history_size = 20
let g:ale_max_signs = -1
let g:ale_maximum_file_size = v:null
let g:ale_open_list = 0
let g:ale_pattern_options = v:null
let g:ale_pattern_options_enabled = v:null
let g:ale_set_balloons = 1
let g:ale_set_highlights = 1
let g:ale_set_loclist = 1
let g:ale_set_quickfix = 1
let g:ale_set_signs = 1
let g:ale_sign_column_always = 0
let g:ale_sign_error = '>>'
let g:ale_sign_info = '--'
let g:ale_sign_offset = 1000000
let g:ale_sign_style_error = '>>'
let g:ale_sign_style_warning = '--'
let g:ale_sign_warning = '--'
let g:ale_statusline_format = v:null
let g:ale_type_map = {}
let g:ale_use_global_executables = v:null
let g:ale_virtualtext_cursor = 0
let g:ale_warn_about_trailing_blank_lines = 1
let g:ale_warn_about_trailing_whitespace = 1
  Command History:

(executable check - failure) eslint
(executable check - success) /mnt/e/Hydractify/Projects/Elma/GitHub/node_modules/.bin/tslint
(finished - exit code 2) ['/bin/bash', '-c', 'cd ''/mnt/e/Hydractify/Projects/Elma/GitHub/src'' && ''/mnt/e/Hydractify/Projects/Elma/GitHub/node_modules/.bin/tslint'' --format json -c ''/mnt/e/Hydractify/Projects/Elma/GitHub/tslint.json'' ''/tmp/vGFjbFP/1/index.ts''']

<<<OUTPUT STARTS>>>
[{"endPosition":{"character":16,"line":29,"position":757},"failure":"The key 'disableEveryone' is not sorted alphabetically","name":"../../../../../../../tmp/vGFjbFP/1/index.ts","ruleName":"object-literal-sort-keys","ruleSeverity":"ERROR","startPosition":{"character":1,"line":29,"position":742}},{"endPosition":{"character":50,"line":34,"position":877},"failure":"Missing semicolon","fix":{"innerStart":877,"innerLength":0,"innerText":";"},"name":"../../../../../../../tmp/vGFjbFP/1/index.ts","ruleName":"semicolon","ruleSeverity":"ERROR","startPosition":{"character":50,"line":34,"position":877}},{"endPosition":{"character":34,"line":39,"position":1023},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"../../../../../../../tmp/vGFjbFP/1/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":24,"line":39,"position":1013}},{"endPosition":{"character":19,"line":47,"position":1393},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"../../../../../../../tmp/vGFjbFP/1/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":7,"line":47,"position":1381}},{"endPosition":{"character":19,"line":50,"position":1507},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"../../../../../../../tmp/vGFjbFP/1/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":7,"line":50,"position":1495}},{"endPosition":{"character":67,"line":0,"position":67},"failure":"Module 'discord.js' is not listed as dependency in package.json","name":"../../../../../../../tmp/vGFjbFP/1/index.ts","ruleName":"no-implicit-dependencies","ruleSeverity":"ERROR","startPosition":{"character":55,"line":0,"position":55}}]
<<<OUTPUT ENDS>>>

(executable check - success) /mnt/e/Hydractify/Projects/Elma/GitHub/node_modules/.bin/tsserver
(started) ['/bin/bash', '-c', '''/mnt/e/Hydractify/Projects/Elma/GitHub/node_modules/.bin/tsserver''']
(executable check - failure) typecheck
(executable check - failure) xo

GVIM
 Current Filetype: typescript
Available Linters: ['eslint', 'tslint', 'tsserver', 'typecheck', 'xo']
  Enabled Linters: ['eslint', 'tslint', 'tsserver', 'typecheck', 'xo']
 Suggested Fixers:
  'eslint' - Apply eslint --fix to a file.
  'prettier' - Apply prettier to a file.
  'remove_trailing_lines' - Remove all blank lines at the end of a file.
  'trim_whitespace' - Remove all trailing whitespace characters at the end of every line.
  'tslint' - Fix typescript files with tslint --fix.
  'xo' - Fix JavaScript/TypeScript files using xo --fix.
 Linter Variables:

let g:ale_typescript_tslint_config_path = ''
let g:ale_typescript_tslint_executable = 'tslint'
let g:ale_typescript_tslint_ignore_empty_files = 0
let g:ale_typescript_tslint_rules_dir = ''
let g:ale_typescript_tslint_use_global = 0
let g:ale_typescript_tsserver_config_path = ''
let g:ale_typescript_tsserver_executable = 'tsserver'
let g:ale_typescript_tsserver_use_global = 0
let g:ale_typescript_xo_executable = 'xo'
let g:ale_typescript_xo_options = ''
let g:ale_typescript_xo_use_global = 0
 Global Variables:

let g:ale_cache_executable_check_failures = v:null
let g:ale_change_sign_column_color = 0
let g:ale_command_wrapper = ''
let g:ale_completion_delay = 100
let g:ale_completion_enabled = 1
let g:ale_completion_max_suggestions = 50
let g:ale_echo_cursor = 1
let g:ale_echo_msg_error_str = 'Error'
let g:ale_echo_msg_format = '%code: %%s'
let g:ale_echo_msg_info_str = 'Info'
let g:ale_echo_msg_warning_str = 'Warning'
let g:ale_enabled = 1
let g:ale_fix_on_save = 1
let g:ale_fixers = {'typescript': ['tslint'], 'markdown': ['prettier'], 'json': ['prettier'], 'html': ['tidy'], '*': ['remove_trailing_lines', 'trim_whitespace'], 'javascript': ['prettier']}
let g:ale_history_enabled = 1
let g:ale_history_log_output = 1
let g:ale_keep_list_window_open = 0
let g:ale_lint_delay = 200
let g:ale_lint_on_enter = 1
let g:ale_lint_on_filetype_changed = 1
let g:ale_lint_on_insert_leave = 0
let g:ale_lint_on_save = 1
let g:ale_lint_on_text_changed = 'always'
let g:ale_linter_aliases = {}
let g:ale_linters = {}
let g:ale_linters_explicit = 0
let g:ale_list_vertical = 0
let g:ale_list_window_size = 10
let g:ale_loclist_msg_format = '%code: %%s'
let g:ale_lsp_root = {}
let g:ale_max_buffer_history_size = 20
let g:ale_max_signs = -1
let g:ale_maximum_file_size = v:null
let g:ale_open_list = 0
let g:ale_pattern_options = v:null
let g:ale_pattern_options_enabled = v:null
let g:ale_set_balloons = 1
let g:ale_set_highlights = 1
let g:ale_set_loclist = 1
let g:ale_set_quickfix = 1
let g:ale_set_signs = 1
let g:ale_sign_column_always = 0
let g:ale_sign_error = '>>'
let g:ale_sign_info = '--'
let g:ale_sign_offset = 1000000
let g:ale_sign_style_error = '>>'
let g:ale_sign_style_warning = '--'
let g:ale_sign_warning = '--'
let g:ale_statusline_format = v:null
let g:ale_type_map = {}
let g:ale_use_global_executables = v:null
let g:ale_virtualtext_cursor = 0
let g:ale_warn_about_trailing_blank_lines = 1
let g:ale_warn_about_trailing_whitespace = 1
  Command History:

(executable check - failure) eslint
(executable check - success) E:\Hydractify\Projects\Elma\GitHub\node_modules\.bin\tslint
(finished - exit code 2) 'cmd /s/c "cd /d E:\Hydractify\Projects\Elma\GitHub\src && E:\Hydractify\Projects\Elma\GitHub\node_modules\.bin\tslint --format json -c E:\Hydractify\Projects\Elma\GitHub\tslint.json C:\Users\Usuario\AppData\Local\Temp\VIBC6A8.tmp\index.ts"'

<<<OUTPUT STARTS>>>
[{"endPosition":{"character":16,"line":29,"position":757},"failure":"The key 'disableEveryone' is not sorted alphabetically","name":"C:/Users/Usuario/AppData/Local/Temp/VIBC6A8.tmp/index.ts","ruleName":"object-literal-sort-keys","ruleSeverity":"ERROR","startPosition":{"character":1,"line":29,"position":742}},{"endPosition":{"character":50,"line":34,"position":877},"failure":"Missing semicolon","fix":{"innerStart":877,"innerLength":0,"innerText":";"},"name":"C:/Users/Usuario/AppData/Local/Temp/VIBC6A8.tmp/index.ts","ruleName":"semicolon","ruleSeverity":"ERROR","startPosition":{"character":50,"line":34,"position":877}},{"endPosition":{"character":34,"line":39,"position":1023},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"C:/Users/Usuario/AppData/Local/Temp/VIBC6A8.tmp/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":24,"line":39,"position":1013}},{"endPosition":{"character":19,"line":47,"position":1393},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"C:/Users/Usuario/AppData/Local/Temp/VIBC6A8.tmp/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":7,"line":47,"position":1381}},{"endPosition":{"character":19,"line":50,"position":1507},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"C:/Users/Usuario/AppData/Local/Temp/VIBC6A8.tmp/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":7,"line":50,"position":1495}},{"endPosition":{"character":67,"line":0,"position":67},"failure":"Module 'discord.js' is not listed as dependency in package.json","name":"C:/Users/Usuario/AppData/Local/Temp/VIBC6A8.tmp/index.ts","ruleName":"no-implicit-dependencies","ruleSeverity":"ERROR","startPosition":{"character":55,"line":0,"position":55}}]
<<<OUTPUT ENDS>>>

(executable check - success) E:\Hydractify\Projects\Elma\GitHub\node_modules\.bin\tsserver
(started) 'cmd /s/c "E:\Hydractify\Projects\Elma\GitHub\node_modules\.bin\tsserver"'
(executable check - failure) typecheck
(executable check - failure) xo
(executable check - failure) eslint
(finished - exit code 2) 'cmd /s/c "cd /d E:\Hydractify\Projects\Elma\GitHub\src && E:\Hydractify\Projects\Elma\GitHub\node_modules\.bin\tslint --format json -c E:\Hydractify\Projects\Elma\GitHub\tslint.json C:\Users\Usuario\AppData\Local\Temp\VIC3503.tmp\index.ts"'

<<<OUTPUT STARTS>>>
[{"endPosition":{"character":16,"line":29,"position":757},"failure":"The key 'disableEveryone' is not sorted alphabetically","name":"C:/Users/Usuario/AppData/Local/Temp/VIC3503.tmp/index.ts","ruleName":"object-literal-sort-keys","ruleSeverity":"ERROR","startPosition":{"character":1,"line":29,"position":742}},{"endPosition":{"character":50,"line":34,"position":878},"failure":"Missing semicolon","fix":{"innerStart":878,"innerLength":0,"innerText":";"},"name":"C:/Users/Usuario/AppData/Local/Temp/VIC3503.tmp/index.ts","ruleName":"semicolon","ruleSeverity":"ERROR","startPosition":{"character":50,"line":34,"position":878}},{"endPosition":{"character":34,"line":39,"position":1024},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"C:/Users/Usuario/AppData/Local/Temp/VIC3503.tmp/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":24,"line":39,"position":1014}},{"endPosition":{"character":19,"line":47,"position":1394},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"C:/Users/Usuario/AppData/Local/Temp/VIC3503.tmp/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":7,"line":47,"position":1382}},{"endPosition":{"character":19,"line":50,"position":1508},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"C:/Users/Usuario/AppData/Local/Temp/VIC3503.tmp/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":7,"line":50,"position":1496}},{"endPosition":{"character":24,"line":29,"position":765},"failure":"missing whitespace","fix":{"innerStart":764,"innerLength":0,"innerText":" "},"name":"C:/Users/Usuario/AppData/Local/Temp/VIC3503.tmp/index.ts","ruleName":"whitespace","ruleSeverity":"ERROR","startPosition":{"character":23,"line":29,"position":764}},{"endPosition":{"character":67,"line":0,"position":67},"failure":"Module 'discord.js' is not listed as dependency in package.json","name":"C:/Users/Usuario/AppData/Local/Temp/VIC3503.tmp/index.ts","ruleName":"no-implicit-dependencies","ruleSeverity":"ERROR","startPosition":{"character":55,"line":0,"position":55}}]
<<<OUTPUT ENDS>>>

(executable check - failure) typecheck
(executable check - failure) xo
(executable check - failure) eslint
(finished - exit code 2) 'cmd /s/c "cd /d E:\Hydractify\Projects\Elma\GitHub\src && E:\Hydractify\Projects\Elma\GitHub\node_modules\.bin\tslint --format json -c E:\Hydractify\Projects\Elma\GitHub\tslint.json C:\Users\Usuario\AppData\Local\Temp\VID3CD4.tmp\index.ts"'

<<<OUTPUT STARTS>>>
[{"endPosition":{"character":16,"line":29,"position":757},"failure":"The key 'disableEveryone' is not sorted alphabetically","name":"C:/Users/Usuario/AppData/Local/Temp/VID3CD4.tmp/index.ts","ruleName":"object-literal-sort-keys","ruleSeverity":"ERROR","startPosition":{"character":1,"line":29,"position":742}},{"endPosition":{"character":50,"line":34,"position":877},"failure":"Missing semicolon","fix":{"innerStart":877,"innerLength":0,"innerText":";"},"name":"C:/Users/Usuario/AppData/Local/Temp/VID3CD4.tmp/index.ts","ruleName":"semicolon","ruleSeverity":"ERROR","startPosition":{"character":50,"line":34,"position":877}},{"endPosition":{"character":34,"line":39,"position":1023},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"C:/Users/Usuario/AppData/Local/Temp/VID3CD4.tmp/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":24,"line":39,"position":1013}},{"endPosition":{"character":19,"line":47,"position":1393},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"C:/Users/Usuario/AppData/Local/Temp/VID3CD4.tmp/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":7,"line":47,"position":1381}},{"endPosition":{"character":19,"line":50,"position":1507},"failure":"variable name must be in lowerCamelCase or UPPER_CASE","name":"C:/Users/Usuario/AppData/Local/Temp/VID3CD4.tmp/index.ts","ruleName":"variable-name","ruleSeverity":"ERROR","startPosition":{"character":7,"line":50,"position":1495}},{"endPosition":{"character":67,"line":0,"position":67},"failure":"Module 'discord.js' is not listed as dependency in package.json","name":"C:/Users/Usuario/AppData/Local/Temp/VID3CD4.tmp/index.ts","ruleName":"no-implicit-dependencies","ruleSeverity":"ERROR","startPosition":{"character":55,"line":0,"position":55}}]
<<<OUTPUT ENDS>>>

(executable check - failure) typecheck
(executable check - failure) xo

Regarding the Stack Exchange comment, it's appropriate because I just don't have the time to answer questions about how to use ALE, and it's pretty much just me and one other guy most of the time replying on GitHub. I think people are more likely to get a faster response on other websites. I want people to get answers faster. The Gitter might be helpful for those who watch it, or the #vim-ale IRC channel on Freenode that I run. I kind of wish GitHub let you have a forum connected to the repository itself for discussion about things that aren't issues or pull requests. Maybe I'll just open a subreddit.
If people flame you for asking questions about ALE, the problem is with them. They need to be more respectful and realise that a big part of using Vim is writing VimL and using plugins other people have written. If someone complains because you are talking about a plugin, they are almost always in the wrong. These plugins exist, thousands of people use them, and they matter to the people who use them.
Having said all of that, my basic advice for the tslint linter is "don't use it." What will work a lot better for most people is the tsserver plugin for TSLint, which is what I use at work. tsserver is always installed alongside TypeScript, so it's always available to use. You can find that here: https://github.com/microsoft/typescript-tslint-plugin It works for just about every TSLint rule I have tried, and it works very well.
TSLint itself is basically going away some time this year. After it's officially deprecated, I'll disable the linter by default, but it will be available for people who want it. I think the best use of tslint right now is to run it across an entire project, and not from inside your editor, unless you are using the tsserver plugin.
I recommend checking this out: https://github.com/typescript-eslint/typescript-eslint In future, the way to go about linting TypeScript code will be to use ESLint plugins, which will replace TSLint. At the moment, I personally have to use a mixture of TSLint from a Bash script, the tsserver plugin for TSLint, ESLint with the TypeScript parser plugin, and the other ESLint plugin with TypeScript rules that replace the old TSLint rules. It sounds like chaos, but it all works really well when you set it all up.
I hope all of the above is helpful to you.

I see, thank you for the kind response w0rp and also sorry for taking your time with this. I will take a look into that, regarding the subreddit... I think it'd be cool. Though one idea: A subreddit dedicated to plugins, I think that'd benefit multiple plugin makers and their users.

Also, I did try to set-up all of that... I am extremely confused. tslint works fine by itself in VIM, tsserver not, nor eslint. But none of them work in GVIM... So I am more than lost. A friend of mine told me that it works just fine in his F29 (Linux) GVIM, which makes even less sense.

You might have some luck if you look at all of the information output by the ch_logfile function. Try :call ch_logfile(expand('~/channel.log'), 'w') and open ~/channel.log. Vim will log tons of information, and something in there might tell you what's broken, outside of just what :ALEInfo tells you.

I don't generally recommend using tslint in ALE myself. My advice is to stick with ESLint 5 if that works for you, or to install the tsserver plugin for tslint, or both. You should try to install all of your linters as devDependencies in node_modules. ALE will run all of them from node_modules by default.


Improve developer setup documentation

Describe the bug
While replicating the developer setup in the documentation with the latest Ubuntu LTS (22.04), there were some inconsistencies:

In vue.js setup: the npm package had to be installed explicitly (nodejs was not enough).
install_os_dependencies.sh has to be called

To Reproduce
Setup developer setup from scratch.
Expected behavior
A complete developer setup without errors.

FWIW, here are my notes on an fresh install in Ubuntu 22.04 within WSL2 on Windows 11. I'm installing nodejs from conda by the way.
https://gist.github.com/holtgrewe/f4575f2f871bbe46e00b65fb5227b1d9


[Flake] opensuse-tumbleweed openssh-server package installation failure

https://source.cloud.google.com/results/invocations/0352beb7-df92-4bc5-aa8a-187a195bed8f/targets/cloud-cpp%2Fgithub%2Fgoogle-cloud-cpp%2Fmaster%2Finstall%2Fopensuse-tumbleweed/log
(87/91) Installing: openssh-server-8.4p1-4.1.x86_64 [..error]
Abort, retry, ignore? [a/r/i] (a): a
Installation of openssh-server-8.4p1-4.1.x86_64 failed:
Error: Subprocess failed. Error: RPM failed: find: '/etc/init.d/rc[35].d': No such file or directory
ERROR: neither useradd nor busybox found!
error: %prein(openssh-server-8.4p1-4.1.x86_64) scriptlet failed, exit status 1
error: openssh-server-8.4p1-4.1.x86_64: install failed

cloud-cpp/github/google-cloud-cpp/master/install/opensuse-tumbleweed has been disabled.


Results about Caltech-256

Hello,
When I reproduce the results on Caltech-256, I found that nearly no classification model can reach 90% Acc-rate on that dataset and 85% Acc-rate is also very difficult with special data augmentation algorithm and very deep network. Can you release your code for Caltech-256?
Thank you.

Thanks for your interest in our work. On first thought, it might be possible that we misreported the results of Caltech-101 as Caltech-256. I will look at the exact data used and change the paper accordingly ASAP if that is indeed the issue. Otherwise, I will add the dataloader code for Caltech-256.


Non-interactive mode in grabbit.sh

It would be great if the grabbit.sh script could be run in non-interactive mode. We are planning on using Grabbit to perform scheduled content syncing, and a non-interactive mode would simplify the automation.

That shell script is really meant for illustrative purposes. The much more full-featured CLI is https://github.com/TWCable/grabbit-cli
Does that serve your purposes?

Ah, it didn't occur to me to look for another repository. Thanks for the pointer, I will give grabbit-cli a go.


correct "roles" to "actions"

Microsoft.ContainerService/managedClusters/runcommand/action and Microsoft.ContainerService/managedclusters/commandResults/read are not roles, but actions

@mgoedtel
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


Sets the lables to the qubole CommandMetadata

TL;DR
Please replace this text with a description of what this PR accomplishes.
Type

[ ] Bug Fix
[ ] Feature
[ ] Plugin

Are all requirements met?

[ ] Code completed
[ ] Smoke tested
[ ] Unit tests added
[ ] Code documentation added
[ ] Any pending items have an associated Issue

Complete description
How did you fix the bug, make the feature etc. Link to any design docs etc
Tracking Issue
https://github.com/lyft/flyte/issues/
Follow-up issue
NA
OR
https://github.com/lyft/flyte/issues/

Codecov Report

Merging #125 into master will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #125      +/-   ##
==========================================
+ Coverage   61.74%   61.76%   +0.01%
==========================================
  Files         104      104
  Lines        5775     5778       +3
==========================================
+ Hits         3566     3569       +3
  Misses       1843     1843
  Partials      366      366

Impacted Files
Coverage Δ

go/tasks/plugins/hive/client/qubole_client.go
64.22% <ø> (ø)

go/tasks/plugins/hive/execution_state.go
68.69% <100.00%> (+0.27%)
:arrow_up:

go/tasks/plugins/hive/test_helpers.go
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


support private registry

It would be nice to pass auth headers to support private registry:
ied install -r<EMAIL_ADDRESS>
Currently I get:
throw new Error('Basic authentication must be done with auth option');

In order to define a custom registry, you can use the --registry flag or the IED_REGISTRY environment variable. This can also be used in order to identify using basic auth.
Alternatively you can set a bearer token via IED_GLOBAL_NODE_MODULES environment variable.
This should probably be better documented. Sorry about that.

@alexanderGugel Thanks a lot for the response ;)

Yeah, sorry for the delay.


delete junction restrictions

Fixes #623
I provided Interface for resting junction values. to do so provide ternarybool.undefined to a set<traffic rule>() function
provided documentation explaining what I explained in description of #623.
User Interface: choose Junction restriction tool -> select a junction -> press delete or backspace
added KeyDown and KeyUp methods to keybind settings mimicking Input.KeyDown() and Input.KeyUp()
modified the crowding key : https://crowdin.com/translate/tmpe/42/en-en#8844 to explain the addition of hotkey. can someone approve and merge it please?

Can't seem to get this to work.
I disabled some crosswalks on a junction:

Then, with node still selected tried pressing Del and Backspace but nothing changed

Exit tool and then go back in to junction restrictions again for that node, settings still there:

Tried pressing Del and Backspace again, but still no change:

Also, didn't see any shortcuts mentioned on Keybinds settings in mod options:

Nothing on the button tooltip either:

Note: I renamed mod version to 11.0-del-junc just to make sure I'd built it properly (also checked local repo state and it was definitely this branch) and was using correct mod. No other TMPE's loaded, nothing obvious in the logs.
TMPE.log
output_log.txt

sorry it was working with hovered segment. I fixed it. now it works with selected node.

This is working great now, just one remaining issue: The Backspace key has no effect (Delete key works fine).

@aubergine10

This is working great now, just one remaining issue: The Backspace key has no effect (Delete key works fine).

Backspace does work for me. Do you have mac? Does backspace work on lane connection tool?

@aubergine10 I don't know why backspace does not work and delete does. it probably is a bug in Key bind settings.

I tried to log what happens after pressing backspace, nothing happens unless if you are in laneconnector tool.
I also tried setting the category to Global but that did not work either.

I changed the tutorial message to include only delete key as the hotkey.
Is that OK?

I think we still need backspace support...
@kvakvs Any idea why it's not working?

@aubergine10 Of Course but does it have to block this pull request . Can't we do this as part of #568.
if you really want backspace right NOW I can hack it through by checking for Input.GetKeyDown() instead of KeybindSettingsBase.LaneConnectorDelete.KeyDown()


Add Icon support to TabView

Do you have updates on this feature?

I'll work on it after TreeView implementation. It'll be included in v1.0
Most probably it'll be available in v0.13.


Css not being read in Vue Single File Component

I have included the following css, but am still seeing the dynamically generated style for the .typed character as color: #000 black
.vue-typer{   font-family: 'Space Mono', monospace; } .vue-typer .custom.char.typed{   color: #FFF !important; }

oddly enough .vue-typer {   font-family: monospace; } is working, but none of my more specific selectors are working

I figured it out...you need to remove scoped from style tag for vue single file components. This should definitely be mentioned in the docs, was about to bash my head in ;)

I figured it out...you need to remove scoped from style tag for vue single file components. This should definitely be mentioned in the docs, was about to bash my head in ;)

is not work

try the prefix /deep/ like so:
/deep/ .typed{
color:rgb(255,255,255);
}

I figured it out...you need to remove scoped from style tag for vue single file components. This should definitely be mentioned in the docs, was about to bash my head in ;)

Jesus Christ! Thank You!
I just created another pair of style tags underneat without the scope, as you said, and it worked instantly. Genious hahah :D

@thooyork This is the right answer. Not anyone can remove scoped from their components.
For anyone who doesn't want to remove scoped from their style tag please refer to the following:
/deep/ .typed {
  color: #fff;
}

What if not even /deep/ works ?

/deep/ is being deprecated so we will have to use ::v-deep instead and also !important
If you still want to use scoped  which is recommended, you need to do it like this:
  ::v-deep .typed {
    color: #fff !important;
  }

That is the only thing that allowed me to set CSS rules to it.

my best solution is
::v-deep .vue-typer {
  .custom.char.typed {
    color: #fff;
  }
}

my best solution is
::v-deep .vue-typer {
  .custom.char.typed {
    color: #fff;
  }
}

It works for me , thanx 🙂


ScrollBar weird behaviour

There is ScrollBar with GridView as a child. Each GridView's child has scrollable area.
When I scrolling GridView everything is OK - the scrollbar works as intended. But If I scroll image inside any grid view item it cause ScrollBar scrolling also, it looks weird.
I think it's wrong and maybe even a bug. It shouldn't move scrollbar when I scroll something inside items.
I attached small video. Look at scrollbar's behaviour.
The same behaviour if run it on web.
the code:
import 'package:flutter/material.dart';

void main() => runApp(MaterialApp(debugShowCheckedModeBanner: false, home: Home()));

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) => Scaffold(body: Demo());
}

class Demo extends StatefulWidget {
  @override
  _DemoState createState() => _DemoState();
}

class _DemoState extends State<Demo> {
  ScrollController _scrollController;

  @override
  void initState() {
    super.initState();
    _scrollController = ScrollController();
  }

  @override
  Widget build(BuildContext context) {
    return Scrollbar(
      controller: _scrollController,
      isAlwaysShown: true,
      child: GridView.count(
        controller: _scrollController,
        crossAxisCount: 3,
        crossAxisSpacing: 64,
        mainAxisSpacing: 64,
        childAspectRatio: 0.5,
        padding: const EdgeInsets.only(left: 48, right: 48, top: 24, bottom: 48),
        children: List.generate(42, (i) => GridItem(i)),
      ),
    );
  }

  @override
  void dispose() {
    _scrollController.dispose();
    super.dispose();
  }
}

class GridItem extends StatelessWidget {
  GridItem(int i) : super(key: Key('$i'));

  @override
  Widget build(BuildContext context) {
    return SingleChildScrollView(
      child: SizedBox(
        height: 700,
        child: Image.network('https://picsum.photos/id/81/200/300.jpg', fit: BoxFit.fill),
      ),
    );
  }
}

flutter doctor:
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 1.20.3, on Mac OS X 10.15.6 19G2021, locale en-GB)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[✓] Xcode - develop for iOS and macOS (Xcode 12.3)
[!] Android Studio (version 4.1)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] Connected device (1 available)

https://user-images.githubusercontent.com/13645580/104164301-653a8800-5400-11eb-9980-2a8ab5ee3658.mp4

Will be fixed by #71843

Will be fixed by #71843

I was able to reproduce this issue. Similar to https://github.com/flutter/flutter/issues/70771.
flutter doctor
[✓] Flutter (Channel master, 1.26.0-2.0.pre.251, on Mac OS X 10.15.7 19H2 darwin-x64, locale en)
    • Flutter version 1.26.0-2.0.pre.251 at /Users/pedromassango/dev/SDKs/flutter_master
    • Framework revision 5bc725bea8 (3 days ago), 2021-01-08 08:12:36 +0100
    • Engine revision 2e5833b7c5
    • Dart version 2.12.0 (build 2.12.0-179.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/pedromassango/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 12.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.1, Build version 12A7403
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] IntelliJ IDEA Community Edition (version 2020.3.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 52.1.5
    • Dart plugin version 203.6912

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.18.1

[✓] Connected device (4 available)
    • Redmi 5 Plus (mobile)      • 0258ff700005  • android-arm64  • Android 8.1.0 (API 27)
    • sdk gphone x86 64 (mobile) • emulator-5554 • android-x64    • Android 11 (API 30) (emulator)
    • macOS (desktop)            • macos         • darwin-x64     • Mac OS X 10.15.7 19H2 darwin-x64
    • Chrome (web)               • chrome        • web-javascript • Google Chrome 87.0.4280.88

! Doctor found issues in 1 category.
Process finished with exit code 0

I was able to reproduce this issue. Similar to https://github.com/flutter/flutter/issues/70771.
flutter doctor
[✓] Flutter (Channel master, 1.26.0-2.0.pre.251, on Mac OS X 10.15.7 19H2 darwin-x64, locale en)
    • Flutter version 1.26.0-2.0.pre.251 at /Users/pedromassango/dev/SDKs/flutter_master
    • Framework revision 5bc725bea8 (3 days ago), 2021-01-08 08:12:36 +0100
    • Engine revision 2e5833b7c5
    • Dart version 2.12.0 (build 2.12.0-179.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/pedromassango/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 12.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.1, Build version 12A7403
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] IntelliJ IDEA Community Edition (version 2020.3.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 52.1.5
    • Dart plugin version 203.6912

[✓] VS Code (version 1.52.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.18.1

[✓] Connected device (4 available)
    • Redmi 5 Plus (mobile)      • 0258ff700005  • android-arm64  • Android 8.1.0 (API 27)
    • sdk gphone x86 64 (mobile) • emulator-5554 • android-x64    • Android 11 (API 30) (emulator)
    • macOS (desktop)            • macos         • darwin-x64     • Mac OS X 10.15.7 19H2 darwin-x64
    • Chrome (web)               • chrome        • web-javascript • Google Chrome 87.0.4280.88

! Doctor found issues in 1 category.
Process finished with exit code 0


Remove the -t option

Just use the target name
uct build Benchmark

rather than
uct build -t Benchmark

done


stylistic changes

some simple stylistic suggestions:

For estimated parameters, follow the variable name with underscore. E.g., model.beta_. This is the convention in scikit-learn.
For shape of matrices, prefix it with n_. E.g., n_features or n_samples etc.
For looping, you could use idx and then use a prefix to indicate what you're looping over. E.g., l_idx. It immediately tells you that it's the looping variable.
In the same spirit, avoid single letter variable names. It's slightly cryptic. Exceptions to this rule are X and y which are universally known as data and labels respectively.
replace [] and {} by list() and dict() respectively because it's hard to tell the difference between [] and {}. Same spirit, it's very hard to tell the difference between 1 and l -- easy to confuse.
flake8 / pep8 conventions: use lower-case for variable names, camel case for function names and lower case for function/method names. E.g., n_features, AwesomeClass and awesome_method. I think it's okay to break this rule sometimes (e.g., L1 and L2 is cool), but generally it's a nice rule of thumb.

hopefully it makes the code more readable :)

@jasmainak super useful! have reflected many of these changes now. close issue?

excellent! It's more of a checklist for the future :) feel free to close it


feat:  get builtin module original specifier

tests are passed, user could get original specifier according to prefixed_with_node_colon

This is a breaking change, it changes the shape of a public error.

This is a breaking change, it changes the shape of a public error.

Yeah, the breaking change may not be avoided. it is used for scenarios like bundler or others want to get the original builtin module specifier because always returns
prefix node: is not going to work when the node is under 14

Minimum Version Required: The node: prefix is supported starting from Node.js 12.20.0 and 14.13.1.

We need tests in src/tests/builtins.rs

I think there are plenty of tests that cover this, https://github.com/oxc-project/oxc-resolver/pull/272/files#diff-945bb3291582dde54a233e5b184b7917ced686114d546a5c47b8ba2eb96baf36R87-R98


Write a Perl program to find volume of cube

Description
Write a Perl program to find volume of cube
Volume of cube = (edge of cube)^3
Input  : 2
Output : 8

How to contribute

Save the solution in find_volume_of_cube.pl file
Add find_volume_of_cube.pl file in find-volume-of-cube folder

!assign


Don't compute checksums if not necessary in datasets-cli test

we only need them if there exists a dataset_infos.json

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