_pickle.UnpicklingError: could not find MARK - after #1 fixed

Torch 1.13.1
MacBook-Pro-Andrii:ukrainian-ai podarok$ accelerate launch  app.py
[11:08:12] WARNING  The following values were not passed to `accelerate launch` and had defaults used instead:       launch.py:890
                            `--num_cpu_threads_per_process` was set to `4` to improve out-of-box performance when
                    training on CPUs
                    To avoid this warning pass in values for each of the problematic parameters or run `accelerate
                    config`.
downloading uk/mykyta/vits-tts
Found ./model.pth. Skipping download...
Found ./config.yaml. Skipping download...
/Users/podarok/Library/Python/3.9/lib/python/site-packages/espnet2/gan_tts/vits/monotonic_align/__init__.py:19: UserWarning: Cython version is not available. Fallback to 'EXPERIMETAL' numba version. If you want to use the cython version, please build it as follows: `cd espnet2/gan_tts/vits/monotonic_align; python setup.py build_ext --inplace`
  warnings.warn(
Traceback (most recent call last):
  File "/private/var/ai/ukrainian-ai/app.py", line 9, in <module>
    tts = TTS(device="cpu") # can try gpu, mps
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/ukrainian_tts/tts.py", line 42, in __init__
    self.__setup_cache(cache_folder)
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/ukrainian_tts/tts.py", line 108, in __setup_cache
    self.synthesizer = Text2Speech(
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/espnet2/bin/tts_inference.py", line 92, in __init__
    model, train_args = TTSTask.build_model_from_file(
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/espnet2/tasks/abs_task.py", line 1833, in build_model_from_file
    model.load_state_dict(torch.load(model_file, map_location=device))
  File "/usr/local/lib/python3.9/site-packages/torch/serialization.py", line 795, in load
    return _legacy_load(opened_file, map_location, pickle_module, **pickle_load_args)
  File "/usr/local/lib/python3.9/site-packages/torch/serialization.py", line 1002, in _legacy_load
    magic_number = pickle_module.load(f, **pickle_load_args)
_pickle.UnpicklingError: could not find MARK

Same with torch 2.0.0
MacBook-Pro-Andrii:ukrainian-ai podarok$ accelerate launch  app.py
[11:04:28] WARNING  The following values were not passed to `accelerate launch` and had defaults used instead:       launch.py:890
                            `--num_cpu_threads_per_process` was set to `4` to improve out-of-box performance when
                    training on CPUs
                    To avoid this warning pass in values for each of the problematic parameters or run `accelerate
                    config`.
/Users/podarok/Library/Python/3.9/lib/python/site-packages/torch/_utils.py:776: UserWarning: TypedStorage is deprecated. It will be removed in the future and UntypedStorage will be the only storage class. This should only matter to you if you are using storages directly.  To access UntypedStorage directly, use tensor.untyped_storage() instead of tensor.storage()
  return self.fget.__get__(instance, owner)()
downloading uk/mykyta/vits-tts
Found ./model.pth. Skipping download...
Found ./config.yaml. Skipping download...
/Users/podarok/Library/Python/3.9/lib/python/site-packages/espnet2/gan_tts/vits/monotonic_align/__init__.py:19: UserWarning: Cython version is not available. Fallback to 'EXPERIMETAL' numba version. If you want to use the cython version, please build it as follows: `cd espnet2/gan_tts/vits/monotonic_align; python setup.py build_ext --inplace`
  warnings.warn(
Traceback (most recent call last):
  File "/private/var/ai/ukrainian-ai/app.py", line 9, in <module>
    tts = TTS(device="cpu") # can try gpu, mps
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/ukrainian_tts/tts.py", line 42, in __init__
    self.__setup_cache(cache_folder)
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/ukrainian_tts/tts.py", line 108, in __setup_cache
    self.synthesizer = Text2Speech(
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/espnet2/bin/tts_inference.py", line 92, in __init__
    model, train_args = TTSTask.build_model_from_file(
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/espnet2/tasks/abs_task.py", line 1833, in build_model_from_file
    model.load_state_dict(torch.load(model_file, map_location=device))
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/torch/serialization.py", line 815, in load
    return _legacy_load(opened_file, map_location, pickle_module, **pickle_load_args)
  File "/Users/podarok/Library/Python/3.9/lib/python/site-packages/torch/serialization.py", line 1033, in _legacy_load
    magic_number = pickle_module.load(f, **pickle_load_args)
_pickle.UnpicklingError: could not find MARK

Seems like some other dependencies also should be used older.

same with latest code


Add social links

Implements #25. Added the social media links to pelicanconf.py

great work on this @sgregg85!
Just a note and I may be wrong on this one. but you usually only want to commit the changes relevant to the PR. You can do so with committing on the one file.
git commit <insert file path>
OR
you can do an interactive commit and only commit the lines necessary
git commit -p for patch
Since this change has been thoroughly discussed in the chat. I'm cool with it.

Ill try that next time. I only added pelicanconf.py to the staging area
using 'git add pelicanconf.py' before I did git commit though so I was
surprised when I saw all those changes in the PR. I'm still getting used to
git so I'm thankful when you guys point out something I'm doing wrong.
On 9:32AM, Wed, Oct 19, 2016 Jay Miller<EMAIL_ADDRESS>wrote:

great work on this @sgregg85 https://github.com/sgregg85!
Just a note and I may be wrong on this one. but you usually only want to
commit the changes relevant to the PR. You can do so with committing on the
one file.
git commit
OR
you can do an interactive commit and only commit the lines necessary
git commit -p for patch
Since this change has been thoroughly discussed in the chat. I'm cool with
it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Python-Monthly/Python-Monthly-Website/pull/26#issuecomment-254813235,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIfj3gqf9X9_Jn1MV_IqKf6wanlG3QEgks5q1hvsgaJpZM4KabFe
.

I think the problem is that you didn't have an up to date master branch before creating your new feature branch. (I could be wrong)
When you are ready to make a new feature branch, you will want to do this on your local repo:
git checkout master
git pull
git checkout -b <feature_branch_name_here>

I think you may be right @archangelic. Now that I think about it, I was not going back to master before creating a new branch.

Going to recreate this branch since I made an error when creating it


Delegate and revoke should update the vote counts if needed

Currently, delegate and remove delegation are not modifying the ballot[ballotOption].voteCount according to the weight and votersData[voter].voted attribute. It should update it and keep an up-to-date view of voteCount(s).

Nope, let's remove it.


Build fails right away with no Go source files in the project directory

The following project builds fine in native Go but fails right away when building with Gradle.
To reproduce ...
$ mkdir -p $GOPATH/src/github.com/tendermint
$ git clone https://github.com/tendermint/tendermint $GOPATH/src/github.com/tendermint/tendermint
$ cd $GOPATH/src/github.com/tendermint
$ git checkout develop
$ git pull
$ glide install
$ go install ./cmd/tendermint
$ gradle --no-daemon build
:prepare
Found go 1.8 in C:\opt\go\bin\go.exe, use it.
:resolveBuildDependencies
:installBuildDependencies
:build
can't load package: package .: no buildable Go source files in C:\home\projects\go\src\github.com\tendermint\tendermint
:build FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':build'.
> Build failed due to non-zero return code of go process: 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Following my simple Gradle build file ...
plugins {
    id 'com.github.blindpirate.gogradle' version '0.2.4'
}

golang {
    packagePath = 'github.com/tendermint/tendermint' // path of project to be built
}

Now, it is true that there are no Go sources directly under directory $GOPATH/src/github.com/tendermint/tendermint, but should this fail the build?
Please advise. Thanks.

Yes, that's expected behavior.
Currently, gradle build is equivalent to run go build -o <outputFile> with automatically-generated GOPATH in the root directory of project.
I' still thinking about if it is appropriate to fail the build when no go source file exist in project root. Assume that it's not appropriate, what's your expectations?

Thanks for the quick response.
I would argue that a clean project layout does not necessarily has to have any sources in the root-project directory, but in the package directories instead.
In this particular case, I believe it makes sense to set the project property goup to value github.com/tendermint/tendermint and golang.packagePath to ./cmd/tendermint. This would allow to emulate the following Go command ...
$ cd $GOPATH/src/github.com/tendermint/tendermint
$ go build ./cmd/tendermint

With Gradle being a DSL, that's what I would expect as a user. How can plugin gogradle being configured to support this?
Thoughts/ concerns?

First of all, Gogradle does not conform Golang's GOPATH convention, and it will try to generate a project-scoped GOPATH for each project in project root.
When it comes to the issue we are discussing, I'm considering adding (but haven't implemented yet) golang.buildTarget to DSL like this:
golang {
    packagePath='github.com/tendermint/tendermint'
    buildTarget='cmd/tendermint'
}

Does it make sense?

Well, this certainly could work, however would not really be in compliance with the Gradle DSL.
Here is something you might want to look into however ...
I'm also evaluating Gradle plugin github.com/echocat/gradle-golang-plugin which has a similar property project.golang.packageName that is equivalent to your property project.golang.packagePath. There, no buildTarget is needed, it seems to be capable of discovering the sources. It also allows to filter on the sources to be processed via property project.golang.build.includes.
Also, one of the key components of the Gradle DSL is a SourceSet. Shouldn't a Golang plugin support configuration of a SourceDirectorySet named project.sourceSets.main.golang? Maybe you already do, I just couldn't find this documented anywhere...

Thanks for your information.
It's my fault to have it failed and I will look into that project to make Gogradle easier to use. However, what I want golang.buildTarget to be is similar to project.golang.build.includes of github.com/echocat/gradle-golang-plugin.
As for SourceSet, I don't think it's necessary to implement it in Golang plugin since Golang's source code structure convention is so different from Java. As said in SourceSet:

A SourceSet represents a logical group of Java source and resources.

Actually, the main/java/src structure convention is derived from Maven, and I can't make everyone put their code into <projectRoot>/src/main/golang

You are right that the physical layout src/main/java was introduced by Maven, that was a convention they introduced. The by-convention approach Maven introduced is actually one thing they got right.
However, a SourceDirectorySet named project.sourceSets.main.golang and project.sourceSets.test.golang would be logical constructs that can be configured to include sources that don't follow any conventions and it would default to something completely different than src/main/golang in the case of Golang. Basically, per default, project.sourceSets.main.golang could contain all files under the project directory with extension .go while project.sourceSets.test.golang contains files *_test.go.
Please see chapter Building native software from the Gradle user guide. It seem that the LanguageSourceSets there follow a slightly different model, you would have project.sources.golang instead of project.sourceSets.main.golang.
In the spirit of the DSL, you want to follow the same approach for Golang with your Gradle plugin as other plugins do for C, C++, Assembly, etc...

Thanks.
That's a brilliant advice, I will consider it.

Cool. Please update the ticket when you have something that I could test. Thanks for the quick turnaround.

Sure. Thanks.

@tglaeser I have implement subpackage build in a slightly different way, please see gogradle/tendermint for more details.

I got a clone of gogradle/tendermint, however the tasks fail with the following error ...
:resolveBuildDependencies FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':resolveBuildDependencies'.
> Cannot resolve dependency:GitNotationDependency{name='gopkg.in/yaml.v2', commit='NEWEST_COMMIT', urls='[https://gopkg.in/yaml.v2]'}

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Please advise.

Could you rerun it with --stacktrace and paste the stack trace of the exception?

Sure, here is the Caused by: part for the exception above ...
java.lang.IllegalStateException: Cannot found any files in $GRADLE_USER_HOME/go/gopath/gopkg.in/yaml.v2/.git/refs/heads
        at com.github.blindpirate.gogradle.util.Assert.isTrue(Assert.java:13)
        at com.github.blindpirate.gogradle.util.Assert.isNotEmpty(Assert.java:37)
        at com.github.blindpirate.gogradle.vcs.git.GitClientAccessor.getDefaultBranch(GitClientAccessor.java:65)
        at com.github.blindpirate.gogradle.vcs.GitMercurialDependencyManager.updateRepository(GitMercurialDependencyManager.java:122)
        at com.github.blindpirate.gogradle.core.dependency.resolve.AbstractVcsDependencyManager.resolveRepository(AbstractVcsDependencyManager.java:176)
        at com.github.blindpirate.gogradle.core.dependency.resolve.AbstractVcsDependencyManager.resolveVcs(AbstractVcsDependencyManager.java:97)
        at com.github.blindpirate.gogradle.core.dependency.resolve.AbstractVcsDependencyManager.lambda$doResolve$0(AbstractVcsDependencyManager.java:59)
        at com.github.blindpirate.gogradle.core.cache.DefaultGlobalCacheManager.runWithGlobalCacheLock(DefaultGlobalCacheManager.java:131)
        at com.github.blindpirate.gogradle.core.dependency.resolve.AbstractVcsDependencyManager.doResolve(AbstractVcsDependencyManager.java:57)

After purging directory GRADLE_USER_HOME/go the build finished successfully.
This triggers couple questions on my side.

When building with Go directly, dependencies are cached in directory vendor under the project-root directory. Shouldn't Gogradle follow the same pattern?
Executing gradle dependencies is significantly slower compared to executing glide install ./cmd/tendermint. This is true not only for the very first run but for subsequent executions as well.

In fact, if I run glide install ./cmd/tendermint first and then gradle dependencies, the build fails with another exception ...
$ gradle dependencies
:prepare
Found go 1.8 in C:\opt\go\bin\go.exe, use it.
:resolveBuildDependencies FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':resolveBuildDependencies'.
> First-level package github.com/davecgh/go-spew conflict!

You should be able to reproduce this.

The answer to the first question is that I can't distinguish build and test separately. Gogradle will create a directory named .gogradle with separated project-scoped GOPATH for build and test. However, vendor generation is still supported as described here. I have to say I recommend against vendor mechanism, which resembles jars in lib or libs in ant era.
The second problem is caused by a bug fixed in 0.4.1. Now the latest version is 0.4.2 and there are some breaking changes that gradlew dependencies is replaced by gradlew goDependencies or gradlew gD. I have updated gogradle/tendermint. Sorry for the inconvenience.

Thanks Bo. It seems that performance improved quite a bit with version 0.4.2. I also was able to verify that the previous problems are all resolved. Thanks again for the quick turnaround. Feel free to close the ticket.
If I may, I would like to provide a little more feedback on the recent changes to the plugin, especially the task naming. If you are open to the feedback then please let me know how you would like me to communicate on this with you. Cheers, Thomas

Sure, thank you for your feedbacks. I have created a chanel named #gogradle in freenode, please feel free to communicate with me there. BTW, I'm at GMT+8.


XMLHttpRequest (CORS) exception on every flutter web project

Steps to Reproduce

Call any API in flutter web they all will give XMLHttpRequest error. Only way to deal with it is by flagging the security of chrome flutter run -d chrome --web-browser-flag "--disable-web-security" but this is not the solution and it doesn't works in release.
Adding CORS to headers also doesn't works. Same API has to be called by some middleware api then it works but upon directly calling the API to flutter web it always gives XMLHttpRequest error.
Even after building flutter web and hosting it somewhere, XMLHttpRequest error doesn't goes away.
Expected results:
Api request should be successful.
Actual results:
Access to XMLHttpRequest at 'api url here' from origin 'http://localhost:49303' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Logs
[        ] 💪 Running with sound null safety 💪
[   +1 ms] 🔥  To hot restart changes while running, press "r" or "R".
[        ] For a more detailed help message, press "h". To quit, press "q".
[        ] An Observatory debugger and profiler on Chrome is available at: http://<IP_ADDRESS>:50027/CizzoLhRCnQ=
[+1573 ms] null
[ +112 ms] The Flutter DevTools debugger and profiler on Chrome is available at: http://<IP_ADDRESS>:9102?uri=http://<IP_ADDRESS>:50027/CizzoLhRCnQ=
[+1808 ms] XMLHttpRequest error.

@ahmadhassan7
Looking at the error, check this comment for your reference and based on it, I'll close it.  If you disagree, write in comments and I'll reopen it.

I've checked tons of stackoverflow questions and issues regarding this.
Same 3rd party API's work directly in web frameworks. I've tried in vue.js and svelte.js they work fine so that shows its not some fundamental limitation of the web instead its just on flutter web.

Yes, the issue is with flutter web. if it is server error than why we are getting same error by calling google places Api?

Reopening this for further investigation.

I am going ahead and labeling this issue for team's thoughts on expected behavior.
For team's reference: another issue with similar report: https://github.com/flutter/flutter/issues/120822

/cc @yjbanov for thoughts on this issue.

Is it an XHR that you are creating yourself? If so, can you please provide a sample that we could take a look at?
Or does this happen in every Flutter app, even in the counter app? All our tests that use flutter run -d chrome are currently passing, and it's working for me right now. Is there anything special about your environment?

Yes XHR and it only comes upon consuming 3rd party API's in Flutter web app. All other project which doesn't uses any sort of API works flawless.
My environment is clean, nothing added/edited. I'm using Flutter Version 3.3.10 arm64 Architecture.
One of the codes I was testing on is attached I'm calling GoDaddy's API in it and similarly I'd ran tests on Pexels and Stripe API's too all resulting the same.
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;

class DomainAvailability {
  final String domainName;
  final bool isAvailable;

  DomainAvailability({required this.domainName, required this.isAvailable});
}

class DomainAvailabilityService {
  static const String _apiUrl =
      'https://api.ote-godaddy.com/v1/domains/available';

  Future<DomainAvailability> checkAvailability(String domainName) async {
    final url = '$_apiUrl?domain=$domainName';
    final response = await http.get(Uri.parse(url), headers: {
      'Authorization':
          'sso-key 3mM44UcgfE8M7d_SGrAhFrzGoTDkPKR3jLeWa:Sj2bjsqAWKsji28w8JEdZd'
    });

    if (response.statusCode == 200) {
      final Map<String, dynamic> data = jsonDecode(response.body);
      return DomainAvailability(
          domainName: domainName, isAvailable: data['available']);
    } else {
      throw Exception('Failed to check domain availability');
    }
  }
}

class MainScreen extends StatefulWidget {
  const MainScreen({super.key});

  @override
  MainScreenState createState() => MainScreenState();
}

class MainScreenState extends State<MainScreen> {
  final _domainController = TextEditingController();
  bool _isLoading = false;
  DomainAvailability? _domainAvailability;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('Check Domain Availability')),
      body: Padding(
        padding: const EdgeInsets.all(16.0),
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.start,
          children: [
            TextField(
              controller: _domainController,
              decoration: const InputDecoration(labelText: 'Enter domain name'),
            ),
            const SizedBox(height: 16),
            _isLoading
                ? const Center(child: CircularProgressIndicator())
                : ElevatedButton(
                    onPressed: _checkAvailability,
                    child: const Text('Check availability'),
                  ),
            if (_domainAvailability != null)
              Column(
                crossAxisAlignment: CrossAxisAlignment.start,
                children: [
                  const SizedBox(height: 16),
                  Text('Domain name: ${_domainAvailability!.domainName}'),
                  const SizedBox(height: 16),
                  Text(
                      'Is available: ${_domainAvailability!.isAvailable ? 'yes' : 'no'}'),
                ],
              ),
          ],
        ),
      ),
    );
  }

  void _checkAvailability() async {
    setState(() {
      _isLoading = true;
    });

    final domainName = _domainController.text;
    final domainAvailability =
        await DomainAvailabilityService().checkAvailability(domainName);

    setState(() {
      _isLoading = false;
      _domainAvailability = domainAvailability;
    });
  }

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

@ahmadhassan7 you claim the following:

Same 3rd party API's work directly in web frameworks. I've tried them myself in vue.js and svelte.js they work fine so that shows its not some fundamental limitation of the web instead its just on flutter web.

Can you give me an example of a 3rd party API that worked for you in JS, but doesn't work in Flutter Web?

Yes, the issue is with flutter web. if it is server error than why we are getting same error by calling google places Api?

@mohsinnaqvi606 can you provide any code of how you're using the Google Places API that reproduces this CORS issue?

PS: Remember you may need to use withCredentials in the client from package:http for your Authorization header to be sent with your request.


Provide HOC for accessing instance members

I love recompose and I find myself using it to an extent that I practically never ever write class based component anymore. There is just one situation, where I still have to use class components (or clunky lifecycle HOCs): When I need to make use of instance members.
use cases for instance members:

storing refs
synchronous/instantaneous state updates (when I need to keep track of some state that is read by non-rendering code such as event handlers)

I'm wondering why recompose does not offer a HOC for this purpose? Maybe I'm overlooking some solution that's more simple?
After I found myself having to store stuff in instance members quite a couple of times, I implemented my own HOC factory function accessInstanceMember based on recompose. Look at its code below to get a better understanding of what it does. Of course, I'd be happy to submit this as a PR in case you would consider it useful.
import { Component } from 'react'
import { setDisplayName, wrapDisplayName, createEagerFactory } from 'recompose'

// Injects props for getting and setting a value stored as an instance member. Useful when
// setting a value does not need to trigger a re-render and when that value update should be
// instantaneous instead of batched.
const accessInstanceMember = (
  getterName,
  setterName,
  initialValue
) => BaseComponent => {
  const factory = createEagerFactory(BaseComponent)
  class AccessInstanceMember extends Component {
    value = typeof initialValue === 'function' ? initialValue(this.props) : initialValue

    getValue = () => this.value

    setValue = (newValue) => {
      this.value = newValue
    }

    render() {
      return factory({
        ...this.props,
        [getterName]: this.getValue,
        [setterName]: this.setValue,
      })
    }
  }

  if (process.env.NODE_ENV !== 'production') {
    return setDisplayName(wrapDisplayName(BaseComponent, 'accessInstanceMember'))(
      AccessInstanceMember
    )
  }
  return AccessInstanceMember
}

export default accessInstanceMember

withHandlers can be used for this purposes as an example https://github.com/acdlite/recompose/blob/master/types/flow-example/src/ItemsAnimator.js#L85
BTW it's not recommended and not a good practice ;-) as in the future this can fail.
(seems like in a not far future holding state in instances will be considered as a bad practice, as it prevents some future react optimisations)

Ah indeed, using withHandlers is a better approach. Funny, how sometimes I just don't see the simple way... Now it seems so obvious.
Thank you!

I'm sorry I don't see how this can be used to call an instance method from a parent component, maybe could you post some snippet?


[WIP] Tim demo new features

I don't want to merge this, but will pull some fixes out of here.

I have pulled the mongo render fix out of this PR.
https://github.com/Kitware/minerva/pull/294

Other changes from here I'd like to merge, in the coming days.  I'll try to keep each of these in very small and easy to QA PRs so we don't have PRs hanging around.

update geojs to 0.7.0
fix the wms legend
fix the layer movement in the layers panel
fix for datasets panel collapse/expand when layers order change (or a better fix than the temp one here)
csv widget
opacity addition for non-wms layers
change the response to a job success status event from re-rendering the entire dataset panel to adding a single dataset to the dataset collection

@mgrauer why don't we close it and once you have it updated, you can open it again.

Finally got them all into PRs and issues.  Closing.

Kudos @mgrauer :clap:


Button type button triggers validation when shouldValidate is set to onBlur

When a <button type="button" /> is included inside of the form with the option of shouldValidate: 'onBlur', whenever that button is clicked, validation is run. My expectation is that this would only be the case for <button type="submit" />. It causes weird behaviors because a button with an action unrelated to validation will trigger validation and I'll see errors pop up all over the screen.
For a replication, I've forked your remix example and added a button at the top of the login form. https://codesandbox.io/p/sandbox/throbbing-bush-f1o7mm
Click the "Click me to go kaboom" button and you'll see validation triggered and error messages everywhere.

Hi @baker-travis. Thanks for preparing a sandbox. There was indeed a bug that trigger validation when either a submit or non-submit button is unfocused. It should now be fixed on v0.6.2. Can you check if the newer version resolves your issue?

Yep, everything works now as expected. Thanks @edmundhung!


Ansible cleanup

Use girder role from ansible galaxy
Split playbook up into multiple taskbooks
Move ansible stuff per-box-type into own directory
Get rid of unsupported and unused xenial playbook

Thanks for the help @danlamanna

Minus 2.2k lines! 🔪  Have the Resonant Lab deploy instructions changed or should I be able to follow what's in the current Readme to test?

I think the README is still valid - I strove to only change the internals of the playbooks themselves.

@jeffbaumes could you review this branch?

@jeffbaumes, could you try one more time?

FYI, the test failure is a Python style failure that has been fixed upstream already, so it should not hold this back from being merged if it's ok otherwise.

@jeffbaumes take another look please.


fix aws region not specfied

aws region should be explicitly specified as implicit resolution will fail when hosted outside of AWS or potentially provide an undesired value

Thank you for the contribution!


Whatsdue: fixed to work with the new JAC system

Recently (semester 2 2024) UQ has changed their ECP management from ECPS to JAC. This means that many of the ECP related functions stopped working (as they were based off a old service started in 2006).
This PR rewrites most of these to work with the new system, letting whatsdue work again. There are some slight stylistic changes made to the output, due to certain links no longer being available, and the due dates for many courses actually being descriptions. ECPs from before sem 2 2024 will no longer be able to be processed, as these should no longer be needed.
There might also be some future potential to include hurdle warnings in whatsdue, as these are in the current ECP assessment tables, but are ignored in this PR.
Please  review harshly, as I have done a somewhat quick job at this.

Thanks for catching all of that. I completely forgot about the doc strings.


chore(main): release 1.3.3

:robot: I have created a release beep boop
1.3.3 (2023-02-06)
Reverts

回滚故障代码，新布局制作中... (346e437)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/School-of-Website-Engineering/TinyWaste/releases/tag/v1.3.3 :sunflower:


Integrate academic references into Climate Maps page

Right now there's no link to the standard format academic reference for the Climate Maps page; stuff just kinda is there.
One possibility is to have the active layer show the academic reference below it.  We could potentially extract out the academic references so we're not duplicating the HTML hither and thither.

Yeah, I'm not sure how to cram the references in there. We might consider just adding a bullet to the top that says something like "for academic references, load a report for a location you are interested in" but then again it wasn't long ago I was ready to cull the entire "Maps" section.


merge from arlac77/template-github,arlac77/template-kronos-module

package.json

chore(package): add ^3.8.0 remove ^3.7.1 (devDependencies.ava)

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


HtmlFrame doesn't respect height value

I'm working on an email application, using HtmlFrame in order to display emails. My gui is based around a tab system, using ttk.Notebook. I NEED every tab to stay the same size, because otherwise the whole window resizes. When I don't set the height= attribute, it resizes the tab. When I do set the height attribute, it ignores it, and resizes the tab.

Thanks for filing a bug report on this. Could you please provide a
simplified sample code that experiences this issue?
On Sun, Jan 14, 2024 at 10:26 AM Neil-Ciciglycerin @.***>
wrote:

I'm working on an email application, using HtmlFrame in order to display
emails. My gui is based around a tab system, using ttk.Notebook. I NEED
every tab to stay the same size, because otherwise the whole window
resizes. When I don't set the height= attribute, it resizes the tab. When
I do set the height attribute, it ignores it, and resizes the tab.
—
Reply to this email directly, view it on GitHub
https://github.com/Andereoo/TkinterWeb/issues/92, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMA4CXV4ZPK4NDTRAKOAVBDYOP2LNAVCNFSM6AAAAABB2FTE7WVHI2DSMVQWIX3LMV43ASLTON2WKOZSGA4DANZXGMYTGNA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

I was programming this application on a raspberry pi, which has died since the creation of my pull request. I would love to send simplified sample code, but I can't.

I'm sorry to hear that. It's hard to tell what the issue is from the
description, but I suspect setting the height on the notebook and/or its
parent and setting pack/grid_propagate(0) would probably fix it.
On Tue, Jan 16, 2024, 9:49 p.m. Neil-Ciciglycerin @.***>
wrote:

I was programming this application on a raspberry pi, which has died since
the creation of my pull request. I would love to send simplified sample
code, but I can't.
—
Reply to this email directly, view it on GitHub
https://github.com/Andereoo/TkinterWeb/issues/92#issuecomment-1894851181,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMA4CXUMUE3CSQHS46EHU73YO434BAVCNFSM6AAAAABB2FTE7WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOJUHA2TCMJYGE
.
You are receiving this because you commented.Message ID:
@.***>

Thank you!

Thanks for the advice! I'm restarting the project on a Win10 Machine

Of course! Good luck :)
On Wed, Jan 24, 2024, 1:12 p.m. Neil-Ciciglycerin @.***>
wrote:

Thanks for the advice! I'm restarting the project on a Win10 Machine
—
Reply to this email directly, view it on GitHub
https://github.com/Andereoo/TkinterWeb/issues/92#issuecomment-1908671183,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMA4CXXSQSJV6FAQFUI7H2TYQFFHJAVCNFSM6AAAAABB2FTE7WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBYGY3TCMJYGM
.
You are receiving this because you commented.Message ID:
@.***>

The Pi now works! And your solution works! Thanks a lot!


Expand GeoLocation Data - Umujyi wa Kigali province, Gasabo district

https://github.com/Gizra/ihangane/issues/2953

No code was added, so review is not required. Will MWG.


Accessibility: Adding "aria-label" Attribute to  Tag Contained in

Feature request type
Enhance component
Component name
MudMenu
Is your feature request related to a problem?
To be accessible for people with disabilities, in accordance to ARIA, all website buttons having no text (just icons instead) should contain aria-label="" to help reading machines understand, what kind of button they are.
"MudMenu" components (https://mudblazor.com/api/menu) create a <button> HTML Tag.  AFAIK, it is not possible for me to access this <button> from within the MudBlazor code. However, there should be a way to add aria-label="" to that <button>.

Current situation:
This MudBlazor Code...
<MudMenu<EMAIL_ADDRESS><EMAIL_ADDRESS>Label="@_userSettingsDto?.UserName" Variant="Variant.Filled">
	<MudMenuItem Href="Item1">Item 1</MudMenuItem>
	<MudMenuItem Href="Item2">Item 2</MudMenuItem>
	<MudMenuItem OnClick="@ShowAboutDialog">Item 3</MudMenuItem>
</MudMenu>

...creates this HTML Code:

   <button type="button" class="mud-button-root mud-button mud-button-filled mud-button-filled-default mud-button-filled-size-medium mud-ripple" _bl_4="">
   ...
   </button>

Notce that nested <button> tag contains no aria-label="" attribute. This is problem.
Describe the solution you'd like
For a website to be accessible for people with disabilities, basically we need the mentioned aria-label="" within the generated <button> tag.
An example of HTML Code that could be generated by MudBlazor:

   <button type="button" class="mud-button-root mud-button mud-button-filled mud-button-filled-default mud-button-filled-size-medium mud-ripple" aria-label="custom label" _bl_4="">
   ...
   </button>

Notice the aria-label="custom label" attribute within the <button> tag.
Have you seen this feature anywhere else?
<button aria-label="Mainmenu" type="button" class="mud-button-root mud-icon-button mud-inherit-text hover:mud-inherit-hover mud-ripple mud-ripple-icon mud-icon-button-edge-start" _bl_3="">
...
</button>

Describe alternatives you've considered
No response
Pull Request

[X] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Yes this needs fixing also for reference see https://github.com/MudBlazor/MudBlazor/pull/5719
The labeling in that PR is wrong but no reponse ATM.
Do you think the aria-label could copy Label or do you think they should be seperate.
In you example I see you set the username to the Label.
Should the screen reader read this?

Hello Mike,
Thanks for looking after this. Here are my answers:
"Do you think the aria-label could copy Label or do you think they should be seperate." - IMO, "aria-label" and "label" are two different things. They can often have the same content, but I do not think, it will always be the case. A developer might want to make "aria-label" more descriptive (2-3 words) for people who need assistive reading than a "label" (1 word).
However, having "arial-label" and "label" identical, would still be better than nothing.
"In you example I see you set the username to the Label. Should the screen reader read this?" - Most likely yes. I will start with optimizing this part for a screen reader in couple of days. I will be able to answer this a bit later.

Ok so sounds like we need a separate aria-label that need to be definable I guess.
We could default it to label if not set.
There are hardcoded aria-label in the library but I think for menu needs to be configurable.

Yes to be clear when I said area-label configurable I meant expose it as string AriaLabel
If its NullOrEmpty load it with Label
Because in the case of menu I don't think it can be hard coded.
Even from a resource file wouldn't work because each menu is different.
Is that you understanding?

Yes Mike,
that is exactly my understanding.
Thank you so far for your attention and support.


When navigating btw pages, multiple forms defaulting to show first child

Description
If you have multiple forms on a page, the default landing behavior is wonky. It might land on the list of forms at first, but as you navigate the default seems to be the first child of the array of forms. Let's look at the logic of how these multiple forms get rendered in the form view.
Steps to reproduce
Start up the grande project - https://github.com/tinacms/tina-starter-grande
Open the sidebar and navigate to other pages.
Check out the initial view of a form when you land on a page.
Expected result
When there are multiple forms and you navigate to to a new page with the sidebar open, the list of the multiple forms should show as the default.
Actual result
It seems like the first child in the list is rendering.
Environment
Firefox + MacOS
"gatsby-tinacms-git": "^0.2.6-alpha.0",
"gatsby-tinacms-json": "^0.5.1-alpha.0",
"gatsby-tinacms-remark": "^0.3.6-alpha.0",

The problem is that the number of forms registered with Tina doesn't happen all at once. SoFormsView mounts and at first it thinks it has no forms, then it thinks it has one, then it finally knows it has 2 etc. So essentially this useSubscribable will set the form id when it thinks it has one form and won't update it again even if the component registered more forms down the line.
 useSubscribable(cms.forms, () => {
    if (cms.forms.all().length === 1) {
      setActiveFormId(cms.forms.all()[0].id)
    }
  })

If we add this reset to null, it will fix the initial problem...
 useSubscribable(cms.forms, () => {
    if (cms.forms.all().length === 1) {
      setActiveFormId(cms.forms.all()[0].id)
    } else {
      setActiveFormId(null)
    }
  })

The problem we run into now is that a flash of the individual form happens when the component only registers one component, but it finally lands on the list. Thoughts on how we could mitigate this? I'll make a pr so folks can see the render flash i'm talking about


Error for executing Abnormal

Any ideas?

I just tested the most recent release in 3.4 3.5 and 3.6 and they all still work correctly for me.
If you could share a screenshot or paste what your system console shows after this error that would be helpful.
You could also use the Use Alternative Drawing option in the addon preferences.

hey cody thanks for getting back just going to shut this ticket. Ended up working after i did some reinstalls


Automated Snapshots

Problem Statement
Ideally I could set up a snapshot schedule within CrateDB so that every night a backup would occur
Possible Solutions
https://github.com/quartz-scheduler/quartz
Considered Alternatives
Currently looking at running a Kubernetes Cronjob to start a container with crash to run CREATE SNAPSHOT backups.${date +%F} ALL WITH (wait_for_completion=true);

Automatic snapshot management is part of CrateDB Cloud and CrateDB Edge (for Kubernetes) already. There are currently no plans to integrate this into CrateDB itself.


auto archive or archive every X hours?

Hi and thank you for all your amazing work!
I may have missed it but can one define to auto archive once the task is marked is done or maybe auto archive every X hours?
thx so much!!
Z

I second this request, I was expecting the archive function to run the instant I complete a task. That would be ideal in my situation. The plugin you've created is fantastic however and still saves me a lot of time.

Yes please :)

Hello,
There is already a command called Toggle task done and archive it. Once you assign it to a shortcut (like ctrl + Enter) this gets you 80% there.

Yes, but it doesn't work against a task being completed with from a ```tasks query on a different file

Yes, but it doesn't work against a task being completed with from a ```tasks query on a different file

This would likely require a change in the obsidian-tasks plugin. It might take significant effort, so marking this as maybe/some day

I found an acceptable way around this.
There is a plugin based on chron call obsidian-chron. You can set it via chron timing to run a command. I have mine running every 15 minutes (*/15 * * * *) running the obsidian-task-archiver command.
https://github.com/cdloh/obsidian-cron

I found an acceptable way around this.
There is a plugin based on chron call obsidian-chron. You can set it via chron timing to run a command. I have mine running every 15 minutes (*/15 * * * *) running the Archive tasks in this file command.
https://github.com/cdloh/obsidian-cron

Hi FearTheBadger,
Do you or someone knows how to make obsidian-cron to run the command only on a specific file? I'd like to run it in my Tasks file but not in all the files that contain tasks. I'm afraid the lack of a field in obsidian-cron to fill with the file in which to run the command would do that...

There is supposedly an API endpoint on obsidian-chron. But I can't get it to register anything useful, that would solve your problem.