workbox-google-analytics : Cannot use 'in' operator to search for 'sync' in undefined

Library Affected:
workbox-google-analytics
Browser & Platform:
Chrome Version 80.0.3987.122
Issue or Feature Request Description:
I've added the plugin with the following configuration in my index.js:
import * as googleAnalytics from 'workbox-google-analytics';

googleAnalytics.initialize({
  parameterOverrides: {
    cd1: 'offline'
  },
  hitFilter: params => {
    const queueTimeInSeconds = Math.round(params.get('qt') / 1000);
    params.set('cm1', queueTimeInSeconds);
  }
});

It generates the following error in console :
Queue.js:289 Uncaught TypeError: Cannot use 'in' operator to search for 'sync' in undefined
    at Queue._addSyncListener (Queue.js:289)
    at new Queue (Queue.js:59)
    at new BackgroundSyncPlugin (BackgroundSyncPlugin.js:33)
    at Module.initialize (initialize.js:166)
    at Object../app/index.jsx (index.jsx:12)
    at __webpack_require__ (bootstrap:725)
    at fn (bootstrap:100)
    at Object.0 (index.js:68)
    at __webpack_require__ (bootstrap:725)
    at bootstrap:792

I'm trying to setup the plugin with gtag (despite #2389), here is the init in index.html
<script
      async
      src="https://www.googletagmanager.com/gtag/js?id=UA-xxxx-1"
    ></script>
    <script>
      window.dataLayer = window.dataLayer || [];
      function gtag() {
        dataLayer.push(arguments);
      }
      gtag('js', new Date());

      gtag('config', 'UA-xxxx-1');

      gtag('set', 'dimension1', 'online');
    </script>

On Analytics, I have 1 personalized dimension dimension1 for Network Status and 1 metric metric1 for Offline Queue Time

I found the error, one need to run googleAnalytics.initialize() after the service worker is registered (so self.registration exists)
if ('serviceWorker' in navigator) {
  window.addEventListener('load', () => {
    navigator.serviceWorker
      .register('service-worker.js', {
        scope: '/'
      })
      .then(registration => {
        console.log('SW registered: ', registration);
        googleAnalytics.initialize();
      })
      .catch(registrationError => {
        console.log('SW registration failed: ', registrationError);
      });
  });
}

This way it works fine.

Hello!
googleAnalytics.initialize() is not meant to be called from your web page—it's code that needs to live inside of your service worker script.
Based on at least the second comment, it looks like you're calling it from your web page.
Can you include all references to googleAnalytics.initialize() inside of service-worker.js instead?
CC: @philipwalton

Thank you ! Nice catch.
No more error.
Maybe the documentation could be more precise and clearly state that the code should be added inside service worker script ;)


fix: raise priority of Algebra R R instance

As far as I can see, this instance is always the right one when it applies, so why not raise its priority?

Zulip discussion here.

!bench

OK so I give up.


After the program runs to this point, it will not continue<Using /home/zz/.cache/torch_extensions as PyTorch extensions root... >

After I use the distributed training running program of deepspeed, the program runs to < using / home / zz /. cache / torch_ extensions as pytorch extensions root... >  will stop at this step and no longer run. Is there any solution?

``[2021-04-07 08:57:31,293] [INFO] [logging.py:60:log_dist] [Rank 0] DeepSpeed info: version=0.3.13, git-hash=unknown, git-branch=unknown
[2021-04-07 08:57:31,300] [INFO] [engine.py:75:_initialize_parameter_parallel_groups] data_parallel_size: 3, parameter_parallel_size: 3
[2021-04-07 08:57:32,666] [INFO] [engine.py:75:_initialize_parameter_parallel_groups] data_parallel_size: 3, parameter_parallel_size: 3
[2021-04-07 08:57:33,157] [INFO] [engine.py:75:_initialize_parameter_parallel_groups] data_parallel_size: 3, parameter_parallel_size: 3
[2021-04-07 08:57:33,292] [INFO] [engine.py:591:_configure_optimizer] Removing param_group that has no 'params'in the client Optimizer
[2021-04-07 08:57:33,298] [INFO] [engine.py:591:_configure_optimizer] Removing param_group that has no 'params'in the client Optimizer
[2021-04-07 08:57:33,299] [INFO] [engine.py:591:_configure_optimizer] Removing param_group that has no 'params'in the client Optimizer
[2021-04-07 08:57:33,299] [INFO] [engine.py:596:_configure_optimizer] Using client Optimizer as basic optimizer
[2021-04-07 08:57:33,299] [INFO] [engine.py:605:_configure_optimizer] DeepSpeed Basic Optimizer = Adam
[2021-04-07 08:57:33,300] [INFO] [logging.py:60:log_dist] [Rank 0] DeepSpeed Final Optimizer = Adam
[2021-04-07 08:57:33,300] [INFO] [engine.py:443:_configure_lr_scheduler] DeepSpeed using client LR scheduler
[2021-04-07 08:57:33,301] [INFO] [logging.py:60:log_dist] [Rank 0] DeepSpeed LR Scheduler = None
[2021-04-07 08:57:33,302] [INFO] [logging.py:60:log_dist] [Rank 0] step=0, skipped=0, lr=[0.0003], mom=[(0.9, 0.999)]
[2021-04-07 08:57:33,303] [INFO] [config.py:737:print] DeepSpeedEngine configuration:
[2021-04-07 08:57:33,303] [INFO] [config.py:741:print]   activation_checkpointing_config  {
"contiguous_memory_optimization": false,
"cpu_checkpointing": false,
"number_checkpoints": null,
"partition_activations": false,
"profile": false,
"synchronize_checkpoint_boundary": false
}
[2021-04-07 08:57:33,305] [INFO] [config.py:741:print]   allreduce_always_fp32 ........ False
[2021-04-07 08:57:33,305] [INFO] [config.py:741:print]   amp_enabled .................. False
[2021-04-07 08:57:33,305] [INFO] [config.py:741:print]   amp_params ................... False
[2021-04-07 08:57:33,309] [INFO] [config.py:741:print]   checkpoint_tag_validation_enabled  True
[2021-04-07 08:57:33,309] [INFO] [config.py:741:print]   checkpoint_tag_validation_fail  False
[2021-04-07 08:57:33,312] [INFO] [config.py:741:print]   disable_allgather ............ False
[2021-04-07 08:57:33,312] [INFO] [config.py:741:print]   dump_state ................... False
[2021-04-07 08:57:33,312] [INFO] [config.py:741:print]   dynamic_loss_scale_args ...... None
[2021-04-07 08:57:33,313] [INFO] [config.py:741:print]   elasticity_enabled ........... False
[2021-04-07 08:57:33,313] [INFO] [config.py:741:print]   flops_profiler_config ........ {
"detailed": true,
"enabled": false,
"module_depth": -1,
"profile_step": 1,
"top_modules": 3
}
[2021-04-07 08:57:33,314] [INFO] [config.py:741:print]   fp16_enabled ................. False
[2021-04-07 08:57:33,314] [INFO] [config.py:741:print]   global_rank .................. 0
[2021-04-07 08:57:33,314] [INFO] [config.py:741:print]   gradient_accumulation_steps .. 1
[2021-04-07 08:57:33,317] [INFO] [config.py:741:print]   gradient_clipping ............ 0.0
[2021-04-07 08:57:33,317] [INFO] [config.py:741:print]   gradient_predivide_factor .... 1.0
[2021-04-07 08:57:33,318] [INFO] [config.py:741:print]   initial_dynamic_scale ........<PHONE_NUMBER>
[2021-04-07 08:57:33,318] [INFO] [config.py:741:print]   loss_scale ................... 0
[2021-04-07 08:57:33,318] [INFO] [config.py:741:print]   memory_breakdown ............. False
[2021-04-07 08:57:33,320] [INFO] [config.py:741:print]   optimizer_legacy_fusion ...... False
[2021-04-07 08:57:33,320] [INFO] [config.py:741:print]   optimizer_name ............... None
[2021-04-07 08:57:33,321] [INFO] [config.py:741:print]   optimizer_params ............. None
[2021-04-07 08:57:33,321] [INFO] [config.py:741:print]   pipeline ..................... {'stages': 'auto', 'partition': 'best', 'seed_layers': False, 'activation_checkpoint_interval': 0}
[2021-04-07 08:57:33,321] [INFO] [config.py:741:print]   pld_enabled .................. False
[2021-04-07 08:57:33,324] [INFO] [config.py:741:print]   pld_params ................... False
[2021-04-07 08:57:33,324] [INFO] [config.py:741:print]   prescale_gradients ........... False
[2021-04-07 08:57:33,324] [INFO] [config.py:741:print]   scheduler_name ............... None
[2021-04-07 08:57:33,325] [INFO] [config.py:741:print]   scheduler_params ............. None
[2021-04-07 08:57:33,326] [INFO] [config.py:741:print]   sparse_attention ............. None
[2021-04-07 08:57:33,326] [INFO] [config.py:741:print]   sparse_gradients_enabled ..... False
[2021-04-07 08:57:33,326] [INFO] [config.py:741:print]   steps_per_print .............. 10
[2021-04-07 08:57:33,328] [INFO] [config.py:741:print]   tensorboard_enabled .......... False
[2021-04-07 08:57:33,328] [INFO] [config.py:741:print]   tensorboard_job_name ......... DeepSpeedJobName
[2021-04-07 08:57:33,328] [INFO] [config.py:741:print]   tensorboard_output_path ......
[2021-04-07 08:57:33,328] [INFO] [config.py:741:print]   train_batch_size ............. 12
[2021-04-07 08:57:33,329] [INFO] [config.py:741:print]   train_micro_batch_size_per_gpu  4
[2021-04-07 08:57:33,329] [INFO] [config.py:741:print]   wall_clock_breakdown ......... False
[2021-04-07 08:57:33,330] [INFO] [config.py:741:print]   world_size ................... 3
[2021-04-07 08:57:33,330] [INFO] [config.py:741:print]   zero_allow_untested_optimizer  False
[2021-04-07 08:57:33,332] [INFO] [config.py:741:print]   zero_config .................. {
"allgather_bucket_size": 500000000,
"allgather_partitions": true,
"contiguous_gradients": false,
"cpu_offload": false,
"cpu_offload_params": false,
"cpu_offload_use_pin_memory": "cpu_offload_use_pin_memory",
"elastic_checkpoint": true,
"load_from_fp32_weights": true,
"max_live_parameters":<PHONE_NUMBER>,
"max_reuse_distance":<PHONE_NUMBER>,
"overlap_comm": false,
"param_persistence_threshold": 100000,
"prefetch_bucket_size": 50000000,
"reduce_bucket_size": 500000000,
"reduce_scatter": true,
"stage": 0,
"sub_group_size":<PHONE_NUMBER>000
}
[2021-04-07 08:57:33,333] [INFO] [config.py:741:print]   zero_enabled ................. False
[2021-04-07 08:57:33,333] [INFO] [config.py:741:print]   zero_optimization_stage ...... 0
[2021-04-07 08:57:33,333] [INFO] [config.py:743:print]   json = {
"fp16":{
"enabled":false
},
"train_batch_size":12
}
Using /home/zz/.cache/torch_extensions as PyTorch extensions root...
Using /home/zz/.cache/torch_extensions as PyTorch extensions root...
Using /home/zz/.cache/torch_extensions as PyTorch extensions root...

@ZbearM
Are you running this on a custom setup? I ask because of the zz home directory.
If so have you tried a run without deepspeed to start with? May help us narrow things down a bit.

Because I only have normal user rights on my account, I need to customize the directory to zz. Also, I can run normally on a GPU without the command of deepspeed, so I don't know why I can't run with deepspeed

@ZbearM
Are you running this on a custom setup? I ask because of the zz home directory.
If so have you tried a run without deepspeed to start with? May help us narrow things down a bit.

Because I only have normal user rights on my account, I need to customize the directory to ZZ. Also, I can run normally on a GPU without the command of deepspeed, so I don't know why I can't run with deepspeed

I'm guessing DeepSpeed doesn't like your torch extension. It's not the best help but take a look at the DeepSpeed issues (filtered by "torch_extensions". There are several issues listed.

@afiaka87 lol..thanks a lot, Thank you. I'll go to the link you gave me to find the answer


Create docker images for different Node versions

Sometimes the environment does not allow using the latest node version, so perhaps it would be useful to have multiple docker images for different Node versions

We decided to not implement this feature because there is not much interest in this among the community.


[CodeGen] Route Param are case-sensitive

Route params are case-sensitive and fail to be used via code gen.
Example route:
        [HttpGet]
        [Route("foo/{barId}")]
        public async Task<IHttpActionResult> GetPricingRegionDetailAsync(int barid) {}

Example code gen output:
urlBuilder_.Append("foo/{barId}");
urlBuilder_.Replace("{barid}", System.Uri.EscapeDataString(ConvertToString(barid, System.Globalization.CultureInfo.InvariantCulture)));

The replace methid is case sensitive.
Related to #368

There are three possible solutions to this:

Write your controllers correctly so that the path placeholder barId matches the paramter name barid
Fix this in the Swagger generator so that the parameter name matches the path placeholder (either automatically rename it or throw an exception that the placeholder is not found as parameter)
Fix this in the generated code

I think option 3 is not a solution because the generated spec is wrong, so we either fix this in the Swagger generator

I would also like to know how to fix it In the generator


Mystery mods on quilted fabric api causes json reload listener to not fire

https://github.com/TelepathicGrunt/RepurposedStructures-Fabric/issues/205
this has been happening several times with different mods. Apparently it has happened with Charm, Inspectio, Graveyard, and outdated Server Translation Api.
It’s too time consuming to keep tracking down the offending mods and I’m burned out from this.
If quilted fabric api can find a way to make detecting the offending mod easier for users, that would be ideal. Otherwise, I give up with trying to make my mod’s json reload listener work in people’s quilt modpacks

Hi, guess it's time for an update on this!
New resource loader now includes 2 properties to hopefully help and debug those issues:

-Dquilt.resource_loader.debug.reloaders_identity=true will log if a resource reloader does not implement the identifiable interface
-Dquilt.resource_loader.debug.reloaders_order=true will log the computed order of resource reloaders.


/lib/modules/5.18.14-arch1-1/build/arch/x86/include/asm/ibt.h:67:8: error: 'nocf_check' attribute ignored; use -fcf-protection to enable the attribute [-Wignored-attributes]

I was trying to install redbpf from this source.
This was the output I got.
➜  ~ cd redbpf
➜  redbpf git:(llvm14) git submodule update
➜  redbpf git:(llvm14) git submodule update --init
➜  redbpf git:(llvm14) cargo build
warning: field is never read: `flags`
   --> redbpf/src/symbols.rs:110:5
    |
110 |     flags: i32,
    |     ^^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` on by default
note: `CacheEntry` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
   --> redbpf/src/symbols.rs:106:10
    |
106 | #[derive(Debug)]
    |          ^^^^^
    = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info)

warning: `redbpf` (lib) generated 1 warning
warning: use of deprecated function `llvm_sys::core::LLVMBuildCall`: Use LLVMBuildCall2 instead to support opaque pointers.
   --> cargo-bpf/src/llvm.rs:126:5
    |
126 |     LLVMBuildCall(builder, exit, ptr::null_mut(), 0, c_str.as_ptr());
    |     ^^^^^^^^^^^^^
    |
    = note: `#[warn(deprecated)]` on by default

warning: `cargo-bpf` (lib) generated 1 warning
   Compiling redbpf-tools v0.1.0 (/home/u1tron/redbpf/redbpf-tools)
warning: `#[derive]` can't be used on a `#[repr(packed)]` struct that does not derive Copy (error E0133)
     --> /home/u1tron/redbpf/target/debug/build/redbpf-probes-fc77f5d7250877f6/out/gen_bindings.rs:62472:14
      |
62472 |     #[derive(Debug)]
      |              ^^^^^
      |
      = note: `#[warn(unaligned_references)]` on by default
      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
      = note: for more information, see issue #82523 <https://github.com/rust-lang/rust/issues/82523>
      = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info)

warning: `redbpf-probes` (lib) generated 1 warning
error: failed to run custom build command for `redbpf-tools v0.1.0 (/home/u1tron/redbpf/redbpf-tools)`

Caused by:
  process didn't exit successfully: `/home/u1tron/redbpf/target/debug/build/redbpf-tools-e1476825ba5dede8/build-script-build` (exit status: 101)
  --- stderr
  warning: function is never used: `print_cargo_bpf_llvm_version`
   --> cargo-bpf/build.rs:5:4
    |
  5 | fn print_cargo_bpf_llvm_version() {
    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: `#[warn(dead_code)]` on by default

  warning: `cargo-bpf` (build script) generated 1 warning
     Compiling probes v0.1.0 (/home/u1tron/redbpf/redbpf-tools/probes)
     Compiling redbpf-probes v2.3.0 (/home/u1tron/redbpf/redbpf-probes)
  warning: `#[derive]` can't be used on a `#[repr(packed)]` struct that does not derive Copy (error E0133)
       --> /home/u1tron/redbpf/target/debug/build/redbpf-tools-591ce58b7620cbae/out/target/bpf/release/build/redbpf-probes-4f53a51a5490da77/out/gen_bindings.rs:62472:14
        |
  62472 |     #[derive(Debug)]
        |              ^^^^^
        |
        = note: `#[warn(unaligned_references)]` on by default
        = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
        = note: for more information, see issue #82523 <https://github.com/rust-lang/rust/issues/82523>
        = note: this warning originates in the derive macro `Debug` (in Nightly builds, run with -Z macro-backtrace for more info)

  error: failed to run custom build command for `probes v0.1.0 (/home/u1tron/redbpf/redbpf-tools/probes)`

  Caused by:
    process didn't exit successfully: `/home/u1tron/redbpf/target/debug/build/redbpf-tools-591ce58b7620cbae/out/target/bpf/release/build/probes-7ee8f9b2b2b95feb/build-script-build` (exit status: 101)
    --- stdout
    cargo:rerun-if-changed=include/
    cargo:rerun-if-changed=include/bindings.h
    Jul 27 16:14:47.244 DEBUG build_script_build: Try generating custom bindings with pre-installed kernel headers

    --- stderr
    /lib/modules/5.18.14-arch1-1/build/arch/x86/include/asm/ibt.h:67:8: error: 'nocf_check' attribute ignored; use -fcf-protection to enable the attribute [-Wignored-attributes]
    /lib/modules/5.18.14-arch1-1/build/arch/x86/include/asm/ibt.h:68:8: error: 'nocf_check' attribute ignored; use -fcf-protection to enable the attribute [-Wignored-attributes]
    /lib/modules/5.18.14-arch1-1/build/arch/x86/include/asm/ibt.h:67:8: error: 'nocf_check' attribute ignored; use -fcf-protection to enable the attribute [-Wignored-attributes], err: true
    /lib/modules/5.18.14-arch1-1/build/arch/x86/include/asm/ibt.h:68:8: error: 'nocf_check' attribute ignored; use -fcf-protection to enable the attribute [-Wignored-attributes], err: true
    thread 'main' panicked at 'failed to generate bindings: ()', redbpf-tools/probes/build.rs:79:10
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
  warning: build failed, waiting for other jobs to finish...
  warning: `redbpf-probes` (lib) generated 1 warning
  thread 'main' panicked at 'couldn't compile probes: Compile("iotop", None)', redbpf-tools/build.rs:16:10
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

The problem still occurs. I could not figure out. The header file is there but still no luck.
If anyone know, kindly comment here.

Not sure what's the right fix here, the machine I'm testing this on doesn't even support control flow extensions. It seems that the current Arch build is failing for the same reason.
diff --git a/cargo-bpf/src/build_constants.rs b/cargo-bpf/src/build_constants.rs
index 36a68dd..b2890e4 100644
--- a/cargo-bpf/src/build_constants.rs
+++ b/cargo-bpf/src/build_constants.rs
@@ -31,6 +31,7 @@ lazy_static! {
             "-D__KERNEL__",
             "-Wall",
             "-Werror",
+            "-Wno-error=ignored-attributes",
             "-Wunused",
             "-Wno-unknown-warning-option",
             "-Wno-frame-address",


Missing files

Hello,
I wanted to give it a try but it seems some files are missing:
config.py
create_database.py
Please check. Best
Thomas

Hello. Both config.py and create_database.py are found in scheduled tasks folder.


Updates from rspec-dev (2017-11-13)

These are some updates, generated from rspec-dev's rake tasks.

/cc @myronmarston @samphippen this fixes the mocks build for JRuby, we just pend the one circular warning check to fix it

LGTM


Cursor position isn't in right vertical place when textInput focused.

Description
When the TextInput focused, the cursor position will go down.
Reproduction
That't the problem in iOS 9.3, and the React Native version is 0.36.
Step1:

Step2:

Step3:

Additional Information

React Native version: 0.36
Platform: iOS 9.3
Operating System:  MacOS

Here's the codes:
import React, { Component } from 'react';
import ReactNative, {
  StyleSheet,
  TextInput,
  View,
} from 'react-native';

class TestPage extends Component {
  render() {
    return (
      <View style={styles.outerContainer}>
        <TextInput placeholder="<TextInput />" style={styles.textInput} />
      </View>
    );
  }
}

const styles = StyleSheet.create({
  outerContainer: {
    flex: 1,
    marginTop: 60,
  },
  textInput: {
    borderRadius: 5,
    borderWidth: 1,
    height: 44,
    paddingHorizontal: 10,
  }
});

export default TestPage;

I have solve the problem with declare multiline={false}.


Added user_working_session methods

Thanks Carlos!
I agree with your analysis.
Close it please then.
M.
On Fri, Jun 1, 2018, 1:37 PM carlospaz7<EMAIL_ADDRESS>wrote:

@carlospaz7 commented on this pull request.
In tests_zeeguu_api/test_working_session.py
https://github.com/zeeguu-ecosystem/Zeeguu-API/pull/17#discussion_r192369741
:

+from random import randint

+class UserWorkingSessionTests(APITestMixin, TestCase):
+

def setUp(self):

   super().setUp()

   working_session = WorkingSessionRule().w_session

   self.user_id = working_session.user_id

   self.article_id = working_session.article_id

   self.is_active = working_session.is_active

   self.cohort_id = working_session.user.cohort_id

def test_working_sessions_by_user(self):

   parameters = dict(

       user_id = self.user_id,

       from_date = (datetime.now() - timedelta(minutes=randint(75000, 75000))).isoformat(),

In the end the development team used their own API and got the data
directly from the CORE, also many things have changed since this version
(in this version of the API I still called it working session, instead of
reading and exercise) I think we can close the PR and only if is needed, I
can create the APIs for the reading and exercise sessions.
I totally forgot about it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/zeeguu-ecosystem/Zeeguu-API/pull/17#discussion_r192369741,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAcWh0A9nNZRMeXtSHOpjKeBz_aWXcR4ks5t4SdugaJpZM4TLRQz
.

A direct call to the CORE from the teacher dashboard API, therefore this pull request is no longer needed.


Style not applied when printing from New

When using the "Get PDF" link to print a brew that has not been saved (and thus is on the /new page), any custom CSS information is not loaded.
It appears that in printPage.jsx:componentDidMount(),  text data is fetched from localStorage but the style data is not, so it is only applied if the brew is saved. It may be as simple as duplicating the existing brewText functionality for a new brewStyle.

Fixed by #1401


Test the node after feature freeze

this should be done after activation
removed sp1

@noescape00 can we close this?

Yes


http3: support HTTP CONNECT and CONNECT-UDP (masque) protocols

This commit makes changes to the HTTP3 stack so that HTTP CONNECT and CONNECT-UDP requests will not fail due to internal checks. Also, it modifies the HTTP3 setting frame code to reflect the up-to-date setting for HTTP3 datagram over QUIC datagram. Finally, it adds two examples to run proxies TCP and UDP connections via HTTP3.

Based on your implementation, is it possible to establish p2p connection between QUIC clients? And how


Created unique plugin

Takes action on all duplicates, except for the first
Motivation for changes:
Redoing #1231 in a separate plugin
Allowing to create unique lists by rejecting second+ items based on a list of fields.
Also created tests
Detailed changes:
New plugin "unique":
unique:
  field: imdb_id

unique:
  field:
  - series_episode
  - series_name

Addressed issues:
(no tickets)
Personal usecase - select only one entry of each kind (e.g. only one torrent for a movie)
Config usage if relevant (new plugin or updated schema):
New plugin as described above.
Nothing else
Log and/or tests output (preferably both):
nitz@mars:~/projects/flexget/virtualenv (master *+%)$ bin/py.test ~/projects/flexget/flexget/flexget/tests/test_unique.py
=========================================================================================== test session starts ============================================================================================
platform linux2 -- Python 2.7.11+, pytest-2.9.2, py-1.4.31, pluggy-0.3.1
rootdir: /home/nitz/projects/flexget/flexget, inifile: setup.cfg
plugins: xdist-1.14, cov-2.2.1, capturelog-0.7
collected 6 items

../flexget/flexget/tests/test_unique.py ......

Thanks for the review! Fixed issues you commented about

No rush whatsoever, but I think I cleared all of the review issues. Would appreciate more feedback!

I still think it'd be best to skip entries that do not have all specified fields present.

Right now it's failing for these entities, like duplicate:
https://github.com/flexget/Flexget/blob/master/flexget/plugins/filter/duplicates.py#L38
What do you mean "skip"?

ping @cvium
also @paranoidi
thanks!

Hmm, this plugin is starting to look a lot like duplicates. Maybe it would be better to just change duplicates?
Aren't the ideas similar?

from #1231:
@paranoidi:

It is semantically very weird to use duplicates plugin to get first unique match. I would make a separate plugin for that purpose which is more suitably named (ie. unique). I was hesitant to even add the action support for this plugin originally. I'm declining this due that concern. I would be willing to accept this refined as a separate plugin though :)

I see.

Wanna update the wiki?

sure, how do I

You can pretty much copy https://flexget.com/Plugins/duplicates
https://flexget.com/_create/Plugins/unique

Great. Will do soon

Done
https://flexget.com/Plugins/unique
@cvium thanks for reviewing this! I appreciate the effort.


Scrolling timeline names

Names above main timeline now resize/scroll properly with the timeline, and are part of the scrollable area.

Good work!

Looks good!


Add IP Instantiation

This PR will allow IP instantiation in Zynq-Parrot. Instead of instantiating IPs like Ethernet under top_zynq in the bp example, users will be able to put their IPs into separate blocks outside of top.v.
PR dependency: #56 -> #55

Superseded by #64


Change fmt.Printf to log.Infof when adding items to playlist

The fmt.Printf messages are interfering with the --with-ui option - this changes them to use the log methods instead which appear properly inside the UI Log area.

Thanks for this!


Question? TimeStamp ('t') returned on async monitor, but not status

This is a question:
If I run the monitor example. when the device sends an update. The DPS dictionary has a timestamp along with the update.  When a status query is done the DPS dictionary does not send a timestamp 't'.  Is there an option to return the timestamp on a status query?
Not sure if this is a TUYA thing or tinytuya lib feature?

TinyTuya just passes through whatever it receives from the device.  If there is no t key then the device did not send one.


https://forgeapi.puppet.com/private/versions/puppet-agent is outdated

Describe the Bug
rspec-puppet-facts pull in https://forgeapi.puppet.com/private/versions/puppet-agent after each new puppet/facter release. The file is used within rspec-puppet unit tests to determine the correct facter version in relation to the specified puppet version (then the facter version is used to get the correct factset from facterdb). The latest 8.x entry is 8.3.1, latest 7.x is 7.27.0. Please update the file
Expected Behavior
A parseable overview of components in recent Puppet releases.
Steps to Reproduce

curl --silent https://forgeapi.puppet.com/private/versions/puppet-agent | jq .

Environment
Additional Context

https://github.com/voxpupuli/rspec-puppet-facts/commit/290d5e6948c35aa3614849c8917241b7b4b8961f
https://github.com/voxpupuli/rspec-puppet-facts/blob/master/lib/rspec-puppet-facts.rb#L390-L424

Oh! I wasn't aware of this API and I guess I could rely on it to make it easier for me to handle the FreeBSD packages (replacing this tedious manual state with another simpler one).

For reference, https://github.com/puppetlabs/puppet-forge-api/blob/main/app/static/puppet_agent_components.json, looks to be the source of truth. That was being updated through 2022 by automation and stopped at some point. There was a manual update at one point in 2023 and nothing since then.
I think we can for sure push up a manual update, but better yet would be figuring out what happened with the automation around this.

@cthorn42 can you do the manual release and let me know when the updated file is available? I can afterwards make a new release for rspec-puppet-facts.

My commit that added the 8.7.0 release to that private file was merged last week but I'm not seeing a change in the https://forgeapi.puppet.com/private/versions/puppet-agent.  I was hoping for a quick fix but that isn't the case, I will need to get some help from someone on the Forge to figure out what else needs done.

now with the 8.8.1 release the file is outdated again.

Hi @bastelfreak thanks for opening this issue! I've updated our internal documentation to make sure we manually update https://github.com/puppetlabs/puppet-forge-api/blob/main/app/static/puppet_agent_components.json so we hopefully won't run into this again so I'll close out this issue now.


Create a track files database

Instead of keeping files in /media they could be registered in a database as JSON. Only resitered user have access to these tracks.

[ ] Create a model with: track json, creation datetime, last edit datetime, user
[ ] Adapt django to use postgres
[ ] Use postgres in github action
[ ] Testing

Using PostgreSQL in Django
stackoverflow
Youtube

Github action
Blog entry


Having trouble enabling company-tabnine inside spacemacs

I tried to add the package inside and I also places all the config under user-config.

still no progress on this?

I've gotten as far as M-x company-tabnine-install-binary but it says that completion does not exist


Can't authenticate using settings.xml

Hi, I have a distribution repo:
<distributionManagement>
	<repository>
		<id>aws-release-dev</id>
		<name>AWS Release Repository</name>
		<url>s3://maven-repo-dev/release</url>
	</repository>
	<snapshotRepository>
		<id>aws-snapshot-dev</id>
		<name>AWS Snapshot Repository</name>
		<url>s3://maven-repo-dev/snapshot</url>
	</snapshotRepository>
</distributionManagement>

and am attempting to authenticate with corresponding settings.xml server entries:
<server>
	<id>aws-release-dev</id>
	<username>xxxx</username>
	<passphrase>yyyyyyyyyyyyyyyy</passphrase>
</server>
<server>
	<id>aws-snapshot-dev</id>
	<username>xxxx</username>
	<passphrase>yyyyyyyyyyyyyyyy</passphrase>
</server>

however, these credentials are not being picked up:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project BobScripts: Failed to retrieve remote metadata com.pgi:BobScripts:0.2.1-SNAPSHOT/maven-metadata.xml: Could not transfer metadata com.pgi:BobScripts:0.2.1-SNAPSHOT/maven-metadata.xml from/to aws-snapshot-dev (s3://maven-repo-dev/snapshot): Unable to load AWS credentials from any provider in the chain -> [Help 1]
I can only seem to authenticate by specifying the credentials as system properties.
Any ideas?  thanks, Mitchell

Hi,
I have same issue even when putting password instead of passphrase


example schema object attribute crashing importer

Apparently when having the example parameter for properties set in object will cause the importer to crash and stop the import process?
As far as I could understand the declaration of example on model objects is valid and it helps quite a lot for documentation purposes.
swagger: '2.0'
info:
  ...
paths:
  ...
definitions:
  User:
    type: object
    properties:
      name:
        type: string
        example: John Applesed #<===
      email:
        type: string
        format: email
        example<EMAIL_ADDRESS>#<===

It should not cause the importer to crash, but the importer will ignore this property when it is importing the API.

Yes, that was I have expected initially too, but surprisingly it's crashing?

Here is the error log:
2016-03-03 22:18:57,010 INFO - Attempting to update API from Swagger definition. API identifier: b76joivtw4 Swagger file: swagger.yaml
reading from swagger.yaml
2016-03-03 22:18:57,118 INFO - Parsed Swagger with 1 paths
2016-03-03 22:18:57,331 INFO - Updating model for api id b76joivtw4 and model name User
2016-03-03 22:18:57,507 INFO - Generated json-schema for model User: {"type":"object","properties":{"name":{"type":"string","example":"foo"}},"definitions":{}}
2016-03-03 22:18:57,629 ERROR - Error importing API definition
com.amazonaws.services.apigateway.model.BadRequestException: Invalid model specified: Validation Result: warnings : [], errors : [Invalid model schema specified] (Service: null; Status Code: 400; Error Code: null; Request ID: ecd839c6-e18d-11e5-a0d5-75bba301046c)
	at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:1369)
	at com.amazonaws.http.AmazonHttpClient.executeOneRequest(AmazonHttpClient.java:913)
	at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:631)
	at com.amazonaws.http.AmazonHttpClient.doExecute(AmazonHttpClient.java:400)
	at com.amazonaws.http.AmazonHttpClient.executeWithTimer(AmazonHttpClient.java:362)
	at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:311)
	at com.amazonaws.hal.client.HalClient.invoke(HalClient.java:235)
	at com.amazonaws.hal.client.HalClient.patchResource(HalClient.java:162)
	at com.amazonaws.hal.client.HalResourceInvocationHandler.invoke(HalResourceInvocationHandler.java:137)
	at com.sun.proxy.$Proxy32.updateModel(Unknown Source)
	at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkApiImporter.updateModel(ApiGatewaySdkApiImporter.java:158)
	at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkSwaggerApiImporter.updateModel(ApiGatewaySdkSwaggerApiImporter.java:405)
	at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkSwaggerApiImporter.updateModels(ApiGatewaySdkSwaggerApiImporter.java:396)
	at com.amazonaws.service.apigateway.importer.impl.sdk.ApiGatewaySdkSwaggerApiImporter.updateApi(ApiGatewaySdkSwaggerApiImporter.java:86)
	at com.amazonaws.service.apigateway.importer.impl.ApiGatewaySwaggerFileImporter.updateApi(ApiGatewaySwaggerFileImporter.java:58)
	at com.amazonaws.service.apigateway.importer.ApiImporterMain.importSwagger(ApiImporterMain.java:161)
	at com.amazonaws.service.apigateway.importer.ApiImporterMain.execute(ApiImporterMain.java:145)
	at com.amazonaws.service.apigateway.importer.ApiImporterMain.main(ApiImporterMain.java:83)
```

I did a little bit investigation. There is an issue on how the API importer generates the JSON schema for the swagger model. JSON schema doesn't allow to have example as property, but swagger model does. It fails on the API Gateway service side validation.
I will add an item in our backlog to fix this issue. Thank you for letting us know.

Swagger/OpenAPI import is now generally available in the API Gateway REST API, the AWS CLI and all AWS SDKs. You can also import and export Swagger definitions using the API Gateway console. This release addresses many of the open issues and feedback in this repository.
I would encourage you to migrate your workflow to the standard AWS tools. aws-apigateway-importer will receive minimal support from the API Gateway team going forward.
Any feedback or issues with the new importer should be directed to the official API Gateway forums.
Thanks,
Ryan


check testbot peripherals and populate contract (instead of using tags)

We implemented a '/contract' endpoint on the worker container a while ago that could be used to determine what extra peripherals, such as the hdmi capture device or usb-to-ethernet adapter were connected. In the tests, contracts could then be used to determine whether or not to run the tests based on if the hardware was present.
We were using tags to determine that, but this PR changes that so that the testbot itself looks for the hw. If you want a new piece of hardware supported, you just have to add its slug (something that can be used in test contract checks), and the linux command needed to check if it's present or not.
For extra hardware connected to the DUT, like modems, this won't work. We should probably add something in the suite.js of the test suite to check if hardware is present on the DUT, and populate the DUT's hardware contract based on that.
Change-type: patch
Signed-off-by: Ryan Cooke<EMAIL_ADDRESS>

@balena-ci rebase

@vipulgupta2048 yeah absolutely. I think this idea could do with a bit of refining but I prefer it to the tags

@rcooke-warwick will you remove the tags implementation in this PR?

@balena-ci rebase

Can one of the admins verify this patch?


Enhance Checker

This PR improves the checker by

fixing incompatibilities between the BEP specs and the rules
making the authorized and mandatory folder rules more consistent across levels
adding a test (dataset) with a complete set of metadata files

Yes, that was exactly the idea. Before we still had accidentally listed an exp- folder  in the rules and the removal of this required this bigger cleanup and reorganization...

actually, it was not accidental... but it was guided by something that's not in the BIDS-animal-ephys specs, which is the naming of the top-level directory with exp-XXX ; this is something I'd like to keep if possible... any idea what we could do about this?

could we add an extra rule (the one on the exp-XXX top-level folder)? and this rule would be checked only for internal INT use with a flag to be added on the command line? it's not very clean, but it would do the job...
actually, I'm not sure what to think about this... it probably relates to what we want to do with DigLab2AnDO and the AnDOGenerator... shall we discuss this in the next few days?

I thin this should be part of the DigLab2AnDO code and AnDO itself should be only dealing with the AnDO specs. Maybe we can have a utility validation function in the DigLab2AnDO repo that is running the AnDO validation and some additional INT specific checks, like the exp- parent folder.

OK, this makes sense, let's go this way!


Highlight unconfirmed transactions

Is your feature request related to a problem? Please describe.
I have to click the block explorer link to see whether a transaction has been confirmed yet or not
Describe the solution you'd like
Unconfirmed transactions in the history screen would be highlighted in some way, possibly a badge like the "new" transactions
Describe alternatives you've considered
Another possibility is to display confirmations for all on chain transactions, although I feel this is unnecessary. The information could also be displayed in the transaction detail pop up (still one less click, don't have to leave app).

@ole1220 any thoughts on what this should look like? It seems like some low hanging fruit we could knockout quickly.


How to triggers a command after rsync-auto

How to trigger a command after rsync-auto
$vagrant rsync-auto

I'm looking for the below vagrant dsl to execute whenever there happens an rsync between host to guest.
But the below script is not working !!
config.trigger.after :rsync do
        run "pwd"
  end

Hello,
Unfortunately such a trigger can't currently work, see also #36 for more details.


Update to Terraform Provider Google 5+

Hello!
TGP 5 was released on Oct 2, 2023, are there any plans to start supporting TGP 5 in this module?
Thank you.

Still actual.

I believe this is blocking me from using terraform-google-modules/terraform-example-foundation at stage 1 organization because its CAI monitoring module uses cloud functions which blocks me from upgrading to v5. I need to try v5 because <5 the Google terraform provider isn't using the v2 API for google_scc_*. The v1 API for google_scc_* has been removed.
This may be related to some of the < 5 constraints also seen in https://github.com/terraform-google-modules/terraform-example-foundation/issues/1131.

Thanks - TPG v5 support merged in https://github.com/GoogleCloudPlatform/terraform-google-cloud-functions/pull/117 and will be released in https://github.com/GoogleCloudPlatform/terraform-google-cloud-functions/pull/69


boxes: 1.3 -> 2.3.0

Description of changes

update boxes package
can be tested with
echo "hallo" | ./result/bin/boxes -d info

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

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

1 package built:

boxes

I guess #304512 is the same pull request, but also makes works for darwin systems. I'll close this pull request


Error after SwiftBackup

I have a Samsung with root access that I updated for which i formatted data. Ich backed everything up with Swift. The App restored and I can see the accounts but when I push on an account to get a OTP I get ERROR. I have seen a identical description of this error in closed issues where the solution was to use an older backup because it seemed the backup was compromised. I have tried that but did not get a better result. (The backups of other apps worked fine.)

2 things, I have seen (work in FreeOTP+):

Remove the authentication option in the app, and then backup and restore it. It will work. The encryption seems to be broken when done with authentication ON, especially with fingerprint authentication.
After backup see if the entries are correct (open via any text editor) and see. Correct the entries and save and restore. Will work.

@vdbhb59 -- freeotp doesnt have auth and backup

Yeah, I kind of confused between the 2, apologies on that part. Ignore that point, but the backup does have issues of malformed.

I cannot backup and restore. I guess I will have to use Google Authenticator again. Oh well.


gdu: 5.25.0 -> 5.26.0

Diff: https://github.com/dundee/gdu/compare/refs/tags/v5.25.0...v5.26.0
Changelog: https://github.com/dundee/gdu/releases/tag/v5.26.0
Description of changes

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Duplicate of https://github.com/NixOS/nixpkgs/pull/288445


Add more mistral examples to integration test

not directly relevant, but is there a reason to turn "run all mistral examples" action chain to "run some mistral examples" ?

Yes, the AC you are referring to is there to test basic mistral functionality.  All the examples are tested in itests for CICD purposes.


Unable to define optional productions

As goffrie mentioned in a previous issue regarding optional grammar, they mentioned it should be possible to write optional productions using the following syntax:
optionalSemicolon: () {
    => (),
    Semicolon => (),
}

...

manyStatements: ... {
    => ...
    manyStatements[sts] statement[st] optionalSemicolon => ...
}

The following code is a version of what is shown above:

Trying the code above results in a shift-reduce conflict from the parser:

Okay this is odd to me because then I have the following code that works with no shift-reduce conflict error:
// Bundle up all views of a dclass/module to be imported, into a vector
// of strings, each corresponding to a view suffix. (AI, UD, OV..)
view_suffixes: Vec<String> {
    => vec![],
    view_suffixes[mut vs] ForwardSlash Identifier(s) => {
        vs.push(s);
        vs
    }
}

I think I've found the problem. I know I have other optional productions working, and I figured out its certain tokens that cause the parser to error with a shift-reduce conflict. Not sure why.

I apologize for the error, this issue seems to be on my end. I overlooked a certain part of my grammar which caused this shift-reduce conflict.


no-standalone-expect rule triggered when calling assertions in expect.extend blocks for custom matchers

When writing custom matchers using the code provided by the docs, the calls to baseExtend are flagged by the no-standalone-expect rule.
import { expect as baseExpect } from '@playwright/test';

const expect = baseExpect.extend({
  async someMatcher() {
    // triggers the error
    await baseExpect(true).toBeTruthy();
  }
}

I would expect that this scenario wouldn't trigger the rule.

You might need to declare aliases
https://github.com/playwright-community/eslint-plugin-playwright/blob/main/README.md#aliased-playwright-globals
{
  "settings": {
    "playwright": {
      "globalAliases": {
        "test": ["myTest"],
        "expect": ["myExpect"]
      }
    }
  }
}

Thank you, I think that should handle this use case.


Serializers Storybook section blowing up

👋 Just spotted that the "Serializers" section on the Storybook (https://typist.doist.dev/?path=/docs/documentation-reference-serializers--docs) is blowing up.

I don't actually need access to this but thought it worth bringing up incase you were unaware 😅.

Thank you for the heads-up @Pjaerr :)


For split-frontend-backend, modify the deployment yaml file to build the static files from React code and put them inside frontend container

Not doing this approach any more...


Evaluate moving routes and routing logic into a store

Follow up to @localnerve's PR #14:
I'm playing around with the idea of making the routes be part of the store even in the static routing case. With this, you could even move the route matching logic into the store which is I think more 'flux-like' since routing is business logic which is meant to be pushed into stores instead of happening in the action creator.
My theory would then be that the store could be replaceable if someone wanted to override the way routing logic is done or how routes are defined for instance.

The default RouteStore may look something like this:
var createStore = require('fluxible/utils/createStore');
var Router = require('routr');
var queryString = require('query-string');
var searchPattern = /\?([^\#]*)/;

var RouteStore = createStore({
    storeName: 'RouteStore',
    handlers: {
        'NAVIGATE_START': 'handleNavigate',
        'RECEIVE_ROUTES': 'handleReceiveRoutes'
    },
    initialize: function () {
        this.routes = null;
        this.currentRoute = null;
        this.router = null;
    },
    handleNavigate: function (payload) {
        var options = {
            navigate: payload,
            method: payload.method
        };

        var route = this.getRouter().getRoute(payload.url, options);
        if (!route) {
            this.currentRoute = null;
            return;
        }

        route.query = this._parseQueryString(route.url);

        this.currentRoute = route;
    },
    _parseQueryString: function (url) {
        var matches = url.match(searchPattern);
        var search;
        if (matches) {
            search = matches[1];
        }
        return (search && queryString.parse(search)) || {};
    },
    handleReceiveRoutes: function (payload) {
        this.routes = payload;
        // Reset the router so that it is recreated next time it's needed
        this.router = null;
    },
    getCurrentRoute: function () {
        return this.currentRoute;
    },
    getRoutes: function () {
        return this.routes;
    },
    getRouter: function () {
        if (!this.router) {
            this.router = new Router(this.routes);
        }
        return this.router;
    }
});

module.exports = RouteStore;

This will not be implemented as fluxible-router does this now https://github.com/yahoo/fluxible-router


How to always directly jump to "all subscriptions"?

@amatriain! :-)
Is it possible to have a URL by which one can directly go to All subscriptions?
Currently it always goes to "Start" first.
Tried to make that clear in this video:
https://www.useloom.com/share/e666112771cb421a8324a88c888695b9
Thank you!

Currently there's no way to access the All Subscriptions list directly with a URL, I'm afraid.

Is that something you plan on adding? :)
On Sun, May 27, 2018, 16:29 Alfredo Amatriain<EMAIL_ADDRESS>wrote:

Currently there's no way to access the All Subscriptions list directly
with a URL, I'm afraid.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/amatriain/feedbunch/issues/17#issuecomment-392335064,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAKbw42CDomTMGqLRVJpzzz5kMzUS7tlks5t2rg_gaJpZM4UPO2C
.

--
https://orzanna.de/

It's a good idea, I'm adding it to my to-do list. Ideally I'd like to keep application state synchronized with URL fragments, so that thinks like directly linking to a feed or bookmarking the "all subscriptions" list become possible.
Of course PRs are welcome.

Wow, fragmented urls sound very powerful indeed! Would already be more than
happy to have a basic URL for all subscriptions. :)
On Sun, May 27, 2018, 17:12 Alfredo Amatriain<EMAIL_ADDRESS>wrote:

It's a good idea, I'm adding it to my to-do list. Ideally I'd like to keep
application state synchronized with URL fragments, so that thinks like
directly linking to a feed or bookmarking the "all subscriptions" list
become possible.
Of course PRs are welcome.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/amatriain/feedbunch/issues/17#issuecomment-392338382,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAKbw4ZDuA0CNDxKD6GtzFDeg9T3MDieks5t2sJXgaJpZM4UPO2C
.

--
https://orzanna.de/


Allow Duplicated fields to be marked as NOT NULL

Marten allows duplicating fields from JSON as relational fields. I came across cases where duplicated fields were being marked as nullable, even though they were for non-nullable .NET types.
I guess this was happening because the properties in question belong to a nested type, so in theory could be null (even though they never would be in my case).
I mentioned this in gitter, and Jeremy suggested a PR, so this issue is to track it.
I'll have a stab at this one when I get time

As a workaround, this can be done by using the pgType argument when calling DocumentMappingExpression.Duplicate(...), for example:
For<Event>()
  .Duplicate(x => x.Message.Timestamp, "timestamp with time zone NOT NULL");

While it would be relatively straightforward to add support for declaratively adding the NOT NULL constraint, it does involve touching quite a lot of code, and would break binary compatibility without a slew of overloads being added.
So instead of adding this feature, I've made a small change to one of the examples in the docs, to demonstrate that the pgType argument can be used to add constraints to duplicated fields.

I take it back, the workaround doesn't work, as it causes syntax errors in the generated DDL for the upsert/insert/update scripts


I added proper ignoring of .o files and the executables

I added proper ignoring of .o files and the executables

🚀


Faulty parsing of arrays that look like they might be strings

Sorry for the clumsy title!
foo: [
]

is successfully parsed by all the other parsers that I have found, as being equivalent to foo: []
But this parser says:
(ERROR
  (flow_node
    (plain_scalar
      (string_scalar))))

Interestingly following is parsed correctly:
foo: [
 ]

One empty space makes difference here.  There is actually a test case in corpus that demonstrate this empty space significance: https://github.com/ikatyang/tree-sitter-yaml/blob/master/corpus/spec.txt#L6869
@ikatyang any idea on this one? Thanks!

Worth noting that we see the same thing with objects defined with a curly brace.
This parses correctly:
foo: {
 }

But this does not:
foo: {
}


chore: get rid of gulp

The only thing we were still using gulp for was compiling SCSS.
Signed-off-by: Juan Cruz Viotti<EMAIL_ADDRESS>

how do you compile sass then?

Hi Cedric,
You can run the new sass NPM script (npm run sass). For more detailed explanation, take a look at the updated contributing guide: https://github.com/resin-io/etcher/blob/master/docs/CONTRIBUTING.md
Sent from my iPhone

On Aug 6, 2016, at 1:01 PM, Cédric Verstraeten<EMAIL_ADDRESS>wrote:
how do you compile sass then?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub, or mute the thread.


"TypeError: this._iframeAutoHeight is not a function" error appears when navigating from one Topic to other.

I am using suneditor to render the content of different topics. When I switch from one topic to other topic. "TypeError: this._iframeAutoHeight is not a function" comes.
Also sometimes TypeError: core.getSelectionNode is not a function comes in the same process.
These errors are more likely to come when switch from one topic to other faster.
This Error was reported earlier also but in recent version it was gone. Again it started appearing once i updated to 2.43.9.
I am using react 18 and nextjs 12

As it was updated to 2.43.9, the related code was not modified.
How can I reproduce the issue?

As it was updated to 2.43.9, the related code was not modified. How can I reproduce the issue?

This is a long issue see here https://github.com/mkhstar/suneditor-react/issues/94
In my opinion this is the most important issue to resolve. As i said first it loads without error , and then i click to navigate on next topic then it appears.
In this https://github.com/mkhstar/suneditor-react/issues/94 thread , It is mentioned by the owner that destroy editor before navigating. But that i can not do. Here is my answer on that thread.
https://github.com/mkhstar/suneditor-react/issues/94#issuecomment-1157168808

Is this an error that only occurs in "suneditor-react"?

I have the same problem. When I click options buttons like bold, italic, etc that errors happend. I use nextjs
this is my code.
`
import React, { useState, useEffect, useRef } from 'react'
import ButtonWrapper from '@components/Wrappers/ButtonWrapper'
import { usePatchSystemMutation } from '@services/systemServices'
import { redirectTo } from '@utils/redirectUtil'
import TypographyWrapper from '@components/Wrappers/TypographyWrapper'
import StackWrapper from '@components/Wrappers/StackWrapper'
import dynamic from 'next/dynamic'
import 'suneditor/dist/css/suneditor.min.css'
import SunEditorCore from 'suneditor/src/lib/core'
export const Editor = (props: any) => {
const SunEditor = dynamic(() => import('suneditor-react'), {
ssr: false,
})
const editor = useRef()
// The sunEditor parameter will be set to the core suneditor instance when this function is called
const getSunEditorInstance = (sunEditor: SunEditorCore) => {
editor.current = sunEditor
}
const [system, setSystem] = useState(null)
const [systemMutation, systemMutationData] = usePatchSystemMutation()
const [text, setText] = useState('')
useEffect(() => {
if (props.system) {
setSystem(props.system)
}
}, [props])
useEffect(() => {
if (props.system) {
if (systemMutationData.isSuccess) {
redirectTo('/terms')
}
}
}, [systemMutationData])
const handleChange = (value: string) => {
setText(value)
}
const updateTerms = () => {
systemMutation(system)
}
return (
<>
{system && (
<>

Escriba los terminos y condiciones

</>
)}
  <SunEditor
    onChange={handleChange}
    defaultValue={text}
    getSunEditorInstance={getSunEditorInstance}
    height="100%"
  />

  <StackWrapper direction="row" justifyContent="flex-end" mt={3}>
    <ButtonWrapper variant="contained" onClick={() => updateTerms()}>
      Actualizar
    </ButtonWrapper>
  </StackWrapper>
</>

)
}
`

@JiHong88 @jlbousing @mkhstar Guys please resolve this issue. Long pending issue. I am also using nextjs. First render is fine but in subsequent render this happens.

@JiHong88 @jlbousing
Would you like to test your own implementation without using the "suneditor-react" package?
I've never used nextjs, so it's hard to test it right now.
https://github.com/JiHong88/SunEditor/issues/1036#issuecomment-1157736031

Hi, I have the same problem.
This issue happened when I tried to scroll while the large content hasn't painted yet. May be affected by using multiple components (5) on the same page or some browser extensions that working with text content.
Can you please help how to detect when content is painted? Maybe exist some callback after that event.
"suneditor": "^2.43.14"
"suneditor-react": "^3.2.0"

I'll notify you after version update
--

Can you please help how to detect when content is painted? Maybe exist some callback after that event.

Currently, have an onload event
'editorInstance.onload=(core, reload) => {}`

The 2.44.0 version has been updated.
If this issue has not been resolved, please reopen this issue.
Thank you.

hi @JiHong88
I am using "suneditor-react": "^3.6.1" with
"react": "18.3.1",
"react-dom": "18.3.1",

and still getting the same issue
Vitest caught 3 unhandled errors during the test run.
TypeError: this._iframeAutoHeight is not a function

any suggestions?


Revert "Improve Int#to_s(base: 10) performance (~10%) (#9832)"

This reverts commit d44a61f8c80fe40b34b327292cc541c6640f76d5.
Reverts #9832
Closes #10290
Closes #10286

I have no opposition to this desicion, but I wasn't disappointed if there is a mention before merging...

Sorry @MakeNowJust I don't know why there wasn't one. Probably in rush of fixing it I didn't noticed you weren't involved in those discussions.


cmd/operator-sdk/new/cmd.go: fallback to default helm RBAC role without kubeconfig

Description of the change:
Updates operator-sdk new --type=helm to fallback to default RBAC rules if there is an error getting the kubeconfig or creating a discovery client.
Motivation for the change:
Closes #1625

/test marker

/test e2e-aws-ansible

/test e2e-aws-ansible

/test e2e-aws-ansible


New bot created with 1.3 fails to build - BadImageFormatException (Orchestrator not found)

Describe the bug
A colleague in Cloud Advocacy is experiencing an issue that I think could likely affect multiple users.
Upgraded to 1.3 via automatic upgrade prompt.  Created a new bot (no ejected runtime) and made a simple change to the welcome message LG.
Tried to run the bot from Composer and got the below error.

Version

OS

[ ] macOS
[x] Windows
[ ] Ubuntu

Looks like a typical binary loading issue, are you operating in x64 or x86?

Looks like a typical binary loading issue, are you operating in x64 or x86?

Closing as this looks like a weird environment issue on their machine, given that dotnet --version is showing the x86 version installed but not the more up to date x64 version.  I am going to close the issue and I have asked them to uninstall / re-install their SDKs / runtimes and we will see if it persists.

Closing as this looks like a weird environment issue on their machine, given that dotnet --version is showing the x86 version installed but not the more up to date x64 version.  I am going to close the issue and I have asked them to uninstall / re-install their SDKs / runtimes and we will see if it persists.


Version for Ubuntu.

Please, distribute the version for Ubuntu.
Me and other Ubuntu Chia farmers will appreciate you!
Thanks!

Farmers on Raspberry Pi would love this idea.

You should be install the module on Ubuntu if you install Powershell 7. Some functions will work with powershell 7 on Ubuntu while others will not. I will be visiting past functions to add compatibility as time permits.


Support PEM certs with encrypted private keys

ClientCertificateCredentialOptions carries a password but presently ClientCertificateCredential doesn't use it when given a PEM cert: https://github.com/Azure/azure-sdk-for-go/blob/7a0672beeb5c5d5818976c1447c84bbdf3860e3c/sdk/azidentity/client_certificate_credential.go#L175-L176
Passwords may work for PKCS12 certs but this is untested (#15403).

Closing this because we've refactored the certificate auth API such that it's no longer necessary for azidentity to support all private key encryption schemes directly. NewClientCertificateCredential() requires a standard library rsa.PrivateKey. When azidentity.ParseCertificates() is unable to parse a key, for example because it's PEM encrypted, applications are free to use their own code or a dependency for parsing.


refactor [puppetforgeusers], add tests

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @chris48s!

  Generated by :no_entry_sign: dangerJS against 8c1714a4d7e40afab801940335eab892cb2c5d99


previewnet chain not known to dependency manager

Problem
Trying to install a dependency from previewnet fails
Steps to Reproduce
flow-c1 init

add the following to the json

  "dependencies": {
    "FiatToken": "previewnet://7e3499582a06616f.FiatToken"
  }

run flow-c1 dependencies install
❌ Crash detected! unknown chain:
Acceptance Criteria
It is possible to install dependencies from previewnet
Context
cadence 1.0

This should just need a flowkit bump now and release to be fixed.


settings GUI styles cleanup

Start of a style cleanup on settings gui as we're approaching the finish with this. Up to a discussion whether we should keep the same style as avalon tools, or divert a little bit to differentiate between pype exclusive tools and avalon core.

This is what it looks like right now
Green for studio overrides, blue for edited and unsaved

Orange for project override

Comparison before and after. Some subtle changes to borders, but most importantly visible studio overrides.

wrong branching. I'll PR again


WIP: Add dashboard context option

Issue
#459
Description
Adds a context menu in the main Dashboard to view and manage alerts
Tasks remaining

[x] Remove "View alerts" context menu item and panel
[x] Restructure to use flyouts
[x] Restructure to use dashboard groups (aligned with current dashboards abilities)
[x] Alerts context menu: Add Documentation click
[ ] Alerts context menu: Add icon to Documentation link
[ ] Manage monitors: match new UX design
[ ] Create Alerting Monitor: Use visualize embeddable instead of embeddable panel (to fix chart error issue)
[ ] Alerts context menu: API integration for accurate count in title ("Manager Monitors (x)")
[ ] Manage monitors: API integration
[ ] Manage monitors: Disable button integration
[ ] Manage monitors: Edit monitor button integration
[ ] Create Alerting Monitor: If AVG of %%% section
[ ] Create Alerting Monitor: Advanced Data Source Settings accordion integration
[ ] Create Alerting Monitor: Notifications integration (copy from panel)
[ ] Create Alerting Monitor: Trigger API integration
[ ] Create Alerting Monitor: Create Monitor button and Cancel button
[ ] Create Alerting Monitor: Create button API integration (copy from panel)
[ ] View Alerting Monitor flyout (screen 9): UI and API integration

Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #343 (300680b) into anywhere-dev (6305d7f) will increase coverage by 0.01%.
The diff coverage is n/a.

@@               Coverage Diff                @@
##           anywhere-dev     #343      +/-   ##
================================================
+ Coverage         52.73%   52.75%   +0.01%
================================================
  Files               209      207       -2
  Lines              5450     5435      -15
  Branches            763      763
================================================
- Hits               2874     2867       -7
+ Misses             2574     2566       -8
  Partials              2        2

Impacted Files
Coverage Δ

...gins/alerting-dashboards-plugin/utils/constants.js

...lugins/alerting-dashboards-plugin/public/plugin.js

...plugins/alerting-dashboards-plugin/babel.config.js

...-plugin/public/components/DashboardMenu/helpers.js
0.00% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

What is the anywhere-dev branch?

Closing in favor of https://github.com/opensearch-project/alerting-dashboards-plugin/pull/490/


Configure RTW to use user configuration file from checked out version of ESMValTool

Description

Closes #2839
Link to documentation:

Before you get started

[x] ☝ Create an issue to discuss what you are going to do

Checklist
It is the responsibility of the author to make sure the pull request is ready to review. The icons indicate whether the item will be subject to the 🛠 Technical or 🧪 Scientific review.

[x] 🛠 This pull request has a descriptive title
[x] 🛠 Code is written according to the code quality guidelines
[ ] 🛠 Documentation is available
[ ] 🛠 Tests run successfully
[ ] 🛠 The list of authors is up to date
[ ] 🛠 Any changed dependencies have been added or removed correctly
[ ] 🛠 All checks below this pull request were successful

New or updated recipe/diagnostic

[ ] 🧪 Recipe runs successfully
[ ] 🧪 Recipe is well documented
[ ] 🧪 Figure(s) and data look as expected from literature
[ ] 🛠 Provenance information has been added

New or updated data reformatting script

[ ] 🛠 Documentation is available
[ ] 🛠 The dataset has been added to the CMOR check recipe
[ ] 🧪 Numbers and units of the data look physically meaningful

To help with the number of pull requests:

🙏 We kindly ask you to review two other open pull requests in this repository

Hi @KatherineTomkins I'm a bit confused on why you need still set the old user-config file path and write to it if its not getting used at all?

I'll give you a call about this.

Closing this PR in favour of #3169.


Feature Request: Schema support for links inside collections

I have a use case involving game data, where I'd like to define a tuple property in my schema that includes a reference to an object.  Moreover, this property is actually a list of tuples.  So the schema would look something like:
type Item {
    required name: str;
}

type LootTable {
    required name: str;
    multi drops: tuple<Item, int32>;  # <Item link, Probability>
}

Currently, the only way I can sort of solve this is by introducing a new type called ItemProbability (for example) instead of a tuple:
type ItemProbability {
    item: Item;
    prob: int32;
}

This presents its own difficulties, however, as I now have to define <Item, Probability> pairings as individual records in a new ItemProbability table, and then link them one-by-one in a LootTable which is quite backwards from the normal workflow you might expect.
This presents all sorts of challenges in managing the data going forward.  In keeping with my example, imagine a situation where you have 100 different enemies in the game, each with their own individual loot tables, and each loot table might define dozens of potential Item drops, with their corresponding drop probabilities (in the form of dozens of ItemProbability link records per loot table).
You'll end up with an ItemProbability table that's a mess of replicated data, since it doesn't really make sense to track each individual <Item, Probability> pairing in its own table - this pairing data should realistically have been embedded in each individual LootTable object in a multi list of tuples.  You might have 10 different enemies that all have a "Probability = 7" chance to drop "Generic Sword", for example.  Now you've got 10 distinct, yet identical records in the ItemProbability table and no way to figure out which one goes with which loot table, unless you want to start throwing backlinks into the mix which feels completely overboard for something as simple as a 2-element tuple that you ideally wanted embedded in the LootTable in the first place.
There's one other piece to this puzzle that would be super helpful, in the event that this feature gets implemented, and that would be EdgeDB UI improvements to show multi properties in a more human-readable presentation in the table views.  I've commented on this in more detail in the UI project here:  https://github.com/edgedb/edgedb-ui/issues/51#issuecomment-1762697890
This issue was also briefly discussed in Issue #5689, but since that issue was closed, I wanted to make a formal feature request for this so that it might be better tracked, and perhaps added to the roadmap and slotted into a future release at some point.
Side-note for the documentation folks:  It might be worth updating the page on Tuples to reflect that the following documentation only applies for queries, and not for schemas:

Tuple elements can be any type, including primitives, objects, arrays, and other tuples.

Isn't this what you're looking for? https://www.edgedb.com/docs/datamodel/links#link-properties
type Person {
  name: str;
  multi family_members: Person {
    relationship: str;
  }
}

Isn't this what you're looking for? https://www.edgedb.com/docs/datamodel/links#link-properties
type Person {
  name: str;
  multi family_members: Person {
    relationship: str;
  }
}

Kind of, but not quite.  This appears to be more of a meta-property, and doesn't support all of the features of a "full" property (like setting it to be a required field, for instance - something which should be necessary if I'm designing the schema properly - since it doesn't make sense to insert an Item without an accompanying probability).   Unfortunately these link properties also don't seem to be visible in the EdgeDB UI table view either.
It sort of serves as a hacky workaround to my issue though, and I could probably make use if it if I were using Python as an EdgeDB client (which I may look into).

Link properties are the intended solution to this problem.
We ought to support required on them, though you can mostly simulate that with an expression constraint that requires that it EXISTS.
File a bug against edgedb-ui if there's not a way to see the linkprops nicely?

Link properties are the intended solution to this problem.
We ought to support required on them, though you can mostly simulate that with an expression constraint that requires that it EXISTS.
File a bug against edgedb-ui if there's not a way to see the linkprops nicely?

I've got a couple issues for this already filed in the edgedb-ui repo.  See the following:

https://github.com/edgedb/edgedb-ui/issues/51#issuecomment-1762697890
https://github.com/edgedb/edgedb-ui/issues/275

Linkprops + general UI improvements are probably a suitable solution for my use-case as outlined above, however, I feel that the overall proposal to support arbitrary types (including links) within collections is still novel, and worth consideration on its own.
A core "feature" to this is the allowance of embedded data within an object, without the added overhead of an intermediary table bloating the schema.


Suggestion for directory structure

Current
The vp data in the ENRAM data repository are currently organized as:
# hdf5 vp files organized in hour directories
be/jab/2020/05/07/01/bejab_vp_20200507T010000Z_0x9.h5
be/jab/2020/05/07/01/bejab_vp_20200507T010500Z_0x9.h5
be/jab/2020/05/07/01/... # 60/5 = 12 files per directory
be/jab/2020/05/07/01/bejab_vp_20200507T015500Z_0x9.h5

# zipped directories with all hdf5 vp data for that month
be/jab/2020/bejab202005.zip

Design principles

We still want to store the individual hdf5 files. That is how they are produced by vol2bird.
Sources of the vp data (BALTRAD, flyway, meteo offices) should be kept separate, so a) data pipelines don't conflict with each other and b) the user can choose.
Within a source, the best possible data is kept, e.g. when BALTRAD data is reprocessed with improved vol2bird settings, those data should overwrite existing (lower quality) data from BALTRAD.
We don't want the zipped directories of data anymore. They facilitate download speed, but not analysis speed. Rather, we want to offer the vpts data in a tabular format(https://github.com/enram/vpts-dp/issues/25). This data product will be used by:

bioRad for analysis: data should be bulked and easy to download (e.g. zipped radar year).
CROW for visualization: data should be chunked and be read directly (e.g. unzipped radar date)

The directory structure of the repository should be easy to navigate (especially for the data products), without too many subdirectories, so it can be understand by humans and e.g. bioRad functions to download data.

Proposal
# source/format/radar/yyyy/

# original hdf5 vp files
baltrad/h5/bejab/2020/bejab_vp_20200101T000000Z_0x9.h5
baltrad/h5/bejab/2020/bejab_vp_20200101T000500Z_0x9.h5
baltrad/h5/bejab/2020/... # 60/5*24*365 = 105.120 files per directory
baltrad/h5/bejab/2020/bejab_vp_20201231T235500Z_0x9.h5

# tabular data products (zipped and unzipped)
baltrad/csv/bejab/2020/
baltrad/csv/bejab/2020/bejab_vpts_2020.csv.gz
baltrad/csv/bejab/2020/bejab_vpts_20200101.csv
baltrad/csv/bejab/2020/bejab_vpts_20200102.csv
baltrad/csv/bejab/2020/... # 365 files per directory
baltrad/csv/bejab/2020/bejab_vpts_20201231.csv

RMI data repository uses the same radar/yyyy structure (and filename convention for vpts).
The US data (#54) data are organized as yyyy/mm/dd/ (files for all radars). The BALTRAD PVOL archive uses yyyy/mm/dd/HH/MM/ (files for all radars). Although organizing by year first has some benefits, the fact that there is no radar directory, makes it hard for tools to find data for a specific radar, which is almost always part of the query.

A valid alternative is switching radar and year columns:
# source/format/yyyy/radar/

# original hdf5 vp files
baltrad/h5/2020/bejab/bejab_vp_20200101T000000Z_0x9.h5
baltrad/h5/2020/bejab/bejab_vp_20200101T000500Z_0x9.h5
baltrad/h5/2020/bejab/... # 60/5*24*365 = 105.120 files per directory
baltrad/h5/2020/bejab/bejab_vp_20201231T235500Z_0x9.h5

# tabular data products (zipped and unzipped)
baltrad/csv/2020/bejab/
baltrad/csv/2020/bejab/bejab_vpts_2020.csv.gz
baltrad/csv/2020/bejab/bejab_vpts_20200101.csv
baltrad/csv/2020/bejab/bejab_vpts_20200102.csv
baltrad/csv/2020/bejab/... # 365 files per directory
baltrad/csv/2020/bejab/bejab_vpts_20201231.csv

@adokter @bart1 @niconoe @CeciliaNilsson709 @baptischmi @Rafnuss Feedback welcome on the above proposal.

I think I slightly prefer # source/format/radar/yyyy/, but either way it will fit some users and not others. Tools will have to be adapted between the US structure and this anyway even if we put year first too.

No strong preference between the two proposals. I agree with all the design principles and think we should stick to one of the two proposals.
I'm not a fan of the approaches that use too many levels such as yyyy/mm/dd/HH/MM/: little added value, but add a lot of heavy path manipulations in tools, in my experience.

Thank you @peterdesmet
I'll support @adokter suggestion, although # source/format/radar/yyyy/ allow to quickly get the temporal coverage of a radar (which is not granted in Europe).
As mentioned by @niconoe , its good to have few levels only (as proposed here in contract to  yyyy/mm/dd/HH/MM/) for monthly csv tables, but as mentioned by @adokter maybe not for single h5-files, since having too many files slows the search and download of files.

@peterdesmet thanks for the explanation. For clarity I will first clarify what we use @ uva to deal with different projects and data. This is a somewhat similar problem to the pipeline issue. As we deal with both pvols and vps and both can have their own differences we have a 2 tiered system for pvols and three for vps.
The structure is:
project/pvol_settings for pvols and project/pvol_settings/vp_settings for vp. Each vp in this structure can be easily referred back to a pvol. We quite regularly end up exploring different settings for both constructing the pvols and vp. It might be worth considering that vp can be calculated with different settings. @berendwijers do you have anything to add to this?
On the order of year and radar I do prefer radar first as it allows for a quick overview of what time period a radar covers. Although it is hard to know how much of that is just the habit of always having it like that.

Thanks for the suggestions all!

@adokter: Therefore, for h5 I would add a deeper directory structure than for csv.

Agreed, that is a worry I had too.

@adokter My preference is a directory structure with date before radar. The reason is this better suits full-network analyses, in which you want to be able to efficiently grab all the available radar data for a given date or period.
vs
@baptischmi @bart1 ... quick overview of what time period a radar covers ...

Even though Europe probably lends itself less to full-network analyses than the US, I can see how efficiently sampling a time period will probably always be part of an analyses. An overview per radar can likely be provided as summary data, cf. the coverage.csv file we currently have. So I'd support putting temporal information first.

@adokter Why daily csv files and not monthly?

For CROW small files are better (since it's all done in browser); we currently use daily files. For bioRad we could produce monthly files over yearly files if that is more convenient? If we do, I would introduce month directories.

@bart1 We quite regularly end up exploring different settings for both constructing the pvols and vp.

That makes sense for UvA, but for the data repository I hope to provide a consensus view, where the best possible data is given for a certain source. We already add the complexity of choosing between different sources, I'd like to avoid adding the complexity of having to choose between different processing too.

Given that monthly files might be more convenient and we don't want too deep a file structure, we could use month directories for all? Or would you prefer to keep the day as part of the path?
# source/format/yyyy/mm/radar/

# original hdf5 vp files
baltrad/h5/2020/01/bejab/bejab_vp_20200101T000000Z_0x9.h5
baltrad/h5/2020/01/bejab/bejab_vp_20200101T000500Z_0x9.h5
baltrad/h5/2020/01/bejab/... # 60/5*24*31 = 8.556 files per directory
baltrad/h5/2020/01/bejab/bejab_vp_20200131T235500Z_0x9.h5 # last file for that month
baltrad/h5/2020/01/bewid/
baltrad/h5/2020/02/behel/

# tabular data products (zipped and unzipped)
baltrad/csv/2020/01/bejab/
baltrad/csv/2020/01/bejab/bejab_vpts_202001.csv.gz
baltrad/csv/2020/01/bejab/bejab_vpts_20200101.csv
baltrad/csv/2020/01/bejab/bejab_vpts_20200102.csv
baltrad/csv/2020/01/bejab/... # 31 files per directory
baltrad/csv/2020/01/bejab/bejab_vpts_20200131.csv

4. yyyy/mm/dd/radar
To more easily compare, here's the structure suggested by @adokter. It mimics the US structure (for the h5 data).
# source/format/yyyy/mm/dd/radar/

# original hdf5 vp files
baltrad/h5/2020/01/01/bejab/bejab_vp_20200101T000000Z_0x9.h5
baltrad/h5/2020/01/01/bejab/bejab_vp_20200101T000500Z_0x9.h5
baltrad/h5/2020/01/01/bejab/... # 60/5*24 = 288 files per directory
baltrad/h5/2020/01/01/bejab/bejab_vp_20200101T235500Z_0x9.h5 # last file for that day
baltrad/h5/2020/01/01/bewid/
baltrad/h5/2020/02/01/behel/

# tabular data products (zipped and unzipped)
baltrad/csv/2020/bejab/
baltrad/csv/2020/bejab/bejab_vpts_202001.csv.gz
baltrad/csv/2020/bejab/... # 12 zipped files per directory
baltrad/csv/2020/bejab/bejab_vpts_202012.csv.gz
baltrad/csv/2020/bejab/bejab_vpts_20200101.csv
baltrad/csv/2020/bejab/bejab_vpts_20200102.csv
baltrad/csv/2020/bejab/... # 365 unzipped files per directory
baltrad/csv/2020/bejab/bejab_vpts_20200131.csv

Personally I think that structure works quite well and is better than the month directories I suggested above.

# source/format/yyyy/mm/dd/radar/

# original hdf5 vp files
baltrad/h5/2020/01/01/bejab/bejab_vp_20200101T000000Z_0x9.h5
baltrad/h5/2020/01/01/bejab/bejab_vp_20200101T000500Z_0x9.h5
baltrad/h5/2020/01/01/bejab/... # 60/5*24 = 288 files per directory
baltrad/h5/2020/01/01/bejab/bejab_vp_20200101T235500Z_0x9.h5 # last file for that day
baltrad/h5/2020/01/01/bewid/
baltrad/h5/2020/02/01/behel/

# tabular data products (zipped and unzipped)
baltrad/csv/2020/bejab/
baltrad/csv/2020/bejab/bejab_vpts_202001.csv.gz
baltrad/csv/2020/bejab/... # 12 zipped files per directory
baltrad/csv/2020/bejab/bejab_vpts_202012.csv.gz
baltrad/csv/2020/bejab/bejab_vpts_20200101.csv
baltrad/csv/2020/bejab/bejab_vpts_20200102.csv
baltrad/csv/2020/bejab/... # 365 unzipped files per directory
baltrad/csv/2020/bejab/bejab_vpts_20200131.csv

I have been thinking a bit more about this
With this structure checking data availability for long time series in the original vp data gets slightly more difficult as many directories need to be searched. Especially as radars/data stream might be on and of some what frequent (leading to days missing). As most people might be accessing data through the csv this is maybe not so much of an issue. But for data quality checking I tend to first go by radar.
This is might be a wider argument for going for radar first as the first step for the analysis at least for European data is frequently doing a quality check, including checks if the quality changed over time. A structure with radar first might facilitate this.
Also I do imagine that people are more likely to to analysis with a limited geographic scope compared to a limited temporal scope. Here I'm more thinking about for example ecological consulting interested in a region. The people wanting to do analysis on a large geographic scope I guess also want a long time series and are likely more technically savy.

Thanks for the input @bart1, I agree with your arguments. The European data are not homogenous in quality or coverage like the US data, but very radar (country) dependent. So it makes sense to be able to select on radar up front. And as @CeciliaNilsson709 mentions, we'll likely require different functions anyway to query US vs EU data, so aligning is only partly useful. In any case, I don't think there is a right decision here, we just need to make one.
So, suggestion 5. 👍, 👎, feedback welcome.
5. radar/yyyy/mm/dd
# source/format/radar/yyyy/mm/dd/

# original hdf5 vp files: same as original but deeper hierarchy
baltrad/h5/bejab/2020/01/01/bejab_vp_20200101T000000Z_0x9.h5
baltrad/h5/bejab/2020/01/01/bejab_vp_20200101T000500Z_0x9.h5
baltrad/h5/bejab/2020/01/01/... # 60/5*24 = 288 files per directory
baltrad/h5/bejab/2020/01/01/bejab_vp_20200101T235500Z_0x9.h5
baltrad/h5/bewid/
baltrad/h5/behel/
baltrad/h5/...

# tabular data products (zipped and unzipped): same as original, but monthly zips
baltrad/csv/bejab/2020/
baltrad/csv/bejab/2020/bejab_vpts_202001.csv.gz
baltrad/csv/bejab/2020/... # 12 zipped files per directory
baltrad/csv/bejab/2020/bejab_vpts_202012.csv.gz
baltrad/csv/bejab/2020/bejab_vpts_20200101.csv
baltrad/csv/bejab/2020/bejab_vpts_20200102.csv
baltrad/csv/bejab/2020/... # 365 unzipped files per directory
baltrad/csv/bejab/2020/bejab_vpts_20200131.csv

From my point of view (of someone who would write code accessing the repository - but not explore it by hand), I'm not a huge fan of all those subdirectories (radar/yyyy/mm/dd), since they just repeat data that's already in the filename (bejab_vp_20200101T235500Z_0x9.h5) and add a lot of verbose and error-prone path manipulations.
Actually from that approach having almost all files in a single flat directory would be perfectly fine (since the filename provides all the metadata already). That would also circumvent the discussions about which subdirectory (radar of year) should be at the highest level.
Now:

I understand that this approach is probably too radical and less suited for human exploration of the repository
It's still okay to deal with all those subdirectories if that's your choice, just less handy :)
that brings another question: how will the repository will accessed: web interface? directly through S3? Both? That might impact what we do (in some cases, it might make sense to store the files flatly on the system, but to have the interface actually show it to the users in "virtual" subdirectories)

On our S3 server @ UvA I've steered away from a flat structure. I feel the same about the duplication of information in path and filename. However, I did notice quite a performance hit storing everything together in a single bucket when you want to, for example, provide an overview of unique radars, unique radar years, etc.

Thanks all for the input! There is a consensus on the structure suggested in https://github.com/enram/data-repository/issues/65#issuecomment-1103856289

source/format/radar/yyyy/mm/dd/ for hdf5
source/format/radar/yyyy/ for csv data products.


update librdb apt

Codecov Report
Patch and project coverage have no change.

Comparison is base (9490316) 40.79% compared to head (22bb012) 40.79%.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #650   +/-   ##
=======================================
  Coverage   40.79%   40.79%
=======================================
  Files          32       32
  Lines        3603     3603
=======================================
  Hits         1470     1470
  Misses       1994     1994
  Partials      139      139

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


when using cmd diff and adding output format html, statistics.html is not generated

when using cmd diff and adding output format html, statistics.html is not generated but it still being linked to in the generated index.html

I wasn't able to reproduce this problem with the latest CodeChecker release so I am closing this issue.


BooleanField default value error

When running makemigrations on Django 1.6 the following error occurs:
offline.Config.value: (1_6.W002) BooleanField does not have a default value.
HINT: Django 1.6 changed the default value of BooleanField from False to None. See https://docs.djangoproject.com/en/1.6/ref/models/fields/#booleanfield for more information.
This can be fixed by providing a default value to the BooleanField in models.py.
Unfortunately I don't have access to create a pull request.

Hi giantatwork, thanks for reporting this bug. This has been handled now. Please let me know if you still face some issues with the library.


Escape key add pointer-events: none to body when closing a dialog in a dropdown menu

The issue is that when the dialog is opened and I use the escape key to close the dialog it adds to the body pointer-events: none and the whole page become unusable.
I have seen multiple solutions but I cannot seem to find this. How can I prevent the dropdown to close, when the dialog is opened and I press the escape key.
This is the code when I am having the problem on.
Modal is a custom component built on top of the dialog modal.

This issue has been automatically closed because it received no activity for a while. If you think it was closed by accident, please leave a comment. Thank you.

why is this closed?

https://ui.shadcn.com/examples/playground
The bug is actually replicable in the playground


MEP001 - Integrating NiiVue as plotting backend for visualization requiring meshes and volumes

Describe the new feature or enhancement
Following a discussion with @larsoner, I am proposing this "MNE-Python Enhancement Proposal" for discussion. The implementation of this work would be driven and supported by a 2-year supplement to a current NIH-R01 (#1RF1MH133701-01; PI: Chris Rorden). The submission deadline for the supplement is November 30th.
The parent R01 is on the NiiVue project and its Python wrapper IPyNiiVue. A crude first version of the objectives of the supplement (these may shift as the writing of the proposal progresses) is:

Aim 1: Improve MNE-BIDS and EEGNET to support derivatives BIDS datasets of EEG/MEG source data.
Aim 2: Integrate NiiVue as a backend for MNE-Python plotting functions.
Aim 3: Integrate NiiVue as a Plotly Dash component for easy reuse in Python web dashboards.

Directly relevant to this MEP, is the aim 2. I provide the full list of three aims just because they may end up interacting with aim 2.
Describe your proposed implementation
In short, through this MEP, I would like to propose better integrating the NiiVue visualizer with MNE-Python for EEG/MEG processing by adding it to the supported backend for the plotting functions working with volumes and meshes. I think this viewer will have multiple advantages, the main one for me being its integration with web technologies, freeing MNE plotting functions from dependencies on C++ bindings (e.g., QT) which often causes installation issues.
Describe possible alternatives
NiiVue could be integrated using the already established plotting backend abstraction layer (mne/viz/backends/*.py) and the IPyNiiVue approach. Alternatively, it could also be first wrapped as a plotly component, and plotly support could be more thoroughly integrated. A small demo of Plotly integration was provided a while back https://mne.tools/mne-dash/. I think we pushed this concept much further with the Quality Control Review board we coded for PyLossless. I think these efforts can be synergized to offer much better dashboard capability in MNE-Python.
A measure of success would be the ability to easily plot (i.e., not with 20 lines of codes loading volumes, meshes, co-registering them, and all, but with something like a one-liner) source results in virtualized environments like the Google Colab. This would make teaching, training, and research with MNE-Python significantly easier.
Additional context
No response

A somewhat related issue would be https://github.com/mne-tools/mne-python/issues/11990, which I should maybe also convert to a MEP. FYI after some brief preliminary discussion with @christian-oreilly I suggested this "MEP" idea since it seems to be used successfully by other projects to help frame discussions of large enhancements/changes.

having a good web based method would be awesome, yet do we know if it will play well with transparencies with many objects. Think plot_alignment eg like here https://mne.tools/stable/auto_tutorials/forward/25_automated_coreg.html#sphx-glr-auto-tutorials-forward-25-automated-coreg-py
past attempts showed it's where the pain starts. vtk automatically infers what object is in front and how transparency should operate. What maybe happen here is that any object behind a tranparent surface becomes invisible or something along these lines.

Thanks for the feedback @agramfort ! I am not worried about transparency with NiiVue because the viewer has been developed explicitly to support co-registrations of meshes and volumes for neuroimaging applications. If you'd like to have a peak, here is the demo page for this viewer: https://niivue.github.io/niivue/
A few potentially relevant demos:

saving of a scene as plain HTML (note that the mesh there is partly transparent to show the voxelized ROI): https://niivue.github.io/niivue/features/save.html.html
also somewhat showing transparency (x-ray slider): https://niivue.github.io/niivue/features/clipplanes.html
overlaying of tracks and sliced MRI: https://niivue.github.io/niivue/features/tracts.html
shader options for meshes: https://niivue.github.io/niivue/features/meshes.html
multiple synchronized views: https://niivue.github.io/niivue/features/sync.mesh.html

Hopefully, these and the rest of the demos should make a good argument that transparency and co-registration are well-managed in NiiVue itself, so an MNE-Python wrapper should not struggle with these. Note that the full list of demos also shows a range of features that could eventually be useful to extend some of the MNE features. For example, I can think of the pesky error about intersecting meshes when doing BEM models. NiiVue has annotation capability (https://niivue.github.io/niivue/features/freesurfer.html) that could potentially be used to visualize and edit meshes and manually correct intersecting mesh issues. The NiiVue project is in heavy development at this time, with us being at the start of the 3-year R01 grant, so MNE-Python needs could also inform the features being developed in NiiVue itself.

ok I have faith now :)
On Sun, Oct 1, 2023 at 4:09 PM christian-oreilly @.***>
wrote:

Thanks for the feedback @agramfort https://github.com/agramfort ! I am
not worried about transparency with NiiVue because the viewer has been
developed explicitly to support co-registrations of meshes and volumes for
neuroimaging applications. If you'd like to have a peak, here is the demo
page for this viewer: https://niivue.github.io/niivue/
A few potentially relevant demos:

saving of a scene as plain HTML (note that the mesh there is partly
transparent to show the voxelized ROI):
https://niivue.github.io/niivue/features/save.html.html
also somewhat showing transparency (x-ray slider):
https://niivue.github.io/niivue/features/clipplanes.html
overlaying of tracks and sliced MRI:
https://niivue.github.io/niivue/features/tracts.html
shader options for meshes:
https://niivue.github.io/niivue/features/meshes.html
multiple synchronized views:
https://niivue.github.io/niivue/features/sync.mesh.html

Hopefully, these and the rest of the demos should make a good argument
that transparency and co-registration are well-managed in NiiVue itself, so
an MNE-Python wrapper should not struggle with these. Note that the full
list of demos also shows a range of features that could eventually be
useful to extend some of the MNE features. For example, I can think of the
pesky error about intersecting meshes when doing BEM models. NiiVue has
annotation capability (
https://niivue.github.io/niivue/features/freesurfer.html) that could
potentially be used to visualize and edit meshes and manually correct
intersecting mesh issues. The NiiVue project is in heavy development at
this time, with us being at the start of the 3-year R01 grant, so
MNE-Python needs could also inform the features being developed in NiiVue
itself.
—
Reply to this email directly, view it on GitHub
https://github.com/mne-tools/mne-python/issues/12030#issuecomment-1742093683,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABHKHFRUGDIYXVGJKCEMWTX5F2QXANCNFSM6AAAAAA5MTR3QA
.
You are receiving this because you were mentioned.Message ID:
@.***>

@christian-oreilly from a brief discussion with @agramfort and @drammock this seems reasonable to try, so if you can get funding to do it that would be great! If you want to try playing around you could open a WIP PR to have Niivue added as a renderer starting with AbstractRenderer, e.g.:
https://github.com/mne-tools/mne-python/blob/110947f35abc93fd88f4e6b72f9e573dc25b355f/mne/viz/backends/_pyvista.py#L199
The stuff about checkboxes and layouts etc. would hopefully go away with #11990 so don't worry about those bits

@larsoner If we are serious about the MEP structure for this, maybe we can take inspiration from the process outlined for PEP: https://peps.python.org/pep-0001/ Looks like a nice text describing the whole process. I can make sure to go over this and document a MEP process for MNE as part of this work. Maybe establish the MEP process in a separate ticket so that the MEP structure could be debated separately? I'll wait for this project to be funded and kicked off before opening such a ticket but I'll put it in my planning.

If we are serious about the MEP structure for this, maybe we can take inspiration from the process outlined for PEP: https://peps.python.org/pep-0001/ Looks like a nice text describing the whole process.

I don't think we need to take it so seriously yet. Really my idea behind calling this a "MEP" is to make it clear that the scope is much larger than a typical ENH-style issue. Maybe in the future these will be more controversial and we'll need to set up some decision scheme / process beyond our standard one, but I'm okay with waiting until that day comes (and maybe YAGNI!).

@larsoner Fair enough!

Just so everyone interested in this issue is also aware of a parallel effort, please check out https://github.com/mne-tools/mne-python/issues/12217, which focuses on stacked time series plots rather than meshes and volumes. Note that we're using HoloViews and Panel there rather than Plotly and Dash.  I'm not sure whether Dash can include HoloViews/Bokeh plots cleanly, but Panel can easily include Plotly plots, so there would be a way forward if people wanted to make a web app that included both the mesh and volume plots from this proposal and the stacked timeseries plots from #12217.