[ERROR] Failed to install SharedProjectTimesheetsBundle database: Migrations configuration key "name" does not exist.

Hi,
with the latest update to 1.15.1 (stable) the install of the plugin is not working anymore:
`bash-5.1$ git clone https://github.com/dexterity42/SharedProjectTimesheetsBundle.git
Cloning into 'SharedProjectTimesheetsBundle'...
remote: Enumerating objects: 196, done.
remote: Counting objects: 100% (196/196), done.
remote: Compressing objects: 100% (128/128), done.
remote: Total 196 (delta 83), reused 172 (delta 62), pack-reused 0
Receiving objects: 100% (196/196), 53.58 KiB | 2.06 MiB/s, done.
Resolving deltas: 100% (83/83), done.
bash-5.1$ ls -ltr
total 4
drwxr-xr-x 15 www-data www-data 4096 Sep 24 19:15 SharedProjectTimesheetsBundle
bash-5.1$ cd /opt/kimai/
bash-5.1$ bin/console cache:clear
// Clearing the cache for the prod environment with debug false
[OK] Cache for the "prod" environment (debug=false) was successfully cleared.
bash-5.1$ bin/console cache:warmup
// Warming up the cache for the prod environment with debug false
[OK] Cache for the "prod" environment (debug=false) was successfully warmed.
bash-5.1$ bin/console
Kimai 1.15.1 (env: prod, debug: false)
Usage:
command [options] [arguments]
Options:
-h, --help            Display this help message
-q, --quiet           Do not output any message
-V, --version         Display this application version
--ansi            Force ANSI output
--no-ansi         Disable ANSI output
-n, --no-interaction  Do not ask any interactive question
-e, --env=ENV         The Environment name. [default: "prod"]
--no-debug        Switches off debug mode.
-v|vv|vvv, --verbose  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Available commands:
about                                           Display information about the current project
help                                            Display help for a command
list                                            List commands
assets
assets:install                                  Install bundle's web assets under a public directory
cache
cache:clear                                     Clear the cache
cache:pool:clear                                Clear cache pools
cache:pool:delete                               Delete an item from a cache pool
cache:pool:list                                 List available cache pools
cache:pool:prune                                Prune cache pools
cache:warmup                                    Warm up an empty cache
config
config:dump-reference                           Dump the default configuration for an extension
dbal
dbal:run-sql                                    Executes arbitrary SQL directly from the command line.
debug
debug:autowiring                                List classes/interfaces you can use for autowiring
debug:config                                    Dump the current configuration for an extension
debug:container                                 Display current services for an application
debug:event-dispatcher                          Display configured listeners for an application
debug:form                                      Display form type information
debug:router                                    Display current routes for an application
debug:translation                               Display translation messages information
debug:twig                                      Show a list of twig functions, filters, globals and tests
doctrine
doctrine:cache:clear-collection-region          Clear a second-level cache collection region
doctrine:cache:clear-entity-region              Clear a second-level cache entity region
doctrine:cache:clear-metadata                   Clears all metadata cache for an entity manager
doctrine:cache:clear-query                      Clears all query cache for an entity manager
doctrine:cache:clear-query-region               Clear a second-level cache query region
doctrine:cache:clear-result                     Clears result cache for an entity manager
doctrine:database:create                        Creates the configured database
doctrine:database:drop                          Drops the configured database
doctrine:database:import                        Import SQL file(s) directly to Database.
doctrine:ensure-production-settings             Verify that Doctrine is properly configured for a production environment
doctrine:mapping:convert                        [orm:convert:mapping] Convert mapping information between supported formats
doctrine:mapping:import                         Imports mapping information from an existing database
doctrine:mapping:info
doctrine:migrations:current                     [current] Outputs the current version
doctrine:migrations:diff                        [diff] Generate a migration by comparing your current database to your mapping information.
doctrine:migrations:dump-schema                 [dump-schema] Dump the schema for your database to a migration.
doctrine:migrations:execute                     [execute] Execute one or more migration versions up or down manually.
doctrine:migrations:generate                    [generate] Generate a blank migration class.
doctrine:migrations:latest                      [latest] Outputs the latest version
doctrine:migrations:list                        [list-migrations] Display a list of all available migrations and their status.
doctrine:migrations:migrate                     [migrate] Execute a migration to a specified version or the latest available version.
doctrine:migrations:rollup                      [rollup] Rollup migrations by deleting all tracked versions and insert the one version that exists.
doctrine:migrations:status                      [status] View the status of a set of migrations.
doctrine:migrations:sync-metadata-storage       [sync-metadata-storage] Ensures that the metadata storage is at the latest version.
doctrine:migrations:up-to-date                  [up-to-date] Tells you if your schema is up-to-date.
doctrine:migrations:version                     [version] Manually add and delete migration versions from the version table.
doctrine:query:dql                              Executes arbitrary DQL directly from the command line
doctrine:query:sql                              Executes arbitrary SQL directly from the command line.
doctrine:schema:create                          Executes (or dumps) the SQL needed to generate the database schema
doctrine:schema:drop                            Executes (or dumps) the SQL needed to drop the current database schema
doctrine:schema:update                          Executes (or dumps) the SQL needed to update the database schema to match the current mapping metadata
doctrine:schema:validate                        Validate the mapping files
kimai
kimai:bundle:shared-project-timesheets:install  Install bundle/plugin shared-project-timesheets
kimai:import:customer                           Import customer from CSV file
kimai:import:project                            Import projects from CSV file
kimai:import:timesheet                          Import timesheets from CSV file
kimai:import:v1                                 [kimai:import-v1] Import data from a Kimai v1 installation
kimai:install                                   Basic installation for Kimai
kimai:invoice:create                            Create invoices
kimai:plugins                                   Receive plugin information
kimai:reload                                    Reload Kimai caches
kimai:update                                    Update your Kimai installation
kimai:user:activate                             [fos:user:activate] Activate a user
kimai:user:create                               [kimai:create-user] Create a new user
kimai:user:deactivate                           [fos:user:deactivate] Deactivate a user
kimai:user:demote                               [fos:user:demote] Demote a user by removing a role
kimai:user:password                             [fos:user:change-password] Change the password of a user.
kimai:user:promote                              [fos:user:promote] Promotes a user by adding a role
kimai:version                                   Receive version information
lint
lint:container                                  Ensure that arguments injected into services match type declarations
lint:twig                                       Lint a template and outputs encountered errors
lint:xliff                                      Lint an XLIFF file and outputs encountered errors
lint:yaml                                       Lint a file and outputs encountered errors
router
router:match                                    Help debug routes by simulating a path info match
secrets
secrets:decrypt-to-local                        Decrypt all secrets and stores them in the local vault.
secrets:encrypt-from-local                      Encrypt all local secrets to the vault.
secrets:generate-keys                           Generate new encryption keys.
secrets:list                                    List all secrets.
secrets:remove                                  Remove a secret from the vault.
secrets:set                                     Set a secret in the vault.
security
security:encode-password                        Encode a password.
translation
translation:update                              Update the translation file
bash-5.1$ bin/console kimai:bundle:shared-project-timesheets:install
[ERROR] Failed to install SharedProjectTimesheetsBundle database: Migrations configuration key "name" does not exist.
bash-5.1$
`

Hi, this should be fixed with release 2.0.0 as it contains a new configuration for the doctrine / db migration dependency that has been upgraded in Kimai v15.
Please let me know if the problem is fixed for you - thanks in advance!

Hi, thank you for follow up on this.
I've downloaded v2.0.1 from tags, and have run the following
bin/console cache:clear
bin/console cache:warmup
followed by the
bin/console kimai:bundle:shared-project-timesheets:install
However error is still here:
[ERROR] Failed to install SharedProjectTimesheetsBundle database: Migrations configuration key "name" does not exist.

@modulec I would expect that the bin/console cache:clear command is sufficient to reload the migration configuration file. The new configuration file does not contain the configuration key "name" anymore, it only contains the "migrations_paths" key.
Please provide some more information to reproduce the error:

Which Kimai Version do you use? I've only tested against the latest Kimai 1.16.1, maybe that's an incompatibility issue with Kimai 1.15.x
Did you install the plugin version 1.0.0 first or was it a "fresh" plugin installation of version 2.0.1?

I tried to install the plugin version 2.0.1 with a fresh Kimai v1.15.6 and the installation succeeded.
In addition i tried to install the plugin version 2.0.1 with a fresh Kimai v1.14.3 the installation fails as expected (version 2.0.1 of the plugin is only compatible with Kimai 1.15+).
Let me hear if your upgrade to 1.16 helped to resolve the problem for you. Otherwise something else might be the reason for the installation problems.

There was another migration configuration issue. If you're on plugin version 1.0.0 please upgrade to version 2.1.0 directly, otherwise the wrong migration information table could be used.
If there are any other issues while migrating, please let me know.

@dexterity42
I've updated Kimai to 1.16.6 and used new plugin version 2.1.0 and I'm happy to report that installation is now working as expected.
Thank you for the update and support!

@dexterity42 I've updated Kimai to 1.16.6 and used new plugin version 2.1.0 and I'm happy to report that installation is now working as expected. Thank you for the update and support!

Its working now. Thank you.

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
zoheirkhonyagar, @devluxca, @zxr90, @milaabl, @mdfad-tech, @probably-nothing1, @Ac-Srikanth, @Sandalots, @ritave, @tuif, @Hokid, @ediskandarov, @Rdx122, @dorucioclea, @luduvigo, @shibanovp, @kiv1n, @xiaok, @Pszz, @link89


Release request

Can I request a release bump to the supermarket? Prefer that to using a git source.

I'm checking to see whether I can get privs on Supermarket. Thanks for this issue.

Any news?

Apologies, I did get the privs but it took me a while and missed coming back to this. It looks like it's been updated on supermarket now though!


readme

For now is impossible to run project with steps described in readme. (\*.dev > <IP_ADDRESS> give command .dev not found)
As i see from video there is extra steps with docker-compose build etc. But its confusing when you just try follow steps in readme and got an error which tells nothing for anyone unexpirienced with docker.
Maybe it require a little update for someone who just start with docker and want to use this container?

Thanks for the feedback, we are very grateful to you, you are absolutely right this is a bug. It fixed.


NIFI-13664 allow bundle id to be searchable

Summary
NIFI-13664
Improved the component Search capability by allowing user to type all or part of a Bundle ID (NAR name) to find matching components.  Updated the User Guide.
For example, if you type "nifi-slack" in the Search Bar, it will show "Bundle: nifi-slack-nar" from matching components.
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking

[x] Apache NiFi Jira issue created

Pull Request Tracking

[x] Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
[x] Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

[x] Pull Request based on current revision of the main branch
[x] Pull Request refers to a feature branch with one commit containing changes

Verification
Please indicate the verification steps performed prior to pull request creation.
Build

[x] Build completed using mvn clean install -P contrib-check

[x] JDK 21

Licensing

[n/a] New dependencies are compatible with the Apache License 2.0 according to the License Policy
[n/a] New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

[x] Documentation formatting appears as expected in rendered files

Thanks for the review @exceptionfactory. May I cherry-pick this into the support/nifi-1.x branch if it merges cleanly?

You're welcome @mosermw. This commit will not apply to the support branch because the Spring Configuration is now Java-based instead of XML-based, so adding it to the support branch would require a separate PR.

Thanks for the review @exceptionfactory. May I cherry-pick this into the support/nifi-1.x branch if it merges cleanly?

You're welcome @mosermw. This commit will not apply to the support branch because the Spring Configuration is now Java-based instead of XML-based, so adding it to the support branch would require a separate PR.

Ah, right!  The nifi-framework-bundle moved, too.  At this point, I don't think a separate PR is worth it.


Stretchly is out of date

Checklist

[x] Checked the nixpkgs master branch

[x] Checked the nixpkgs pull requests

Project name
nix search name: stretchly

current version: 1.2.0
desired version: 1.5.0
Notify maintainers

maintainers: @1000101
Note for maintainers
I have tried to update this myself by simply changing the version number and hash, but I get the following error on running stretchly:
App threw an error during load
Error: No such module was linked: electron_common_v8_util
    at process._linkedBinding (internal/bootstrap/loaders.js:118:34)
    at Object.getElectronBinding (/nix/store/6pw7n55am9y1d2z5wg758cmklr2cicbj-stretchly-1.5.0/share/stretchly/app.asar/node_modules/@electron/remote/dist/src/common/get-electron-binding.js:6:24)
    at Object.<anonymous> (/nix/store/6pw7n55am9y1d2z5wg758cmklr2cicbj-stretchly-1.5.0/share/stretchly/app.asar/node_modules/@electron/remote/dist/src/main/server.js:12:39)
    at Module._compile (internal/modules/cjs/loader.js:968:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:986:10)
    at Module.load (internal/modules/cjs/loader.js:816:32)
    at Module._load (internal/modules/cjs/loader.js:728:14)
    at Function.Module._load (electron/js2c/asar.js:748:26)
    at Module.require (internal/modules/cjs/loader.js:853:19)
    at require (internal/modules/cjs/helpers.js:74:18)
15:16:16.683 › Error: No such module was linked: electron_common_v8_util
    at process._linkedBinding (internal/bootstrap/loaders.js:118:34)
    at Object.getElectronBinding (/nix/store/6pw7n55am9y1d2z5wg758cmklr2cicbj-stretchly-1.5.0/share/stretchly/app.asar/node_modules/@electron/remote/dist/src/common/get-electron-binding.js:6:24)
    at Object.<anonymous> (/nix/store/6pw7n55am9y1d2z5wg758cmklr2cicbj-stretchly-1.5.0/share/stretchly/app.asar/node_modules/@electron/remote/dist/src/main/server.js:12:39)
    at Module._compile (internal/modules/cjs/loader.js:968:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:986:10)
    at Module.load (internal/modules/cjs/loader.js:816:32)
    at Module._load (internal/modules/cjs/loader.js:728:14)
    at Function.Module._load (electron/js2c/asar.js:748:26)
    at Module.require (internal/modules/cjs/loader.js:853:19)
    at require (internal/modules/cjs/helpers.js:74:18)
electron/js2c/browser_init.js:846
    throw new Error('dialog module can only be used after app is ready');
    ^

Error: dialog module can only be used after app is ready
    at checkAppInitialized (electron/js2c/browser_init.js:846:11)
    at messageBox (electron/js2c/browser_init.js:935:3)
    at Object.showMessageBox (electron/js2c/browser_init.js:1029:12)
    at process.<anonymous> (/nix/store/6pw7n55am9y1d2z5wg758cmklr2cicbj-stretchly-1.5.0/share/stretchly/app.asar/main.js:15:10)
    at process.emit (events.js:215:7)
    at process._fatalException (internal/process/execution.js:150:25)

There have been various updates to stretchly between 1.2.0 and 1.5.0 (e.g. one minor but annoying issue fixed after 1.2.0 is described at https://github.com/hovancik/stretchly/issues/777)
Please tag this issue in your PR.

Thanks 🙂, works for me. Nice to see how few changes are needed to make it work. Thanks for the quick response!

@1000101 Thanks for the help so far, but actually, it still doesn't quite work as expected 🙁
The main issue is that the icon doesn't appear anymore (the Stretchly UI is missing).
This might be related to https://github.com/hovancik/stretchly/issues/849 and libappindicator. I am not sure.
A .electron-wrapp process does appear to stay running after running stretchly.
It would be nice to have this fixed please - but no pressure, it's really not critical 🙂
I've tried a bit myself, but am mostly making wild guesses, happy to learn from what you might do though.
If I run stretchly I now get the following:
$ stretchly
Stretchly command instance: started

Error: command /nix/store/dgkyb9r0f4qckh2l7gfrb7hb5drrc4gb-stretchly-1.5.0/share/stretchly/app.asar is not supported
Forwarding command to main instance
16:33:13.568 › Stretchly: loading settings
16:33:13.574 › Stretchly: starting Idle time monitoring
16:33:13.575 › Stretchly: starting DND monitoring
(node:4732) electron: The default of contextIsolation is deprecated and will be changing from false to true in a future release of Electron.  See https://github.com/electron/electron/issues/23506 for more information

@1000101 Thanks for the help so far, but actually, it still doesn't quite work as expected slightly_frowning_face
The main issue is that the icon doesn't appear anymore (the Stretchly UI is missing).
This might be related to hovancik/stretchly#849 and libappindicator. I am not sure.
A .electron-wrapp process does appear to stay running after running stretchly.
It would be nice to have this fixed please - but no pressure, it's really not critical slightly_smiling_face
I've tried a bit myself, but am mostly making wild guesses, happy to learn from what you might do though.
If I run stretchly I now get the following:
$ stretchly
Stretchly command instance: started

Error: command /nix/store/dgkyb9r0f4qckh2l7gfrb7hb5drrc4gb-stretchly-1.5.0/share/stretchly/app.asar is not supported
Forwarding command to main instance
16:33:13.568 › Stretchly: loading settings
16:33:13.574 › Stretchly: starting Idle time monitoring
16:33:13.575 › Stretchly: starting DND monitoring
(node:4732) electron: The default of contextIsolation is deprecated and will be changing from false to true in a future release of Electron.  See https://github.com/electron/electron/issues/23506 for more information

@Coda-Coda was it working in v1.2.0? Do you use GNOME, what tray extension do you use? I've had these problems right from the start (no tray icon), but I don't use a tray extension - other than that, it's been working ok - other people reported that tray icon works fine for them, so I didn't dig any deeper than I needed to (core functionality was working and I haven't had the time).
Testing both old and new versions with https://search.nixos.org/packages?channel=20.09&from=0&size=50&sort=relevance&query=gnomeExtensions.appindicator seems to work fine.
So, does this sound familiar? Is this the problem you're currently facing (stretchly running, no tray icon / UI available)?
What about running rm -rf ~/.config/Stretchly/ ?

Firstly, thanks for your help on this relatively minor issue 🙂

@Coda-Coda was it working in v1.2.0?

Yes, the tray icon and associated UI work for me in v1.2.0

Do you use GNOME, what tray extension do you use?

Yes, I'm using GNOME 3.36.5 with the defaults that come with 20.09 (which is Wayland too as far as I'm aware).
$ gnome-shell --version
GNOME Shell 3.36.5

For tray extension I use gnomeExtensions.appindicator (usually from nixpkgs-unstable but I also tried 20.09) and it appears in the Extensions list as "KStatusNotifierItem/AppIndicator Support".

I've had these problems right from the start (no tray icon), but I don't use a tray extension - other than that, it's been working ok - other people reported that tray icon works fine for them, so I didn't dig any deeper than I needed to (core functionality was working and I haven't had the time).

Fair enough, though I do find it useful to be able to click "Pause Breaks" > x hours in particular. And for settings tweaks, I realise modifying the ~/.config/Stretchly/config.json file is not too bad but the UI for some settings is nice too.

Testing both old and new versions with https://search.nixos.org/packages?channel=20.09&from=0&size=50&sort=relevance&query=gnomeExtensions.appindicator seems to work fine.

By this ^ do you mean the icon was working with 1.5.0?
I tried the following (as I'm usually on nixpkgs-unstable) (dec334 is the HEAD of nixos-20.09 as of now):
let pkgsUnstablePinned = import (fetchTarball https://github.com/nixos/nixpkgs/archive/dec334fa196a4aeedb1b60d8f7d61aa00d327499.tar.gz) {}; in
home.packages = with pkgs; [
    pkgsUnstablePinned2.gnomeExtensions.appindicator # Needed for tray icons, such as for stretchly
   ...
];

So, does this sound familiar? Is this the problem you're currently facing (stretchly running, no tray icon / UI available)?

Yes, stretchly is running but no tray icon is available.

What about running rm -rf ~/.config/Stretchly/ ?

It still does not show the icon 🙁. It does show the UI the first time it runs (to choose language etc) but after that is done and closed there is no UI or icon.

Firstly, thanks for your help on this relatively minor issue slightly_smiling_face

Appreciate it :).

Fair enough, though I do find it useful to be able to click "Pause Breaks" > x hours in particular.

It's far from ideal and although I don't use tray, I agree that the tray icon should work as it is generally very useful for the majority of people.

Yes, I'm using GNOME 3.36.5 with the defaults that come with 20.09 (which is Wayland too as far as I'm aware).

Huh, me too (GNOME 3.36.5 + Wayland). I'm running latest stable though
 - host os: `Linux 5.4.109, NixOS, 20.09.3824.dec334fa196 (Nightingale)`

I've even tried the latest unstable, works fine there, too:
 - host os: `Linux 5.10.27, NixOS, 21.05pre282432.311ceed827f (Okapi)`

By this ^ do you mean the icon was working with 1.5.0?

Yes. Using the very same extension (enabled through Tweaks) on stable works for me (for both 1.2.0 and 1.5.0).

It still does not show the icon slightly_frowning_face. It does show the UI the first time it runs (to choose language etc) but after that is done and closed there is no UI or icon.

Alright, works the same for me. I thought there might have been some local differences there.
Moreover, I looked at https://github.com/hovancik/stretchly/issues/849 but building the app with libappindicator in buildInputs doesn't seem to alter the behavior and it seems that libappindicator is needed only for Unity (as stated in lib description).
Have you tried to build it yourself and install such version?
{
,stdenv
...
, libappindicator
...
stdenv.mkDerivation rec {
...
  buildInputs = [ libappindicator ];

I'm sorry, I've tried everything I could think about but I can't seem to reproduce the issue on current stable nor unstable.

Ah wait, did you say nixpkgs-unstable ? I've only tried latest nixos-unstable.

Thanks - I can’t now but I’ll have another look next week.

Thanks - I can’t now but I’ll have another look next week.

Right, I'll close this issue since Stretchly was updated (and a new version just came out https://github.com/NixOS/nixpkgs/pull/119646). Please try testing it with more stable channel or with the suggestion above. If the problems persists, please, do open a new issue and we'll try to take it from there!

It works 🙂. I am now on nixpkgs-unstable and have Stretchly 1.6.0 running with the icon and UI available.
I'm not sure what the issue I was encountering was but it is resolved now. (I just tried with 1.6.0 directly, not 1.5.0).
Thanks for your help!

Happy to help!


Improve the Model writing flows

It's a bit of a mess at the moment; perhaps a fluent style of writing them would help (and be more type-safe).
Removing all references to "alice"/"bob" as strings and moving to using clients everywhere seems like a win.

something like #2 might help here?


Tests

Writing a parsers is very complicated process. Tests are required for any good open source project, but they are required twice for parsers.
Look into postcss-scss tests. They are very easy. I think tests save development time in parsers case.

Thank you! I've added the tests.


Use akka-cluster to make Sauna distributed

Great idea - please flesh out this ticket in due course with how this would work...

Scheduling for 0.2.0 (i.e. after initial release)

Duplicate of https://github.com/snowplow/sauna/issues/56


Problems with Ember-Data

I'm no expect in Ember or ic-ajax, but I wanted to point out something that caused me a great amount of distress.
While building an Ember app with Ember-CLI (and Ember-Data), I came across a problem with ic-ajax that I cannot fully understand. At some point ic-ajax reopens the RESTAdapter and overrides the ajax method. This monkey patch took me a really long time to track down and causes some issues with Ember-Data that I do not fully understand.
In my situation, it seemed like ic-ajax did not handle the error states in the same way the RESTAdapter is supposed to. Specifically, when my server returned a 422 with a well formed hash of errors, ic-ajax failed to trigger Ember-Data properly and the record was never put into an invalid state, nor was the DS.InvalidError object properly populated.
I fixed the problem by re-monkeypatching the RESTAdapter to it's original state, but wanted to flag this issue so that it can be properly investigated.
It's possible this problem is isolated to me but I thought I would raise this issue just in case other people were finding the same problem.

So, how are you supposed to use ic-ajax in tests now? Should you do this re-wiring on a per-test basis? Or override the ApplicationAdapter in the test setup?
http://guides.emberjs.com/v1.10.0/testing/testing-xhr/


Move the cancel and save changes to inside the compose box

Details

This PR moves the save button inside the edit composer box similar to how we have the send button in the composer. The cancel button now replaces the user avatar following the design we discussed here.

The proposed design

Fixed Issues

$ GH_LINK
PROPOSAL: GH_LINK_ISSUE(COMMENT)
Tests

Click on edit comment
The edit box should contain a checkmark save button on the right and emoji button next to it following the styles of the report composer input
The cancel button should be on the left
The buttons are centered if the input is a single line and stays on the bottom when it's multiline

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

Offline tests

QA Steps

Click on edit comment
The edit box should contain a checkmark save button on the right and emoji button next to it following the styles of the report composer input
The cancel button should be on the left
The buttons are centered if the input is a single line and stays on the bottom when it's multiline

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

PR Author Checklist

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

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

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

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

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

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

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

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

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

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

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://user-images.githubusercontent.com/7809008/233006108-113855ec-f870-4be3-afed-3abd98e4a11a.mov
https://user-images.githubusercontent.com/7809008/233006428-7c91737b-43b8-450d-ad62-822a3cc71e63.mov

Mobile Web - Chrome

https://user-images.githubusercontent.com/7809008/233011614-da93696a-9222-49c4-a581-0765913478c3.mp4

Mobile Web - Safari

https://user-images.githubusercontent.com/7809008/233012011-b546e1ca-6e6a-4ce7-a87b-ceb736210fbe.MP4

Desktop

https://user-images.githubusercontent.com/7809008/233115342-b3551a18-f4ac-401c-888c-b1936c4127bf.mov

iOS

https://user-images.githubusercontent.com/7809008/233114678-d7d12bbd-c860-4f71-abda-ad4727b47352.mov

Android

https://user-images.githubusercontent.com/7809008/233111886-dbf595d6-bedc-4dfc-a28d-0acc4a7aa504.mp4

@madmax330 Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button]

I've just noticed that the focus on edit box input is broken after rebasing to the latest main. Double checked it on the main branch and yes it's broken there.

bump @terrysahaidak

thanks for the reminder @luacmartins, will do it today 🙂

Thanks! Let me know when we're ready for another round of review @terrysahaidak

@luacmartins, yes, would appreciate it! I just double-checked that my changes are still working fine after the rebase.
But there is still a bug on iOS so it doesn't focus the input:
https://user-images.githubusercontent.com/7809008/235128455-3f87c4fe-ef72-4649-b9b1-c4a7dd235598.mov
I think this should be a separate ticket.

@luacmartins any recommendation on how to force all new commits to be also signed?

@terrysahaidak here are the steps:
Tell Git about your key
Steps 1-4 here: https://help.github.com/articles/telling-git-about-your-gpg-key/
Enable signing of commits by default
git config --global commit.gpgsign true
Add your GPG public key to Github
Steps 10-14 https://help.github.com/articles/generating-a-new-gpg-key/

@terrysahaidak any luck with getting your commits signed?

@luacmartins Yes, I actually did the same thing again today but it did not sign them for some reason. Finishing another thing and getting back to this.

@luacmartins seems to be verified, let me know if everything is correct, thanks

hey @luacmartins, I had to do it the hard way and cherry-picked all my commits into another branch since it would always go through all 250+ commits because of the merge commits, but seems to be good now. I'll test my changes again to make sure nothing is lost/broken after the rebase.

Let me know when this is ready for another review

@luacmartins tested it again and everything looks good.

Adding @fedirjh for review and testing!

Thanks for the review, @fedirjh.
Fixed the ExceededCommentLength:

@terrysahaidak I noticed that you incorrectly linked an issue in the PR description. This could cause issues with automation after the PR is merged. To fix this, please update the "Fixed Issues" section as follows:
### Fixed Issues
$ https://github.com/Expensify/App/issues/15598

Thanks, will do better next time :)

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/luacmartins in version: 1.3.10-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/roryabraham in version: 1.3.12-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Need to optimize HtmlContentIRNode code generation

From https://github.com/aspnet/Razor/pull/1198#discussion_r110717465 and https://github.com/aspnet/Razor/pull/1198#discussion_r110743500

Related issue - https://github.com/aspnet/Razor/issues/1196

I think I have a zero-allocation solution (if I'm not wrong!) by adding WriteStringLiteral(IReadOnlyList, index, length) and WriteStringLiteral(string, index, length) methods to CSharpCodeWriter. If you agree, I can work on a PR for this week or more probably next week. It would allow you to focus on more "functional" problems.

WriteStringLiteral(string, index, length) is something we should definitely have.
As far as WriteStringLiteral(IReadOnlyList<T>, index, length) - what's the T? Can this live in an extension method or does it need to go on the CSharpCodeWriter?

T is string.
My general idea is to avoid StringBuffer creation (first it generates many chunks, and then a LOH string), and "simply"  write the token contents block by block (each block is a sub-list composed of several token contents, up to 1024 chars). To do this, I need to be able to write a string literal composed of several small pieces (the token contents).
And finally there is a special case too when a token content is bigger than the 1024 characters limit.

My general idea is to avoid StringBuffer creation (first it generates many chunks, and then a LOH string)

Yes we need to do that.

To do this, I need to be able to write a string literal composed of several small pieces (the token contents)

Isn't this just a loop though? I still don't understand why WriteStringLiteral(IReadOnlyList<T>, index, length) would ever be needed.
The basic structure would look like:
var charsWritten = 0;
const int chunkSize = 0;
var insideWriteCall = false;

for (var i = 0; i < tokens.Count; i++)
{
    var token = tokens[i];
    var charsRemaining = token.Length;
    while (charsRemaining > 0)
    {
        if (insideWriteCall)
        {
            // Write prelude to 'Write' method
            insideWriteCall = true;
        }

        var count = Math.Min(charsRemaining, chunkSize - charsWritten);
        writer.Write(token.Content, token.Length - charsRemaining, count);

        charsRemaining -= count;
        charsWritten += count;

        if (charsWritten == chunkSize)
        {
             // Write suffix to 'Write' method
            ...

            insideWriteCall = true;
            charsWritten = 0;
        }
    }

    if (insideWriteCall)
    {
             // Write suffix to 'Write' method
            ...
    }
}

WriteStringLiteral() is currently like that:
public CSharpCodeWriter WriteStringLiteral(string literal)
{
    if (literal.Length >= 256 && literal.Length <= 1500 && literal.IndexOf('\0') == -1)
    {
        WriteVerbatimStringLiteral(literal);
    }
    else
    {
        WriteCStyleStringLiteral(literal);
    }
    return this;
}

So for me:

I imagine that your design is to see WriteStringLiteral() as "atomic". You don't have to write the prefix, then the content, then the suffix. WriteStringLiteral() do all for you.
Create a new WriteStringLiteral(IReadonlyList<string> literalPieces) allows to manage the literal length and '\0' char condition.

Ah I see, that's where the complication is.

That bit was a copy n paste from CodeDOM and has lived in the Razor code base for ages 😄. We'd have to understand why CodeDOM allowed it to get a good answer.

I propose:

To assume that there is no '\0' in strings. I even propose to throw an exception if a '\0' is found (we are in a version 2.0 of ASP.NET, so I suppose that it is possible to have a breaking change in an obscure old case)?
That text is generally longer than 256 characters.

So I can write something based on WriteVerbatimStringLiteral model instead of WriteCStyleStringLiteral.
Do you agree?

I think we should just pass it through if it's there. \0 is valid in C#.
Other than that sounds good.

@rynowak Sorry for the late answer, I was a little busy with my "real" job last week.
Anyway I have implemented a solution, but about 74 unit tests fail with différences like that (because the choice of @"" string style choice):
Before:
        public async System.Threading.Tasks.Task ExecuteAsync()
        {
#line 1 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Blocks.cshtml"

    int i = 1;

#line default
#line hidden
            WriteLiteral("\r\n");
#line 5 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Blocks.cshtml"

After:
        public async System.Threading.Tasks.Task ExecuteAsync()
        {
#line 1 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Blocks.cshtml"

    int i = 1;

#line default
#line hidden
            WriteLiteral(@"
");
#line 5 "TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Blocks.cshtml"

Do you approve the modification?

@NTaylorMullen - thoughts on this?

@Yves57 I personally have no qualms with @"" but I am curious as to why CodeDOM initially had the literal.Length >= 256 && literal.Length <= 1500 restriction on that approach.
Given that there's no side effects of rendering an @"" literal over 1500 characters long I'm totally fine spitting out a string in parts within an @"".

In fact, I was not sure about the "carriage-returns" that are less clear with the new style. But perfect, I continue with this solution.

Pushing this out to post 2.0


Feature Request: MLB important dates

As a developer, I would like a list of important MLB dates for a season, so that I can easily write code based on the start of the season, the preseason, before and after the All-Star Break and the start and end of the post-season.
@panzarino You can assign this to me if you want. I found a way to get this data.

This would be fantastic info!


Lettuce - Automatic connection retry on startup

lettuce has fantastic functionality for handling any Redis disconnections once everything is up and running. If the Redis instance becomes unavailable, use of an appropriate retry_strategy means the client can be set up to try to reconnect until Redis is available again.
Is it possible to get the client to enter this state at start-up, even if Redis is down?
My scenario is this: I am using Redis as a primary data-store, with a fallback secondary data-store which is not Redis-based. When my application starts, if Redis is not available, attempts to retrieve data will use the secondary data-store instead.
However, when Redis does become available, I'd like my application to start using the Redis primary data-store instead. As the Redis connection did not succeed on start-up, the retry_strategy, which would handle this for a previously established connection, does not work.
I could write code which will retry the initial Redis connection until it is successful, but it strikes me that the functionality available out-of-the-box is already very close to what I need, if I can persuade it to come into play from start-up even though Redis is down.
Pretty much copied from here: https://stackoverflow.com/questions/45836875/establish-connection-retry-behaviour-on-start-up-even-when-redis-is-not-availa

That isn't something we can really do. We have several assumptions that we need to fulfill at startup. For instance, with Redis Cluster, we must have the topology to be able to route commands to appropriate nodes.
I rather suggest using a connection pool to introduce fail safety. Asking the pool for a resource and if it succeeds, then perform Redis activity, otherwise, back off and follow the recovery code path.
We once had a similar ticked but I wasn't able to find it amongst our tickets.

Thank you very much for your answer.

I rather suggest using a connection pool to introduce fail safety. Asking the pool for a resource and if it succeeds, then perform Redis activity, otherwise, back off and follow the recovery code path.

Can that be used at startup? I mean, could a connection pool as it works today, be used to solve the describe problem, where I could create the pool at start-up even if redis is unavailable?
How does the connection pool feature work with the auto-reconnect and buffering of commands (which by the way are two amazing features), does the connection pool support these two features as well?
 Many people only use it as a cache, I don't want to be dependent on my cache, in that if my cache doesn't work, well, I wouldn't want everything else to be failing just because of it. If redis is required at the beginning of my app, then my app is effectively dependent on redis, and this is especially a problem in today's world, where apps are often running on short-lived computers like Spot instances, so new apps have to start-up all the time.
I mean, I'm not trying to be disrespectful, I'm very grateful for lettuce, it's awesome, I would just like to objectively point out the flaw.

Failing on the initial connection retrieval is much safer for applications than silently handing out a connection that isn't connected. Starting in disconnected mode bears quite a moment of surprise because it isn't obvious and goes against many expectations.

For some users, I would assume that that would be totally true. Other users, however, as I explained, don't want to be dependent on their cache. As a result, there are two different use cases, and the ability to support both could be obviously beneficial.
I'm not telling you to create this feature. I am definitely not in a position to do that, while using your software for free. I'm just trying to argue the counter side mainly for the sake of improving the software and possibly users who use it (me included).
You don't need to justify your decisions to me, but I hope you don't mind my assertiveness nonetheless.
Thank you for all your explanations concerning the connection pool feature. I will definitely considering looking into it. The reason I haven't yet, which I tried, but I discovered that the downstream library that I'm using doesn't support it.

Using a pool has the advantage that you create an object and you can request connections from there. In contrast, if your application would use a single connection at startup, you would need to carry the connection (or a wrapper) across your application resulting in much more entanglement and complexity.

This doesn't seem to be true to me. If I don't pass a single connection around, then I would have to instead pass a connection pool which is not any less complex or causes any more entanglement than a single connection would. And on the contrary, with connection pool, to draw a connection, use it, then return the connection, causes a lot more complexity than a single connection.
Furthermore, because redis is mostly just a key-value store, its queries are usually very fast, so a need for a connection pool is usually superficial.
I am concerned whether the connection pool could really 100% satisfy this requirement and not come with any downfalls at the same time. But I admit, I don't know, and yet I don't think I'll get around to looking into it in the near future, because I'm dependent on the downstream redis4cats library, which doesn't support connection pools anyways.
Thank you.


MSVC 2019 fix

Hi. I needed to compile Simd on Visual studio 2019 and I have got some problems.

There are no sln and project file for VS2019. So, I copy it from VS2017w and update.
It doesn't compile: unknown _MM_K0_REG identifier, so I change if def.
There was a test error on ConditionalCount16i >=
Here screen: https://ibb.co/HHysQnb
I have done some test and I think that it is a VS2019 compiler bug. It is related to function overload and optimization, because it exist only in Release version (x64, not tested on x32) and after renaming two functions (GreaterOrEqual16i to GreaterOrEqual16i_m256 and GreaterOrEqual16i_m128) the tests was passed. So, I made a commit with such changes.

It's a good job!
Minor notes: PlatformToolset property is better to be modified in Prop.props file (unfortunately it is have to make manually in XML file).

Thanks.
Ок, I didn't know that.


Module not found: Default condition should be last one

Module not found: Default condition should be last one
I get this error when i'm try to  import { GenerationStyle, client, Status } from "imaginesdk"
This code:

import { GenerationStyle, client, Status } from "imaginesdk"
const imagine = client("API_KEY")
export const generateImage = async (prompt: string) => {
const response = await imagine.generations(prompt, {
style: GenerationStyle.ANIME,
})
if (response.status() === Status.OK) {
const image = response.getOrThrow()
image.asFile("output.png")
} else {
console.log(response.errorOrThrow())
}
}

I'm using NextJS, React ^18

This is the example code from the documentation, and the module was correctly imported, I need help, please.

The error is on import {client}, how to solve?

I get the same error on import {client}. How to solve?


Use uv init to lock to a particular Python version

First of all, awesome work uv team! I am really enjoying using uv :)
Background
I have one idea for the uv init command. Take this example:
uv init --app --python 3.12.5

It will generate the following:
[project]
name = "example-project"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.12.5"
dependencies = []

I would like to have a way to specify a specific Python version. E.g. requires-python = "==3.12.5".
[project]
name = "example-project"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = "==3.12.5"
dependencies = []

Why
Why do I think this would be helpful?

in --app mode I am not targeting to support a matrix of Python versions and package versions. I want to deploy my app in the most stable way possible. I should always get the same Python packages (uv.lock handles this) and the same Python version.

Possible solutions

Support adding version specifiers to uv init. E.g. uv init --app --python ==3.12.5
When using --app mode default to locking in a single version of Python (my guess is that this is what most people want, but I could be wrong!).

Hi! Thanks for the clear description of what you're looking for.
It is specifically not recommended to pin a single Python version in the requires-python field — it's against the intent of the metadata. Instead, you should use uv python pin which creates a .python-version file. We could / should create one of those in uv init. There's a separate issue for storing Python version pins in the pyproject.toml #4970

Thank you @zanieb! I think python pin fits my needs. I also like the idea of storing this in pyproject.toml so there is one less file floating around :)

I also like the idea of creating the .python-version file when uv init is in "app" mode.


feat: add support for websocket subprotocol

TODO

[ ] Tests or benchmark included
[ ] Documentation is changed or added on https://app.gitbook.com/
[x] PR title must follow conventional-commit-standard

Please also don't forget to update and extends the docs.


Created dynamic calender extension

Description
Simple calender in js
Fixes:  #112
Type of change
New Dir

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist:

[x] I have made this from my own
[x] I have taken help from some online resourses
[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

ATTACH SCREEN-SHOTS / DEPLOYMENT LINK

@Sulagna-Dutta-Roy review & merge


Update execution-charset-set-execution-character-set.md

it's "/utf-8" compiler option, not "/utf-8*"

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

#sign-off

#sign-off


Feedback After Your Senior Thesis Presentation

Hello @connellyw, here is the detailed feedback and questions after your thesis defense:
Process Reminders
Here is feedback on your senior thesis chapters. Please bear in mind that you
need to resolve all of these issues in advance of submitting the final version
of your senior comprehensive project! Here is a reminder of the deadlines for
the Spring 2023 semester in CMPSC 610:

Week One (January 16 - 20) through Week Ten (March 20 - 24):
Implementation, experimentation, and writing.

March 24 at 11:59 PM: Submit the final draft version as a tagged release in
the document's GitHub repository.

Week Eleven (March 27 - 31) through Week Fourteen (April 17 - 21): Oral
defense of senior theses.

Week Fifteen (April 24 - April 28) through Week Sixteen (May 1 - May 5):
Final revisions to senior thesis document.

May 5 at 11:59 PM: Submit the final version of senior thesis as a tagged
release in the document's GitHub repository.

You will note that the end of this issue gives you questions that you must
respond to within 24 hours. Please excerpt each of these questions in the issue
tracker and then provide a detailed, thoughtful written response. If there is an
extenuating circumstance that prevents you from responding within 24 hours,
please alert me to the challenges that you face as soon as possible.
Detailed Feedback
Here are additional details that you must consider as you complete the final
draft of your senior comprehensive project:

[x] Don't forget that, in addition to finishing the final version of your senior
thesis you also need to have a completed version of your computational
artifact that meets all of the baseline requirements outlined in the syllabus.

[x] Please make sure that your senior comprehensive project meets all of the
baseline requirements outlined in the syllabus. You should use the syllabus as
a checklist so as to confirm that you meet every baseline requirement. If you
judge that it is fundamentally impossible for you to meet one of these
baseline requirements, please meet with me to explain why that is the case.

[x] The thesis document that you submitted still contains template content. You
need to remove all of this template content before you submit the final
version of your senior thesis. For instance, you need to remove the listing of
the tables if you are not going to include any tables in your thesis.

[x] There are formatting mistakes in the current draft of your thesis. Please
coordinate with Professor Luman to ensure that all of these issues are
promptly resolved. If you have not done so already, you need to review (and
most likely accept) the changes in the PR that Professor Luman raised in the
GitHub repository that contains your senior thesis chapters.

[x] A lot of the content in the introduction is written in a "personal"
fashion instead of in a "professional" fashion. You should rewrite most of
this content so that it takes a professional standpoint and includes
references to support the claims that you are making.

[x] There a number of sentences in your senior thesis that are written in a
way that is not grammatically correct. For instance, you wrote: "Challenges
have arouse throughout this research" As it is written, a reader will not be
able to parse this sentence. Can you please rewrite it and other sentences in
your thesis that do not use correct grammar? You need to make sure that your
sentences are clear, syntactically and grammatically correct, and interesting
and fun to read. To conclude this point, I want to stress that there are
numerous writing mistakes in this document that all must be resolved in
advance of the final deadline.

[x] After reading the first few pages of your thesis, it is not clear what it
is that you implemented and why this tool is actually needed. Can you please
make more clear what are the knowledge and practice gaps and how your system
fills those gaps? It is also worth noting that I had the same experience when
listening to your presentation: the overall contribution is not very clear.

[x] If possible, you should try to avoid sentences that have one phrase only
at either the top or the bottom of a page. For instance, on page 8 there is a
case where there is only a single phrase at the top of the page. Sometimes you
can fix that by moving around floating elements or adding to a paragraph.

[x] Your thesis has several different technical diagrams that have a different
theme to them. Did you create all of these diagrams yourself? If you did, then
please make sure to unify their theme (i.e., the colors and the thickness of
the lines and other visual aspects of the diagram). If you did not create
these diagrams, then do you have permission to use them? Overall, you should
aim to create your own original diagrams that have a consistent theme.

[x] The aspect ratio of many of the graphs is not correct. Did you create
these graphs? If not, then I encourage you to make your own graphs that
explore a specific experimental trend. Overall, all of the graphs inside of
the thesis document should be your own intellectual property and of a
consistent form in terms of, for instance, aspect ratio, colors, and symbols.

[x] It looks like there are some places in your thesis that do not
consistently use the same referencing standard. For instance, you use the
reference standard "An approach to predict ..." on page 20 but then use "[1]"
on several other pages. Overall, you should use the second approach as it is
the standard in computer science and for the thesis document. You also need to
make sure that you include the reference, like "[8]" and then place the period
after the reference. To be clear, you need to have a consistent and correct
format for all references across the entire thesis document!

[x] Your thesis uses words like "complexity" and "scalability" without a clear
definition of these terms. Can you please make sure that every one of the
evaluation metrics that you mention is first clearly defined?

[x] Can you add more content to your thesis about the steps that a person
would take if they want to install your tool? How many steps are
involved in this process? What are the software requirements associated with
using this tool? Overall, the thesis needs more details about these issues. It
is also important to note that the technical diagram in Figure 9 is poorly
formatted and lacking in suitable details; please heavily revise it.

[x] It is not possible to read any of the graphs that you have included in
your thesis. Please make sure to change the theme, font size, and other
aspects of the graphs so that they can be easily read. I should also point out
that every metric that you visualize through a graph needs to have an
associated definition through an equation in your thesis. For instance, what
is the precise meaning of "accuracy". I see that your thesis references, for
instance, MSE, without giving an equation and/or a reference that precisely
defines what is the MSE and how it is calculated and used in your research.

[x] The thesis needs more details about the threats to the validity of the
experimental results and the limitations of the presented technique. Can you
please add more details about these issues? Finally, you can use this content
as a springboard for additional material in your final chapter that is about
the ways in which future researchers can extend your project. Thanks!

Project Questions

What are the inputs, outputs, and behaviors of your tool? While I acknowledge
that you have explained some aspects of your tool, can you please include a
technical diagram that shows its key components? Finally, what are the aspects
of the tool that you implemented and which are those that are reused?

What are the ways in which you tool does (and does not) work effectively? For
the ways in which you tool does not work, can you please outline a plan that
you would suggest for resolving these issues?

What are circumstances in which you tool would (and would not) make good
predictions and recommendations to someone who wanted to make investments in
the cryptocurrency market? Why would it make these predictions and
recommendations?

Note: Your response to the second and third question must contain a clear
statement of the evaluation metrics by which you would measure words like
"effective" and "ineffective" and "good" and "bad".

all suggestions addressed


Issue with redirects when redirecting link is blocked

New Issue Checklist (tick off like this: [x])

[x] I checked existing issues (open and closed) for possible duplicates
[x] I can reproduce the problem on the latest stable version (not nightly!)
[x] The issue is not about adding entries to the default blacklist

What is your browser?

[x] Waterfox 56.1.0x64

What is your operating system?

[x] Windows

Description (please include examples/screenshots where applicable)
Clicking this link (edited since it is a tracking link tied to me):
http://www.jdoqocy.com/click-6302448-13218011?URL=https%3A%2F%2Fwww.fanatical.com%2Fen%2Fgame%2Fbatman-arkham-origins
gives me this image:

because jdoqocy is blocked by uMatrix. I can simply click the second link (the fanatical one) to get there, but I wonder if Skip Redirect could get by this by and keep uMatrix from even having to block it.
Edit: Forgot to mention, and I'm not sure if this is helpful for or even applicable to this issue, but this link:
https://slickdeals.net/?adobeRef=74eac2fe4be511e8821f668ace3e36770009&pno=384839&lno=1&sdtid=11534351&trd=Adorama&afsrc=1
isn't blocked, and Skip Redirect sends me to the appropriate page, even though with SR disabled uMatrix blocks the link due to ojrq.net being blocked.

The extension has no influence over the order of events it gets. Sometimes it might get an event first, another time it might be a different extension. The order might be consistent too, but only the browser knows the internals of how this is handled. Nothing I can do.


Responsive Charts

How can I make the charts responsive in height and width?

The width and height of the chart needs to be set during initialization. If you want to change the container width and height dynamically, you can do so with the resize method.
myChart.resize({
  width: 800,
  height: 400
});

https://echarts.apache.org/handbook/en/concepts/chart-size/

Thank you!


Is Django left out? No enough examples.

While checking through this project, it is quite awesome and I have been trying to integrate it with Django for an app. However, even the flask example was not integrated with any database. No pointers to how this can be done as well. Can't you guys provide a skeletal but working example of this project in Django with database integrated? Or is the project not being actively developed/maintained?

You can use https://github.com/mkalioby/django-mfa2 for Django integration

@mkalioby django-mfa doesn't meet the spec. I need a password-less system, registration should only require some special alphanumeric characters as username and surname as display name. Clicking register should bring up the platform's fingerprint scanner and touching it should send the hashed challenge as well as the username and display name to the database for storage. Then, users whose credentials have been saved can then login with only their username and fingerprint. No password in the entire process. I have implemented this with DUO lab's webauthn but it supports fewer attestation formats and I need to support all attestation formats including tpm, android-safetynet, and apple.
This is why I need a concrete example with python-fido2 which supports all these formats.

@Sirneij, it isn't django-mfa2 not django-mfa, and it supports all the attestation formats (keys, tpm, android safetynet and Apple) as it is based on python-fido2, the development team can help in your requirements, currently, we are using it without the use of a password and some ppl integrated it with allauth as well. so you can move the discussion to its repo.

@mkalioby If that's the case, I'll move it.

@Sirneij, I think you shall close this one.

@mkalioby Oh, let me do that. Thanks!

I have gotten it sorted out through @mkalioby assistance.


How to identify section/table index in footer?

Is there an easy way to identify section/table in footer?
I have a few docx which seem to be same template with header and footer, but somehow some worked well to use python-docx and extracted info successfully, but some did not. Thus, I use below code attempting to identify what the index is.
sections = doc.sections
print(len(sections)) # Output "1". All below annotation is also output in console, because I could only get one set of value in For loop.
for section in sections:
print(section.start_type) # NEW_PAGE (2)
print('------')
ft = section.footer
print(ft) # <docx.section._Footer object at 0x000002888D67EEF0>
print('###')
print(len(ft.tables)) # 0
It is odd that the section length is "1" and table length is "0", because I do see my target docx has table as well as paragraph in footer (right-click on that part would pop-up "edit foot")
Highly appreciate if anyone can help me out, many thanks!!!

Add:
I know a docx document can be unzipped to a folder with a number of files. Is there any info that I can get there in order to better use python docx?


BQN386 not usable in gvim?

I installed BQN386 under Ubuntu 22.04 and it is available system-wide in most applications. However, I can't select it in gvim. I first thought this was because it's not classified as monospaced, but according to fontforge it is.
Is there a way to make it available in gvim?

Unfortunately, I do not know why this happens. I've tried to look into it (for gnome-terminal not gvim, but I'd assume the reason is the same) but search results nor looking at source code brought anything up.

FYI it works fine in Mate's terminal, so for a BQN terminal session it's ok.

I think I got it working! (not tested with gvim, but it now appears in gnome-terminal)


Allow info to only display current version

Which version and edition of Flyway are you using?
5.2.2
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
command line
Which database are you using (type & version)?
postgres but not really relevant
Which operating system are you using?
mac os
What
Allow info to omit the upgrade table and just display the current version.
Reasoning: parse the current version from the command output, yet avoiding the ever growing table produced by info which clutters the log (in case of a CI job etc.).

Related to #2254


fixed the docs of provider

There was ProviderScope but for provider, we need Provider
https://riverpod.dev/docs/concepts/providers#creating-a-provider

But for creating provider we need provider widget
right?

Providers aren't widgets in Riverpod

I am talking about this https://riverpod.dev/docs/concepts/providers/

ohh yes!
my bad
sorry for that.


updating pandoc as requested

Using simple-pandoc from npm. It now requires pandoc installed on the machine.

Bin is not found even if pandoc path is settled globally. Might need to use another approach


Patch support attestation log search and bundle to payload hash check

Signed-off-by: houdini91<EMAIL_ADDRESS>Hi guys.
My first PR to cosign hope i am not misunderstanding something critical.
Summary
PR is a patch to the rekor validation flow when using attestation.

When bundle is not present searching for intoto rekor entries would fail because of search was using in to the wrong entry type (rekord vs intoto).
When verifying the attached rekor Bundle the certificate expire was checked and the validity of the bundle signiture.
I added a  hash test between the bundle content hash and actual payload hash.
I am not sure if the idea is to verify the bundle actual body is the responsibility of the policy.

Thanks!!!


Feature/brokerless p2p

TODO:

[ ] Update to new transports API

Build status:

Linux
Windows

Build status:

Linux
Windows

Build status:

Linux
Windows

Build status:

Linux
Windows

Build status:

Linux
Windows

Build status:

Linux
Windows

Build status:

Linux
Windows

Build status:

Linux
Windows

Build status:

Linux
Windows

I think this is pretty cool - will it be worked on again?


fix: check for null input for Id classes

Check and report null input for the static create methods of the InstanceId, InstanceConfigId, DatabaseId, SessionId and BackupId classes.
Fixes #145

LGTM. I wonder shouldn't the title be "fix: check for null input for Id classes"? Because null inputs are invalid.

Good point, fixed the header and comment.


Chan select offer

Add a variant to the chan_select! macro allowing Offer<...> sequences to be matched

Is it correctly understood that a chan_select cannot have both c.recv() and c.offer() in it at the same time?

Yes, that is correct - it might prove to be a limitation that should be addressed, but let us wait and see if this version is sufficient


docs(protocol,repo): standardize protocol docs

Summary

Updated LICENSE.md to 2024
Updated CONTRIBUTING.md consistency standards + applied to all contracts
Changed pragma solidity ^0.8.24 -> pragma solidity 0.8.24 for consistency in compiler
Fixed invalid config in foundry.toml, solc-version -> solc_version

@davidtaikocha @smtmfft you two also need to review this PR as you guys are both writing solidity code sometimes.


BDD test for incorrect number of block devices in CSPC

Description
Raid groups in CSPC can have the following number of block devices only :
stripe -- n where n >=1
mirror -- 2
raidz/raidz1 -- 3
raidz2 -- 6
A BDD test to verify for invalid block device count in CSPC can be written.
References
See following for sample BDD test :
https://github.com/openebs/maya/tree/master/tests/cstor/cspc/positive/provisioning
See following for design document and CSPC schema reference :
https://github.com/openebs/openebs/blob/master/contribute/design/1.x/cstor-operator/doc.md

@sonasingh46 I am working on it.


Split the areas in different projects

Is it possible to configure your project to split the different areas into different projects?
The objective is to do something like this:

Cms.Web (ASP.NET Core web app, contains no views and no controllers)
Cms.Security (.NET Standard project, considered like the "Security" area of the Cms.Web web app)
Cms.Admin (.NET Standard project, considered like the "Administration" area of the Cms.Web web app)
and so on...

Is it possible to configure ASP.NET Core to do this?
I tried different things like overriding the rules of RazorViewEngine or implement a custom RazorViewEngine but nothing worked. I can call the controllers of the deported areas, the actions are executed but the views are still searched in the web app project, into areas subfolders.

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

ID: 50249794-b4be-a6aa-d7b3-b3918eb282bf
Version Independent ID: 39d98269-a7dc-017f-55cd-bd33df097368
Content: Areas in ASP.NET Core
Content Source: aspnetcore/mvc/controllers/areas.md
Product: aspnet-core
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

@AdrienTorris Have you tried using Razor Class Libraries? Read more here: https://docs.microsoft.com/aspnet/core/razor-pages/ui-class

@scottaddie No I didn't try. I tried a lot of things today, like abstract myself the ASP.NET Core router, the razor view engine and other stuff but my code is very complicated now for a very few features, and still not working like I want. I'll check the Razor Class Libraries, thank's.

I’m working on a project at the moment to do just that :  https://github.com/treefishuk/nomoni it’s very early days but it may give you some inspiration. It’s based off extcore which may also suit your needs.

@scottaddie I couldn't wait I had to check the Razor Class Libraries. It still not working with the views but it works with the pages, it's a way more efficient than the result of my last two days of code, thank's you! I'll keep digging, starting with the documentation, to see if the Razor Class Libraries could work with the controller/views.

@treefishuk I'll check, thank you.

@scottaddie For now the Razor Class Libraries are matching my needs, thank you very much.

@AdrienTorris That's great to hear. Thank you for following up.


pipenv should be using the created virtualenv transparently without creating .vscode/settings.json

Environment data

VS Code version: 1.21.1
Extension version (available under the Extensions sidebar): 2018.2.1
OS and version: MacOS 10.13.3
Python version (& distribution if applicable, e.g. Anaconda): 3.6.4
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): XXX
Relevant/affected Python packages and their versions: XXX

Actual behavior

Created a settings.json with the resolved virtualenv

Expected  behavior

Call pipenv based on the Pipfile
Gets the path to the created virtualenv
Yell/prompt user to do so if the virtualenv is not created

This is especially not ideal because the resolved path to the virtualenv contains user info, and I'm not sure what happened when the pipfile is updated, does vscode redo the resolution automatically?

without creating .vscode/settings.json

This is necessary to prevent VS Code from having to run pipenv & other commands everytime the extension needs to determine and launch a python process.

and I'm not sure what happened when the pipfile is updated

Does updating the PipFile create a new Pip environment behind the scene. If you are not aware of this, then you're speculating there could be an issue. I.e. there is no issue with the extension at this stage.
Please confirm this. If you are able to replicate an issue, then fine, else I'll be closing this issue.

Thanks for the swifty response!
The whole point I'm trying to make is it seems better to run pipenv --venv on startup to determine the location rather than relying on a config file which creates another source of truth, which is potentially stale, and interfere with the project/workspace configuration automatically.
Could you elaborate on why are we trying to avoid running commands all together? I don't see it as super expensive given it's only running once on startup/reload.

The whole point I'm trying to make is it seems better to run pipenv --venv on startup to determine the location rather than relying on a config file which creates another source of truth

We are doing this today.

Could you elaborate on why are we trying to avoid running commands all together

Sure.
The extension runs python processes every now and then for multiple operations (linting, formatting,  opening terminals, other language capabilities such as code navigation, intelliense, debugging and the like). For each of these we need to know the version of Python that needs to be used with the current workspace.
Running python processes for each of these, would most certainly impact the overall user experience. I.e. this is a caching mechanism (not having to do this every time a user opens a file/workspace).
The model we've used is to store the python path in the settings.json file. This works very well for all scenarios (conda environments, virtual environments and other python environments). We cannot make PipEnv an exception unless of course there is an issue with this.
As stated earlier, if you are able to replicate an issue we will gladly look into this.

That makes sense, if that's already a made decision for other plugins as well. Thanks for the detailed explanation and the fast response! It feels really good compared to other OSS project :)


Problem with exporting hand with IK from DUIK

I have created a hand in AI from 3 pieces. Arm, forearm and hand. I applied DUIK IK on it and animated some keyframes. Exported a demo with the Bodymovin and the export just looks like my assets stacked on one another.
Google Chrome
After Effects Version: 2017.2 Release  <IP_ADDRESS>
What did you do? Please explain the steps you took before you encountered the problem.
New Composition, Added 3 vector assets. arm, forearm, hand. Autorigged the hand using DUIK feature autorig for hands.  Animated position keyframe on new layer created by DUIK. exported with as demo with Bodymovin
What did you expect to happen?
I was supposed to get the animation in js format, but i only get in the browser the assets i used all stacked up.
Please provide a download link to the After Effects file that demonstrates the problem.
hand anim DUIK test.zip
Bodymovin export.zip

Hi, I'll check it when I get home, but have you selected to include guided layers on export?
I think Duik uses guided layers.

That mostly solved the problem! Thanks so much for the fast reply!

Back again.
Managed to export the animation. I made the composition using an .ai file and all my layers are vector.
The shapes in AE look sharp.
After the export they look raster and each asset has a dark pixelated border, plus the animation seems to be framing in the export.
I read around and found that i have to convert the vector layers to AE shapes. I did that. The result in the exports are block of colors as large as the composition size.
I have attached the demo for both exports.
export with ai files.zip
export with converted to shapes.zip

What do you advise?

Hi, unfortunately when converting ai layers to shapes, AE adds some unnecessary extra path with a merge path on each group and bodymovin doesn't support merge paths.
So you need to remove them manually, and everything will work fine.
Expand each layer, open it's content and check every group.
Let me know if you need further help.


Can not correctly assign the file path from target_compile_definitions in CMakeList.txt

@henryiii @LecrisUT Thanks so much for the help in last closed issue. I have followed your guidance but the second problem is still remained. I would like to pose more detail here, I'm not sure if this is the scikit issue or some function is not supported.
In my project CMakeList.txt
    if(DEFINED SKBUILD_PLATLIB_DIR)
      message(STATUS "SKBUILD_PLATLIB_DIR: ${SKBUILD_PLATLIB_DIR}")
      set(INSTALL_DIR ${SKBUILD_PLATLIB_DIR}/${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/urdf)
    else()
      set(INSTALL_DIR ${CMAKE_INSTALL_DATAROOTDIR}/${PROJECT_NAME}/urdf)
    endif()

    target_compile_definitions(my_package_py
      PRIVATE
        INSTALLED_URDF_PATH="${INSTALL_DIR}"
    )

    install(DIRECTORY ${CMAKE_SOURCE_DIR}/urdf/
      DESTINATION ${INSTALL_DIR}
      FILES_MATCHING PATTERN "*.urdf"
    )

In .toml
# config or envvar will override toml. See also ``cmake.define``.
cmake.args = ["-DBUILD_PYTHON_BINDINGS=ON", "-DBUILD_TESTING=OFF"]

# Protect the configuration against future changes in scikit-build-core
minimum-version = "0.4"

# Setuptools-style build caching in a local directory
build-dir = "build/{wheel_tag}"

# Build stable ABI wheels for CPython 3.12+
wheel.py-api = "cp312"

# The build type to use when building the project. Valid options are: "Debug",
# "Release", "RelWithDebInfo", "MinSizeRel", "", etc.
cmake.build-type = "Release"

# Verbose printout when building.
cmake.verbose = true

# If set to True (the default), CMake will be run before building the wheel.
wheel.cmake = true

The verbose logs from pip wheel
*** Building project with Ninja...
.....
[8/27] /usr/bin/x86_64-linux-gnu-g++ -DBOOST_MPL_LIMIT_LIST_SIZE=30 -DBOOST_MPL_LIMIT_VECTOR_SIZE=30

-DHPP_FCL_HAS_OCTOMAP -DHPP_FCL_HAVE_OCTOMAP -DINSTALLED_URDF_PATH=\"/tmp/tmpnc87syyx/wheel/platlib/share/my_package/urdf\" -DOCTOMAP_MAJOR_VERSION=1 -DOCTOMAP_MINOR_VERSION=9 -DOCTOMAP_PATCH_VERSION=7

-DPINOCCHIO_WITH_HPP_FCL -DPINOCCHIO_WITH_URDFDOM -DURDF_PATH=\"/workspaces/src/my_package/urdf/\" -I/workspaces/src/my_package/include -isystem /usr/local/include/eigen3 -isystem /opt/ros/humble/include/urdfdom -isystem /opt/ros/humble/include/urdfdom_headers -O3

-DNDEBUG -fPIC -std=c++20 -MD -MT CMakeFiles/my_package.dir/src/ik_solver.cpp.o -MF CMakeFiles/my_package.dir/src/ik_solver.cpp.o.d -o CMakeFiles/my_package.dir/src/ik_solver.cpp.o -c /workspaces/src/ik_solver.cpp
.....
*** Installing project into wheel...
  -- Install configuration: "Release"
  ......
  -- Installing: /tmp/tmpnc87syyx/wheel/platlib/share/my_package/urdf/panda.urdf
  ......
 -- Installing: /tmp/tmpnc87syyx/wheel/platlib/lib/python3.10/site-packages/my_package/my_package_py.cpython-310-x86_64-linux-gnu.so
  -- Set runtime path of "/tmp/tmpnc87syyx/wheel/platlib/lib/python3.10/site-packages/my_package/my_package_py.cpython-310-x86_64-linux-gnu.so" to ""
 .......
 -- Up-to-date: /tmp/tmpnc87syyx/wheel/platlib/share/my_package/urdf/panda.urdf

As above shown, the INSTALLED_URDF_PATH=\"/tmp/tmpnc87syyx/wheel/platlib/share/my_package/urdf\
After the wheel is successfully built and installed, I tried to run my code, and my code use the compilation defination as
    std::string urdf_path = std::filesystem::path(INSTALLED_URDF_PATH) / "panda.urdf";

and got the following error
Error:   File /tmp/tmpnc87syyx/wheel/platlib/share/my_package/urdf/panda.urdf does not exist
         at line 55 in ./urdf_parser/src/model.cpp
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: The file /tmp/tmpnc87syyx/wheel/platlib/share/my_package/urdf/panda.urdf does not contain a valid URDF model.

Is there a way to work around this or it's not a supported feature? Thanks!

This is the issue of not being relocatable. The best approach would be to construct the relative path between the bindir and the CMAKE_INSTALL_DATAROOTDIR. Although you might also be able to just remove SKBUILD_PLATLIB_DIR and install everything under the package path with the same CMAKE_INSTALL_DATAROOTDIR folder structure

@LecrisUT not sure how to do the relative path, tried some stuff and did not make it work. I also tried second option to remove SKBUILD_PLATLIB_DIR use same  CMAKE_INSTALL_DATAROOTDIR
it throws following error, at lease this time  it doesnt start with tmp
Error:   File share/my_package/urdf/panda.urdf does not exist
         at line 55 in ./urdf_parser/src/model.cpp
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: The file share/my_package/urdf/panda.urdf does not contain a valid URDF model.

Each of the wheel folders cannot refer to the others. You can't reliably compute a relative path between them. SKBUILD_PLATLIB_DIR can't know exactly where it will be installed relative to SKBUILD_DATA_DIR, same with SKBUILD_SCRIPTS_DIR, etc. (Technically, I think you could construct SKBUILD_METADATA_DIR vs SKBUILD_PLATLIB_DIR, but that's the only one, and it's not the same as it's laid out in the wheel as on disk, at least the names are different).
I think you are installing everything into site-packages? That's what you want to do. Then you'd get the path from Python, and pass it into C++. Python will be able to produce the correct path (either relative to the current file, or via importlib.resources, whichever way you want to go).

@henryiii Got it, in this case, I will change the interface to take the path as input. For my case, it might be hard to get the python path which depends on the python version. Thanks again for the help from both of you. I would like to close the issue.

If you’re running from Python as an extension module, that should be easy. If you’re not running it from Python, then it depends on if you’ve wrapped it in an entry point or are installing it directly to scripts. I believe you cannot reliably create the correct path from scripts, so you have to either also install your data files into scripts, or you have to use one of the other methods. This is why the cmake package has a wrapper entry point.


Add payment failed status, and add user roles to statuses, and update finance1 to finance

Fixes #3567
Copy of #3578

Duplicate of #3585


How to manage dependencies with conflicting type declarations?

I have already posted this issue in Stackoverflow but no one has any idea apparently on how to address this. I would consider this a concern of the Typescript project since they should have some idea or opinion on how to prevent such issues:
I have the error: Subsequent variable declarations must have the same type
This is occurring because two of my dependencies, both of which I need; declare the same type.
Jest<EMAIL_ADDRESS>=> declare var test: jest.
testcafe node_modules/testcafe//ts-defs/index.d.ts => declare var test: TestFn;
My project is a react/redux project using webpack, babel and obviously Typescript.
The error occurs when I am running my dev server via npm start which uses webpack-dev-server. It also creates a problem when I run jest since it uses testcafe's version of the declared Test type.
How can this be resolved?

Exclude one or the other files from your compilation, or update the declaration files to not both claim to be stomping on the same global variable. That's it.

See also https://github.com/DevExpress/testcafe/issues/1537

@RyanCavanaugh Thanks appreciate the testcafe issue reference. The issue though is that I don't have the files configured in my webpack configuration. It appears typescript is on its own accord looking at every dependency in my package.json, looking for declaration files and throwing errors on any type declaration collisions. What is really strange is that I even have in my .tsconfig:  "exclude": [ "node_modules"]? So to sum: neither Jest nor Testcafe are configured in the build process nor the dev configuration, they run independently and the thrown error occurs even when they're not even running?


Add onAfterRender* events to Survey model.

There are tasks that require to modify generated DOM elements after rendering.
Three new events: onAfterRenderSurvey, onAfterRenderPage and onAfterRenderQuestion are needed.
The options will contains two parameters: survey or page or question objects and htmlElement - a DOM element that associates with the model object.

Implemented. An exampled needed.

I'm very excited about this!
Here is an example of how I'm using it:
surveyModel.onAfterRenderQuestion.add(function (sender, options) {
        console.log('onAfterRenderQuestion options', options);
        if (options.question.name === 'initiate') {
            colorizeItems($('label.radio'));
        } else {
            $('label.radio').removeAttr('style');
        }
    });

@ryancwalsh You may want to use options.htmlElement. It is the htmlElement for this question. In this case you may modify the DOM of this element and its children.
Thank you,
Andrew

@andrewtelnov Cool, thanks!
Here is what I'm using now:
    surveyModel.onAfterRenderQuestion.add(function (sender, options) {
        console.log('onAfterRenderQuestion options', options);
        if (options.question.name === 'initiate') {
            colorizeItems($(options.htmlElement).find('label.radio'));
        } else {
            $(options.htmlElement).find('label.radio').removeAttr('style');
        }
    });

It seems like the else is required since the templating reuses the label DOM elements on future pages/questions.
That's how I got it to behave how I wanted.
Thanks.

@ryancwalsh Cool!
Thank you,
Andrew

The better way is to use the custom widget feature with isDefaultRender set to true.
Here is the demo: http://surveyjs.org/examples/jquery/custom-widget-barrating.html


Fix UnboundLocalError in Geometric

When I tried to use the Geometric augmentation with bounding boxes but without key-points, I got an UnboundLocalError due to the remove_indices -list not existing at line 212. This PR should hopefully fix that.

Thanks!


Reinstate MARINe rocky intertidal modals

These must've gotten dropped when I auto-generated the modals.
Reinstate the MARINe rocky intertidal datasets using onmsR functions under Reference - Data: Rocky intertidal (MARINe) | onmsR and looking at previous versions of the files from commit history.

DONE: Barnacles
Got the basics to work for barnacles in these commits:

fix _site.yml to output_dir: "." vs "_site"; only barnacles for now · noaa-onms/ocnms@a5524ed
+ rocky-shore_barnacles dynamic again · noaa-onms/ocnms@2ae308f

And new dynamic_modal column (TorF`) in Master_OCNMS_infographic_content - Google Sheets for modals.
TODO: other dynamic Rmds from previous MARINe modals

Download zip from previous version from https://github.com/noaa-onms/ocnms/tree/ac87c3396cf50c87b099588218f6b9785df58589:

Mix dynamic from there into the static from latest and set flag T in dynamic_modal column of Master_OCNMS_infographic_content - Google Sheets

Hey @bbest
I was finally able to update
rocky-shore_ochre-star.Rmd
rocky-shore_mussels.Rmd
They should have interactive plots and maps as well as the static images not derived from 'data/rocky-intertidal_MARINe/sanctuary_species_percentcover.csv"' (I.e, Trends - condition r insert_figure("rocky-shore_mussels.html", "figures/S.LR.12.5 - Mussell shell thickness.jpg")). I changed the status in the new dynamic_modal column  in Master_OCNMS_infographic_content - Google Sheets for modals to reflect this.
I also went ahead and added a dynamic graph of Dwarf Rockweed to a new file rocky-shore_macroalgae-surfgrass_dynamic.Rmd. The current version (rocky-shore_macroalgae-surfgrass.Rmd) called in the WebCR has a static MARINe plot, not a screenshot of a dynamic plot. However, there are dynamic plots in the pervious version of this modal window. We can keep it as is, or call the new .Rmd file.
From what I can tell, these are the only other interactive plots that needed to be added back in.
Unfortunately, I am unable to knit any of these files on my end. Based on the screenshot below, I cannot  seem to load the onmsR package based on my current version of R. I am also confused by this error message:
Error: file.exists(google_sa_json) is not TRUE Execution halted
The path in infographiqR.R for my user access is still correct. The repo is also up to date; any thoughts?

Revisiting thing. We should have interactive plots for Mussels and rocky-shore_mussels.Rmd and rocky-shore_ochre-star.Rmd.
plot_intertidal_nms() should be working in those modals, but I'm getting errors. Will try to sort this out ASAP

Current issue:

[ ] Need to add captions to dynamic figures. Specifically, need to add something to insert_figure() to correctly call captions from master-spreadsheet.

Example for non-dynamic figures:

This errors out for dynamic figures:

[ ] Need to change the default plotting for the way dygraphs addresses axis ticks: dygraphs x-axis labels . Currently, dygraphs defaults to printing "Jan" on axis ticks for time series data. We can likely change this, but it's going to take some serious sleuthing

Update: there are other modals that might have a caption, but no text (e.g., kelp-forest_benthic-intertebrates.Rmd). insert_figure() needs arguments for both figures and captions. What do?

Update: the updated MARINe data are now in ./data/rocky-intertidal_MARINe and labeled accordingly (with "_new" as the suffix). Everything should be formatted correctly. However, something isn't working right:

w/ backtrace:

modals/rocky-shore_barnacles.Rmd


vagrant basebox command not recognized after installing veewee plugin

Running on Mac OS X 10.9.1
Leeloo:~ karianna$ vagrant -v
Vagrant 1.4.2
Leeloo:~ karianna$ vagrant plugin list
veewee (0.3.12)
=====================
Leeloo:~ karianna$ vagrant basebox -h
Usage: vagrant [-v] [-h] command []
-v, --version                    Print the version and exit.
-h, --help                       Print this help.

Available subcommands:
box          manages boxes: installation, removal, etc.
destroy      stops and deletes all traces of the vagrant machine
halt         stops the vagrant machine
help         shows the help for a subcommand
init         initializes a new Vagrant environment by creating a Vagrantfile
package      packages a running vagrant environment into a box
plugin       manages plugins: install, uninstall, update, etc.
provision    provisions the vagrant machine
reload       restarts vagrant machine, loads new Vagrantfile configuration
resume       resume a suspended vagrant machine
ssh          connects to machine via SSH
ssh-config   outputs OpenSSH valid configuration to connect to the machine
status       outputs status of the vagrant machine
suspend      suspends the machine
up           starts and provisions the vagrant environment
For help on any individual command run vagrant COMMAND -h

closing as there was no feedback in three months, please let me know if you can provide more details and I will reopen

I have this issue on ubuntu 14.04 LTS.

which vagrant
/usr/bin/vagrant

gem env
RubyGems Environment:

RUBYGEMS VERSION: 1.8.23
RUBY VERSION: 1.9.3 (2013-11-22 patchlevel 484) [x86_64-linux]
INSTALLATION DIRECTORY: /var/lib/gems/1.9.1
RUBY EXECUTABLE: /usr/bin/ruby1.9.1
EXECUTABLE DIRECTORY: /usr/local/bin
RUBYGEMS PLATFORMS:

ruby
x86_64-linux

GEM PATHS:

/var/lib/gems/1.9.1
/home/chris/.gem/ruby/1.9.1

GEM CONFIGURATION:

:update_sources => true
:verbose => true
:benchmark => false
:backtrace => false
:bulk_threshold => 1000

REMOTE SOURCES:

http://rubygems.org/

I installed veewee via gem

gem install veewee


Instructions for setting up Ubuntu 22.04 with WSL

LGTM. I'm also looking into the free VMWare option so will add that later if it works well.


remove dry-run flags

What does this change
removes dry-run flag from porter credentials generate and porter parameters generate
What issue does it fix
Closes #1086
Notes for the reviewer
Very tiny fix but working my way throughout the project and can contribute saner PRs in the future :)
Checklist

[ ] Unit Tests
[ ] Documentation
[ ] Schema (porter.yaml)

@adelowo Thank you for the pull request!  The only changes left are the auto-generated/updated cli docs.  These are updated when make docs-gen is run (included in make build as well.)  When convenient, can you run the command and add the changed files to this PR?

@vdice This PR has been updated with the generated docs.

@adelowo Thank you!

/azp run porter-integration

Thanks for cleaning up those commands! 👍


Added Review page

Related Issue
Fixes:  #4624
Description
Added Review page
Type of PR

[x] Feature enhancement

Screenshots / videos (if applicable)

ice_video_20241105-161700.webm
Checklist:

[x] I have made this change from my own.
[x] I have taken help from some online resources.
[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] My changes generate no new warnings.
[x] I have tested the changes thoroughly before submitting this pull request.
[x] I have provided relevant issue numbers and screenshots after making the changes.

@abhi03ruchi please merge this PR and add label level 3 and gssoc-ex

we already have this feature . testimonial section and rate Us section on home page .