Deploy Project on Vercel with /docs/index.html as Main Page?

How can I deploy a project on Vercel such that the index.html file in the /docs directory serves as the main page of the site?
I see you provide instructions for Cloudflare and Github Pages.
I can't translate the instructions well, I am a bit new to this.
But I like golang usually on backend because its simple to use, never attempted to use it on front end only.

@jamiecropley thanks for posting this. I will work on this one soon and add a guide for Vercel.

@jamiecropley thanks for posting this. I will work on this one soon and add a guide for Vercel.

Keep this open as well, I will have a play around with it and update anything new I find here if it helps. My key concern with vercel, I have a paid plan budget $20 a month, I pay for this so I can build many sites for commercial use, but my main gripe is not always deploying in such a complex manner because that's how you end up with multiple charges, thus where it gets confusing for me more than anything.

That would be great, I gave it a brief try and did some progress with GitHub actions. Ended up here:
      # Push our generated site to vercel
      - name: Install Vercel CLI
        run: npm install --global vercel@latest
      - name: Copy output
        run: mkdir -p .vercel/output && cp -r public/* .vercel/output
      - name: Pull Vercel Environment Information
        run: vercel pull --yes --environment=production --token=${{ secrets.VERCEL_TOKEN }}
      - name: Deploy Project Artifacts to Vercel
        run: vercel deploy --prebuilt --prod --token=${{ secrets.VERCEL_TOKEN }}

However, it still complaining about some vercel configuration.

I know at the basic level I can build locally, then simply manually deploy to github which in turn auto deploys to vercel, thus it is only deploying the static HTML files then, but would ideally want something for docs where I don't have to keep running so many build commands etc... every time I update a markdown file.

It would be great to read any findings you encounter. I gave it a brief try and made some progress with GitHub actions. Ended up here:
      # Push our generated site to vercel
      - name: Install Vercel CLI
        run: npm install --global vercel@latest

        # Here I'm copying the Doco output as the CLI tool expects the output to live
        # on .vercel/output
      - name: Copy output
        run: mkdir -p .vercel/output && cp -r public/* .vercel/output
      - name: Pull Vercel Environment Information
        run: vercel pull --yes --environment=production --token=${{ secrets.VERCEL_TOKEN }}
      - name: Deploy Project Artifacts to Vercel
        run: vercel deploy --prebuilt --prod --token=${{ secrets.VERCEL_TOKEN }}

However, it still complaining about some vercel configuration.

I think this could be a good key to it https://vercel.com/docs/projects/project-configuration but I don't usually add these in most my sites added on there, it will generate them automatically.

So I had to make my own document generator in golang to understand more how vercel would achieve something like this. I don't think honestly vercel works straight forward like this with a focus more on node / next js kinda side of things rather than go long. Ideally the best way is to generate the docs to HTML first then deploy those static files once generated.

Yes. You can initialize your docs locally with doco init and then run doco build to generate the public folder; that public folder will have the resulting HTML. If you want to see the changes to your docs, you can run them locally with doco serve which rebuilds the documentation as you change the documents.

Yes. You can initialize your docs locally with doco init and then run doco build to generate the public folder; that public folder will have the resulting HTML. If you want to see the changes to your docs, you can run them locally with doco serve which rebuilds the documentation as you change the documents.

Yeah, so usually Vercel is very good at this if the main framework is javascript driven, despite my best efforts and tests it just won't pick up anything golang, you need to just build it locally then deploy the locally generated HTML files and such this way.

Cool. Let's review this later on. Thanks for bringing this up. I learned a bit about Vecel.


Bugs on v-for on script setup with typescript on neovim + lsp

14 works fine, 13 doesn't

13 works fine, 12 doesn't

10 works fine, 9 doesn't

Code here:
https://gist.github.com/eduardoarandah/819d75ac81cd6bd00b2c995b690ea687
LspInfo:

 Language client log: /Users/lalo/.cache/nvim/lsp.log
 Detected filetype:   vue

 3 client(s) attached to this buffer:

 Client: volar (id: 11, pid: 97230, bufnr: [128, 20, 150, 125, 8])
 	filetypes:       vue
 	autostart:       true
 	root directory:  /Users/lalo/repos/palos
 	cmd:             vue-language-server --stdio

 Client: tailwindcss (id: 9, pid: 97225, bufnr: [155, 20, 150, 8, 125, 128])
 	filetypes:       aspnetcorerazor, astro, astro-markdown, blade, django-html, htmldjango, edge, eelixir, ejs, erb, eruby, gohtml, haml, handlebars, hbs, html, html-eex, heex, jade, leaf, liquid, markdown, mdx, mustache, njk, nunjucks, php, razor, slim, twig, css, less, postcss, sass, scss, stylus, sugarss, javascript, javascriptreact, reason, rescript, typescript, typescriptreact, vue, svelte
 	autostart:       true
 	root directory:  /Users/lalo/repos/palos
 	cmd:             tailwindcss-language-server --stdio

 Client: eslint (id: 12, pid: 97264, bufnr: [125])
 	filetypes:       javascript, javascriptreact, javascript.jsx, typescript, typescriptreact, typescript.tsx, vue
 	autostart:       true
 	root directory:  /Users/lalo/repos/palos
 	cmd:             vscode-eslint-language-server --stdio

 1 active client(s) not attached to this buffer:

 Client: tsserver (id: 10, pid: 97229, bufnr: [155])
 	filetypes:       javascript, javascriptreact, javascript.jsx, typescript, typescriptreact, typescript.tsx
 	autostart:       true
 	root directory:  /Users/lalo/repos/palos
 	cmd:             typescript-language-server --stdio

 Configured servers list: eslint, html, jsonls, tailwindcss, tsserver, vimls, volar, yamlls, bashls, sumneko_lua, intelephense, cssls

Install
NVIM v0.7.2
neovim/nvim-lspconfig df17834 (updated today)
lsp: volar (vue)
version     0.40.4
installed   30 Aug 2022 12:02

Bugs also appear on VsCode

Try https://github.com/vuejs/tsconfig/blob/main/tsconfig.json.


Madvoc 3->4: /list/${id} no longer working, but /list/{id} does

Current behavior
In Madvoc 3.x I used the following Action method:
        @Action(value = "/list/${id}", method = Action.GET)
	public JsonResult getList(@In("id") String id) {
              return GroceryService.get().getGroceryList(id);
	}

I converted this for Madvoc 4 into the following code
        @Action("/list/${id}") @GET
	public JsonResult getList(@In("id") String id) {
              return GroceryService.get().getGroceryList(id);
	}

This does no longer find the Action for URLs like http://localhost:8080/list/68798a5c-be46-41b8-985a-1b6f32fefd4c.
Changing to @Action("/list/{id}") does work.
Expected behavior
It's unclear for me when to use the Form ${foo}  and when {foo}. For simplicity I'd like to always use the first form.
Steps to Reproduce the Problem
The 3.x version can be found here, my port to 4.x is visible here and will be visible in master, soon.

Hey @bentolor!
What you experienced is non-backward-compatible change :) There is a way how to setup Jodd to work like before (with $), but the new way of using is:
@Action("/list/{id}")

Why the change? It's simple, the reason is that this format is a standard in e.g. Swagger and OpenAPI and some other libraries, so the decision was to go with the new format.
That being said, I just noticed that documentation is not fully updated :( Will fix that asap.
From now on, just don't use $ in Madvoc4. Hope this change make sense now...

I saw still remaining usages of $ – that's what I found confusing. If the change is globally to ommit the $ and only use {id} then I'm really fine with that.. Thanks for your quick response!

Just to be sure: did you saw that in the documentation? If so, I will fix today :))))

Yes. I re-read the sections about Actions and Injections. That's why I assumed $ is still up to date.
What I really missed is in the Actions and REST section an example about injecting Paramters as method parameters, which I feel is much more natural than binding to a variable.

Got it! Will try to fix it all! Thank you for pointing this out, this helps a lot!!!

@bentolor https://jodd.org/madvoc/rest.html#rest-annotation
At least it is better then before :) THanx again!


[database] Plan a migration process for the DB

There is no migration process with FastAPI or SQLAlchemy by default, we need to investigate our options here.

I've heard about this library, might be useful https://alembic.sqlalchemy.org/en/latest/tutorial.html

I've heard about this library, might be useful https://alembic.sqlalchemy.org/en/latest/tutorial.html

Indeed, for an example of the integration of alembic with FastAPI, the FastAPI creator used it for the fullstack template: https://github.com/tiangolo/full-stack-fastapi-postgresql

If tiangolo uses it, that might be a good option :+1:
Anyone fancies trying her/his luck with a PR?

Created a dedicated branch dbmigration-alembic, not ready yet for a PR I guess. Can you please have a look @chloeskt @florianriche  ? Especially you @frgfm since it concerns chore features !

@jeanpasquier75 Sure, would you have the ref to the specific modules you made your branch after? I have no experience with alembic so it's hard for me to compare :sweat_smile:

When you have some free time, it would be awesome to get this PR ready @jeanpasquier75 :grin:


Java error with Android

When I try my app on an emulator (I have not already tried on a real device) I get this error:
Error: java.lang.NumberFormatException: For input string: "my-file-path"
If anyone can tell me the reason for the problem I would be grateful since I don't know much about Android.

I also got this error, see my pull request fixing this and more #29


Adding make option -jN

Is is possible to set the option -jN in a variable?

You can control the command used for compilaton by setting cmake-ide-compile-command. Just add -jN there.
I'd still suggest to prefer using ninja over make though.


bayesian estimation of groups?

Can this package do anything along the lines of best?

I'm not familiar with BEST and didn't get all the details by a quick glance. Anyway, it should be possible to estimate two Gaussian (or Student t) distributions with unknown means and variances (and shared degrees of freedom). For such a simple model, MCMC probably performs very well and is easy to use and all the 1-D plots are easy to make with histograms. With VB, you'll lose some dependencies among the variables. But yes, in principle, I think BayesPy should support something along the lines of BEST, although I believe the results aren't as good as with MCMC because of the ignored posterior dependencies.


https://graphql-mesh.com/ not resolving

The homepage / docs site seems to be down.

Hi @Rodeoclash !
We recently did some DNS changes, so it might take a bit longer to propagate. Can you please try to reset/flush your DNS (based on the machine you are using) and then try again?

Hmm, just flushed but I'm still not able to resolve that domain. Weird!

Oh, i think graphql-mesh.com works, but www.graphql-mesh.com doesn't. I'll check again.

Looks like it just needed some time, it's working for me now


lxc start container: filesystem already mounted

Required information

Distribution: Ubuntu
Distribution version: Ubuntu 18.04.5 LTS
The output of "lxc info" or if that fails:

config:
  core.https_address: '[::]:8443'
  core.trust_password: true
api_extensions:
- storage_zfs_remove_snapshots
- container_host_shutdown_timeout
- container_stop_priority
- container_syscall_filtering
- auth_pki
- container_last_used_at
- etag
- patch
- usb_devices
- https_allowed_credentials
- image_compression_algorithm
- directory_manipulation
- container_cpu_time
- storage_zfs_use_refquota
- storage_lvm_mount_options
- network
- profile_usedby
- container_push
- container_exec_recording
- certificate_update
- container_exec_signal_handling
- gpu_devices
- container_image_properties
- migration_progress
- id_map
- network_firewall_filtering
- network_routes
- storage
- file_delete
- file_append
- network_dhcp_expiry
- storage_lvm_vg_rename
- storage_lvm_thinpool_rename
- network_vlan
- image_create_aliases
- container_stateless_copy
- container_only_migration
- storage_zfs_clone_copy
- unix_device_rename
- storage_lvm_use_thinpool
- storage_rsync_bwlimit
- network_vxlan_interface
- storage_btrfs_mount_options
- entity_description
- image_force_refresh
- storage_lvm_lv_resizing
- id_map_base
- file_symlinks
- container_push_target
- network_vlan_physical
- storage_images_delete
- container_edit_metadata
- container_snapshot_stateful_migration
- storage_driver_ceph
- storage_ceph_user_name
- resource_limits
- storage_volatile_initial_source
- storage_ceph_force_osd_reuse
- storage_block_filesystem_btrfs
- resources
- kernel_limits
- storage_api_volume_rename
- macaroon_authentication
- network_sriov
- console
- restrict_devlxd
- migration_pre_copy
- infiniband
- maas_network
- devlxd_events
- proxy
- network_dhcp_gateway
- file_get_symlink
- network_leases
- unix_device_hotplug
- storage_api_local_volume_handling
- operation_description
- clustering
- event_lifecycle
- storage_api_remote_volume_handling
- nvidia_runtime
- container_mount_propagation
- container_backup
- devlxd_images
- container_local_cross_pool_handling
- proxy_unix
- proxy_udp
- clustering_join
- proxy_tcp_udp_multi_port_handling
- network_state
- proxy_unix_dac_properties
- container_protection_delete
- unix_priv_drop
- pprof_http
- proxy_haproxy_protocol
- network_hwaddr
- proxy_nat
- network_nat_order
- container_full
- candid_authentication
- backup_compression
- candid_config
- nvidia_runtime_config
- storage_api_volume_snapshots
- storage_unmapped
- projects
- candid_config_key
- network_vxlan_ttl
- container_incremental_copy
- usb_optional_vendorid
- snapshot_scheduling
- container_copy_project
- clustering_server_address
- clustering_image_replication
- container_protection_shift
- snapshot_expiry
- container_backup_override_pool
- snapshot_expiry_creation
- network_leases_location
- resources_cpu_socket
- resources_gpu
- resources_numa
- kernel_features
- id_map_current
- event_location
- storage_api_remote_volume_snapshots
- network_nat_address
- container_nic_routes
- rbac
- cluster_internal_copy
- seccomp_notify
- lxc_features
- container_nic_ipvlan
- network_vlan_sriov
- storage_cephfs
- container_nic_ipfilter
- resources_v2
- container_exec_user_group_cwd
- container_syscall_intercept
- container_disk_shift
- storage_shifted
- resources_infiniband
- daemon_storage
- instances
- image_types
- resources_disk_sata
- clustering_roles
- images_expiry
- resources_network_firmware
- backup_compression_algorithm
- ceph_data_pool_name
- container_syscall_intercept_mount
- compression_squashfs
- container_raw_mount
- container_nic_routed
- container_syscall_intercept_mount_fuse
- container_disk_ceph
- virtual-machines
- image_profiles
- clustering_architecture
- resources_disk_id
- storage_lvm_stripes
- vm_boot_priority
- unix_hotplug_devices
- api_filtering
- instance_nic_network
- clustering_sizing
- firewall_driver
- projects_limits
- container_syscall_intercept_hugetlbfs
- limits_hugepages
- container_nic_routed_gateway
- projects_restrictions
- custom_volume_snapshot_expiry
- volume_snapshot_scheduling
- trust_ca_certificates
- snapshot_disk_usage
- clustering_edit_roles
- container_nic_routed_host_address
- container_nic_ipvlan_gateway
- resources_usb_pci
- resources_cpu_threads_numa
- resources_cpu_core_die
- api_os
- resources_system
- usedby_consistency
- resources_gpu_mdev
- console_vga_type
- projects_limits_disk
- storage_rsync_compression
api_status: stable
api_version: "1.0"
auth: trusted
public: false
auth_methods:
- tls
environment:
  addresses:
  - <IP_ADDRESS>:8443
  architectures:
  - x86_64
  - i686
  certificate: |
    -----BEGIN CERTIFICATE-----
    MIIB+jCCAYCgAwIBAgIQcg8BzQ3tE4tTOPVhazlGEDAKBggqhkjOPQQDAzA1MRww
    GgYDVQQKExNsaW51eGNvbnRhaW5lcnMub3JnMRUwEwYDVQQDDAxyb290QHNydi0z
    MTcwHhcNMTkwOTEwMTMzNzM5WhcNMjkwOTA3MTMzNzM5WjA1MRwwGgYDVQQKExNs
    aW51eGNvbnRhaW5lcnMub3JnMRUwEwYDVQQDDAxyb290QHNydi0zMTcwdjAQBgcq
    hkjOPQIBBgUrgQQAIgNiAASbQFyfLT18MZ67I2550QFVzBcjONlwHpUZpU3Ua+Q/
    KD/bXcLBG3NKu5y9o9nAeni5TtZLPUgagCDLGdvX7TeckvPP9dofkrdRKqiEnc1+
    justtu/5NN/m6Mq6ONlrU+WjVTBTMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAK
    BggrBgEFBQcDATAMBgNVHRMBAf8EAjAAMB4GA1UdEQQXMBWCB3Nydi0zMTeHBAoM
    WieHBMCoegEwCgYIKoZIzj0EAwMDaAAwZQIwKUfqmB5RXe2H9ksR84VmaMgHYNzZ
    90oAqytNbXmfG+i7zDICHZfrHva1H698HY8PAjEA9PdTFaxLWyfWep747wzlMxvy
    8ObNf8QhrnBvzQeryuOW40HR3VVVeFRP/uX1v4b0
    -----END CERTIFICATE-----
  certificate_fingerprint: 7010d40152474588e17c706de69e751c9d5382ff4f1919d16d1c3ddbe5e48328
  driver: lxc
  driver_version: 4.0.5
  firewall: nftables
  kernel: Linux
  kernel_architecture: x86_64
  kernel_features:
    netnsid_getifaddrs: "true"
    seccomp_listener: "true"
    seccomp_listener_continue: "true"
    shiftfs: "false"
    uevent_injection: "true"
    unpriv_fscaps: "true"
  kernel_version: 5.3.0-46-generic
  lxc_features:
    cgroup2: "true"
    devpts_fd: "true"
    mount_injection_file: "true"
    network_gateway_device_route: "true"
    network_ipvlan: "true"
    network_l2proxy: "true"
    network_phys_macvlan_mtu: "true"
    network_veth_router: "true"
    pidfd: "true"
    seccomp_allow_deny_syntax: "true"
    seccomp_notify: "true"
    seccomp_proxy_send_notify_fd: "true"
  os_name: Ubuntu
  os_version: "18.04"
  project: default
  server: lxd
  server_clustered: false
  server_name: srv-317
  server_pid: 2355
  server_version: 4.0.4
  storage: zfs
  storage_version: 0.8.1-1ubuntu14.3

Issue description
root@srv-317:~ # lxc start example-elearning
Error: Common start logic: Failed to run: zfs mount nvme/lxd/containers/example-elearning: cannot mount 'nvme/lxd/containers/example-elearning': filesystem already mounted
Try `lxc info --show-log example-elearning` for more info

Steps to reproduce

start the container
failed to start

Information to attach

[ ] Any relevant kernel output (dmesg)

[Tue Nov 10 14:51:33 2020] audit: type=1400 audit(1605015787.905:25450): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/lib/snapd/snap-confine" pid=154811 comm="apparmor_parser"
[Tue Nov 10 14:51:33 2020] audit: type=1400 audit(1605015787.945:25451): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/usr/lib/snapd/snap-confin
e//mount-namespace-capture-helper" pid=154811 comm="apparmor_parser"
[Tue Nov 10 14:51:34 2020] audit: type=1400 audit(1605015789.733:25452): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.core" pid=1
55266 comm="apparmor_parser"
[Tue Nov 10 14:51:34 2020] audit: type=1400 audit(1605015789.733:25453): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.lxd" pid=15
5267 comm="apparmor_parser"
[Tue Nov 10 14:51:34 2020] audit: type=1400 audit(1605015789.733:25454): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.lxd.activate" pid=155
269 comm="apparmor_parser"
[Tue Nov 10 14:51:34 2020] audit: type=1400 audit(1605015789.737:25455): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.core.hook.configure"
pid=155268 comm="apparmor_parser"
[Tue Nov 10 14:51:34 2020] audit: type=1400 audit(1605015789.737:25456): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.lxd.benchmark" pid=15
5270 comm="apparmor_parser"
[Tue Nov 10 14:51:34 2020] audit: type=1400 audit(1605015789.737:25457): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.lxd.hook.install" pid
=155275 comm="apparmor_parser"
[Tue Nov 10 14:51:34 2020] audit: type=1400 audit(1605015789.737:25458): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/core/10185/usr/lib/s
napd/snap-confine" pid=155265 comm="apparmor_parser"
[Tue Nov 10 14:51:34 2020] audit: type=1400 audit(1605015789.737:25459): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="/snap/core/10185/usr/lib/s
napd/snap-confine//mount-namespace-capture-helper" pid=155265 comm="apparmor_parser"

[ ] Container log (lxc info NAME --show-log)

root@srv-317:~ # lxc info example-elearning --show-log
Name: example-elearning
Location: none
Remote: unix://
Architecture: x86_64
Created: 2020/04/15 21:21 UTC
Status: Stopped
Type: container
Profiles: net-example, net, cpu-4-cores, mem-8GB
Snapshots:
  before_ansible (taken at 2020/04/15 21:26 UTC) (stateless)
  after_common (taken at 2020/04/15 21:31 UTC) (stateless)
  after_standard (taken at 2020/04/15 23:55 UTC) (stateless)
  after_software_install_3.8.1_pg11 (taken at 2020/04/16 21:50 UTC) (stateless)
  before_migration (taken at 2020/04/17 09:55 UTC) (stateless)
  running_with_mariadb (taken at 2020/04/17 13:08 UTC) (stateless)
  before_mysql_collation_conversion (taken at 2020/04/17 14:32 UTC) (stateless)
  after_mysql_collation_conversion (taken at 2020/04/17 15:50 UTC) (stateless)
  after_postgres_migration (taken at 2020/04/17 16:21 UTC) (stateless)
  before_new_domain (taken at 2020/04/23 13:55 UTC) (stateless)
  before_new_domain_elearning.college-nat-audio.fr (taken at 2020/04/27 07:32 UTC) (stateless)
  before_upgrade_to_3.8.3 (taken at 2020/05/11 20:58 UTC) (stateless)
  before_update_3.9 (taken at 2020/06/15 20:37 UTC) (stateless)
  before_update_3.9.1 (taken at 2020/07/13 15:10 UTC) (stateless)

[ ] Container configuration (lxc config show NAME --expanded)

root@srv-317:~ # lxc config show example-elearning --expanded
architecture: x86_64
config:
  image.architecture: amd64
  image.description: Debian buster amd64 (20200402_05:24)
  image.os: Debian
  image.release: buster
  image.serial: "20200402_05:24"
  image.type: squashfs
  limits.cpu: "4"
  limits.memory: 8GB
  security.nesting: "true"
  volatile.base_image: 191bd469c9e0cebdc9603c32a84dd560e7ff914e65979244be021467f8a4ae6d
  volatile.eth120.hwaddr: 00:16:3e:54:96:64
  volatile.eth136.hwaddr: 00:16:3e:6e:ce:6e
  volatile.idmap.base: "0"
  volatile.idmap.current: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":1000000000},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":1000000000}]'
  volatile.idmap.next: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":1000000000},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":1000000000}]'
  volatile.last_state.idmap: '[{"Isuid":true,"Isgid":false,"Hostid":1000000,"Nsid":0,"Maprange":1000000000},{"Isuid":false,"Isgid":true,"Hostid":1000000,"Nsid":0,"Maprange":1000000000}]'
  volatile.last_state.power: STOPPED
devices:
  eth120:
    name: eth120
    nictype: bridged
    parent: br_vlan120
    type: nic
  eth136:
    name: eth136
    nictype: bridged
    parent: br_vlan136
    type: nic
  root:
    path: /
    pool: default
    size: 10GB
    type: disk
ephemeral: false
profiles:
- net-example
- net
- cpu-4-cores
- mem-8GB
stateful: false
description: ""

[ ] Main daemon log (at /var/log/lxd/lxd.log or /var/snap/lxd/common/lxd/logs/lxd.log)

t=2020-11-10T14:12:37+0100 lvl=info msg="Creating container" ephemeral=false name=example-elearning/before_upgrade_software_to_3.10 project=default
t=2020-11-10T14:12:37+0100 lvl=info msg="Created container" ephemeral=false name=example-elearning/before_upgrade_software_to_3.10 project=default
t=2020-11-10T14:12:37+0100 lvl=info msg="Deleting container" created=2020-11-10T14:12:37+0100 ephemeral=false name=example-elearning/before_upgrade_software_to_3.10 project=default used=0001-01-01T00:00:00+0000
t=2020-11-10T14:12:37+0100 lvl=info msg="Deleted container" created=2020-11-10T14:12:37+0100 ephemeral=false name=example-elearning/before_upgrade_software_to_3.10 project=default used=0001-01-01T00:00:00+0000
t=2020-11-10T14:13:04+0100 lvl=info msg="Creating container" ephemeral=false name=example-elearning/before_upgrade_software_to_3.10 project=default
t=2020-11-10T14:13:04+0100 lvl=info msg="Created container" ephemeral=false name=example-elearning/before_upgrade_software_to_3.10 project=default
t=2020-11-10T14:13:04+0100 lvl=info msg="Deleting container" created=2020-11-10T14:13:04+0100 ephemeral=false name=example-elearning/before_upgrade_software_to_3.10 project=default used=0001-01-01T00:00:00+0000
t=2020-11-10T14:13:04+0100 lvl=info msg="Deleted container" created=2020-11-10T14:13:04+0100 ephemeral=false name=example-elearning/before_upgrade_software_to_3.10 project=default used=0001-01-01T00:00:00+0000
t=2020-11-10T14:13:48+0100 lvl=info msg="Stopping container" action=stop created=2020-04-15T23:21:08+0200 ephemeral=false name=example-elearning project=default stateful=false used=2020-10-24T17:02:43+0200
t=2020-11-10T14:13:50+0100 lvl=info msg="Stopped container" action=stop created=2020-04-15T23:21:08+0200 ephemeral=false name=example-elearning project=default stateful=false used=2020-10-24T17:02:43+0200

I tried to umount the filesystem via namespaces:
root@srv-317:~ # for n in $(grep default/containers/example-elearning /proc/*/mountinfo | cut -d"/" -f3 | grep -v grep | grep -v "No sush") ; do nsenter -t $n -m -- umount /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning ; done
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.
umount: /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning: no mount point specified.

root@srv-317:~ # grep default/containers/example-elearning /proc/*/mountinfo
/proc/125320/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/131661/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/14087/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/1435/mountinfo:4059 4053 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/164851/mountinfo:4056 2874 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/16673/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
grep: /proc/172978/mountinfo: No such file or directory
grep: /proc/172979/mountinfo: No such file or directory
/proc/175459/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/18891/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/189676/mountinfo:4057 253 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/19470/mountinfo:4057 253 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/21771/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/2206/mountinfo:4059 4053 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/23400/mountinfo:4057 253 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/2355/mountinfo:4059 4053 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/25220/mountinfo:4057 253 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/31321/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/36775/mountinfo:4057 253 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/37442/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/5134/mountinfo:4057 253 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/53083/mountinfo:4059 4053 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/60732/mountinfo:4052 2917 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl
/proc/63394/mountinfo:98 3083 0:52 / /var/snap/lxd/common/shmounts/storage-pools/default/containers/example-elearning rw,noatime shared:625 - zfs nvme/lxd/containers/example-elearning rw,xattr,posixacl

Looks like snap misbehaving, will re-assign.
Can you show /proc/125320/mountinfo or similar output from any of the other hits?


403 Forbidden

I'm completly new so maybe I'm just an Idoit. But when i try to:
try {
Summoner summoner = api.getSummonerByName(Platform.EUW, args[2]);
channel.sendMessage("Name: " + summoner.getName()).queue();
channel.sendMessage("Summoner Level: " + summoner.getSummonerLevel()).queue();
            Set<LeaguePosition> leagues = api.getLeaguePositionsBySummonerId(Platform.EUW, summoner.getId());
            for (LeaguePosition league : leagues) {
                channel.sendMessage(league.getLeagueName() + ": " + league.getRank() + " " + league.getLeaguePoints()).queue();
            }

        } catch (RiotApiException e) {
            e.printStackTrace();
            return;
        }`

I get following Error:
net.rithms.riot.api.RiotApiException: 403: Forbidden
at net.rithms.riot.api.request.Request.execute(Request.java:181)
at net.rithms.riot.api.request.Request.(Request.java:94)
at net.rithms.riot.api.EndpointManager.callMethodAndReturnDto(EndpointManager.java:52)
at net.rithms.riot.api.RiotApi.getLeaguePositionsBySummonerId(RiotApi.java:1557)
at Commands.RitoTest.performCommand(RitoTest.java:34)
I renewed my DevKey so this shouldn't be a problem.

Hi,
seems like the endpoint that's used by GetLeaguePositionsBySummonerId.java is outdated.
Go to GetLeaguePositionsBySummonerId.java and change the urlBase from "/lol/league/v4/positions/by-summoner/" to "/lol/league/v4/entries/by-summoner/

Thank you.
I was using Version 4.2 thats prob. what was wrong


Route model binding parameter error passing a string with Postgres

Laravel Version: 5.7.9
PHP Version: 7.2.10
Database Driver & Version: PostgreSQL 10.5

Description:
I noticed that the route model binding exists an error passing a string variable when using the Postgres database, this does not happen with the MySQL database.
When I use the Postgres database, the route model binding if pass a parameter string it don't abort and build the query with a string. When I use the MySQL database it abort and show error 404 the route is not found.
Steps To Reproduce:
Records

id
name

1
John

2
Jean

3
Lian

Routes
Route::get('/user/{user}', 'UserController@show');

UserController
public function show(User $user) {
    return $user;
}

url abort
localhost/user/4

url does not abort
localhost/user/test

Error
SQLSTATE[22P02]: Invalid text representation: 7 ERROR: invalid input syntax for integer: "test" (SQL: select * from "users" where "id" = test limit 1)

https://laravel.com/docs/5.7/routing#route-parameters "Regular Expression Constraints"
Route::get('/user/{user}', 'UserController@show')->where('user', '[0-9]+');

Or in RouteServiceProvider@boot():
Route::pattern('user', '[0-9]+');

URI user/test wouldn't match any routes so a 404 HTTP status code would be returned.

That would do the trick, sure, but it feels weird that you need to consider it (and litter your routes file with constraints) just because you're using Postgres.

Do you have an idea for a fix?
We could wrap the query in a try/catch block and throw a ModelNotFoundException, but I don't think that's ideal. This makes it harder debug other issues like missing tables or misspelled columns.
Or we use the model's $keyType and check integer keys with ctype_digit().

I don't know if it's the best solution and where is the right place to validate it. I made a change into the /Iluminate/Routing/ImplicitRouteBinding.php on method resolveForRoute and it work.
Solution:
Add after line 33 where have $instance = $container->make($parameter->getClass()->name);
// Abort if the route key name is equal to model key name and if the parameter value is not numeric
if ($instance->getRouteKeyName() === $instance->getKeyName() && ! is_numeric($parameterValue)) {
      abort(404);
}

I think the right way should be this.
// Throw exception ModelNotFoundException if the route key name is equal to model key name and if the parameter value is not numeric
if ($instance->getRouteKeyName() === $instance->getKeyName() && ! ctype_digit($parameterValue)) {
      throw (new ModelNotFoundException)->setModel(get_class($instance));
}

You also have to check the $keyType for int/integer. Otherwise, this breaks string primary keys.

Should be this the final result?
Thanks.
// Throw exception ModelNotFoundException if the route key name is equal to model key name and if the parameter value is not numeric
if ($instance->getRouteKeyName() === $instance->getKeyName() && ! ctype_digit($parameterValue) && $instance->getKeyType() === 'int') {
      throw (new ModelNotFoundException)->setModel(get_class($instance));
}

Feel free to send in a PR when you figure this out.

@dwightwatson mariohbrino's suggestion is checking that:
`$instance->getRouteKeyName() === $instance->getKeyName()`

any news on this ?

Documenting the usage of Route::pattern in your RouteServiceProvider is the solution to this. All other solutions seem fairly weak. Documentation PR's welcome.

I'm facing the same issue in 2021 with Laravel 8. Really easy solution why not wrap the value in the query in back-ticks? Solves the issue for everyone. I wanted to return json for a Route::resource for which I use the ->missing() feature, but if a user passes in a string instead of an int I get the postgres related error. So I tried Route::pattern but this returns a html 404.
My solution is to overwrite your implicit findOrFail with the following in my model and it will work every time, sending back my ->missing json return statement
public function resolveRouteBinding($value, $field = null)
    {
        return $this->where('id', `$value`)->firstOrFail();
    }

passing user submitted inputs to backticks is a seriously bad idea
you leave yourself vulnerable to shell injection / remote code execution


Fixing cm/test/unit/test_system.py failing with python3.x

The cm/test/unit/test_system.py was failing on python 3.x pipelines due to:
TypeError: '<' not supported between instances of 'MagicMock' and 'str'

Now tests are passing:
f5/bigip/cm/test/unit/test_system.py ....
========================================================================================================================= 4 passed in 0.02 seconds ==========================================================================================================================

@nberezin dont bother. i have this taken care of in a PR already


sig-storage: fix a flake where we never ensure PVC is gone

What this PR does
This came up with 1.31 lanes more often but is normally an issue
all across the board, since we never ensure the PVC is gone before testing that scenario.

Fixes #
Why we need it and why it was done in this way
The following tradeoffs were made:
The following alternatives were considered:
Links to places where the discussion took place:
Special notes for your reviewer

Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.

[ ] Design: A design document was considered and is present (link) or not required
[ ] PR: The PR description is expressive enough and will help future contributors
[ ] Code: Write code that humans can understand and Keep it simple
[ ] Refactor: You have left the code cleaner than you found it (Boy Scout Rule)
[ ] Upgrade: Impact of this change on upgrade flows was considered and addressed if required
[ ] Testing: New code requires new unit tests. New features and bug fixes require at least on e2e test
[ ] Documentation: A user-guide update was considered and is present (link) or not required. You want a user-guide update if it's a user facing feature / API change.
[ ] Community: Announcement to kubevirt-dev was considered

Release note

NONE

/cc @mhenriks

/approve

/kind flake

/cherrypick release-1.3


[Release] sdk/resourcemanager/networkcloud/armnetworkcloud/0.1.0

https://github.com/Azure/sdk-release-request/issues/4072

namaspace review: https://github.com/Azure/azure-sdk/issues/5263#issuecomment-1373950788

/azp run prepare-pipelines

/azp run go - armnetworkcloud - ci

/check-enforcer /override

/check-enforcer override


[New Feature]: Improvised version of loading animation

🎮 feature Request
At the place of this, I would make a new screen for loading which would be more sleek and intuitive.

Point down the features

New loading screen at the beignnning
Based on game theme
Animated

Can you assign this to me?
Select program in which you are contributing
No response
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

If you have any doubt you can directly send message on our discord (https://discord.gg/rZb46cCMmK), we have created seprate chennals for all projects...
Thank you :)

@Durgesh4993 can you give level 3 ?

I want to work on enhancing its Loding animation and page scroller, go to top, end. Please assign me

Sir, I am gssoc participant, I am eager to work on this issue , it would be helpful if you assign this issue to me
Thank you


How to refer to the project in docs

We basically bounce between every possible choice, which might be fine, but I figured I would get it settled which ones we like/hate.

cargo vet (what you invoke on the cli)
cargo-vet (the binary/package's actual name)
vet (the "subcommand" of cargo that we are acting as
any of the above but in "quotes" or code quotes

code quotes are more awkward in pure CLI

There is also the matter of how to refer to "the default command" which nika has created a dummy subcommand for called "check". I quite like referring to "the default command" as "check" from here on out, and am doing so in my new docs, but then you once again have the question of:

cargo vet check
cargo-vet check
vet check
check (or check)
"check (or the default command)"

(similarly do we refer to "certify" or "vet certify" or...)

My main opinion is that bare "cargo vet" is the worst, because I don't like spaces

My lean would be cargo-vet (or Cargo-vet if it's at the beginning of a sentence). I'm happy with calling the top-level command "check".

Ok, I'll drive-by these over time.


WHERE clause of filter function

When I type filter(x in relationships(path) where x:Foo) I get an error at x:Foo saying that ) is expected.

Hi @cypressious,
Sorry for so late response. I was in nirvana :)
This is known issue. It's somewhere deep in grammar.

I will update this issue as soon, as I will get a fix.

Hi @cypressious,
Fix is in master. Will be available in IntelliJ on next update.


KafkaContainer transactions: Timeout expired while initializing transactional state in 60000ms.

I'm trying create a test that uses kafka transactions. If I use a local instance of Kafka instead of KafkaContainer everything works fine, but when I use KafkaContainer it fails and I see the following:
Timeout expired while initializing transactional state in 60000ms.
org.apache.kafka.common.errors.TimeoutException: Timeout expired while initializing transactional state in 60000ms.
Attached are the source for my test and the logfile from the run.
kafka.log
Test.java.txt

I just had a quick check with our KafkaContainerTest and added a transaction example and I see the same behaviour, but with a slightly different error mesage:
Timeout expired after 60000milliseconds while awaiting InitProducerId
org.apache.kafka.common.errors.TimeoutException: Timeout expired after 60000milliseconds while awaiting InitProducerId

It happens on producer.initTransactions().

@gAmUssA any idea? :)

@bsideup @kiview
Gents
Let me take a look

@ernesthill
you need to configure some of the broker parameters in order transaction state store will be initialized correctly.
Here's correct test
@Slf4j
public class ProducerTransactionTest {

  public static KafkaContainer kafka = new KafkaContainer("5.2.1")
      .withLogConsumer(new Slf4jLogConsumer(log));

  @BeforeClass
  public static void prep() {
    // see https://cwiki.apache.org/confluence/display/KAFKA/KIP-98+-+Exactly+Once+Delivery+and+Transactional+Messaging#KIP-98-ExactlyOnceDeliveryandTransactionalMessaging-NewConfigurations
    kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR", "1");
    kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_MIN_ISR", "1");
    kafka.start();
  }

  @Test
  public void testIt() {
    Properties props = new Properties();
    props.put(BOOTSTRAP_SERVERS_CONFIG, kafka.getBootstrapServers());
    props.put(KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
    props.put(VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
    props.put(ENABLE_IDEMPOTENCE_CONFIG, "true");
    props.put(TRANSACTIONAL_ID_CONFIG, "prod-0");
    KafkaProducer<String, String> producer = new KafkaProducer<>(props);
    ProducerRecord<String, String> record = new ProducerRecord<>("something", "A message");
    producer.initTransactions();
    producer.beginTransaction();
    producer.send(record);
    producer.commitTransaction();
  }
}

Let me know if you have any questions.
@bsideup @kiview do you want me to send PR with a test for this issue?

Thanks for the information.

Thanks for this information !!!

This should be part of default Kafka test container config, since (AFAIK) it always runs in a single broker configuration.

Explanation for @gAmUssA
The default value of transaction.state.log.replication.factor is 3. So if broker count in your cluster is less than 3, kafka server fails to (automatically) create the topic __transaction_state, thus fails.

I did have this transaction.state.log.replication.factor set to 1 but still seeing this error in producer.initTransaction()
"Timeout expired while initializing transactional state in 60000ms"

It went to following code, got the transactionManager.initializeTransactions into result but timing out in last line result.await(maxBlockTimeMs, TimeUnit.MILLISECONDS);
public void initTransactions() {
throwIfNoTransactionManager();
throwIfProducerClosed();
TransactionalRequestResult result = transactionManager.initializeTransactions();
sender.wakeup();
result.await(maxBlockTimeMs, TimeUnit.MILLISECONDS);
}

I did have this transaction.state.log.replication.factor set to 1 but still seeing this error in producer.initTransaction()
"Timeout expired while initializing transactional state in 60000ms"

Note there are 2 props to change. Do not try to debug the client code. It’s an server error.

I have both property set and I have numBroker=1. I am running it through embedded kafka.
properties.put("transaction.state.log.replication.factor", Short.valueOf("1"));
properties.put("transaction.state.log.min.isr", 1);

@gAmUssA I've tried your setup regarding KafkaContainer, to add all necessary env variables for transactional mode but I have the same Timeout expired while initializing transactional state in 60000ms.  problem.
I've made a debug on the spring library code and on my side it gets stuck on this.producerFactory.createProducer(); line 275

@pancudaniel7 could you share a reproducer?
Thank you

I am also getting same exception. I am using 'KafkaTemplate' with 'executeInTransaction'
props.put(ProducerConfig.ACKS_CONFIG, "all");
props.put(ProducerConfig.MAX_BLOCK_MS_CONFIG, 10000);
props.put(ProducerConfig.ENABLE_IDEMPOTENCE_CONFIG, true);
props.put(ProducerConfig.TRANSACTIONAL_ID_CONFIG, "prod-0"); // I am really not clear what this is for. I set it once in the producerConfig. Then create KafkaTemplate and use it many times...

This is how I call Kafka template:
	    kafkaTemplate.setTransactionIdPrefix(message.getGuid()); // I am also not sure about this line. I tried to put a unique value to prevent same message to be created twice.

	    kafkaTemplate.executeInTransaction(kafkaTemplate -> {

		ListenableFuture<SendResult<String, Event>> future = kafkaTemplate.send(topic, message);

		future.addCallback(new ListenableFutureCallback<SendResult<String, Event>>() {

		    @Override
		    public void onSuccess(SendResult<String, Event> result) {
		    }

		    @Override
		    public void onFailure(Throwable ex) {
		    }
		});

		return null;
	    });

This is what I receive
org.apache.kafka.common.errors.TimeoutException: Timeout expired after 10000milliseconds while awaiting InitProducerId

Same problem here :(

@maver1ck the transactions are not enabled by default, see @gAmUssA's answer:
https://github.com/testcontainers/testcontainers-java/issues/1816#issuecomment-529992060

@bsideup checking this

@ernesthill
you need to configure some of the broker parameters in order transaction state store will be initialized correctly.
Here's correct test
NOTE: it's always good to enable log output from the container to debug this kind of issues.
I use Slf4jLogConsumer from TC.
@Slf4j
public class ProducerTransactionTest {

  public static KafkaContainer kafka = new KafkaContainer("5.2.1")
      .withLogConsumer(new Slf4jLogConsumer(log));

  @BeforeClass
  public static void prep() {
    // see https://cwiki.apache.org/confluence/display/KAFKA/KIP-98+-+Exactly+Once+Delivery+and+Transactional+Messaging#KIP-98-ExactlyOnceDeliveryandTransactionalMessaging-NewConfigurations
    kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR", "1");
    kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_MIN_ISR", "1");
    kafka.start();
  }

  @Test
  public void testIt() {
    Properties props = new Properties();
    props.put(BOOTSTRAP_SERVERS_CONFIG, kafka.getBootstrapServers());
    props.put(KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
    props.put(VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());
    props.put(ENABLE_IDEMPOTENCE_CONFIG, "true");
    props.put(TRANSACTIONAL_ID_CONFIG, "prod-0");
    KafkaProducer<String, String> producer = new KafkaProducer<>(props);
    ProducerRecord<String, String> record = new ProducerRecord<>("something", "A message");
    producer.initTransactions();
    producer.beginTransaction();
    producer.send(record);
    producer.commitTransaction();
  }
}

Let me know if you have any questions.
@bsideup @kiview do you want me to send PR with a test for this issue?

This did the trick for me 👆❤
In case anyone has the same issue using EmbeddedKafka in Spring Boot test, the values can be set when defining the config for the embedded Kafka instance as follows:
@EmbeddedKafka(topics = "kafka-test", ports = 9099, brokerProperties = {
    "transaction.state.log.replication.factor=1",
    "transaction.state.log.min.isr=1"
})
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT,
    properties = {
        "spring.kafka.bootstrap-servers=localhost:9099"
    })
class KafkaEmbeddedIT {
...
}

Hi everyone, Unfortunately I have the same error:
`
2020-11-26 11:27:08.246  INFO [poc-test,,,] 506391 --- [ producer-txl-3] org.apache.kafka.clients.Metadata        : [Producer clientId=producer-tx-3, transactionalId=tx-3] Cluster ID: -nEH5zcySOSTk7pnaSsZOg
2020-11-26 11:28:08.238 ERROR [poc-test,,,] 506391 --- [           main] o.s.c.s.b.k.p.KafkaTopicProvisioner      : Failed to obtain partition information
org.apache.kafka.common.errors.TimeoutException: Timeout expired after 60000milliseconds while awaiting InitProducerId
In the console output I see this:
2020-11-26 11:27:08.218  INFO [poc-test,,,] 506391 --- [           main] o.a.k.clients.producer.ProducerConfig    : ProducerConfig values:
acks = -1
batch.size = 16384
bootstrap.servers = [PLAINTEXT://localhost:33193]
buffer.memory = 33554432
client.dns.lookup = default
client.id = producer-txl-3
compression.type = none
connections.max.idle.ms = 540000
delivery.timeout.ms = 120000
enable.idempotence = true
interceptor.classes = []
key.serializer = class org.apache.kafka.common.serialization.ByteArraySerializer
linger.ms = 0
max.block.ms = 60000
max.in.flight.requests.per.connection = 5
max.request.size = 1048576
metadata.max.age.ms = 300000
metadata.max.idle.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
partitioner.class = class org.apache.kafka.clients.producer.internals.DefaultPartitioner
receive.buffer.bytes = 32768
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 30000
retries = 1
retry.backoff.ms = 100
sasl.client.callback.handler.class = null
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.login.callback.handler.class = null
sasl.login.class = null
sasl.login.refresh.buffer.seconds = 300
sasl.login.refresh.min.period.seconds = 60
sasl.login.refresh.window.factor = 0.8
sasl.login.refresh.window.jitter = 0.05
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
security.providers = null
send.buffer.bytes = 131072
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2]
ssl.endpoint.identification.algorithm = https
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLSv1.2
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
transaction.timeout.ms = 60000
transactional.id = txl-3
value.serializer = class org.apache.kafka.common.serialization.ByteArraySerializer
`
My configuration of KafkaContainer :
`
lateinit var kafka: KafkaContainer
    init {
        configureKafka()
    }

    private fun configureKafka() {
        kafka = KafkaContainer("5.3.2-1")
        kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR", "2")
        kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_MIN_ISR", "1")
        kafka.start()
    }

And my configuration in the application.yml looks like this:
spring:
cloud:
stream:
kafka:
binder:
transaction:
transaction-id-prefix: tx-
producer-properties:
retries: 1
acks: all
`
I'm not getting it to start up successfully, has anyone been able to overcome this?
thanks in advance

kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR", "2")
Why 2?

kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR", "2")
Why 2?

If I use :
            kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR", "2")
            kafka.addEnv("KAFKA_TRANSACTION_STATE_LOG_MIN_ISR", "1")

The error is the same. If I use 1 for both, I got this:
2020-11-26 13:15:01.309  WARN [poc-test,,,] 523026 --- [| producer-tx-0] org.apache.kafka.clients.NetworkClient   : [Producer clientId=producer-tx-0, transactionalId=tx-0] Connection to node -1 (localhost/<IP_ADDRESS>:9092) could not be established. Broker may not be available.
2020-11-26 13:15:01.309  WARN [poc-test,,,] 523026 --- [| producer-tx-0] org.apache.kafka.clients.NetworkClient   : [Producer clientId=producer-tx-0, transactionalId=tx-0] Bootstrap broker localhost:9092 (id: -1 rack: null) disconnected

@kcotzen it should be 1, unless you start & connect two brokers

I used value 1 for both, and I got this error:```
2020-11-26 13:15:01.309  WARN [poc-test,,,] 523026 --- [| producer-tx-0] org.apache.kafka.clients.NetworkClient   : [Producer clientId=producer-tx-0, transactionalId=tx-0] Connection to node -1 (localhost/<IP_ADDRESS>:9092) could not be established. Broker may not be available.
2020-11-26 13:15:01.309  WARN [poc-test,,,] 523026 --- [| producer-tx-0] org.apache.kafka.clients.NetworkClient   : [Producer clientId=producer-tx-0, transactionalId=tx-0] Bootstrap broker localhost:9092 (id: -1 rack: null) disconnected

I made some modifications(I removed use of chainedTransactionManager), and it works Zero errors in console output, but when I use chainedTransactionManager :
2020-11-26 13:15:01.309  WARN [poc-test,,,] 523026 --- [| producer-tx-0] org.apache.kafka.clients.NetworkClient   : [Producer clientId=producer-tx-0, transactionalId=tx-0] Connection to node -1 (localhost/<IP_ADDRESS>:9092) could not be established. Broker may not be available.
2020-11-26 13:15:01.309  WARN [poc-test,,,] 523026 --- [| producer-tx-0] org.apache.kafka.clients.NetworkClient   : [Producer clientId=producer-tx-0, transactionalId=tx-0] Bootstrap broker localhost:9092 (id: -1 rack: null) disconnected

sounds weird. Any ideas please?

well, for some reason the problem was caused by the chainedTransactionManager definition, I think the console output is very weird and led me to confusion.
Thanks anyway.

I got the same issue while trying to apply transaction producers.
I fixed it by overriding these two settings at server side:
transaction.state.log.min.isr = 1
transaction.state.log.replication.factor = 1
if you are using Kafka container with docker then most likely you will go with:
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1


Make "other" dimension more flexible

Suggestion by @fzimmermann89
Re the other dimension:
I would prefer if we allow in our code for this dimension to actually be more than 1 dimensnion.
So we dont split the KData into dynamics, ... by default, but our code works if it is split.
This would, as a start, mean replacing 'other' by '...' in all einops pattern, and counting dimensions from the back for swapaxes etc.

WIP!
Make sure that always the correct terms (e.g. coils and not coil) are used.
Functions/Classes to double check

[ ] https://github.com/PTB-MR/mrpro/blob/0730e0608366b422c59c0c5ffa50a94fba671cf2/src/mrpro/algorithms/prewhiten_kspace.py#L30
[ ] https://github.com/PTB-MR/mrpro/blob/0730e0608366b422c59c0c5ffa50a94fba671cf2/src/mrpro/operators/CartesianSamplingOp.py#L26
[ ] https://github.com/PTB-MR/mrpro/blob/0730e0608366b422c59c0c5ffa50a94fba671cf2/src/mrpro/operators/DensityCompensationOp.py#L25
[ ] https://github.com/PTB-MR/mrpro/blob/0730e0608366b422c59c0c5ffa50a94fba671cf2/src/mrpro/operators/SensitivityOp.py#L25

Start by modifying the tests such that they fail for a current inflexible use of other (e.g. simply add an additional other singleton dimension) and then fix it.


Add flash_attention_1/flash_attention_2 support & examples

Are we supporting flash_attention feature? https://github.com/Dao-AILab/flash-attention/tree/main

This should be a relatively easy implementation. When loading a model with hf transformers, users can pass in attn_implementation="flash_attention_2". Details here
I suggest us:

freeze the version of transformers and trl in dependencies
add flash-attn into dependencies list
have ConfigModel mapping to parameters of the underlying transformers modules


[GEARPUMP-203] Use DataSourceTask and DataSinkTask for DSL

Current coverage is 69.95% (diff: 88.88%)

Merging #80 into master will increase coverage by 1.65%

@@             master        #80   diff @@
==========================================
  Files           177        177
  Lines          5927       5907    -20
  Methods        5606       5591    -15
  Messages          0          0
  Branches        321        316     -5
==========================================
+ Hits           4048       4132    +84
+ Misses         1879       1775   -104
  Partials          0          0

Powered by Codecov. Last update 5bf7c7c...6ce5b1f

+1


Docker toolbox osx installer hangs on overview

I downloaded Docker Toolbox osx installer package and ran it and nothing happens, it just hangs on the Overview.
I am using:
OSX 10.8.5
Docker Toolbox 1.8.2

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

Thanks for reporting, @fronto. I see there's an issue in the Docker Toolbox issue tracker that's tracking this; https://github.com/docker/toolbox/issues/177
I'm going to close this issue, here; please subscribe to https://github.com/docker/toolbox/issues/177 (using the "subscribe" button on that issue), to stay up to date on progress.


Add nested changelogs for all repo types

Change-type: patch
Signed-off-by: Giovanni Garufi<EMAIL_ADDRESS>

@balena-ci I self-certify!


Switched CAN to XOSC

A list of all changes that have not been copied from this MR:
(Green = additional changes from Silver's MR)

drivers/can/can_mcan.c:

@@ -1053,8 +1053,7 @@ static int can_mcan_add_rx_filter_ext(const struct device *dev, can_rx_callback_
                return -ENOSPC;
        }

-       /* TODO proper fifo balancing */
-       filter_element.efce = filter_id & 0x01 ? CAN_MCAN_FCE_FIFO1 : CAN_MCAN_FCE_FIFO0;
+       filter_element.efce = CAN_MCAN_FCE_FIFO0;


CB-18840 Expose LDAP agent version on FMS API

Store LDAP agent version to ImageEntity when creating FreeIPA. Also update it during upgrade. The version is exposed in DescribeFreeIpaResponse#image under ldapAgentVersion field.
See detailed description in the commit message.

@handavid please check if the API fits you. thanks

it would be null, so it won't be present in the returned json. CB API doesn't return empty strings/nulls


Link in cell--header-bar/markdown-cell--contents is unclickable

Steps to reproduce:

Open the pre-generated System dashboard
Attempt to click on Telegraf Documentation

Expected behavior:
Go to documentation
Actual behavior:
Moves the cell
Environment info:
> uname -srm
Linux 5.0.0-13-generic x86_64
> ~/src/influxdb_2.0.0-alpha.9_linux_amd64/influxd version
Error: unknown command "version" for "influxd"
Run 'influxd --help' for usage.

Still an issue:

The only way to follow the link is to edit the note:

bump

bump


[Suggestion and a bit of code] Forcing symmetry (mgrid adjustments)

In the original (CLIP & gradient ascent) notebook, there was a function named get_mgrid what set up a 2D tensor from -1 to 1 with the desired image size as the steps. I was able to modify this to enforce various layouts, such as horizontal symmetry. Admittedly, not super clear on how to do what I want with it since used to thinking about things like this as vectors in GLSL where you can just texcoord.x = abs((texcoord.x * 2.0) - 1.0); and call it a day.
For reference, my adjustment to make the horizontally mirrored canvas was to add this after mgrid = mgrid.reshape(-1,dim):
mgrid2 = torch.sub(torch.abs(torch.mul(mgrid, 2.0)), 1) to change -1, 0, 1 to -2, 0, 2, then to 2, 0, 2, then to 1, -1, 1.
mgrid = torch.add(torch.mul(mgrid, torch.tensor([1.0, 0.0])), torch.mul(mgrid2, torch.tensor([0.0, 1.0]))) in an attempt to mask out the X and Y coordinates and insert the mirrored one into the x coordinate, though looking at this it places it in the second slot so I have no idea why that even worked if X comes before Y. I have very little knowledge on how these things are stored / accessed / laid out.
An option for different layouts like this would be useful if not simply entertaining for aesthetic purposes. Horizontal symmetry, vertical symmetry, radial symmetry (couldn't figure out how to make it work, kept ending up as straight lines in X or Y direction when I tried to convert X,Y to Angle, Distance), polar layout, cylindrical layout, arc layout n-star symmetry, etc.

@torridgristle interesting, let me look later this week if i can expose a way to specify custom mgrids, passed in during initialization

@torridgristle interesting, let me look later this week if i can expose a way to specify custom mgrids, passed in during initialization


docs: add diagram of the Rules

:tada: This PR is included in version 0.6.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


New maintainer and plan

Hi, I'm the new maintainer of this repository.
Sven Willner is transferring repo and npm ownership to me.
I'm working in the meteorological field for almost an year, and I'll
use this module at work, so I think I could commit a fair number of hours to
work on this.
Within some days, I release a first minor version on npm,
where I'll:

merge PR #22 to allow to use Node 12
upgrade dependencies in order to fix security issues
port CI tests to GitHub actions

On a more long timeframe, I think I'll to port the code to NAPI, in order to leverage
it's ABI compatibility. This will avoid the necessity to change the code for every new
Node version that will be released, and will open the way to publish pre-compiled version
on NPM.

@parro-it Since PR#22 has been merged, what are the current plans for a new release? Even if it's only for Node v12 support, I think it'd be very useful for the library's users. Thanks for the effort!


perf(local-signing-manager): require newer polkadot peer dependencies

Description
should help avoid peer dep warnings, although each version should be OK since the API we consume hasn't changed
Breaking Changes

JIRA Link

Checklist

[ ] Updated the Readme.md (if required) ?

:tada: This PR is included in version<EMAIL_ADDRESS>:tada:
The release is available on:

npm package (@latest dist-tag) :package::rocket:
GitHub release :package::rocket:

:tada: This PR is included in version<EMAIL_ADDRESS>:tada:
The release is available on:

npm package (@latest dist-tag) :package::rocket:
GitHub release :package::rocket:

:tada: This PR is included in version<EMAIL_ADDRESS>:tada:
The release is available on:

npm package (@latest dist-tag) :package::rocket:
GitHub release :package::rocket:

:tada: This PR is included in version<EMAIL_ADDRESS>:tada:
The release is available on:

npm package (@latest dist-tag) :package::rocket:
GitHub release :package::rocket:

:tada: This PR is included in version<EMAIL_ADDRESS>:tada:
The release is available on:

npm package (@latest dist-tag) :package::rocket:
GitHub release :package::rocket:

:tada: This PR is included in version<EMAIL_ADDRESS>:tada:
The release is available on:

npm package (@latest dist-tag) :package::rocket:
GitHub release :package::rocket:

:tada: This PR is included in version<EMAIL_ADDRESS>:tada:
The release is available on:

npm package (@latest dist-tag) :package::rocket:
GitHub release :package::rocket:


setup-snfoundry CI workflow action

It should take snfoundry-version as an argument.

Should take inspiration from https://github.com/software-mansion/setup-scarb , if somebody wants to work on this one let us know on telegram we will help to set up the repository

@MaksymilianDemitraszek  I'm in

@binsta i've just created a repo for this:
https://github.com/foundry-rs/setup-snfoundry
Feel free to submit PRs :)


Make fonts settable in Documenter

We should be able to increase/decrease font size in Documenter.
The default paragraph font size should be 16.

[x] add basic support for default font size changes
[ ] labels should also consider the default font size

Link labels are also bigger now:


Add a 'readonly' property to AutoForm

This is a...

[ x] Feature request
[ ] Regression (a behavior that used to work and stopped working in a new release)
[ ] Bug report
[ ] Documentation issue or request

The problem
Currently the only way to set all the fields in the form to be disabled is to set each IFormProperty. It would be nice if you could just set a property on the form.

Found a simple workaround:
<fieldset disabled={!this.state.isEditing}>
  <Container>{this.props.children}</Container>
</fieldset>

Wrapping the form fields with a fieldset and managing it's disabled property works nicely.

Just to let this know, this will not work for non html fields

Thinking about this a bit more while getting an oil change, maybe a better approach would be to instead make a second component alongside autoform that understands the ConfigurationProperty definition but just produces a data list, encoding the value appropriately (* for passwords etc) and that also provides a way to have custom elements for a given value.
I think then it'd actually be easier to use, 'cause you could do something like:
{ !this.props.showReadOnly && <form><AutoForm blah blah blah/> }
{ this.props.showReadOnly && <dl><NewFormThingy blah blah blah /> }

Updated the issue title and description.


Add Codify Global to the list of merchants

What's the name of your business?
Codify Global
What's the URL of the website?
https://codify.global/
Write a brief description of your business/service (max 50 characters)
AWS consulting and technology stack modernization
Enter the URL where a Monero mention can be found
https://codify.global/help-center/
How do you accept Monero? (choose only one option)

[ ] Monero integrations (github.com/monero-integrations)
[ ] Globee
[x] Native wallet
[ ] Other payment gateaway (Coinpayments, Morphtoken, etc. Please specify)

How would you categorize your business? (choose only one option)

[ ] Exchange
[ ] Block Explorer
[ ] Payment Gateway
[ ] Web Hosting
[ ] Tool
[x] Service
[ ] Goods
[ ] Entertainment

Comment

Ok.