Session Invalidated After Page Reload - Devise Authenticator

Upgraded from ember-simple-auth 0.7.2 to 1.1.0-beta.2, using the devise authenticator and able to authenticate initially. Everything goes smoothly until I refresh the page. My session appears to be invalidated, and I'm kicked out to the login page. There are no error messages in the console. I tried adding a debugger to the restore() function in the devise authenticator class, but the debugger is not being hit.
In Local Storage, the ember_simple_auth:session looks like the following before and after page reload:
<EMAIL_ADDRESS>
Ember version details:
DEBUG: Ember             : 1.13.10
ember.debug.js: Ember Data        : 1.13.15
ember.debug.js: jQuery            : 1.11.3
ember.debug.js: Model Fragments   : 1.13.1
ember.debug.js: Ember Simple Auth : 1.1.0-beta.2

Could there be an issue with the session data causing the restore() function not to be called?

The key in the session data that is used for storing authentication data (that is all data acquired by the authenticator when it authenticates the session) was renamed from secure to authenticated in 1.0.0, making all existing session invalid (as it doesn't find any authentication data when restoring the session).
I would assume that when you login again everything would be working just fine.

@marcoow - I'm seeing only authenticated key when logged in and logged out.
When I log out using the session invalidate, the ember_simple_auth_session is set to {"authenticated":{}}.
When logged in:
{"authenticated":{"authenticator":"authenticator:devise","user_id":1040,"account_id":1023,"store_id":1025,
<EMAIL_ADDRESS>
When I click around the app, all of the API requests are authenticated as I expected. When I refresh the page, I get kicked out to the login page, but the session data does not get cleared:
<EMAIL_ADDRESS>
Attempting to get to any routes that require authentication redirects me back to the login page with 401 unauthorized.

@marcoow - I placed debuggers in the restore() functions of the session-stores/adaptive.js and session-stores/local-storage.js, and neither debugger is hit when refreshing the page. Is that expected?

Can you share your authenticator's code, the authorizer as well as the configuration?

Also please share your package.json and bower.json.

@marcoow
app/authenticators/devise.js:
import DeviseAuthenticator from 'ember-simple-auth/authenticators/devise';
import config from ".././config/environment";

export default DeviseAuthenticator.extend({
  serverTokenEndpoint: config.API_HOST + '/api/sessions'
});

bower.json:
{
  "name": "kemp",
  "dependencies": {
    "jquery": "^1.11.1",
    "ember": "1.13.10",
    "ember-data": "1.13.15",
    "ember-resolver": "~0.1.11",
    "loader.js": "ember-cli/loader.js#1.0.1",
    "ember-cli-shims": "ember-cli/ember-cli-shims#0.0.3",
    "ember-cli-test-loader": "ember-cli-test-loader#0.1.3",
    "ember-load-initializers": "ember-cli/ember-load-initializers#0.0.2",
    "ember-qunit": "0.2.8",
    "ember-qunit-notifications": "0.0.7",
    "qunit": "~1.17.1",
    "jquery-cookie": "latest",
    "bootstrap-css": "~3.1.1",
    "moment": "latest",
    "chartkick": "latest",
    "spin.js": "~2.0.2",
    "pretender": "0.1.0",
    "summernote": "0.6.16",
    "ember-uploader": "git@github.com:kevy/ember-uploader.git#master",
    "DataTables": "latest",
    "select2": "3.5.2",
    "ckeditor": "~4.5.3",
    "papaparse": "~4.1.2",
    "dropzone": "^4.0.1",
    "intro.js": "~1.0.0",
    "sinon-chai": "~2.6.0",
    "ember-data-model-fragments": "1.13.1"
  },
  "devDependencies": {
    "file-saver-saveas-js": "~1.20150507.2"
  }
}

package.json
{
  "name": "kemp",
  "version": "0.0.1",
  "description": "Kevy Ecommerce Marketing Platform",
  "private": true,
  "directories": {
    "doc": "doc",
    "test": "tests"
  },
  "scripts": {
    "start": "ember server",
    "build": "ember build",
    "test": "ember test"
  },
  "repository": "",
  "engines": {
    "node": ">= 0.12.2"
  },
  "author": "",
  "license": "MIT",
  "devDependencies": {
    "active-model-adapter": "2.0.3",
    "broccoli-asset-rev": "^2.0.0",
    "broccoli-funnel": "^0.2.3",
    "connect-restreamer": "^1.0.1",
    "ember-ckeditor": "git://github.com/strukturedkaos/ember-ckeditor",
    "ember-cli": "1.13.8",
    "ember-cli-app-version": "0.3.1",
    "ember-cli-babel": "^4.0.0",
    "ember-cli-content-security-policy": "0.3.0",
    "ember-cli-dependency-checker": "0.0.7",
    "ember-cli-deploy": "0.5.1",
    "ember-cli-deploy-aws-pack": "0.1.1",
    "ember-cli-deploy-revision-data": "0.1.0",
    "ember-cli-deploy-s3-index": "0.1.0",
    "ember-cli-dropzonejs": "0.7.0",
    "ember-cli-flash": "git://github.com/strukturedkaos/ember-cli-flash",
    "ember-cli-google-analytics": "^1.3.1",
    "ember-cli-htmlbars": "^0.7.4",
    "ember-cli-ic-ajax": "0.1.1",
    "ember-cli-inject-live-reload": "^1.3.0",
    "ember-cli-intercom": "0.1.0",
    "ember-cli-pretender": "0.3.1",
    "ember-cli-qunit": "0.3.8",
    "ember-cli-uglify": "1.0.1",
    "ember-cli-uploader": "^0.3.9",
    "ember-data": "1.13.15",
    "ember-data-model-fragments": "1.13.1",
    "ember-export-application-global": "^1.0.2",
    "ember-highcharts": "0.1.3",
    "ember-idx-forms": "^0.5.1",
    "ember-introjs": "git+https://github.com/xymbol/ember-introjs.git#a2103f815044407417bdaac7c8ce53cb8095c354",
    "ember-lodash": "0.0.6",
    "ember-papaparse": "0.0.3",
    "ember-select-2": "1.3.0",
    "ember-simple-auth": "1.1.0-beta.2",
    "ember-spin-spinner": "0.0.2",
    "ember-truth-helpers": "1.2.0",
    "ember-validations": "^2.0.0-alpha.2",
    "express": "^4.8.5",
    "glob": "^4.0.5",
    "morgan": "^1.5.1"
  },
  "dependencies": {
    "rails-csrf": "^1.0.1",
    "rimraf": "2.2.8"
  }
}

Hm, don't really see anything wrong with that. Do you define a session store maybe? Also how do you authorizer backend requests? Are you using the DataAdapterMixin? Also please share config/environment.js.
I assume the app doesn't happen to be open source so I could access it?

@marcoow - It's not open source, but I've added you as a collaborator to the repo.
Yes, I'm using the DataAdapterMixin
adapters/application.js:
import DS from "ember-data";
import config from ".././config/environment";
import DataAdapterMixin from 'ember-simple-auth/mixins/data-adapter-mixin'

var ApplicationAdapter = DS.ActiveModelAdapter.extend(DataAdapterMixin, {
  namespace: 'api',
  authorizer: 'authorizer:application',
  host: config.API_HOST,
  headers: {
    "Accept": "application/json, text/javascript; q=0.01"
  }
});

export default ApplicationAdapter;

I created services to extend the session store. Here is an example of one:
import Ember from 'ember';
import DS from 'ember-data';

const { service } = Ember.inject;

export default Ember.Service.extend({
  session: service('session'),
  store: service(),

  currentStore: Ember.computed('session.data.authenticated.store_id', function() {
    const storeId = this.get('session.data.authenticated.store_id');
    if (!Ember.isEmpty(storeId)) {
      return DS.PromiseObject.create({
        promise: this.get('store').find('store', storeId)
      });
    }
  })
});

Great - will investigate tomorrow!

Great, thank you.

@strukturedkaos: I'm seeing a bunch of errors when running the project:

@marcoow - The errors in your screenshot appear to be related to packages not being installed. Are you on the strukturedkaos/shopify-connector-redirect-108720330 branch? Did you bootstrap with npm install & bower install??

@marcoow - I'd be happy to jump on a screenshare session with you to help troubleshoot.

Yes, I was on that branch. I think you'll see the same errors after a git clean -dfx && npm install && bower install.

I've similar problem with session storage, I'm loosing part of the information after page reload, it's something removing it from localStorage. I'm currently using ember-simple-auth 1.1.0.beta.3 + torii 0.6.1 + emberfire 1.6.6 (on ember-simple-auth 1.0 - the same problem)
when I'm checking storage (just after sign in) i've got:
$E.session.store._store._lastData.authenticated
Object { authenticator: "authenticator:torii", provider: "firebase", uid: "google:xxxx", google: Object, token: "yyy", auth: Object, expires:<PHONE_NUMBER> }

after refresh, when the method restore on ember-simple-auth/authenticators/torii is call - then data that is passed to the function, have all the information (so they were stored, and restored properly).
Unfortunately when I'm checking the session storage after that, information is pretty limited (see below).
$E.session.store._store._lastData.authenticated
Object { authenticator: "authenticator:torii", provider: "firebase" }

So after next refresh restore method will get only this subset of data - from the starting from 3rd refresh behavior is stable. Could you help me, point me how should I debug it further?
From what I notice function _setup is called always twice (not sure why).

@cs3b: please provide the source of your torii provider.

@marcoow as torii provider I'm using one that comes with emberfire.
and here is my authenticator
import Ember from 'ember';
import Torii from 'ember-simple-auth/authenticators/torii';

export default Torii.extend({
  torii: Ember.inject.service(),
  store: Ember.inject.service(),

  restore(data) {
    console.log("= restore = " + JSON.stringify(data));
    return this._super(data);
  },

  authenticate(provider, options) {
    console.log("= authenticate = " + JSON.stringify(options));
    return this._super(provider, options);
  },

  _authenticateWithProvider(provider, data) {
    if (data.hasOwnProperty('provider') && data.hasOwnProperty(data.provider)) {
      console.log(JSON.stringify(data.uid));
      console.log(JSON.stringify(data[data.provider]));
      this._findOrCreateUser(data.uid, data[data.provider]);
    }

    this._super(provider, data);
  },

  _findOrCreateUser(uid, {displayName: name, profileImageURL: imageUrl}) {
    let store = this.get('store');

    return store.findRecord('user', uid)
      .then(function (user) {
        user.set('name', name);
        user.set('imageUrl', imageUrl);
        return user.save();
      })
      .catch(function () {
        let user = store.createRecord('user', {id: uid, name: name, imageUrl: imageUrl});
        return user.save();
      });
  }
});

@cs3b: you need to extend that provider and implement the fetch method - see this for reference: https://github.com/simplabs/ember-simple-auth/blob/master/tests/dummy/app/torii-providers/facebook.js

@marcoow thx - now it is working properly. My bad, sorry, I've just started with ember-simply-auth last weekend.

@marcoow - Sorry for the delay in responding. I've fixed the Ember jQuery error you were seeing. I've mentioned you in the PR again, so you can easily find it. Please let me know if you find anything. Thank you.

@strukturedkaos: can you check again with the latest 1.1 beta release? That might already have fixed it. With the introduction of async session stores there were a few edge-case-bugs introduced as well.

@marcoow - I upgraded to 1.1.0-beta-4, and I'm still logged out once I refresh the page. Anything else I should try

Application uses an outdated version of ember-load-initializers that doesn't know about instance initializers so that session restoration never gets triggered.

Upgraded ember-load-initializers and ember-resolver, and I remained logged in after refresh. Thank you @marcoow!


Adding missing block template info

This 2 info is missing on the getblocktemplate method.
This is needed to build correct the block header with 181 bytes.
Would be awesome if you could document the block header and body (as we know many changes have to be done to merge POW + POS)

The names for the pairs should be lower case consistent with the rest of the pair names and these two additions should also be added to the help info.

Hello João (@joaoescribano) - does this code allow us to use a mining pool for HTMLCOIN?

sunk818
On Mar 5, 2018, at 11:58 PM, Peter Bushnell<EMAIL_ADDRESS>wrote:
Merged #47.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Nope, this is a part of the needs of the pool... We still working on it but it's hard as we don`t know exactly what each byte means..

Is this helpful? This is from the GPU dev, johninaustin (https://github.com/johninaustin)

Man, this helps A LOT!
On Wed, Mar 7, 2018 at 4:32 PM, sunk818<EMAIL_ADDRESS>wrote:

Is this helpful? This is from the GPU dev, johninaustin (
https://github.com/johninaustin)
[image: htmlcoin hash]
https://camo.githubusercontent.com/4c4da94eddeb90e79cba9717e7009993a3cf99f1/68747470733a2f2f692e696d6775722e636f6d2f6e703372395a592e6a7067
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/HTMLCOIN/HTMLCOIN/pull/47#issuecomment-371256753, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABRlJSZzSzfmSldLRsbGTE9h7j61YNpRks5tcDXCgaJpZM4Scfiz
.

--
João Ricardo Escribano
<EMAIL_ADDRESS>+55 (11) 9-7655-4455


Gamoshi: Remove unsupported aliases

Type Of Change

[x] Maintenance

Change Description
Remove unsupported gamoshi bidder adaptor aliases

@sa1omon - question - are these aliases supported in older versions of PBJS, or completely unsupported by your server?

@sa1omon - question - are these aliases supported in older versions of PBJS, or completely unsupported by your server?

@bretg - The aliases are completely not supported

ok


Create a Github Actions workflow for Testcafe tests

Closing in favor of focusing on the new architecture and whatever testing it enables.


Incorrect SkuPartNumber

On this page, license guid e578b273-6db4-4691-bba0-8d691f4da603 lists a SkuPartNumber of M365EDU_A5_NOPSTNCONF_FACULTY, but in my tenant it is listed as ENTERPRISEPACKPLUS_FACULTY. In the Azure portal, it is listed as "Office 365 A3 for faculty".

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: ae22e4df-3f88-8c54-c55e-a3cd4f720cbc
Version Independent ID: 3be05aac-9860-e78c-aca7-c62de044c48b
Content: Education SKU reference - Microsoft Teams
Content Source: Teams/sku-reference-edu.md
Service: msteams
GitHub Login: @cichur
Microsoft Alias: v-cichur

Thank you for submitting feedback and contributing to the docs. We are currently investigating this.


Fixed test failures with latest Rust version

This commit detects the version of Rust and
changes the expected build test files for
recent versions of Rust.

Codecov Report

Merging #33 (3def6a6) into main (0d1842e) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #33   +/-   ##
=======================================
  Coverage   95.40%   95.40%
=======================================
  Files           8        8
  Lines         196      196
=======================================
  Hits          187      187
  Misses          9        9

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 0d1842e...3def6a6. Read the comment docs.


reload gun when full

Sometimes when a weapon is reloaded by mistake when you have maximum ammunition, it takes away the bullets you had, for example:
8/90
reloading
8/82

Do you still have this issue in the latest version? Because I don't

Do you still have this issue in the latest version? Because I don't

I haven't tried it, I stopped using it due to the low activity I saw, but I might try it again.

We are trying to get some new features and fixing some bugs. I will report on this issue when Turkey releases a new version you can test. Also you are always welcome to contribute.


7.172.0 and Cannot set sharingModel to ControlledByParent

Summary
We get the following error when using 7.172.0 to install an unlocked package into a sandbox.
Cannot set sharingModel to ControlledByParent on a CustomObject without a MasterDetail relationship field
Steps To Reproduce:

Just try to install an unlocked package into a sandbox that has any custom child objects with a Master-Detail relationship with the custom parent object and is set to ControlledByParent.

Expected result
Should install successfully, like it does with previous versions.
Actual result
Fails on above error. Stated again, below:
Cannot set sharingModel to ControlledByParent on a CustomObject without a MasterDetail relationship field
System Information
sfdx-cli/7.172.0 linux-x64 node-v16.17.1

Additional Info - I've started getting this on new org-dependent packages on objects which have not changed in the package. Started post Winter 23 (this weekend)

Hi @agentgill @dcano421, It sounds like this is related to this weekend's Winter 23 release, I've let some internal packaging teams know so they can look into it. Also as a reminder, try out the pacage:beta:* commands too :)

@WillieRuemmele, thanks William for responding. beta commands seem to be more stable and allowed me to get passed this issue.

Reopening this as some customers have indicated that they cannot use the beta packaging commands in their CI scripts.  We'll leave this open until it's been fixed in the force:package:install command in the salesforce-alm plugin.
To be clear, this is working if the force:package:beta:install command is used from the @salesforce/plugin-packaging plugin, but not everyone is comfortable/allowed to use beta commands in their work flows.

Started having this issue when creating a package version as well. The package creation fails because of the sharing model issue, and as such pretty much all classes and related objects also fail, leaving a trail of errors (almost 300) because of three objects that can't be created due to this issue.


[Static Analysis] Use Rector 0.9 for 4.1 branch with php version feature 7.3

This is the start over. Update rector dependency to 0.9 for 4.1 branch with php version feature 7.3
Checklist:

[x] Securely signed commits

This PHPStan notice only happen in php 8:
 ------ --------------------------------------------
  Line   system/Test/Filters/CITestStreamFilter.php
 ------ --------------------------------------------
  50     No error to ignore is reported on line 50.
 ------ --------------------------------------------

This PHPStan notice only happen in php 8:
 ------ --------------------------------------------
  Line   system/Test/Filters/CITestStreamFilter.php
 ------ --------------------------------------------
  50     No error to ignore is reported on line 50.
 ------ --------------------------------------------

I think we can run PHPStan only in PHP 8

I think we can run PHPStan only in PHP 8

I addressed PHPStan in https://github.com/codeigniter4/CodeIgniter4/pull/4065. Let's hold off on a decision and see fi anything comes from Ondre's comments upstream. If you want to follow the links in my PR and add your support it may help with popular opinion.
For now we'll consider this an allowable failure until we have a solution (my PR or otherwise).

I addressed PHPStan in https://github.com/codeigniter4/CodeIgniter4/pull/4065. Let's hold off on a decision and see fi anything comes from Ondre's comments upstream. If you want to follow the links in my PR and add your support it may help with popular opinion.
For now we'll consider this an allowable failure until we have a solution (my PR or otherwise).


Expose method model() to load a model from registry

For consistency, since we can write
from tensor2tensor import problems
problem = problems.problem('my_problem')

this should work for the module models too:
from tensor2tensor import models
model = models.model('my_model')

Hi @stefan-falk -- Thanks for the PR!
Can you sign the CLA? The instructions are in the comment by the bot.
Thanks!

@afrozenator Hi! Signed it :)

Thanks for the PR @stefan-falk -- this was a good observation!

@afrozenator No problem :) you're welcome


App crashed while deleting recent searches

Summary:
Every time the app is crashing while deleting recent searches. And also is delete the search item one by one. But In my emulator which is Pixel 4 API 30, the app is working as expected (not crashing and deleting the whole search). The crash is saying that we are releasing an already released resource.
Steps to reproduce:
Explore -> search icon -> Delete recent searches.
System logs:
    java.lang.IllegalStateException: Already released
        at android.content.ContentProviderClient.release(ContentProviderClient.java:456)
        at fr.free.nrw.commons.explore.recentsearches.RecentSearchesDao.deleteAll(RecentSearchesDao.java:83)
        at fr.free.nrw.commons.explore.recentsearches.RecentSearchesFragment.lambda$null$0$RecentSearchesFragment(RecentSearchesFragment.java:58)
        at fr.free.nrw.commons.explore.recentsearches.-$$Lambda$RecentSearchesFragment$Ug_BF47xEbqSyqu8SnL2pEeYom0.onClick(lambda)
        at androidx.appcompat.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:179)
        at android.app.ActivityThread.main(ActivityThread.java:5730)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:681)
07-16 01:31:07.518 3182-3195/? E/ANDR-PERF-MPCTL: invalid request, no optimizations performed

Device and Android version:
OPPO A57 API 23
Commons app version:
latest master
Screen-shots:
https://drive.google.com/file/d/1Isk-ePqpQM-Myf6JklolHODR1OXPClZa/view?usp=sharing

Hi @Ayan-10 , thanks for reporting this! Are you interested in working on it?

@misaochan Yes

It is yours. :)

It's been a while since this issue is created. Has anyone encountered the same problem as I did not yet?

@rohit9625 Indeed I can not reproduce either, thanks! 🙂


[WIP] Fix: (Nested) null values will never be applied to SQLite when batched in Onyx

@tgolen
Details

When we batch queued changes in Onyx.merge and they contain (nested) null values, SQLite will never be able to apply the individual deltas. Therefore, when we pass null or a nested null in an object, SQLite will not delete the (nested) keys from storage.
Imagine having something like this:
const initialData = {
    a: 'a',
    b: 'b',
    c: {
        d: 'd',
        e: 'e',
    },
};
const change1 = null;
const change2 = {
    f: 'f',
    c: {
        g: 'g',
    },
};
const changes = [change1, change2];

const batchedChanges = OnyxUtils.applyMerge(undefined, changes, false);

This will result in the following batchedChanges:
{
    f: 'f',
    c: {
        g: 'g',
    },
}

When we then apply these batched changes in the native storage layer (SQLite) with JSON_PATCH, the initial data will not be erased and keys "d" and "e" will not be removed either, because SQLite never applied the top-level and nested null's.
Creating a SQLite mock in react-native-quick-sqlite
I'm going to fix this issue in this PR. Additionally, i'm thinking about creating a in-memory or local SQLite mock and ship it with https://github.com/margelo/react-native-quick-sqlite. The mock could then either run in-memory directly - if possible - or we would need to spin up a local SQLite database.
With this mock we could add more native-specific tests in react-native-onyx and potentially improve other tests so that we test for all platforms.
Related Issues

GH_LINK
Automated Tests

Manual Tests

Author Checklist

[ ] I linked the correct issue in the ### Related Issues section above
[ ] I wrote clear testing steps that cover the changes made in this PR

[ ] I added steps for local testing in the Tests section
[ ] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[ ] I included screenshots or videos for tests on all platforms
[ ] I ran the tests on all platforms & verified they passed on:

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I followed proper code patterns (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I followed the guidelines as stated in the Review Guidelines
[ ] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] I verified that if a function's arguments changed that all usages have also been updated correctly
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

Interesting issue! I'm not sure I fully understand it, even after reading it a couple of times, but as long as you have some tests that prove the bug and the fix, then I'm good with it.
As for the SQLite mock, I think it would be ideal to be able to spin up an actual SQLite database and run tests directly against it. That would give us extremely accurate and reliable tests. What would need to happen to have that?

Interesting issue! I'm not sure I fully understand it, even after reading it a couple of times, but as long as you have some tests that prove the bug and the fix, then I'm good with it.

As for the SQLite mock, I think it would be ideal to be able to spin up an actual SQLite database and run tests directly against it. That would give us extremely accurate and reliable tests. What would need to happen to have that?

The idea about an in-memory SQLite database is as in https://www.sqlite.org/inmemorydb.html. It's possible to temporarily store the database only in-memory and this seems more than sufficient for testing/mocking purposes. If this is possible, i think we should prefer this, instead of relying on a local SQLite database and installation.
I'm gonna fix this actual issue before i potentially start work on a mock, as the mock isn't really high-priority right now. Basically we would just ship the mock in react-native-quick-sqlite and then we would need to setup the mock in jestSetup.js, same as the other mocks.

Ah, I see. So the in memory database would still use the exact same SQLite
interface? If so, then I agree that would be fine.
On Fri, Mar 29, 2024 at 4:35 AM Christoph Pader @.***>
wrote:

Interesting issue! I'm not sure I fully understand it, even after reading
it a couple of times, but as long as you have some tests that prove the bug
and the fix, then I'm good with it.
As for the SQLite mock, I think it would be ideal to be able to spin up an
actual SQLite database and run tests directly against it. That would give
us extremely accurate and reliable tests. What would need to happen to have
that?
The idea about an in-memory SQLite database is as in
https://www.sqlite.org/inmemorydb.html. It's possible to temporarily
store the database only in-memory and this seems more than sufficient for
testing/mocking purposes. If this is possible, i think we should prefer
this, instead of relying on a local SQLite database and installation.
I'm gonna fix this actual issue before i potentially start work on a mock,
as the mock isn't really high-priority right now. Basically we would just
ship the mock in react-native-quick-sqlite and then we would need to
setup the mock in jestSetup.js, same as the other mocks.
—
Reply to this email directly, view it on GitHub
https://github.com/Expensify/react-native-onyx/pull/526#issuecomment-2027047699,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJMABZUKY5RY73R63C6NKTY2UYXVAVCNFSM6AAAAABFNHI4VGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRXGA2DONRZHE
.
You are receiving this because you were mentioned.Message ID:
@.***>

Ah, I see. So the in memory database would still use the exact same SQLite
interface? If so, then I agree that would be fine.

yes 👍

@chrispader Lint is failing

@mountiny addressed your comments.

@chrispader Changes look good to me, one comment, is there a way to test these in App now?

There isn't really a use-case in which you can test exactly this fixed behaviour, since at the time this only occurs in SQLite on native platforms. Therefore, in this test PR i do some Onyx operations and then fetch the value from storage directly instead of using something like withOnyx, Onyx.connect or Onyx.get, since for these functions the cache would be used first...


Malformed URL on link in "Ports" tab (missing http scheme colon)

Expected behavior
Click "localhost" link on "Ports" tab, "http://localhost:5000", opens.
Actual behavior
Click "localhost" link on "Ports" tab, "http//localhost:5000" opens. (no colon : after http)
Information about the Issue
Bug.
Steps to reproduce the behavior

Get latest registry image.
Go to "Ports" tab
Change mapped port: container port 5000 to mac port 5000

Pinging @FrenchBen to close this issue as it is resolved with #1783.


Background color?

Is there any way to set a background color for a page or the entire document? I figured I could do it by drawing a rectangle and filling it with the background color but I can't figure out how to make sure the rectangle covers the whole page (what should be width/height?).

Hi !
Yes, for me, i draw a rectangle to fill background color.
Just retrieve object "page" on "doc" like on demo page (http://pdfkit.org/demo/browser.html) :
// create a document and pipe to a blob var doc = new PDFDocument(),     page = doc.page; console.log('maxWidth=',page.width,', maxHeight=',page.height); ...

Thanks.

If you just want to copy and paste:
doc.rect(0, 0, doc.page.width, doc.page.height).fill('#302ed6');


/random -> This page doesn't exist.

Hi.
Problem: requests for /random result in "Woops. Looks like this page doesn't exist."
Grav version 1.0.6. (clean install)
Random version 1.4.0 (clean install)
I verified that I do indeed have pages that are using the category selected in the random plugin config settings, and that the Random module is enabled.
I expect something to be shown at /random, but I get  the above error message.
Context: Was trying to learn how Grav plugins work by recreating the Random plugin example at http://learn.getgrav.org/plugins/plugin-tutorial.
That kept giving me "This page doesn't exist", so I installed the random plugin itself, which also doesn't seem to work at the moment.
On a side note: the actual Random plugin's code is much more extensive that the plugin example code. Not sure if the minimal code given should actually work, or if the documentation is out of date. If someone could point towards a working Random plugin example and if the code in the tutorial is indeed out of date I'd be happy to help update the docs.
Thanks.

Maybe this is the problem? https://github.com/getgrav/grav-plugin-random/issues/4
The plugin is fixed now but the fix https://github.com/getgrav/grav-plugin-random/pull/5/files has not been released yet.


chore(consensus): emit warnings if no CL found

https://github.com/paradigmxyz/reth/issues/2526

@mattsse just to clarify: a type implementing Future which when polled returns one of these 4 CL unavailability cases or Pending, right?

yeah exactly, I think that'd be the best UX,
a stream type that yields these events


Issue 239

Fixes issue given demo app content.
Contributor checklist

[ ] Bug fixes include regression tests
[ ] Features include unit/acceptance tests

Looks like a dialyzer error?

Ah, right you are its unrelated.

🚀 Thank you for your contribution! 🚀


For discussion: be explicit about JRuby opts

This is really only an issue on JRUBY-HEAD where
cext.enabled property no longer exists.
https://travis-ci.org/rspec/rspec-core/jobs/50010459#L166

Thanks.  I used the travis:create_pr_with_updates task to create a PR in each repo with these updates.

OK, force pushed updates to all the PRs for all repos.
BTW, thanks for looking into this.  I had noticed the jruby warnings but wasn't sure how to fix them!

@myronmarston I had thought Travis was fixing the JRuby-head build cext.enabled warnings, but turns out that was something else.  One of us will have to check if there's an open issue for this.  cc @headius @enebo fwiw

Thanks, @bf4.  The rspec-mocks build passes on JRuby head now!
https://travis-ci.org/rspec/rspec-mocks/jobs/50015531


update package.json and by extend package-lock.json to fix CVEs

update package.json and by extend package-lock.json to fix CVEs mentioned by dependabot and codescanning

The current fixversion of Angular does not support the fixes. Will be included in next sprint to check for compability problems

Angular Update was included in a diffrent Issue/Pullrequest, will be closed due to duplicate


showing below error when ever i type command in terminal

error:output_command_execute_after:25: command not found: bc

I also need some help on it.

Linux, command not found: bc

error:output_command_execute_after:25: command not found: bc

Linux, command not found: bc

I also need some help on it.

Linux, command not found: bc

in ubuntu: sudo apt install bc


Breakpoints are not hit in .cshtml files

Not sure if this is a Runtime, Razor, or MVC bug but let's start here since MVC does the compilation of Razor-generated files.  Using current VS / WTE builds (DP 22228.01 and 2014-10-29_b1886) with the latest origin/dev code, breakpoints in .cshtml files are not hit and are listed with an unusual tooltip.  Breaks on exceptions in the generated classes (e.g. NREs in the MVC sample at ~/Home/Post) have wildly incorrect locations.  No such issues exist with regular C# classes.
Ex. list of breakpoints:

Ex. tooltip message:

Problems occur with both IIS Express and Web Listener.  I was testing with CLR (not Core) configuration.
/cc @pranavkm since he was looking at this issue earlier.

I can hit breakpoints in some cases after my most recent VS re-installation but not when I follow our internal recommendations for VS setup.
If Debug / Options / General / "Require source files to exactly match the original version" is checked at the beginning of a debug session, breakpoints are hit in .cshtml files.  Otherwise they are not.  Changing this setting during a debug session does not change the behaviour.  (Note we've been recommending clearing this setting.)
Still unsure whether the problem exists in Razor, MVC, or VS...

Get together with @dougbu and @ToddGrun and get a consistent repro

@mayurid can your team get a consistent repro for this?

If Debug / Options / General / "Require source files to exactly match the original version" is checked at the beginning of a debug session, breakpoints are hit in .cshtml files. Otherwise they are not.

Yup, I'm seeing this behavior. Also seeing this if I click on the breakpoint and tick the "allow the source code to be different from the original version". Seem non-intuitive since you'd expect these flags the make the source file matching less restrictive and not more.
I'm using 14.0.22515.0 WPT with latest WTE.

This looks like a bug in VS. @mayurid @barrytang can you please investigate?

Opened a VS bug to track.


Dependency/dependant tracking

Fixes #175

Plenty to do on this, but I want to get some feedback on the structure and the future UI
Annoyingly, my thinking is pretty much the same as Packagist. Showing the actual dependencies above the README. Then maybe a separate package list on a separate page, linked under Actions.

Wow, nice work :+1:
Would you be able to add a screenshot of what it looks like?
Ok, now I understand why a separate table. I wonder how it will affect the performance with a large number of packages, but postgres should handle it, I think you can go ahead and continue :+1:

I need ideas for the design. At the moment, it's just using flexbox with wrapped columns.
A 'full' package containing all types:

A package with minimal data:

(ignore the duplicate require + requires, I haven't done the purging yet)

Now:

Migration now failing due to:
[notice] Migrating up to Buddy\Repman\Migrations\Version20210401061218
[warning] Migration Buddy\Repman\Migrations\Version20200720112146 was executed but did not result in any SQL statements.
[error] Migration Buddy\Repman\Migrations\Version20210401061218 failed during Execution. Error: "An exception occurred while executing 'ALTER TABLE organization_package_link ADD CONSTRAINT FK_4A06082932C8A3DE FOREIGN KEY (organization_id) REFERENCES organization (id) NOT DEFERRABLE INITIALLY IMMEDIATE':

However, this file doesn't exist?

Hey @giggsey it was my fault, sorry. When I debugged the previous pipeline, I forgot to remove the generated migration. Anyway, there are still some differences:
$this->addSql('ALTER INDEX link_organization_id_idx RENAME TO IDX_4A06082932C8A3DE');

Thanks @akondas.
That index is currently generated via:
        $this->addSql('CREATE INDEX link_organization_id_idx ON organization_package_link (organization_id)');

I can rename it there, but how does that automatic name get generated when it's fine for the 'link_package_id_idx' index?

As far as I remember, this name is generated by doctrine, based on mappings:
    /**
     * @ORM\ManyToOne(targetEntity="Buddy\Repman\Entity\Organization")
     * @ORM\JoinColumn(nullable=false)
     */

Maybe you had an older version, or you made it out of your finger? it's hard for me to figure out why this name is wrong ... :thinking:


hava any plan to support rust?

ent is great orm framework, Do you have plans to support rust？

[x] I have searched the issues of this repository and believe that this is not a duplicate.

Summary 💡

Motivation 🔦

then support for c and c++?

maybe assembly?

Of course, JS and HTML too!

ADA


Custom workspace

Hi.
Thank you for your great work.
I have a question about opportunity to create custom workspace. My project build from different sources which are located in different repositories. Does is it possible?

@ayushindin - Yes this is possible. This is not the expected scenario, but you can modify your workspace to include any server paths you want in the Edit Workspace dialog. You can choose VCS->TFVC->Edit Workspace OR you can click the checkbox to Edit the workspace on the VCS Checkout dialog. Let us know if you have any issues with this type of workspace.
Thanks,
Jason

@jpricketMSFT It will be great if I have opportunity to checkout project by specific workspace.
I tried to:

enable vcs integration for existing project - workspace is empty; If edit workspace than "Updating workspace: error current workspace"
checkout empty repository -> modify workspace -> list all dependencies (can't copy workspace from tfs or copy-past text...)

@ayushindin - I am not sure I understand what you want to do. Can you edit the workspace? What do you mean by repository? I assumed you meant different team projects in the same Collection. All of the sources in a particular workspace have to come from the same collection. Perhaps a few screenshots would help me understand your scenario better.
Thanks,
Jason

@jpricketMSFT
First case:
Preconditions: I have a real project which mapped from TFS. I opened, then enable vcs integration and try modify workspace.

@ayushindin - That's a really bad error message. My apologies for that. Could you look in the Log file (under help menu) and attach the callstack for that error here?
How did you create the workspace on disk? Did you use the Java command line version of TF or some other way? You will probably have to recreate the workspace using the Java command line version of TF or Android Studio.
Thanks for the screen shots, they really helped me understand the problem.
Jason

@jpricketMSFT My steps:

I create workspace in TFS app.
Open downloaded project with Android Studio.
Enable VCS integration
Try to modify workspace. Workspace is empty and i can't to change it (screenshots)

Maybe problem between TFCommandLine and Visual Studio (TFS).
Exception:
java.lang.RuntimeException: An argument error occurred: The workspace could not be determined from any argument paths or the current working directory.
at com.microsoft.alm.plugin.external.commands.Command.throwIfError(Command.java:333)
atcom.microsoft.alm.plugin.external.commands.FindWorkspaceCommand.parseOutput(FindWorkspaceCommand.java:49)
atcom.microsoft.alm.plugin.external.commands.FindWorkspaceCommand.parseOutput(FindWorkspaceCommand.java:20)
at com.microsoft.alm.plugin.external.commands.Command$1.completed(Command.java:142)
at com.microsoft.alm.plugin.external.ToolRunner$ListenerProxy.completed(ToolRunner.java:290)
at com.microsoft.alm.plugin.external.ToolRunner$ProcessWaiter.run(ToolRunner.java:328)

@ayushindin - I think you are right. The workspace created by Visual Studio is probably not being recognized by the Java TF command line that we use. Probably because the cache files are in different locations. Can you recreate the workspace in Android Studio?

@jpricketMSFT Could you provide instruction how to recreate, please?

@jpricketMSFT Moreover, if I print "tf workspaces" in cmd then I'll see some workaspaces which are the same with workspaces in tfs (visual studio) (not all).

I sync cache and it helps.

That's great! Thanks for updating the issue. Let us know if you run into any other issues.


any plan on supporting microbit board?

I see that the discovery book has been rewritten for microbit board. Wonder if there is any chance of rewriting for embedded book as well?

@jsomedon stop wondering what might happen, make things happening. Thing you could and should do is closing this issue.

There are no plans to do so at the moment.


Fix non-Windows terminals assumed to always support 256-color

Backports https://github.com/cli/cli/pull/6356

Wouldn't this completely break alternate screen buffers on *nix then? There are other ways of detecting whether VT sequences are supported:

Using tput e.g., https://unix.stackexchange.com/questions/450365/check-if-terminal-supports-24-bit-true-color
https://github.com/microsoft/terminal/issues/1040#issuecomment-1043650915

@heaths I don't see how this can break alternate screen buffers on *nix. There is still an issue with that in the CLI repo, I agree, but we will resolve that in that repo.

Agreed. Please see my latest comment.

To clarify my comment about VT support, I was suggesting maybe something in this module could define, but perhaps that would best be in one of @mattn's many term modules, if it isn't already (I couldn't find one).

Can I help you? If you can explain how to reproduce the problem, I can fix that.

Mainly, with all the terminal modules you have, was wondering if any of them might be a good place to put better VT support detection into. See https://github.com/cli/cli/pull/6435#issuecomment-1277776665 for some thoughts. We've also been wrestling with some of these ideas for Windows Terminal as well. If you think one of your modules might be appropriate, maybe you or I could open an issue and discuss more there.


docs(@schematics/angular): fix typo in web worker schematics ("service worker" --> "web worker")

☝

BTW, is this correct:
https://github.com/angular/angular-cli/blob/ab3dcdd04fa23b969bc0cef886cd17283bd5ce9f/packages/schematics/angular/web-worker/schema.json#L6
It feels wrong (at least I don't understand what it means), but I am not sure what would be the correct description.
Maybe replace run with generate?

@gkalpak, I don’t think that is correct it should be something along Creates a new generic web worker definition in the given or default project."

Feel free to fix that in this PR or a separate one 😊

Fixed.

@gkalpak, can you please rebase to make this green? thanks


Party join not working

Skins of bot and other invited people dnt appear in party , this only happends if i leave default party created by login and create a new party,
if i dnt leave the default party and invite friends in that party, everything works good
const {EPartyPrivacy} = require('epicgames-client');

const {Launcher} = require('epicgames-client');

const {Party} = Launcher;
const db = require('./db.js');
const EGClient = require('epicgames-client').Client;
const Fortnite = require('epicgames-fortnite-client');
const {ESubGame} = Fortnite;
var discord = require('./discord');
const launcher = new Launcher({
    email<EMAIL_ADDRESS>    password: '',
    createPartyOnStart: true,
    debug: console.log

});
let egClient = new EGClient({
    email<EMAIL_ADDRESS>    password: ''
});
(async () => {

    if (!await launcher.init() || !await launcher.login()) {
        throw new Error('Error while initialize or login process.');
    }
    console.log(`Logged account's displayName: ${launcher.account.displayName}`);
    const app = await launcher.runGame(Fortnite);
    launcher.communicator.on('party:invitation', (invitation) => {
        console.log("invitation came" + invitation);
        (async () => {
            await invitation.accept();
        })();
    });
    app.communicator.on('party:invitation', (invitation) => {
        console.log("invitation came" + invitation);
        (async () => {
            await invitation.accept();
        })();
    });
    egClient.init().then(async (success) => {
        console.log("Logged in to epic game client");

        let partyStatus = await launcher.Party.lookupUser(app, launcher.account.id);
        if (partyStatus.current.length > 0) {
            console.log("Previous Party found lets leave it");
            await   app.party.leave();
            console.log('You left previous party');
        } else {
            console.log("No previous party was found")
        }
        let defaultPartyConfig = {
            privacy: EPartyPrivacy.PUBLIC,
            joinConfirmation: false,
            joinability: 'OPEN',
            maxSize: 16,
            subType: 'default',
            type: 'default',
            inviteTTL: 14400,
            chatEnabled: true,
        };
        var party = await launcher.Party.create(app, defaultPartyConfig);
        try {

            await party.waitForRevision(1);
        }
        catch (e) {
            console.log('exception', e);
        }

        await  party.me.setOutfit("/Game/Athena/Items/Cosmetics/Characters/CID_313_Athena_Commando_M_KpopFashion.CID_313_Athena_Commando_M_KpopFashion");

        await  party.me.setBattlePass(true, 99999999, 99999999, 99999999);

        party.updatePresence();
        console.log("Party Created");
        partyStatus = await launcher.Party.lookupUser(app, launcher.account.id);
        if (partyStatus.current.length > 0) {
            console.log("Party new created well")
        }
        partyStatus = await launcher.Party.lookupUser(app, launcher.account.id);
        console.log("partystatus", partyStatus);

        // app.party.update(partyStatus);
        console.log("Presence", launcher.config.autoPresenceUpdating);
        party.invite("f7b1a006b3dd47e887cff4d4c481872a");
        party.updatePresence();
    });
})();

EGClient is same thing as Launcher. Please update library version to 2.0.16.
PS. Remove your account's credentials from code.

When this'll be fixed?


Bump az-tdx-vtpm & az-snp-vtpm from 0.6 to 0.7.0

Bump az-tdx-vtpm from 0.6.0 to 0.7.0
Bump az-snp-vtpm from 0.6.0 to 0.7.0
Bump base64 from 0.22.0 to 0.22.1

This PR is prior next one: https://github.com/confidential-containers/guest-components/pull/710

@fitzthum yes - separare PR is also created for trustee:
https://github.com/confidential-containers/trustee/pull/493/files

@pawelpros can you rebase this PR so get CI re-triggered.

Sure, already pushed rebase

the remaining error looks like a network glitch?


CI setup with Justfiles

[x] Formatted Nix code using Alejandra.
[x] Formatted Python code with Black, with integration added to flake.nix.
[x] Checked Python code with Ruff, with integration added to flake.nix.
[x] Conducted type checks on Python code using Mypy.
[x] Ran tests on the current machine.
[x] Created two targets, one for CI and one for developers

P.S: I did not push the code formatting done by just since there would have been a lot of file changes

Yes, we should avoid reformatting the Python code until the currently in-flight Python pull requests are merged in.
Do all of the checks pass currently (especially Mypy)?

No, not all the checks passed, boradly:

check-ruff: some unused imports, undefined struct variables.
check-mypy': Errors included unused type: ignorecomments, attribute errors(inner_c_type), missing type annotations, incorrect return types (Any instead of int | Exception), and invalid type usage (inner_py_type)`.

Mypy in detail:
(cd probe_src && mypy --package probe_py --strict)
probe_py/struct_parser.py:37: error: Unused "type: ignore" comment  [unused-ignore]
probe_py/struct_parser.py:78: error: Unused "type: ignore" comment  [unused-ignore]
probe_py/struct_parser.py:119: error: "type[PointerStruct]" has no attribute "inner_c_type"  [attr-defined]
probe_py/struct_parser.py:139: error: Function is missing a type annotation for one or more arguments  [no-untyped-def]
probe_py/struct_parser.py:157: error: Returning Any from function declared to return "int | Exception"  [no-any-return]
probe_py/struct_parser.py:193: error: Unused "type: ignore" comment  [unused-ignore]
probe_py/struct_parser.py:212: error: Unused "type: ignore" comment  [unused-ignore]
probe_py/struct_parser.py:216: error: Variable "inner_py_type" is not valid as a type  [valid-type]
probe_py/struct_parser.py:216: note: See https://mypy.readthedocs.io/en/stable/common_issues.html#variables-vs-type-aliases
probe_py/struct_parser.py:288: error: Unused "type: ignore" comment  [unused-ignore]
probe_py/struct_parser.py:384: error: Unused "type: ignore" comment  [unused-ignore]
probe_py/struct_parser.py:399: error: Unused "type: ignore" comment  [unused-ignore]
probe_py/struct_parser.py:487: error: Unused "type: ignore" comment  [unused-ignore]
arena/parse_arena.py:75: error: Name "__getitem__" already defined on line 72  [no-redef]
arena/parse_arena.py:78: error: Name "__getitem__" already defined on line 72  [no-redef]
error: Recipe `check-mypy` failed on line 11 with exit code 139

One thing that I didn't see in the CI file was flake checks, can we get a CI step that runs nix flake check --all-systems (currently broken, see PR #31)?

Yes, please add the check that @Ex-32 mentioned.

Can you try to fix as many of the type errors that you can? Some of them are just asking to remove a type-ignore comment. The other one about overload confuses me, and perhaps you could look in to how to tell My about method overloads.

Can you try to fix as many of the type errors that you can? Some of them are just asking to remove a type-ignore comment. The other one about overload confuses me, and perhaps you could look in to how to tell My about method overloads.

Will do this, though it would be easier for me to open a separate PR for this.


Installing FF fails with v9

C:\> set PUPPETEER_PRODUCT=firefox

C:\> deno run -A --unstable<EMAIL_ADDRESS>Download<EMAIL_ADDRESS>Check<EMAIL_ADDRESS>
100.00% 21.1s 83721209/83721209

error: Uncaught (in promise) NotFound: The system cannot find the path specified. (os error 3)
      await Deno.writeFile(ff, content);
      ^
    at unwrapOpResult (deno:core/core.js:99:13)
    at async open (deno:runtime/js/40_files.js:46:17)
    at async Object.writeFile (deno:runtime/js/40_write_file.js:58:18)
    at async JSZip.unzip (https://deno.land/x/puppeteer@9.0.0/vendor/puppeteer-core/vendor/zip/mod.ts:203:7)
    at async extractZip (https://deno.land/x/puppeteer@9.0.0/src/deno/BrowserFetcher.ts:473:3)
    at async BrowserFetcher.download (https://deno.land/x/puppeteer@9.0.0/src/deno/BrowserFetcher.ts:283:7)
    at async https://deno.land/x/puppeteer@9.0.0/install.ts:34:27

C:\> deno -V
deno 1.9.2

Installing Chrome worked just fine.

I added a console.log.
The unzip code is trying to write to %localappdata%\deno\deno_puppeteer\firefox\win64-90.0a1\firefox\uninstall\helper.exe.
%localappdata%\deno\deno_puppeteer\firefox\  exists. The other subdirectories, \win64-90.0a1\firefox\uninstall\ don't.
Seems like the code at https://github.com/lucacasonato/deno-puppeteer/blob/9.0.0/vendor/puppeteer-core/vendor/zip/mod.ts#L196-L200 is buggy.


Future displayIncomingCall(String number, BuildContext context) async {

Hi,
How do you advise running this in an onBackgroundMessage when it needs a context object?
Thanks.

Still need to know about where to get that context from :-)

I don't need to ask perms in this background bit, will do on app launch. Closed.


Filter?

Wondering is there any possibility to add any filter.
Type average of 5 minutes which is then sent to Nightscout?

if you use the latest version, the time interval will change to 5 minutes.

Tanks!


fix: remove expired proposals for instrument scientists

Closes: https://github.com/UserOfficeProject/issue-tracker/issues/1089
Description
Added an array to remove proposals of any given status from the instrument scientist table. At the moment the only status being removed is 'Expired' however, different statuses can be easily added/ removed from this list.

Motivation and Context

How Has This Been Tested
This has been tested manually

Fixes

Changes

Depends on

Tests included/Docs Updated?

[ ] I have added tests to cover my changes.
[ ] All relevant doc has been updated

Yeah so basically it was causing confusion with instrument scientists when EXPIRED proposals were showing in the instrument scientist table. I get what you mean about not being able to access these hidden proposals, I will look into the checkbox solution

I do not know if Instrument Scientist needs to be able to view expired proposals given there is no further processes on those proposals. This is something we might need to check with the requirements.

I do not know if Instrument Scientist needs to be able to view expired proposals given there is no further processes on those proposals. This is something we might need to check with the requirements.

I think this is not about the requirements. The frontend has a status filter that would not work correctly with this change (STFC side).
Instead of having hardcoded exclusions, I would improve the filter component to allow the selection of multiple proposal statuses, giving users control over what they want to see.
By default, it could be set to include all statuses except EXPIRED for the Instrument scientist’s proposal table.
I was thinking of a filter like the one we have in the Scheduler application:

I do not know if Instrument Scientist needs to be able to view expired proposals given there is no further processes on those proposals. This is something we might need to check with the requirements.

I think this is not about the requirements. The frontend has a status filter that would not work correctly with this change (STFC side). Instead of having hardcoded exclusions, I would improve the filter component to allow the selection of multiple proposal statuses, giving users control over what they want to see. By default, it could be set to include all statuses except EXPIRED for the Instrument scientist’s proposal table. I was thinking of a filter like the one we have in the Scheduler application:

Maybe we should remove the filter for expired proposals so that its not even available given expired proposals have no much use since they are no longer part of any process.


Error on Line 98

Hi,
After a while of searching for a way of syncing my google calendar with a spreadsheet, I finally stumbled on your script - thank god!
I think I've set it up right - I got the calendar address, and changed 'sheetName' to the name of my spreadsheet (I assume this was right? The instructions weren't too clear...). That's all I've changed.
Everything seems to run fine until the script gets to line 98, where I get the following error:
Cannot find method createEvent((class),(class),(class),object). (line 98, file "Calendar Sync 1")
As I am not a programmer, I don't really have a clue where to start debugging, but any insight you can give would be appreciated!
Thanks! :)

Thanks for trying it out!
I should probably add some more error checking in the script to make sure values and formats are correct. I suspect the formatting in your spreadsheet is probably slightly different than mine. A few things to check:

There is a start and end, date and time for every event that has "all day event" set to false.
The format for all of the start and end date/time cells is set to a date/time format. Select the cells and then do Format menu -> Number -> Date time.

Dave

I updated the script and added some error checking. There should be a pop-up dialog with a more helpful message if there are problems with the data in the spreadsheet.

Thanks for getting back to me :)
I've run the new script, and made sure my start/end time columns are in date time format, but I'm still getting an error - a different one this time, on line 73:
TypeError: Cannot call method "getDataRange" of null. (line 73, file "Calendar Sync 1")
Not sure if it matters or not, but this is while trying to syncCalendar, and it's not managed to complete so far, so my spreadsheet is empty, save the column headings. Also, just checking, but my spreadsheet has a few different 'tabs' at the bottom, one of which is for the calendar - does this matter at all, or does it need to be in a separate document of it's own?
Thanks! :)

It sounds like you're trying to pull the events from the calendar to the spreadsheet. Right now the script only syncs in one direction, from the spreadsheet to the calendar. I've thought about how to go the other direction, but I haven't implemented it yet.
I modified the script slightly to just use the active sheet (tab). Previously, it was looking for a tab called "Sheet1". That error indicates it wasn't able to find that tab in your spreadsheet.

The script now syncs in both directions. I'm going to close this issue, but feel free to re-open it if you're still having problems.


feature: Partial ("Preview") Syncs

Feature scope
API
Description
At Akkio, we have a use case where we want to fetch a limited subset of user-imported datasets. We do this so that we can show users a small preview of what their end data might look like after what's essentially an internal transformation process we run, and we want them to be able to potentially make changes and make sure that transformation process looks good before they commit to the full data sync.
After a brief discussion with @DouweM, this feature doesn't yet seem to exist on Meltano, but is something that would potentially fall under Meltano's purview. The current state of Meltano essentially forces you to do the full data sync before you can actually show it to the user, resulting in subpar experience if the end output isn't really what they want. While split-second queries aren't what Meltano is built for, nor are what I'm really proposing here, allowing for a preview window of sorts still seems like a positive addition cohesive with the rest of the tool to me.
Dropping some other comments that were made, for full context:

One option would be to add a limit config on the Tap SDK to only load a certain number of records, and another to add a mode to meltano elt to stop after the first state message is output by the target. (Targets flush records and write state messages at different batch sizes (often configurable), but until the first state message comes we can’t assume any of the records have made it to the destination, so we couldn’t base this on number-of-records on the target or meltano elt side, that’d need to be controlled by the target.)

We do have a meltano test that basically invokes the tap and then kills it after 1 RECORD comes through. Perhaps a flag to configure the number of records to allow would work?

@edgarrmondragon how hard would it be to make the number of records on the test command configurable?

@edgarrmondragon how hard would it be to make the number of records on the test command configurable?

@tayloramurphy Well, it uses plugin commands and reports the summary of results if multiple test commands were selected, similar to pytest. Problem is, it's not working at the moment for taps because even after adding a test command:
plugins:
  extractors:
  - name: tap-stackexchange
    variant: meltanolabs
    pip_url: git+https://github.com/MeltanoLabs/tap-stackexchange.git
    commands:
      test:
        args: --test

Meltano doesn't know that it also needs to pass other options, like --config, so it fails if config is required.
I've created an issue to address this: https://github.com/meltano/meltano/issues/8112.
Also, this command can't be used in a pipeline as is because it outputs its test summary information to stdout.

Note
The above changes to Core are not required if one simply uses meltano invoke tap-stackexchange --test.

Note
Even with those changes to Core, the tap would still only emit one record for each stream. To allow the user to increase the limit would require changes to the SDK, either at the CLI level (something like tap-stackexchange --test=100) or at the config level (like https://github.com/meltano/sdk/issues/1366). The latter is slightly easier because the --test option is a bit weird already accepting a schema option, --test=schema.


Upgrade to Tailwind CSS 3.0.2 and remove dev environment complexities (resolves #7)

As explained in #7, this change is to make use of the improvements to the JIT engine in Tailwind 3.0+. The development script is now as simple as running yarn dev and should be cross-env compatible without additional workarounds.

@kriswuollett this might be of interest, as it simplifies your merge #4 and adds cross-environment support.


11.6.0 should've been a major release

Hi 👋!
First, amazing tool 🤘! I use it on all my projects 😄!
Now, I was updating the dependencies of one of my projects that still uses Node 10 and when I updated from 11.5.0 to 11.6.0, I got an error saying the engine was incompatible.
I know Node 10 will reach end-of-life in 3 weeks, and makes sense you drop it now (I was actually considering the same thing on the project I was updating), but the issue is that doing it, is a breaking change, and if someone (like me) installs leasot using ^, and stills supports Node 10, will get the same error. A minor release should always be backwards compatible.
You can close the issue, I just wanted to let you know.

You're absolutely right @homer0  - should have been a major release 😊 Thanks for reporting this, but I'd prefer not to go deprecating versions as I'm afraid it'll create more harm than good.
I'll bump leasot majorly as well just in case


I'm getting errors on the SBT builds on the latest version 5.1.4

$ sbt -Dsbt.log.noformat=true --error assembly             (master✱)
[error] /Users/sebastianestevez/Desktop/SparkBuildExamples/scala/sbt/dse/src/main/scala/com/datastax/spark/example/WriteRead.scala:4: object CassandraConnector is not a member of package com.datastax.spark.connector.cql
[error] import com.datastax.spark.connector.cql.CassandraConnector
[error]        ^
[error] /Users/sebastianestevez/Desktop/SparkBuildExamples/scala/sbt/dse/src/main/scala/com/datastax/spark/example/WriteRead.scala:5: object apache is not a member of package org
[error] import org.apache.spark.sql.{SaveMode, SparkSession}
[error]            ^
[error] /Users/sebastianestevez/Desktop/SparkBuildExamples/scala/sbt/dse/src/main/scala/com/datastax/spark/example/WriteRead.scala:6: object apache is not a member of package org
[error] import org.apache.spark.sql.cassandra._
[error]            ^
[error] /Users/sebastianestevez/Desktop/SparkBuildExamples/scala/sbt/dse/src/main/scala/com/datastax/spark/example/WriteRead.scala:12: not found: value SparkSession
[error]   val spark = SparkSession.builder
[error]               ^
[error] /Users/sebastianestevez/Desktop/SparkBuildExamples/scala/sbt/dse/src/main/scala/com/datastax/spark/example/WriteRead.scala:20: not found: value CassandraConnector
[error]   CassandraConnector(spark.sparkContext).withSessionDo { session =>
[error]   ^
[error] 5 errors found
[error] (compile:compileIncremental) Compilation failed
[error] Total time: 2 s, completed Nov 27, 2017 5:30:11 PM

Clean 5.1.4 tag works for me. What sbt do you use? Min version is 0.13.13 https://github.com/datastax/SparkBuildExamples#dse

I'm going to close this one as not reproducible, but if you are still having trouble please reopen.

Hm interestingly I'm still getting this error on latest
$ sbt sbtVersion                                                                                (master✱)
[info] Loading settings from assembly.sbt ...
[info] Loading project definition from /Users/sebastianestevez/Desktop/SparkBuildExamples/scala/sbt/dse/project
[info] Loading settings from build.sbt ...
[info] Set current project to writeRead (in build file:/Users/sebastianestevez/Desktop/SparkBuildExamples/scala/sbt/dse/)
[info] 1.1.1

Hello @phact,
it works for me (sbt 1.1.1)
SparkBuildExamples/scala/sbt/dse:[(HEAD detached at 5.1.4)]$ sbt assembly
...
[success] Total time: 45 s, completed Mar 28, 2018 9:20:21 AM

Could you please see if this snippet from readme.md is helpfull?

Please note that DSE projects templates are meant to be built with sbt 0.13.13 or newer. In case of unresolved dependencies errors, please update sbt and than clean ivy cache (with rm ~/.ivy2/cache/com.datastax.dse/dse-spark-dependencies/ command)


MidUI Release Alpha-0.0.1

MidUI Release Alpha-0.0.1

Thanks for making this possible @fero1xd @dexfadee


Suggestion about online chat for developers

I am using the computer at company most time whereas we're not allowed to use the QQ Group.
So,would you please consider the possibility to use gitter?
Gitter is a chat and networking platform that helps to manage, grow and connect communities through messaging, content and discovery.
Lots of opensource project use this platform,such as Hearthstone-Deck-Tracker,Live-Charts. You can find the chat room on their readme page.

Good suggestion!
I have created a room on Getter, this is its link Accelerider

I have create a pull request which add the chat room in ReadMe file.
You can check it.


md-radio-group "No value accessor for x"

I'm trying to use md-radio-group, like this
<form [ngFormModel]="form">
  <md-radio-group
    [ngModel]="data.foo"
    ngControl="foo">
    <md-radio-button *ngFor="#option of radioButtonOptions" [value]="option.value">
      {{ option.label }}
    </md-radio-button>
  </md-radio-group>
</form>

along with
class WhateverCmp {
  public data = { foo: null };

  public radioButtonOptions = [
    {
      label: 'Bar',
      value: 'bar'
    },
    {
      label: 'Baz',
      value: 'baz'
    }
  ];

  constructor(private _fb: FormBuilder) {
    this.form = _fb.group({
      foo: [ '', Validators.required ]
    });
  }

}

and I'm getting ORIGINAL EXCEPTION: No value accessor for 'foo'
using alpha.3 and angular b.16

@fxck this is working for me when tested against the latest code in master.  Closing for now - please let me know if this is not resolved and I will reopen.

I am experience this issue as well.
Using:
@angular/core: "2.0.0-rc.1"
@angular2-material/core: "^2.0.0-alpha.4"
@angular2-material/radio: "^2.0.0-alpha.4"
http://plnkr.co/edit/sMHZESGaE4qjHCshmnzO?p=preview

@robertmesserle well it's not working on whatever is released on npm, http://plnkr.co/edit/uM0WoalscT5Cx4XFev5V?p=preview

You have to include MdRadioGroup in the directives


Error during font loading: The CMap "baseUrl" parameter must be specified, ensure that the "cMapUrl" and "cMapPacked" API parameters are provided.

Error during font loading: The CMap "baseUrl" parameter must be specified, ensure that the "cMapUrl" and "cMapPacked" API parameters are provided.

// pdfSource: '../src/2.pdf',
pdfSource: {
url: '../src/2.pdf',
cMapUrl<EMAIL_ADDRESS>cMapPacked: true,
},

Thanks @zhangxiang0316! It seems to be the answer 👍


Not Sending the request under the cursor

### first request
GET http://localhost:5000/symbol-search?industry=食品工業&query_str=12&current_page=1
accept: application/json

### second request
GET http://localhost:5000/symbol-search?query_str=0050
accept: application/json

If i am putting my cursor under the second request and execute it , the response is always the first request
The following is my configuration:
return {
  "mistweaverco/kulala.nvim",
  config = function()
    -- Setup is required, even if you don't pass any options
    require("kulala").setup({
      -- default_view, body or headers
      default_view = "body",
      -- dev, test, prod, can be anything
      -- see: https://learn.microsoft.com/en-us/aspnet/core/test/http-files?view=aspnetcore-8.0#environment-files
      default_env = "dev",
      -- enable/disable debug mode
      debug = false,
      -- default formatters for different content types
      formatters = {
        json = { "jq", "." },
        xml = { "xmllint", "--format", "-" },
        html = { "xmllint", "--format", "--html", "-" },
      },
      -- default icons
      icons = {
        inlay = {
          loading = "⏳",
          done = "✅ ",
        },
        lualine = "🐼",
      },
      -- additional cURL options
      -- e.g. { "--insecure", "-A", "Mozilla/5.0" }
      additional_curl_options = {},
    })
    vim.keymap.set("n", "<leader>kr", ":lua require('kulala').run()<CR>", { noremap = true, silent = true })
  end,
}

The simplest fix would be this:
GET http://localhost:5000/symbol-search?industry=食品工業&query_str=12&current_page=1
accept: application/json

###

GET http://localhost:5000/symbol-search?query_str=0050
accept: application/json

The ### are used as delimiters between requests.
We don't support named request atm (see #66), but once we do, we will only support this syntax:
GET http://localhost:5000/symbol-search?industry=食品工業&query_str=12&current_page=1
accept: application/json
# @name first_request

###

GET http://localhost:5000/symbol-search?query_str=0050
accept: application/json
# @name second_request


Ensure Posix Path locator doesn't return relative binary paths

Closes https://github.com/microsoft/vscode-python/issues/15312 https://github.com/microsoft/vscode-python/issues/15302
@kimadeline Can you please verify on Mac if it solves https://github.com/microsoft/vscode-python/issues/15302 and https://github.com/microsoft/vscode-python/issues/15312?

Great, thanks! That's good enough. I'll ask the user to check.


Separate Contract tab into: Compile and Run

https://github.com/ethereum/browser-solidity/pull/604


Replace attr_accessors by inerhiting ReadonlyModel

We have a number of classes, such as DocumentType and Topic, that
act as interfaces to static (readonly) data. Previously, some of these
classes used attr_accessors so they could include ActiveModel::Model,
which helps to DRY-up the way their instances are constructed.
This replaces the use of attr_accessor with attr_reader by changing each
model to extend a slightly modified version of ActiveModel::Model that
also makes the update_attributes and attributes= methods private.

I think you're right - I rationalised it myself, but it's probably not for everyone. There are two things I'd like to like to achieve: a DRY constructor and some kind of minimal model convention. But perhaps the only real convention here is that we have a DRY constructor. Perhaps something like...
module InitializeWithHash
  def initialize(hash = {})
    hash.each do |key, value|
      instance_variable_set(:"@#{key}", value)
    end
  end
end

I'd really like to avoid doing "@a = a, @b = b, @c = c, etc.' if we can.

I'd really like to avoid doing "@A = a, @b = b, @c = c, etc.' if we can.

Yeah that can be annoyingly verbose in Ruby - I remember being surprised that Ruby didn't do something like Scala where their set directly from the constructor e.g.
class Point(val x: Double = 0, val y: Double = 0)

val point1 = new Point(y = 1)

Which would make a load of the short examples here so much simpler 😞
People have tried to do similar things to Ruby e.g. https://github.com/mbj/anima but I think that'd be rather overkill for us to consider.

There are two things I'd like to like to achieve: a DRY constructor

Sure, I could see why that'd benefit some of the short classes e.g: https://github.com/alphagov/content-publisher/blob/4b373fdf28f952aa14c0a39b552b9997f2727a65/app/services/document_type.rb#L42-L44
Some of them that have no methods could just be frozen OpenStructs too.
I think your suggestion of InitializeWithHash seems good for those sort of examples, that can keep them super concise. I don't think it should be used everywhere though just when it's a simple case that can reduce verbosity.

and some kind of minimal model convention

I don't think you necessarily have to strive for that - and if you have a nice simple module that is mixed in for the constructor then I don't think that needs to be coupled to the concept of a model. You do risk potentially indirection - where I've found the change to document type to now be confusing to fit the ReadOnlyModel: https://github.com/alphagov/content-publisher/pull/603/files#diff-0bf513ab215322410adda90965b8591c

Superseded by https://github.com/alphagov/content-publisher/pull/622.


Joust: Searching screen text is inaccurate

The Joust "Searching" screen needs better text. Since we don't actually have to touch the swadges together anymore to pair.

Changed the text to "Stand near your opponent now!"


After sending message messagebar does not get clear.

After sending message messagebar does not get clear . How Can I fix it?
https://framework7.io/vue/messages.html#messages-events. In This example Messagebar does not get clear after sending text.

You need to correctly bind messagebar value to the component state https://github.com/framework7io/framework7/blob/3d671d41c88a4cab0dc6f8729e39e601f5ce6599/kitchen-sink/vue/src/pages/messages.vue


feat(appendToBody): new parameter

Summary
See #135
New parameter: appendToBody.
Allows to not wrap the input in .algolia-autocomplete.
Automatically repositions itself on resize.
Limitation: requires hint: false. Indeed, we're not wrapping the input anymore, so we can't have it behind the input.
Result
Without much surprise, it looks the same way:

However, on the playground, it ends up "breaking" the example in playground.html.
But this is actually expected based on the bootstrap layout we're using, it's supposed to fail.

  <input class="form-control" />
  <input class="form-control" />
  Go

Coverage decreased (-2.0%) to 86.881% when pulling 9c2f2fb8afa48ae6448aa3aa71fa9efcc5add796 on feat/append-to-body into be1dc194d5d9c3d9bd73590ce547ab18f25989cf on master.

What do you think of implementing the suggestion of @vvo ?
https://github.com/algolia/autocomplete.js/issues/135#issuecomment-269003450
I suppose it could make sense to be able to attach it at given location, for styling purposes for example.
Awesome you started implementing this!

appendTo done, what are your thoughts @vvo @rayrutjes ?

I'm a bit unsure on how to test this parameter. In the end, we'd like to rerun basically the whole test suite (hint tests excluded) with appendTo I guess ?

Coverage decreased (-1.06%) to 87.776% when pulling 3261ab8867203478cd58c7afaf0e7b8a37fa7581 on feat/append-to-body into be1dc194d5d9c3d9bd73590ce547ab18f25989cf on master.

Coverage decreased (-1.06%) to 87.776% when pulling 5cfa5c8f7eca82ed18a78a0dc38b939e24fb9af1 on feat/append-to-body into be1dc194d5d9c3d9bd73590ce547ab18f25989cf on master.

Coverage decreased (-1.06%) to 87.776% when pulling 1c85c2c3e3202324024fa26aad2595bc24c57e62 on feat/append-to-body into be1dc194d5d9c3d9bd73590ce547ab18f25989cf on master.

Let me know if you need any help @Jerskouille 👍

Coverage decreased (-1.1%) to 87.689% when pulling 37b203a4baef88abd13578a67b028c77af3a080c on feat/append-to-body into be1dc194d5d9c3d9bd73590ce547ab18f25989cf on master.

Coverage decreased (-1.1%) to 87.689% when pulling 6e92b40811028851a3fc246bbd1c6a5ecdd80227 on feat/append-to-body into be1dc194d5d9c3d9bd73590ce547ab18f25989cf on master.

Rebased and squashed, ready for merge.
Wrap-up:

appendTo: Takes a selector, and will append to the first item matching the selector
Runs the whole integration test suite once as before and once with appendTo
Added an integration test to check the dropdown position (with a +/-2px tolerance for Safari (don't ask me why))
The integration tests being, to me, enough, I've just added a single unit test to check that we throw when appendTo is used with hint.

Coverage decreased (-1.1%) to 87.689% when pulling e40cbd016bbf472e83ceefa2239f7f51cc4b6592 on feat/append-to-body into be1dc194d5d9c3d9bd73590ce547ab18f25989cf on master.

cc @vvo @rayrutjes @redox

Can you add the README documentation on this new feature? With an explanation on:

when to/why use it
effects and limitations (hint)

@Jerskouille Do you have any idea on how dropdownMenuContainer and appendTo are different now? Is the difference only about not wrapping the input completely? They seems very similar and yet I would not be able to tell which one does what right now. If you can help clearing this that would be nice.

Do you have any idea on how dropdownMenuContainer and appendTo are different now? Is the difference only about not wrapping the input completely? They seems very similar and yet I would not be able to tell which one does what right now. If you can help clearing this that would be nice.

I've never used dropdownMenuContainer and am not sure why it was created in the first place.
On my side, the issues I had were not so much about the dropdown than the wrapping span.algolia-autocomplete.
To clear things up, to my understanding:

dropdownMenuContainer:

Removes the menu from the wrapping element and appends it somewhere else
also ensures the containing  element is position: relative
sets the menu to top: 0

appendTo:

Never wraps the input
Takes .algolia-autocomplete and its content, and puts it elsewhere
The hint is disabled right now, because we're not wrapping anymore. We might be able to handle it, but z-index and positioning issues would arise in that case, and I wasn't up to it
Takes the full width of the associated input
Repositions on every keystroke under the input (which triggers a redrawn event in case you want to adjust it)

Thanks a lot for clarification, should both option be doable at the same time? If not then we should throw also no?

Thanks a lot for clarification, should both option be doable at the same time? If not then we should throw also no?

Good question, I hadn't thought about that. I think it will work, it just doesn't make much sense, because if you extract the wrapper AND the menu, re-extracting the menu from the wrapper would be weird. Do you want me to confirm?

Do you want me to confirm?

I think we are good, I do not expect that to be done by the user I guess,

Coverage decreased (-0.1%) to 88.734% when pulling b9e0afd17080561977a1daee418df65af19cdf7e on feat/append-to-body into be1dc194d5d9c3d9bd73590ce547ab18f25989cf on master.

The last changes should answer all the questions / worries you had. (README also updated)

Good for me 👍

Let's merge and release early next week so we can follow the release.

Thanks. A LOT! This ships today


Add python as dependency for lsvmbus

Running lsvmbus fails if python is not installed or python command doesn't exist

thanks @somil55 , seems we work on the same issue https://github.com/microsoft/lisa/pull/2111/commits/726f5f074b705248ea1db8146536d707d842d300

@LiliDeng I think we can abandon this PR. Can you please move the dependency part to your VM?

@LiliDeng I think we can abandon this PR. Can you please move the dependency part to your VM?

thank you, I will test it when take python as dependency, actually, when I debug it, it didn't enter into dependency logic at all.

thanks, fix contained in PR https://github.com/microsoft/lisa/pull/2111 and merged, so close this one.


Fix #33: Do init when enter to the deleted vaffle buffer

When enter to deleted vaffle buffer, b:vaffle doesn't exist so needs do init.

Merged and added a test case for the issue. Thank you!


New batch of CV term requests, category: Identified signal

Name:
Explained precursor intensity
Definition:
"Fraction of identified MS2 in the first quarter of precursor intensity."
Comment: Higher fractions of identified MS2 spectra indicate the efficiency of detection and sampling
Proposed value type:

[ ] single value

Synonym: MS2-4A

Name:
Extent of identified precursor intensity
Definition:
"Ratio of 95th over 5th percentile of precursor intensity for identified peptides",
Comment: Can be used to approximate the dynamic range of signal
Proposed value type:

[ ] single value
{STATO:0000300}

Synonym: MS1-3A

Name:
Precursor intensity of identified MS2 Q1, Q2, Q3
Definition:
"From the distribution of precursor intensity of identified MS2, the quartiles Q1, Q2, Q3",
Comment: The (un)identified precursor intensity distribution can aid the interpretation of overall identification success.
Proposed value type:

[ ] n-tuple
{STATO:0000167, STATO:0000574, STATO:0000170}

Name:
Precursor intensity of unidentified MS2 Q1, Q2, Q3
Definition:
"From the distribution of precursor intensity of unidentified MS2, the quartiles Q1, Q2, Q3",
Comment: The (un)identified precursor intensity distribution can aid the interpretation of overall identification success.
Proposed value type:

[ ] n-tuple
{STATO:0000167, STATO:0000574, STATO:0000170}

Name:
Median S/N for MS1 spectra in RT range in which half of the peptides are identified
Definition:
"Median S/N for MS1 spectra in RT range in which half of the peptides are identified",
Comment: Higher MS1 S/N may correlate with higher signal discrimination
Proposed value type:

[ ] single value
{STATO:0000300}

Synonym: MS1-2A

Name:
Median of TIC values in the RT range in which half of the peptides are identified
Definition:
"Median of TIC values in the RT range in which half of the peptides are identified"
Comment: Estimates the total absolute signal for peptides (may vary significantly between instruments)
Proposed value type:

[ ] single value

Synonym: MS1-4A

Name:
Explained base peak intensity median
Definition:
"Median of the ratio of 'max survey scan intensity' over 'sampled precursor intensity' for all peptides identified"
Comment: Gives insight into the amount of overall explained signal and whether the amount of signal could be increased by a better sampling strategy.
Proposed value type:

[ ] single value
{STATO:0000574}

Name:
Explained base peak intensity median from least intense 50% base peaks
Definition:
"Ratios of 'max survey scan intensity' over sampled precursor intensity for the bottom half (by MS1 max) of MS2",
Comment: Gives insight into the amount of explained signal and whether the sampling strategy is interfering with the sampling of low abundant peaks.
Proposed value type:

[ ] single value

Does the Q1 in "Explained precursor intensity" mean the first quartile?
Could you please add comments (i.e. descriptions on how to interpret the values) for the metrics? And do this also for the other issues you added ;)

@mwalzer please add comments (explanations for interpretation)

@julianu added comments and unit suggestions (and some synoyms as they match previously proposed metrics from older publications)


Content jumps horizontally whenever browser adds a scrollbar

Page content  'jumps' a little on Safari/Chrome/IE when navigating between short and long pages:
https://alshedivat.github.io/al-folio/blog/ vs https://alshedivat.github.io/al-folio/projects/

What do you mean by "jumps when navigating?" When I switch between the two pages (in Chrome), the behavior seems normal, nothing jumps anywhere.

No idea how to fix this.

Pull request #48 created to resolve this.