Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Eloquent Filemaker Laravel Package

gearbox-solutions/eloquent-filemaker

View on GitHub
Deep Wiki
Context7
2.7.0

Added Laravel 13 support Removed Laravel 9 support

2.6.4

Fixed issue updated nested field in array/json casted fields.

2.6.3

Fixed Laravel 12 parameter issue for FM grammar constructor

2.6.2

Laravel 12 support.

2.6.1

Added missing support for portal limit and offset on raw FM get queries.

2.5.3

Fixed issue with record ID not being passed on FM facade requests.

2.5.2

Added support for passing the modId directly into withModId() on eloquent models.

2.5.1

Fixed inconsistent documentation, fixed name protected $withModId for consistency.

2.5.0
  • Added new withModId() features to support checking Modification ID when saving eloquent models
  • Added new --filemaker flag for artisan make:model ---filemaker to make new models as FMModel instead of Model
  • Added new stub publishing to set defaults for artisan make:model
  • Added support for toSql and toRawSql to get a string of the JSON query value which would be submitted in the FileMaker Data API request
2.4.4

Flattened bindings for better Telescope compatibility (and probably other things as well).

2.4.3
  • Uses the Http facade to create a pending request instead of manually creating a PendingRequest (#76 @macbookandrew)
  • Ensures logs for FM requests always fire even when encountering an error (#77 @smef)
2.4.2

Fix to prevent mutators from being fired when loading data from FileMaker into a model

2.4.1

This release fixes backwards compatibility with Laravel 10 by checking that Http::createPendingRequest exists before calling it.

2.4.0

In this release:

  • adds the MorphTo Relationship to the FMHasRelationship trait
  • The MorphTo relationship class resolves wether to handle the models as FM query or pass it to the default Eloquent Model.
2.3.2

Changed FileMakerDataApiException to always include the layout name in the error message for easier debugging.

2.3.1

Use Http facade for requests to improve compatibility with Telescope and other frameworks.

2.3.0

This release reworks FMModel's relationship resolution allowing developers to use the model's native relationship methods to connect to other FileMaker Models as well as Models backed by other database drivers. Also, we introduced a new trait that can be used on regular Models to allow proper relationship resolution to FMModels.

Previously you had to this:

// User.php

class User extends Model
{
    public function company()
    {
        // The Company class is an FMModel and is stored in FileMaker
        return new \GearboxSolutions\EloquentFileMaker\Database\Eloquent\Relations\BelongsTo(Company::query(), $this, 'company_id', 'id', '');
    }
}

Now you can do:

// User.php

use GearboxSolutions\EloquentFileMaker\Database\Eloquent\Concerns\HasHybridRelationships;

class User extends Model
{
    use HasHybridRelationships;
    
    public function company()
    {
        // The Company class is an FMModel and is stored in FileMaker
        // The correct relationship will be resolved automatically thanks to the HasHybridRelationships trait
        return $this->belongsTo(Company::class, 'company_id', 'id');
    }
}
2.2.5

This release fixes an issue where calling a queryScope and then calling where or whereIn causes an extra find request resulting in erroneous data.

Ex:

Model::where('field', 'value')
    ->myScope()
    ->whereIn('field', ['value 1', 'value 2'])
2.2.4

Fixed orWhere being dropped when appended after a where.

2.2.3

Changed error throwing to process later instead of in retry, avoiding error with records not found

2.2.2

Adjusted retries so that it will actually attempt more than once.

2.2.1

Removed improper ignoreValidation.

2.2.0

This is a cool update! We've added the QueryExecuted event, which makes FileMaker queries show up in helpful Laravel dev tools like Clockwork. With this, you get a log of each of your queries for each page load, how long they take to execute, and you can see the exact URL, method, and data which was sent to the FileMaker Data API. This makes it easy to do diagnosis of slow-running Data API queries!

  • Updates FileMakerConnection class to fire Illuminate\Database\Events\QueryExecuted event when making a request to the FIleMaker endpoint, including the session login.
2.1.2

Modified retry behavior to better handle FileMaker's Data API returning 502 errors.

2.1.1

What's Changed

  • Improve compatibility with general eloquent usage and Laravel Nova by @tkuijer in https://github.com/gearbox-solutions/eloquent-filemaker/pull/66
  • Changed cached session tokens to be used until FileMaker no longer accepts them, rather than automatically refreshing after 15 minutes
  • Changed default to use cache to help avoid major performance issues, better default config

New Contributors

Full Changelog: https://github.com/gearbox-solutions/eloquent-filemaker/compare/2.1.0...2.1.1

2.1.0

Added new connection config options for caching session token and converting empty strings to null.

It is recommended to set cache_session_token in your database connection config to true for performance improvements.

2.0.2

Fixed InvalidArgumentException: Illegal operator and value combination. when using Model::where('field', '==', null)

2.0.1

Version 2.0.1

  • Updated model retrieval to return a Illuminate\Database\Eloquent\Collection instead of Illuminate\Support\Collection
  • Fixed an issue with using a custom model Collection
2.0

Version 2.0 Release!

  • Added support for Laravel 11
  • Empty fields in FileMaker are returned as null instead of an empty string
  • FileMaker Sessions only last for the duration of a single request to Laravel instead of being reused for 15 minutes - Cache is no longer required
  • Improvements to whereNot logic and implementation to make it behave more closely to what it should be

Run composer require gearbox-solutions/eloquent-filemaker:^2.0 to upgrade to the latest version of the package. Please check the readme for breaking changes.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle
atriumphp/atrium
sandermuller/package-boost-laravel
sandermuller/boost-skills
redaxo/core
yusufgenc/filament-api-forge
l3aro/rating-star-for-filament
leek/filament-subtenant-scope