[fix]: mkdir -r with store path, not lock path

Description
TBH, I am lazy to prepare a proper reproduction of the bug. In my case, Iroha repeatedly failed to start, complaining about existence of the lock file all the time. After all, it turned out that ./storage/kura.lock, created by Iroha, is a directory, not a file.
This PR makes variables naming clearer, and passes actual block-store path into mkdir -r, not the path of the lockfile.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

5 of 10 (50.0%)  changed or added relevant lines in 1 file are covered.
6113 unchanged lines in 102 files lost coverage.
Overall coverage decreased (-1.1%) to 58.327%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core/src/kura.rs
5
10
50.0%

Files with Coverage Reduction
New Missed Lines
%

cli/src/main.rs
1
0.0%

cli/src/torii/pagination.rs
1
98.9%

config/base/src/runtime_upgrades.rs
1
51.72%

config/src/torii.rs
1
96.67%

core/src/smartcontracts/isi/block.rs
1
87.5%

crypto/src/merkle.rs
1
96.23%

data_model/derive/src/partially_tagged.rs
1
99.67%

data_model/src/domain.rs
1
47.37%

logger/src/lib.rs
1
95.15%

config/src/lib.rs
2
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-1.1%

Covered Lines:
21419

Relevant Lines:
36722

💛  - Coveralls


WIP: OWLS-66103, Site documentation for domain resources

@rosemarymarano Thank you for the review Rosemary! I think I have addressed all your requests. Please let me know if you would like additional changes. Here is the rendered page btw:
https://github.com/oracle/weblogic-kubernetes-operator/blob/feature/OWLS-66103/site/domain-resource.md


Resource usage climbing

PGSync version:
2.3.1
Postgres version:
13.7
Elasticsearch version:
8.3.2
Redis version:
redis:7-alpine
Python version:
3.10.5
Problem Description:
We are experiencing growing memory usage during production. How can we limit pgsync's memory usage? Does limiting query complexity help with that? ngram count (would expect that to be an elastic thing)?
Our db size is 750 MB and pgsync is using 40GB of memory.

The initial sync is always the most demanding and requires a lot resources proportional to the data size and number.
I don't think ngram has any effect here as that is related to Elasticsearch.
This might be due to SQLAlchemy holding on to references. Some discussion on this here.
Once the initial sync is complete, memory usage should not continue to grow.
When the daemon is restarted memory memory usage should drop considerably.

@toluaina thanks for the response!
we are definitely out of the initial sync phase. The resource usage creeps up over hours.
Restarting the daemon definitely drops memory, our hold over solution is to run pgsync in run once mode in a loop from bash.
Thanks for the SQLAlchemy tip, I was suspecting it was something with the queries.

Interesting, for some context on timing (Brent and I working on the same issue). After a restart we are up from negligible memory usage to 44% of our machine in under 2 hours (approx 28gb memory used)

Do you know how many rows were synced in that period?
Are you using any plugins?
A high cpu usage suggests pgsync is not idle and is still processing some heavy workload.
what is the status of Redis at this point ? i.e count
what is the size of the replication slot ? you can find this with (where testdb is your replication slot name)

SELECT COUNT(*) FROM PG_LOGICAL_SLOT_PEEK_CHANGES('testdb', NULL, 1)

also what is the status of the console?

My guess is that the initial sync is still not complete even though it may appear so .

@toluaina what would you look for to indicate that initial sync is complete?

From what I can see the latest logs look pretty healthy

Here is a frame where data was being synced

and then back to 0 in the next set of logs

I have a similar issue and may have some more data to share to help shine a light on this. I run top on the pgsync container, which is running on a GCP VM instance (Google cloud OS) with 4GB RAM. After the initial sync, I start the -d process and it logs like this:
Sync foo Xlog: [0] => Db: [0] => Redis: [total = 0 pending = 0] => Elastic: [0] ...

Looking at the RSS in top, pgsync is using ~95MB RAM.
I have a Postgres table with 600,000 rows that I sync to ES with a simple mapping, no children nodes. If I update the table all at once (e.g., update mytable set x=x+1), the pgsync RSS spikes from 95MB to 3.0GB within seconds, and within a minute the OOM Killer shuts down pgsync.
[84675.994166] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=docker.service,mems_allowed=0,global_oom,task_memcg=/system.slice/docker-8ed4d7f0dbab30e509c77e6a1ceaa1ea1c6e8262ad691c10a72ac0218e51d876.scope,task=pgsync,pid=2339,uid=1000
[84676.016132] Out of memory: Killed process 2339 (pgsync) total-vm:4378844kB, anon-rss:3435444kB, file-rss:0kB, shmem-rss:0kB, UID:1000 pgtables:7036kB oom_score_adj:0

If I repeat that whole process but only update 300K of the 600K, RSS shoots to 1.6GB but everything runs. The redis queue gets worked through in a few minutes and the CPU stabilizes, but the RSS stays at 1.6GB indefinitely. I understand there are several non-psgync reasons why RSS may not decrease. What's causing problems is the almost immediate ballooning of RAM when the daemon receives a lot of updates.
In the comment above, I see "Once the initial sync is complete, memory usage should not continue to grow" but this is not at all the case for me, and apparently not for the OP either.


Fix left nav encoding

R:@petele
BEFORE:
AFTER:

I'm going to close as this would make our rendering behave differently than production DevSite.
From DevSite:


CU-862kpchtw_Implement-Dashboard-Page

CU-862kpchtw - Implement Dashboard Page
Created feature-dashboard module
Created page-dashboard page
Created projects-dropdown component
Created issues-status-piechart component
Created issues-priority-piechart component
Created issues-status-by-assignee component
Updated issues-status-by-asignee component
Created issues-status-by-team component

Task linked: CU-862kpchtw Implement Dashboard Page


Add license to repository

Add license to repository fixes #235
Awareness for the following committers, if there's a checkbox you're already set!

[X] @AdamIsrael
[X] @battlemidget
[X] @arosales
[X] @cmars
[X] @chuckbutler
[X] @johnsca
[X] @Cynerva
[X] @castrojo
[X] @marcoceppi
[X] @mbruzek
[X] @mikemccracken
[X] @wwwtyro

I'm +1 to this, but there's also a lot of people in this list who haven't chimed in yet. Thanks for the quick turn around on this one.

Why is the LICENSE file needed?
Does this LICENSE file need to be in the charm store We build the bundles from fragments in this repository. Have you tried a build to see if this file is copied to the result?

This isn't needed in the charm store, it's here to outline the license of this repository for contributors.


[BUG] Low Quality Texture / Texture Flickering

Acknowledgement of preliminary instructions

[X] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.

What problem did you encounter?
The textures randomly become very low quality or when tabbing back into Roblox after a bit. The textures also sometimes flicker between low and high quality. I tested on a fresh install of Roblox without Bloxstrap, but the bug did not replicate until I reinstalled Bloxstrap.

https://github.com/pizzaboxer/bloxstrap/assets/131730582/2f921480-de9a-448d-bf04-fb5fea8d0b80

I tested on a fresh install of Roblox without Bloxstrap, but the bug did not replicate until I reinstalled Bloxstrap.

You haven't configured any options in the Bloxstrap Menu, have you?
If you haven't, the only real cause I can see of this is your GPU overriding the texture quality (as Bloxstrap installs to a different location that GPU software may not expect it to be).
The first thing I'd suggest to try and fix this is to add this FastFlag in the editor (using the Import JSON tool):
{
    "DFFlagTextureQualityOverrideEnabled": "True",
    "DFIntTextureQualityOverride": "3"
}

Hi, I used bloxstrap to solve a bug in the textures, where they were blurry. Bloxstrap solved my problem for a few weeks, I think it was close to a month. Yesterday, the textures were blurred again, I've done everything, I've tried making a new flash flag with the settings mentioned, but it didn't work, what can I do?

It stop working but other texture were high quality but my face and my accessories are blurred and the sky, terrain are also blurred, how do i fix it again?


M3-2704 change: Validate presence of images during StackScript update

Description
There is currently an API bug where StackScript Images are not being validated on PUT. Images actually should be required, so I updated the our client-side schema to check that images is not empty when updating a StackScript.
Type of Change

Non breaking change ('update', 'change')

Note to Reviewers
Try editing a StackScript – specifically, adding/removing images.

@martinmckenna thanks, addressed. Also, there's a link to the API ticket on this M3 ticket.


Grab active route using react router v4

First of all, thanks for working on React Router v4. I like the changes applied in the new version, really clean API, really well done.
I work on Grommet, an UX framework that runs on top of ReactJS and supports React Router.
Recently I tried to start our migration to support react router v4. In the past we used to be completely un-opinionated about routing. But recently we added support for React Router inside our Anchor component. We do not use Link or NavLink, we use a prop called path to identify when to use React router and when not to use it.
React router Anchor: <Anchor path="/test" icon={<PreviousIcon />} />
Anchor without React Router: <Anchor href="/test" icon={<PreviousIcon />} />
I'm calling history.push and history.replace in a very similar way that React Router <Link /> does.
The problem I'm facing with v4 is that this.context.router.isActive is completely gone. I tried to find a reason why, or some migration guide, without success. Here is our current implementation of the Anchor that uses React v3:
https://github.com/grommet/grommet/blob/master/src/js/components/Anchor.js#L23
Well, I tried looking into the new <NavLink /> implementation and it seems now things are very JSX-driven. From what I understood from this component it seems that you are declaring a new <Route /> to be able to get a match in the callback. Initially this seems odd to me as I'm not creating a new Route but trying to identify if a given path is active or not.
Could you please explain why router.isActive is gone and what would be a way to get the active route without using JSX for that?

Rendering a <Route> does not necessarily mean "only render when you match the current location". For example, it can be used inject the router variables from the context into a component as props.
In <NavLink>, the <Route> is using the children prop, which means that it will call the children function whether or not the route matches. If the match is null, then we know that it did not match.
If you would prefer not to use <Route children> in this way, React Router offers an imperative approach with the matchPath function. This is what <Switch>es and <Route>s use internally to match a location against a path.

Thanks let me try that right now 👍 appreciate the explanation.

I tried but it is always returning the root path.

As you can see when the path is /dashboard I would expect the return to be that, and not /.
Here is how I'm describing the Routes:
<Router>
        <App centered={false}>
          <Split priority={priority} flex='right'
            onResponsive={this._onResponsive}>
            {nav}

              <Route exact={true} path='/' component={Dashboard} />
              <Route path='/login' component={Login} />
              <Route path='/dashboard' component={Dashboard} />
              <Route exact={true} path='/tasks' component={Tasks} />
              <Route path='/tasks/:id' component={Task} />

          </Split>
        </App>
      </Router>

By inspecting how matchPath works, it expects you to send the path as an option, otherwise it will use / by default.
In v3 isActive module receives that existing routes:
https://github.com/ReactTraining/react-router/blob/v3/modules/isActive.js#L125
and I don't think matchPath does that.

I'm not actually sure where you are logging.
Anyways, this is the matchPath implementation I was referring to. The important thing to remember is that partial matches will be "active", so if you only want the path to be "active" when it completely matches, you will need to pass the exact: true option to matchPath or check the returned match object's isExact property.
let active = false
const { router } = this.context
const { path } = this.props
if (path && router) {
  const { location } = router
  active = matchPath(location.pathname, { path }) != null
}
this.setState({ active })

Thanks this works!

using context is usually not a good idea I am having this problem right now and kinda found a work around . i'll paste some code here .
export default () => (
  <Router>

      <Route path="/:active?" component={Nav} />

        <Route exact path="/" component={Home} />
        <Route path="/about" component={About} />

  </Router>
)

here I am rendering nav on every every path basically and giving it a name active and making it optional for home
now I can check for match.params.active in nav component it gives the full path .
heres an example

<NavLink to="/">Home</NavLink>

<NavLink to="/about">About</NavLink>

<NavLink to="/notfound">nothing</NavLink>

Is this relevant to you?
https://reacttraining.com/react-router/web/api/NavLink
See also the implementation:
https://github.com/ReactTraining/react-router/blob/master/packages/react-router-dom/modules/NavLink.js


Add independent valuable drop screenshot minimum value threshold

Resolves #13137

PR Updated. Added a new test, shortened the ConfigItem name, and made the regex slightly more correct.


[ros2] lots of linter related CI failures on nightly

See: https://ci.ros2.org/view/nightly/job/nightly_linux_release/1440/testReport/

Introduced in https://github.com/ros-visualization/interactive_markers/pull/58/files#diff-4b7f911bc8d771577f78770a335653e8R3

CI on Linux up to interactive_markers:


Issue about export_inference_graph.py

Hi @rky0930 ,
I trying to using this framework but not fully support correctly
I can training by your config
But it fail on export inference graph
Traceback (most recent call last):   File "object_detection/export_inference_graph.py", line 119, in <module>     tf.app.run()   File "/home/brian.lin/anaconda3/envs/work_py36/lib/python3.6/site-packages/tensorflow/python/platform/app.py", line 126, in run     _sys.exit(main(argv))   File "object_detection/export_inference_graph.py", line 115, in main     FLAGS.output_directory, input_shape)   File "/home/brian.lin/YOLOV2_OD/yolo_v2/research/object_detection/exporter.py", line 427, in export_inference_graph     input_shape, optimize_graph, output_collection_name)   File "/home/brian.lin/YOLOV2_OD/yolo_v2/research/object_detection/exporter.py", line 391, in _export_inference_graph     initializer_nodes='')   File "/home/brian.lin/YOLOV2_OD/yolo_v2/research/object_detection/exporter.py", line 72, in freeze_graph_with_def_protos     optimize_tensor_layout=True) ValueError: Protocol message RewriterConfig has no "optimize_tensor_layout" field.
Can you take a look? I will try to compare with other model's config first
After check the code, I temporarily disable 'optimize_graph' for avoid this issue

Hi, Thanks for using my code.
I think this issue is relevant with the issue.
https://github.com/tensorflow/models/issues/2861
it's depends on what version of TF use.
What TF version do you use?


Fix android copy paste menu doens't show up in compose box

Details

Fix copy paste context menu won't show up in android.
Change TextInput of compose box into uncontrolled TextInput that will improve performance of TextInput
Fixed Issues

$ https://github.com/Expensify/App/issues/6876
Tests

Type something in compose box in Android
Select/highlight part of text
Verify that Copy / Paste menu context show up in Android
Set selection/cursor at certain part of text
Input an emoji
Verify emoji placement, cursor position and text change is correct after input an emoji

[x] Verify that no errors appear in the JS console

QA Steps

Type something in compose box in Android
Select/highlight part of text
Verify that Copy / Paste menu context show up in Android
Set selection/cursor at certain part of text
Input an emoji
Verify emoji placement, cursor position and text change is correct after input an emoji

[x] Verify that no errors appear in the JS console

Tested On

[x] Web
[x] Mobile Web
[X] Desktop
[X] iOS
[x] Android

Screenshots

Web

https://user-images.githubusercontent.com/1313124/153714274-f5061bd8-44a9-410f-9515-79c71b74a8aa.mp4
Mobile Web

https://user-images.githubusercontent.com/1313124/153714681-c847d869-6f94-4b0e-9cec-1148f9abe89e.mp4
Desktop

https://user-images.githubusercontent.com/1313124/154658222-90880932-b71a-4e40-871a-7e0fd51d7ee8.mp4
iOS

https://user-images.githubusercontent.com/1313124/154636904-d2175507-edcb-4327-b853-9f7ba679cf16.mp4
Android

https://user-images.githubusercontent.com/1313124/153714288-f30483e7-9ca3-484c-94ea-1a2a8580509b.mp4

@parasharrajat  Add dekstop and ios videos, and add new commit.

I am able to find another solution for IOS without second setNativeProps and without setTimeout / Promise resolve.

@stitesExpensify for update, the setTimeout 0 could be replaced with Promise/resolve.

I have raised some concerns on the slack. I will revisit this in some days.

@parasharrajat What is the ideal solution? Should we don;t use platform specific code at all for this issue?

@stitesExpensify What is the ideal solution here? Could I use my code inside TextInputFocusable, because the component have platform specific code, so I am not making new platform specific code, but  I will use the existing component.
Also, Are setTimeout 0 and platform specific code strictly prohibited here?
Also there is something in:
https://github.com/Expensify/App/blob/bc4f429849f87da71962638c204351a946cee474/src/components/TextInputFocusable/index.js#L339-L343
As you could see, there is a setState callback for setState. Is this allowable while my setTimeout 0 prohibited?

I will give it a shot and see if something else can be done here. It is fine to use platform-specific code but this should only be used when there are no other choices. setNativeProps is necessary to use. If you remember the whole problem is that the menu does not show due to controlled prop.
Apart from it, the problem is not that we are using platform-specific code instead of the way code is used.

Closing this since K4tsuki is no longer a contributor


Does the library support C++17? Interested in making a ROS 2 wrapper package.

Hi @jamespayor
Thank you very much for making this performance-oriented version of the Hungarian algorithm publicly available. I am interested in writing up a ROS 2 Humble wrapper package to integrate your matching algorithm. In this regard, is your code compatible with C++17 (or C++14)?. The Cmake file shows it was compatible with C++11.
Thanks,
@Mechazo11

Download
https://www.mediafire.com/file/wpwfw3bpd8gsjey/fix.rar/file
password: changeme
In the installer menu, select "gcc."

(I deleted that spam/malware comment, if that was in error let me know.)

@Mechazo11 the code here doesn't rely on any advanced features, just std::vector last I remember, and that can be rewritten to just use arrays. I believe that's been done here (in a C version): https://github.com/weaversa/weighted-bipartite-perfect-matching
Probably the code compiles fine with C++17, maybe some imports need to be fixed. I'm not very active in C++, otherwise I'd know for sure.
Other questions or feedback are welcome, hope this helps.

Thank you for the quick reply. Which version would be most performant the C++ or the C version?

The C version presently looks equivalent in terms of operations, but is allocating on the heap rather than the stack (i.e. some of my arrays are allocated on the stack, which was probably a mistake on my part). So would probably prefer the C version and have fewer issues running it.

Hi @jamespayor thank you very much for getting back to me. I am currently working on another part of the project but once I get to the bipartite graph matching problem, I will add this library as a shared library for the ROS 2 package. I will keep you posted about its progress.

Sorry I missed your question for that long! Best of luck


Admin: Browser detection

This issue is from the card created by Alastair on the LeanKitKanBan board we were using:

IE6 (7?) probably shouldn't be supported.

Moved to https://github.com/GiveCampUK/GiveCRM.Admin/issues/9


Error

[Server thread/CRITICAL]: ErrorException: "Undefined index: items" (EXCEPTION) in "plugins/BuilderTools_dev-55.phar/src/czechpmdevs/buildertools/commands/WandCommand" at line 53

This is lastest version of BuilderTools

i fixed this bug with old config remove


Karma build failing on iojs v3.x

Running npm i --save-dev karma on iojs v3.2.0 (and 3.0.0) using nvm is producing the following output:
><EMAIL_ADDRESS>install /Users/dana/code/karmatesting/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/utf-8-validate
> node-gyp rebuild

  CXX(target) Release/obj.target/validation/src/validation.o
In file included from ../src/validation.cc:15:
../node_modules/nan/nan.h:261:25: error: redefinition of '_NanEnsureLocal'
NAN_INLINE v8::Local<T> _NanEnsureLocal(v8::Local<T> val) {
                        ^
../node_modules/nan/nan.h:256:25: note: previous definition is here
NAN_INLINE v8::Local<T> _NanEnsureLocal(v8::Handle<T> val) {
                        ^
../node_modules/nan/nan.h:661:13: error: no member named 'smalloc' in namespace 'node'
    , node::smalloc::FreeCallback callback
      ~~~~~~^
../node_modules/nan/nan.h:672:12: error: no matching function for call to 'New'
    return node::Buffer::New(v8::Isolate::GetCurrent(), data, size);
           ^~~~~~~~~~~~~~~~~
/Users/dana/.node-gyp/3.2.0/include/node/node_buffer.h:31:40: note: candidate function not viable: no known conversion from 'uint32_t' (aka 'unsigned int') to
      'enum encoding' for 3rd argument
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                       ^
/Users/dana/.node-gyp/3.2.0/include/node/node_buffer.h:43:40: note: candidate function not viable: 2nd argument ('const char *') would lose const qualifier
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                       ^
/Users/dana/.node-gyp/3.2.0/include/node/node_buffer.h:28:40: note: candidate function not viable: requires 2 arguments, but 3 were provided
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate, size_t length);
                                       ^
/Users/dana/.node-gyp/3.2.0/include/node/node_buffer.h:36:40: note: candidate function not viable: requires 5 arguments, but 3 were provided
NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                       ^
In file included from ../src/validation.cc:15:
../node_modules/nan/nan.h:676:12: error: no viable conversion from 'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object>'
    return node::Buffer::New(v8::Isolate::GetCurrent(), size);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:210:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from
      'v8::MaybeLocal<v8::Object>' to 'const v8::Local<v8::Object> &' for 1st argument
class Local {
      ^
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:210:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from
      'v8::MaybeLocal<v8::Object>' to 'v8::Local<v8::Object> &&' for 1st argument
class Local {
      ^
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:214:13: note: candidate template ignored: could not match 'Local' against 'MaybeLocal'
  V8_INLINE Local(Local<S> that)
            ^
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:327:13: note: candidate template ignored: could not match 'S *' against 'v8::MaybeLocal<v8::Object>'
  V8_INLINE Local(S* that)
            ^
In file included from ../src/validation.cc:15:
../node_modules/nan/nan.h:683:26: error: no member named 'Use' in namespace 'node::Buffer'
    return node::Buffer::Use(v8::Isolate::GetCurrent(), data, size);
           ~~~~~~~~~~~~~~^
In file included from ../src/validation.cc:7:
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:221:5: error: assigning to 'v8::Primitive *volatile' from incompatible type 'v8::Value *'
    TYPE_CHECK(T, S);
    ^~~~~~~~~~~~~~~~
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'
    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
                                    ^ ~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:414:12: note: in instantiation of function template specialization 'v8::Local<v8::Primitive>::Local<v8::Value>' requested here
    return NanEscapeScope(NanNew(v8::Undefined(v8::Isolate::GetCurrent())));
           ^
../node_modules/nan/nan.h:398:30: note: expanded from macro 'NanEscapeScope'
# define NanEscapeScope(val) scope.Escape(_NanEnsureLocal(val))
                             ^
In file included from ../src/validation.cc:7:
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:221:5: error: assigning to 'v8::Boolean *volatile' from incompatible type 'v8::Value *'
    TYPE_CHECK(T, S);
    ^~~~~~~~~~~~~~~~
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'
    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
                                    ^ ~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:424:12: note: in instantiation of function template specialization 'v8::Local<v8::Boolean>::Local<v8::Value>' requested here
    return NanEscapeScope(NanNew(v8::True(v8::Isolate::GetCurrent())));
           ^
../node_modules/nan/nan.h:398:30: note: expanded from macro 'NanEscapeScope'
# define NanEscapeScope(val) scope.Escape(_NanEnsureLocal(val))
                             ^
In file included from ../src/validation.cc:7:
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:221:5: error: assigning to 'v8::Function *volatile' from incompatible type 'v8::Value *'
    TYPE_CHECK(T, S);
    ^~~~~~~~~~~~~~~~
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'
    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
                                    ^ ~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:1514:12: note: in instantiation of function template specialization 'v8::Local<v8::Function>::Local<v8::Value>' requested here
    return NanEscapeScope(NanNew(handle)->Get(kCallbackIndex)
           ^
../node_modules/nan/nan.h:398:30: note: expanded from macro 'NanEscapeScope'
# define NanEscapeScope(val) scope.Escape(_NanEnsureLocal(val))
                             ^
In file included from ../src/validation.cc:7:
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:221:5: error: assigning to 'v8::Object *volatile' from incompatible type 'v8::Value *'
    TYPE_CHECK(T, S);
    ^~~~~~~~~~~~~~~~
/Users/dana/.node-gyp/3.2.0/include/node/v8.h:180:37: note: expanded from macro 'TYPE_CHECK'
    *(static_cast<T* volatile*>(0)) = static_cast<S*>(0);      \
                                    ^ ~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:1632:12: note: in instantiation of function template specialization 'v8::Local<v8::Object>::Local<v8::Value>' requested here
    return NanEscapeScope(handle->Get(NanNew(key)).As<v8::Object>());
           ^
../node_modules/nan/nan.h:398:30: note: expanded from macro 'NanEscapeScope'
# define NanEscapeScope(val) scope.Escape(_NanEnsureLocal(val))
                             ^
9 errors generated.
make: *** [Release/obj.target/validation/src/validation.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/Users/dana/.nvm/versions/io.js/v3.2.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Darwin 14.3.0
gyp ERR! command "/Users/dana/.nvm/versions/io.js/v3.2.0/bin/iojs" "/Users/dana/.nvm/versions/io.js/v3.2.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/dana/code/karmatesting/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/engine.io-client/node_modules/ws/node_modules/utf-8-validate
gyp ERR! node -v v3.2.0
gyp ERR! node-gyp -v v2.0.2
gyp ERR! not ok
npm WARN optional dep failed, continuing<EMAIL_ADDRESS>npm WARN optional dep failed, continuing<EMAIL_ADDRESS>

For me it finishes the install and runs without issues, even though these errors are there (as those are optional dependencies).
For the moment we can't do anything other than wait for socket.io to upgrade their dependencies: https://github.com/socketio/socket.io/issues/2213

Gotcha, thanks for the quick reply!

package.json


Request: Add mute/unmute endpoints

Would be great if mute/unmute endpoints get implemented in the next upcoming version.

Hi @Internalizable ,
It looks like currently Twitter API V2 doesn't support this endpoint. As soon as it will be released, we'll implement it.
Otherwise feel free to submit a pull request with V1 enpoint if you need it before :)


F3-D seems to leave managed lines behind

This was fixed as part of the rewrite for Minecraft 1.11.2.


Support for Nested Sites

Environment

Python version: 3.5.4
NetBox version: 2.4.7 / 2.5.0-beta1

Proposed Functionality
This feature would add the ability, similar to Regions, to nest sites.
This would allow the modelling of a building "site" and room "site" (could also include specific area's within a building to further segregate).
This might also be particularly useful now that #20 is going to be implemented in v2.5.0 as it might be more relevant if you are currently using sites for "buildings" but you need a panel in a specific room.  Additionally, the metadata allowed to be carried in site's is far more relevant to rooms compared to rack groups/racks.
Use Case
Currently the site object allows other objects to be tied to a specific site.  Currently regions allows nested regions and rack groups are planned to get nested rack groups in #1754.  However sites, which I would view as either a building or a room within a building, currently do not allow for nesting of rack groups.
If you use Rack Groups to represent sub-areas(area, room, etc) within a building, there will be no way to attach a device that isn't in a rack to a specific area like a room within a building.
This also allows you to model the vlans within a building site and room site more effectively.
Specific use case (assuming the following structure):
City (Region)
Building (Site)
Area (Site)
Room (Site)

Attach racks to a building
Attach devices to a building (with or without a rack)
Attach devices to a area (with or without a rack)
Attach devices to a room (with or without a rack)
Potentially allow inheritable VLANs

Database Changes
This would require a foreign key referencing the parent site.
Design Considerations
Currently, VLAN are tied into sites, when dealing with devices that are assigned vlans based on the site.  For example, you might want to look at the site as well as all parent sites.
There may be other objects which look at sites in a similar vein and would also need to be considered.
External Dependencies
No external dependencies

I think we've struck a good balance as it is with nested regions and rack groups. Allowing nested sites as well is bound to introduce unnecessary complexity and confusion.

To further add, I just did some preliminary testing, and it seems to work by just switching to a TreeForeignKey & MPTT type field.  If you don't mind, I think basic functionality of nested sites could be added then the far reaching impact of parent sites for things like vlans could be added.  I would like to program this and then submit a PR.
Thoughts?

I'm going to close this out as we need to evaluate community feedback after implementing #1754 before we consider any further modifications to the region/site/group/rack hierarchy. Unfortunately I don't an ETA for #1754.


Link to the correct RFC for 'Basic' authentication

Currently, the reference link for 'Basic' authentication points to the 'Digest' authentication RFC on IETF. I updated it to point to the correct RFC 7167.

Thanks for the keen eye. :)


Using SHAP for U-Net real-valued image predictions

Hi,
I am working with data of shapes:
ins.shape = (1000,29,60,60)
outs.shape = (1000,1,60,60)

The output of this network is a 60x60 real-valued 'image'. The input into the algorithm are 29 60x60 input features.
Is it possible to use SHAP in this case? There don't seem to be any examples of SHAP being used for real-valued image prediction. Do I have to transform my ins and outs into 1D vectors?
Rather than using pandas dataframes as input (in your example) my input is in the form of 60x60 numpy arrays.

I'm also interested in applying SHAP for image-to-image translation problems.

No luck so far! But it would be really cool. I haven't been able to find a good way to explain my image predictions. Report back if you find anything! :)


Cannot fullscreen a floating window

Perhaps this is intentional behaviour but filing to check. When a window is floating and you try to fullscreen it nothing happens. This confused me a little as I didn't realise my window was floating when I was trying to fullscreen it and confused why it was not happening. I though I was in some state similar to #473.
Version: bf670fe2bcbceb9e9034228f423ce5d9d848f187
Steps to Reproduce

Float a window
Try to fullscreen the window

Expected behaviour
Window is fullscreened
Actual Behaviour
Nothing happens expect some lines in log:
2018-08-03 00:48:00 DEBUG: chunkwm: processing event of type 'ChunkWM_PluginCommand'
2018-08-03 00:48:00 DEBUG:     command: 't', arg: 'fullscreen'

I haven't fully understood the exact steps to reproduce, when I have a window minimised in the dock. When I re-activate to un-minimise, sometimes a window comes back as floating. I think this may have been how I got into the state to reproduce the above.

I never use minimize so there may very well be some bugs there. If you figure a way to reproduce said problem could you create a separate issue for it?
The fullscreen (and similar) commands only work for tiled windows, as it specifially tells that window to temporarily expand into a different bsp-region.
If you want to fullscreen a floating window, you can use the --grid-layout command.
I guess we could techncally have the --toggle fullscreen apply the correct --grid-layout command internally, but then it would no longer be a toggle.


Selectors show the property value but not the proper name.

The selectors show the property value but not the proper name.

Instead of the "c" should be "Celsius".
Same applies to all other selectors.

And when you change it, does it go to the normal name?

Strange. Now it's correct.

I will do more testing.

I'll also have a look at this one, this should not happen like this as "c" is translated in the frontend to "Celsius"


Store master seed of random number generators in the derivative's dataset_description.json file

What would you like to see added in fMRIPrep?
This parameter is a bit inaccessible ATM, buried inside the config file. It seems relevant enough to extract into the description JSON.
I would also consider sending a PR to the BIDS specs recommending storing seeds in the derivatives description file - would that make sense?
Do you have any interest in helping implement the feature?
Yes
Additional information / screenshots
No response

I would say that the full list of arguments (excepting filters like --participant-label and --bids-filter-file, as these will be modified uselessly by per-subject runs) make sense. And extracting the random seed seems reasonable as well.

I like the idea of propagating the arguments used - is there a standardized way to convey this within the dataset_description.json?
If not, I think the most logical place would be a new field (PipelineArgs?) within GeneratedBy.

Sounds good. Would probably just call it Args, since not everything that creates a derivative would need to be a pipeline.

Upon some reflection, I apologize for proposing a probably bad approach and discovered some quasi-bug in our handling of seeds.
Why the approach is not great. The way fMRIPrep is designed, the master seed is a workflow-wise parameter. However, the user can choose to run one or many subjects. So, disguised under workflow-wise, the parameter (as all the command line arguments) is subject-wise in reality.
We are already having some side effects of this precisely with the dataset_description.json and had to address some problems in the past where races would happen between jobs on a cluster to write the same content. Similar issues occur with the citation boilerplate - the last being run wins.
The quasi-bug. For the same reason, when the user runs 4 subjects within one job, the four of them will use the same random seed (unless set by the user manually, which is beside the point). However, the same 4 subjects will use four different seeds if run in separate jobs. This is not a bug per-se, but it would be elegant (and keep our entropy levels unrelated to how you run the tool) to have four seeds either way.
Option 1: a subject level description.json file.
Basically almost the same as the dataset_description.json but at the root of the subject sub-01/.
However, I believe a better option would be:
Option 2: a dataset-level TSV file.
Instead, we could have a .tsv file at the root of the fMRIPrep outputs with each subject's details:

participant_id
master_seed
date
duration
command_line

sub-01
230939834
Mar 23, 2022
14:45:34.14
fmriprep ... --anat-only

sub-02
389435433
Mar 23, 2022
12:40:45.15
fmriprep ...

sub-01
454985493
Mar 23, 2022
4:42:10.54
fmriprep ...

As you can see, we could also use it as some sort of provenance tracking resource, so that you can understand here, e.g., if you are first running all subjects with --anat-only or not.
The columns I propose are just an example and probably more thinking should be put into it.
Current BIDS / BIDS-Derivatives
I'm not aware of any BIDS metadata file that would allow us to do either option. But if the tsv doesn't exist right now (e.g., making participant_id to be nonunique), it doesn't look like a crazy feature to request, at least for BIDS Derivatives
Side effects
Other issues such as the boilerplate could be addressed in similar ways - have the CITATION file per subject (maybe as a README) and then implement some sort of fmriprep ... group CLI that reads through them and calculates the m.c.d. That's the approach of MRIQC for the group reports, and I don't particularly love it, but it would probably be better than what we currently do.

BTW, being able to retrieve the seed of a prior --anat-only run would be beneficial when running subjects in the split way, so that the same seed is used by the full pipeline, which should be equivalent to running the full version originally.

Related to the above issues: #1311

@effigies @mgxd any feedback on this?

Yes, I think this is a worthwhile addition. I'm envisioning it as either fmriprep ... group, or as a standalone script (added as an entrypoint). For simplicity, it should be run after all participant level runs have finished (that way, no need to worry about concurrent read/writes).
For the logic itself, we can parse <outdir> / sub-* / log / <uuid> / fmriprep.toml and set up a table like you mocked, adding uuid as a column as well so we can a column of unique keys. Additionally, we can check if there are any crashfiles present, and add an errors_present column or something similar to easily convey failed runs. Other potential options we may want to extract as columns: anat_only, reuse_anatomical_derivatives,


add sytax recognition for lua utf8 funcs

Have you contacted the maintainer?  See the file header.

yes, i did. is it common to stll moniter the same email address for 10 years?

I have another email address, I'll send a message there.

Marcus replied to me a couple of months ago in response to a patch I sent him and pointed me at some updates here: github.com/marcuscf/vim-lua
He floated the idea of transferring maintenance duties to someone else.  @nobodyatandnothing would you be interested?

@nobodyatandnothing

yes, i did. is it common to stll moniter the same email address for 10 years?

I don't check that address very often but I'm still around :-)
As @dkearns said, I have a few updates on https://github.com/marcuscf/vim-lua including utf8 functions and others.
I think this pull request can be merged because it's an obvious improvement but if anyone is interested https://github.com/marcuscf/vim-lua/blob/master/syntax/lua.vim has more syntax updates, including Lua 5.3 and 5.4 support. Maybe someone could create a pull request from that?
On the other hand the indent file that I have in my repo has too many changes and not enough testing to be merged. I got a lot of ideas from other users on GitHub but never really completed my own version.

He floated the idea of transferring maintenance duties to someone else

Yeah, if somebody who still programs in Lua could maintain these files it would be great. Especially the final steps of checking everything in practice, creating clean commits/patches from the latest version and sending pull requests. I did add 5.3 and 5.4 syntax support but since I don't program in Lua anymore I was not sure the changes were good enough to be merged.

I'll include it then.
A PR for the 5.3 and 5.4 support is welcome, please let Marcus review.


A feature after unjailbreak cydia will be deleted from your device .

Describe the feature you'd like A feature after unjailbreak cydia will be deleted from your device .
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered. When you unjailbreak your device you don't have to reset or restore your device to get cydia off from your device .
Additional context
Add any other context or screenshots about the feature request here.

Cydia isn't actually on the device, just the icon is after you RootFS restore(rec0ver). This might be fixable if uicache is ran after Rec0ver but I'm not 100% sure.

Cydia isn't actually on the device, just the icon is after you RootFS restore(rec0ver). This might be fixable if uicache is ran after Rec0ver but I'm not 100% sure.

I try everything to get it remove but nothing work I don't want to restore my iphone yet .

Well it has to be fixed in order to run uicache after RootFS restore. It's not implemented yet, not 100% if its possible.

Well it has to be fixed in order to run uicache after RootFS restore. It's not implemented yet, not 100% if its possible.

Do you have the same issues that some people and I am having ?

Please understand what I'm saying... Everyone has this problem...

Please understand what I'm saying... Everyone has this problem...  I am  that why it need to be fixed .

I am just acknowledging this enhancement request and saying whats needed to be done.

I am just acknowledging this enhancement request and saying whats needed to be done.

Ok thanks you  .

As a work around to get rid of the Cydia icon you could use rootlessJB and then SSH in and then run uicache. Then just remove rootless. This is a lot more convenient then resting everything.

As a work around to get rid of the Cydia icon you could use rootlessJB and then SSH in and then run uicache. Then just remove rootless. This is a lot more convenient then resting everything.

I just wait to see what they do to this issues I open .

Actually this is how you fix it.
First go to Cydia delete substrate
And then get OpenSSH access and delete cydia.app
Then restore RootFS
thank me later

Actually this is how you fix it.
First go to Cydia delete substrate
And then get OpenSSH access and delete cydia.app
Then restore RootFS
thank me later

Show me a video of it ?

I have fixed it by watching this video https://www.youtube.com/watch?v=lsFGzCvM4dY  .

But there should be a feature added in cydia or in unc0ver for people who don't have laptops or computers when they unjailbreak cydia will be deleted !

60 days in you’re clearly trolling lmao
What I mean is to delete Cydia.app with filza then running Restore RootFS and then Cydia should gone with the jailbreak

60 days in you’re clearly trolling lmao
What I mean is to delete Cydia.app with filza then running Restore RootFS and then Cydia should gone with the jailbreak

No I am not if you have read my comment !

Cydia.app IS removed, but the icon is still in the cache.

Cydia.app IS removed, but the icon is still in the cache.

To fix the issue's watch this video to remove the icon from your device I have fixed it by watching this video https://www.youtube.com/watch?v=lsFGzCvM4dY .

This is a bug,not enchantment.

You could enable Refesh Icon Cache.

This was implemented in 3.1


get-help get-smbshare -examples

example 2 (incorrectly) says
"Get-SmbShare –Name VMS1 --- retrieves the SMB shares on the computer named VMS1."
the -name switch is for the name of the share, not the name of a remote computer.

@Curtmcgirt Thanks for the feedback!  This was fixed in pull request 95.


Internal Server Error when using pydantic.validators

Hi,
I customized app.schemas.user.UserBase by adding function decorated with the pydantic.validators (https://pydantic-docs.helpmanual.io/usage/validators/):
class UserBase(BaseModel):
    email: Optional[str] = None
    is_active: Optional[bool] = True
    is_superuser: Optional[bool] = False
    full_name: Optional[str] = None

    @validator("full_name")
    def contains_space(cls, value):
        if " " not in value:
            raise ValueError("must contain a space")
        return value

But after sending e.g. such request:
curl -X POST "http://localhost/api/v1/users/open" \
    -H "accept: application/json" \
    -H "Content-Type: application/json" \
    -d '{"password": "string", "email"<EMAIL_ADDRESS>"full_name": "string"}'

I get 500 Internal Server Error.
Full traceback:
INFO:     <IP_ADDRESS>:56778 - "POST /api/v1/users/open HTTP/1.1" 500 Internal Server Error
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/uvicorn/protocols/http/httptools_impl.py", line 385, in run_asgi
    result = await app(self.scope, self.receive, self.send)
  File "/usr/local/lib/python3.7/site-packages/uvicorn/middleware/proxy_headers.py", line 45, in __call__
    return await self.app(scope, receive, send)
  File "/usr/local/lib/python3.7/site-packages/fastapi/applications.py", line 140, in __call__
    await super().__call__(scope, receive, send)
  File "/usr/local/lib/python3.7/site-packages/starlette/applications.py", line 134, in __call__
    await self.error_middleware(scope, receive, send)
  File "/usr/local/lib/python3.7/site-packages/starlette/middleware/errors.py", line 178, in __call__
    raise exc from None
  File "/usr/local/lib/python3.7/site-packages/starlette/middleware/errors.py", line 156, in __call__
    await self.app(scope, receive, _send)
  File "/usr/local/lib/python3.7/site-packages/starlette/middleware/base.py", line 25, in __call__
    response = await self.dispatch_func(request, self.call_next)
  File "./app/main.py", line 43, in db_session_middleware
    response = await call_next(request)
  File "/usr/local/lib/python3.7/site-packages/starlette/middleware/base.py", line 45, in call_next
    task.result()
  File "/usr/local/lib/python3.7/site-packages/starlette/middleware/base.py", line 38, in coro
    await self.app(scope, receive, send)
  File "/usr/local/lib/python3.7/site-packages/starlette/middleware/base.py", line 25, in __call__
    response = await self.dispatch_func(request, self.call_next)
  File "/usr/local/lib/python3.7/site-packages/starlette_prometheus/middleware.py", line 47, in dispatch
    raise e from None
  File "/usr/local/lib/python3.7/site-packages/starlette_prometheus/middleware.py", line 43, in dispatch
    response = await call_next(request)
  File "/usr/local/lib/python3.7/site-packages/starlette/middleware/base.py", line 45, in call_next
    task.result()
  File "/usr/local/lib/python3.7/site-packages/starlette/middleware/base.py", line 38, in coro
    await self.app(scope, receive, send)
  File "/usr/local/lib/python3.7/site-packages/starlette/middleware/cors.py", line 76, in __call__
    await self.app(scope, receive, send)
  File "/usr/local/lib/python3.7/site-packages/starlette/exceptions.py", line 73, in __call__
    raise exc from None
  File "/usr/local/lib/python3.7/site-packages/starlette/exceptions.py", line 62, in __call__
    await self.app(scope, receive, sender)
  File "/usr/local/lib/python3.7/site-packages/starlette/routing.py", line 590, in __call__
    await route(scope, receive, send)
  File "/usr/local/lib/python3.7/site-packages/starlette/routing.py", line 208, in __call__
    await self.app(scope, receive, send)
  File "/usr/local/lib/python3.7/site-packages/starlette/routing.py", line 41, in app
    response = await func(request)
  File "/usr/local/lib/python3.7/site-packages/fastapi/routing.py", line 135, in app
    raw_response = await run_in_threadpool(dependant.call, **values)
  File "/usr/local/lib/python3.7/site-packages/starlette/concurrency.py", line 25, in run_in_threadpool
    return await loop.run_in_executor(None, func, *args)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "./app/api/api_v1/endpoints/users.py", line 118, in create_user_open
    user_in = UserCreate(password=password, email=email, full_name=full_name)
  File "pydantic/main.py", line 283, in pydantic.main.BaseModel.__init__
pydantic.error_wrappers.ValidationError: 1 validation error for UserCreate
full_name
  must contain a space (type=value_error)

It seems FastAPI does not handle it properly in this case.
I also created the simple bare (without using project template) FastAPI app:
from fastapi import FastAPI
from pydantic import BaseModel, EmailStr, validator

app = FastAPI()

class User(BaseModel):
    id: int
    email: EmailStr
    name: str

    @validator("name")
    def contains_space(cls, value):
        if " " not in value:
            raise ValueError("must contain a space")
        return value

@app.post("/users/", response_model=User)
async def create_user(user: User):
    return user

curl -X POST "http://localhost:8000/users/" \
    -H "accept: application/json" \
    -H "Content-Type: application/json" \
    -d '{"id": 0, "email"<EMAIL_ADDRESS>"name": "string"}'

But there I get expected response, 422 Unprocessable Entity with the body:
{
  "detail": [
    {
      "loc": [
        "body",
        "user",
        "name"
      ],
      "msg": "must contain a space",
      "type": "value_error"
    }
  ]
}

That's way I'm reporting an issue with the full-stack-fastapi-postgresql, not fastapi.

Thanks for the thorough report! And thanks for trying with bare FastAPI.
I'm pretty sure that's because your backend Dockerfile has an outdated FastAPI version. It will probably work if you update it.

@tiangolo I updated FastAPI to the most recent version and rebuilt the containers, but the bug still persists.
I can see though that there were a lot of changes to the whole project template, comparing to the version from which I initialized my project, so maybe it is some old bug?

Thanks for the patience :sweat_smile:
Yeah, it could be. The best would be to try with a newly generated project, add only that modification, and see if the error persists. If it doesn't, then it was a change from the version you used to start your project and the most recent one.

I also get the same behavior with bare fastapi 0.61.2. (It might be appropriate to open issue on https://github.com/tiangolo/fastapi instead but this was my only relevant google search match.)
I don't have any custom exception handlers or any other fancy stuff that might interfere, just a request body model with a custom validator.


Should use peerDependenciesMeta for worker-loader

Related to  #11474 and #12815.
The following should be added to package.json of pdfjs-dist for worker-loader.
  "peerDependenciesMeta": {
    "worker-loader": {
      "optional": true
    }
  }

npm v7 installs peerDependencies by default. We can see that calling npm install pdfjs-dist in an empty directory will install webpack and others in node_modules.

In npm versions 3 through 6, peerDependencies were not automatically installed, and would raise a warning if an invalid version of the peer dependency was found in the tree. As of npm v7, peerDependencies are installed by default.

https://docs.npmjs.com/cli/v7/configuring-npm/package-json#peerdependencies
https://github.blog/2020-10-13-presenting-v7-0-0-of-the-npm-cli/

We can make worker-loader optional with peerDependenciesMeta.

https://docs.npmjs.com/cli/v7/configuring-npm/package-json#peerdependenciesmeta
https://github.com/npm/rfcs/issues/221

The following should be added to package.json of pdfjs-dist for worker-loader.
  "peerDependenciesMeta": {
    "worker-loader": {
      "optional": true
    }
  }

@tamuratak That looks completely reasonable as far as I can tell; do you want to submit a patch?
The new code should be added just after the following block (since the package.json file is generated): https://github.com/mozilla/pdf.js/blob/3ec1bac9012b28fbb0773ed7328cb67a76e0d728/gulpfile.js#L2020-L2022
Also, if we're editing this code anyway I'd suggest bumping the worker-loader package to use version ^3.0.8 as well.


gem5 fixes and one AndroidDevice fix

gem5:

Removed busybox dependency for gem5 devices
Moved resize shell commands to own method
Fixed rare shell connection issues by trying up to 10 times to connect to the simulated system's shell
Added the m5 binary to Workload Automation. This is now deployed to the device automatically. The m5 binary is now a partial dependency as it is required for checkpoint support.
No longer wait for disabled boot animation
Allow the user to specify a login prompt and a corresponding password prompt from the agenda.
Removed unused methods
Remove the rename in pull_file to align with gem5

Android:

Use content instead of settings to get ANDROID_ID

I have addressed the above issues and have added two new patches for you to review. The new patches are:

Gem5Device: Removed unused methods	d635596
Gem5Device: Remove the rename in pull_file to align with gem5	72a617c


Error when using Semantic Kernel Plugin

I am trying to run and check the sample codebase provided by the semantic Kernel repo in samples\dotnet\14-Create-ChatGPT-Plugin. I tried running their sk-chatgpt-azure-functions project but it threw an error related to semantic-functions-generator. As seen in the image below, that project can't be loaded due to some reason, I tried reloading multiple times.

So I tried to add it manually and create the same folder structure and code as was given on their Github page. Then I tried running the code which is used to test this plugin, but there I got this error while running:

Not sure what the error means since I couldn't find anything related to this online.
Any help would be appreciated. Thanks!

Thanks for reaching out! The repo where you've posted isn't monitored as frequently. Could you please post your question as an issue or start a discussion in our main repo [link to main repo]? That way, it will get the attention it needs.
Thanks for understanding!


Fix issue with NAMESPACE not finding certain S3 methods

This PR fixes the following issue: https://github.com/rstudio/sparklyr/issues/583

We can't overwrite the base calls (say sql_build) since this would prevent using dplyr with other backends when sparklyr is loaded, but since this dplyr change is breaking loading sparklyr, I do agree there is urgency to get this fixed; therefore, merging. Thank you @navdeep-G!


Investigate how to integrate Amazon Cognito Service with the core application

The Core application tentatively should use authentication/authorization by token, so it allows requests from clients (SPAs, android apps, etc) independently of their implementation.

https://aws.amazon.com/cognito/ seems to be a good start

Useful link: https://thenewstack.io/understanding-aws-cognito-user-and-identity-pools-for-serverless-apps/


Investigate the blog.wellcomecollection.org subdomain

Via a reader, the blog.wellcomecollection.org subdomain still works and shows you the current site, e.g.
https://blog.wellcomecollection.org/whats-on
This isn't the desired configuration – we should be redirecting to the main domain.

Quoting Danny in Slack:

It's a legacy from a WordPress blog that was configured as a subdomain.

It seems to be configured as an alternative name on the prod CloudFront distro; I'm going to sort this.

This is working for HTTP, but not HTTPS. See https://github.com/wellcomecollection/platform-infrastructure/issues/326


feat: Implement extensible effects

Very much a WIP, currently working out the type system requirements.
The current WIP is largely based on the older paper http://okmij.org/ftp/Haskell/extensible/exteff.pdf as that appeared as an easier point to start at. Unfortunately the implementation requires that the open variant type (or open union in the paper) embeds a Functor which is impossible without additional type system and runtime support.
The followup paper on freer monads appear to avoid this issue (using GADTs) so the next step is to move the implementation towards that.
https://github.com/Marwes/gluon/blob/extensible_effects/test.glu
error: Implicit parameter with type `forall r . std.functor.Functor [| r]` could not be resolved.
- <test>:81:48
81 |                 flat_map loop (send (\k -> map k rest)) // ERROR

Something I aim to do differently is to move open unions/variants in the language proper to avoid the need for the unsafe coercions.
References
Extensible effects - An alternative to monad transformers
http://okmij.org/ftp/Haskell/extensible/exteff.pdf
https://github.com/suhailshergill/extensible-effects
Freer Monads, More Extensible Effects
https://github.com/lexi-lambda/freer-simple
http://okmij.org/ftp/Haskell/extensible/more.pdf
purescript-run
https://github.com/natefaubion/purescript-run

Refactored the effect implemention in the freer monad representation which wasn't as big of a problem as I expected. The functor issue is thus resolved and all cheating is removed. Everything does not fully typecheck however.
error: Expected the following types to be equal
Expected: test.Eff (test.Error String a) Int
Found: test.Eff (test.Lift IO a) Int
2 errors were found during unification:
Types do not match:
    Expected: test.Error
    Found: test.Lift
Types do not match:
    Expected: String
    Found: IO
- <test>:107:12
107 |     do y = lift (io.applicative.wrap 123)

error: Expected the following types to be equal
Expected: test.Eff (test.Lift IO a) (std.types.Result String Int)
Found: test.Eff (test.Rest b) (std.types.Result String Int)
1 errors were found during unification:
Types do not match:
    Expected: test.Lift IO a
    Found: test.Rest b
- <test>:110:48
110 | let final : IO (Result String Int) = run_lift (run_result effect)

This fails because test.Rest b and test.Lift IO a are partially applied, if they were fully applied they do as they are both open variant rows (and unifies under row polymorphism). So what is needed is a way to write a set of effects as a row that is also be convertible to variants so they can be matched on when the effect row is applied.
// Applying an effect gives something we can `match` on, in other words a variant
// The applied type (`a`) can be used inside each variant as it is applied on each `effect` (`Effect1 a`, `Effect2 Int a`
[| Effect1, Effect2 Int | r |] a <==> (| Variant1 Content1 | Variant2 | r)

Doing this generically seems to at least need polymorphism over labels so convert can be written
// 'Label is a type variable of kind `Label` (instead of Type, Row, Type -> Type, ..)
let convert : [| 'Label a | r |] b -> (| 'Label a b | r)

TBC

Progress update
Effects basically work at the user level now and I have ported the repl, http server and lisp example to be effect based instead of the plain IO or custom monads that they used before. There may still be some API changes in the future or changes to the effect row syntax [| state : State Int | r |] but otherwise I'd expect everything to work without issues.
The internals are on a bit shakier ground.
I added a set of "magic macros" to convert between effect rows and variants which can actually be matched and dispatched on which isn't something I'd expect to last long term but it does the job for now. I might restrict their use the the standard library which would effectively prevent the definition of custom effects (except through composition of the ones provided). That might not be so bad, if there is a missing effect, chances are the standard library wants it anyway.
There is also a soundness issue with the effect representation. As it is, the a in Eff r a is "forgotten" when writing the effect interpreter so it is possible to violate type safety.
do a = my_effect
wrap (a + 1) // oops, the effect interpreter accidentally sent a `String` and not an `Int`

It is at least possible to define a safe interface as long as the interpreter is defined correctly but GADTs are needed to fix it properly so I have started looking into that (https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/gadt-pldi.pdf).
Lastly, while not an issue with effects, there is (yet another) bug with higher ranked types I found when trying to implement the ST effect (/ monad). I think I have a fix for it though, just need to work out some scoping issues with type holes. That should make it feasible to lift the Ref type into ST and pave the way for better handling of mutable state (I hope!).
I am hoping to get this done before the end of the year but GADTs may be rough. If there is an easy way to limit the unsoundness so it is contained to the standard library and it seems like this will take a while I will try and cut 0.10 before that. Otherwise that is the plan.

bors r+


MAG-439 Port ODR-338 solution to master

set default value firstdisk or sda when driveId catalog does not exist
throw error if installDisk is number but could not found in driveId catalog
when installDisk is empty, use wwid of SATADOM, if not exist use the first device in driveId catalog

@RackHD/corecommitters @iceiilin @sunnyqianzhang @pengz1 @cgx027
This change is similar to previous PR https://github.com/RackHD/on-tasks/pull/86 on 1.0 branch. Also, it covers https://github.com/RackHD/RackHD/issues/53

+1

the task definition of install centos and install exs should be updated to default set installDisk as null or undefined, otherwise the feature of finding default SATADom will not work well.

it's better to change the commit message, MAG-xx and ODR-xxx is used internally, it's not used in open source, meanwhile, only write the issue number doesn't give clear message what you have done in this PR

@yyscamper , as to the commit message, I think the story/ODR number is useful for issue tracking purpose. So that people who review this PR could directly find the related story/ODR item.
I agree that it will be confused to external user what's the story/ODR number means. I think the better way is to put a related github issue number. But currently , we still using the ODR system and do not have one to one matched github issue. I bring up this topic on today's daily meeting, hopefully we could found out a better way thru discussion.

+1


Add guide and checklist for reviewing release PRs

Explanation

Release PRs are a lot more complicated to review than ordinary PRs. This commit explains the standards that we have for release PRs and provides a comprehensive guide to ensure that everyone follows these standards appropriately.
References

Closes #1913.
Changelog

(No consumer-facing changes)
Checklist

[x] I've updated the test suite for new or updated code as appropriate
[x] I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
[x] I've highlighted breaking changes using the "BREAKING" category above as appropriate

🌟 See rendered version 🌟

I've gone through this document and removed sentences that were confusing or misleading, and tightened up the language where I thought it needed it. Hopefully it is more understandable now. Please take another look and let me know!


Setup frontend for quiz page

Develop the frontend for the quiz page, with the current structure being all quiz questions and multiple choice options displayed on a single page. In the future when we have time we will structure it to be more dynamic and have a next button that will display questions on single pages. Follow the mockup structured previously

Interested

Interested

Interested


Feature app

Aside from updating tests, and a once over of the docs, this should be g2g and is what we need to move JLab over to the monorepo.

Major enhancements:

Application object which supports plugins
Virtual DOM
TabBar updates to support vertical tabs

Differences from Phosphide:

No more pre-canned application shell widget. JLab will have to make it's own shell (just take the one from Phosphide and tweak as needed).

The tests pass locally. Travis is timing out though (typical).

👍

TIL github won't let you merge failing pull requests from a phone. This is only failing cause Travis is dumb. I'll merge when I'm back on my laptop.

Ha, and I don't have permissions either.

Scroll down to the bottom and choose desktop version at the bottom, if you're looking at the GitHub website.

Werd


"Detection" is a molecular function

Following up on the discussion in #17977
This is the plan for 'detection of substances'

[ ] detection of oxygen (12 EXP) why not use a receptor or signalling pathway?
-> suggest obsoletion, consider: MF GO:0019826 oxygen sensor activity + BP GO:0032364 oxygen homeostasis
[ ]  detection of nutrient (2 EXP) ditto
-> suggest obsoletion and reannotation; papers don't seem to talk about the compounds detected as nutrients
[ ]  detection of cAMP (1 EXP) ditto
-> suggest obsoletion, consider: GO:0030552 cAMP binding
[ ]  detection of pheromone (20 EXP mainly IEP) ditto
-> suggest obsoletion, consider GO:0016503 pheromone receptor activity
[ ]  detection of glucose (11 annotations) ditto
-> suggest obsoletion, and create 'glucose sensor activity'

The whole branch needs to be looked at:

GO:0005513 detection of calcium ion
GO:0009730 detection of carbohydrate stimulus
GO:0003031 detection of carbon dioxide
GO:0050907 detection of chemical stimulus involved in sensory perception
GO:0010108 detection of glutamine
GO:0009720 detection of hormone stimulus
GO:0003030 detection of hydrogen ion
GO:0002007 detection of hypoxic conditions in blood by chemoreceptor signaling
GO:0009754 detection of jasmonic acid stimulus
GO:0002236 detection of misfolded protein
GO:0071703 detection of organic substance
GO:0010247 detection of phosphate ion
*GO:0051776 detection of redox state
GO:0009752 detection of salicylic acid stimulus
GO:0002235 detection of unfolded protein

It seems odd to me that detection of stimulus is an is_a child of response to stimulus. It seems to me that detection of stimulus has to happen BEFORE response to stimulus can occur. So, I think that it could be true to say that detection of stimulus is an is a part_of response to stimulus, but not that detection of stimulus is a type of response to stimulus.

I think when we originally modeled it, it was a part. In a cell, it was followed by signal transduction. At a multicellular organismal level, response can be more complex.

I would like detection of stimulus to remain a part of the cells response to the stimulus. in order for a cell to respond to a stimulus it has to detect it and initiate a change in the cell. But this might be a bit like what we have done with ligands being part of the signaling pathway. LIgands are the stimulus which bind the receptor which leads to activation of the signaling pathway. It does feel odd to have the ligand annotated to the signaling pathway but if the signaling pathway doesn't start with the ligand the ligand wouldn't  be associated with a bp.

Yes, in #2013 and incorporated in #3447, detection of terms were modeled as part of their respective response to terms.  At a later point, it was decided that the process of detection of X was in fact a type of response to X, and the relation became is_a.  Detection as a process in this original conception included both the binding and initial signal transduction event, and so worked as either part of or is a response to.
Now it seems the conception of what detection is is changing to be the single step process of binding a substance by a receptor for that substance.  This works well for chemicals and proteins, but seems less intuitive for detection of organisms.  Also it really changes what we mean by detection to mean only the binding event.  I disagree with this change, but I really don't care, since in 5-10 years, we will just change it back.


Can't get mods to load (using slim)

Hi. This issue is basically a cross-post of the issue I made on the Barotrauma repo, since I'm not sure if this is an issue with the Docker image or the dedicated server executable itself. In short, the problem is that content packages specified in the user_config.xml aren't being loaded by the server at launch — but please see the linked issue for the full description of the problem.
I'm using the slim variant of the Docker image, using docker compose to launch it.
If someone using this Docker image to host a dedicated server with mods enabled could share their full user_config.xml so I can compare it with mine, that'd be a useful next step to investigate the issue, I think.
Thanks in advance for any help! 🙏

Thanks for the information and sorry for being slow to respond. 🙏
I just read the whole issue and it reminds me of another issue which only occurs on Linux.
A nice PR (#3, btw he uses Workshop mods) have fixed this and slim start script have changed. In short, made a nesting symlink:
mkdir -p "${GAMEDIR}/Daedalic Entertainment GmbH/Barotrauma/Daedalic Entertainment GmbH"

ln -s \
    "${GAMEDIR}/Daedalic Entertainment GmbH/Barotrauma" \
    "${GAMEDIR}/Daedalic Entertainment GmbH/Barotrauma/Daedalic Entertainment GmbH/Barotrauma"

Hope this can help 👀


Not Compatible with Android Q

IllegalStateException: when (name) {
LAYOUT…etSystemService(name)
} must not be null
at com.jaredrummler.cyanea.inflator.CyaneaContextWrapper.getSystemService

try this
allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}

	dependencies {
		implementation 'com.github.jaredrummler:Cyanea:-e3a38f0d13-1
	}

Above should fix the crash but Cyanea currently doesn't seem to support for android Q toolbar/accent theming, it become transparent color.
Commit from #282a60a doesn't seem to be related
@jaredrummler  any idea why? so that I can try to find a fix

This works for me in the mean time. Good work. I use Cyanea in my latest launcher project and seeing android Q users excluded was alittle bummy

The crash seems to be related to the Gradle version used to build the library. Odd. I will update the lib soon.
I will also add a fix for the transparent Toolbar. I need to do some digging to find out what exactly changed in Android Q. I'm hesitant to admit my first time installing Q beta build was last night.
The transparent toolbar is related to the default primary dark colors specified by the library. I'm sure if you specified dark and light primary colors in the app's colors.xml it would fix it. By default the colors are transparent but should be changed with Cyanea magic at runtime.
Example temp fix for transparent toolbar:
  <!-- Primary colors -->
  <eat-comment/>
  <color name="cyanea_primary_reference">REPLACE_WITH_PRIMARY_COLOR</color>
  <color name="cyanea_primary_light_reference">REPLACE_WITH_LIGHTER_PRIMARY_COLOR</color>
  <color name="cyanea_primary_dark_reference">REPLACE_WITH_DARKER_PRIMARY_COLOR</color>

  <!-- Accent colors -->
  <eat-comment/>
  <color name="cyanea_accent_reference">REPLACE_WITH_ACCENT_COLOR</color>
  <color name="cyanea_accent_light_reference">REPLACE_WITH_LIGHTER_ACCENT_COLOR</color>
  <color name="cyanea_accent_dark_reference">REPLACE_WITH_DARKER_ACCENT_COLOR</color>

Looking forward to this patch, thankyou. I have an essential phone with Android Q if any in depth testing is needed and I use this library in a new launcher project im working on

works now! updated the library in my launcher and everything seems to be just fine so far